,,
(華中師范大學(xué) 物理科學(xué)與技術(shù)學(xué)院,武漢 430079)
在室內(nèi)停車場(chǎng),車速一般被限制在5 km/h以內(nèi),即不超過1.39 m/s。所以室內(nèi)停車場(chǎng)車輛定位系統(tǒng)的定位精度應(yīng)該達(dá)到厘米級(jí)別,才能發(fā)揮良好的性能。目前,在關(guān)于室內(nèi)停車場(chǎng)車輛定位系統(tǒng)的研究中,絕大部分研究使用的技術(shù)為:RFID、藍(lán)牙、WiFi、ZigBee、CSS和圖像處理[1-4]等。這些技術(shù)存在精度低或?qū)崿F(xiàn)復(fù)雜等問題。然而,超寬帶(Ultra Wide Band, UWB)技術(shù)利用納秒至微秒級(jí)別的脈沖傳輸數(shù)據(jù),其時(shí)間分辨率高,在復(fù)雜多徑環(huán)境中,可以表現(xiàn)出厘米級(jí)定位精度。因此,本文將UWB技術(shù)運(yùn)用至室內(nèi)停車場(chǎng)車輛定位,設(shè)計(jì)并實(shí)現(xiàn)一套UWB定位系統(tǒng)。
由于UWB技術(shù)的時(shí)間分辨率高,所以它非常適用于基于信號(hào)到達(dá)時(shí)間測(cè)距的定位系統(tǒng)[5]?;诘竭_(dá)時(shí)間的測(cè)距方法分為到達(dá)時(shí)間(Time Of Arrival, TOA)和到達(dá)時(shí)間差(Time Difference Of Arrival, TDOA)。其中,TDOA要求所有錨節(jié)點(diǎn)之間時(shí)間同步,時(shí)間同步需要依靠復(fù)雜的同步機(jī)制或者魯棒的基礎(chǔ)設(shè)施來實(shí)現(xiàn),這將導(dǎo)致網(wǎng)絡(luò)通信協(xié)議復(fù)雜或者系統(tǒng)成本增大。因此,本文將采用TOA測(cè)距方式。然而,每個(gè)器件或多或少存在時(shí)鐘漂移,時(shí)鐘漂移會(huì)給基于TOA的測(cè)距結(jié)果帶來誤差。為了減少時(shí)鐘漂移造成的測(cè)距誤差,SSA-TWR、 SDS-TWR等多種基于TOA的測(cè)距機(jī)制被提出[5]。通過研究比較,本文最終選用SDS-TWR測(cè)距機(jī)制,并使用優(yōu)化算法計(jì)算距離。
在TOA測(cè)距的基礎(chǔ)上,本文采用約束線性最小二乘算法解算標(biāo)簽位置,該算法在一次最小二乘估計(jì)的基礎(chǔ)上,利用其結(jié)果包含的估計(jì)誤差對(duì)標(biāo)簽位置進(jìn)行二次估計(jì),從而減小定位結(jié)果的誤差。最后通過多項(xiàng)實(shí)驗(yàn),測(cè)試本系統(tǒng)的定位性能。
定位系統(tǒng)框架如圖1所示。系統(tǒng)包含移動(dòng)標(biāo)簽、錨節(jié)點(diǎn)和位置解算平臺(tái)三部分。本文研究二維定位(實(shí)際上不是二維問題,錨節(jié)點(diǎn)位置較高,標(biāo)簽在車上,位置較低, 不在一個(gè)平面),標(biāo)簽與錨節(jié)點(diǎn)位于同一個(gè)二維平面,錨節(jié)點(diǎn)M1和M2所在的直線與M2和M3所在的直線垂直。標(biāo)簽主動(dòng)向M1、M2和M3依次發(fā)起測(cè)距。錨節(jié)點(diǎn)M1充當(dāng)網(wǎng)關(guān),標(biāo)簽與三個(gè)錨節(jié)點(diǎn)之間的距離測(cè)量值匯集至錨節(jié)點(diǎn)M1,由M1通過串口發(fā)送至PC端的位置解算平臺(tái)。
圖1 系統(tǒng)框架示意圖
系統(tǒng)采用時(shí)分復(fù)用(TDM)技術(shù)實(shí)現(xiàn)信道共享。根據(jù)信道配置決定的單個(gè)標(biāo)簽實(shí)現(xiàn)定位所需的最短時(shí)長,系統(tǒng)將單個(gè)標(biāo)簽的位置刷新周期劃分成多個(gè)時(shí)隙。如圖2所示,每個(gè)標(biāo)簽被隨機(jī)分配至特定時(shí)隙。網(wǎng)關(guān)錨節(jié)點(diǎn)M1負(fù)責(zé)監(jiān)管和保證每個(gè)標(biāo)簽均處于正確的時(shí)隙,以免標(biāo)簽之間發(fā)生沖突。當(dāng)網(wǎng)關(guān)節(jié)點(diǎn)接收到來自標(biāo)簽的請(qǐng)求幀,它將核對(duì)來自該標(biāo)簽的請(qǐng)求是否在正確的時(shí)隙中被發(fā)送。并且,在網(wǎng)關(guān)向標(biāo)簽發(fā)送的回復(fù)幀中包含該標(biāo)簽下次發(fā)起定位請(qǐng)求的時(shí)間。標(biāo)簽在正確的時(shí)隙中依次與錨節(jié)點(diǎn)M1、M2和M3進(jìn)行測(cè)距,完成后進(jìn)入休眠,并在自己的下一個(gè)時(shí)隙到來時(shí)再次被喚醒,與錨節(jié)點(diǎn)進(jìn)行測(cè)距。
圖2 多標(biāo)簽的TDM信道共享機(jī)制
標(biāo)簽和錨節(jié)點(diǎn)的硬件結(jié)構(gòu)框圖如圖3所示。DW1000是DecaWave公司生產(chǎn)的一款UWB無線收發(fā)芯片,支持TOA精確測(cè)距和定位,調(diào)制方式為BPM加BPSK。主控制器STM32F105通過SPI讀寫DW1000,實(shí)現(xiàn)數(shù)據(jù)幀的收發(fā)和獲取數(shù)據(jù)幀發(fā)送或接收的時(shí)間戳。標(biāo)簽采用電池供電,錨節(jié)點(diǎn)采用USB或者電池供電。錨節(jié)點(diǎn)包含串口轉(zhuǎn)USB模塊,可將距離測(cè)量值通過該模塊上傳至PC端的位置解算平臺(tái)。
圖3 標(biāo)簽和錨節(jié)點(diǎn)的硬件框圖
嵌入式端的程序設(shè)計(jì)按設(shè)備角色分為三部分。如圖4所示,標(biāo)簽進(jìn)入定位網(wǎng)絡(luò)被分配地址和時(shí)隙后開始休眠,只在自己的定位時(shí)隙到來時(shí)被喚醒,被喚醒后主動(dòng)向三個(gè)錨節(jié)點(diǎn)依次發(fā)起測(cè)距,測(cè)距完成后進(jìn)入休眠狀態(tài),等待下一次被喚醒。如圖5所示,當(dāng)錨節(jié)點(diǎn)監(jiān)聽到來自標(biāo)簽的測(cè)距請(qǐng)求,立即與標(biāo)簽完成測(cè)距交互,并在本地計(jì)算兩者之間的距離值,最后將距離測(cè)量值發(fā)送至網(wǎng)關(guān)節(jié)點(diǎn)。如圖6所示,網(wǎng)關(guān)節(jié)點(diǎn)既要與標(biāo)簽節(jié)點(diǎn)完成測(cè)距,又要將所有錨節(jié)點(diǎn)和標(biāo)簽之間的距離信息上傳至PC端位置解算平臺(tái)。
PC端位置解算平臺(tái)的主程序流程圖如圖7所示。位置解算平臺(tái)成功接收來自網(wǎng)關(guān)節(jié)點(diǎn)的數(shù)據(jù)幀后,根據(jù)協(xié)議解析數(shù)據(jù)幀并存儲(chǔ)有用信息,利用定位算法函數(shù)解算標(biāo)簽相對(duì)于各參考錨節(jié)點(diǎn)的位置坐標(biāo),并在UI界面上刷新此次定位結(jié)果。
本系統(tǒng)采用基于到達(dá)時(shí)間的測(cè)距方法,根據(jù)DW1000記錄的信號(hào)離開或到達(dá)射頻收發(fā)器的時(shí)間戳來計(jì)算信號(hào)飛行時(shí)間(Time Of Flight, TOF),信號(hào)飛行時(shí)間乘以光速得到兩節(jié)點(diǎn)之間的距離。時(shí)鐘漂移、頻率漂移、接收信號(hào)電平和天線延遲均是測(cè)距誤差的來源。本文主要討論如何抑制時(shí)鐘漂移和修正天線延遲對(duì)測(cè)距結(jié)果的影響,從而減小測(cè)距誤差。
圖4 標(biāo)簽節(jié)點(diǎn)程序流程圖
圖5 錨節(jié)點(diǎn)程序流程圖
圖6 網(wǎng)關(guān)節(jié)點(diǎn)程序流程圖
圖7 PC端位置解算平臺(tái)的主程序流程圖
由于設(shè)備時(shí)鐘的實(shí)際頻率相對(duì)于標(biāo)稱頻率存在誤差,所以設(shè)備的時(shí)鐘發(fā)生漂移。假設(shè)在短時(shí)間內(nèi),設(shè)備的時(shí)鐘漂移不變,并且不考慮量化誤差,那么,設(shè)備的本地時(shí)間tlocal與真實(shí)時(shí)間ttrue之間的關(guān)系模型[5-8]為:
tlocal=(1+δ)ttrue+μ
(1)
其中,δ是實(shí)際頻率相對(duì)于標(biāo)稱頻率的時(shí)鐘漂移系數(shù),μ是時(shí)鐘的初始偏移量。
現(xiàn)有的多種基于到達(dá)時(shí)間的測(cè)距機(jī)制和算法受時(shí)鐘漂移影響的程度不同,下面將對(duì)比時(shí)鐘漂移給圖8中三種典型的測(cè)距機(jī)制帶來的誤差大小,其中,對(duì)圖8(b)所示的SDS-TWR測(cè)距機(jī)制討論兩種算法,最終從4種算法中選定一款算法用于本系統(tǒng)測(cè)距。
圖8 三種典型的基于TOF的測(cè)距機(jī)制
如圖8(a)所示,設(shè)備A與設(shè)備B進(jìn)行基礎(chǔ)的雙向測(cè)距(Two Way Ranging, TWR)。TOF的真實(shí)值TOFtrue與測(cè)量值TOFtest分別為:
(3)
由式(1)、(2)和(3)可得,
(4)
errorTWR=TOFtest-TOFtrue
(5)
在TWR的基礎(chǔ)上,被普遍運(yùn)用的測(cè)距機(jī)制是雙邊雙向?qū)ΨQ測(cè)距(Symmetric Double-sided Two Way Ranging, SDS-TWR)。SDS-TWR的測(cè)距交互過程如圖8(b)所示,在設(shè)備A接收到來自設(shè)備B的Response之后,還需向設(shè)備B發(fā)送Final幀。SDS-TWR機(jī)制的兩種TOF算法如式(6)和式(7)所示:
(6)
TOFSDS-TWR_ADVANCED=
(7)
其中,tRoundA=tRR-tSP,tRoundB=tRF-tSR,tReplyA=tSF-tRR,tReplyB=tSR-tRP。
由式(1)和式(6)、式(1)和式(7)分別推導(dǎo)出
(9)
將式(8)和式(9)均減去TOFtrue,得
(11)
同樣可以推導(dǎo)出時(shí)鐘漂移給圖8(c)中SSA-TWR測(cè)距機(jī)制帶來的TOF誤差為:
errorSSA-TWR=δATOFtrue
(12)
DW1000射頻收發(fā)器遵循的物理層協(xié)議是IEEE802.15.4,物理層幀結(jié)構(gòu)如下所示:
PreambleSFDPHRData
物理層幀包含前導(dǎo)碼(Preamble)、幀界定符(SFD)、幀頭(PHR)和數(shù)據(jù)(Data)4部分。射頻收發(fā)器的內(nèi)部結(jié)構(gòu)如圖11所示,其由前端模擬部分和后端數(shù)字部分組成。根據(jù)IEEE802.15.4協(xié)議,在射頻收發(fā)器發(fā)送或接收一幀測(cè)距消息時(shí),數(shù)字電路將PHR的第一個(gè)bit離開或到達(dá)數(shù)字電路的時(shí)刻作為整幀的發(fā)送或接收時(shí)間戳,也就是說,DW1000射頻收發(fā)器測(cè)得的時(shí)間戳并不是信號(hào)離開或到達(dá)天線的時(shí)刻,其中包含天線延遲。為了獲得信號(hào)離開或到達(dá)天線的時(shí)刻,需要對(duì)射頻收發(fā)器測(cè)得的時(shí)間戳進(jìn)行天線延遲校準(zhǔn)。由圖11可知,信號(hào)離開和到達(dá)天線的時(shí)刻的計(jì)算公式分別為式(13)和式(14):
tTX=tMSTX+tADTX
(13)
tRX=tMSRX+tADRX
(14)
其中,tTX、tRX分別是信號(hào)離開和到達(dá)天線的時(shí)刻;tMSTX、tMSRX分別是射頻收發(fā)器測(cè)得的信號(hào)發(fā)送和接收時(shí)間戳;tADTX、tADRX分別是發(fā)送和接收時(shí)的天線延遲,它們的取值依靠實(shí)驗(yàn)經(jīng)驗(yàn)獲得。DW1000射頻收發(fā)器
圖9 δA給4種算法的測(cè)距結(jié)果帶來的誤差大小對(duì)比
圖10 δB給4種算法的測(cè)距結(jié)果帶來的誤差大小對(duì)比
的驅(qū)動(dòng)程序?yàn)樘炀€延遲校準(zhǔn)提供了接口,開發(fā)者向DW1000的寄存器寫入天線延遲校準(zhǔn)參數(shù),DW1000的數(shù)字電路在測(cè)得幀發(fā)送或接收時(shí)間戳之后自動(dòng)校準(zhǔn)天線延遲,并修正時(shí)間戳,最后將經(jīng)過修正的時(shí)間戳寫入寄存器,主控制器通過SPI讀取寄存器即可獲得信號(hào)離開或到達(dá)天線的時(shí)刻。經(jīng)過天線延遲校準(zhǔn)后,距離測(cè)量值更接近真實(shí)值。
圖11 DW1000射頻收發(fā)器示意圖
ti=(di+ni)/ci=1,2,3
(15)
(16)
i=1,2,3
(17)
Az=b+α
(18)
于是,可以求得z為
z=(ATWαA)-1ATWαb
(19)
其中,
(20)
以上求得的z中包含估計(jì)誤差Δz,其值和其方差為:
Δz=(ATWαA)-1ATWαα
(21)
cov(Δz)=(ATWαA)-1
(22)
利用向量z=[xyx2+y2]T元素間的相互約束關(guān)系進(jìn)一步精確估計(jì)標(biāo)簽坐標(biāo)。假設(shè)標(biāo)簽坐標(biāo)的精確估計(jì)值為[x′y′]T,結(jié)合z和Δz可得
(23)
Gu=h+β
(24)
于是,求得u為
u=(GTWβG)-1GTWβh
(25)
其中,
(26)
因此,標(biāo)簽坐標(biāo)的精確估計(jì)值為
(28)
為測(cè)試本系統(tǒng)的性能,本文在如圖12的室內(nèi)停車場(chǎng)開展測(cè)距實(shí)驗(yàn)和定位實(shí)驗(yàn)。該室內(nèi)停車場(chǎng)的每個(gè)車位長4.75 m,寬2.40 m,兩排車位之間的距離為5.00 m。本文采用均方根誤差(Root Mean Square Error, RMSE)來評(píng)價(jià)系統(tǒng)的測(cè)距精度和定位精度。
圖12 實(shí)驗(yàn)場(chǎng)地布局圖
采用定點(diǎn)測(cè)距的方式,分別測(cè)量圖12中AB、AC、AD、CE 的長度,每個(gè)距離測(cè)試200次。表1為每個(gè)距離的200個(gè)測(cè)量值的均值、均值相對(duì)于真實(shí)值的誤差以及RMSE。從表1可以看出,本系統(tǒng)的距離測(cè)量結(jié)果與真實(shí)值之間的誤差小于4 cm, RMSE也小于4 cm,即測(cè)距精度均不超過4 cm。
表1 定點(diǎn)測(cè)距結(jié)果統(tǒng)計(jì)表 (單位:m)
三個(gè)錨節(jié)點(diǎn)M0、M1和M2依照?qǐng)D12所示的位置被部署,分別以M0M1、M1M2所在的直線為X軸、Y軸,則M0的坐標(biāo)為(12.43, 0, 0),M1的坐標(biāo)為(0, 0, 0),M2的坐標(biāo)為(0, 14.5, 0)。定位實(shí)驗(yàn)分為定點(diǎn)定位和移動(dòng)跟蹤兩部分。首先,對(duì)圖12中的點(diǎn)B、C、D、F、G進(jìn)行定點(diǎn)定位,每個(gè)點(diǎn)采集200個(gè)定位結(jié)果,它們的均值、RMSE如表2所列。
表2 定點(diǎn)定位結(jié)果統(tǒng)計(jì)表 (單位:m)
從表2可知,定位的測(cè)量值均值相對(duì)于真實(shí)值的誤差不超過20 cm,由RMSE表征的定位精度也不超過20 cm。然后,讓標(biāo)簽節(jié)點(diǎn)沿著圖12中的粗線條軌跡運(yùn)動(dòng),記錄沿途所有定位結(jié)果,得到圖13所示的定位軌跡??梢钥闯觯ㄎ卉壽E能夠較準(zhǔn)確地反映標(biāo)簽的真實(shí)運(yùn)動(dòng)軌跡,但存在一些偏差較大的點(diǎn),定位結(jié)果偏差較大的原因可能是標(biāo)簽在移動(dòng)過程中,其與錨節(jié)點(diǎn)之間的測(cè)距信號(hào)不穩(wěn)定,造成測(cè)距結(jié)果偏差較大,使得定位結(jié)果偏離軌跡。總體而言,本系統(tǒng)具有良好的跟蹤效果。
圖13 定位軌跡與真實(shí)軌跡對(duì)比圖
本文設(shè)計(jì)并實(shí)現(xiàn)了一套UWB室內(nèi)停車場(chǎng)定位系統(tǒng),完成UWB定位系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì)。分析測(cè)距誤差來源,并從時(shí)鐘漂移和天線延遲校準(zhǔn)角度采取措施,減小測(cè)距誤差。運(yùn)用約束線性最小二乘算法解算標(biāo)簽位置。測(cè)試得到本系統(tǒng)的定位精度達(dá)到厘米級(jí)別,能夠滿足室內(nèi)停車場(chǎng)車輛定位的需求。
后續(xù)通過更多實(shí)驗(yàn)更精準(zhǔn)地調(diào)整天線延遲參數(shù),能夠進(jìn)一步減小測(cè)距誤差。并且,將原始測(cè)距結(jié)果進(jìn)行預(yù)處理后再進(jìn)行定位,能夠有效防止定位結(jié)果偏差較大的突發(fā)問題。此外,由于汽車行使過程具有位置連續(xù)的特點(diǎn),后續(xù)
[1] 宋英娟.智能停車場(chǎng)車輛RFID定位關(guān)鍵技術(shù)研究與設(shè)計(jì)[D].南京:南京郵電大學(xué),2014.
[2] 謝中嘯,韓圣偉.藍(lán)牙4.1基站組網(wǎng)的停車場(chǎng)定位系統(tǒng)設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2016(3):16-18.
[3] 黃旭,范婧,吳茂念,等.基于Wi-Fi指紋定位技術(shù)的智能停車場(chǎng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)科學(xué),2016,43(s1).
[4] 錢承山,蔣奇峰,茅韻怡,等.基于物聯(lián)網(wǎng)技術(shù)的智能停車場(chǎng)系統(tǒng)的設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2016,6(7):26-27.
[5] Mikhaylov K,Tikanm?ki A,Pet?j?j?rvi J,et al.On the seletion of protocol and parameters for UWB-based wireless indoors localization[C]//International Symposium on Medical Information and Communication Technology.IEEE,2016:1-5.
[6] Dardari D,Conti A,Ferner U,et al.Ranging With Ultrawide Bandwidth Signals in Multipath Environments[J].Proceedings of the IEEE,2009,97(2):404-426.
[7] Sivrikaya F,Yener B.Time synchronization in sensor networks: a survey[J].Network IEEE,2004,18(4):45-50.
[8] 周賢偉,韋煒,覃伯平.無線傳感器網(wǎng)絡(luò)的時(shí)間同步算法研究[J].傳感技術(shù)學(xué)報(bào),2006,19(1):20-25.
[9] 袁鑫,吳曉平,王國英.線性最小二乘法的RSSI定位精確計(jì)算方法[J].傳感技術(shù)學(xué)報(bào),2014(10):1412-1417.
[10] W Wang,G Wang,J Zhang,et al.Robust Weighted Least Squares Method for TOA-Based Localization Under Mixed LOS/NLOS Conditions[J].IEEE Communications Letters,2017,21(10):2226-2229.
[11] 谷紅亮,史元春,申瑞民,等.一種用于智能空間的多目標(biāo)跟蹤室內(nèi)定位系統(tǒng)[J].計(jì)算機(jī)學(xué)報(bào),2007,30(9):1603-1611.
陳旻哲(碩士研究生),主要研究方向?yàn)榍度胧綉?yīng)用開發(fā);熊誠(碩士研究生),主要研究方向?yàn)榍度胧较到y(tǒng);劉守印(教授),主要研究方向?yàn)橥ㄐ畔到y(tǒng)及物聯(lián)網(wǎng)。
單片機(jī)與嵌入式系統(tǒng)應(yīng)用2018年4期