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. BZOJ1047:[HAOI2007]理想的正方形

    浅谈队列:https://www.cnblogs.com/AKMer/p/10314965.html 题目传送门:https://lydsy.com/JudgeOnline/problem.php?i ...

  2. FPGA 竞争与冒险

    一,概念 在数字电路设计时,无论是组合.时序,还是FPGA电路中,都需要考虑竞争冒险现象(Race and Competition). 竞争:由于信号在传输和处理过程中经过不同的逻辑门.触发器或逻辑单 ...

  3. Java栈,队列,优先队列的使用

    1. 栈的使用: import java.util.*; public class Main{ public static void main(String[] args){ Deque<Str ...

  4. java代码包装类----------Integer

    总结:我的笔试挂了..基础的继承不懂不会.我不知道到底是哪里的问题. 要好好反思 package com.da.ima2; public class jrfk { // int整型不能直接转化为Int ...

  5. cpu上下文切换(下)

    --怎么查看系统的上下文切换情况 过多的上下文切换,会把cpu时间消耗在寄存器.内核栈以及虚拟内存等数据的保存和恢复上,缩短进程真正运行的时间,成了系统性能大幅下降的一个元凶. 查看,使用vmstat ...

  6. Bresenham快速画直线算法

    现在的计算机的图像的都是用像素表示的,无论是点.直线.圆或其他图形最终都会以点的形式显示.人们看到屏幕的直线只不过是模拟出来的,人眼不能分辨出来而已.那么计算机是如何画直线的呢,其实有比较多的算法,这 ...

  7. Rails 表单总结

    1.button <%= button_to "删除",{:controller =>"welcome",:action =>"de ...

  8. web基础 (四) JavaScript基础

    JavaScript 简史略过…… 一.Javascript结构   ECMAScript  ECMAScript 是一个重要的标准,但它并不是 JavaScript 唯一的部分,当然,也不是唯一被标 ...

  9. CentOS 7.2 部署Rsync + Lsyncd服务实现文件实时同步/备份 (三)

    配置过程中遇到的错误与查看日志 以下错误是在服务正常开启的情况下发生的,请先查看服务是否正常启动. 一.错误 1. rsync: failed to set times on "." ...

  10. 11-13SQLserver基础--数据库之事务

    事务 定义:在远程操作时,都要经过两步操作,先删除后插入或者先插入后删除,都要调用两次数据库,为了保证数据库的完整性,只要流程运转过程中,只要有一步操作未成功,自动复原,回到流程刚开始的地方.实际上是 ...