1、定位技术概述:室内定位与室外定位的区别、常见定位技术(WiFi、蓝牙、UWB、GPS/北斗)的原理与特点
各位同学好,我是老张。今天咱们聊聊定位技术的基础概念。说实话,我刚入行那会儿,觉得定位不就是打开手机地图嘛,能有多复杂?后来真正做项目才发现,这里面的门道深着呢。
你想想看,为什么你在商场里导航经常飘来飘去?为什么在室外用GPS定位那么准,一进室内就抓瞎?这些问题的答案,就藏在我们今天要讲的内容里。
1.1 室内定位 vs 室外定位:本质区别在哪?
先说个最直观的区别。室外定位,说白了就是「天上看」。GPS卫星在天上飞,信号从太空传下来,只要头顶没遮挡,定位精度能到米级。但室内呢?卫星信号被楼板、墙壁一挡,基本就废了。
我做过一个项目,在写字楼里测试GPS定位,结果误差直接飙到50米开外。嗯,这其实很正常——卫星信号穿不过钢筋混凝土。
所以室内定位的思路完全不同。它靠的是「地上找」——利用WiFi、蓝牙、UWB这些地面信号源。两者的核心差异我列个表:
| 对比维度 | 室外定位(GPS/北斗) | 室内定位(WiFi/蓝牙/UWB) |
|---|---|---|
| 信号来源 | 卫星(太空) | 地面基站/信标 |
| 典型精度 | 3-15米(民用) | 0.1-10米(视技术而定) |
| 覆盖范围 | 全球 | 局部(几十米到几百米) |
| 信号穿透力 | 差(无法穿透建筑) | 中等(可穿墙但会衰减) |
| 典型应用 | 导航、物流、测绘 | 商场导航、工厂人员定位 |
核心要点:室外定位靠「天」,室内定位靠「地」。两者不是替代关系,而是互补关系。很多实际系统都是室内外无缝切换的。
1.2 常见定位技术:原理与特点
下面我逐个讲讲主流定位技术。每种技术我都踩过坑,所以会多说一些实战经验。
1.2.1 GPS/北斗:室外定位的王者
GPS和北斗的原理其实差不多——卫星不断广播自己的位置和时间戳,接收机收到至少4颗卫星的信号,就能算出自己的三维坐标。说白了就是「三边测量法」的升级版。
我记得刚做定位算法时,以为GPS精度很高。后来发现,民用GPS受电离层延迟、多径效应影响,误差经常在5-10米。北斗的优势在于亚太地区有更多卫星,信号稳定性更好。
避坑指南:我曾经在隧道里测试GPS,结果定位直接跳到几百米外。后来学乖了——GPS必须配合惯性导航(IMU)才能应对信号遮挡场景。
1.2.2 WiFi定位:成本低但精度有限
WiFi定位有两种主流方式:
- 指纹定位法:先采集每个位置的信号强度(RSSI)指纹,建个数据库。定位时把当前RSSI和数据库匹配,找到最像的位置。
- 三角定位法:根据多个AP的信号强度,估算距离,然后画圆求交点。
说实话,WiFi定位的精度一般就在3-10米。为什么?因为RSSI受环境影响太大了——人一多、门一关,信号就变。我在商场做过测试,同一个位置上午和下午的RSSI能差5dBm。
1.2.3 蓝牙定位:低功耗但覆盖小
蓝牙定位和WiFi类似,也是用RSSI。但蓝牙有个杀手锏——低功耗。一个纽扣电池能跑一年。
蓝牙定位的典型方案是「信标(Beacon)部署」。在走廊、店铺里放一堆蓝牙信标,手机扫描到信号后估算距离。精度嘛,大概2-5米。
我建议你注意一点:蓝牙信号衰减很快,3米外RSSI就掉得厉害。所以蓝牙适合做「区域级定位」——判断你在哪个房间、哪个柜台,而不是精确到厘米。
1.2.4 UWB定位:精度之王
UWB(超宽带)是室内定位的「天花板」。它用纳秒级的脉冲信号,通过测量飞行时间(TOF)来算距离。精度能到10-30厘米。
为什么UWB这么准?因为它测的是时间,不是信号强度。时间受环境影响小,不像RSSI那样飘忽不定。
注意:UWB虽然精度高,但成本也高。一个基站要几百块,部署密度要求也高。我做过一个工厂项目,2000平米用了8个基站,光硬件成本就上万。所以UWB适合对精度要求极高的场景,比如AGV导航、手术室定位。
1.3 知识体系总览
为了让你更直观地理解这些技术的关系,我画了一张图:
这张图把定位技术分成了室外和室内两大阵营。室外靠卫星,室内靠地面信号。每种技术都有自己的「舒适区」——GPS适合开阔地,UWB适合高精度室内场景,WiFi和蓝牙则主打低成本覆盖。
1.4 如何选择定位技术?
很多同学会问:这么多技术,我该选哪个?我的建议是看三个维度:
- 精度要求:米级用WiFi/蓝牙,厘米级用UWB,室外用GPS
- 成本预算:蓝牙最便宜,UWB最贵,WiFi居中
- 环境复杂度:空旷环境随便选,复杂室内优先考虑UWB
我的经验:别追求「万能方案」。我见过有人非要用UWB做室外定位,结果成本翻倍效果还没GPS好。合适的才是最好的。
好了,这一章就讲到这里。定位技术的基础概念你心里应该有数了。下一章我们会深入讲定位算法的核心——如何把信号变成坐标。到时候我会带你看具体的数学公式和代码实现。