定位

罗列一些LBS、GNSS、WiFi的定位方法,以及对应的三种模块的数据解析

定位方法:

LBS:

  • COO、Cell——ID定位(单基站)

  • 七号信令定位(单基站)

  • AOA(到达角度)定位(两基站)

  • TOA(到达时间)/TDOA(到达时间差)定位(三基站)

  • 基于场强的定位(三基站)

  • AGPS混合定位

GNSS:

  • GPS

  • 北斗

  • 伽利略

  • Glonass

WiFi:

获取附近WiFi信号源的MAC地址上传到相应的定位服务器上,定位服务器搜索数据库,找到MAC地址所对应的经纬度坐标,并返回。

数据解析:

WiFi(ESP8266模块):

WifiInfo,1(wifi数量),c4…b3(mac地址),-90(wifi信号,信号最好-100),1a(校验和$…到之间所有
字符ASCII码的校验和,各字节做异或运算,得到校验和后,再转换16进制格式的ASCII字符)

GPS模块:

打开此GNSS模块就会有数据输出,应该也是封装好指令的GNSS模块。数据格式符合NMEA-0183协议,返回数据如下:

① GPGGA(GPS定位信息):重要,主要用来取水平精度衰减因子(HDOP)和高度

$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>hh

$GPGGA(GGA协议头),235949.317(定位点的UTC时间,协调世界时),(纬度),(纬度方向),(经度),(经度方向),0(GPS定位指示状态),(使用卫星数量),(水平精度衰减因子),(海平面高度),M(高度单位),(大地椭球面相对于海平面的高度),M(高度单位),(差分修订时间),(差分参考基站ID号)
4D(校验和)

②GPGLL(地理定位信息):重要


$GPGLL(GLL协议头),(纬度),(纬度方向),(经度),(经度方向),235949.317(定位点的UTC时间),V(状态 标志),N(未知)*7F(校验和)

③GPGSA(当前卫星信息):

$GPGSA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>,<15>,<16>,<17>hh

$GPGSA(GSA协议头),A,1,,,,,,,,,,,,,,,
1E

④GPGSV(可见卫星信息):

$GPGSV,<1>,<2>,<3>,<4>,<5>,<6>,<7>,…,<4>,<5>,<6>,<7>hh

$GPGSV,1,1,00
79(以上信息说明没有搜到卫星)

⑤GPRMC(最简定位信息):重要,主要取了磁偏角以上的数据

$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>hh

$GPRMC(协议头),235955.800(定位点UTC时间),V(定位状态),(纬度),(纬度方向),(经度),(经度方向),0.00(对地航速),0.00(对地航向),050180(定位点UTC日期),(磁偏角),(磁偏角方向),N(未知)
44(校验和)

⑥GPVTG(地面速度信息):

$GPVTG,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>hh

$GPVTG,0.00,T,,M,0.00,N,0.00,K,N
32