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. IEEE1588精密网络同步协议(PTP)

    1  引言 以太网技术由于其开放性好.价格低廉和使用方便等特点,已经广泛应用于电信级别的网络中,以太网的数据传输速度也从早期的10M提高到100M,GE,10GE.40GE,100GE正式产品也于20 ...

  2. [转载]Linux驱动-SPI驱动-概述

    转载地址http://blog.csdn.net/droidphone SPI是"Serial Peripheral Interface" 的缩写,是一种四线制的同步串行通信接口, ...

  3. 【转】LTE基本架构

    这篇文章主要介绍LTE的最基础的架构,包括LTE网络的构成,每一个网络实体的作用以及LTE网络协议栈,最后还包括对一个LTE数据流的模型的说明. LTE网络参考模型 这是一张非常有名的LTE架构图,从 ...

  4. eclipse中删除tomcat server 导致不能重新创建该server

    定位到:workspace\.metadata\.plugins\org.eclipse.core.runtime\.settings 1 打开org.eclipse.jst.server.tomca ...

  5. java 多线程系列基础篇(十一)之生产消费者问题

    1. 生产/消费者模型 生产/消费者问题是个非常典型的多线程问题,涉及到的对象包括“生产者”.“消费者”.“仓库”和“产品”.他们之间的关系如下:(01) 生产者仅仅在仓储未满时候生产,仓满则停止生产 ...

  6. JS写一个简单的程序,判断年份是平年还是闰年

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. 对数组名取地址 a[ ],&a

    C语言规定,数组名代表数组的首地址,也就是第0号元素的地址.所以a==&a[0] 但对数组名取地址时却要注意了,在理解“对数组名取地址”这一表达式的含义时一定要记住:数组名是“数组”这种变量的 ...

  8. NIO/AIO

    1 NIO NEW IO 的简称,新的java I/O标准,jdk1.4纳入,有以下特点: (1)NIO基于block块,以块(硬盘数据块)为单位处理数据,比旧式的io基于流的效率高. (2)为各个基 ...

  9. ztree 树的模糊搜索

    (转载),有个坑记录下: (原文)实现类似下面这种: /** * 展开树 * @param treeId */ function expand_ztree(treeId) { var treeObj ...

  10. JS 中的数组遍历方式效率比较

    JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代码如下: ; j < ...