仅作学习记录
tf的报错问题:TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id “robot_tf/odom” from authority “vlc_localization” because of an invalid quaternion in the transform (nan nan nan nan)
问题就是:我用学习团队一个新的定位技术来替换AMCL发布map->odom的tf变换,将该技术融合到ros导航中,但是在这个过程一直出现一个tf报错,由于在VScode里面配置一直出问题无法调试,只看终端信息又看不出什么,只好想出这种办法debug,如下图红圈所示:模仿tf的查看函数的源码对自己的tf数据进行一个输出,从中发现是在哪一步出现了问题。
tf_echo源码
注意:具体问题依然需要自己查找,因为数据缺失也有可能会引发这个问题。