在之前的文章《一文講透超寬帶(UWB)前世今生》中,我們從起源、定義、標(biāo)準(zhǔn)、發(fā)展、應(yīng)用等角度概述了UWB技術(shù)。根據(jù)UWB的特性,其基礎(chǔ)功能分為:數(shù)據(jù)傳輸、雷達(dá)成像、測(cè)距定位。接下來我們將概述其數(shù)據(jù)傳輸和雷達(dá)成像功能,并對(duì)UWB當(dāng)前的主要運(yùn)用:測(cè)距定位功能進(jìn)行深入解析。
???數(shù)據(jù)傳輸功能概述
??UWB具有天然的安全性,由于UWB信號(hào)一般把信號(hào)能量彌散在極寬的頻帶范圍內(nèi),對(duì)于一般通信系統(tǒng)來說,UWB信號(hào)相當(dāng)于白噪聲信號(hào),從電子噪聲中將脈沖信號(hào)檢測(cè)出來是一件非常困難的事。
??UWB的射頻部分采用隨機(jī)編碼對(duì)UWB脈沖信號(hào)進(jìn)行偽隨機(jī)化后,脈沖監(jiān)聽將更加困難。
??實(shí)際應(yīng)用中,CCC聯(lián)盟與802.15.4工作組提出在UWB的PHY層和數(shù)據(jù)鏈路層中,在每一幀的發(fā)送中,都對(duì)整體數(shù)據(jù)與時(shí)間戳加密(防篡改時(shí)間戳),這樣使UWB通信有了極高的安全性。
圖2 UWB數(shù)據(jù)傳輸
1.2UWB數(shù)據(jù)傳輸應(yīng)用
UWB的標(biāo)準(zhǔn)中主要定義了相關(guān)的物理層與鏈路層,所以并沒有一個(gè)類似于藍(lán)牙的協(xié)議棧,因此用戶可以直接將自己的數(shù)據(jù)向信道中發(fā)送,如蘋果所使用的U1芯片,采用的UWB的協(xié)議就是蘋果自行定義的私有協(xié)議,對(duì)于任何一個(gè)UWB的組織用戶都可以使用自己的通訊協(xié)議進(jìn)行數(shù)據(jù)的交流。
圖3 UWB在802.15.4中定義的MAC層通用幀格式
???雷達(dá)成像功能概述
UWB利用超短脈沖信號(hào),通過測(cè)量信號(hào)的時(shí)延和幅度來確定目標(biāo)的位置和速度。因此,UWB可用作雷達(dá)成像。UWB雷達(dá)的超寬帶信號(hào)帶寬非常寬,可以達(dá)到幾個(gè)GHz。這種信號(hào)具有很短的脈沖寬度和很高的峰值功率,可以穿透障礙物并在復(fù)雜環(huán)境中進(jìn)行探測(cè)。
UWB雷達(dá)發(fā)射脈沖信號(hào),并接收該脈沖信號(hào)經(jīng)障礙物反射后的回波,通過對(duì)回波擾動(dòng)的分析來判斷UWB雷達(dá)附近是否存在物體,這種檢測(cè)方式我們稱之為CIR(Channel Impulse Response,信道脈沖響應(yīng))技術(shù)。UWB雷達(dá)通過接收到的CIR來探測(cè)周圍物體及其運(yùn)動(dòng)。當(dāng)UWB雷達(dá)周圍有物體時(shí),CIR對(duì)應(yīng)位置就會(huì)有脈沖峰;當(dāng)周圍物體運(yùn)動(dòng)時(shí),由于多普勒效應(yīng),對(duì)應(yīng)的CIR值就會(huì)變化。通過分析CIR頻譜來估計(jì)目標(biāo)運(yùn)動(dòng)狀態(tài)。
圖4 UWB在不同物體的CIR表現(xiàn)
2.2UWB成像原理
UWB成像技術(shù)是UWB雷達(dá)的擴(kuò)展應(yīng)用,UWB成像可以簡(jiǎn)單理解為UWB脈沖波組成一堵無形的墻,這面墻向前走的時(shí)候碰到任何物體都會(huì)局部反彈回去,這面初始平整的墻返回的時(shí)候就有了凹凸變化,這個(gè)凹凸變化就描繪出了物體的一個(gè)面。
UWB成像通過軟件算法解析實(shí)現(xiàn),對(duì)于UWB硬件底層,只需要將檢測(cè)的這一個(gè)區(qū)域變化的曲線,如上圖的一個(gè)整體趨勢(shì)告知算法,用算法的運(yùn)算來描繪出物體的樣貌,這種成像的方式是應(yīng)用層所關(guān)注且通用的,除UWB雷達(dá)外,底層硬件不管使用毫米波雷達(dá)還是激光雷達(dá),其成像原理都是采用的這種方式。
2.3UWB雷達(dá)成像應(yīng)用
當(dāng)前UWB雷達(dá)成像應(yīng)用最廣泛的領(lǐng)域主要包括:
??軍事領(lǐng)域:便攜式UWB穿墻雷達(dá)能夠?qū)崿F(xiàn)對(duì)障礙物后面目標(biāo)的探測(cè)、定位、成像和追蹤。在應(yīng)用層面主要包含建筑內(nèi)部成像,探測(cè)、跟蹤運(yùn)動(dòng)目標(biāo)。在軍事裝備、火災(zāi)及地震救援等場(chǎng)景有著廣泛的應(yīng)用前景和價(jià)值。
??醫(yī)療領(lǐng)域:非接觸式UWB生命監(jiān)測(cè)雷達(dá)不同于傳統(tǒng)的電極和傳感器接觸的檢測(cè)形式,可實(shí)現(xiàn)較遠(yuǎn)距離無接觸式檢測(cè)患者的呼吸和心跳,可以在不影響患者正常休息的情況下,實(shí)現(xiàn)對(duì)患者的生命體征實(shí)時(shí)監(jiān)測(cè)。
??車載領(lǐng)域:UWB活體雷達(dá)通過活體微動(dòng)作感知算法,實(shí)現(xiàn)車內(nèi)生命體征的非接觸式存在性檢測(cè),支持靜態(tài)呼吸檢測(cè),有效防止兒童、寵物等無行為能力的乘客滯留車內(nèi)。UWB腳踢雷達(dá)基于運(yùn)動(dòng)感知算法,實(shí)現(xiàn)車尾箱的非接觸式腳踢檢測(cè)。
???測(cè)距定位功能解析
??雙向測(cè)距(TWR,Two Way Ranging)
雙向測(cè)距顧名思義就是通過兩邊的一收一發(fā)以及一發(fā)一收的相互配合下進(jìn)行的測(cè)距,與比較常見的紅外測(cè)距不同,紅外測(cè)距就是典型的單向測(cè)距即為只用一個(gè)設(shè)備,發(fā)和收獲取到了位置,缺點(diǎn)也很明顯,必須有一個(gè)合適的反射點(diǎn),雙向測(cè)距則解決了這個(gè)問題,雙方進(jìn)行通訊后獲取到了距離信息,且是雙方都可以獲取到測(cè)距信息。
??單邊雙向測(cè)距(SS-TWR,Single Side-TWR)
前文講解了測(cè)距的基本物理原理,這里我們就來講解一下UWB測(cè)距的最基礎(chǔ)的實(shí)現(xiàn)原理,單邊雙向測(cè)距。
SS-TWR原理,如下圖,Device A在其自己時(shí)鐘TA1 時(shí)刻發(fā)起測(cè)距,Device B在其自己時(shí)鐘TB1時(shí)刻收到了Device A發(fā)起的測(cè)距幀,即Tprop1 = (TB1-TA1 ) Device A 于Device B的距離就應(yīng)該是Tprop ?*C(光速)。但是由于Device A 和Device B 時(shí)鐘不同步,所以無法確認(rèn)Tprop1 的值。為了確定Tprop1 的值,Device B在收到Device A發(fā)起的測(cè)距幀后,固定延時(shí)Treply 的時(shí)間回復(fù)Device A,發(fā)射時(shí)間為TB2, Device A在TA2的時(shí)刻收到,即Tprop2 =? ?(TA2-TB2),假設(shè)在這段時(shí)間,Device A設(shè)備Device B的位置沒有發(fā)生過改變。那么理論Tprop1 = Tprop2。為了確認(rèn)Tprop的時(shí)間,在Device A的時(shí)間軸上,從發(fā)送時(shí)刻TA1 到收到Device B 回復(fù)幀的時(shí)刻TA2的耗時(shí)Troud = (TA2-TA1 ),在Device B的時(shí)間軸上,收到Device A 發(fā)起測(cè)距幀的時(shí)刻TB1到自己回復(fù)Device A 的時(shí)刻TB2的耗時(shí)Treply = (TB2-TB1 )。所以Tprop = (Troud - Treply)/2。即距離為Tprop ?*C。
圖6 SS-TWR測(cè)距原理
舉個(gè)例子:
地球和火星的距離。來自地球的老王,打電話給在火星上的老馬并看了現(xiàn)在的時(shí)間12:00:00(時(shí)分秒),老馬接到電話,時(shí)間是18:00:00,過了一會(huì)兒,在18:05:00老馬打了電話給老王,老王在12:13:00接到電話。因?yàn)樗麄兊念l率是一致都是以秒為單位(假設(shè)),通過這些數(shù)據(jù)可以計(jì)算信號(hào)在地球和火星間飛行的時(shí)間,往返的時(shí)間是13-5=8分鐘,(8分鐘/2)*C(光速)即為地球距離火星的距離。
??雙邊雙向測(cè)距(DS-TWR,Double Side - TWR)
其實(shí)雙邊測(cè)距是從單邊測(cè)距擴(kuò)展而來,主要是用于解決測(cè)距雙方時(shí)鐘精度不一致導(dǎo)致的誤差問題。
在SS-TWR的基礎(chǔ)上,由于設(shè)備自身時(shí)鐘,由于溫度以及設(shè)備精度誤差等原因?qū)е碌臅r(shí)鐘偏移,即Treply延時(shí)時(shí)間越長(zhǎng),從而導(dǎo)致計(jì)算距離時(shí)的誤差越大。為了減小以及消除這種誤差,DS-TWR增加反向測(cè)量補(bǔ)償,如下圖所示。使用兩個(gè)往返時(shí)間測(cè)量,降低Treply的延時(shí)帶來的誤差。
即
距離為Tprop ?*C。
圖7 DS-TWR測(cè)距原理
3.2基于測(cè)距的定位方式(三邊定位)
??基于測(cè)距的定位原理
我們已經(jīng)獲知了距離,如果我們想進(jìn)一步知道這個(gè)待定位對(duì)象(未知點(diǎn))在這個(gè)空間的哪個(gè)地方或者在這個(gè)二維平面的哪個(gè)坐標(biāo)點(diǎn),就需要定位解算,從距離轉(zhuǎn)化為坐標(biāo)點(diǎn)必須有三個(gè)已知點(diǎn)以及待定位對(duì)象(未知點(diǎn))與這三點(diǎn)之間的距離,拿到這些數(shù)據(jù)后即可獲知待定位對(duì)象(未知點(diǎn))的坐標(biāo)點(diǎn)。基于測(cè)距的定位原理,其實(shí)從數(shù)學(xué)的角度分析,抽象后只有一種,就是畢達(dá)哥拉斯定理(Pythagorean Theorem)。這位古希臘數(shù)學(xué)家用代數(shù)的方式來描述平面幾何,畢達(dá)哥拉斯定理其實(shí)在中國(guó)有一個(gè)更廣為人知的名字即“勾股定理”。
??三邊定位解算
對(duì)于距離推算坐標(biāo),最簡(jiǎn)單的方式就是畫圓,在理想情況下(三個(gè)圓均相交),三個(gè)圓會(huì)相交于一點(diǎn),公式如下:
已知三點(diǎn)位置 (x1, y1), (x2, y2), (x3, y3)
已知未知點(diǎn) (x0, y0) 到三點(diǎn)距離 d1, d2, d3
以 d1, d2, d3 為半徑作三個(gè)圓,根據(jù)畢達(dá)哥拉斯定理,得出交點(diǎn)即未知點(diǎn)的位置計(jì)算公式:
但是對(duì)于距離計(jì)算,是不存在絕對(duì)理想的情況的,很大概率是三個(gè)圓相交甚至相離的情況下,計(jì)算出估計(jì)出一個(gè)近似值。
圖8 三角定位原理
當(dāng) z = 0 時(shí), 即為三個(gè)圓在水平面上相交為一點(diǎn),首先解出 x:
將公式二變形,將公式一的 z^2 代入公式二,再代入公式三得到 y 的計(jì)算公式:
當(dāng)然以上只是一個(gè)基本的公式推導(dǎo),有助于大家進(jìn)行理解,但是實(shí)際使用時(shí)我們不可能去不斷進(jìn)行坐標(biāo)的轉(zhuǎn)化然后解算,這樣的處理過于浪費(fèi)時(shí)間,代碼也是很難實(shí)現(xiàn)。這時(shí)我們只需要引入線性代數(shù)將矩陣運(yùn)算帶入其中就可以簡(jiǎn)單快速的得到通用解答式。
基本公式組保持不變
進(jìn)行拆解銷項(xiàng)
經(jīng)過線性代數(shù)矩陣的分割后
若我們令
為A矩陣
為B矩陣
那么待求未知點(diǎn)坐標(biāo)(X,Y)為
3.3基于到達(dá)時(shí)間差的定位方式(TDOA)
??TDOA
TDOA(Time Difference Of Arrival,到達(dá)時(shí)間差),是基于各參考基站(以下簡(jiǎn)稱Anc)與待定位對(duì)象(以下簡(jiǎn)稱Tag)之間的距離之差通過求解非線性雙曲方程組來推斷待定位對(duì)象相對(duì)于各參考基站的相對(duì)位置的定位方法。當(dāng)基站之間的時(shí)間是完全同步的情況下,且晶振在一段時(shí)間內(nèi)的誤差極小(ppm的值極?。敲磿r(shí)間差值就是距離差值,原因是電磁波的傳播速度是固定的。當(dāng)Tag端發(fā)射一個(gè)信號(hào)到達(dá)幾個(gè)Anc端后,只需要測(cè)量Tag發(fā)出的信號(hào)到達(dá)各Anc的到達(dá)時(shí)間之差即可得到對(duì)應(yīng)的距離之差。
??雙曲定位解算
使用TDOA的前提就是各個(gè)基站有一個(gè)很精準(zhǔn)的時(shí)間同步,這樣才能保證Tag端發(fā)送出來的時(shí)間到達(dá)各個(gè)基站后有一個(gè)很高精度的時(shí)間差值。那么時(shí)間差值又如何轉(zhuǎn)化為距離差值后又轉(zhuǎn)化為坐標(biāo)點(diǎn)呢?如果說測(cè)距后的三邊定位是來解三個(gè)圓的相切問題,那么TDOA就是來解非線性雙曲方程組。在TDOA定位系統(tǒng)中,進(jìn)行定位解算時(shí),首先需要根據(jù)到達(dá)時(shí)間差建立雙曲線方程組:
Tag坐標(biāo):(X,Y)
各Anc坐標(biāo):(Xi,Xi),i = 1,2,3
各Anc到Tag的距離記為:
各Anc與A1到Tag的距離差記為:
那么這時(shí)候方程組的建立如下
求解非線性方程組的第一步通常都是要做線性化處理。
一種常見的線性化處理是進(jìn)行泰勒級(jí)數(shù)展開并保留前兩項(xiàng),這里就不詳細(xì)展開說明了,整體求解的圖示如下:
圖9 雙曲定位原理
AOA(Angle of Arrival,到達(dá)角度測(cè)距),是基于信號(hào)到達(dá)角度的定位算法是一種典型的基于測(cè)距的定位算法,通過某些硬件設(shè)備感知發(fā)射節(jié)點(diǎn)信號(hào)的到達(dá)方向,計(jì)算接收節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的相對(duì)方位或角度,然后再利用三角測(cè)量法或其他方式計(jì)算出未知節(jié)點(diǎn)的位置。
??PDOA
PDOA(Phase Diference of Arrival,信號(hào)到達(dá)相位差),是通過測(cè)量相位差求出信號(hào)往返的傳播時(shí)間來計(jì)算往返距離。本質(zhì)上PDOA是AOA定位算法的一種延申。
??相位差定位解算
其中α代表兩根天線接收的信號(hào)中的First-Path 的到達(dá)相位之差(Phase Difference of Arrival),這也是PDOA 名字的來由。
圖10 相位差定位原理