TDOA 和 TWR相比,標簽可以用最少的信息來定位,但是對於基站要求很高,需要“時間同步”。
這也是TDOA算法的核心部分,很多套件對此諱莫如深,希望能溝通過本文使讀者能對TODA同步有一定初步了解。
TDOA實現目的相同,但是實現方法每家各不相同,這里介紹一種簡單的時間同步原理。
定位系統中有標簽Tag,基站ANA 和ANB,為了時間同步,引入同步節點RN,所有時間都會同步到同步節點上
下圖為例說明同步方法,縱軸是時間。為了簡化,認為RN與ANA 和ANB距離相等。
時間同步主要流程:
同步節點RN周期性以廣播的方法發送同步信號,上圖中是R1 R2,使用delayed tx發送,發送信息標記了發送時間
基站接收同步信號並記錄接收時間
標簽周期性發送定位信號,基站接收定位信號,記錄接收時間。
分析如上各個時間戳:
同步節點發送兩次同步信號,在基站ANA接收到以后,獲得兩個發送時間差 R2-R1,以及兩個對應的接收時間差A2-A1. 這兩個都是時鍾數量,對應的絕對時間相同,而時鍾數量不同,這個不同是因為每個模塊時鍾差異造成的。
基站ANA會收到標簽發送來的定位信號,時間再AT,相對於A1的時間差是AT-A1
基站收到的定位數據時間戳是在基站ANA上,那么可以映射到同步節點間RN上,利用比例關系
t/(AT-A1) = ( R2-R1)/(A2-A1)
--》 tANA = (AT-A1)*( R2-R1)/(A2-A1)
tANA 就是把AT映射到RN后的時間
同理,可以將BT映射過去 (BT-B1)*( R2-R1)/(B2-B1)
得到的兩個映射時間都是基於RN節點,相對於R1 的delay時間,兩者可以進行比較了。假如標簽離基站ANA較遠,可以計算時間差
tdelay = (AT-A1)*( R2-R1)/(A2-A1) - (BT-B1)*( R2-R1)/(B2-B1)
distance = tdelay*C
其中(AT-A1)*( R2-R1)/(A2-A1) - (BT-B1)*( R2-R1)/(B2-B1) 這些量都是可以通過發送的兩個信號的到的具體值
所以distance 是一個可以計算的數字。
結合ANA 和 ANB 坐標和 distance,可以建立一個雙曲線方法,標簽落在這個雙曲線上。
再加入一個ANC,用類似方法,
ANA和 ANC或者ANB 和 ANC 再構建一個雙曲線
聯立兩個雙曲線,解得坐標就是標簽的坐標,定位完成。
更多內容參考藍點無限論壇bphero.com.cn