徐 健,惠 楠,蘇澤斌
(西安工程大學(xué) 電子信息學(xué)院,陜西 西安 710048)
軟體機(jī)器人在勘探、救援、醫(yī)療等領(lǐng)域有廣闊的應(yīng)用前景。DEA作為軟體機(jī)器人,具有能量密度高[1]、變形大[2]等特點,并且可以完成移動、抓取等任務(wù)[3]。但DEA具有黏彈性的特點限制了在機(jī)器人領(lǐng)域的運動精度,為了實現(xiàn)對DEA的有效控制,可采用流變模型對DEA進(jìn)行建模,從而模擬DEA的黏彈性效應(yīng)[4]。對于DEA的控制分為前饋控制和反饋控制[5]。反饋控制相對于前饋控制具有更理想的控制精度,采用PID控制DEA具有較好的跟蹤性能[6]。PID控制的難點在于其參數(shù)整定問題,不同參數(shù)的整定方法會對PID的性能產(chǎn)生巨大差異,常規(guī)的PID參數(shù)整定方法相對復(fù)雜,很難實現(xiàn)最優(yōu)整定參數(shù)[7-8]。
針對傳統(tǒng)PID控制的缺點,采用仿生智能算法優(yōu)化PID參數(shù)是一種有效的方法。BAS算法是近年來提出的一種仿生優(yōu)化算法,在不需要函數(shù)的具體形式情況下,就可以實現(xiàn)高效尋優(yōu)[9]。BAS算法的生物原理是一種通過模擬天牛覓食時根據(jù)觸角來接收的食物氣味強(qiáng)弱,確定搜索方向,最終找到全局最優(yōu)參數(shù)的一種新型智能優(yōu)化算法[10]。該算法有2個優(yōu)點:第一,不需要知道函數(shù)具體形式和梯度信息;第二,能夠降低運算量,縮短尋優(yōu)時間[11-12]。
針對介電彈性體構(gòu)成的執(zhí)行器在驅(qū)動過程中存在難以精準(zhǔn)控制的缺點,提出采用BAS算法和PID結(jié)合的控制方法來實現(xiàn)對DEA的精確控制。為了給DEA后續(xù)的實際應(yīng)用提供理論依據(jù),建立了DEA的動力學(xué)模型,利用Matlab/SIMULINK對所建立的模型和控制算法進(jìn)行了仿真研究,控制系統(tǒng)采用BAS算法,對PID進(jìn)行參數(shù)優(yōu)化,實現(xiàn)對DEA的有效控制。
介電彈性體在外加電壓作用下會發(fā)生形變,當(dāng)給柔性電極加載電壓,在電場的作用下介電彈性體表面會積累正負(fù)電荷,導(dǎo)致介電彈性體厚度變薄且平面方向上擴(kuò)張變形;當(dāng)柔性電極電壓卸載,介電彈性體會恢復(fù)至原狀,則介電彈性體實現(xiàn)從電能到機(jī)械能的轉(zhuǎn)化[13]。DEA是由介電彈性體材料和柔性骨架組成的軟體機(jī)器人。DEA在電能和機(jī)械能轉(zhuǎn)化過程之中存在黏彈性效應(yīng)[14]。因此,可采用流變模型中的彈簧阻尼器對DEA的黏彈性效應(yīng)導(dǎo)致的非線性運動進(jìn)行建模[15]。
DEA模型的動力學(xué)方程可表示為
(1)
式中:i=1,2,3,4;xi為彈簧變形;此模型中表示黏彈性的彈簧阻尼動力學(xué)由2個單元組成,彈簧k為一個單元,彈簧ki和阻尼器ci組成另一個單元;m為DEA的質(zhì)量,此處取9 g;Φ為DEA的驅(qū)動電壓;Ω(x)為DEA長度變化的線性函數(shù);ζ為DEA運動過程中的阻力;當(dāng)x′>0,sgn(x′)=1;當(dāng)x′=0,sgn(x′)=0;當(dāng)x′<0,sgn(x′)=-1,為了保證系統(tǒng)的穩(wěn)定性,可以采用PID使DEA的誤差收斂。
在DEA模型中,將式(1)中Φ2作為PID的輸出,有
(2)
式中:i=1,2,3,4;x為DEA的輸出;ζsgn(x′)/m為由摩擦力導(dǎo)致的擾動,并且有界可收斂。
PID是一種基于過去、現(xiàn)在和未來信息估計的算法[16]。PID參數(shù),即比例參數(shù)Kp、積分參數(shù)Ki和微分參數(shù)Kd[17]。比例參數(shù)Kp反映系統(tǒng)偏差,通過調(diào)節(jié)能夠提高系統(tǒng)靈敏度及系統(tǒng)穩(wěn)定性;積分參數(shù)Ki作用是消除系統(tǒng)穩(wěn)態(tài)誤差,改善系統(tǒng)無差度;微分參數(shù)Kd反映偏差信號變化規(guī)律,依據(jù)這些規(guī)律進(jìn)行超前控制調(diào)節(jié),改善系統(tǒng)能動性。BAS算法和傳統(tǒng)PID算法相結(jié)合,使得控制系統(tǒng)可以利用BAS算法的參數(shù)優(yōu)化能力來調(diào)整PID的參數(shù)?;贐AS算法的PID控制框架如圖1所示。
圖 1 DEA控制系統(tǒng)Fig.1 DEA control system
圖1中,ITAE為時間乘以絕對誤差的積分,xd為期望位移,x為輸出位移,u為PID的輸出量,DEA的位移受到電壓平方的影響,DEA的輸入為電壓信號Φ,而PID的輸出量u為電壓平方Φ2,所以將PID控制量的平方根作為DEA的輸入。BAS算法可以通過基于誤差的ITAE函數(shù)對PID參數(shù)進(jìn)行優(yōu)化,在迭代過程中,減小DEA產(chǎn)生的誤差,從而提高DEA的驅(qū)動精度。
BAS算法是一種元啟發(fā)式智能優(yōu)化算法[18],天牛每次的運動軌跡就是一個優(yōu)化解決方案。BAS算法的適應(yīng)度函數(shù)選用ITAE作為指標(biāo)[19-20],可表示為
(3)
式中:e(t)為系統(tǒng)產(chǎn)生的誤差。PID參數(shù)整定可以轉(zhuǎn)化為BAS算法的三維參數(shù)優(yōu)化問題。在BAS算法迭代過程中,利用天牛的位置來更新PID參數(shù)。當(dāng)PID控制系統(tǒng)的性能滿足要求或搜索過程達(dá)到最大迭代次數(shù)時,以天牛的最佳位置作為最終的PID參數(shù)。BAS-PID控制器的參數(shù)整定步驟如下。
1) 初始化天牛位置和天牛須的朝向信息,天牛朝向信息可表示為
(4)
式中:D賦值為3,為優(yōu)化參數(shù)的維數(shù);rand()為[0,1]之間的一個隨機(jī)數(shù)。
2) 天牛三維位置參數(shù)分別賦值給Kp、Ki和Kd,運行PID控制系統(tǒng)進(jìn)行仿真。
3) 將PID控制系統(tǒng)產(chǎn)生的誤差代入適應(yīng)度函數(shù)G中計算當(dāng)前適應(yīng)度值。
4) 每次迭代產(chǎn)生的適應(yīng)度值和對應(yīng)的PID參數(shù)按照適應(yīng)度從大到小進(jìn)行存儲更新。
5) 判斷是否迭代到最大迭代次數(shù)T=80或適應(yīng)度值G≤0.01,若未達(dá)到,則天牛觸須三維參數(shù)分別賦值給Kp、Ki和Kd,運行控制系統(tǒng)進(jìn)行仿真。計算觸須適應(yīng)度值,并且觸須長度lt和步長δt以及左右觸角位置pl、pr采用式(5)進(jìn)行更新,并且天牛向適應(yīng)度小的方向進(jìn)行移動。
(5)
式中:lt為天牛在t時刻觸須的長度參數(shù);δt為天牛t時刻的步長參數(shù);dt為天牛在t時刻觸角之間的距離參數(shù);pt為天牛在t時刻的位置參數(shù);pr為天牛右觸須的位置參數(shù);pl為天牛左觸須的位置參數(shù)。
6) 天牛位置參數(shù)采用式(6)更新,并且返回第2)步進(jìn)行循環(huán)迭代。
pt+1=pt+?tbsgn(G(pl)-G(pr))
(6)
式中:sgn函數(shù)用來返回步長參數(shù)的正負(fù),當(dāng)G(pl)大于G(pr)時,天牛向左移動,當(dāng)G(pl)小于G(pr)時,天牛向右移動,當(dāng)G(pl)等于G(pr)時,天牛保持原位置不動。
7) 當(dāng)?shù)螖?shù)T=80或適應(yīng)度值G≤0.01,迭代結(jié)束。從存儲的PID參數(shù)和適應(yīng)度值中輸出最優(yōu)PID參數(shù)和對應(yīng)的適應(yīng)度值。BAS-PID工作流程如圖2所示。
圖 2 BAS-PID工作流程Fig.2 BAS-PID workflow
圖2中,BAS-PID在迭代過程中采用多只天牛搜索、變步長和變觸須長度增強(qiáng)全局搜索能力,同時避免陷入局部最優(yōu),由于天牛初始位置隨機(jī),所以通過設(shè)定天牛的位置邊界的方式,提高BAS算法搜索最優(yōu)PID參數(shù)的準(zhǔn)確性。
為了驗證本文提出的BAS-PID控制方案的有效性,在Matlab/SIMULINK中搭建PID控制系統(tǒng)和DEA模型,并將BAS算法在M文件中實現(xiàn)。在BAS運行中調(diào)用PID的數(shù)據(jù),對PID參數(shù)進(jìn)行迭代優(yōu)化。BAS算法參數(shù):種群數(shù)量為10,初始步長δ0=5,最大迭代次數(shù)T=80,適應(yīng)度函數(shù)最小精度G=0.01。在仿真實驗中,BAS-PID在迭代過程中的適應(yīng)度曲線如圖3所示,BAS-PID、BP-PID和PID對不同參考信號的跟蹤效果如圖4所示。
圖 3 BAS-PID適應(yīng)度值的迭代曲線Fig.3 Iterative curve of BAS-PID fitness value
(a) 不同控制算法正弦信號跟蹤曲線
(b) 不同控制算法三角信號跟蹤曲線圖 4 不同控制算法跟蹤曲線對比Fig.4 Curve tracking of different control algorithms
從圖3可看出,當(dāng)參考信號為正弦信號和三角信號情況下,BAS算法分別在的第14次和第30次迭代時,搜索到最優(yōu)PID參數(shù),最小的適應(yīng)度值分別為1.32和1.31,由此可見,BAS-PID在收斂速度上取得較好結(jié)果,能夠用較少的迭代次數(shù)達(dá)到最優(yōu)值。從圖4可看出,PID算法和BP-PID算法在不同波形的參考信號拐點處都存在較大誤差,這主要是由于黏彈性效應(yīng)導(dǎo)致控制器難以及時響應(yīng),所以PID算法和BP-PID算法在拐點處都存在明顯滯后于參考曲線。BAS-PID算法在不同波形的參考曲線拐點處、上升和下降部分均可以進(jìn)行有效跟蹤,在控制過程中減少了DEA黏彈性影響,提高了DEA的控制精度。仿真結(jié)果說明:BAS-PID算法的調(diào)節(jié)能力相較于PID算法和BP-PID算法能夠更準(zhǔn)確跟蹤DEA的參考信號,具有良好的控制性能。
為了量化3種控制算法的優(yōu)劣,選取最大跟蹤誤差emax和均方根誤差erms進(jìn)行對比,最大跟蹤誤差emax和均方根誤差erms采用式(7)進(jìn)行計算,具體精度參數(shù)如表1所示。
(7)
式中:x為輸出位移;xd為期望位移;N為采樣的次數(shù)。
表1 不同控制算法精度參數(shù)
從表1可看出,在正弦輸入信號下,BAS-PID比常規(guī)的PID最大跟蹤誤差降低10.08 mm,均方根誤差降低0.21 mm,在三角輸入信號下,BAS-PID比常規(guī)的PID最大跟蹤誤差降低5.78 mm,均方根誤差降低0.13 mm。BP-PID的控制精度優(yōu)于常規(guī)PID但仍有較大誤差。文獻(xiàn)[15]所提出的生物啟發(fā)控制方法對于正弦信號的最大跟蹤誤差為0.97 mm,均方根誤差為0.47 mm。BAS-PID的最大跟蹤誤差為0.95 mm,比生物啟發(fā)控制方法的最大跟蹤誤差略有降低,均方根誤差從0.47 mm降低至0.03 mm。
本文提出并使用BAS-PID算法完成了對介電彈性體執(zhí)行器驅(qū)動控制方法的研究。首先,建立了介電彈性體執(zhí)行器的模型并對其驅(qū)動過程中的黏彈性效應(yīng)進(jìn)行模擬驗證;其次,詳細(xì)介紹了BAS-PID算法,將BAS算法中天牛的三維信息引入PID參數(shù)中,在迭代優(yōu)化過程中,使得衡量系統(tǒng)穩(wěn)定性的ITAE適應(yīng)度函數(shù)減小,解決DEA存在的黏彈性問題;最后,通過仿真對比實驗驗證了BAS-PID、BP-PID、PID控制算法的控制效果,其中BAS-PID算法產(chǎn)生的誤差更小,說明本文的控制算法可以實現(xiàn)介電彈性體執(zhí)行器的精確控制。