1.环境变量设置
将模型所在的文件夹(其中包含一个.sdf模型文件和一个.config配置文件)放到gazebo环境变量所在的目录下,例如下面的默认目录:
~/.gazebo/models
另外一种方法也可以:在~/.bashrc
文件中添加更多的gazebo模型的环境变量:
export GAZEBO_MODEL_PATH=/home/user/catkin_ws/src/
其中,/home/user/catkin_ws/src/
为模型文件夹所在的目录。
2.建立.world文件
新建一个.world文件,其基本结构如下。只需要将<uri>model://my_model</uri>
中的 my_model
修改为你的模型名称即可。
<?xml version="1.0" ?>
<sdf version="1.6">
<world name="my_world">
<!-- 环境光 -->
<include>
<uri>model://sun</uri>
</include>
<!-- 地面 -->
<include>
<uri>model://ground_plane</uri>
<script>
<uri>file://media/materials/scripts/gazebo.material</uri>
<name>Gazebo/White</name>
</script>
</include>
<!--模型 -->
<model name='model_name'>
<include>
<uri>model://my_model</uri>
</include>
</model>
</world>
</sdf>
3.加载.world文件
如果只是想在gazebo中看看效果,直接在命令行中用gazebo
命令加载.world文件即可:
gazebo my_world.world
如果想在launch文件中加载.world文件,在launch文件中添加如下代码:
<launch>
<include file="$(find gazebo_ros)/launch/empty_world.launch">
<arg name="world_name" value="<your_world>/my_world.world"/>
</include>
</launch>
<your_world>即为world文件所在的完整路径,例如:
<launch>
<include file="$(find gazebo_ros)/launch/empty_world.launch">
<arg name="world_name" value="~/Documents/my_world.world"/>
</include>
</launch>
然后用roslaunch启动launch文件即可。
参考链接:https://zhuanlan.zhihu.com/p/129660662