一、打开gazebo搭建模型
gazebo
在gazebo界面左上角点击“Edit”——>"Building Editor"进入下图的模型搭建界面。可以自己利用左边的材料搭建模型。
点击墙壁之类的物品,右键,点击“Open Wall Inspector”按钮,就会出现可以调模型参数的界面如下,根据自己的需要调整墙壁的长宽高和材质等:
模型搭建好之后,点击左上角的“File”——>"Save as"就会出现如下界面,给自己的模型命名之后保存即可。然后ctrl+C关掉gazebo。
二、生成.world文件
在终端重新打开gazebo
gazebo
点击左上角“Insert”——>找到刚刚自己保存的模型路径,比如我的模型名字就是myhome,点击模型名字拖动到空的gazebo中,就会在gazebo里面自动生成你刚刚搭建的模型,这就是你的world。
然后点击左上角的“File”——>"Save World As"出现如下界面,找到自己的功能包/src,保存到自己创建的world文件下面。注意这里给自己的world命名时,一定要带上后缀.world,就是File name这一栏,否则到时候会出错。
然后在终端Ctrl+C关闭gazebo.
三、编写launch文件在gazebo显示模型
在功能包/src下面创建launch文件夹,创建my_home.launch文件,将下面代码写入launch文件中
<launch>
<include file="$(find gazebo_ros)/launch/empty_world.launch">
<arg name="world_name" value="$(find mbot_gazebo)/worlds/myhome.world"/>
<arg name="paused" value="false"/>
<arg name="use_sim_time" value="true"/>
<arg name="gui" value="true"/>
<arg name="headless" value="false"/>
<arg name="debug" value="false"/>
</include>
</launch>
这里需要把第三行的mbot_gazebo改成自己的功能包名字,把第三行的myhome.world改成刚刚你自己保存的.world文件名字。
编译文件,在当前终端输入
catkin_make
在另一个终端输入:
source ./devel/setup.bash
roslaunch mbot_gazebo my_home.launch
这里需要把my_home.launch改成你自己的.launch文件名字
这样会自动打开gazebo并且显示刚刚自己搭建的模型了。