黃開啟,王雷坤
(江西理工大學 機電工程學院,江西 贛州 341000)
隧道鑿巖機器人是隧道施工的主要設備,其鉆臂采用的雙三角定位結構具有動作迅速、結構緊湊、運行平穩(wěn)、鑿巖無盲區(qū)等優(yōu)點[1]。為使鉆臂能夠平穩(wěn)運行,減小機械磨損,避免干涉發(fā)生,需要對鉆臂液壓缸伸縮的速度進行有效控制??紤]到雙三角鉆臂非線性、多輸入多輸出和時變的特點以及隧道復雜工作環(huán)境中的干擾,采用自適應控制[2]策略是較為合適的選擇。
廣義預測控制(generalized predictive control,GPC)是在廣義最小方差控制的基礎上,引入多步預測的思想,可以預測未來多步模型輸出的一種自適應控制。由于采用滾動優(yōu)化和反饋校正,對時滯非線性和參數(shù)攝動等具有很強的克服能力[3],這些優(yōu)勢使GPC在機器人[4,5]、艦船[6]、車輛[7,8]、工業(yè)生產(chǎn)[9,10]以及電力[11]等諸多領域得到了大量的實際應用,隧道鑿巖機器人鉆臂控制中對雙三角鉆臂兩支臂缸的控制也采用了該方法[1]。
盡管GPC顯示出了諸多優(yōu)良的性能,但仍存在許多問題有待進一步解決。近年來對GPC的研究多集中于改進在線算法[9]和非線性系統(tǒng)的GPC研究[10],在改善控制效果的同時,也將GPC起始階段控制不穩(wěn)定以及計算中可能出現(xiàn)的病態(tài)問題突顯了出來。為解決上述問題,李中奇等人[11]采用雙自適應廣義預測控制[12],對GPC中的模型參數(shù)和控制參數(shù)也進行了實時控制,解決了列車在啟動和制動階段控制效果較差這一問題,而對計算中可能出現(xiàn)的病態(tài)則并未考慮,且相較于GPC更加復雜;李欣欣等人[13]以比例—積分—微分(PID)控制為基礎,引入GPC算法,依據(jù)自適應參數(shù)的變化率確定自適應參數(shù)是否參與控制,雖然消除了起始階段控制輸出不穩(wěn)的現(xiàn)象,但其他時段相較于GPC控制效果提升不明顯甚至會出現(xiàn)惡化。
本文在GPC基礎上推導出自校正參數(shù)KI,并以其變化為多模控制[14]的切換依據(jù),即KI在一定區(qū)間內(nèi)采用GPC模式,超出則切換至PID模式,兩種模式下均對自校正參數(shù)進行更新計算。通過上述方法,在有效消除GPC起始階段不穩(wěn)定及控制中可能出現(xiàn)的控制效果不佳現(xiàn)象的同時,保證了計算發(fā)生病態(tài)時控制的正常進行。
雙三角鉆臂具有6個轉動關節(jié)和3個移動關節(jié),是一種典型的多冗余機械臂。其定位機構主要指一對俯仰液壓缸和一對支臂液壓缸,兩者均呈前后對稱分布,鑿巖機和釬桿位于托架上,鉆臂的上下左右擺動由左、右支臂液壓缸的伸縮實現(xiàn),推進器的上下左右擺動由俯仰液壓缸實現(xiàn),鉆臂長度的變化由鉆臂伸縮液壓缸實現(xiàn),推進器和釬桿的正向翻轉和側向滾動分別由翻轉液壓缸和傾反液壓缸實現(xiàn),推進器和釬桿之間的運動差距由推進器補償液壓缸進行補償。為達到直接定位的目的,兩支臂液壓缸的運動需要協(xié)調,使速度能夠成比例的變化,故需要對兩支臂液壓缸的伸縮速度進行精確的控制。
圖1 雙三角鉆臂結構簡圖
GPC有著良好抗干擾能力,但起始階段存在因所獲信息少而造成的控制不穩(wěn)定現(xiàn)象,且計算中需要對矩陣求逆,當矩陣不可逆時會造成數(shù)值病態(tài),實際應用中存在一定的隱患[15]。雙??刂瓶梢杂行П苊馍鲜鋈秉c,即在起始階段以及控制出現(xiàn)異常時采用其他控制模式,待系統(tǒng)重新穩(wěn)定時再次切換至GPC模式??紤]到整體上GPC模式起主導作用,其他模式運行相對較少,故采用控制效果穩(wěn)定且簡便的PID控制與GPC構成雙??刂平Y構。
CARIMA模型作為廣義預測控制的模型,具有辨識效果好,對未建模動態(tài)具有較好的魯棒性等優(yōu)點,其形式為
A(z-1)y(t)=B(z-1)u(t-1)+C(z-1)ω(k)/Δ
(1)
出于增強系統(tǒng)魯棒性的考慮,在目標函數(shù)中考慮當前時刻對未來時刻的影響,采用如下的目標函數(shù)
(2)
為得到j步后的輸出y(k+j)的預測值,引入Diphantine方程
1=Ej(z-1)A(z-1)Δ+z-jF(z-1)
(3)
Ej(z-1)B(z-1)=Gj(z-1)+z-jHj(z-1)
(4)
式中g0,g1,…,gN-1為被控對象的脈沖響應系數(shù),為簡化書寫,將多項式括號內(nèi)z-1因子省略。由式(1),式(3),式(4)可得被控對象的廣義預測方程
y(k+j)=GjΔu(k+j-1)+Fjy(k)+
HjΔu(k-1)+Ejε(k+j)
(5)
取j=1,…,N,將式(5)寫成向量矩陣形式
Y=GU+Fy(k)+HΔu(k-1)+E
(6)
性能指標函數(shù)式(2)用向量表示為
J=E{(Y-Yr)T(Y-Yr)+λUTU}
(7)
將式(6)式代入式(7),對U求偏導,則可求得使J最小的空置律增量向量為
U=(GTG+λI)-1GT[Yr-Fy(k)-HΔu(k-1)]
(8)
取(GTG+λI)-1GT的第一行記作
(9)
根據(jù)滾動優(yōu)化和反饋校正原理,控制律增量可以寫成如下向量表示形式
(10)
控制器中包含GPC模式和PID模式,運行中需要對采用哪種模式進行判定。考慮到GPC為控制的主體,故應由GPC控制得出的數(shù)據(jù)作為切換依據(jù)。由GPC推導得出的GPC-PID控制算法將原有的自適應性能轉化為自校正參數(shù)KP,KI,KD的變化,顯然以自校正參數(shù)作為判定標準不僅可以有效反映出GPC控制效果的優(yōu)良與否,且具有更高的可操作性。設PID控制結構為
u(t)=u(t-1)+KIyr(t)-
[KP+KI+KD-(KP+2KD)z-1+KDz-2]yf
(11)
式中KP,KI,KD分別為GPC-PID控制的比例、積分和微分系數(shù),由式(10)可得
(12)
比較式(11)和式(12)可得KP,KI,KD的值
(13)
由式(8)可知,在控制加權因子λ已定的情況下,P僅受由脈沖響應矩陣G的影響,故在結構變化不大的情況下,KI會穩(wěn)定在某一較小的范圍內(nèi),針對非線性系統(tǒng)可采用分段設定范圍的方式提高控制效果,亦可擴大波動范圍,簡化結構。由于GPC控制中逆運算存在于式(8)當中,故當運算中出現(xiàn)病態(tài)時,會直接造成KI值異常從而觸發(fā)切換條件。由式(13)、式(15)可知KP,KD在受G影響的同時,還受F影響,其波動受噪聲影響嚴重,因此設定判定結構時只考慮設定的KI波動范圍,而另外兩者不做限定。自校正參數(shù)僅做切換模式的判別依據(jù),PID控制模式中的參數(shù)另行設置。GPC交叉PID控制結構如圖2所示。
圖2 雙模控制流程
為對改進的控制進行驗證,擬以Solidworks三維建模模擬各部件之間復雜的運動約束、嚴格的位置關系和質量分布,通過SimMechanics插件將MATLAB編寫的控制程序以及SimHydraulic建立的液壓部分與之聯(lián)合,由此建立的虛擬樣機用以驗證雙??刂菩Ч?。
圖3 整機仿真模型
實際應用中GPC整體控制效果優(yōu)良,但仍然存在控制效果不佳的現(xiàn)象,增加預測步長N會提高跟蹤效果,但會增加計算量,為平衡各項性能,本文中雙??刂萍癎PC中預測步長N采用18。其余參數(shù)對控制效果有影響,但不影響計算量,設定控制時域Nu=2,控制序列加權系數(shù)λ=0.5,柔化系數(shù)α=0.5。PID控制模式下,比例、積分和微分系數(shù)分別為KPr=3.5,KIr=1.05,KDr=0.3。
GPC-PID控制器結構含有3個自校正參數(shù),但相較于KP和KD,KI的穩(wěn)定性明顯更好,如圖4所示。
圖4 自校正參數(shù)變化
從圖4中可以看出,2 s后KI已基本穩(wěn)定在2左右,而另外兩個自適應參數(shù)調整則相對較慢且波動范圍較大,這與前文分析相一致。為簡化判定過程,同時增強GPC模式的實際應用范圍,避免多次切換至PID模式造成控制效果下降,故設定自校正參數(shù)KI為模式切換判定依據(jù)。
KI允許波動的范圍設定過大會導致出現(xiàn)異常時不能及時切換至PID模式,使得雙模控制起不到應有的作用,而范圍太小會導致在GPC模式允許的范圍內(nèi)過早切換至PID模式,使得控制效果過多的受PID模式影響。
取2 s之后目標值與實際值的平均偏差為觀察對象,對PID、GPC以及雙??刂七M行對比,如圖5所示。PID和GPC僅起對比作用,兩者控制效果除受隨機噪聲影響出現(xiàn)小幅波動外與波動半徑無關。當設定自校正參數(shù)波動區(qū)間半徑小于0.1時,雙??刂频钠骄铍S區(qū)間半徑的增加而減小,0.1~0.2之間平均偏差基本穩(wěn)定在0.001 67左右,之后隨半徑的增加而增大,但增加至0.8后控制效果即趨近于GPC,實驗結果與分析相一致。此外,從圖中可以看出,合理的設置自校正參數(shù)波動半徑,可以在GPC控制效果不佳時及時切換至PID模式,避免因預測步長不足而出現(xiàn)的部分控制效果不佳現(xiàn)象,從而有效減少跟蹤偏差,提高控制效果。波動半徑為0.2時控制效果對比如表2所示。
圖5 波動區(qū)間半徑與平均偏差的關系
控制方式雙??刂艷PCPID平均偏差/(m·s-1)0.001670.001720.0018
GPC起始階段存在不穩(wěn)定現(xiàn)象,雙??刂浦杏捎赑ID控制模式的介入可以在GPC參數(shù)不穩(wěn)定的情況下保證控制的相對穩(wěn)定,待參數(shù)穩(wěn)定后切換至GPC模式。同時由于GPC中存在對矩陣求逆的過程[16],當矩陣不可逆時則無法繼續(xù)進行數(shù)據(jù)計算,進而造成控制無法正常進行,而雙??刂朴捎赑ID控制的介入則可以避免掉上述缺點。為模擬計算中出現(xiàn)的計算病態(tài),設定4 s時,(GTG+λI)=0以模擬無法求逆的情況。在相同隨機干擾下,雙??刂婆cGPC控制對比如圖6所示。
圖6 雙??刂婆cGPC對比
由圖6可以看出,雙??刂仆ㄟ^切換至PID控制,避免了起始階段的異常波動,起始階段的最大波動未超過0.005 m/s,而GPC則在起始階段存在明顯的不穩(wěn)定現(xiàn)象,其最大波動超過了0.01 m/s。當運行至4 s時,由于不可逆矩陣的出現(xiàn)導致數(shù)據(jù)更新停止,GPC控制無法繼續(xù)進行,而雙??刂苿t順利通過計算異常值點,完成余下的控制部分。為證明雙??刂茖ζ鹗茧A段優(yōu)化的通用性,GPC和雙??刂凭O逻M行2 000次仿真求均值,如表2所示,在起始階段雙??刂频淖畲笃蠲黠@優(yōu)于GPC最大偏差,接近于PID的偏差,由此可以看出雙模控制對GPC起始階段的不穩(wěn)定現(xiàn)象有著良好的抑制作用。
表2 起始階段最大偏差均值(2 000次仿真均值)
1)基于GPC-PID算法獲得自校正參數(shù)KI,并根據(jù)此參數(shù)進行PID模式和GPC模式切換,有效避免了GPC在鉆臂起始階段控制的不穩(wěn)定現(xiàn)象。
2)合理的自校正參數(shù)變化范圍能GPC-PID雙??刂圃贕PC模式控制效果惡化時切換至PID模式,提高了鉆臂運動全過程的控制效果。
3)GPC-PID雙??刂瓶梢栽谟嬎惆l(fā)生病態(tài)是保證控制的正常進行,從而降低失控的風險。