許洋洋,王 瑩,薛東彬
(1.鄭州工業(yè)應(yīng)用技術(shù)學(xué)院 機(jī)電工程學(xué)院,河南 鄭州 451150; 2.河南工業(yè)大學(xué) 機(jī)電工程學(xué)院,河南 鄭州 450007)
移動(dòng)機(jī)器人可以代替人類手工勞動(dòng),從而加快了工業(yè)的迅速發(fā)展.移動(dòng)機(jī)器人具有許多優(yōu)點(diǎn)[1-2]:① 可以連續(xù)生產(chǎn)勞動(dòng),成本低;② 生產(chǎn)效率高,運(yùn)動(dòng)精度高;③ 能夠減少人員傷亡.因此,移動(dòng)機(jī)器人在航天、海洋、醫(yī)療及煤礦等許多領(lǐng)域得到了廣泛的應(yīng)用.隨著科技的改進(jìn),對移動(dòng)機(jī)器人智能化程度要求也越來越高,而自動(dòng)調(diào)整移動(dòng)機(jī)器人運(yùn)動(dòng)軌跡精度是衡量移動(dòng)機(jī)器人性能的重要指標(biāo)之一.移動(dòng)機(jī)器人在運(yùn)動(dòng)過程中,如果環(huán)境惡劣多變,運(yùn)動(dòng)軌跡就會發(fā)生偏離,導(dǎo)致運(yùn)動(dòng)軌跡產(chǎn)生較大的誤差,有可能造成重大的經(jīng)濟(jì)損失.因此,研究移動(dòng)機(jī)器人運(yùn)動(dòng)軌跡控制方法,對于促進(jìn)機(jī)器人技術(shù)的發(fā)展具有重要意義.
當(dāng)前,移動(dòng)機(jī)器人控制技術(shù)吸引了許多學(xué)者的關(guān)注,并對其進(jìn)行了研究.例如:文獻(xiàn)[3-4]研究了移動(dòng)機(jī)器人模糊PID控制方法,給出了機(jī)器人電機(jī)驅(qū)動(dòng)模型,采用模糊推理來調(diào)節(jié)PID控制參數(shù),通過仿真驗(yàn)證移動(dòng)機(jī)器人路徑跟蹤誤差,從而提高了移動(dòng)機(jī)器人運(yùn)動(dòng)控制精度.文獻(xiàn)[5-6]研究了移動(dòng)機(jī)器人神經(jīng)網(wǎng)絡(luò)控制方法,采用RBF神經(jīng)網(wǎng)絡(luò)對控制系統(tǒng)進(jìn)行在線辨識和反饋,通過李雅普諾夫函數(shù)對控制系統(tǒng)的穩(wěn)定性進(jìn)行證明,采用仿真驗(yàn)證移動(dòng)機(jī)器人跟蹤效果,降低了移動(dòng)機(jī)器人路徑跟蹤誤差.文獻(xiàn)[7-8]研究了移動(dòng)機(jī)器人滑??刂品椒?建立移動(dòng)機(jī)器人簡圖模型,給出了電機(jī)驅(qū)動(dòng)數(shù)學(xué)模型,設(shè)計(jì)了滑??刂破鞑ζ浞€(wěn)定性進(jìn)行證明,抑制了控制系統(tǒng)的振動(dòng)現(xiàn)象,實(shí)現(xiàn)移動(dòng)機(jī)器人路徑跟蹤的精確性.以往研究的移動(dòng)機(jī)器人容易受到外界波形的干擾,對此,在傳統(tǒng)PID控制基礎(chǔ)上,采用模糊神經(jīng)網(wǎng)絡(luò)PID控制方法.引用粒子群算法并進(jìn)行改進(jìn),通過改進(jìn)粒子群算法優(yōu)化模糊神經(jīng)網(wǎng)絡(luò)PID控制參數(shù).通過數(shù)學(xué)軟件Matlab對移動(dòng)機(jī)器人跟蹤誤差進(jìn)行仿真實(shí)驗(yàn),為提高移動(dòng)機(jī)器人運(yùn)動(dòng)軌跡精度提供理論依據(jù).
機(jī)器人簡圖模型如圖1所示,通過質(zhì)點(diǎn)運(yùn)動(dòng)分析可以推導(dǎo)出移動(dòng)機(jī)器人運(yùn)動(dòng)學(xué)模型為
(1)
式中:v為移動(dòng)機(jī)器人相對坐標(biāo)系下的線速度;ω為移動(dòng)機(jī)器人相對坐標(biāo)系下的角速度;x′為移動(dòng)機(jī)器人絕對坐標(biāo)系下X方向的線速度;y′為移動(dòng)機(jī)器人絕對坐標(biāo)系下Y方向的線速度;θ′為移動(dòng)機(jī)器人絕對坐標(biāo)系下的角速度.
圖1 移動(dòng)機(jī)器人簡圖Fig.1 Sketch of mobile robot
根據(jù)拉格朗日定理,可以得到移動(dòng)機(jī)器人動(dòng)力學(xué)方程式[9]為
(2)
式中:q為位姿向量;M(q)為對稱正定矩陣;Vm(q,q′)為向心力矩陣;F(q)為摩擦力矩陣;G(q)為重力矩陣;τd為未知干擾矩陣;A(q)為約束矩陣;B(q)為輸入變換矩陣;τ為機(jī)器人轉(zhuǎn)矩.
對于平面移動(dòng)機(jī)器人,G(q)=0,A(q)q′=0,對式(2)進(jìn)行簡化,得
(3)
由于外界環(huán)境的影響,Mq和Vq的精確值無法得到.因此,可以用不確定部分構(gòu)成,其方程式為
(4)
式中:Mq 0和Vq 0為確切值;ΔMq和ΔVq為不確定值.
假設(shè):
(5)
則可以推導(dǎo)出
(6)
式中:ξq為平面結(jié)構(gòu)不確定值的總和.
假設(shè)軌跡運(yùn)動(dòng)參數(shù)位置為qr=[xryrθr],參考速度為vr=[v0rω0r]T,找出平滑速度vc,令
(7)
由式(5)計(jì)算力矩輸入τ,從而推導(dǎo)出t→∞時(shí),v→vc.
機(jī)器人跟蹤誤差定義為
(8)
式中:Te為坐標(biāo)變換矩陣.
運(yùn)動(dòng)學(xué)控制率方程式為
(9)
式中:ki>0(i=1,2,3).
輔助速度誤差定義為
(10)
當(dāng)ξq=0時(shí),可以推導(dǎo)出非線性反饋控制方程式為
(11)
將式(8)代人式(5),可以得到
(12)
當(dāng)ξq≠0時(shí),則控制方法存在偏差較大.因此,研究一種能夠自適應(yīng)在線調(diào)整控制方法是非常必要的.
PID控制采用線性控制方式,其控制規(guī)律[10]為
(13)
式中:kp為比例系數(shù);ki為積分系數(shù);kd為微分系數(shù);u(k)為控制器輸出值;e(k)和e(k-1)為第k和k-1次輸入的誤差值;T為采用周期;Ti為積分時(shí)間常數(shù);Td為微分時(shí)間常數(shù).
PID控制采用比例、積分和微分線性組合很難達(dá)到最佳控制效果.對此,采用模糊神經(jīng)網(wǎng)絡(luò)PID控制器,建立輸入誤差、誤差變化率與控制器參數(shù)組成關(guān)系式為
(14)
式中:f1,f2,f3為模糊神經(jīng)網(wǎng)絡(luò);e為誤差;ec為誤差變化率.
采用模糊神經(jīng)網(wǎng)絡(luò)PID控制流程如圖2所示.
圖2 模糊神經(jīng)網(wǎng)絡(luò)PID控制Fig.2 Fuzzy neural network PID control
模糊神經(jīng)網(wǎng)絡(luò)包括輸入層、模糊化層、模糊推理層和輸出層4個(gè)部分,其結(jié)構(gòu)如圖2所示.輸入層采用二維輸入,輸入量為誤差e和誤差變化率ec,輸出層采用3層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu).
圖3 模糊神經(jīng)網(wǎng)絡(luò)Fig.3 Fuzzy neural network
模糊神經(jīng)網(wǎng)絡(luò)輸入層和輸出層關(guān)系如下:
輸入層計(jì)算公式為
(15)
模糊化層采用高斯隸屬度函數(shù),其計(jì)算公式[11]為
(16)
式中:n為模糊子集個(gè)數(shù);cij為隸屬度函數(shù)中心值;bij為隸屬度函數(shù)寬度.
模糊推理層計(jì)算公式[11]為
(17)
輸出層計(jì)算公式為
(18)
式中:ωij為權(quán)值系數(shù).
輸出層輸出的PID控制參數(shù)為
(19)
采用神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)算法對隸屬度函數(shù)中心值、寬度值和權(quán)值進(jìn)行在線修正[11],方程式為
(20)
式中:E(k)為性能評價(jià)指標(biāo)函數(shù);λ為學(xué)習(xí)速率;η為慣性系數(shù).
粒子群算法是模擬鳥群捕食行為的一種群體智能優(yōu)化算法.在N維搜索空間中,將粒子對應(yīng)于優(yōu)化問題,粒子的位置為Xi=(xi1,xi2,…,xiN),飛行速度為Vi=(vi1,vi2,…,viN).在搜索最優(yōu)解過程中,粒子的速度和位置更新公式[12]為
式中:c1,c2為學(xué)習(xí)因子;r1,r2為隨機(jī)數(shù);Vi(t),Vi(t+1)分別為粒子t和t+1時(shí)刻的速度;Xi(t),Xi(t+1)分別為粒子t和t+1時(shí)刻的位置;P(t)為當(dāng)前最優(yōu)值;G(t)為全局最優(yōu)值.
為了加快粒子群算法的收斂速度,粒子群算法速度修改為
(23)
(24)
為了驗(yàn)證改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制效果,采用Matlab軟件對移動(dòng)機(jī)器人跟蹤誤差進(jìn)行仿真.仿真參數(shù)設(shè)置如下:學(xué)習(xí)速率為λ=0.7,慣性系數(shù)為η=0.1,cij取值范圍為[-4,4],bij取值范圍為(0,4),網(wǎng)絡(luò)權(quán)值ωij取值范圍為[-1,1],種群大小為50,最大迭代次數(shù)為200,r1=r2=1,c1=c2=2.假設(shè)移動(dòng)機(jī)器人在正弦波(y=2sin(2πt))干擾的環(huán)境中移動(dòng),移動(dòng)機(jī)器人采用PID控制跟蹤誤差仿真結(jié)果如圖4所示,移動(dòng)機(jī)器人采用改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制跟蹤誤差仿真結(jié)果如圖5所示.
由圖4可知:采用傳統(tǒng)PID控制方法,移動(dòng)機(jī)器人實(shí)際運(yùn)動(dòng)軌跡與理論運(yùn)動(dòng)軌跡偏離較大.由圖5可知:采用改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制方法,移動(dòng)機(jī)器人實(shí)際運(yùn)動(dòng)軌跡與理論運(yùn)動(dòng)軌跡偏離較小.移動(dòng)機(jī)器人在復(fù)雜環(huán)境中,容易受到外界環(huán)境的干擾,傳統(tǒng)PID控制方法很難適應(yīng)多變的復(fù)雜環(huán)境.采用改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制方法,能夠?qū)Χ嘧兊沫h(huán)境進(jìn)行在線調(diào)節(jié)PID控制參數(shù),輸出最優(yōu)控制參數(shù),從而保持控制系統(tǒng)運(yùn)動(dòng)的穩(wěn)定性.因此,采用改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制方法,能夠提高移動(dòng)機(jī)器人運(yùn)動(dòng)軌跡跟蹤精度.
圖4 PID控制誤差Fig.4 PID control error
圖5 改進(jìn)PID控制誤差Fig.5 Improve PID control error
針對移動(dòng)機(jī)器人運(yùn)動(dòng)軌跡偏離誤差較大問題,采用改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制方法,并對控制誤差進(jìn)行仿真驗(yàn)證,主要結(jié)論如下:① 移動(dòng)機(jī)器人采用傳統(tǒng)PID控制方法,與理論軌跡偏離誤差較大,而采用改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制方法,與理論軌跡偏離誤差較小.② 改進(jìn)模糊神經(jīng)網(wǎng)絡(luò)PID控制方法,能夠抑制外界波形的干擾,在線調(diào)節(jié)PID控制參數(shù),維持控制系統(tǒng)的穩(wěn)定性.③ 改進(jìn)粒子群算法搜索速度快,能夠快速地對PID控制系統(tǒng)做出反應(yīng),有效地降低移動(dòng)機(jī)器人運(yùn)動(dòng)軌跡產(chǎn)生的偏差.