在室內(nèi)移動機(jī)器人的導(dǎo)航中,,機(jī)器人的定位與地圖創(chuàng)建是機(jī)器人研究中一個基礎(chǔ)且重要的問題。機(jī)器人只有實(shí)時明確自己當(dāng)前的方位,,才能快速準(zhǔn)確地到達(dá)目的地,。自從移動機(jī)器人誕生以來,已知環(huán)境地圖的定位問題和已知定位的地圖創(chuàng)建問題已經(jīng)被廣泛研究,,提出了多種有效的解決途徑,。而當(dāng)?shù)貓D和機(jī)器人的位置都事先未知時,定位問題就變得更加復(fù)雜,。
在這種情況下,,要求機(jī)器人在一個完全未知的環(huán)境中從一個未知的位置出發(fā),在遞增地建立環(huán)境的導(dǎo)航地圖同時,,利用已建立的地圖來同步刷新自身的位置,,最終形成完整的環(huán)境地圖并在此基礎(chǔ)上提供準(zhǔn)確的定位。在上述問題中,,機(jī)器人位置和地圖兩者的估算是高度相關(guān)的,,任何一方都無法獨(dú)立獲取。這樣一種相輔相生,,不斷迭代的過程,,被學(xué)術(shù)界簡稱為同步定位與地圖創(chuàng)建( SLAM )問題。該問題可以表述為:機(jī)器人在未知環(huán)境中,,從一個未知位置開始移動,,在移動過程中根據(jù)位置估計(jì)和傳感器進(jìn)行自身定位,,同時建立環(huán)境地圖。目前使用的主要是模糊邏輯和概率的方法,,如Bayes估計(jì),,Kalman濾波,擴(kuò)展Kalman濾波和Markov推理等,。
射頻識別(RFID)技術(shù)是近年來興起的一門自動識別技術(shù),。與傳統(tǒng)的條形碼系統(tǒng)、接觸式卡等不同,,射頻識別系統(tǒng)是利用無線射頻方式非接觸供電,,并進(jìn)行非接觸雙向數(shù)據(jù)通信,以達(dá)到識別并交換數(shù)據(jù)的目的,。識別工作無須人工干預(yù),,可工作于各種惡劣環(huán)境。將RFID技術(shù)應(yīng)用于機(jī)器人中,,可以更好地發(fā)揮其技術(shù)特點(diǎn),,使機(jī)器人更多地獲取外在信息。
不少學(xué)者正在研究將RFID用于機(jī)器人定位系統(tǒng)中,,把RFID作為機(jī)器人的一種傳感器來進(jìn)行數(shù)據(jù)采集和處理,。標(biāo)簽為機(jī)器人的外部信息量,機(jī)器人通過閱讀器來采集各個標(biāo)簽中的位置信息,,通過獲取的信息利用同步定位與地圖創(chuàng)建算法來對機(jī)器人進(jìn)行有效的定位,從而得到更準(zhǔn)確地控制,。本文的研究工作中提出了一種基于RFID 系統(tǒng)的有效SLAM 算法,。該算法可以解決2維環(huán)境下的機(jī)器人定位問題。實(shí)驗(yàn)證明,,通過已知的RFID數(shù)據(jù),,該算法能成功地在2維環(huán)境中實(shí)現(xiàn)移動機(jī)器人的跟蹤定位。
1 RFID 環(huán)境設(shè)置
將RFID標(biāo)簽如圖1所示均勻分布在地面上,,標(biāo)簽的間距為0.5m,。每個標(biāo)簽牛都存放該標(biāo)簽所在位置的絕對坐標(biāo)數(shù)據(jù)。以便稍后為機(jī)器人提供外部位置信息,。
將RFID 閱讀器安裝于機(jī)器人的底部,,用于讀取放置在地面上的標(biāo)簽中的信息。機(jī)器人在移動過程中進(jìn)入標(biāo)簽范圍時,,標(biāo)簽進(jìn)入閱讀器的磁場范圍,,接收閱讀器發(fā)出的射頻信號,憑借感應(yīng)電流所獲得的能量發(fā)送出存儲在標(biāo)簽中的坐標(biāo)信息,。實(shí)驗(yàn)中RFID閱讀器的正面朝下讀取地面的標(biāo)簽卡,。
當(dāng)移動機(jī)器人經(jīng)過標(biāo)簽時,,閱讀器讀取標(biāo)簽中的坐標(biāo)信息并將其傳回電腦存儲,并讀取閱讀器的磁場范圍的下一個標(biāo)簽.重復(fù)這一過程直到閱讀器接收其射頻場內(nèi)所有標(biāo)簽信息,。在本文的研究中,,只考慮RFID閱讀器一次只處理一個標(biāo)簽坐標(biāo)信息的情況。
2 定位算法
上文已經(jīng)描述了通過RFID系統(tǒng)獲取機(jī)器人基本位置的方法,。然而,,同步定位的精度與RFID標(biāo)簽的間距以及硬件設(shè)備的性能密切相關(guān)。文中提出的基于RFID系統(tǒng)的同步定位與地圖創(chuàng)建算法通過一些基本坐標(biāo)信息來預(yù)測移動機(jī)器人的運(yùn)動軌跡并定位,。各國研究者已經(jīng)提出了多種地圖表示方法,,大致可分為3類:柵格地圖、幾何特征地圖和拓?fù)涞貓D,。本文使用幾何特征地圖,,用幾何特征表示傳感器網(wǎng)絡(luò)中的一個傳感地標(biāo)。地圖中的地標(biāo)和機(jī)器人的位置用直角坐標(biāo)系表示,。
當(dāng)RFID標(biāo)簽進(jìn)入閱讀器的磁場范圍時,,閱讀器讀取其坐標(biāo)數(shù)據(jù)X( x,y ),,并根據(jù)該坐標(biāo)值計(jì)算機(jī)器人到各個已知路標(biāo)間的距離,,已知路標(biāo)用標(biāo)簽表示。
2.1 不確定性信息處理
作為SLAM 的信息來源,,機(jī)器人本體的運(yùn)動模型及其攜帶的傳感器的準(zhǔn)確性是決定地圖精度的關(guān)鍵之一,。實(shí)際上這些渠道獲得的信息都帶有不同程度的不確定性。在未知環(huán)境中,,環(huán)境信息的不確定性尤為明顯.感知信息的不確定必然導(dǎo)致地圖和定位雙方的不確定,。研究人員已經(jīng)提出了多種用來處理不確定性的度量方法,如模糊度量,、概率度量,、信任度量、可能性度量等,。目前在SLAM 中使用較多的主要是模糊度量和概率度量的方法,。本文采用概率度量來處理不確定性。用概率表示SLAM 中2個重要模型:觀測模型和運(yùn)動模型,。
2.2 觀測模型
觀測模型P( x t ,,y t )是已知t時刻機(jī)器人位置和路標(biāo)位置集合M 的條件下求t時刻觀察值五的條件概率。離散時間t=1,,2,,3,...,;s = ( x s , y s )表示通過RFID獲得的機(jī)器人位置,;
表示t時刻得到的整個系統(tǒng)總觀測值,。
t 時刻機(jī)器人到某一路標(biāo)的距離d是路標(biāo)坐標(biāo)f i ( x f i ,y f i )與機(jī)器人位置坐標(biāo)st ( x s ,,ys )的函數(shù),,f i ( x f i ,y f i )表示第i個路標(biāo)的實(shí)際位置,。模型中的噪聲用q表示,。觀測模型可以表示為:
在定位算法中,信息標(biāo)簽對未知閱讀器的位置都有影響力,,標(biāo)簽到閱讀器的距離越近,,其影響力越大,對閱讀器位置有更大決定權(quán),。本文中的閱讀器放在移動機(jī)器人底部.所以閱讀器的位置也是機(jī)器人的位置,。如圖2,閱讀器收到了4個信息標(biāo)簽的信號,,4個標(biāo)簽的坐標(biāo)分別為( x1,,y1),(x2,,y2),,( x3,y3),,( x4,,y4),它們到移動機(jī)器人的距離分別為d1 ,,d2,,d3,d4,。可以看出d1
因此Tagl的影響力最大,,對閱讀器的位置有最大決定權(quán),。Tag3的影響力最小,對閱讀器位置的決定權(quán)最小,。根據(jù)三角定位原理,,只取影響力較大的3個信息標(biāo)簽來做定位計(jì)算。
根據(jù)Tagl,,Tag2,,Tag4到閱讀器的距離d1,d2,,d4 可求出待定位的機(jī)器人計(jì)算坐標(biāo)St =(xs,,ys ):
2.3 運(yùn)動模型
運(yùn)動模型預(yù)測下個時間段機(jī)器人的運(yùn)動狀態(tài)和環(huán)境特征,。移動機(jī)器人在t時刻的位置為St (X s,ys),,St是 t 時刻移動機(jī)器人的輸入控制Ut和前一時刻位置S t-1 的一個函數(shù),,移動機(jī)器人的位置信息可以用運(yùn)動模型:
來表示
由于環(huán)境特征是靜止的點(diǎn),運(yùn)動模型可以如下表示:
其中(xi (t),,yi (t))是t 一1時刻標(biāo)簽 i 的坐標(biāo),。
從運(yùn)動模型中采樣M 條路徑,每條路徑都是一個粒子,。對每個粒子來說,,機(jī)器人運(yùn)動路徑是確定的,每個粒子分別采用N個卡爾曼濾波器估計(jì)用N個環(huán)境特征的位置,。
和
分別表示第i個粒子的N個環(huán)境特征的高斯均值和協(xié)方差,。
2.4 SLAM 中的粒子濾波器
粒子濾波算法的迭代過程為:
① 初始Ⅳ 個粒子,表示機(jī)器人的位置,;
② 求上一步中每個粒子的運(yùn)動模型,;
③ 對每個表示機(jī)器人的粒子,預(yù)測觀測值,,并根據(jù)觀測值計(jì)算粒子權(quán)值,;
④ 使用每個粒子對應(yīng)的K個卡爾曼濾波求各個環(huán)境坐標(biāo)位置的估計(jì)值;
⑤ 重采樣,;
機(jī)器人路徑粒子重采樣所需要的權(quán)值計(jì)算如下:
3 仿真結(jié)果
機(jī)器人運(yùn)動速度為0.5m/s,,控制信號時間間隔為0.025s,觀測最遠(yuǎn)距離30m.模擬2O個時間步來測試算法的穩(wěn)定性.實(shí)驗(yàn)通過Matlab編程進(jìn)行參數(shù)設(shè)置,,用鼠標(biāo)操作劃出機(jī)器人的行走線路.
4 結(jié)語
本文采用RFID技術(shù)和粒子濾波器實(shí)現(xiàn)移動機(jī)器人自主定位和地圖創(chuàng)建,。利用RFID的高速數(shù)據(jù)傳輸?shù)奶攸c(diǎn),增強(qiáng)移動機(jī)器人數(shù)據(jù)獲取能力,,提高了機(jī)器人定位的效率,。但目前,RFID技術(shù)還有待進(jìn)一步提高,,閱讀器同時接受多個標(biāo)簽數(shù)據(jù)時的碰撞問題要進(jìn)一步解決完善,。同時SLAM 算法與RFID應(yīng)用的結(jié)合將幫助機(jī)器人更好的定位及控制。