2.3.2 电子海图系统解析及开发 功能开发 - 接入GPS数据

2.3.2 电子海图系统解析及开发 功能开发 - 接入GPS数据,第1张

电子海图(ENC)中规定的坐标系为WGS-84,该坐标系就是GPS所采用的坐标系,因此电子海图系统必须要接入GPS数据。其实,卫星定位系统中,除了GPS,还有中国的北斗、俄罗斯的GLONASS和欧盟的Galileo,这些定位接收器的数据都可以通过NMEA0813传输。

GPS报文格式有很多种,具体可参见 >

GPS接收到的数据格式及含义 如果此时GPS和卫星的通讯正常的话,可以接收到的数据格式样如下:

$GPRMC,204700,A,3403868,N,11709432,W,0019,3369,170698,0136,E6E

数据说明如下:

$GPRMC 代表GPS推荐的最短数据

204700 UTC_TIME 24小时制的标准时间,按照小时/分钟/秒的格式

A A 或者 V A表示数据"OK",V表示一个警告

3403868 LAT 纬度值,精确到小数点前4位,后3位

N LAT_DIR N表示北纬,S表示南纬

11709432 LON 经度值,精确到小数点前5位,后3位

W LON_DIR W表示西经,E表示东经

若当前没有和卫星取得联系,那么字符串的格式为: $GPRMC,UTC_TIME,V,

扩展资料

没有解析出正确的字段,我们很容易定位是sscanf那条语句出了问题,由于我之前没用过这个函数,为此我上网查了好久这个函数的用法,后来把思路转向对比作者的GPRMC语句和我收到的GNRMC语句,除了开头不同,其他地方的差异,

$GPRMC,131913000,A,302964972,N,1142362352,E,000,000,200617,,,A67

$GNRMC,08595900,A,400073433,N,1162803429,E,0461,,280220,691,W,D29

发现有以下几处的不同,

1) 字段1:UTC时间这里,他的小数点后面是3个0,但我的是2个0

2) 字段8:方位角这里,他的值是000,我的是空白

3) 字段11和12,磁偏角及磁偏角方向,他的是空白,我的有值

正是这3处不同,导致的上述解析不正确。原作者完全是按照他的GPS数据格式来写的代码,只要有任何一处不同,就会出现解析错误。

如果GPS无法定位受诸多因素制约,最主要的因素是信号和运动状态。在卫星信号不良的地方(例如:室内、隧道以及高楼大厦林立的城市街区等),或者处于运动状态下GPS往往很难定位。建议您:

1检查GPS功能是否开启。

2通过网络定位尝试(可能会产生流量费用):下滑屏幕顶帘-长按GPS图标-进入定位服务设置界面-定位方法-选择“GPS、WLAN和移动网络”或“WLAN和移动网络”(不同型号手机 *** 作方法可能略有不同)。

3若无效,将手机关机重启重新搜星定位。

4若依然无法定位,建议更换其他位置或换个时间段尝试。

5更新使用的软件版本。如使用导航软件无法定位,更新导航软件至最新版本或使用其他导航软件尝试。

若上述方式 *** 作后依然无法GPS定位,建议您携带购机发票、包修卡和机器送到三星服务中心检查。

以上就是关于2.3.2 电子海图系统解析及开发 功能开发 - 接入GPS数据全部的内容,包括:2.3.2 电子海图系统解析及开发 功能开发 - 接入GPS数据、电力系统对站内GPS对时的要求是什么GPS对时接口方式分类有哪些、GPS接收的数据都代表什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9721070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存