如何解析Makerfab SIM808模块的GPS原始数据?
Makerfab SIM808 GPS原始数据字段解析与DFRobot库适配性说明
一、GPS原始数据字段逐个拆解
你提供的原始数据是:
GPS raw data: 1,1,20180518182755.000,43.479312,-80.524750,337.700,0.06,203.8,1,,1.6,4.9,4.6,,8,7,,,43,,
把逗号分隔的字段按顺序解释(忽略开头的GPS raw data:):
1:定位有效性标识,1代表当前是有效定位,0则表示未获取到有效定位结果1:定位模式标识,通常1表示纯GPS定位,若为2可能是GPS+GLONASS混合定位(不同厂商定义略有差异,但核心是区分定位类型)20180518182755.000:UTC标准时间,格式为YYYYMMDDHHMMSS.SSS,对应2018年5月18日18时27分55秒,精确到毫秒43.479312:纬度值,单位为度,正数代表北纬-80.524750:经度值,单位为度,负数代表西经337.700:海拔高度,单位为米0.06:地面移动速度,单位大概率是米/秒(你这个数值接近静止状态,符合逻辑)203.8:航向角,以正北为0度,顺时针计算的地面行驶方向,单位为度1:定位质量等级,1代表标准单点定位,2则表示差分GPS(DGPS)定位- 空字段:预留的差分参考站ID,未使用时为空
1.6:水平精度因子(HDOP),数值越小,水平定位精度越高(一般HDOP<2就属于不错的精度)4.9:垂直精度因子(VDOP),同理,数值越小垂直精度越高4.6:位置精度因子(PDOP),是HDOP和VDOP的综合指标,反映整体定位精度- 空字段:厂商预留的扩展字段,未启用
8:参与当前定位计算的GPS卫星数量7:参与当前定位计算的GLONASS卫星数量- 空字段:预留的其他卫星系统(如北斗、伽利略)参与数量,未启用
- 空字段:厂商预留字段
43:大概率是卫星信号的平均信噪比(单位dB),数值越高信号越好- 空字段:预留字段
- 空字段:预留字段
二、DFRobot SIM808库的适配性
完全适用!原因很简单:
不管是Makerfab还是DFRobot的SIM808模块,核心都是SIMCOM官方的SIM808芯片,指令集和通信协议是完全通用的。这个库封装了SIM808常用的功能,包括GPS数据读取、GPRS通信、短信发送等,你只需要注意两点:
- 硬件接线要和库中默认的串口引脚匹配,或者根据自己的开发板修改库中的引脚定义
- 确认模块的供电电压符合要求(SIM808需要3.7V左右的电源,电流峰值可能到2A,供电不稳会导致定位失败)
内容的提问来源于stack exchange,提问作者Karim




