摘要:自主跟隨機(jī)器人中的定位是移動(dòng)機(jī)器人研究領(lǐng)域中最基本、最重要的問題之一。移動(dòng)機(jī)器人通過攜帶的傳感器獲取自身狀態(tài)和周圍環(huán)境信息,從而實(shí)現(xiàn)自主定位。對現(xiàn)有定位技術(shù)進(jìn)行綜述,提出基于UWB的自主跟隨機(jī)器人定位方法及系統(tǒng)開發(fā),利用DW1000建立自主跟隨機(jī)器人定位系統(tǒng)模型,并通過LabVIEW進(jìn)行定位算法程序編寫,實(shí)現(xiàn)跟隨機(jī)器人的定位。
關(guān)鍵詞:自主跟隨機(jī)器人;定位;UWB;DW1000;LabVIEW
DOIDOI:10.11907/rjdk.161900
中圖分類號:TP319
文獻(xiàn)標(biāo)識碼:A文章編號文章編號:16727800(2016)009012702
基金項(xiàng)目基金項(xiàng)目:
作者簡介作者簡介:方晨晨(1994-),女,安徽桐城人,上海理工大學(xué)光電信息與計(jì)算機(jī)工程學(xué)院學(xué)生,研究方向?yàn)榭刂瓶茖W(xué)與工程。
0引言
隨著科技和社會發(fā)展,自主跟隨機(jī)器人越來越受到關(guān)注。目前,自主跟隨機(jī)器人的技術(shù)難點(diǎn)之一就是定位,定位是機(jī)器人完成諸如路徑規(guī)劃、自主導(dǎo)航等復(fù)雜任務(wù)的前提,是移動(dòng)機(jī)器人領(lǐng)域的研究熱點(diǎn)?,F(xiàn)有定位技術(shù)有GPS、藍(lán)牙技術(shù)、紅外線技術(shù)、RFID技術(shù)、無線局域網(wǎng)絡(luò)、超聲波定位等。其中,GPS是目前應(yīng)用最廣泛的室外定位技術(shù),其優(yōu)勢是衛(wèi)星有效覆蓋范圍大,且定位導(dǎo)航信號免費(fèi)。但GPS接收機(jī)在室內(nèi)工作時(shí),信號受建筑物的影響而大大衰減,定位精度較低,所以不適用于室內(nèi)定位;藍(lán)牙、RFID定位技術(shù)雖然受環(huán)境干擾較小,但作用距離短,通信能力不強(qiáng),不便于整合到其它系統(tǒng)中;紅外線技術(shù)功耗較大,且常常受到室內(nèi)墻體或物體的阻隔,實(shí)用性較差;無線局域網(wǎng)絡(luò)成本較低,但無論是用于室內(nèi)還是室外定位,WiFi收發(fā)器都只能覆蓋較小范圍,而且易受環(huán)境中其它信號的干擾,從而降低了精度,定位器能耗也較高;超聲波定位精度可達(dá)厘米級,精度比較高,但超聲波在傳輸過程中衰減明顯,從而影響其定位有效范圍,且成本較高。
和其它定位相比較,UWB技術(shù)優(yōu)點(diǎn)在于低功耗、低成本、抗多徑能力和穿透能力強(qiáng),另外,UWB的無線通信空間容量達(dá)1Mbit/(s·m2),遠(yuǎn)優(yōu)于其它系統(tǒng)[1],適用于室外和室內(nèi)定位。本文提出一種基于UWB的定位方法和系統(tǒng),可實(shí)現(xiàn)自主跟隨機(jī)器人相對于人的定位,從而實(shí)現(xiàn)機(jī)器人跟隨人的目的。
1UWB定位技術(shù)
超寬帶(UWB)技術(shù)是一種傳輸速率高(最高可達(dá)1 000Mbps以上)、發(fā)射功率較低、穿透能力較強(qiáng),并且基于極窄脈沖的無線定位技術(shù),無載波。無線定位技術(shù)是一種用來判斷移動(dòng)用戶位置的測量和計(jì)算方法,即定位算法[2]。無線定位算法可分為基于距離的定位算法和與距離無關(guān)的定位算法兩類。與距離無關(guān)的定位算法[3]節(jié)點(diǎn)硬件要求較低,但精度低。UWB定位一般采用基于距離的定位算法[4]。目前,最常用的定位算法主要有:信號到達(dá)角度定位(AOA)、信號強(qiáng)度分析法(RSS)、到達(dá)時(shí)間定位(TOA)、到達(dá)時(shí)間差定位(TDOA)等。
(1)到達(dá)角度定位(AOA)和信號強(qiáng)度分析法(RSS)。
基于信號到達(dá)角度的定位算法是一種典型的基于測距的定位算法,通過硬件設(shè)備感知發(fā)射節(jié)點(diǎn)信號的到達(dá)方向,計(jì)算接收節(jié)點(diǎn)和錨節(jié)點(diǎn)之間的相對方位或角度,再利用三角測量法或其它方式計(jì)算出未知節(jié)點(diǎn)的位置。RSS根據(jù)信號的傳播模型,利用信號接收強(qiáng)度與信號傳播距離的關(guān)系,對目標(biāo)進(jìn)行定位,此方法對信道環(huán)境十分敏感。
(2)到達(dá)時(shí)間定位(TOA)。
到達(dá)時(shí)間定位(TOA)計(jì)算測量信號從發(fā)射端傳至接收端所需的時(shí)間,再根據(jù)信號傳播的速度計(jì)算出發(fā)射端與接收端之間的距離。以每一個(gè)發(fā)射端作為圓心,以發(fā)射端與接收端的距離為半徑作圓或球(二維平面作圓,三維平面作球),圓或者球的交點(diǎn)即為被測點(diǎn)的位置。TOA要求接收端與發(fā)射端的時(shí)間同步。
(3)到達(dá)時(shí)間差定位(TDOA)。
到達(dá)時(shí)間差定位(TDOA)是根據(jù)發(fā)射端發(fā)出信號到達(dá)不同基站的時(shí)間差,計(jì)算出移動(dòng)臺到基站間的距離。由移動(dòng)臺到兩個(gè)基站的距離差得到一條雙曲線,要求解目標(biāo)點(diǎn)的坐標(biāo)至少需要3個(gè)基站雙曲線方程組。TDOA方法不需要基站與移動(dòng)臺時(shí)鐘同步,只需要基站之間的時(shí)鐘同步即可。
2DW1000
DecaWave的DW1000是世界上第一個(gè)單片機(jī)UWB無線收發(fā)器,是ScenSor無線室內(nèi)定位系列芯片的第一款產(chǎn)品,精度高,能耗小,集成了射頻無線電設(shè)計(jì)所需的全部元器件,包括DW1000定位芯片、天線、平衡-不平衡變換器、石英晶體及無源元件。
DW1000會向信號讀取器發(fā)送無線信號,通過計(jì)算信號的傳輸時(shí)間來確定芯片位置,時(shí)間越長則說明距離越遠(yuǎn),其誤差不超過100mm。DW1000的最遠(yuǎn)傳輸距離為450m(直視距離,非直視距離為45m)。芯片功耗很低,電池可使用數(shù)年。考慮到其精度,這種芯片目前可作為室內(nèi)定位技術(shù)RFID及WiFi的補(bǔ)充。
3系統(tǒng)模型及算法
機(jī)器人定位方式取決于所采用的傳感器。移動(dòng)機(jī)器人常用的定位傳感器有里程計(jì)、攝像機(jī)、激光雷達(dá)、超聲波、紅外線、微波雷達(dá)、陀螺儀、指南針、速度或加速度計(jì)、觸覺或接近覺傳感器等[5]。本文采用DW1000傳感器,通過UWB定位技術(shù)中的到達(dá)時(shí)間(TOA)定位算法,計(jì)算出人對于機(jī)器人的相對位置,實(shí)現(xiàn)機(jī)器人對人的跟隨。
3.1系統(tǒng)模型
如圖1所示,移動(dòng)機(jī)器人在室內(nèi)或室外環(huán)境中移動(dòng)時(shí),機(jī)器人上安裝有3個(gè)DW1000傳感器作為基站,人和機(jī)器人處在同樣環(huán)境中,身上穿戴有一個(gè)DW1000傳感器作為標(biāo)簽,假設(shè)人初始時(shí)刻已被機(jī)器人鎖定。3個(gè)基站按等邊三角形三個(gè)頂點(diǎn)位置固定在移動(dòng)機(jī)器人上,用來發(fā)射UWB信號,標(biāo)簽接收到信號后,通過TOA算法可算出標(biāo)
簽分別距3個(gè)基站的距離,并通過幾何運(yùn)算得到人相對于
機(jī)器人的位置。
3.2坐標(biāo)模型及定位算法
機(jī)器人和人所處的環(huán)境是三維空間,以機(jī)器人本身為參考系建立一個(gè)局部坐標(biāo)系統(tǒng)。如圖2所示,定義3個(gè)基站位置距離AB、BC、AC均為a;定義BC邊上的高所在延長線為y軸,y軸正向與機(jī)器人自身的方向一致;3個(gè)基站構(gòu)成的等邊三角形AB邊的中點(diǎn)為O(0,0,0);標(biāo)簽坐標(biāo)為M(x,y,z),其中z為標(biāo)簽到基站所在水平面的高度;等邊三角形的中心為H。
根據(jù)3個(gè)基站到標(biāo)簽的距離,通過解析幾何可以算出標(biāo)簽M在等邊三角形所在平面的投影M點(diǎn)到等邊三角形中心的距離:
L=MH=(d14+d24+d34-d12d22-d12d32-d22d32)÷(3a2)(1)
標(biāo)簽M在等邊三角形所在平面的投影M′點(diǎn)與等邊三角形中心H點(diǎn)的連線,即MH與y軸的夾角即方位角:
θ=∠MHA=arctan(3(d32-d22)÷(-2d12+d22+d32))(2)
由此,人的位置坐標(biāo)可以表示為(L,θ),即確定出人相對于機(jī)器人的位置信息,所得位置誤差范圍在±100mm以內(nèi),位置信息基于機(jī)器人和人直接計(jì)算,不存在累積誤差。
3.3跟隨方案
利用3.2節(jié)得到的人相對于機(jī)器人的坐標(biāo),機(jī)器人實(shí)現(xiàn)跟隨的步驟為:①機(jī)器人根據(jù)人的位置坐標(biāo),解算出人在以機(jī)器人本身為參考坐標(biāo)系中x,y方向的偏移量;②機(jī)器人在x方向上移動(dòng),最終使人在坐標(biāo)系中x方向的偏移量為零;③機(jī)器人在y方向上移動(dòng),最終使人在坐標(biāo)系中y方向的偏移量為零;④當(dāng)人在坐標(biāo)系中x,y方向的偏移量都為零時(shí),即機(jī)器人此時(shí)到達(dá)人的位置,從而實(shí)現(xiàn)跟隨。
4軟件設(shè)計(jì)
通過理論計(jì)算得到人相對于機(jī)器人的位置后,要實(shí)現(xiàn)跟隨機(jī)器人的定位,需將定位算法寫成程序從而控制機(jī)器人的運(yùn)動(dòng)。本文軟件系統(tǒng)基于Labview編寫的程序,經(jīng)過調(diào)試后可以下載到機(jī)器人控制器中運(yùn)行。
4.1LabVIEW軟件平臺
LabVIEW是NI公司開發(fā)的圖形化編程開發(fā)平臺,具備強(qiáng)大的實(shí)時(shí)數(shù)據(jù)處理與顯示功能。LabVIEW不同于基于文本的編程語言(如C,C++等),是一種圖形編程語言——通常稱為G編程語言,其編程過程為通過圖形符號描述程序的行為[6],編程簡單,使用靈活,易于理解,采用LabVIEW圖形化的編程方式來實(shí)現(xiàn)定位算法非常簡便。
4.2程序設(shè)計(jì)
在編寫定位算法核心程序外,考慮到采用DW1000測距時(shí)3個(gè)基站到標(biāo)簽的距離都會產(chǎn)生cm級的誤差,所以編程時(shí)采用隨機(jī)數(shù)生成厘米級隨機(jī)誤差,使得實(shí)驗(yàn)效果更接近于真實(shí)情況。算法實(shí)現(xiàn)如圖3所示。
圖3基于Labview的定位算法程序
5結(jié)語
本文提出了一種基于UWB的自主跟隨機(jī)器人定位方法及系統(tǒng),該系統(tǒng)適用于室外和室內(nèi)定位,結(jié)構(gòu)簡單,易于實(shí)現(xiàn),且所得位置信息是基于機(jī)器人和人直接計(jì)算,不存在累計(jì)誤差。解算出人相對于機(jī)器人的位置信息后,后續(xù)可以根據(jù)人的坐標(biāo)進(jìn)行機(jī)器人路徑規(guī)劃,實(shí)現(xiàn)機(jī)器人對人的跟隨。本文定位方法基站安放于機(jī)器人本體上,因此局限于機(jī)器人本體的大小,測量精度不夠,有一定局限性,還需改進(jìn)。本文重點(diǎn)在于跟隨機(jī)器人的定位系統(tǒng)及方法,因此跟隨方法未加以詳述,可根據(jù)本文的思想加以改進(jìn)創(chuàng)新,以便實(shí)現(xiàn)最佳跟隨效果。
參考文獻(xiàn)參考文獻(xiàn):
[1]樊祥寧.超寬帶無線通信關(guān)鍵技術(shù)研究[D].南京:東南大學(xué),2005.
[2]龐艷,喬靜.UWB無線定位技術(shù)探討[J].電信快報(bào),2005(11):4951.
[3]孫利民,李建中,陳渝,等.無線傳感網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社,2005.
[4]李正榮,黃曉濤.超寬帶定位技術(shù)的分析與思考[J].電信快報(bào),2008(4):2932.
[5]胡勁草.室內(nèi)自主式移動(dòng)機(jī)器人定位方法[J].傳感器世界,2006(11):610.
[6]趙國偉,陳誠,徐躍民.基于LabVIEW的自動(dòng)化控制和編程設(shè)計(jì)[J].微計(jì)算機(jī)信息,2007(28):1112,209.
責(zé)任編輯(責(zé)任編輯:陳福時(shí))