定位技术基础:四种主流室内外定位原理

大家好,我是这门课的主讲工程师。今天我们来聊聊定位技术的基础。说实话,做导航系统这么多年,我最大的体会就是——定位是导航的「眼睛」。眼睛不好使,路线规划得再漂亮也没用。

这一章,我会把四种最常用的定位技术掰开揉碎了讲。分别是:GPS/北斗卫星定位、Wi-Fi指纹定位、蓝牙Beacon定位、地磁定位。每种技术都有它的脾气,咱们一个个来看。

定位技术体系 卫星定位 GPS / 北斗 室外 精度5-15m Wi-Fi指纹 RSSI 指纹库 室内 精度3-10m 蓝牙Beacon iBeacon / Eddystone 室内 精度1-5m 地磁定位 磁场指纹匹配 室内 精度1-3m 四种定位技术对比 技术 适用场景 精度 成本 卫星定位 室外开阔地带 5-15m 低(免费) Wi-Fi指纹 商场/办公楼 3-10m 中(需建库) 蓝牙Beacon 展馆/医院 1-5m 中(需部署) 地磁定位 地下车库/地铁 1-3m 低(无硬件)

一、GPS/北斗卫星定位原理

卫星定位,说白了就是「天上看地」。卫星不停地发信号,说「我在哪,现在几点」。你的手机收到信号,一算时间差,就知道自己离卫星多远。四颗卫星一交叉,位置就出来了。

GPS是美国搞的,北斗是我们中国的。我个人习惯在项目里优先用北斗,因为在国内北斗的信号质量其实更好,尤其在城市峡谷地带。嗯,这里要注意——卫星定位最怕遮挡。我在一个地下车库项目里吃过亏,GPS死活定不到位,后来才意识到,卫星信号连天花板都穿不透。

核心公式(伪距定位):

ρ = c × Δt

其中 ρ 是卫星到接收机的距离,c 是光速,Δt 是信号传播时间差。

解算至少需要4颗卫星的方程,得到 (x, y, z, t) 四个未知数。

我的经验:在城市里做室外导航,别太依赖卫星定位。高楼反射信号会造成多径效应,误差能到50米。我一般会结合基站辅助定位(AGPS),先把大概位置定下来,再让卫星精确定位。

二、Wi-Fi指纹定位

Wi-Fi指纹定位,你想想看,其实就是「蹭网定位」。每个Wi-Fi热点都有个唯一的MAC地址,信号强度(RSSI)会随着距离变化。你在不同位置收到的Wi-Fi信号组合,就像指纹一样独一无二。

具体怎么做呢?分两步:

  1. 离线建库阶段:拿着设备在场地里走一圈,每个点记录下周围所有Wi-Fi的MAC和信号强度。这叫「指纹采集」。
  2. 在线定位阶段:手机实时扫描周围的Wi-Fi,把信号强度和指纹库一比对,找到最匹配的位置。

我曾经在一个大型商场做过Wi-Fi指纹项目。刚开始觉得很简单,结果发现——Wi-Fi信号太不稳定了!人一多、门一关,信号强度就变。后来我用了「加权K近邻算法」,把最近几个指纹点的位置加权平均,精度才稳定在5米左右。

避坑指南:Wi-Fi指纹库需要定期更新。商场装修、路由器更换,都会导致指纹失效。我见过一个项目,指纹库建了两年没更新,定位精度从3米掉到了20米。定期维护是必须的。

三、蓝牙Beacon定位

蓝牙Beacon,说白了就是「小广播」。一个纽扣电池大小的设备,每隔几百毫秒发一次广播包。手机收到广播,根据信号强度估算距离。

Beacon定位有两种主流方式:

  • 邻近检测:判断手机是否在某个Beacon附近。常用于签到、推送通知。
  • 三角定位:用三个以上Beacon的信号强度,通过三边测量法算出位置。

我记得有一次在博物馆做导览项目,用了蓝牙Beacon。部署了200多个Beacon,每个展品旁边放一个。游客走到展品前,手机自动弹出讲解。效果很好,但有个坑——Beacon的电池寿命只有一年左右。后期维护换电池,工作量不小。

信号衰减模型(简化版):

d = 10 ^ ((RSSI - A) / (10 * n))

其中:
d = 距离(米)
RSSI = 接收信号强度(dBm)
A = 1米处的参考RSSI(通常-59dBm)
n = 环境衰减因子(通常2-4)

我的建议:Beacon部署密度很重要。我一般推荐每10-15米一个,太密了成本高,太疏了精度差。另外,Beacon的广播频率建议设为200-300ms,太频繁耗电,太稀疏定位延迟大。

四、地磁定位

地磁定位,这个技术比较「玄学」,但效果出奇的好。地球本身就有磁场,而建筑物里的钢筋、混凝土会扭曲磁场。每个位置的磁场特征,就像指纹一样独特。

你可能会问:「磁场不是到处都一样吗?」其实不是。我测过,在一栋楼里不同房间的磁场强度,差异能达到10-20微特斯拉。这个差异足够用来定位了。

地磁定位的流程和Wi-Fi指纹类似:

  1. 拿着手机在场地里采集磁场数据(X、Y、Z三轴分量)
  2. 建立地磁指纹库
  3. 实时匹配定位

我曾经在一个地下车库做过地磁定位项目。地下车库没有GPS信号,Wi-Fi也少,但地磁信号非常稳定。最后精度做到了1.5米,比蓝牙Beacon还好。而且不需要部署任何硬件,成本几乎为零。

注意:地磁定位对手机传感器质量敏感。不同手机的磁力计校准情况不同,会导致定位偏差。我建议在算法里加入「传感器校准补偿」,或者用多部手机做交叉验证。

四种定位技术的对比总结

技术 适用场景 典型精度 部署成本 维护成本
GPS/北斗 室外开阔地带 5-15m 免费
Wi-Fi指纹 商场、办公楼 3-10m 中(需建库) 高(需更新)
蓝牙Beacon 展馆、医院 1-5m 中(需部署) 中(换电池)
地磁定位 地下车库、地铁 1-3m

说实话,没有哪种定位技术是万能的。我做室内外无缝切换导航时,通常会把卫星定位和室内定位技术结合起来。室外用GPS/北斗,到了室内入口自动切换到Wi-Fi或地磁。切换的时机很关键——我一般会在信号强度低于某个阈值时触发切换,而不是等信号完全丢失。

嗯,这一章的内容就到这里。四种定位技术各有千秋,关键是根据场景选对技术。下一章我们会讲如何把这些技术融合成一个完整的导航系统,到时候再细聊。


专注资料整理