关于无法使用odom_ekf包的解决办法

无法使用odom_ekf包

odom_ekf包是ros系统自带导航包中重要的组成部分,但初学者使用时会有很多问题,我把我所遇到的问题与方案总结如下。

使用命令检查使用时所遇到的错误

命令如下:

~$ rosrun robot_pose_ekf wtf.py

~$ rosrun rqt_console rqt_console

这两条命令任意一条都可检查使用odom_ekf包时是否出错。

问题及解决方案

所遇到的问题是:

Could not transform imu message from imu_link to base_footprint. Imu will not be activated yet.

解决方案:添加静态坐标转换

~$ rosrun tf static_transform_publisher 0 0 0 0 3.1415926 3.1415926 /base_link /imu_link 50

~$ rosrun tf static_transform_publisher 0 0 0 0 0 0 /base_footprint /base_link 50

重要重要重要:静态坐标系坐标系谁在前谁就是父坐标,谁在后谁是子坐标,父坐标可以有许多子坐标,但子坐标只有一个父坐标
将IMU坐标系转换到base_footprint
参考博客将odom中发布的odom转换base_link的坐标系转换注释掉,该博客详细解释了缘由,重新运行odom_ekf包,即可解决。


版权声明:本文为lmx_lmx原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。