3. UWB定位性能指标体系
做UWB定位系统优化,第一件事不是调参数,而是搞清楚——你到底要优化什么?
我见过不少团队,一上来就盯着定位精度猛调,结果刷新率掉得一塌糊涂,现场根本没法用。说白了,性能指标是一个多维度的平衡,你得先建立一套完整的评价体系。
这一章,我就把这五个核心指标掰开揉碎了讲清楚。每个指标背后都有坑,我会把我在项目中踩过的雷也一并交代。
3.1 定位精度:最直观但最容易误解的指标
定位精度,说白了就是测出来的位置和真实位置之间的偏差。UWB宣传的"10cm精度",其实有很多前提条件。
我习惯把精度分成三个层次来看:
- 静态精度:标签静止不动时的定位误差。这个最容易做漂亮,实验室里经常能跑到5-8cm。
- 动态精度:标签移动时的定位误差。嗯,这才是真功夫。我在一个AGV项目中遇到过,静态精度做到8cm,但小车一跑起来直接跳到30cm+。
- 统计精度:用CEP50(圆概率误差50%)或RMSE(均方根误差)来评估。我个人更推荐看RMSE,因为它对离群点更敏感。
| 精度类型 | 典型值 | 影响因素 | 我踩过的坑 |
|---|---|---|---|
| 静态精度 | 5-15 cm | 多径、基站几何布局 | 实验室地板铺了吸波材料,数据好看但现场完全不是一回事 |
| 动态精度 | 15-40 cm | 运动速度、滤波算法、刷新率 | AGV项目用卡尔曼滤波没调Q矩阵,动态误差直接翻倍 |
| 统计精度(RMSE) | 10-30 cm | 样本量、异常值剔除策略 | 曾经用100个样本算RMSE,结果有3个飞点把均值拉高了50% |
3.2 定位刷新率:快不一定好,稳才是王道
刷新率就是系统每秒输出多少次位置结果。单位是Hz。你想想看,10Hz就是每秒10次定位,100ms出一次结果。
但这里有个常见的误区——刷新率越高,精度不一定越好。为什么?因为高刷新率意味着每个位置的计算时间被压缩,滤波器的平滑效果会变差。
我做过一个对比测试:
- 10Hz:位置输出平滑,抖动小,但响应延迟约100ms
- 50Hz:响应快,但单点抖动明显,需要更强的滤波
- 100Hz:原始测距数据直接上抛,基本没做滤波,噪声很大
我曾经在一个机械臂定位项目里,客户要求刷新率必须到100Hz。结果呢?机械臂本身的振动频率和定位抖动叠加了,位置数据根本没法用。后来降到40Hz,配合一个低通滤波器,反而效果更好。
3.3 定位稳定性:比精度更让人头疼的问题
稳定性,我指的是位置输出在时间上的连续性和一致性。一个系统精度做到10cm,但位置每秒钟跳来跳去,那也没法用。
衡量稳定性,我主要看三个维度:
- 抖动(Jitter):相邻两次定位结果的偏差。好的系统抖动应该控制在5cm以内。
- 漂移(Drift):长时间内位置缓慢偏离真实值。这个在室内定位里比较少见,但温度变化大的场景会出现。
- 跳变(Hop):位置突然跳到远处又跳回来。这通常是多径或非视距(NLOS)导致的。
我记得有一次在工厂部署,定位精度测出来15cm,客户很满意。结果运行了半小时,发现某个区域的位置会每隔几分钟跳一下,幅度达到1米。查了两天才发现,是附近一台电焊机产生的电磁干扰,触发了UWB信号的多径误判。
3.4 覆盖范围:别被"300米"的宣传骗了
UWB芯片厂商经常宣传"视距300米通信距离"。但定位和通信是两码事。定位需要至少三个基站同时收到信号才能解算二维位置,所以实际覆盖范围远小于通信距离。
影响覆盖范围的关键因素:
- 视距/非视距:有遮挡时,有效覆盖可能缩水到30-50米
- 基站几何布局:基站围成的区域叫"凸包",凸包内的定位精度远高于凸包外
- 天线高度:我习惯把基站天线放在2.5-3米高度,太低容易被遮挡,太高会引入多径
| 场景 | 典型覆盖范围 | 基站间距建议 | 备注 |
|---|---|---|---|
| 空旷室外 | 100-200 m | 30-50 m | 视距条件好,覆盖范围大 |
| 室内仓库 | 30-80 m | 15-25 m | 货架遮挡严重,需要加密部署 |
| 地下停车场 | 20-50 m | 10-20 m | 多径严重,建议用TDOA方案 |
| 隧道/管廊 | 50-100 m | 20-30 m | 一维定位为主,基站沿直线部署 |
3.5 系统容量:一个基站能带多少标签?
系统容量指的是一个定位网络能同时支持多少个标签。这个指标受限于无线信道的时隙资源和基站的算力。
UWB的MAC层通常采用TDMA(时分多址)或ALOHA协议。TDMA模式下,每个标签分配固定的时隙,容量是确定的。ALOHA模式下,标签随机发送,容量受碰撞概率影响。
我整理了一个容量估算的简化公式:
// 系统容量估算(TDMA模式)
// 假设:刷新率 = 10Hz,每个时隙 = 2ms,保护间隔 = 0.5ms
总时隙数 = 1000ms / (2ms + 0.5ms) = 400 个时隙/秒
每标签每秒占用 = 10 个时隙
理论最大标签数 = 400 / 10 = 40 个标签
// 实际可用容量需要打折扣
// 预留20%用于重传和信令
实际容量 ≈ 40 * 0.8 = 32 个标签/基站
当然,这是单基站的容量。实际系统可以通过频率复用和信道划分来扩展。比如用3个信道,每个信道带30个标签,那一个基站就能带90个标签。
我记得有个智慧工厂项目,客户要求同时定位500个标签。我们用了8个基站,每个基站配置3个信道,才勉强满足。后来发现标签发送频率太高,信道碰撞严重,不得不把刷新率从20Hz降到5Hz。
3.6 五维指标的权衡关系
讲完五个指标,你可能会问:能不能同时做到高精度、高刷新率、高稳定、大覆盖、大容量?
答案是:不可能。这五个指标之间存在天然的制约关系。
我画了一张权衡矩阵,帮你快速理解:
| 指标A | 指标B | 权衡关系 | 实际案例 |
|---|---|---|---|
| 精度 ↑ | 刷新率 ↓ | 高精度需要更多测距样本和更复杂的滤波,会降低刷新率 | AGV定位:精度优先,刷新率降到20Hz |
| 刷新率 ↑ | 容量 ↓ | 高刷新率占用更多时隙,可支持的标签数减少 | 人员定位:500标签,刷新率只能给5Hz |
| 覆盖 ↑ | 精度 ↓ | 大覆盖意味着基站间距大,几何稀释误差(GDOP)变大 | 室外空旷区:覆盖100m,精度只能到30cm |
| 稳定性 ↑ | 响应延迟 ↑ | 强滤波提升稳定性,但引入延迟 | 机械臂控制:延迟要求<50ms,滤波不能太强 |