摘 要: 針對室內(nèi)有人復(fù)雜環(huán)境下的服務(wù)機器人避障問題,提出了一種基于函數(shù)模型調(diào)控離散PID控制器的避障算法。通過分析并簡化室內(nèi)有人環(huán)境的復(fù)雜情況,然后采用遞減函數(shù)模型對機器人減速后,再采用人工增量法干預(yù)PID控制器平衡從而進行轉(zhuǎn)彎控制。采用狀態(tài)棧記錄速度與偏角的函數(shù)變化,以機器人避過障礙物之后的點為對稱點,開始恢復(fù)行走方向,達到繞行的效果。最后,通過實驗證明了這種減速后再尋找最佳方向避障的算法的有效性和安全性。
關(guān)鍵詞: 移動機器人;動態(tài)環(huán)境避障;室內(nèi)避障;人工增量法
0 引言
現(xiàn)在人工智能領(lǐng)域的研究迅猛發(fā)展,商業(yè)化優(yōu)勢越來越明顯,新一代服務(wù)機器人和仿生機器人得到人們青睞并被廣泛應(yīng)用,例如餐廳服務(wù)機器人[1]、醫(yī)院服務(wù)機器人[2]等。機器人的操作環(huán)境和任務(wù)要求也越來越復(fù)雜,行走在人群中的情況會越來越多,其中避免服務(wù)機器人與操作環(huán)境中的靜態(tài)或動態(tài)障礙物發(fā)生碰撞是機器人運動規(guī)劃研究中的一個重要問題。近幾年來,移動機器人室內(nèi)避障算法研究日益火熱,首先由Kahtib提出人工勢場法[3],雖然有很多學(xué)者提出改進方法,但是仍然未能解決當(dāng)障礙物離目的地很近的局限,更糟糕的是該算法需要的額外計算量非常大,無法適應(yīng)于實時避障的室內(nèi)復(fù)雜情況。LAU B等人提出的高效率的柵格法[4]機器人避障算法,面對障礙物避障問題,假設(shè)機器人為一個理想的點狀,而忽略了機器人本身的幾何結(jié)構(gòu)和運動學(xué)模型,使得機器人在避障過程中出現(xiàn)過多的搜索動作。還有很多學(xué)者運用了人工智能算法控制機器人避障,如神經(jīng)網(wǎng)絡(luò)法[5]、遺傳算法、粒子群優(yōu)化算法[6]以及模糊邏輯控制算法[7-8]等,但是在室內(nèi)有人的環(huán)境中,這些算法并沒有充分考慮道路上允許的最大偏差同時要避開障礙物,因此在擁擠的環(huán)境中機器人可能會產(chǎn)生不良行為。由經(jīng)驗可知,在室內(nèi)有人環(huán)境中,如車輛減速或停止,提醒人們和等待,比試圖找到實現(xiàn)目標(biāo)的路徑更加安全有效。
1 移動機器人控制系統(tǒng)
基于離散數(shù)字PID控制系統(tǒng)[9],提出一種人工增量干預(yù)PID平衡法控制轉(zhuǎn)彎算法。在雙層閉環(huán)控制系統(tǒng)中,第一層PID控制器的給定值r(t)是兩輪的累積圈數(shù)之差|nL-nR|<λ(λ為接近于0的正數(shù)),目的是保持左右輪所走的路程一致,即兩輪線速度相同,確保機器人直線往前行走;第二層PID控制器的給定值r(t)是設(shè)定的某個速度值使得vL=vR=v0,目的是保證機器人始終保持以速度v0行走。第一層PID控制器與第二層PID控制器按以下規(guī)則進行運作:
IF|nL-nR|>λ THEN go PIDContoller1
ELSE IF vL≠v0 or vR≠v0 THEN go PIDController2
其中,PIDContoller1為第一層控制器,PIDController2為第二層控制器。
人工增量法控制轉(zhuǎn)彎算法基本原理是人為地使左輪的圈數(shù)增加一個增量nL=nL0+?駐n(右輪的圈數(shù)增加一個增量nR=nR0+?駐n),制造人工誤差,導(dǎo)致左右兩輪之差|nL-nR|>λ,在雙層閉環(huán)控制系統(tǒng)的第一層PID控制器控制下,vR和vL會發(fā)生變化,直至|nL-nR|<λ穩(wěn)定,再啟動第二層PID控制器控制,直至vL=vR=v0穩(wěn)定。穩(wěn)定后,由于人工添加了增量?駐n,因此實際上nL>nR(nR>nL),從而實現(xiàn)轉(zhuǎn)彎。速度變化如圖1所示。
其中輪子走過的路程由對速度v進行積分所得:
根據(jù)圖1,dL>dR,即可實現(xiàn)機器人轉(zhuǎn)彎。
2 在室內(nèi)有人的環(huán)境中避障算法
機器人在室內(nèi)有人的環(huán)境頗為復(fù)雜,大體分為圖2所示的幾種情況。
針對以上的室內(nèi)環(huán)境,機器人只探測與躲避前方的障礙物,提出一種速度遞減函數(shù)模型干預(yù)PID平衡避障算法。圖3展示了7個超聲波傳感器在機器人身上的分布。
圖3中每個超聲波傳感器檢測障礙物的敏感度不是一致的,i號傳感器的檢測距離分別為ri(i:1,2,…,7)。其中r1=r7,r2=r6,r3=r5。
1~3號超聲波傳感器組成一組用于檢測左側(cè)前方的障礙物,如圖3中設(shè)為一組;5~7號超聲波傳感器組成一組用于檢測右側(cè)前方的障礙物,設(shè)為三組;4號設(shè)為二組。假設(shè)7個傳感器最終的讀取的數(shù)據(jù)分別為di,則設(shè)一組、二組、三組超聲波獲取數(shù)值為D1、D2、D3,即:
D1=min{d1+(r3-r1),d2+(r3-r2),d3}D2=d4D3=min{d5,d6+(r5-r6),d7+(r5-r7)}(2)
?。?)正前方障礙物:對檢測二組超聲波傳感器檢測到正前方障礙物,根據(jù)以上分析,只需保證機器人不撞到障礙物即可,直接采取減速直至停止方式。線性函數(shù)減速模型為:
V(D2)=AD2-B AD2-B>0 0 AD2-B≤0(3)
其中,V(D2)為D2速率函數(shù)關(guān)系,如圖4所示。其中A為減速加速度系數(shù),B為安全閾值。允許的最大速率為Vmax,觸發(fā)避障距離為r4,所以有:
機器人越接近障礙物,速度就會越小,直至0 cm/s。經(jīng)過實驗測試,取Vmax=16 cm/s,B=20 cm,r4=40 cm,能得到比較好的實驗效果。
(2)側(cè)前方障礙物:一組超聲波傳感器負(fù)責(zé)感知以及避開左邊的障礙物。此處,只討論一組超聲波傳感器的避障算法。
完成繞開障礙的任務(wù)可分成兩步:減速和偏移。
?。╝)減速策略:用對數(shù)數(shù)學(xué)模型作為側(cè)前方的減速模型:
V(D1)=Aln(D1-B) Aln(D1-B)≥0 0 Aln(D1-B)<0(6)
同樣,V(D1)表示機器人的行走速率,A為變化速率,B為安全距離閾值,同理:
Vmax=Aln(r3-B)(7)
可得:
其中,Vmax為允許的機器人的最大速度,r3為一組超聲波傳感器觸發(fā)避障算法的距離,B為安全閾值,減速模型圖如圖5所示。
試驗得,取Vmax=16 cm,r3=40 cm,B=15 cm效果較好。
?。╞)偏移策略:遇到障礙物移動機器人先減速,再偏移,避開障礙物。采用兩個輪的差速反饋機制的雙層PID控制器系統(tǒng),當(dāng)檢測到障礙物,實時地添加人工增量?駐n進行反饋控制干預(yù)PID控制器,控制機器人轉(zhuǎn)彎。
(c)保持行走方向:偏移策略中,機器人行走方向也偏離了其目標(biāo)方向,所以在躲開障礙物后,還應(yīng)該反方向回偏,使移動機器人保持原來的方向行走,機器人路線如圖6所示。通過把人工增量?駐n和持續(xù)時間壓入離散狀態(tài)棧中,待到躲開障礙物時,從棧頂開始出棧執(zhí)行回偏動作,如圖7所示。
3 實驗結(jié)果
避障運行結(jié)果效果如圖8所示。
4 結(jié)論
針對室內(nèi)有人環(huán)境的避障問題,提出了一種基于雙層PID控制器系統(tǒng)的函數(shù)模型調(diào)控人工增量控制法的避障算法。該算法簡化了室內(nèi)有人環(huán)境的復(fù)雜情況,采用遞減模型后再進行轉(zhuǎn)彎控制,通過離散狀態(tài)棧記憶偏角與偏移量,解決了避過障礙物的問題并到達繞行的效果。最后,通過實驗證明了這種減速下來再尋找最佳方向避障的算法的有效性和安全性。
參考文獻
[1] Yu Qingxiao, Yuan Can, Fu Z, et al. An autonomous restaurant service robot with high positioning accuracy[J]. Industrial Robot, 2012, 39(3): 271-281.
[2] MAMUN K A, SHARMA A, HOQUE A S M, et al. Remote patient physical condition monitoring service module for iWARD hospital robots[C]. 2014 Asia-Pacific World Congress on Computer Science and Engineering(APWC on CSE), IEEE, 2014: 1-8.
[3] PARK M G, JEON J H, LEE M C. Obstacle avoidance for mobile robots using artificial potential field approach with simulated annealing[C]. IEEE International Symposium on Industrial Electronics, ISIE 2001, IEEE,2001,3:1530-1535.
[4] LAU B, SPRUNK C, BURGARD W. Efficient grid-based spatial representations for robot navigation in dynamic environments[J]. Robotics and Autonomous Systems, 2013, 61(10): 1116-1130.
[5] JEFFRIL M A, SARIFF N. The integration of fuzzy logic and artificial neural network methods for mobile robot obstacle avoidance in a static environment[C]. 2013 IEEE 3rd International Conference on System Engineering and Technology(ICSET), IEEE, 2013: 325-330.
[6] DI MARIO E, NAVARRO I, MARTINOLI A. The effect of the environment in the synthesis of robotic controllers: a case study in multi-robot obstacle avoidance using distributed particle swarm optimization[C]. Advances in artificial life, ECAL, 2013, 12: 561-568.
[7] SAMSUDIN K, AHMAD F A, MASHOHOR S. A highly interpretable fuzzy rule base using ordinal structure for obstacle avoidance of mobile robot[J]. Applied Soft Computing, 2011, 11(2): 1631-1637.
[8] Li Xi, CHOI B J. Design of obstacle avoidance system for mobile robot using fuzzy logic systems[J]. International Journal of Smart Home, 2013, 7(3): 321-328.
[9] 黃瑞,丁志中,時慧晶.基于實測參數(shù)的直流電動機建模與PID控制設(shè)計[J].微型機與應(yīng)用,2014,33(16):51-53.