《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 未知環(huán)境下的移動機器人仿真平臺設(shè)計
未知環(huán)境下的移動機器人仿真平臺設(shè)計
來源:微型機與應(yīng)用2010年第16期
林 俊,林 凱,谷 兵,王蘇衛(wèi)
(湖南師范大學(xué),湖南 長沙410081)
摘要: 從理論上分析了機器人控制系統(tǒng)和檢測外部環(huán)境的傳感器,并在該基礎(chǔ)上闡述了航姿推算定位算法。利用Matlab GUI設(shè)計了移動機器人的控制仿真平臺,并通過算法對超聲波測距進(jìn)行了模擬。最后,設(shè)計模糊控制器應(yīng)用于該仿真平臺對移動機器人進(jìn)行實時控制。仿真結(jié)果表明,在非結(jié)構(gòu)化的未知環(huán)境中,系統(tǒng)響應(yīng)速度快,實現(xiàn)了機器人從起點到靜態(tài)目標(biāo)點的安全行駛。
Abstract:
Key words :

摘  要: 從理論上分析了機器人控制系統(tǒng)和檢測外部環(huán)境的傳感器,并在該基礎(chǔ)上闡述了航姿推算定位算法。利用Matlab GUI設(shè)計了移動機器人的控制仿真平臺,并通過算法對超聲波測距進(jìn)行了模擬。最后,設(shè)計模糊控制器應(yīng)用于該仿真平臺對移動機器人進(jìn)行實時控制。仿真結(jié)果表明,在非結(jié)構(gòu)化的未知環(huán)境中,系統(tǒng)響應(yīng)速度快,實現(xiàn)了機器人從起點到靜態(tài)目標(biāo)點的安全行駛。
關(guān)鍵詞: 移動機器人;仿真;模糊控制

    移動機器人是當(dāng)今學(xué)科研究的熱點之一,而控制算法在機器人領(lǐng)域中處于核心地位。目前,常用于移動機器人智能控制的算法主要有:PID控制、模糊控制、神經(jīng)網(wǎng)絡(luò)控制等[1-2]。還有一些相對特殊的控制方法,譬如參考文獻(xiàn)[3]中提及的基于風(fēng)險評估的路徑規(guī)劃方案等。每種算法的原理不同,一般對外界信息的依賴性較大。若根據(jù)算法要求開發(fā)硬件平臺,其電路的設(shè)計、PCB板的制作以及電路的調(diào)試等一系列繁瑣的研發(fā)工作對算法的驗證將造成極大不便[4]。Matlab提供的可視化界面環(huán)境GUI,其與VB相似的功能可以很方便地創(chuàng)建用戶界面形式。因此,本文利用Matlab GUI設(shè)計一種用于移動機器人路徑規(guī)劃的控制仿真平臺。
1 系統(tǒng)控制體系組成
    移動機器人的控制體系結(jié)構(gòu)定義為:一種能把多種模塊有機地結(jié)合起來,從而在環(huán)境中完成目標(biāo)任務(wù)的機器人結(jié)構(gòu)框架。本系統(tǒng)主要完成未知環(huán)境下移動機器人的路徑規(guī)劃,所以系統(tǒng)設(shè)計了多個模塊構(gòu)成整個控制系統(tǒng)。如圖1所示,控制體系主要包含的功能有:感知、定位模塊、路徑規(guī)劃、行為控制以及任務(wù)規(guī)劃。

1.1 傳感器模型
1.1.1 里程計與羅盤計

    里程計用于測量移動機器人的行駛距離,主要由驅(qū)動輪內(nèi)側(cè)的碼盤信號計算出單個驅(qū)動輪角速度信息,從而根據(jù)運動學(xué)模型計算出行駛距離。羅盤計基于指南針原理,用于測量機器人的車身角度。
1.1.2 超聲波測距
    超聲波測距原理采用時間差測距法,可表示為:

式中,D為超聲波傳感器與障礙物之間的距離,C為超聲波速度,?駐t為發(fā)射和接收之間的時間差。
1.2 移動機器人模型
1.2.1 機器人運動學(xué)模型

    本設(shè)計研究的是雙輪差分驅(qū)動式移動機器人,由兩個驅(qū)動輪和一個隨動輪組成。兩驅(qū)動輪之間的軸間距離為d,驅(qū)動輪半徑為r,其軸間連線中點為M,坐標(biāo)為(xM,yM),如圖2所示。


1.2.2 航姿推算定位法
    雙輪差分驅(qū)動式移動機器人的運動分為直線模式和弧線模式兩種,本設(shè)計采用相對簡單的直線模型。離散化航姿推算定位法形式為:

 

2 移動機器人仿真平臺建立
    本文利用Matlab GUI設(shè)計人機交互方式的二維平面環(huán)境模型[5],可以設(shè)置移動機器人的行駛環(huán)境大小、起點和終點,通過文本設(shè)計方法再加鼠標(biāo)設(shè)置可以繪制障礙物區(qū)域。利用文本設(shè)置的行駛環(huán)境大小、起點與終點設(shè)置,障礙物相對簡單。鼠標(biāo)設(shè)置相對復(fù)雜,需要響應(yīng)鼠標(biāo)事件。當(dāng)鼠標(biāo)左鍵單擊白色坐標(biāo)軸有效范圍時,系統(tǒng)響應(yīng)單擊事件記下第一個點的坐標(biāo)值,然后鼠標(biāo)劃過一段區(qū)域后釋放,系統(tǒng)響應(yīng)釋放事件記下第二個點坐標(biāo)值。通過兩點坐標(biāo)值即可唯一確定一個矩形障礙物。
    

3 建立模糊控制器
    
    


4 仿真
    本設(shè)計平臺對移動機器人的本身和行駛環(huán)境作如下假設(shè):(1)車輪只能在地面上正常滾動,不發(fā)生側(cè)向滑動;(2)機器人在二維平面內(nèi)運動,運動表面平整。
    對于隨機的未知環(huán)境,系統(tǒng)設(shè)置:X軸和Y軸的坐標(biāo)顯示范圍為[-100,1000]。起點A(0,0),終點B(900,900);機器人初始行駛角度為0;Δs為0.5。通過鼠標(biāo)隨機繪制障礙物。點擊“運行”后,代替車體的半徑為8的圓點開始實現(xiàn)以目標(biāo)點為向?qū)У谋苷闲袨?,并顯示出行為軌跡,結(jié)果如圖7所示。

    圖8所示為機器人車身角度變化示意圖,對照圖7,移動機器人在行駛過程中車身角度隨障礙物的隨機分布而變化。為了程序計算方便,角度一律取弧度值。

    本設(shè)計介紹了移動機器人的基本結(jié)構(gòu)和運動原理,并在此基礎(chǔ)上實現(xiàn)了基于Matlab GUI的移動機器人控制仿真平臺。將基于行為的模糊控制應(yīng)用于機器人進(jìn)行實時控制。仿真結(jié)果表明,移動機器人響應(yīng)速度快,適應(yīng)環(huán)境能力強,成功實現(xiàn)從起點到目標(biāo)點的路徑規(guī)劃。
參考文獻(xiàn)
[1] QIN Guo Ping,YAO Wei,ZHANG Wei.Design of nonlinear  optimization PID controller for BLDCM based on neurofuzzy identified model[C].Proceedings of the Eiqhth International conference.2005,2(27~29):1524-1527.
[2] 張洪宇,徐昕,張鵬程,等.雙輪驅(qū)動移動機器人的學(xué)習(xí)控制器設(shè)計方法[J].計算機應(yīng)用研究,2009,26(6):2310-2313.
[3] 高揚,孫樹棟,黃偉峰.一種未知環(huán)境下的快速路徑規(guī)劃方法[J].計算機應(yīng)用研究,2009,26(7):2623-2626.
[4] 梁毓明,徐立鴻.移動機器人多傳感器測距系統(tǒng)研究與設(shè)計[J].計算機應(yīng)用,2008,6(28):340-343.
[5] 劉保龍,何波,王永清,等. 移動機器人未知環(huán)境地圖構(gòu)建仿真平臺[J].系統(tǒng)仿真學(xué)報,2007,19(13):2940-2943.
[6] 吳曉莉,林哲輝.Matlab輔助模糊系統(tǒng)設(shè)計[M].西安:西安電子科技大學(xué)出版社,2002.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。