楊 東,胡春華,水存洋,周國平
(南京林業(yè)大學(xué)信息科學(xué)技術(shù)學(xué)院,江蘇 南京 210037)
智能小車是一種擁有感知能力的機器人,可以按照人為設(shè)定的模式自動的運行,而不依賴人為管理。智能小車不僅能夠?qū)崿F(xiàn)循跡、避障等功能,還可以實現(xiàn)定點停車,遠程數(shù)據(jù)傳輸?shù)裙δ堋τ诋?dāng)前機器人的軌跡跟蹤問題,期望輸出的時變性是此類運動控制的難點所在,因此需要合理的控制策略。對于這類控制策略,國內(nèi)外都進行了較為系統(tǒng)的研究。B.d’Andrea Nov-el[1]等在分析非線性機器人的結(jié)構(gòu)與其反饋線性化的關(guān)系的基礎(chǔ)上,利用微分平坦的概念,通過引入動態(tài)反饋,以得到滿足指數(shù)收斂的存在奇異點的局部跟蹤控制律。Back-Stepping 控制方法適用于嚴格反饋控制系統(tǒng),控制器的構(gòu)造依據(jù)李雅普諾夫函數(shù),實現(xiàn)積分環(huán)節(jié)串聯(lián)的各子系統(tǒng)逐級穩(wěn)定。自適應(yīng)控制[2]在受控參數(shù)發(fā)生變化的系統(tǒng)中不需要系統(tǒng)動力學(xué)模型信息,而只需通過及時地辨識、學(xué)習(xí)和調(diào)整控制律,自適應(yīng)地調(diào)整控制器增益。自適應(yīng)方法的缺點是實現(xiàn)復(fù)雜,難于滿足不確定性機器人控制的實時性要求,在參數(shù)不確定的情況下,自適應(yīng)控制也很難保證系統(tǒng)的穩(wěn)定性。近年來,人工智能技術(shù)有了較大的進步,智能控制的系統(tǒng)設(shè)計中不再依賴于數(shù)學(xué)模型,不僅擺脫了非線性的束縛,同進也為不確定性機器人軌跡控制提供了新的手段,具有廣闊的應(yīng)用前景。在軌跡跟蹤控制問題上,主要應(yīng)用的是模糊控制[3,4]和神經(jīng)網(wǎng)絡(luò)控制[5]。模糊控制不依賴對象的數(shù)學(xué)模型,通過人為專家控制經(jīng)驗來解決系統(tǒng)中動態(tài)特性的非線性和不確定因素,具有較強的魯棒性。
本文以智能小車為研究對象,搭建了硬件系統(tǒng),針對控制要求設(shè)計了一種二維模糊控制器,實現(xiàn)智能車快速、精確地循跡控制。
本設(shè)計主要通過指定路徑尋找物體并搬回原地。智能搬運小車的控制系統(tǒng)使用的芯片是32 位單片機STM32F103ZET6 作為核心控制單元。智能搬運小車使用紅外傳感器采集路徑的信號,將信號傳到單片機進行判別處理,然后對電機和舵機進行控制,完成對小車行進方向以及速度的控制。這個智能搬運小車的循跡系統(tǒng)主要是由以下幾個部分組成:核心控制單元模塊、傳感器模塊、電機驅(qū)動模塊。
在電機驅(qū)動模塊中,輪式小車四輪各用一個直流減速電機驅(qū)動,通過調(diào)制占空比控制兩側(cè)輪子的轉(zhuǎn)速。在車體前部分別裝有9 對反射式紅外傳感器,當(dāng)小車偏左側(cè)傳感器檢測到黑線時,表明小車車頭向右邊偏移,這時主控芯片通過單片機控制左輪電機減速,右輪電機加速,車體向左修正。同理當(dāng)小車偏右側(cè)傳感器檢測到黑線時,主控芯片通過單片機控制右輪電機減速,左輪電機加速,車體向右修正。當(dāng)黑線在車體正中,中間的傳感器檢測到黑線時,小車直行。其循跡流程如圖1 所示。
圖1 小車循跡流程
由硬件設(shè)計中光電管在電路板中的布局可知光電管的具體坐標(biāo)值,當(dāng)某個光電管檢測到了黑線時,得到了黑線距離小車中心軸線的偏離值d,示意圖如圖2 所示。
圖2 小車偏差示意圖
由偏離值可以得出方向偏差:
得出夾角:
θ 的大小反應(yīng)了小車前方道路與當(dāng)前位置的方向關(guān)系,其值越大表明當(dāng)前小車將要轉(zhuǎn)的角度越大,“+”號代表小車向右轉(zhuǎn),“一”號代表小車向左轉(zhuǎn)。因此,小車在道路上行駛時,它與黑色路徑線的相對位置可由小車的方向偏差和偏差率來描述,這兩個參數(shù)可以作為算法的輸入量,為小車的轉(zhuǎn)角提供依據(jù)。
模糊控制可以不需要建立精確的數(shù)學(xué)模型,而可以依據(jù)人們的經(jīng)驗建立模糊控制規(guī)則來控制系統(tǒng)。根據(jù)輸入變量的個數(shù),模糊控制器可以分為一維、二維和三維模糊控制器。
一維模糊控制器控制的系統(tǒng)誤差較大,易產(chǎn)生震蕩,小車速度不穩(wěn)定;三維模糊控制器設(shè)計復(fù)雜,造成不必要的浪費,綜合一維和三維控制器的缺點,本文設(shè)計一款二維模糊控制器實現(xiàn)小車的循跡控制[6]。
當(dāng)不同傳感器在黑色引導(dǎo)線上時,也就表征了偏離軌道信息。不同傳感器與黑色引導(dǎo)線位置的偏差和賽道的曲率成正比,并且黑色引導(dǎo)線位置偏差的計算量比賽道曲率的計算量大很多。因而將偏離中心線的偏差和偏差變化率作為模糊控制器的輸入量,模糊控制器的輸出量選擇為小車轉(zhuǎn)向角θ 和車速V。
紅外傳感器檢測到黑線在正中間時,判斷當(dāng)前賽道為直線,小車在保證穩(wěn)定的情況下加速前進;紅外傳感器檢測到黑線在兩旁時,判斷當(dāng)前賽道為彎道,小車迅速減速前進,以免沖出跑道,因此對控制的響應(yīng)時間和控制精度的要求非常嚴格。采用模糊控制小車,不需要建立確定的數(shù)學(xué)模型就能有效地控制小車的轉(zhuǎn)向角和速度。控制系統(tǒng)結(jié)構(gòu)框圖如圖3 所示。選擇小車相對于黑線的偏移角E 和偏移變化率EC作為模糊控制器的輸入變量,轉(zhuǎn)向角θ 和速度V 為模糊控制器的輸出變量。
在輸入語言變量E 和EC 的論域中,取語言值:偏差角左偏超過40°,我們設(shè)定為“NB”(嚴重偏左)、左偏在20°,設(shè)定為“NS”(較為偏左)、沒有偏差角,我們設(shè)定為“Z”(無偏移)、偏差角右偏20°,設(shè)定為“PS”(較為偏右)、右偏超過40°,我們設(shè)定為“PB”(嚴重偏右)。同樣,在輸出語言變量θ 和V 的論域中,取語言值:“LB”表示左輪比右輪速度轉(zhuǎn)速慢很多、“LS”表示左輪速度比右輪速度轉(zhuǎn)速略慢、“Z”表示左輪等于右輪速度、“RS”表示右輪速度比左輪速度轉(zhuǎn)速略慢、“RB”表示右輪比左輪速度轉(zhuǎn)速慢很多;設(shè)定隸屬函數(shù)分布為三角分布[7],如圖4 所示。很容易看出,在幾個離散的論域點,隸屬度只有0、0.5 和1 三種,直觀而且容易實現(xiàn)。
圖3 速度控制系統(tǒng)結(jié)構(gòu)框圖
圖4 E、EC 隸屬函數(shù)
接著,我們根據(jù)輸入及輸出物理量數(shù)目及所需的控制精度設(shè)定模糊規(guī)則。根據(jù)小車自身的運行特性及人類的控制經(jīng)驗寫出模糊控制器的隸屬度函數(shù)的離散化表格和模糊規(guī)則表格,如表1 和表2 所示。
表1 隸屬度函數(shù)的離散化表格
表2 模糊規(guī)則表
模糊量的清晰化方法有很多種,主要有最大隸屬度法、加權(quán)平均法(重心法)和中位數(shù)法。這里采用重心法對模糊量進行清晰化。模糊輸出為權(quán)值,對輸出模糊子集對應(yīng)的模糊單點集值求加權(quán)平均。采用下式確定控制輸出:
式中,Uu為各個輸出模糊子集對應(yīng)的模糊單點集的值;Ui為輸出對該子集的隸屬度;n 為輸出模糊子集數(shù)[8]。
通過對智能車長時間的調(diào)試,在一組穩(wěn)定的控制器參數(shù)和相同的20 m 的不同路況賽道下,測得采用普通PID 控制和模糊控制的誤差,數(shù)據(jù)如表3~表5 所示。
表3 小車在直線軌道上的誤差對比
表4 小車在蛇形彎道上的行駛情況
表5 小車在90°直角彎道上的行駛情況
數(shù)據(jù)表明,二級模糊控制器與普通PID 控制器相比,彎道角度越大,模糊控制器對轉(zhuǎn)角的糾正越明顯。同時在三種路況下,速度上也分別有11.2%、10.2%、10.5%的提升。小車行駛平穩(wěn)可靠,可以達到預(yù)期的效果。
本文主要對智能小車的循跡控制進行了設(shè)計。小車利用紅外傳感器對道路信息進行采集并分析,經(jīng)過二維模糊器的分析處理,實現(xiàn)小車的自循跡跟蹤。不同路況的實驗數(shù)據(jù)表明,二維模糊控制器在有效糾正軌道偏差的同時,保證了小車的快速度行進。
[1]B'dAndrea-Novel.G.Campion,Control of Nonholonomic Wheeled Mobile Robots by State Feedb-ack Linearization[J].The International Journal of Robotics Research,1995,14(6):543-559.
[2]李勝,馬國梁,胡維禮.一類不確定非完整移動機器人的時變自適應(yīng)鎮(zhèn)定[J].機器人,2005,27(1):10-13.
[3]Lin C T,Lee C S.Neural-Network-Based Fuzzy Logic Control and Design System[J].IEEET Ransactions on Computer,1991,40(12):1320-1329.
[4]Fierro R,Lewis F L.Control of Nonholonomic Mobile Robot Using Neural netwok[J].IEEE Transactions on Neural Networks,1998,9(4):589-599.
[5]Lin C T,George C S.Reinforcement Structure/Parameter Learning for Neural-network-based Fuzzy Logic Control Systems[J].IEEE Transactions on Fuzzy System,1994,2(1):72-84.
[6]李以農(nóng),鄭玲,譙艷娟.汽車縱向動力學(xué)系統(tǒng)的模糊-PID 控制[J].中國機械工程,2006,17(1):99-103.
[7]寧慧慧,余紅英.基于紅外光電傳感器的智能車兩輪差速轉(zhuǎn)向模糊控制[J].工業(yè)控制計算機,2010,23(1):94-95.
[8]黃杰,秦補技.基于模糊控制的智能循跡小車的設(shè)計[J].中國科技信息,2010(20):148-149.