预计完成时间:5 分钟
你还记得第一单元里提到的,在 Gazebo Sim 中添加模型的三种方式吗?这一节会做同样的事情,不过会讲得更细。
为了演示如何添加模型,这里会在 world 文件中同时使用一个较小的在线模型和一个较大的离线下载模型。
请使用以下两个模型:
现在,请把离线模型下载下来,并放到 robot_description 功能包中。
.zip 文件下载到你的电脑中。models 的文件夹。cd /workspace/gazebo_sim_ros2/src/robot_description
mkdir models
models 文件夹里。cd models
unzip ./Gazebo.zip -d ./gazebo
rm -f ./Gazebo.zip
接下来,把这些模型添加到世界 SDF 文件 demo_world.sdf 中。请把下面的代码放到 light 标签对应部分之后。
复制并粘贴
<include>
<uri>model://gazebo</uri>
<name>gazebo</name>
<pose>5 0 0 0 0 3.14159</pose>
</include>
<include>
<uri>
https://fuel.gazebosim.org/1.0/OpenRobotics/models/turtle
</uri>
<name>turtle_left</name>
<pose>1 3 0 0 0 3.14159</pose>
</include>
<include>
<uri>
https://fuel.gazebosim.org/1.0/OpenRobotics/models/turtle
</uri>
<name>turtle_right</name>
<pose>1 -3 0 0 0 3.14159</pose>
</include>
最后,启动这个 world。不过别急,在启动之前你必须先告诉 Gazebo Sim 去哪里查找本地 Gazebo 模型。
因此,在启动 Gazebo Sim 之前,先导出模型路径。
在 Web Shell 1 中执行
export GZ_SIM_RESOURCE_PATH=/workspace/gazebo_sim_ros2/src/robot_description/models
cd /workspace/gazebo_sim_ros2/src/robot_description/worlds
gz sim demo_world.sdf
当 Gazebo Sim 加载完成后,你应该会看到与下图类似的结果:

如果你能看到 Gazebo 和两只 Turtle,就说明你已经成功学会了如何在世界中加入模型!
此时,你最终的 demo_world.sdf 文件内容应该如下:
demo_world.sdf
