搞懂 ROS TF
2017-08-01 本文已影响0人
marine0131
1.map
map是robot的全局坐标系,原点可以在map配置文件yaml中修改,

第一个为静态地图的路径,第二个为像素与坐标之间的倍数关系,第三个为map原点的坐标,这个坐标体系并不在tf tree里,只是让ros在图片里找到原点而已。
2.odom
odom同样是现实世界中的固定坐标系,但它是变动的,是ros在运动前已当前观测到的数据建立的临时的坐标系,避免远离map原点而造成误差。
3.base_link
base_link是机器人本体坐标系,已底座中心为原点的坐标系,跟随robot,robot身上的任何零件都是已这个为母参考系的。
4.laser
激光坐标系,显然以base_link作为母坐标系,是激光相对于底座中心的坐标系,
1)odom节点里面直接发布cmd_vel消息。
- tf tree 确定一下laser的tf
- 启动后,未发布nav_goal时,查看odom tf是否抖动,好像没有抖动,那么说明odom tf没有问题,定位的不准确性较高,即amcl定位有问题,但是此时laser的数据正确。
- 发布nav_goal之后,laser scan就出现问题,
5)有人说是rviz版本的问题,1.9.34版本有问题,升级到1.9.35