有时候由于urdf以及代码中有些遗漏,可能导致TF出现问题,此文只作为阐明TF重要性的示例,不是解决方案!
请注意此方法不保证正确和唯一,解决方案多样,欢迎留言补充,这里抛砖引玉~
以下面为例:
启动地图构建程序,但是没有出现地图,rviz现象为:
这里有两个警告和两个错误:


使用下面命令查看TF tree:
$ rosrun rqt_tf_tree rqt_tf_tree

/odom和/base_footprint断开了!
这里有一点需要重点说明,tf中的odom和topic的odom虽然名称一样,但完全不是一类。
怎么办呢?
只需要一步即可:可以参考官网robot_state_publisher具体可以参考附录:~
在launch文件中添加:
<node pkg="tf" type="static_transform_publisher" name="fix_odom" args="0 0 0 0 0 0 odom base_footprint 50" />
然后重新运行:

熟悉的地图出来了,再看一下tf:

OK!
在自己的机器人上使用机器人状态发布器 说明: 本教程介绍如何发布机器人的状态, TF ,使用机器人状态出版商。
教程级别: BEGINNER
下一个教程: 有关如何结合使用robot_state_publisher与urdf的详细教程,请查看 本教程
内容
更多文章请关注《万象专栏》
转载请注明出处:https://www.wanxiangsucai.com/read/cv11712