4. UWB测距原理(TDOA):到达时间差法

好,咱们接着聊UWB测距。上一章讲了TOF(飞行时间法),那种方法需要信号在标签和基站之间打个来回。这一章要讲的TDOA,思路完全不一样——它只收不发,或者说得更准确一点,标签只管发信号,基站只管收信号。

我第一次接触TDOA是在一个仓储AGV定位项目里。当时客户要求标签功耗极低,电池要用一年以上。TOF那种双向通信的方案,标签既要发又要收,功耗根本压不下去。后来换了TDOA,标签只发一个广播包,剩下的计算全交给基站端,功耗直接降了一个数量级。嗯,这就是TDOA的核心魅力。

4.1 TDOA的数学原理

TDOA,全称Time Difference of Arrival,到达时间差。名字已经说得很清楚了——我们不关心信号什么时间发的,只关心它到达不同基站的时间差。

你想想看,如果标签在某个位置发了一个脉冲,距离标签近的基站先收到,远的基站后收到。这个时间差,就包含了标签的位置信息。

核心思想:标签到两个基站的距离差 = 信号到达时间差 × 光速

Δd₁₂ = (t₂ - t₁) × c

这个距离差Δd₁₂,在几何上对应一条双曲线。两个基站就是双曲线的两个焦点。标签的位置,一定落在这条双曲线上。

那怎么定位呢?很简单,再加一个基站。三个基站可以形成两组时间差,对应两条双曲线。两条双曲线的交点,就是标签的位置。理论上,三个基站就能做二维定位。

数学上,假设基站i的位置是(xᵢ, yᵢ),标签位置是(x, y),信号到达基站i的时间是tᵢ。那么:

√((x - x₂)² + (y - y₂)²) - √((x - x₁)² + (y - y₁)²) = c × (t₂ - t₁)
√((x - x₃)² + (y - y₃)²) - √((x - x₁)² + (y - y₁)²) = c × (t₃ - t₁)

解这个方程组,就能算出(x, y)。当然,实际工程里不会手算,都是用最小二乘法或者卡尔曼滤波来求解。

个人经验:我在实际项目中很少用三个基站做二维定位。为什么?因为双曲线交点的误差对基站几何布局太敏感了。我一般至少用4-5个基站,用冗余观测来压制误差。这叫"超定TDOA",定位稳定性好很多。

4.2 基站时钟同步——TDOA的命门

说到这儿,你可能已经发现了一个关键问题:TDOA要求所有基站的时间基准必须一致。否则,你测出来的时间差就不是真正的信号到达时间差,而是包含了时钟偏差的"假时间差"。

举个例子。基站A的时钟比基站B快了1纳秒。标签发一个信号,同时到达A和B(标签到两个基站距离相等)。但A记录的时间比B早了1纳秒,算出来的时间差就是-1纳秒,对应30厘米的距离差。标签明明在中间,却被定位偏了30厘米。

这还只是1纳秒的偏差。UWB的测距精度是厘米级的,对时钟同步的要求极其苛刻。

避坑指南:我曾经在一个工厂部署TDOA系统,用了普通的WiFi时钟同步方案,基站之间通过NTP对时。结果定位误差飘到1米以上,根本没法用。后来换成硬件有线同步(用同轴电缆分发时钟信号),才把误差压到10厘米以内。记住:TDOA的精度,很大程度上取决于时钟同步的精度。

常见的时钟同步方案有几种:

  • 有线同步:用同轴电缆或光纤分发时钟信号。精度最高,能到皮秒级。但布线成本高,适合固定部署。
  • 无线同步:基站之间通过额外的无线信道交换时钟信息。精度稍差,但部署灵活。我见过一些方案能做到亚纳秒级同步。
  • 基于标签的同步:让标签在数据包里带上发送时间戳,基站收到后减去这个时间戳来消除时钟偏差。这种方法对标签硬件有要求。

下面这张图展示了TDOA系统的核心流程和时钟同步的关键位置:

TDOA定位系统架构与时钟同步流程 标签(Tag) 广播UWB脉冲 基站1 (Anchor 1) 基站2 (Anchor 2) 基站3 (Anchor 3) t₁ = 1000.123456 ns t₂ = 1000.123789 ns t₃ = 1000.124012 ns 时钟同步链路(有线/无线)—— 确保所有基站时间基准一致 TDOA计算:Δt₁₂ = t₂ - t₁,Δt₁₃ = t₃ - t₁ 定位解算:双曲线方程组 → 最小二乘 → (x, y) 输出位置 (x, y)

4.3 TDOA与TOF的优缺点对比

两种方法各有各的脾气。我根据自己的项目经验,整理了一个对比表:

对比维度 TDOA(到达时间差法) TOF(飞行时间法)
通信方式 单向:标签只发,基站只收 双向:标签和基站需要来回通信
标签功耗 极低(只发不收,省去接收功耗) 较高(需要收发切换,功耗翻倍)
系统容量 高(标签只管发,基站并行处理) 低(需要时分或频分避免冲突)
时钟同步 必须(基站间高精度同步) 不需要(只关心往返时间)
部署复杂度 高(需要同步基础设施) 低(基站独立工作)
定位精度 高(受同步精度影响) 高(受时钟漂移影响)
适用场景 大规模、低功耗、标签密集 小规模、高精度、基站稀疏

说白了,选哪种方案,取决于你的核心矛盾是什么。

  • 如果你做的是资产追踪,几百个标签要跑一年不换电池,那TDOA是唯一选择。我做过一个医院设备追踪项目,用TDOA,标签功耗只有TOF方案的1/5,电池续航从3个月延长到了14个月。
  • 如果你做的是机器人定位,只有几个标签,但要求10厘米以内的精度,那TOF更靠谱。不用折腾时钟同步,精度还稳定。
  • 如果你做的是人员定位,几十个人在室内活动,两种方案都能用。但要注意:TDOA的基站部署密度通常比TOF高,因为双曲线定位对几何布局更敏感。

我的建议:如果你刚开始做UWB定位,先从TOF入手。TOF的坑少,调试简单。等把TOF吃透了,再切换到TDOA。我见过太多团队一上来就搞TDOA,结果被时钟同步折腾得死去活来,项目延期半年。嗯,别问我怎么知道的。

最后说一句:TDOA和TOF不是非此即彼的关系。有些高端系统会混合使用——用TDOA做粗定位,用TOF做精校准。这种混合方案,在工业现场越来越常见。