如何在Ruiz中展示我自己的机器人模型?

时间:2016-09-02 08:36:17

标签: model visualization ros

我最近刚收到一个问题。 现在我有了机器人的URDF和STL文件,我想在Rviz中显示它。我怎样才能做到这一点? 谢谢!

2 个答案:

答案 0 :(得分:1)

要让您的机器人在Rviz中可见,您必须运行名为 robot_state_publisher 的节点。 该节点解析给定的URDF(xarco)文件,并发布参数机器人描述中给出的机器人框架,还为RViz加载模型提供了一些信息。

Clearpath与赫斯基提供了很好的例子: https://github.com/husky/husky/blob/indigo-devel/husky_description/launch/description.launch

答案 1 :(得分:0)

只需编写一个这样的启动文件:

<launch>
<arg name="model" default="$(find your_package_name)/path_to_your_urdf/your_urdf.urdf"/>
<arg name="gui" default="true"/>

<param name="robot_description" command="$(find xacro)/xacro.py $(arg model)" />
<param name="use_gui" value="$(arg gui)"/>

<node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" />
<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher"/>

<node name="rviz" pkg="rviz" type="rviz" args="-d $(find urdf_tutorial)/urdf.rviz" required="true"/>

</launch>

建议使用rviz节点取消注释该部分以进行调试,这样您就不必总是重新启动rviz。相反,使用rosrun rviz rviz启动Rviz(确保roscore正在运行!)

joint_state_publisher让你通过GUI控制你的机器人关节,而robot_state_publisher实际上将joint_states发布到/ tf,允许Rviz为你的机器人获得正确的转换。

请参阅:ROS Wiki: robot_state_publisher