Gazebo学习随记1 Gazebo概览

Gazebo组件

 

  1. World 世界
    • 包含模拟中所有的元素如机器人,灯光,传感器等等
    • 使用SDF(模拟描述格式)格式化 【用XML语言描述】
    • 拓展名.world
  2. Model 模型
    • 只包含一个<model>...</model>
    • 目的是促进模型重用,并简化模型文件
    • 在world文件中调用model:
      1     <include>
      2         <uri>model://model_file_name</uri>
      3     </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官网日常崩真滴头大,明天继续第二篇,溜了溜了

 

posted @ 2018-10-08 15:40  吃脚大汉  阅读(634)  评论(0编辑  收藏  举报