tf
作用
tf:transform,ROS中管理3D坐标系变换的工具,本质上就是一些库。用来发布两个坐标系的位姿变换关系,其他功能模块(比如RVIZ)可以通过查询TF的变换关系获取两个坐标系的实时位姿信息。
RVIZ订阅TF变换
TF变化的来源
1,由gazebo仿真时,在URDF文件中指定发布TF变换,则仿真时就会不断发布TF话题数据;
2,由真实机器人运动的驱动代码不断发布TF变换。
RVIZ订阅TF数据的作用
RVIZ通过实时订阅TF数据,实时更新RVIZ中机器人的位置和姿态。
原理
tf2(tf2_ros)就是对机器人学中坐标变换的实现和封装。
TF相关的操作
广播--监听--帧
- 广播(TransformBroadcaster):将坐标系和坐标系之间的位姿态关系发布出去---发布位姿;
- 监听(TransformListener):获取坐标系和坐标系之间的位姿关系---获取位姿;
- TF(坐标变换TransformStamped)帧:广播出去的一组数据可以称作一个TF帧,包含父坐标系名称、子坐标系名称,父坐标系和子坐标系之间的关系