1、GPS技术基础:GPS系统原理、定位精度影响因素、共享单车对GPS的特殊需求

1.1 GPS系统是怎么工作的?

说实话,很多人觉得GPS很神秘。其实原理没那么复杂。

GPS系统说白了就是三件事:卫星发信号、地面收信号、算出你在哪

目前天上飞着31颗GPS卫星(我记得2023年数据是31颗,偶尔会多一颗少一颗)。它们分布在6个轨道面上,高度大约20200公里。每颗卫星都在不停地广播自己的位置和时间戳。

地面上的GPS接收机收到至少4颗卫星的信号后,就能解算出三维坐标(经度、纬度、海拔)和时间。为什么是4颗?因为接收机时钟不准,需要第4颗卫星来消除钟差。这个知识点我在做车载定位项目时踩过坑,后面会细说。

定位的核心公式其实就一个:

距离 = 光速 × (接收时间 - 发射时间)

嗯,就是这么简单。但实际工程中,这个「接收时间」的测量误差,就是所有问题的根源。

1.2 定位精度到底受哪些因素影响?

我经常被问到:「为什么手机GPS能到3米,共享单车却经常飘到马路对面?」

这里我列个表,大家一看就明白:

影响因素 典型误差量 说明
电离层延迟 2-5米 信号穿过电离层时速度变化
对流层延迟 0.5-1米 大气水汽影响
卫星钟差 1-2米 卫星时钟漂移
轨道误差 0.5-1米 卫星位置预测偏差
多径效应 5-50米 信号反射,城市峡谷最严重
接收机噪声 0.5-1米 硬件底噪

你看,多径效应是最大的杀手。我在上海做共享单车项目时,测试过一栋玻璃幕墙大楼旁边的定位数据,误差直接飙到80米。你想想看,用户明明在A点还车,系统却显示在B点,这投诉能少吗?

核心结论:城市环境下的GPS定位,90%的精度问题都出在多径效应上。选模组时,抗多径能力是第一指标。

1.3 共享单车对GPS的特殊需求

做共享单车GPS选型,跟做车载导航完全是两码事。我总结了几点特殊需求:

1.3.1 功耗是第一优先级

共享单车没有车载电源。一块电池要用3-6个月。GPS模组如果一直开着,电池撑不过一周。

所以必须支持低功耗模式

  • 静态时进入休眠,每隔几分钟唤醒一次
  • 运动时自动切换到连续定位模式
  • 定位成功后立即上报,然后快速休眠

我个人习惯选那些支持1Hz定位、待机电流低于10μA的模组。比如u-blox的M9系列,待机功耗能做到5μA以下,很香。

1.3.2 冷启动速度要快

共享单车经常被停在地下车库、楼道里。用户扫码开锁后,如果等30秒才定位成功,体验极差。

我建议关注两个指标:

  • TTFF(首次定位时间):冷启动最好在30秒以内
  • 灵敏度:跟踪灵敏度要低于-162dBm,捕获灵敏度低于-148dBm

避坑指南:我曾经选过一款标称-165dBm的模组,实际测试在弱信号下根本锁不住星。后来发现是厂商在实验室测的,没考虑天线损耗。所以一定要看实测数据,别只看datasheet。

1.3.3 城市峡谷环境适应性

共享单车主要跑在城市里。高楼、天桥、树荫、隧道……这些场景对GPS都是考验。

我推荐选支持多星座的模组:

  • GPS + GLONASS(俄罗斯)
  • GPS + BDS(北斗)
  • 最好支持 GPS + BDS + Galileo 三系统

多星座的好处是:卫星数量翻倍,在城市峡谷里也能保持4颗以上可见星。我在深圳华强北测试过,单GPS只能看到3颗星,定位失败;打开北斗后,瞬间搜到7颗,定位成功。

1.3.4 低成本、小尺寸

共享单车是重资产模式。一辆车成本压到几百块,GPS模组预算通常不超过20元。尺寸也要小,最好在10mm×10mm以内,方便嵌入到车锁主板中。

目前市面上主流的方案:

模组型号 尺寸 功耗 参考价格
u-blox M9 12×16mm 25mA(连续) ~35元
中科微 AT6558 10×10mm 20mA(连续) ~12元
博通 BCM4775 8×8mm 18mA(连续) ~18元

我个人比较推荐中科微的AT6558,性价比极高。但要注意它的抗干扰能力偏弱,天线设计要格外用心。

1.4 小结

这一章我们聊了GPS的基本原理、精度影响因素,以及共享单车场景下的特殊需求。说白了,选GPS模组就是一场功耗、成本、性能的三角博弈。

下一章我会详细讲GPS模组选型的核心参数,包括灵敏度、TTFF、定位精度、接口协议等,手把手教你读懂datasheet里的坑。

重要提醒:不要只看厂商给的「典型值」。一定要拿实际板子去你部署的城市做路测。我在北京、上海、深圳三个城市测同一款模组,结果差异超过30%。环境不同,表现天差地别。