

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