ROS集成:Gazebo与ROS紧密集成,可以通过ROS框架进行控制和通信,方便与其他ROS节点进行数据交换和协同工作。

使用roslaunch启动gazebo

要使用roslaunch启动Gazebo,您可以按照以下步骤进行操作:

  1. 创建一个launch文件:在终端中使用文本编辑器创建一个新的launch文件,例如gazebo.launch。
  2. 编辑launch文件:在launch文件中添加必要的节点和参数来启动Gazebo仿真环境。下面是一个示例launch文件的基本结构:
<launch>
  <!-- 启动Gazebo -->
  <node name="gazebo" pkg="gazebo_ros" type="gazebo" args="$(find your_package_name)/path_to_world_file.world" respawn="false" output="screen">
    <!-- 设置与Gazebo相关的参数 -->
    <param name="use_sim_time" value="true"/>
    <!-- 添加其他需要的参数 -->
  </node>
</launch>

在上面的示例中,您需要将your_package_namepath_to_world_file.world替换为您自己的软件包名称和世界文件路径。

3.保存launch文件:保存并关闭launch文件。

4.启动Gazebo:在终端中使用roslaunch命令来启动Gazebo仿真环境。

roslaunch your_package_name gazebo.launch

6,18 gazebo 创建环境_git

在Gazebo的工具栏中,常见的模式包括选择模式(Select Mode)、变换模式(Translate Mode)、旋转模式(Rotate Mode)和缩放模式(Scale Mode)。这些模式可以用于操作场景中的物体或模型。

  1. 选择模式(Select Mode):此模式允许您选择场景中的物体或区域。您可以单击物体直接选择,或使用框选来选择多个物体。选择后,您可以对选定的物体进行移动、旋转、缩放等操作。
  2. 变换模式(Translate Mode):这个模式允许您将选定的物体平移(移动)到新的位置。您可以选择一个或多个物体,并通过拖动它们来改变其位置。
  3. 旋转模式(Rotate Mode):这个模式允许您旋转选定的物体。您可以选择一个或多个物体,并通过拖动它们来改变其朝向或旋转角度。
  4. 缩放模式(Scale Mode):这个模式允许您对选定的物体进行缩放操作。您可以选择一个或多个物体,并通过拖动它们来调整其大小。

5.撤销操作:ctrl+z

6.恢复操作:shift+ctrl+z

7、后面的3个图标用于在Gazebo中生成各类简单的形状,主要有箱形、球形以及圆柱形。单击选择相应的图标,可以通过单击的方式将其放置于3D环境中的任意位置,放置模型之后,可以通过缩放模式来对模型在各个轴向上的大小进行调整。

8、再后面的3个图标用于点光源、聚光灯 、方向灯的照明。如果你想改变环境中的灯光和阴影,可以尝试这些方法。

9.复制(Ctrl+C);将选中的元素复制到剪贴板。粘贴(Ctrl+V):从剪贴板粘贴元素。 Selection 模式下,按下Ctrl 键,选择两个对象进行对齐操作:选中对象,单击此按钮,可以以相应对象的x、y或z轴进行对齐,或者以某一物体的最大、最小或中心进行对齐(此处具有多种对齐选项,读者可以自行探索)。 10、Snap模式(栅格捕捉模式,N):在此模式下,读者可以选择对象的位置进行捕获。视角变换:该功能使读者能够通过多个预置的角度来改变对场景的观察视角。 11、截图:通过摄像头图标可以保存一幅截图,并将截图保存在读者系统的~/gazebo/ pictures目录下。 12、日志数据(按组合键Ctrl+D):此功能使读者能够记录模拟数据,并进行回放。该数据格式为,log,其中包含了整个模型世界的初始化描述数据,以及一系列的模型状态。默认情况下,,1og文件保存于~1.gazebo/1og目录下。

在Gazebo的工具栏中,通常有一些按钮和选项,用于打开和管理场景中的世界(World)、插入模型(Insert)以及图层(Layers)等功能。以下是对这些功能的解释:

  1. World(世界):点击 "World" 按钮,可以打开世界编辑器面板。在世界编辑器中,您可以设置仿真世界的属性,如重力、光照、物理引擎参数等。此外,您还可以在世界编辑器中添加各种环境元素、地形、天空盒等。
  2. Insert(插入):点击 "Insert" 按钮,可以打开模型库面板。在模型库中,您可以浏览和选择各种可用的机器人模型、传感器、家具、建筑物等。选择所需模型后,将其拖动到场景中来进行插入。
  3. Layers(图层):点击 "Layers" 按钮,可以打开图层面板。在图层面板中,您可以管理场景中不同对象的可见性和互动性。通过选择或取消选择相应的图层,您可以控制哪些对象在场景中可见或可交互。


打开gazebo

roscore
    rosrun gazebo_ros gazebo
    gazebo --verbose  -s libgazebo_ros_init.so -s  libgazebo_ros_factory.so 你的world文件目录/fishbot.world
/home/zym/building_editor_models/factory01

搭建环境

  1. 场景界面(主显示区)

主显示区是gazebo仿真的主要部分,在这个位置显示我们的机器人模型等,我们在这个区域操控我们的仿真对象,并与地形环境进行交互。(在场景中点击鼠标左键可以进行视角移动,点击右键可以进行视角缩放,中键可以转动视角

6,18 gazebo 创建环境_git_02

a.World:选项卡显示当前场景中的模型,允许查看和修改模型参数(姿态调整),也可以通过展开“GUI”选项调整视角

b.Insert:该选项卡是向仿真场景中添加新对象(模型)的。单击文件夹展开,可以看到模型序列。点击模型可以在场景中部署他。

c.Layers:该选项卡是组织并显示仿真中可用的不同可视化组。一个图层可包含多个模型。关闭图层可以隐藏该图层的模型(跟画画的图层一个作用)

2)右面板

默认情况下,右面版是隐藏的。但我们可以通过滑动右侧的边框来让他出现。右面板可用来选定模型的关节进行交互,当然我们得提前在场景中选定模型。6,18 gazebo 创建环境_缩放_03

6,18 gazebo 创建环境_缩放_04

3.获取模型

1.下载模型
git clone https://gitee.com/bingda-robot/gazebo_models.git

记得要将gazebo_models拷贝到.gazebo当中


2.添加模型到gazebo的Insert

1)在gazebo的Insert当中点击Add Path

2)找到.gazebo文件夹

3)点击gazebo_models文件夹然后点击Open,随后我们就能在gazebo里面看到一堆模型。

4)自己创建场景

点击Edit,选择里面的Building Editor

保存在File选项里面,保存好号就可以退出编辑界面回到我们的主场景了6,18 gazebo 创建环境_图层_05

/home/zym/building_editor_models/factory01

6,18 gazebo 创建环境_图层_06

/home/zym/building_editor_models/factory02

cp -r models/gazebo_models/* model/

6,18 gazebo 创建环境_git_07

gazebo --verbose  -s libgazebo_ros_init.so -s  libgazebo_ros_factory.so /home/zym/worlds/factory01.world