ros-gazebo显示urdf模型-ros回炉再强化学习(3)
注意:此方式适合将urdf模型文件显示到gazebo中,不适用与urdf.xacro模型文件。
若遇到xacro文件,想要显示到gazebo中,需要先转换为urdf文件。
1.为urdf添加gazebo标签
添加什么标签暂时未搞清楚,暂时用moveit_assistant产生的urdf文件代替,(此urdf文件包含了gazebo标签)
2.编写gazebo和模型的launch文件
gazebo里边不能添加模型,所以需要用到launch文件,进行模型的添加。
gazebo_display.launch
<?xml version="1.0"?>
<launch>
<!-- 此处为启动gazebo时需要设置的参数,一般无需修改 -->
<arg name="paused" default="false"/>
<arg name="use_sim_time" default="true"/>
<arg name="gui" default="true"/>
<arg name="headless" default="false"/>
<arg name="debug" default="false"/>
<!-- 在Gazebo中创建一个新的world,并使用上述参数进行设置,一般无需修改 -->
<include file="$(find gazebo_ros)/launch/empty_world.launch">
<arg name="debug" value="$(arg debug)" />
<arg name="gui" value="$(arg gui)" />
<arg name="paused" value="$(arg paused)"/>
<arg name="use_sim_time" value="$(arg use_sim_time)"/>
<arg name="headless" value="$(arg headless)"/>
</include>
<!-- 导入urdf文件,第一个参数修改为功能包名,第二个参数修改为urdf文件的路径 -->
<param name="robot_description" command="cat '$(find robot_description)/urdf/robot.urdf'" />
<!-- 导入spawn_urdf节点,使Gazebo能够识别urdf文件。需要修改的参数为功能包的路径 -->
<node name="spawn_urdf" pkg="gazebo_ros" type="spawn_model" args="-param /robot_description -urdf -model robot" />
</launch>
需要修改的地方为:倒数第四行,导入urdf文件修改功能包的名字,以及修改urdf文件路径和urdf的名字。
启动文件,此时模型已经显示到gazebo中了。