Gazebo组件

  1. World 世界

    • 包含模拟中所有的元素如机器人,灯光,传感器等等
    • 使用SDF(模拟描述格式)格式化 【用XML语言描述】
    • 拓展名.world
  2. Model 模型
    • 只包含一个<model>...</model>
    • 目的是促进模型重用,并简化模型文件
    • 在world文件中调用model:
           <include>
      <uri>model://model_file_name</uri>
      </include>
  3. 环境变量
    • GAZEBO_MODEL_PATH     模型的路径
    • GAZEBO_RESOURSE_PATH   世界的路径
    • GAZEBO_MASTER_URI
    • GAZEBO_PLUGIN_PATH         插件的路径
    • GAZEBO_MODEL_DATABASE_URI
    • 修改环境变量:<install_path>/share/gazebo/setup.sh
  4. 服务器和客户端
    • gzserver

      • 运行物理更新循环和传感器数据产生,是gazebo的核心,可以独立于图形界面使用
      • run headless意味着只运行gzserver
      • gzserver + 当前目录相对路径/绝对路径/在环境变量搜索路径中的相对变量
    • gzclient
      • 一个基于QT的用户界面,提供了可视化模拟和方便的控制。点击桌面图标启动的就是gzclient,可以启动多个。
      • gzclient 就可以启动图形界面
    • gazebo +路径  同时打开服务器和客户端
  5. Plugin 插件
    • 使用c++编写,模拟功能需求基本上都是通过插件来完成啦
    • 可以在命令行中调用,也可以在SDF文件中调用
    • 影响物理属性的插件在服务器调用
    • 命令行 -s 表示是系统的插件
  6. Gazebo的结构
    • Communication Libary 进程之间的沟通
    • Physics Library 物理库
    • Rendering Library 渲染库
    • Sensor Generation 传感器
    • GUI 界面
  7. Mesh 网格
    • 给机器人做好看的渲染(大概是这样吧
  8. Actor  演员
    • actor是和model并列的一种类型,相比于model,actor可以不受物理引擎(重力之类的)的影响,按照设定的轨迹进行运动。
    • 使用<script>描述路径
    • 航点 waypoint
  9. 数据单位是 米 哦!

Gazebo文件

Gazebo附带文件地址:

<install_path>/share/gazebo-<version>

拿我自己的举个栗子,暗中观察文件内容:

 ls /usr/share/gazebo-9 

包含 worlds(挺多世界的),models(太阳和地板),media(含有audio,gui,models【这个models文件是dae】), setup.sh(修改环境变量)

截图路径

cd ~/.gazebo/pictures

Tutorial路径

gedit ~/.gazebo/models

暂时还没深入了解的东西

  • Mesh 网格 给模型作外观渲染
  • Nested Model  模型嵌套调用

Gazebo官网日常崩真滴头大,明天继续第二篇,溜了溜了

Gazebo学习随记1 Gazebo概览的更多相关文章

  1. Gazebo学习随记4 Actor: 该配合你的演出我视而不见

    在Gazebo仿真中,除了模型model外,还有一种和model并列的类型——actor. 相比于model受物理引擎的作用,actor不受重力等等的影响,可以按照设定的运动轨迹进行运动. <s ...

  2. Gazebo学习随记3 图形界面的使用

    直接写模型的SDF文件实在是太反人类啦! 可以在gazebo图形界面中设置好模型的链接(碰撞外观惯性),关节等等参数-然后生成SDF文件

  3. Gazebo学习随记5 杂记

    模拟建筑编辑器 将卫星图导入世界,方便空中机器人模拟 录像和回放 记录筛选 给关节添加力/扭矩  一开始不知道哪里出现了偏差以一动不动,重启就好了 HDF5数据集 代码内省 模型插件   !!!我终于 ...

  4. Gazebo学习随记2 SDF和XML

    Model 模型 一个模型数据库会拥有的文件 database.config:有关数据库的元数据,从CMakeList自动填充『本地不需要』 model文件夹 一个模型[奏是辣个文件夹]会有的文件 m ...

  5. Learning ROS for Robotics Programming Second Edition学习笔记(十) indigo Gazebo rviz slam navigation

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 moveit是书的最后一章,由于对机械臂完全不知,看不懂 ...

  6. node-webkit学习(3)Native UI API概览

    node-webkit学习(3)Native UI API概览 文/玄魂 目录 node-webkit学习(3)Native UI API概览 前言 3.1  Native UI api概览 Exte ...

  7. ROS(indigo)机器人操作系统学习有趣丰富的Gazebo仿真示例evarobot

    一直在寻找一个示例可以将ROS学习中常用的基础内容大部分都包含进去,最好还包括Gazebo仿真, 这样即使没有硬件设备,也可以很好的学习ROS相关内容,但又必须有对应的硬件,便于后续研究. 这里,介绍 ...

  8. Ubuntu ROS Arduino Gazebo学习镜像iso说明(indigo版)

    ROS机器人程序设计(原书第2版)学习镜像分享及使用说明 新版已经发布,请参考: http://blog.csdn.net/zhangrelay/article/details/53324759 Ub ...

  9. Learning ROS for Robotics Programming Second Edition学习笔记(九) indigo Gazebo rviz slam navigation

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 书中三维环境gazebo,slam的仿真例子 --$ r ...

随机推荐

  1. CentOS7自动补齐

    cenos7,最小安装,做服务器嘛.但是发现tab键的自动补齐功能没有:其实可以直接把centos7作为yum源,然后直接安装bash-completion  yum install -y bash- ...

  2. Logstash详解之——input模块

    原文地址 Logstash由三个组件构造成,分别是input.filter以及output.我们可以吧Logstash三个组件的工作流理解为:input收集数据,filter处理数据,output输出 ...

  3. jquery中stop停止动画笔记

    jQuery stop() 方法用于停止动画或效果,在它们完成之前. stop() 方法适用于所有 jQuery 效果函数,包括滑动.淡入淡出和自定义动画. 语法: $(selector).stop( ...

  4. 利用PowerDesigner设计数据库

    PowerDesigner非常强大, 可以利用它完成数据库的设计. 1.下载地址:http://pan.baidu.com/s/1DsLrg 2.表设计: 建立概念数据模型(Conceptual Da ...

  5. .Net Memory Profiler入门

    简介:http://www.cnblogs.com/wmlunge/archive/2013/01/08/2850809.html 实践: http://www.cnblogs.com/eaglet/ ...

  6. react-router4.x 实用例子(路由过渡动画、代码分割)

    react-router4.2.0实用例子 代码分割 官网上面写的代码分割是不支持create-react-app脚手架的,要使用import实现 创建一个bundle.js文件 import { C ...

  7. 2015.3.12Arinc424 Tools中SiniArincCls.csParserFile(string sFile)函数正则表达式理解

    原文: string RegEx1 = @"(\[ITEM\]\s*=[\S\s]*?(?=\[ITEM\])|\[ITEM\]\s*=[\S\s]*)";//用来识别主记录和后续 ...

  8. Python 学习之---文件目录处理

    前言:有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模块, 导入的方法是:import os   一.取得当前目录 s = os.getcwd() s 中保存的是当前目录 ...

  9. linux命令-mount挂载umount卸载

    格式化完成之后想写数据 要先挂载 //////////////////////////////////////////////////////////////////// [root@wangshao ...

  10. WebRTC的拥塞控制技术<转>

    转载地址:http://www.jianshu.com/p/9061b6d0a901 1. 概述 对于共享网络资源的各类应用来说,拥塞控制技术的使用有利于提高带宽利用率,同时也使得终端用户在使用网络时 ...