董中華,陳鵬飛,李亞龍
(蘭州理工大學(xué) 機(jī)電工程學(xué)院,甘肅 蘭州 730050)
機(jī)械臂是一種多輸入、多輸出且具有時變性、時滯性和高度耦合性的復(fù)雜非線性系統(tǒng)[1]。機(jī)器臂系統(tǒng)的不確定性可能會導(dǎo)致依據(jù)該模型構(gòu)造的控制器性能降低,甚至不穩(wěn)定。在控制器設(shè)計時,很多控制策略都會有局限性,這將會對機(jī)械臂系統(tǒng)輸出跟蹤期望軌跡的實(shí)現(xiàn)帶來巨大影響。因此機(jī)械臂系統(tǒng)中存在不確定項(xiàng)難以避免地會導(dǎo)致系統(tǒng)的性能大大降低[2]。神經(jīng)網(wǎng)絡(luò)應(yīng)用在機(jī)械臂運(yùn)動控制中,可以處理機(jī)械臂系統(tǒng)模型中的不確定性,還能對它進(jìn)行實(shí)時控制[3]。
由于徑向基神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)簡單,具有較強(qiáng)的泛化性能,近年來,很多人對RBF神經(jīng)網(wǎng)絡(luò)在機(jī)械臂控制的方向進(jìn)行了研究,極大地推動了機(jī)械臂的RBF神經(jīng)網(wǎng)絡(luò)控制發(fā)展的進(jìn)程。一些研究人員運(yùn)用RBF神經(jīng)網(wǎng)絡(luò)的特性做出了自適應(yīng)控制[4-5]。其中一部分研究人員在此基礎(chǔ)上結(jié)合魯棒控制,形成神經(jīng)網(wǎng)絡(luò)魯棒自適應(yīng)控制[6-7]。一些研究人員將RBF神經(jīng)網(wǎng)絡(luò)控制和模糊控制相結(jié)合,結(jié)合二者的優(yōu)點(diǎn)組成模糊神經(jīng)網(wǎng)絡(luò)控制[8-9]。隨著現(xiàn)代智能優(yōu)化算法的興起,如遺傳算法(GA)、進(jìn)化策略(ES)和粒子群算法(PSO)等,一些研究人員使用GA優(yōu)化神經(jīng)網(wǎng)絡(luò)的參數(shù),并設(shè)計了GA-RBF神經(jīng)網(wǎng)絡(luò)控制[10-11]。而PSO相對于GA而言,不需要編碼,沒有交叉和變異操作,粒子只是通過內(nèi)部速度進(jìn)行更新,因此原理更簡單、參數(shù)更少、實(shí)現(xiàn)更容易。一些研究人員使用PSO結(jié)合RBF神經(jīng)網(wǎng)絡(luò)在預(yù)測方面的研究很深入,但在機(jī)械臂控制方面不多。文獻(xiàn)[12-13]僅在自校正控制和逆運(yùn)動方面進(jìn)行了研究。
本文在文獻(xiàn)[11]的GA-RBF控制方法中得到啟發(fā),采用了另一種現(xiàn)代智能算法(PSO)來替代GA,設(shè)計了PSO-RBF控制方法。
由于機(jī)械臂的每個關(guān)節(jié)就是一個輸入,也是一個輸出,而且關(guān)節(jié)與關(guān)節(jié)之間又存在著擾動,耦合關(guān)系復(fù)雜。所以機(jī)械臂的系統(tǒng)模型很難精確獲得。通常是用它的靜止模型作為名義模型,再通過反饋進(jìn)行自適應(yīng)調(diào)節(jié),以達(dá)到精確的軌跡跟蹤控制。
假設(shè)被控對象為n關(guān)節(jié)機(jī)械臂,其動態(tài)方程為:
(1)
(2)
在計算力矩控制法中,采用名義模型,設(shè)計控制律為
(3)
將式(2)代入式(1),可得誤差系統(tǒng)為
(4)
在實(shí)際工程中,f(·)通常是未知的,需要估計f(·)并對其補(bǔ)償。利用RBF神經(jīng)網(wǎng)絡(luò)逼近任意非線性函數(shù)的特性逼近f(·),并對其進(jìn)行補(bǔ)償,就可以達(dá)到想要的控制效果。
采用RBF網(wǎng)絡(luò)逼近f(·),其算法為
(5)
y=wTh(x)
(6)
其中:x是RBF神經(jīng)網(wǎng)絡(luò)的輸入;w是神經(jīng)網(wǎng)絡(luò)的權(quán)值;h=[h1,h2,…,hm]T是高斯函數(shù)的輸出。
給定一個很小的數(shù)ε使得RBF逼近公式(3)中的f(·),有如下公式:
(7)
定義逼近誤差為
(8)
當(dāng)逼近誤差η無限趨近于0,則系統(tǒng)的不確定項(xiàng)被有效地逼近,通過補(bǔ)償可以保證準(zhǔn)確的控制。
粒子群優(yōu)化算法屬于進(jìn)化算法的一種,和模擬退火算法相似,它也是從隨機(jī)解出發(fā),通過迭代尋找最優(yōu)解。
首先,粒子群算法將優(yōu)化問題的解當(dāng)作搜索空間中的一只鳥,在搜索的空間中以一定的速度飛行,速度大小根據(jù)它自身以及同伴的飛行經(jīng)驗(yàn)進(jìn)行動態(tài)調(diào)整。鳥被想象成為一個沒有質(zhì)量和體積的粒子,第i個速度粒子在n維空間里的位置表示為向量xi=(xi1,xi2,…,xin),飛行速度表示為向量vi=(vi1,vi2,…,vin)。每個粒子都有一個由被優(yōu)化函數(shù)所決定的適應(yīng)值,而且知道自己到目前為止所發(fā)現(xiàn)的最好位置xpi=(xpi1,xpi2,…,xpin)。此外,每個粒子還知道到目前為止鄰域粒子所發(fā)現(xiàn)的最好位置xg=(xg1,xg2,…,xgn)。PSO算法是一種基于迭代的優(yōu)化算法,第t1次迭代時,粒子將根據(jù)自身的經(jīng)驗(yàn)和同伴的經(jīng)驗(yàn)來決定下一步運(yùn)動速度和位置?;綪SO算法的粒子位置和速度的更新公式如下:
vij(t+1)=wvij(t)+c1r1[xpij(t)-xij(t)]+c2r2[xgi(t)-xij(t)]
(9)
xij(t+1)=xij(t)+vij(t+1)
(10)
其中:w為慣性權(quán)重;c1和c2為學(xué)習(xí)因子;r1和r2為服從均勻分布U(0,1)的隨機(jī)數(shù);i=1,2,…,N,j=1,2,…,N,N為粒子規(guī)模。
在已知初始輸入范圍的條件下,運(yùn)用PSO算法優(yōu)化出最佳的網(wǎng)絡(luò)權(quán)值w。取代優(yōu)化參數(shù)向量n為個體粒子,PSO算法每次迭代得到的參數(shù)值為
nm=wTm=1,2,…,S
(11)
其中S為粒子種群規(guī)模。
不確定性誤差為公式(8),采用不確定項(xiàng)的逼近誤差作為參數(shù)選擇的最小目標(biāo)函數(shù),設(shè)計個體適應(yīng)度函數(shù)為
(12)
粒子群算法更新RBF權(quán)值的流程圖如圖1所示。
圖1 粒子群優(yōu)化算法流程圖
在設(shè)計好PSO優(yōu)化RBF參數(shù)的流程圖后,PSO-RBF神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制系統(tǒng)如圖2所示。
圖2 PSO-RBF神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制系統(tǒng)框圖
根據(jù)制定好的PSO-RBF神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制系統(tǒng)和參考文獻(xiàn)[13],針對式(1)設(shè)計如下控制器:
(13)
將式(13)代入式(1),整理可得
(14)
(15)
這是一個標(biāo)準(zhǔn)的現(xiàn)代控制理論方程。
設(shè)計Lyapunov函數(shù)來驗(yàn)證其穩(wěn)定性:
(16)
其中γ>0。
對V求導(dǎo),整理可得
(17)
為了和文獻(xiàn)[13]中的結(jié)果進(jìn)行比較,運(yùn)用文獻(xiàn)中的自適應(yīng)率
(18)
(19)
由上述的已知條件可得
(20)
其中λmin和λmax分別是矩陣Q的最小特征值和矩陣P的最大特征值。
(21)
由式(21)可得出結(jié)論,增大Q的特征值或減小P的特征值可以提高x的收斂效果。
本控制是在RBF神經(jīng)網(wǎng)絡(luò)控制的基礎(chǔ)上,通過粒子群算法優(yōu)化了控制效果,引入文獻(xiàn)[13]中的二連桿機(jī)械臂作為被控對象進(jìn)行仿真對比。
被控對象為雙關(guān)節(jié)機(jī)械臂如圖3所示,其動力學(xué)方程為
各項(xiàng)參數(shù)參考文獻(xiàn)[13]。
圖3 雙關(guān)節(jié)機(jī)械臂示意圖
設(shè)關(guān)節(jié)角度和關(guān)節(jié)角速度的期望跟蹤指令為
仿真中,采用控制律式(14)和自適應(yīng)律式(18),控制參數(shù)取
采用粒子群優(yōu)化算法對RBF神經(jīng)網(wǎng)絡(luò)中的權(quán)值w進(jìn)行優(yōu)化,在優(yōu)化工程中,粒子群優(yōu)化算法的參數(shù)為:迭代次數(shù)T=100,種群規(guī)模S=50,粒子維數(shù)D=10。學(xué)習(xí)因子c1=c2=0.5。
仿真結(jié)果如圖4-圖7所示。
圖4 關(guān)節(jié)1和關(guān)節(jié)2的軌跡跟蹤
圖5 關(guān)節(jié)1和關(guān)節(jié)2的角速度跟蹤
圖6 關(guān)節(jié)1和關(guān)節(jié)2的軌跡跟蹤誤差
圖7 關(guān)節(jié)1和關(guān)節(jié)2的速度跟蹤誤差
從圖4和圖5分析得出,PSO- RBF神經(jīng)網(wǎng)絡(luò)控制的軌跡和速度與理想的軌跡和速度基本吻合,而且與RBF神經(jīng)網(wǎng)絡(luò)控制相比,PSO-RBF的軌跡更快地吻合理想軌跡。
從圖6和圖7可以看出,關(guān)節(jié)1軌跡吻合快將近4s,關(guān)節(jié)2軌跡吻合快將近2s。這表明PSO-RBF神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制實(shí)現(xiàn)了二連桿機(jī)械臂的高精度軌跡控制效果。通過和RBF控制方法對比,PSO-RBF神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制方法能夠確保關(guān)節(jié)1和關(guān)節(jié)2的不確定項(xiàng)誤差在一個更小的收斂領(lǐng)域,這說明該方法能更快逼近系統(tǒng)不確定項(xiàng),保證控制系統(tǒng)在更短時間獲得補(bǔ)償并提高性能。
1)RBF神經(jīng)網(wǎng)絡(luò)控制能夠在部分未確定機(jī)械臂模型參數(shù)的情況下獲得較好的軌跡跟蹤性能。而用PSO優(yōu)化后的RBF神經(jīng)網(wǎng)絡(luò)控制可以獲得更好的軌跡跟蹤性能。
2)通過和RBF神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制相比,PSO-RBF神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制系統(tǒng)能夠在更短時間內(nèi)吻合理想控制軌跡,且控制穩(wěn)定,提高了控制性能。