1 参考博客
主要参考以下博客,感谢各位博主的分享
[link]https://www.freesion.com/article/97281285214/#1_9
2 实操分析
按照第一个博客所述,运行imu_gps_localization.launch后,使用rqt_graph工具得到以下节点图:
使用rostopic echo /fused_path命令可以显示topic的内容
/fix的数据
/nmea_sentence的数据
/imu/data的数据
补充:imu and gnss 融合节点,需要订阅/imu/data与/nmea_sentence两个话题.
想要知道这两个话题发布的频率,以便在实际使用中调节imu和bds的频率.
使用rosbag info filename.bag, 如下图:
duration可知这个回放包,总共记录了1019s的数据,记录了topics /imu/data的数据量为101985 msgs
根据公式:
话题发布频率=话题总数据量/总时间
可知/imu/data的发布频率约为100Hz,/nmea_sentence的发布频率约为15Hz.
3 学习使用
3.1 试验室有的设备是星网宇达(5610),输出格式为GPFPD格式,需要将GPFPD信息使用ROS节点进行解析,并发布/fix话题,以供imu_gps_localization_node订阅使用.通过对nmea_sentence的源码进行修改,修改成适用GPFPD信息格式的节点.节点包名为bds_driver.程序链接[link:https://download.csdn.net/download/weixin_41857013/12742693]
3.2 imu使用的是razor-imu-9dof.可以参考[link:https://www.ncnynl.com/archives/201904/2951.html].通过运行
roslaunch razor_imu_m0_driver driver_node.launch
启动节点解析IMU数据,并发布/imu/data话题.
3.3 从新编写imu_gps_localization的launch文件启动以上节点.
注:本博客供学习记录使用,转载请声明,如有错误,欢迎指正.