当前位置: 首页 > news >正文

ROS实战中Gazebo的基本使用

1、界面概述

卸载 ros-melodic 版本安装的 Gazebo9,安装 Gazebo11。

$ sudo apt-get remove gazebo9 gazebo9-common gazebo9-plugin-base libgazebo9:amd64 libgazebo9-dev:amd64 ros-melodic-gazebo-*                   $ sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
$ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install gazebo11
$ sudo apt-get install libgazebo11-dev

启动:

  • 命令行:roslaunch gazebo_ros empty_world.launch
  • 全局命令:Alt + F2,键入 gazebo 后回车。

软件视图:

  • 场景:展示仿真模型。
  • 左面板:
    • WORLD:“世界”选项卡,显示当前在场景中的模型,并允许你查看和修改模型参数,例如它们的姿势。你还可以通过展开“GUI”选项并调整相机姿势来更改摄像机视角。
    • INSERT:“插入”选项卡,向模拟添加新对象(模型)。要查看模型列表,您可能需要单击箭头以展开文件夹。在要插入的模型上单击(和释放),然后在场景中再次单击以添加它。
    • LAYER:“图层”选项卡可组织和显示模拟中可用的不同可视化组(如果有)。图层可以包含一个或多个模型。打开或关闭图层将显示或隐藏该图层中的模型。这是一个可选功能,因此在大多数情况下此选项卡将为空。
  • 右面板:默认情况下Gazeb界面隐藏右侧面板。单击并拖动栏以将其打开。右侧面板可用于与所选模型(joint)的移动部件进行交互。如果未在场景中选择任何模型,则面板不会显示任何信息。
  • 上部工具栏:是Gazebo的主工具栏,它包含一些最常用的与模拟器交互的选项,例如:选择,移动,旋转和缩放对象等按钮; 创造一些简单的形状(如立方体,球体,圆柱体); 复制/粘贴模型选项。
    • 选择模式(select mode):在场景中导航。
    • 平移模式(translate mode):选择要移动的模型。
    • 旋转模式(rotate mode):选择要旋转的模型。
    • 缩放模式(scale mode):选择要缩放的模型。
    • 撤消/重做(undo/redo):撤消/重做场景中的操作。
    • 简单形状(simple shape):将简单形状插入场景中。
    • 灯光(lights):为场景添加灯光。
    • 复制/粘贴(copy/paste):在场景中复制/粘贴模型。
    • Align:将模型彼此对齐。
    • Snap:将一个模型与另一个模型对齐。
    • 更改视图(change view):从各个角度查看场景。
  • 底部工具栏:显示有关模拟的数据,如模拟时间及其与实际时间的关系。
    • “模拟时间”是指模拟运行时模拟器中时间流逝的速度。模拟时间可以比实时更慢或更快,具体取决于运行模拟所需的计算量。
    • “实时”是指模拟器运行时在现实生活中经过的实际时间。模拟时间和实时之间的关系称为“实时因子”(RTF)。它是模拟时间与实时的比率。RTF衡量模拟运行与实时相比的速度或速率。
    • Gazebo的世界状况每迭代一次,计算一次。你可以在底部工具栏的右侧看到迭代次数。每次迭代都会将模拟推进固定的秒数,称为步长。默认情况下,步长为1 ms。您可以按暂停按钮暂停模拟,并使用步骤按钮逐步执行几个步骤。
  • 菜单栏:更具体的功能。
  • 鼠标操作:
    • shift + 左键:旋转视角。
    • 左键:平移时间。
    • 滚轮:缩放大小。

2、创建一个简单的机器人

  • 进入模型编辑器,在顶部菜单栏中单击Edit,然后选择Model Editor。或者,使用热键Ctrl + M。

    • 左侧面板和顶部工具栏仅包含用于编辑和创建模型零件的小部件。
    • 上方的工具栏包含用于编辑模型的工具。包括用于与场景中的对象进行交互的工具。可用的工具包括选择,平移,缩放,旋转,撤消和重做,复制和粘贴,对齐,捕捉,视图调整以及联合创建。
    • 左面板有两个用于编辑模型的标签。
      • Insert 插入标签:用于添加关节和模型约束的工具。
        • 您可以将新零件(链接和模型)添加到模型编辑器。共分为三个部分。
        • 简单形状:这些是可以插入以在模型中形成链接的基本几何形状。
        • 自定义形状:该Add按钮允许您从模型的链接中导入自定义网格。目前,它支持COLLADA(.dae),3D Systems(.stl),Wavefront(.obj)和W3C SVG(.svg)文件。
        • 模型数据库:具有模型列表。可以按照与简单形状相同的方式将它们插入到“模型编辑器”中。插入后,它们称为嵌套模型
      • Model “模型”选项卡:允许编辑模型属性和内容。
        • 可以设置要构建的模型的名称和基本参数。它显示了模型中的链接,关节,模型约束和插件的列表。可以使用Link Inspector修改参数。
        • 可以使用下边的这些方法打开它。双击列表中的项目 /
          双击场景中的项目 / 右键单击列表中的项目,然后选择 Open Link Inspector / 右键单击场景中的项目,然后选择 Open Link Inspector。
  • 创建车辆:

1.底盘。

      • 在左侧面板的“insert”选项卡中,在“box”图标上单击一次,将光标移至“场景”中的任何位置,然后再次单击以释放框。

  • 接下来,调整盒子的尺寸。我们可以通过选择顶部工具栏上的“缩放”(第四个)工具来做到这一点。在“场景”中选择该框,并且该框上方应显示RGB标记。红色标记代表X轴,绿色代表Y,蓝色代表Z。

  • 将底盘降低到更靠近地面的位置。双击底盘模型以调出检查器链接检查器(link inspector)。向下滚动到 link 选项卡的底部以找到 Pose 参数,并将其更改Z为0.4m,然后在框外单击。单击OK以保存更改并关闭检查器。

  • link 选项卡有两个Pose,一定要注意设置的是下方的Pose。

2.前轮。

  • 从左侧面板上的 insert 选项卡插入圆柱体。

  • 使用Link Inspector沿X轴旋转它。双击圆柱体,滚动到底部的 Pose 部分,然后更改Roll为1.5707弧度(90度),然后在框外单击。暂时不要关闭检查器。

  • 接下来,通过提供确切的尺寸来调整轮子的尺寸。转到 visual 视觉选项卡以查看此链接中的视觉列表。向下滚动到Geometry部分,然后将其更改 Radius 为0.3m和 Length 为0.25m。

  • 现在,在较大的圆柱体内可以看到较小的圆柱。因为我们仅更改了视觉几何体,而没有更改碰撞。visual 是链接的图形表示,不影响物理模拟。切换到 collision 选项。设置Radius:0.3m和Length:0.25m 单击OK以保存更改并关闭检查器。

  • 通过复制粘贴创建另一个前轮。选中刚刚创建的前轮,在上方工具栏中点击复制(右起第六个),再点击粘贴(右起第五个),在场景中单击插入副本。

  • 现在,通过沿X轴正方向(场景中的红色标记)对齐底盘,确保车辆能够正确行驶。在下一步中添加车轮时,请确保它们位于沿X轴正方向延伸的车辆末端。

  • 底盘和车轮目前是自由移动的车身。为了限制它们的运动,我们将在每个车轮和底盘之间添加关节。单击顶部工具栏上的 Joint 图标(右起第一个)以弹出 Create Joint 对话框。

  • Create Joint 对话框包含通常为关节指定的关节属性。在配置任何属性之前,系统会提示您选择关节的父级和子级链接。将鼠标移到“场景”中的底盘上以使其突出显示,然后单击以将其设置为关节的父级。

    • 将鼠标移至左前轮;一条线现在应该从机箱的原点延伸到鼠标的末端。单击轮子将其设置为关节的子代。创建一个新的关节。默认情况下,它是旋转关节(Revolute),恰好是我们想要的 Joint Types 。
  • 接下来,我们需要配置轮子的旋转轴。在 Create Joint 对话框中,找到 Joint axis 并将其更改为Z(0,0,1)。注意轮子各个轴上的颜色显示。您应该看到一个黄色的环现在出现在关节图的蓝色箭头上方,表示其为旋转轴 。

  • 为了使车轮与底盘对齐,我们将在“ Joint Creation”对话框的部分中使用不同的对齐选项Align links。首先,我们将在X轴上对齐,因此单击 X Align Max 选项以查看对齐结果。圆柱体应突出显示以指示其姿势已更改。

  • 在我们的示例中,我们要使轮子与底盘平齐。要使车轮更靠近,请单击Y Align Max选项。但是,这还不是我们想要的。单击Y对齐选项旁边的Reverse选项,以将轮子的最小值(最大值的反方向)与底盘的最大值对齐。最后点击按Create。

    • 注意,此 Reverse 选项适用于子链接,因为下面的下拉列表中显示的默认对齐方式配置为 Child to Parent。如果设置了 Parent to Child 配置,则 Reverse 选项将应用于父链接

点击链接ROS实战中Gazebo的基本使用阅读原文

http://www.dtcms.com/a/453211.html

相关文章:

  • wordpress网站维护教程wordpress修改管理密码
  • PTA6-1 使用函数求最大公约数(C)
  • 小谈:数字化项目立项成功的方法论
  • HTTPS 真的牢不可破吗?—— 中间人攻击与安全机制解析
  • 广东省城乡建设厅网站seo短视频新地址在哪里?
  • 从 0 到 1 搭建 Python 语言 Web UI自动化测试学习系列 9--基础知识 5--常用函数 3
  • 然后在亚马逊网站上做外贸做网站需要做数据库
  • 接口测试-Postman 断言
  • 网站关键词更换了专业网站建设 公司哪家好
  • 乐观锁 与 悲观锁 笔记251007
  • Linux中select的实现
  • /UI2/CL_JSON=>DESERIALIZE :JSON反序列化
  • MySQL主主复制+Keepalived高可用集群搭建与故障切换实战
  • 幼儿网站源代码室内设计案例去什么网站
  • Spring Framework源码解析——BeanFactoryAware
  • Linux系统--进程通信初解
  • 企业网站如何建设报告jsp简述网站开发流程
  • VS2022创建项目工程笔记
  • 【学习笔记05】C++11新特性学习总结(下)
  • RNN、LSTM与GRU模型
  • 基于华为云IOT设计的粮仓环境监测系统_303
  • 天津做网站企业保险公司网站策划
  • Linux-> TCP 编程2
  • 视频批量混剪、批量拼接,维多快剪-批量创作插件使用说明
  • JAVA算法练习题day30
  • 网站怎么做平台长沙官网制作
  • 做网站分前台后端吗怎样做一个网站平台
  • C++:异常处理与智能指针实战指南
  • 做芯片外贸生意上哪个网站深圳高端做网站公司
  • AutoCoder Nano 是一款轻量级的编码助手, 利用大型语言模型(LLMs)帮助开发者编写, 理解和修改代码。