室内导航

UWB定位:第二篇.原理

2019-11-20  本文已影响0人  drivextech

UWB定位系列专题:


[目录]


定位方案

接收信号强度指示(RSSI)

RSSI(Receive Signal Strength Indicator)通过测量无线信号在接收端的功率大小并根据无线信号的Friis传输模型计算出收发端之间的距离,
\begin{gathered} P_r[dBm] = P_t[dBm] + G_t[dB] + G_r[dB] - L[dB] - 20\log_{10}(4\pi d/\lambda) \\ \Downarrow \\ d = \frac{\lambda}{4\pi} 10^{(P_t - P_r + G_t + G_r - L)/20} \\ \end{gathered}
其中,P_r/P_t分别表示接收/发送信号功率级,G_r/G_t分别表示接收/发送天线增益,L表示PCB、连接线、连接器等带来的损耗,d表示设备间距离,\lambda表示无线信号的中心波长。

从Friis传输模型中可以看出,RSSI的测距结果受收发天线设计,多径传播,非视距传播,直接路径损耗等环境因数影响较大,实际应用中测距精度~10m量级,远低于基于时间戳测距的方法,因而基于RSSI的方法很少直接用于UWB定位。

飞行时间(TOF) / 到达时间(TOA)

TOF(Time of Flight)/TOA(Time of Arrival)通过记录测距消息的收发时间戳来计算无线信号从发送设备到接收设备的传播时间,乘以光速然后得到设备间的距离。根据测距消息的传输方式不同可分为单向测距和双向测距,其中单向测距中测距消息仅单向传播,为获得设备间的飞行时间需要双方设备保持精确的时钟同步,系统实现复杂度和成本较高,而双向测距对双方设备的时钟同步没有要求,系统实现复杂度和成本很低,因而我们主要关注双向测距这种方案。

双向测距(TWR)

TWR示意图

TWR(Two-Way Ranging)方法需要设备间支持双向通信,通过UWB信号收发时间戳计算UWB信号的往返时间然后乘光速从而获得两个设备间的实际距离信息。

多边定位算法

标签T通过与多(2维>=3, 3维>=4)个位置坐标固定且已知的基站A_k轮流进行TWR获得相应的测距数据D_k,通过求解以下方程获得定位结果:
\left\{ \begin{gathered} \sqrt{(x - x_{A_1})^2 + (y - y_{A_1})^2 + (z - z_{A_1})^2} = D_k \\ \sqrt{(x - x_{A_2})^2 + (y - y_{A_2})^2 + (z - z_{A_2})^2} = D_k \\ \vdots \\ \sqrt{(x - x_{A_k})^2 + (y - y_{A_k})^2 + (z - z_{A_k})^2} = D_k \\ \end{gathered} \right.

到达时差(TDOA)

TDOA示意图

TDOA(Time Difference of Arrival)是对TOA算法的改进,不是直接利用信号到达时间,而是通过检测信号到达多个严格时间同步基站的到达时间差来计算标签的位置,该方法不需要标签和基站保持时间同步。时间同步分有线时间同步和无线时间同步两种方式,有线时间同步通过专用的有线时间同步器进行时钟分发,精度~0.1ns,但时钟网络的部署和维护代价以及成本较高。无线时间同步不需要特殊同步设备,精度~0.3ns低于有线时间同步,不过其系统部署维护和成本相对较低。由于无线时间同步从部署维护难度,系统扩展灵活性,和成本上都优于有线时间同步,同时TDOA定位算法在这这两种方式中的用法几乎一致,我们主要关注无线时间同步方式下的TDOA定位。

TDOA定位方案根据标签端的工作模式可分为:

TDOA定位算法

2维TDOA定位需要至少3个位置坐标固定且已知的基站,而3维TDOA定位需要至少4个位置坐标固定且已知的基站,假定标签T某次测距共有N个基站\{A_k\}_{1:N}参与,则可获得C_N^2组时间差值,然而其中相互独立的约束仅有N-1个。记标签T与基站A_iA_j测得的时间差为\Delta_{i,j},可取如下相互独立的约束方程用于求解标签位置:
\left\{ \begin{gathered} \sqrt{(x - x_{A_2})^2 + (y - y_{A_2})^2 + (z - z_{A_2})^2} - \sqrt{(x - x_{A_1})^2 + (y - y_{A_1})^2 + (z - z_{A_1})^2} = c \cdotp \Delta_{1,2} \\ \sqrt{(x - x_{A_3})^2 + (y - y_{A_3})^2 + (z - z_{A_3})^2} - \sqrt{(x - x_{A_2})^2 + (y - y_{A_2})^2 + (z - z_{A_2})^2} = c \cdotp \Delta_{2,3} \\ \sqrt{(x - x_{A_4})^2 + (y - y_{A_4})^2 + (z - z_{A_4})^2} - \sqrt{(x - x_{A_3})^2 + (y - y_{A_3})^2 + (z - z_{A_3})^2} = c \cdotp \Delta_{3,4} \\ \vdots \\ \sqrt{(x - x_{A_N})^2 + (y - y_{A_N})^2 + (z - z_{A_N})^2} - \sqrt{(x - x_{A_{N-1}})^2 + (y - y_{A_{N-1}})^2 + (z - z_{A_{N-1}})^2} = c \cdotp \Delta_{N,N-1} \\ \end{gathered} \right.

到达角度AOA / 到达相差PDOA

AOA角度计算

AOA(Angle of Arrival)/PDOA(Phase Difference of Arrival)通过计算信号到达不同位置接收天线的相位差值来计算信号的接收方向从而确定其相对于自身的朝向。

d\sin(\theta) = \frac{\lambda\Delta\phi}{2\pi} \Longrightarrow \theta = \sin^{-1}(\frac{\lambda\Delta\phi}{2\pi d})

AOA定位算法

AOA定位示意图

该方案需要配置多天线,项目暂未使用该方案(略过,待续)


总结

UWB定位方案比较
上一篇下一篇

猜你喜欢

热点阅读