SLAM学习记录:全局定位之gps说明

本文介绍了作者在研究Cartographer定位建图时,如何利用GPS数据改善效果。重点探讨了NMEA-0183协议中的GPGGA数据格式,解释了各字段含义,并详细阐述了ROS中的gps_common功能包,特别是GPSFix和GPSStatus数据结构。作者还分享了如何在Ubuntu上解析GPGGA数据,并提供了安装gps_common包的步骤。

这段时间因为各种事情耽误了,好久没有进行更新了,惭愧!

前段时间在研究cartographer的定位建图模块,在停更的时间主要再研究如何改善定位建图的效果,也有一定的成效,但是缺乏有效的外部传感器去作为全局范围的评价标准,所以把目光放在了GPS上,利用GPS提供的经纬度信息,将其转为平面投影坐标,然后利用GPS的室外测绘信息,比较同个回环下改进前与改进后移动机器人回到原点的能力差距(通过定位距离偏差大小来进行评价)。

为了更好的了解GPS的数据格式,我们先来了解下GPS数据协议,然后了解下ROS中的gps_common功能包,了解gps常用数据格式,方便后面根据相应数据格式进行开发工作。

一、GPS数据协议

GPS数据一般采用NMEA-0183协议,该协议是由美国国家海洋电子协会为海用电子设备指定的标准格式,目前已成为GPS导航设备统一的标准协议。

$GPGGA  全球定位数据
$GPGSA  卫星PRN数据
$GPGSV  卫星状态信息
$GPRMC  运输定位数据
$GPVTG  地面速度信息
$GPGLL  大地坐标信息
$GPZDA  UTC时间和日期

因为最近在用司南RTK收集GPS数据,收集到的数据格式为GPGGA格式和GPRMC格式。因为接下来我需要在ubuntu系统上写串口驱动解析GPGGA数据格式,所以简单介绍下GPGGA的数据格式。

以实际格式为例进行说明:

$GPGGA,041126.00,3010.9782040,N,12009.2327844,E,2,10,0.5,14.7799,M,0.000,M,1.0,2573*76

看到这么一串数据时,我当时是处于一个头两个大的状态,因为不懂,所以感到心烦。但是当了解GPGGA的数据格式后,看起来就没这么麻烦。

首先是GPGGA代表类型,紧接着:

<1>041126.00

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值