本文咱们就说说和物联网关系密切的卫星定位那些事儿。
| 定位方式 | 定位原理 | 定位方案 | 应用场景 | 成本 | 设备要求 | 精度 |
| 基站定位 | 上报设备周边基站信息,服务器查表、解析并返回定位结果 | 单基站定位 多基站定位 | 室外 | 极低 | 设备成本低 需后端支持* | 500m |
| 卫星定位 | 使用天线搜索卫星向地表发射的电波,解算后输出定位结果 | 多星定位 | 室外 | 较低 | 设备成本低 | 5m |
| 差分定位 | 卫星+结合基准站的数据进行定位 | 多星定位 | 室外 | 很高 | 设备成本高 需专有后端支持* | 5mm |
| BLE iBeacon | 使用设备接收蓝牙信号,根据信号强弱计算距离,输出定位结果 | 单点定位 多点定位 | 室内 | 较高 | 设备成本较高 | 30cm |
| RFID | 使用设备接收射频信号,根据信号强弱计算距离,输出定位结果 | 单点定位 多点定位 | 室内 | 很高 | 设备成本较高 | 10cm |
| Wi-Fi | 上报设备周边路由器MAC信息,服务器查表、解析并返回定位结果 | 单机定位 多机定位 | 室内 | 较低 | 设备成本低 需后端支持* | 10m |
| IP 定位 | 上报目标设备公网IP地址,服务器查表并返回定位结果 | - | 不限 | 极低 | 设备成本低 需后端支持* | 10km |
| 佛系 | 手持佛珠 念念有词 | - | 不限 | 0成本 | 无需设备 | 随缘 |
| 导航系统 | 国家 | 频段 | 工作频率 | |
| GPS | 美国 | L1 | 1575.42MHZ ±1.023MHZ | |
| L2 | 1227.60MHZ ±1.023MHZ | |||
| L5 | 1176.45MHZ ±1.023MHZ | |||
| GLONASS | 俄罗斯 | L1 | 1602.5625MHZ ±4MHZ | |
| L2 | 1246.4375MHZ ±4MHZ | |||
| BD1 | 中国 | S | 2491.75MHZ ±4.08MHZ | |
| L | 1615.68MHZ ±4.08MHZ (左旋圆极化) | |||
| BD2 | B1 | 1561.098MHZ ±2.046MHZ | ||
| B2 | 1207.520MHZ ±2.046MHZ | |||
| B3 | 1268.520MHZ ±10.23MHZ | |||
| Galileo | 欧洲 | L1 | 1575.420MHZ ±1.023MHZ | |
| E5b | 1207.140MHZ ±1.023MHZ | |||
| E5a | 1176.450MHZ ±1.023MHZ | |||
| E6 | 1278.750MHz ±1.023MHZ | |||
| QZSS | 日本 | L1C | L1CD | 1575.42 MHz |
| L1CP | ||||
| L1-C/A | ||||
| L2C | 1227.6 MHz | |||
| L5 | L5I | 1176.45 MHz | ||
| L5Q | ||||
| L1-SAIF | 1575.42 MHz | |||
| LEX | 1278.75 MHz | |||
| IRNSS | 印度 | L5 | 1176.45 MHz | |
| S | 2492.028 MHz |
| 使用卫星数 | 能否定位 | 备注 |
| 0 | 无法定位 | |
| 1 | 无法定位 | 可以更新UTC时间和日期; |
| 2 | 无法定位 | |
| 3 | 可实现2D Fix,输出经纬度 | 不可输出海拔信息 |
| 4 | 可实现3D Fix | 可输出正确海拔信息 |
| >4(多频) | 可实现3D Fix | 可输出伪距 |
| 名称 | 样例 | 单位 | 描述 |
| 消息ID | $GPGGA | GGA 协议头 | |
| UTC 时间 | 065545.789 | hhmmss.sss | |
| 纬度 | 2109.9551 | ddmm.mmmm | |
| N/S | N | N=北,S=南 | |
| 经度 | 12023.4047 | dddmm.mmmm | |
| E/W | E | W=西,E=东 | |
| 定位指示 | 1 | 0:未定位 1:SPS 模式,定位有效 2:差分,SPS 模式,定位有效 3:PPS 模式,定位有效 | |
| 卫星数目 | 9 | 范围 0 到 12 | |
| HDOP | 0.85 | 水平精度 | |
| MSL 幅度 | 18.1 | 米 | |
| 单位 | M | 米 | |
| 大地 | -2.2 | 米 | |
| 单位 | M | - | |
| 差分时间 | 秒 | 当没有 DGPS 时,无效 | |
| 差分站ID | |||
| 校验和 | *5E | ||
| 消息结束 |
| 名称 | 样例 | 单位 | 描述 |
| 消息ID | $GPRMC | RMC 协议头 | |
| UTC 时间 | 100646.000 | hhmmss.sss | |
| 状态 | A | A=数据有效;V=数据无效 | |
| 纬度 | 2109.9704 | ddmm.mmmm | |
| N/S | N | N=北,S=南 | |
| 经度 | 11123.4219 | dddmm.mmmm | |
| E/W | E | W=西,E=东 | |
| 地面速度 | 0.257 | Knot(节) | |
| 方位 | 335.62 | 度 | |
| 日期 | 291216 | ddmmyy | |
| 磁变量 | - | ||
| 校验和 | *59 | ||
| 消息结束 |
| 名称 | 样例 | 单位 | 描述 |
| 消息ID | $GPGSA | GSA 协议头 | |
| 模式 1 | A | M=手动(强制在2D或3D模式) A=自动 | |
| 模式 2 | 3 | 1:定位无效 2:2D 定位 3:3D 定位 | |
| 卫星使用 | 10 | 通道1 | |
| 卫星使用 | 24 | 通道2 | |
| 卫星使用 | 12 | 通道3 | |
| 卫星使用 | 32 | 通道4 | |
| 卫星使用 | 25 | 通道5 | |
| 卫星使用 | 21 | 通道6 | |
| 卫星使用 | 15 | 通道7 | |
| 卫星使用 | 20 | 通道8 | |
| ,,, | ,,, | ,,, | |
| 卫星使用 | 通道12 | ||
| PDOP | 1.25 | 位置精度 | |
| HDOP | 0.85 | 水平精度 | |
| VDOP | 0.91 | 垂直精度 | |
| 校验和 | *04 | ||
| 消息结束 |
| 标识符 | 含 义 |
| BD | BDS,北斗二代卫星系统 |
| GP | GPS |
| GL | GLONASS |
| GA | Galileo |
| GN | GNSS,全球导航卫星系统 |
| 标识符 | 含 义 |
| GGA | 时间、位置、卫星数量、定位方式 |
| GSA | GPS 接收机操作模式,定位使用的卫星,DOP值,定位状态 |
| GSV | 可见GPS卫星信息、仰角、方位角、信噪比 |
| RMC | 时间、日期、位置、速度 |
| VTG | 地面速度信息 |
| 启动方式 | 解释 | 自主秒定位* | 辅助秒定位* |
| 冷启动 | 1、初次使用时; 2、电池耗尽导致星历信息丢失时; 3、关机状态下,移动1000公里以上距离时。 | × | √ |
| 温启动 | 距离上次定位时间超过2个小时,不足4个小时; 没有较大距离的位移发生。 | √ | √ |
| 热启动 | 距离上次定位时间不足2个小时; 没有较大距离的位移发生。 | √ | √ |
| 名称 | 样例 | 单位 | 描述 |
| 消息ID | $GPGSV | GSV 协议头 | |
| 消息数目 | 3 | 1~3 | |
| 消息编号 | 1 | 1~3 | |
| 卫星数目 | 12 | ||
| 卫星ID | 14 | 1~32 | |
| 仰角 | 75 | 度 | 0~90 |
| 方位角 | 001 | 度 | 0~359 |
| 载噪比(C/No) | 31 | dBHz | 0~99(无跟踪时为空) |
| 卫星ID | 32 | 1~32 | |
| 仰角 | 67 | 度 | 0~90 |
| 方位角 | 111 | 度 | 0~359 |
| 载噪比(C/No) | 38 | dBHz | 0~99(无跟踪时为空) |
| 卫星ID | 31 | 1~32 | |
| 仰角 | 57 | 度 | 0~90 |
| 方位角 | 331 | 度 | 0~359 |
| 载噪比(C/No) | 33 | dBHz | 0~99(无跟踪时为空) |
| 卫星ID | 26 | 1~32 | |
| 仰角 | 47 | 度 | 0~90 |
| 方位角 | 221 | 度 | 0~359 |
| 载噪比(C/No) | 20 | dBHz | 0~99(无跟踪时为空) |
| 校验和 | *73 | ||
| 消息结束 |
| 名称 | 样例 | 单位 | 描述 |
| 消息ID | $GPGGA | GGA 协议头 | |
| UTC 时间 | 065545.789 | hhmmss.sss | |
| 纬度 | 2109.9551 | ddmm.mmmm | |
| N/S | N | N=北,S=南 | |
| 经度 | 12023.4047 | dddmm.mmmm | |
| E/W | E | W=西,E=东 | |
| (省略部分GGA) |
| 坐标系 | 地图 |
| WGS-84 | Google Map Bing Map Here Map etc. |
| CGJ-02 | 高德地图 腾讯地图 谷歌地图(中国) 等 |
| BD-09 | 百度地图 |
| 其他 | 搜狗地图 |
| 误差来源 | 误差项 | 误差原因 | 定位误差影响 |
| 卫星 | 卫星星历误差 | 星历中,卫星空间位置与卫星实际位置间的偏差 | - |
| 卫星钟差 | 指GPS卫星时钟与GPS标准时间的差别 | 偏差和漂移和漂移总量仍在1ms~0.1ms以内,由此引起的等效误差将达到300km~30km | |
| SA干扰误差 | SA误差是美国军方为了限制非特许用户利用GPS进行高精度点定位而采用的降低系统精度的政策 | - | |
| 相对论效应的影响 | 由于卫星钟和接收机所处的状态(运动速度和重力位) 不同引起的卫星钟和接收机钟之间的相对误差 | 20~30km | |
| 传播路径 | 电离层折射 | 当GPS信号通过电离层时,与其他电磁波一样,信号的路径要发生弯曲,传播速度也会发生变化,从而使测量的距离发生偏差 | - |
| 对流层折射 | GPS信号通过对流层时,也使传播的路径发生弯曲,从而使测量距离产生偏差 | - | |
| 多路径效应 | 测站周围的反射物所反射的卫星信号(反射波)进入接收机天线,将和直接来自卫星的信号(直接波) 产生干涉,从而使观测值偏离 | ||
| 接收机 | 接收机钟差 | GPS 接收机一般采用高精度的晶振。接收机的钟面时与GPS标准时之间的差异称为接收机钟差 | |
| 接收机的位置误差 | 接收机天线相位中心相对测站标石中心位置的误差 | ||
| 接收机天线相位中心偏差 | 观测时,天线的相位中心随着信号输入的强度和方向不同而有所变化,这种差别叫天线相位中心的位置偏差 | ||
| 计算误差 | 由于算法、硬件不稳定、辐射或热电效应等造成的计算错误 |
| 开发方式 | 支持架构 | 账号认证 | 上传语句 | 挂载点 | 返回数据格式 | |
| SDK | Android iOS Windows STM32 | 自动 | GGA | - | RTCM | |
| NTRIP | 不限 | Base64编码传输 | GGA | RTD | RTCM32_GGB | RTCM3.2 |
| RTCM23_GPS | RTCM2.3 | |||||
| RTK | RTCM32_GGB | RTCM3.2 | ||||
| RTCM30_GG |
| 名称 | 样例 | 单位 | 描述 |
| 消息ID | $GPGGA | GGA 协议头 | |
| UTC 时间 | 065545.789 | hhmmss.sss | |
| 纬度 | 2109.9551 | ddmm.mmmm | |
| N/S | N | N=北,S=南 | |
| 经度 | 12023.4047 | dddmm.mmmm | |
| E/W | E | W=西,E=东 | |
| 定位指示 | 1 | 0=未定位 1=GPS单点定位固定解 2=RTD差分定位 3=PPS模式 4=RTK固定解 (定位精度达厘米级) 5=RTK浮点解 6=惯导 7=手工输入模式 8=模拟模式 | |
| 卫星数目 | 9 | 范围 0 到 12 | |
| HDOP | 0.85 | 水平精度 | |
| MSL 幅度 | 18.1 | 米 | |
| 单位 | M | 米 | |
| 大地 | 8.0 | 米 | |
| 单位 | M | - | |
| 差分时间 | 1 | 秒 | (从接收到差分信号开始的秒数,如果不是差分定位将为空) |
| 差分站ID | 0999 | 差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空) | |
| 校验和 | *5E | ||
| 消息结束 |
| 方式 | 实现方式 | 有效时间 | 优点 | 秒定位的限制 | 缺点 |
| 星历下载 | 通过2G网络将星历文件下载到GPS芯片 | 4小时 | 可以实现秒定位 | 无限制 | 需要消耗网络流量 |
| 星历预测 | 长时间有效运行(3D Fix)后,GPS芯片自动生成 | 2~3天 | 可以实现较快速度定位 | 较小位移情况下 | 限制条件较多 |
| 模式 | 解释 | 唤醒方式 |
| 低功耗模式 | CPU睡眠 | 通过串口唤醒 |
| 超低功耗模式 | CPU掉电,只有RTC工作 | 需要force on唤醒 |
| 低功耗追踪模式 | CPU睡眠,可以通过串口唤醒或者周期性自动唤醒进行定位输出。可以给出运行轨迹 | |
| 超低功耗追踪模式 | CPU掉电,只有RTC工作,需要force on唤醒或者周期性自动唤醒进行定位输出。可以给出运行轨迹 |
举报
更多回帖