ROS问题:gazebo没有想要的模型,而且不报错
问题
在运行一些demo时,检查launch文件。
<!-- startup simulated world -->
<include file="$(find gazebo_ros)/launch/empty_world.launch">
<arg name="world_name" value="$(find xarm_gazebo)/worlds/xarm_example1_table.world"/>
<arg name="paused" value="$(arg paused)"/>
<arg name="gui" value="$(arg gui)"/>
</include>
根据下面这一行路径。
<arg name="world_name" value="$(find xarm_gazebo)/worlds/xarm_example1_table.world"/>
找到这个文件。
<?xml version="1.0" ?>
<sdf version="1.4">
<world name="default">
<include>
<uri>model://ground_plane</uri>
</include>
<include>
<uri>model://sun</uri>
</include>
<include>
<uri>model://table</uri>
<name>table</name>
<pose>0.0 -0.84 0 0 0 0</pose>
</include>
<physics type="ode" update_rate="100.0">
<max_step_size>0.001</max_step_size>
<real_time_factor>1</real_time_factor>
<real_time_update_rate>1000</real_time_update_rate>
<gravity>0 0 -9.81</gravity>
</physics>
</world>
</sdf>
发现应该在gazebo仿真环境下应该有一个桌子,运行launch文件桌子没有出现,而且没有报错。
原因
当没有下载gazebo离线模型包时,每次运行gazebo都要下载所需要的模型,但是网络不给力,导致模型迟迟不出来。
解决1:手动克隆
当在ubuntu能进行可视化操作时,这种方法比较方便。
首先在主目录下按下 ctrl+H ,显示隐藏文件
打开.gazebo,右键新建名为models的文件夹
打开models,将复制好的文件复制进去
这些文件可以从github上下载,GitHub - osrf/gazebo_models: Gazebo database of SDF models. This is a predecessor to https://app.gazebosim.org(网络好有加速器,压缩包717M,网络不好很慢)
也可以从网上找到并下载,由于这个包已经几年没有更新,不会出现新老版本问题。
解决2:不通过可视化操作
cd ~/.gazebo/
ls
mkdir -p models
ls
cd ~/.gazebo/models/
git clone https://github.com/osrf/gazebo_models.git