超宽带定位中的TOA/TDOA两种最常用算法介绍
Posted 定位应用
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了超宽带定位中的TOA/TDOA两种最常用算法介绍相关的知识,希望对你有一定的参考价值。
UWB定位,超宽频定位,本质上和GPS卫星定位的原理是一样的,它不过是将卫星放在了地面上,也就是自己搭建作为卫星的基站,然后去根据和GPS定位相同的算法计算出每个Anchor(基站)到Tag(移动站也称标签)的距离,从而解算出移动站的空间坐标,对于三维空间定位而言一般至少需要四个基站,基站的数量增加不但可以构建超定方程组使用一些算法提高精度,同时也可以作为通信质量不佳下的冗余设计,所以在可以接受的条件下,基站的数量一般越多越好。
TOA即“到达时间”,这种方式定位是通过Anchor和Tag之间的多次通信实现的,如下图:
1、Anchor首先发给Tag一个包,同时记录下Anchor当前的时间信息,记为T1。
2、Tag收到基站的信息,返回一个ACK。
3、 Anchor收到Tag的ACK,记录当前的时间信息,记为T2。
4、Anchor计算时间差Tr = T2 - T1,并且根据此计算出距离。
d = c * Tr / 2 其中c为光速。
当然,实际应用中为了更加靠谱,往往不仅仅是利用两次通信来测距,还会有更加复杂的多次通信来提高精度。
对于空间定位,只需要利用SX(球面相交法)便可以得出最后的坐标。
可见,为了一次定位,每个Anchor和Tag之间要进行两次通信,故又将这种定位方式称为“Two-way-ranging”。这种定位的优势在于其实现的便捷性和对硬件的宽容,只需要有几个摆放在不同位置的Anchor和一个Tag便可进行定位,而缺点嘛...首先自然是定位速度了,其次,由于每次通信的质量无法保证,而一对Anchor/Tag又无法做自我的校准,精度自然也会受到影响。
TODA即“到达时间差”,这种方式的一次测距是由两个Anchor和一个Tag实现的。在这种模式下,多个时钟完全同步的Anchor同时接受来自一个Tag的包,对于不同位置的Anchor,同一个Tag的同一次广播包到达的时间是不同的,所以便有有以下算法:
1、Tag发出一个广播包。
2、 两个Anchor接收到同一个包,Anchor1接收到的时间为T1,Anchor2接收到的时间为T1。
3、计算时间差Td = T2 - T1。
4、 对于至少四个Anchor,可以得到三组这样的两两之间的信息。
5、通过数学方法(multi-lateration)可以解算出Tag的空间坐标。
由于算法比较复杂,这里不再赘述。由此可见,TDOA的优势首先在于一次定位的通信次数显著减少,其次由于是用时间差而非绝对时间进行测距,其精度也比TOA高出一些。但优势总是以一些代价换来的,TDOA系统中各个Anchor的时钟必须严格同步,由于这种定位本质上是依赖于光速的,所以1ns的固有时钟误差便可以造成30cm的固有距离误差,这一点显然是不可接受的。而要打造一个间距比较大的精确同步系统成本又是比较高昂的。
下面一个视频是基于TOA算法的一个定位系统效果演示视频
以上是关于超宽带定位中的TOA/TDOA两种最常用算法介绍的主要内容,如果未能解决你的问题,请参考以下文章
基于到达时间(TOA)的室内定位(/无线传感器网络定位)——极大似然估计ML
基于到达时间差(TDOA)的室内定位(/无线传感器网络定位)——极大似然估计ML