李 斌,周帥宇,陳 潔,袁 浩
(上海大學(xué) 機(jī)電工程與自動(dòng)化學(xué)院,上海 200444)
近年來(lái),隨著體育產(chǎn)業(yè)的快速發(fā)展,我國(guó)運(yùn)動(dòng)員在國(guó)際賽場(chǎng)上與其他國(guó)家高水平運(yùn)動(dòng)員相互博弈的過(guò)程中,逐漸意識(shí)到科學(xué)的訓(xùn)練方式和精密的訓(xùn)練分析手段的重要性。尤其在田徑項(xiàng)目中運(yùn)動(dòng)員的步態(tài)、速度、動(dòng)作等都極大地影響著最終的比賽成績(jī),所以如果能實(shí)現(xiàn)對(duì)運(yùn)動(dòng)員的精確定位,就能幫助運(yùn)動(dòng)員和教練通過(guò)分析定位數(shù)據(jù)有針對(duì)性地安排訓(xùn)練任務(wù),提高訓(xùn)練效率,有效提高最終的比賽成績(jī)。
超寬帶(ultra-wideband,UWB)技術(shù)是一種新型的無(wú)線通信技術(shù),美國(guó)聯(lián)邦通信委員會(huì)規(guī)定了相對(duì)帶寬不小于20%或者絕對(duì)帶寬不小于500 MHz 的信號(hào)屬于UWB 的范疇[1],由于UWB 的穿透能力強(qiáng)、抗多徑效應(yīng)能力強(qiáng)和成本低等特點(diǎn),目前多用于高精度定位。目前UWB 定位技術(shù)一般用于室內(nèi)范圍的精確定位,室外定位一般使用GPS 定位[2]。對(duì)于本文的應(yīng)用場(chǎng)景—田徑運(yùn)動(dòng)的人體定位,要求高刷新率、高精度,GPS 顯然達(dá)不到這樣的要求。所以本文設(shè)計(jì)了一套基于UWB 定位的室外定位系統(tǒng),該系統(tǒng)能在室外達(dá)到對(duì)人體的高刷新率、高精度的定位要求。
UWB 本質(zhì)上是一種電磁波信號(hào),它以光速在空氣中傳播,使用2 個(gè)支持UWB 的設(shè)備即可完成測(cè)距,具體過(guò)程是使用一個(gè)發(fā)射機(jī)A 發(fā)射UWB 信號(hào),另一個(gè)設(shè)備B 作為接收機(jī)接收UWB 信號(hào),發(fā)射機(jī)A 和接收機(jī)B 分別記錄發(fā)送或接收的時(shí)間,根據(jù)2個(gè)時(shí)間差即可得到UWB 信號(hào)在空間中傳播的時(shí)間,根據(jù)該時(shí)間與電磁波傳播速度的乘積即可得到2 個(gè)設(shè)備之間的距離[3]。
這種單邊測(cè)距(one-way ranging,OWR)的方法需要發(fā)送和接收設(shè)備的時(shí)間同步,對(duì)設(shè)備的時(shí)鐘同步性要求很高。使用雙向測(cè)距算法(two-way ranging,TWR)可以減小由于定位系統(tǒng)時(shí)間不同步所導(dǎo)致的誤差。雙向測(cè)距算法包含單邊雙向測(cè)距算法(single sided two-way ranging,SS-TWR)和雙向雙邊測(cè)距算法(double sided two-way,DS-TWR)等[4]。
單邊雙向測(cè)距算法是在單向測(cè)距的基礎(chǔ)上改進(jìn)的,增加了一次B 向A 發(fā)送的流程,如圖1 為單邊雙向測(cè)距算法的原理圖。
圖1 單邊雙向測(cè)距算法原理圖Fig.1 Schematic diagram of single sided two way ranging algorithm
A 在時(shí)間戳τATx發(fā)送信號(hào),B 在時(shí) 間戳τBRx時(shí)收到A 的信號(hào)后,在短暫延時(shí)后向設(shè)備A 發(fā)送信號(hào),記錄此時(shí)的時(shí)間戳τBTx,A 收到信號(hào)時(shí)記錄時(shí)間戳τARx,此時(shí)A 和B 設(shè)備中分別記錄了發(fā)送和接收的時(shí)間戳,可以由此計(jì)算B 設(shè)備在收到信號(hào)到發(fā)送信號(hào)的延時(shí)為
從測(cè)距開(kāi)始到結(jié)束的時(shí)間為
由測(cè)距總時(shí)間troundA和發(fā)送延時(shí)時(shí)間treplyB可以得到UWB 信號(hào)的單次飛行時(shí)間(time of fly,TOF)為
得到Ttof即可計(jì)算出設(shè)備A 和設(shè)備B 的距離。
雙邊雙向測(cè)距在單邊雙向測(cè)距的基礎(chǔ)上,又增加了一次向B 設(shè)備發(fā)送信號(hào)的過(guò)程,可以減小時(shí)鐘漂移對(duì)延遲精度的影響,但同時(shí)增加了每次測(cè)距的時(shí)間[5]。為增加測(cè)距的刷新率,本系統(tǒng)選擇單邊雙向測(cè)距。
在無(wú)線定位技術(shù)中,通常將已知空間位置的設(shè)備稱(chēng)為基站,將待定位設(shè)備稱(chēng)為標(biāo)簽。由幾何知識(shí)可知最少需要3 個(gè)圓可以確定平面上的1 個(gè)點(diǎn),最少需要4 個(gè)球可以確定空間中的1 個(gè)點(diǎn)。因此對(duì)于二維空間定位,需要3 個(gè)基站確定1 個(gè)標(biāo)簽的位置。由于測(cè)距過(guò)程中存在誤差,所以對(duì)于基于到達(dá)時(shí)間或者雙向測(cè)距的測(cè)距方法獲取到的測(cè)距信息,可以使用最小二乘法估算UWB 設(shè)備的位置信息[6]。以二維定位為例,如圖2 所示Bi(i=1,2,3)分別為3 個(gè)位置信息已知的UWB 設(shè)備,即基站,將3 個(gè)基站的坐標(biāo)記為(xi,yi)(i=1,2,3),L 為需要定位的UWB 設(shè)備,即標(biāo)簽,將標(biāo)簽的坐標(biāo)記為(x,y)。
圖2 最小二乘法定位示意圖Fig.2 Schematic diagram of the least squares method for positioning
由測(cè)距算法得到的基站與標(biāo)簽的距離分別為ri(i=1,2,3),則可以列出以下方程組:
將2 個(gè)等式分別與第三個(gè)等式做差可以得到:
其中A、X、b分別為
由于測(cè)距過(guò)程中存在誤差,誤差可以表示為
為了使得誤差最小,令f(X)=(b-AX)T(b-AX),則X=argmin f(X),解得:
至此求得標(biāo)簽的估計(jì)位置。
常用的定位精度有均方根誤差、累計(jì)分布函數(shù)、平均誤差、克拉美羅下界等標(biāo)準(zhǔn)[7]。本文主要使用均方根誤差作為評(píng)價(jià)標(biāo)準(zhǔn)。
均方誤差(mean squared error,MSE)是指測(cè)量值與真實(shí)值之差的平方的數(shù)學(xué)期望值,如式(11)所示:
均方根誤差(root mean square error,RMSE)是均方誤差的算數(shù)平方根,如式(12)所示:
DW1000 模塊是DecaWave 公司的一款符合IEEE超寬帶標(biāo)準(zhǔn)的無(wú)線收發(fā)模塊。它由DW1000 芯片、天線、平衡-不平衡電路和晶振電路組成,它可以實(shí)現(xiàn)高速的數(shù)據(jù)傳輸,精確記錄發(fā)送與接收時(shí)間的時(shí)間戳,使用SPI 通信方式將UWB 通信數(shù)據(jù)發(fā)送給主控芯片[8]。除此之外,DW1000 模塊封裝面積小,方便應(yīng)用于可攜帶設(shè)備上,因此選擇DW1000 模塊作為設(shè)備的UWB 通信模塊。
HC-05 模塊是一款高性能的主從一體化藍(lán)牙串口模塊,可以通過(guò)指令設(shè)置波特率與工作模式,使用和調(diào)試簡(jiǎn)單方便,適合短距離的數(shù)據(jù)傳輸。UWB設(shè)備在完成一輪測(cè)距后需要將測(cè)距信息發(fā)送給上位機(jī)計(jì)算定位信息,本系統(tǒng)使用HC-05 藍(lán)牙模塊完成測(cè)距信息的發(fā)送與接收,圖3 所示為藍(lán)牙模塊的通信示意圖。
圖3 藍(lán)牙模塊通信示意圖Fig.3 Bluetooth module communication diagram
STM32F103C8T6 是ST 公司推出的基于Cortex-M3 內(nèi)核的32 位微控制器,包含多個(gè)定時(shí)器,外部時(shí)鐘最高倍頻可達(dá)72 MHz,支持USART、SPI、CAN等多種通信方式,本系統(tǒng)的UWB 硬件設(shè)備使用STM32-F103C8T6 作為主控芯片。如圖4 為基于STM32F103-C8T6 的系統(tǒng)結(jié)構(gòu)圖。主控芯片使用SPI 方式與DW1000 進(jìn)行通信,獲取時(shí)間戳、隊(duì)列號(hào)等信息,通過(guò)串口將計(jì)算出的距離信息發(fā)送給藍(lán)牙模塊,藍(lán)牙模塊將信息發(fā)送給上位機(jī)。
圖4 系統(tǒng)結(jié)構(gòu)圖Fig.4 System structure diagram
在前文已經(jīng)介紹了該系統(tǒng)的測(cè)距與定位算法以及硬件設(shè)計(jì)。本節(jié)對(duì)定位系統(tǒng)進(jìn)行驗(yàn)證,分別測(cè)試測(cè)距精度與二維空間的定位精度。
為了后續(xù)分析定位算法的估計(jì)效果,需要先對(duì)測(cè)距精度進(jìn)行驗(yàn)證,首先設(shè)置2 個(gè)UWB 設(shè)備的DW1000 的關(guān)鍵參數(shù)一致,包括UWB 信道、脈沖重復(fù)頻率、數(shù)據(jù)速率測(cè)距頻率等[9],如表1 所示。
表1 DW1000 關(guān)鍵參數(shù)設(shè)置Tab.1 DW1000 key parameter settings
其中前導(dǎo)碼是信號(hào)結(jié)構(gòu)的重要部分,其主要目的是幫助接收器進(jìn)行時(shí)間和頻率同步,以及無(wú)線信道估計(jì)。脈沖重復(fù)頻率是發(fā)射脈沖或脈沖組的速率[10]。
本次測(cè)距實(shí)驗(yàn)使用2 個(gè)UWB 設(shè)備和1 對(duì)藍(lán)牙模塊,實(shí)驗(yàn)場(chǎng)地選擇空曠的室外環(huán)境,使用2 個(gè)支架分別固定2 個(gè)UWB 設(shè)備,調(diào)整支架高度使得2個(gè)UWB 設(shè)備的天線高度一致,保持一個(gè)UWB 設(shè)備的位置不變,沿著一條直線移動(dòng)另一個(gè)UWB 設(shè)備的位置,每次移動(dòng)1 m,每次移動(dòng)位置后記錄測(cè)距信息,實(shí)驗(yàn)記錄了1~9 m 的測(cè)距數(shù)據(jù)。取每次測(cè)距的1000 個(gè)數(shù)據(jù)進(jìn)行分析,如圖5 所示分別為3 m、5 m、7 m 的測(cè)距數(shù)據(jù)。
圖5 測(cè)距數(shù)據(jù)Fig.5 Ranging data
由圖5 可以看出,UWB 測(cè)距數(shù)據(jù)在均方根誤差上下浮動(dòng),且均方根誤差與實(shí)際距離存在差值,可知UWB 測(cè)距數(shù)據(jù)存在隨機(jī)誤差和系統(tǒng)誤差,隨機(jī)誤差可能受DW1000 的時(shí)鐘漂移影響,DW1000 的外部晶振可能由于環(huán)境溫度和工藝差異等因素的影響導(dǎo)致UWB 設(shè)備的時(shí)鐘頻率有些許不同,微小的時(shí)鐘漂移會(huì)給測(cè)距結(jié)果帶來(lái)較大的誤差[11],系統(tǒng)誤差受到天線延時(shí)影響。除此之外,隨著距離的增加,異常數(shù)據(jù)逐漸增加,這是由于在數(shù)據(jù)傳輸速率較高時(shí),UWB 信號(hào)衰減較大,可能會(huì)達(dá)不到接收器的識(shí)別信號(hào)的閾值[12]。
繪制1~9 m 的均方根誤差和平均誤差隨距離變化的關(guān)系圖,如圖6 所示。
圖6 誤差隨距離變化關(guān)系圖Fig.6 Relationship between error and distance variation
由圖6 可知,均方根誤差和平均誤差都在14 cm以下,且隨距離增加的增加而增大,符合SS-TWR 算法的誤差規(guī)律。
在完成測(cè)距實(shí)驗(yàn)之后進(jìn)行定位實(shí)驗(yàn),4 個(gè)UWB設(shè)備的DW1000 的參數(shù)設(shè)置與測(cè)距實(shí)驗(yàn)時(shí)一致。使用4 個(gè)支架固定4 個(gè)UWB 設(shè)備,調(diào)整支架高度使4個(gè)設(shè)備的天線高度一致,放置在室外空曠環(huán)境。其中3 個(gè)設(shè)備的位置固定,組成一個(gè)等邊三角形,作為基站,記為B1,B2,B3,1 個(gè)UWB 設(shè)備作為標(biāo)簽在B1、B3 連線所在邊的高上移動(dòng),作為標(biāo)簽,記為L(zhǎng)。實(shí)驗(yàn)場(chǎng)景的俯視示意圖如圖7 所示,以B3 為原點(diǎn),以B3 向B2 方向作為x 軸正方向,以L 移動(dòng)方向作為y 軸方向建立參考坐標(biāo)系。
圖7 定位實(shí)驗(yàn)場(chǎng)景示意圖Fig.7 Schematic diagram depic ting of experimental scenario for localization
該高的長(zhǎng)度為10 m,從底邊與高的交點(diǎn)作為起點(diǎn),標(biāo)簽每次移動(dòng)1 m,每次移動(dòng)記錄定位信息,每次記錄1000 個(gè)位置數(shù)據(jù),由于UWB 設(shè)備在數(shù)據(jù)通信速率較高的情況下通信距離較短,因此實(shí)驗(yàn)記錄從0~6 m 的定位數(shù)據(jù),如圖8 所示,三角形表示實(shí)際位置,圓圈代表定位算法估計(jì)的位置。
圖8 定位實(shí)驗(yàn)結(jié)果圖Fig.8 Graphical representation of the experimental results for localization
由圖8 可知,定位數(shù)據(jù)存在隨機(jī)誤差與系統(tǒng)誤差,估計(jì)位置與實(shí)際位置較為接近,計(jì)算0~6 m 的均方根誤差如表2 所示。
表2 定位均方根誤差Tab.2 Root mean square error(RMSE)for localization
由表2 可知0~6 m 內(nèi)的定位均方根誤差最大為15.8 cm,最小為8.52 cm,對(duì)于一般的田徑運(yùn)動(dòng)能夠滿足室外定位的要求。
本文介紹了基于UWB 定位的室外定位系統(tǒng)的設(shè)計(jì),包括測(cè)距算法、定位算法、硬件電路的設(shè)計(jì),目的是應(yīng)用于小型體育場(chǎng)地的人體精準(zhǔn)、高刷新率定位場(chǎng)景。其中使用SSTWR 的測(cè)距算法實(shí)現(xiàn)了高刷新率的要求,使用最小二乘法定位算法實(shí)現(xiàn)了定位誤差的最小化。最后對(duì)本系統(tǒng)的測(cè)距精度進(jìn)行實(shí)驗(yàn),經(jīng)過(guò)分析可知,最大誤差不超過(guò)14 cm。對(duì)定位精度進(jìn)行實(shí)驗(yàn),在二維定位情況下,定位的均方根誤差不超過(guò)16 cm。綜上,該系統(tǒng)可以滿足一般小型場(chǎng)地的田徑運(yùn)動(dòng)人體定位。