ROS机器人操作系统开发视频教程进阶(记录感悟和过程)
四、TF空间描述和变换
1、什么是TF
自动变换坐标的软件包
指令 tf_monitor 打印tf树中的所有参考系信息
指令 tf_echo 查看指定参考系之间的变换关系
指令 static_transform_publisher 发布两个参考系之间的静态坐标变换
static_transform_publisher x y z yaw pitch roll frame_id child_frame_id period_in_m
static_transform_publisher x y z qx qy qz qw frame_id child_frame_id period_in_ms
节点 view_frames 可视化的调试工具,可以生成pdf文件显示tf树信息
2、使用TF,在robot_1程序包下的rplidaer.launch文件下加上:(加在之前)
<node pkg="tf"
属于tf功能包
type="static_transform_publisher"
属于这个节点,变换广播节点
name="base_link_to_laser"
name随便取,这里是为了把激光雷达坐标转换成base_link
args="-0.023 0 0.16 3.141593 0 0 /base_link /laser 100"/>
前面三个参数,指的是xyz方向高度上的误差,第四五六个参数是指激光雷达和baselink的xyz夹角,这里单位是弧度,这里就需要我们知道x的正方向,看厂家驱动里的说明即可,第七个参数是副机坐标,第八个是自己的坐标,第九个是毫秒的时间,100ms广播一次即10Hz
3、然后就修改完成,可以重新使用robware进行远程传输,会覆盖掉之前的文件夹,按照三中的运行即可