GNSS在ROS中数据获取与解析
主要参考文章:
1、https://blog.csdn.net/weixin_45729043/article/details/107725774
2、https://blog.csdn.net/m0_37857300/article/details/82391023
3、https://blog.csdn.net/p942005405/article/details/123002038
nmea_navsat_driver提供四个节点:
nmea_topic_driver,
nmea_serial_driver,
nmea_topic_serial_reader
nmea_socket_driver
1、nmea_topic_serial_reader节点
此节点从串口读入GPS数据,然后封装为nmea_msgs/Sentence数据格式,发布话题nmea_sentence。
rosrun nmea_navsat_driver nmea_topic_serial_reader _port:=/dev/ttyUSB0 _baud:=9600
rostopic echo /nmea_sentence
可查看GNSS数据有哪些
rostopic info /nmea_sentence
查看话题的消息类型
rosmsg show ***
显示消息的数据类型
2、nmea_topic_driver节点
此节点订阅话题nmea_sentence,然后根据NMEA0184协议解析,并发布解析后的数据,发布话题为:经纬度/fix,速度/vel,gps时间/time_reference和航向角/heading。
rostopic echo /vel
可查看话题的内容
3、nmea_serial_driver节点
此节点从串口读数据,直接解析发布数据,相当于nmea_topic_driver节点和nmea_topic_serial_reader节点的结合体。
roscd nmea_navsat_driver/launch/
sudo vim nmea_serial_driver.launch
roslaunch nmea_navsat_driver nmea_serial_driver.launch
github源码:https://github.com/ros-drivers/nmea_navsat_driver