Skip to content

3.4 定位技术

3.4.1 定位技术概述:室外与室内

室外定位有成熟的天基基础设施,室内定位则多是短距无线技术的竞技场。工程师面对的根本问题是:精度、成本、覆盖和功耗之间如何取舍。一台在密集货架间穿梭、需要自动对接取货口的AGV,要求分米甚至厘米级位置;而一辆在园区行驶的网联卡车,室外数米精度已足够调度中心判断它在哪个仓库附近。两个场景代表了物联网定位中反复出现的工程平衡。

室外定位:卫星全球覆盖

室外定位最成熟的技术依托全球导航卫星系统(GNSS,Global Navigation Satellite System),包括美国的GPS(全球定位系统,Global Positioning System)、中国的北斗卫星导航系统(BDS,BeiDou Navigation Satellite System),以及俄罗斯的格洛纳斯(GLONASS,Global Orbiting Navigation Satellite System)和欧洲的伽利略(Galileo Navigation Satellite System)。接收机通过捕获至少四颗卫星的定时信号,利用信号到达时间差计算三维坐标与接收机钟差。

工程实践中依据服务等级分出三种典型模式。单点定位仅依赖卫星广播信号,在无遮挡开阔环境下,民用接收机的位置估计通常处于数米量级,足以支撑车辆导航和人员位置上报。差分GNSS(DGNSS,Differential GNSS)利用地面基准站播发的修正量,可将误差降至亚米级,适用于农业精准作业。实时动态定位(RTK,Real-Time Kinematic)通过基准站将载波相位观测值实时发送给流动站,解算得到厘米级相对位置,代价是需要额外部署基准站或购买服务。

GNSS在物理遮挡环境下信号衰减明显。高楼林立的城市街谷、地下停车场、隧道和室内空间难以稳定接收卫星信号。物联网定位系统几乎都需要“室外用卫星、室内用无线电”的双模设计。

室内定位:场景决定选型

室内没有全球统一的基础设施,建筑布局、金属货架、人员流动都会干扰无线信号。工程师面对的主流方案集中在Wi-Fi、蓝牙低功耗(BLE,Bluetooth Low Energy)和超宽带(UWB,Ultra-Wideband)三种技术之间。

Wi-Fi定位的基础最为广泛:复用已有接入点,接收端扫描周围AP的信号强度,结合衰减模型或指纹法估算位置,典型精度在米到十米级之间。最大优点是零额外硬件投入;代价是货架移动、人员密度波动会导致指纹图精度明显下降。

蓝牙定位常依托BLE信标阵列。固定部署的信标以特定间隔广播数据包,接收端测量信号强度估算距离,通过多点三角测量可达到米量级。BLE信标功耗极低,纽扣电池可维持一年以上广播;单信标成本也相对较低。常用于商场楼层导航、展馆导览等对精度要求不苛刻的场景。

超宽带(UWB)是当前室内定位中精度最高的商用方案。UWB使用纳秒级极窄脉冲信号直接测量信号的飞行时间(ToF,Time of Flight)或到达时间差(TDoA,Time Difference of Arrival)。在视距条件下,UWB精度一般为 10–30cm,最佳条件可接近厘米级。代价也直接:每颗UWB基站或标签的硬件成本明显高于BLE或Wi-Fi模组,且需要独立部署基站网络。

下面这张对比表基于工程经验范围给出(作者经验范围,仅供选型参考)。实际精度会因环境、设备型号和算法实现而有显著差异。

表3-2 室外与室内定位技术对比

技术典型精度(开阔/视距条件)覆盖范围端侧功耗部署成本典型应用
GNSS(单频民用)数米至十米级全球(室外为主)中等车辆追踪、人员位置上报
GNSS + RTK厘米级室外 + 基准站覆盖最高农业自动驾驶、工程测量
Wi-Fi 指纹法米至十米级建筑尺度低(复用终端)近乎零成本(复用AP)商场导航、人员签到
BLE 信标米量级数十米范围极低室内导览、客流统计
UWB(ToF/TDoA)10–30cm(最佳可近厘米级)数十米范围中等中高AGV定位、仓储机器人
地磁指纹数米级室内极低极低(仅终端软件)手机室内定位备选方案

多技术融合与场景权衡

实际物联网项目很少只依赖一种定位技术。一个典型的智能仓储方案是:室外车辆用GNSS(含RTK)导航到仓库门口;进入仓库后,AGV切换到UWB定位于货架间分米级位置;同时每个货架上的资产标签通过BLE信标定期广播位置,用于库位级盘点。这种“GNSS + UWB + BLE”多层嵌套的设计,本质是用不同精度和成本的水平解决不同层级的定位需求。

定位方案的核心是找到精度需求、环境覆盖面积、总拥有成本三者之间的平衡点。当精度要求超过单频GNSS或Wi-Fi指纹法能力范围时,就需引入更昂贵但能给出连续可靠位置的方案。反之,若场景只需要知道“人在哪个区域”,BLE信标的性价比往往远高于UWB。理解了室外与室内定位技术的选型逻辑之后,剩下的核心问题是:RSSI、ToF 这些原始测量值如何解算成具体坐标。

图 3-7 室内外定位技术覆盖与精度光谱(示意)展示GNSS、Wi-Fi、BLE、UWB等主流定位技术在室外、室内及半室外环境下的典型精度区间,横轴为对数刻度的定位精度(米),从左到右由粗到精,背景色区分室外、半室外过渡与室内三种环境域。图 3-7 室内外定位技术覆盖与精度光谱(示意)展示GNSS、Wi-Fi、BLE、UWB等主流定位技术在室外、室内及半室外环境下的典型精度区间,帮助读者建立直观的选型直觉。室外覆盖域无遮挡开阔,卫星信号稳定接收半室外过渡区街谷、天桥等信号受限,精度显著退化室内覆盖域依赖 Wi-Fi / BLE / UWB / 地磁基础设施4精度递进精度递进精度递进GNSS单频室外 · 数米至十米级室外 · 厘米级GNSS+RTK1Wi-Fi指纹法室内 · 米至十米级3BLE信标室内 · 米级UWB室内 · 分米级2地磁指纹室内 · 数米级10m5m1m0.5m0.1m← 粗精度精精度 →定位精度(米 · 对数刻度)1GNSS+RTK 提供室外最高精度,但基准站部署成本高昂。2UWB 是室内精度冠军,但基站网络与标签成本限制覆盖范围与部署密度。3Wi-Fi 与 BLE 部署成本最低,适合区域级定位,但难支撑精细操作。4半室外过渡区(如物流月台)常用 GNSS 与 BLE 混合定位做平滑切换。卫星定位(GNSS)Wi-FiBLEUWB地磁(备选)浅蓝=室外覆盖域浅黄=半室外过渡区浅灰=室内覆盖域矩形宽度=典型精度区间(左边界≈最粗精度,右边界≈最精精度)图 3-7 室内外定位技术覆盖与精度光谱示意。横轴为定位精度(米,对数刻度),各技术以水平矩形表示宽度对应的典型精度区间。背景色区分室外(浅蓝)、半室外过渡(浅黄)和室内(浅灰)三种环境域。
图 3-7 室内外定位技术覆盖与精度光谱(示意)

编者注:表3-2及图3-7中的精度与成本数据均为作者基于多年工程经验给出的定性范围,不代表对任何具体厂商产品或测试结果的断言,仅供读者在方案规划阶段用作选型参考。

3.4.2 定位算法基础:三角测量与指纹法

信号进入接收机后,原始数据只是到达时间或信号强度——它们本身不是坐标,必须经过位置解算才能变成地理上的 (x, y) 甚至 (x, y, z)。感知层定位的主流技术路线可归结为两大流派:三角测量指纹法。前者是几何求解,后者类似地图匹配。本节从测距基础出发,分析两种算法的原理、工程边界和典型适用场景。

测距方式的物理基础

无论是三角测量还是指纹法,第一步都是获取信号特征值。常用的测距方式有三种,各有不同的信号类型与精度边界。

RSSI(Received Signal Strength Indicator,接收信号强度指示)。通过测量接收信号强度,利用信号传播模型(典型如对数距离路径损耗模型)反向估算距离。Wi‑Fi、蓝牙信标大多沿用此方式。优势在于硬件成本极低——几乎任何无线芯片都提供 RSSI 寄存器。缺陷也非常明显:信号强度受多径、遮挡、天线方向影响严重,可能导致距离误差达数米。因此 RSSI 只适合米级精度且成本敏感的场合。在 AIoT 实践中,端侧可以对 RSSI 序列做简单的低通滤波或卡尔曼滤波,平滑单点波动。

ToA(Time of Arrival,到达时间)。测量信号从发射端到接收端的传播时间,乘以光速得到距离。GPS 和 UWB 主要用这种方法。ToA 对时间同步要求极高:1 纳秒的时钟误差对应约 30 厘米的距离偏差,因此 UWB 芯片必须配备专用硬件做纳秒级时间戳捕获。ToA 在视距条件下可达厘米级精度,但非视距(NLOS)场景中信号反射会引入额外时延,造成系统性正偏差。加权最小二乘可以在一定程度上去抑制这些粗差。

AoA(Angle of Arrival,到达角)。通过天线阵列测量信号的到达角度,利用两个或更多角度交会确定位置。蓝牙 5.1 引入了 AoA 支持,天线阵列的相位差计算是硬件和算力的主要开销。AoA 的工程优势在于仅需两个参考节点即可在二维平面内确定方向线,但天线阵列的尺寸和校准难度限制了它在小尺寸设备上的落地。

三种方式的核心工程权衡:RSSI 用成本换精度,ToA 用带宽和功耗换精度,AoA 用硬件复杂度换精度。在物联网项目中,RSSI 加三角测量的组合最常见;而 UWB 加 ToA 用于需要亚米级的场景,如机器人对接或精细资产盘点。

三点定位与最小二乘修正

三角测量的几何思想来自中学解析几何:已知三个参考点的坐标,以及待测点到这三个点的距离,可以通过三圆相交解算出待测点坐标。这是 GNSS 和多数室内定位系统的数学基础。

图 3-8 三角测量定位原理示意三个测距圆理想下交于一点,实测误差使交点退化为交叠区,最小二乘法在该区取误差平方和最小的点作为坐标。图 3-8 三角测量定位原理示意三个测距圆理想下交于一点,实测误差使交点退化为交叠区,最小二乘法在该区取误差平方和最小的点作为坐标。0102030405060X (m)01020304050Y (m)d1 = 36.0 md2 = 37.0 md3 = 29.0 mA (0, 0)B (60, 0)C (30, 50)Q 最小二乘估计 (29.4, 20.9)T 真实目标 (30, 20)蓝色=核心能力;橙色=智能/风险路径图 3-8 三角测量定位原理示意图。三圆在理想条件下应精确交于一点,但实际测量存在RSSI波动或ToA时钟误差,导致交叠区域出现,可借助最小二乘法计算误差平方和最小的点作为最终坐标。
图 3-8 三角测量定位原理示意

图3-8展示的是理想抽象。真实工程中,每个距离测量值都包含噪声——RSSI 的波动、ToA 的时钟偏移、多径造成的额外时延——三圆大概率不会精确交于一点,而是形成一个模糊的交叉区域。这时候需要从三点定位升级为 最小二乘(Least Squares)方法。

假设有 N 个参考节点(N ≥ 3),每个节点贡献一个方程:

[ (x - x_i)^2 + (y - y_i)^2 = d_i^2 ]

这是个超定方程组。最小二乘的核心是找到一组 (x, y),使所有方程的残差平方和最小。标准解法是线性化后构造矩阵方程 (\mathbf{A}\mathbf{p} = \mathbf{b}),再通过伪逆求解。当测距误差服从高斯分布时,最小二乘解是统计最优的。工程中更常用的是加权最小二乘(Weighted Least Squares, WLS),为可信度高的测距值赋予更大权重,以抑制 NLOS 粗差。

案例:基于 Wi‑Fi RSSI 的三角测量定位。假设一栋办公楼的中庭部署了 4 台 Wi‑Fi 接入点(AP),坐标已标定。一台巡检机器人扫描周围 AP 的 RSSI 值,通过路径损耗模型估算距离。由于信号波动,单个 AP 的测距误差可达数米。若仅用 3 个 AP 做三点定位,三圆交叉区域可能是一个直径较大的模糊范围。加入第四个 AP 并应用最小二乘后,四个方程共同约束,误差被平均化,输出坐标的稳定性显著提升。

指纹法:离线建库,在线匹配

三角测量的前提是部署前已知参考节点的精确坐标,且传播模型可假设。但在商场、机场、地下停车场等大规模室内场景中,多径反射使 RSSI 与距离的映射关系严重偏离经典模型,三角测量精度急剧下降。指纹法(Fingerprinting) 提供另一种思路:不依赖传播模型,而是直接使用环境实测的信号特征来匹配位置。

指纹法分为两个阶段:

  • 离线建库:在目标区域按一定间距(通常 0.5–2 米)划定网格点。在每个网格点上,采集所有可被检测到的无线信号的特征向量。向量的每个维度对应某个 AP 或蓝牙信标的 RSSI 值(不可见的信源以 -100 dBm 填充)。这个向量称为“指纹”。所有指纹及其对应的物理坐标构成指纹库。建库过程需要人工或机器人持终端逐点扫描,工作量随面积线性增长。

  • 在线匹配:终端设备扫描当前时刻的信号向量,与指纹库中的记录比对。最常用的匹配方法是 K 最近邻(K-Nearest Neighbors, KNN):计算待测向量与每个指纹点的欧氏距离,选取距离最小的 K 个指纹点(通常 K=3–5),然后按距离倒数加权平均它们的坐标,得到最终位置估计。K 值过小易受单点噪声影响,过大则区域平均导致精度下降。

案例:Wi‑Fi 指纹定位实验。假设一个数百平方米的开放式办公区,以 1 米左右的间隔采样,得到数百个指纹点,每个指纹点记录周围多个 AP 的 RSSI 值。在线阶段,终端扫描到当前 RSSI 向量后,用 KNN(K=3)匹配,选取距离最小的 3 个指纹点,按距离倒数加权平均得到坐标。实测中,该方法的平均定位误差通常优于同环境下三角测量误差。近年来,一些实践开始用轻量级神经网络替代 KNN,将指纹匹配转化为分类或回归问题,但需要更多离线训练数据和端侧算力支持。

指纹法的核心优势在于抗多径能力强——它直接将环境中的多径反射当作“特征”而非“干扰”来利用。主要短板有二:一是建库成本随面积线性增长;二是环境变化(货架调整、AP 移动)会导致指纹库过时,需要周期性刷新。众包方式可以缓解建库成本:利用携带定位 APP 的移动终端在正常使用中被动收集指纹,经云端融合后增量更新指纹库。

两种算法的工程权衡

三角测量和指纹法没有绝对优劣,选择取决于项目的前置条件。下表总结了关键判断点。

判断条件推荐路线工程原因
参考节点坐标精确、传播模型可建模三角测量(最小二乘)利用已知几何关系,部署成本低,无需建库
信号多径严重、传播模型不准指纹法不依赖模型,直接把多径当成特征吸收
定位面积大(数万平方米以上)三角测量指纹法建库成本急剧上升
环境频繁变化(货物移动、装修)三角测量指纹法需重复建库,维护成本高
已有大量带 Wi‑Fi/蓝牙的终端指纹法(众包方式)被动采集指纹,降低主动建库工作量
需要绝对厘米级坐标UWB + ToA + 三角测量指纹法绝对精度受限于网格间距

在确定算法主干前,先明确一个工程问题:你到底需要“绝对坐标”还是“区域判断”?前者适合三角测量,后者只要指纹法的 KNN 就能覆盖。这个判断决定了后续所有软硬件投入的方向。

3.4.3 多源融合定位工程实践

没有哪种单一定位技术能包打天下。GPS进室内就失锁,UWB遇到金属货架遮挡精度暴跌,Wi‑Fi指纹在环境变化后跳动不定。工程师的应对思路是让几种技术互补——一种的长处掩盖另一种的短处。这背后的数学框架叫多源融合定位(multi-source fusion positioning),即把来自不同传感器的位置数据加权整合,输出一个比任何单源都更可靠的最终结果。

单一技术的工程边界

  • GPS/BDS:室外开阔地可到米级,但一进室内信号完全中断,城市高楼峡谷区多径误差可达数十米。
  • UWB:视距下 10–30cm,最佳条件可接近厘米级,是室内高精度定位的首选。但金属货架、人体遮挡后NLOS(非视距)误差急剧恶化,严重时可能跳变数米。
  • Wi‑Fi RSSI指纹:部署成本低、覆盖广,但RSSI受多径、温湿度和人员走动影响波动大,环境改变后指纹库需重新采集。
  • BLE信标区域:低功耗、低成本,适合区域级定位。信标电池寿命有限,维护成本常被低估。
  • IMU+编码器:短时相对精度好,但零偏漂移随时间累积,纯推算几分钟后误差便不可接受。

融合的目标不是追求单点精度世界纪录,而是确保任意时刻至少有一条可信源在工作,且在系统中提供一个带不确定性的位置(position with uncertainty),让上层任务(如AGV路径规划)能根据置信度做出安全决策。

例子:AGV在仓库中的多源融合定位

一个自动化仓库,AGV需将托盘从A运到B,全程约200米,途经货架密集区和半开阔通道。方案设计如下(所有数值均为假设场景下的示意值,不代表具体产品指标):

  • 主定位源:UWB。屋顶锚点覆盖主干通道,视距下 10–30cm,最佳条件可接近厘米级。
  • 辅助校正源:BLE信标。安装在货架底部和地面,AGV经过时触发事件,位置强行校正至信标坐标。每经过一个信标大幅压缩累计漂移。
  • 连续推算源:IMU+轮式编码器。维持短时相对精度,弥补UWB遮挡间隙。

工作模式切换逻辑:

  1. 正常:UWB以约10 Hz提供连续坐标,卡尔曼滤波用UWB观测校正,IMU只在间隙内推。
  2. UWB遮挡:AGV进入货架深处,UWB更新率下降或跳变。滤波器自动增大UWB观测噪声协方差,降低其权重,切换到IMU推算为主。位置不确定性逐渐增大,但BLE信标作为后备。
  3. 经过BLE信标:BLE扫描触发事件型观测,位置强制设定在信标坐标(观测噪声标准差设为3 m),滤波加权融合后不确定性大幅压缩。
  4. 回到UWB覆盖:恢复UWB主力模式。

卡尔曼滤波:融合骨架

最经典的融合工具是卡尔曼滤波。下面用简化的二维匀速模型伪代码展示其核心循环。实际工程中状态向量可扩展为六维(位置、速度、姿态),但原理一致。

c
// 卡尔曼滤波伪代码:二维位置+速度融合
// 状态 x = [pos_x, pos_y, vel_x, vel_y]^T
// 观测 z = [measured_x, measured_y]^T

x = {0, 0, 0, 0};
P = diag({1000, 1000, 1000, 1000});  // 高初始不确定性
Q = diag({0.1, 0.1, 0.1, 0.1});      // 运动模型过程噪声
R = diag({5.0, 5.0});                 // 默认观测噪声

while (running) {
    dt = getDeltaTime();

    // ---------- 预测 ----------
    F = { {1,0,dt,0}, {0,1,0,dt}, {0,0,1,0}, {0,0,0,1} };
    x = F * x;                    // 匀速状态转移
    P = F * P * F^T + Q;

    // ---------- 观测源选择 ----------
    if (uwbAvailable()) {
        R = diag({0.5, 0.5});     // UWB 高信任,小噪声
        correct(uwbPos, R);
    } else if (bleDetected()) {
        R = diag({3.0, 3.0});     // BLE 低信任,大噪声
        correct(blePos, R);
    } else {
        // 无观测,纯推算,不确定性继续增长
        continue;
    }
}

void correct(z, R) {
    H = { {1,0,0,0}, {0,1,0,0} };
    y = z - H * x;                // 观测残差
    S = H * P * H^T + R;         // 新息协方差
    K = P * H^T * inv(S);        // 卡尔曼增益
    x = x + K * y;               // 状态更新
    P = (I - K * H) * P;         // 协方差更新
}

关键在于卡尔曼增益 (K) 的大小由观测噪声 (R) 控制:(R) 越小,(K) 越大,观测权重越高;(R) 越大,滤波器更信任运动模型的推算。上述伪代码中UWB的 (R) 为0.5,BLE为3.0,因此BLE仅在UWB不可用时起压漂移作用,不会过度干扰主源。

部署注意事项

时间戳对齐。不同传感器的采样时钟独立,滤波前必须统一到系统时钟(如边缘节点NTP同步,或通过RTC脉冲同步)。若时差过大,融合结果容易出现震荡。实践中通常让所有传感器数据带上硬件时间戳,并在滤波前按系统时钟进行线性插值对齐。

传感器失效判别。UWB在只有1–2个锚点时可能输出大幅偏离的坐标。常用策略是:计算观测残差(即新息向量模长),若超过3倍当前观测噪声标准差,则丢弃该观测或降低其权重(例如将 (R) 临时放大10倍)。BLE信标同样需要判断信号强度是否在合理范围内。

计算约束。二维定位状态矩阵4×4,求逆计算量很小(约4×4矩阵求逆只需几十次浮点运算),ARM Cortex‑M4 MCU可在50–100 Hz稳定运行。若扩展到三维并加入气压计、磁力计,建议在边缘网关处理器上完成滤波,主MCU只输出原始观测。

工程收益。多源融合定位的真实收益不在单点精度,而在覆盖率与鲁棒性的平衡——无论环境怎么变,系统总有一个可用且带置信度的位置。工程师需要管理三种能力:源选择策略(何时信任哪个源)、噪声建模(量化每个源的不确定性,最好通过离线标定获得)以及部署运维(确保所有信标、锚点持续可用,定期巡检电池和安装位置)。

融合不是一次性调参,而是一个持续迭代的过程:每次现场环境变化(如新增货架、金属设备移动),都可能需要重新标定某些源的噪声参数。成熟的定位系统会保留融合后的定位日志,用于离线分析各源的表现,并据此在线更新部分参数。

图 3-9 多源融合定位:单一技术边界与 AGV 融合单一定位技术各有边界,AGV 用 UWB 主源、BLE 校正、IMU 推算融合,卡尔曼滤波按观测噪声加权。图 3-9 多源融合定位:单一技术边界与 AGV 融合目标不是单点精度纪录,而是任意时刻至少一条可信源在工作单一技术的工程边界GPS/BDS室外米级,室内失锁高楼峡谷多径误差数十米UWB视距厘米级,室内首选金属遮挡 NLOS 误差恶化Wi-Fi 指纹成本低、覆盖广环境变化后需重采指纹库BLE 信标低功耗低成本,区域级电池寿命有限,维护被低估IMU+编码器短时相对精度好零偏漂移随时间累积AGV 仓库多源融合:主源 + 校正 + 推算主定位源:UWB(约 10 Hz)屋顶锚点覆盖主干通道卡尔曼滤波用 UWB 观测校正遮挡时自动增大观测噪声协方差、降权重正常模式主力辅助校正源:BLE 信标货架底部与地面,经过时触发事件位置强制校正至信标坐标观测噪声标准差设为 3 m,滤波加权融合每经过一个信标大幅压缩累计漂移连续推算源:IMU + 轮式编码器维持短时相对精度弥补 UWB 遮挡间隙无观测时纯推算,不确定性持续增长UWB 遮挡时切换为主卡尔曼滤波:观测噪声 R 控制权重R 越小,卡尔曼增益 K 越大,观测权重越高;UWB 的 R=0.5,BLE 的 R=3.0,BLE 仅在不可用时起压漂移作用时间戳对齐(硬件时间戳 + 线性插值)· 残差超 3 倍标准差则丢弃观测 · 4×4 矩阵求逆在 M4 上 50~100 Hz 稳定运行图 3-9 单一定位技术各有边界;AGV 以 UWB 为主源、BLE 为校正源、IMU+编码器为连续推算源,卡尔曼滤波按观测噪声 R 加权,输出带不确定性的位置供上层安全决策。
图 3-9 多源融合定位:单一技术边界与 AGV 融合

从工业软件到 AI 智能体 · 构建面向智能体演进的多协议、云原生、开源工业物联网平台