ROS理论基础之rviz实时状态显示原理

rviz中首先有关于世界的基本frame,再有base_link,再到机器人的每一个关节,都会有一个自己的坐标系.

想要在rviz中显示,还要用到两个插件,robot_state_publisher和joint_state_publisher,首先其中robot_state_publisher来进行解析模型文件,即robot_description参数设置的urdf文件(此处设置的参数名可能是固定暂不确定),成功解析将显示tf转换OK,否则j就会报错;

joint_state_publisher此包发布机器人的传感器消息。该包读取robot_description,查找所有非固定关节,并发布定义了所有关节的jointState消息。可以与robot_state_publisher发布服务器节点一起使用,也可以发布所有关节状态的转换。

robot_state_publisher使用参数robot描述指定的urdf和主题关节状态的关节位置来计算机器人的正向运动学,并通过tf发布结果。

从 /joint_states 话题中获取机器人joint角度作为输入, 使用机器人的运动学树模型计算出机器人link的3D姿态, 然后将其发布到话题 /tf 和  /tf_static . joint_state_publisher从ROS参数服务器中读取robot_description参数, 找到所有non-fixed joint, 发布他们的 JointState 消息到 /joint_states 话题

每个坐标系之间使用tf进行左边转换.

 

上一篇:第六章RIKIROBOT自主导航与动态避障功能


下一篇:python学习笔记三——控制语句