曹昌勇,林 華,苗 芳
(1.皖西學(xué)院 機械與車輛工程學(xué)院,安徽 六安 237012;2.遼寧省計量科學(xué)研究院,沈陽 110004)
電液伺服系統(tǒng)質(zhì)量輕,響應(yīng)快[1],已在許多場合得到應(yīng)用。同時,系統(tǒng)的參變量多,偶合性強,存在不確定的非線性因素以及干擾問題,針對這些問題,許多學(xué)者進(jìn)行了相關(guān)方面的研究。王喆等[2]提出了一種軋機兩側(cè)液壓伺服位置自抗擾同步控制方法,提高了系統(tǒng)的動態(tài)性能和抗干擾能力。韓以倫等[3]利用電液伺服系統(tǒng)設(shè)計實現(xiàn)了液壓伺服張緊裝置,并利用模糊PID參數(shù)整定方法實現(xiàn)了裝置的高精度控制。李元春等[4]設(shè)計了液壓機械臂自適應(yīng)二階滑模控制律,使系統(tǒng)精確地跟蹤期望軌跡并具有較強的魯棒性。王云鵬等[5],劉艷雄等[6]采用遺傳算法實現(xiàn)了PID控制參數(shù)的在線整定,加快了伺服缸的響應(yīng)速度,提高了控制精度。黃山云等[7]以DSP控制器為核心,設(shè)計實現(xiàn)了伺服系統(tǒng)的神經(jīng)網(wǎng)絡(luò)PID控制,減小了響應(yīng)的超調(diào)量,提高了系統(tǒng)的響應(yīng)速度。
差分進(jìn)化算法是一種隨機啟發(fā)式搜索算法,采用實數(shù)編碼,簡單的變異操作和一對一競爭生存策略,降低了遺傳操作的復(fù)雜性,其性能要優(yōu)于遺傳算法、粒子群算法等進(jìn)化算法?;?刂?SMC)的非線性控制表現(xiàn)為控制的不連續(xù)性[8],根據(jù)系統(tǒng)的當(dāng)前狀態(tài),迫使系統(tǒng)按照預(yù)定“滑動模態(tài)”軌跡運動,使得控制響應(yīng)速度快、對參數(shù)的變化以及干擾不靈敏,并且具有簡單的物理實現(xiàn)。魯棒控制[9]可很好地控制系統(tǒng)的性能,在一定參數(shù)攝動下維持系統(tǒng)的某些特性。
本文分析了電液伺服系統(tǒng)控制數(shù)學(xué)模型,利用滑??刂圃砗鸵活怟型觀測器實現(xiàn)系統(tǒng)輸出的位置跟蹤以及對位置的速度和加速度估計。通過Matlab/Simulink平臺設(shè)計實現(xiàn)控制算法的連續(xù)系統(tǒng)仿真,從而可分析控制算法的穩(wěn)定性、響應(yīng)速度和控制精度。
張鑫[10]、馮業(yè)恒[11]根據(jù)電液伺服系統(tǒng)本身的物理特性以及對外部環(huán)境的分析,將伺服閥當(dāng)作無摩擦和泄漏的四通滑閥,液壓缸也處于理想狀態(tài),并在工作腔內(nèi)每處壓力相同,液壓油溫度和容積彈性模量均視為常數(shù),得到伺服缸位置傳遞函數(shù)。
(1)
式中:Y為伺服缸位置傳遞函數(shù);s為拉普拉斯算子;Kn為傳遞函數(shù)增益;a、b、c、d為s多項式系數(shù);Kq為電液伺服閥的流量增益;Ap為液壓缸工作面積;Xv為主控制信號;Kce為總流量壓力系數(shù);Vt:為液壓缸總?cè)莘e;βe為液壓油彈性模量;F為干擾信號;Mt為折合到活塞桿的總質(zhì)量;Be為活塞及負(fù)載的粘性阻尼系數(shù);K為負(fù)載彈性剛度。
由傳遞函數(shù)模型可知,信號的微分獲取是控制的關(guān)鍵因素,精確地獲取信號的速度對于控制系統(tǒng)至關(guān)重要,而根據(jù)傳感器測量得到信號的速度比較困難,采用K型低增益觀測器對信號速度和加速度進(jìn)行估計是一種可行的方法。
K觀測器模型可設(shè)計為
(2)
若使A的特征值具有負(fù)實部??墒笰的特征值全為-10,可得觀測器的k1、k2、k3為
(3)
運用滑??刂茣r,首先應(yīng)建立滑模函數(shù),取跟蹤誤差e,滑模因子c1、c2滑模因子滿足Hurwitz條件[12-13],設(shè)計滑模函數(shù)s為
(4)
式中:x1為系統(tǒng)輸出;x1d為系統(tǒng)輸入。
滑模控制器輸入為
(5)
差分進(jìn)化算法通過群體內(nèi)個體間合作與競爭智能地優(yōu)化搜索,降低了遺傳操作的復(fù)雜性,通過多點搜索以大概率找到全局最優(yōu)解,算法的基本流程包括四個步驟。
初始群體的生成是隨機的,其中第i個個體可表示為
(6)
基本變異操作可隨機選擇3個不相同個體進(jìn)行如下計算。
hij(t+1)=xp1j(t)+F(xp2j(t)-xp3j(t))
(7)
式中:h為變異后的個體值,i≠p1≠p2≠p3;t為變異代數(shù);F為變異因子。
為了增加群體的多樣性,設(shè)置交叉概率與交叉算法為:
(8)
式中:v為交叉后的個體值;randlij∈(0,1);P為交叉概率,P∈(0,1)。
交叉操作后要通過評價函數(shù)確定xi是否為下一代成員,評價函數(shù)需根據(jù)具體實際建立,本文根據(jù)輸入輸出誤差e,控制器輸入u設(shè)計評價函數(shù),并采用懲罰函數(shù)避免超調(diào),模型如下。
(9)
式中:J為評價函數(shù);ω1、ω2、ω3為權(quán)值。
根據(jù)式(5)和式(6)可知c1、c2和ks是滑??刂浦兄匾娜齻€參數(shù)。c1、c2決定了滑模函數(shù)滑模面的位置,人為設(shè)定的滑模面并非最優(yōu)滑模面,通過優(yōu)化滑模因子可得到最優(yōu)滑模面與滑模函數(shù)。收斂速率能保證系統(tǒng)指數(shù)收斂,適合解決大階躍響應(yīng)控制問題。
根據(jù)評價函數(shù)設(shè)計基于差分進(jìn)化算法的滑模優(yōu)化控制,以輸入輸出誤差,控制輸入作為優(yōu)化性能指標(biāo),滑模因子與收斂速率作為待優(yōu)化的調(diào)節(jié)參數(shù),控制輸入為平方項的目的是為了防止控制能量過大,對輸入輸出誤差采用懲罰功能,避免超調(diào)現(xiàn)象產(chǎn)生,懲罰項的權(quán)值要遠(yuǎn)大于控制輸入項權(quán)值,保證對超調(diào)的懲罰是足夠大的,保證控制系統(tǒng)的跟蹤精度與控制效果。
仿真程序的結(jié)構(gòu)設(shè)計包括兩大模塊:滑模控制模塊和差分進(jìn)化模塊。其中滑??刂颇K使用Matlab/Simulink連續(xù)系統(tǒng)完成仿真,得到位置、速度、加速度跟蹤信號等,將滑??刂颇K作為差分進(jìn)化模塊的子模塊進(jìn)行調(diào)用,評價函數(shù)作為評價單元集成在差分進(jìn)化模塊中,調(diào)用評價函數(shù)得到評價數(shù)值。評價函數(shù)中集成有滑??刂颇K,只有滑??刂颇K仿真完成后才能得到評價函數(shù)所需的評價參數(shù),否則不能進(jìn)行評價函數(shù)的計算。評價函數(shù)計算完成后再回到差分進(jìn)化模塊,進(jìn)入下一次進(jìn)化操作。
根據(jù)式(7)~式(10)進(jìn)行群體的差分進(jìn)化操作,在評價函數(shù)里首先對滑??刂葡到y(tǒng)進(jìn)行仿真,仿真結(jié)束后會得到評價函數(shù)中需要的評價參數(shù),根據(jù)仿真結(jié)果計算評價函數(shù)值,通過不斷地判斷評價函數(shù)值,不斷更新最優(yōu)解直到得到全局最優(yōu)解。
滑??刂颇K是完成系統(tǒng)控制仿真的核心模塊,如圖1所示。其中Signal、MSystem_ctrl、SFG_plant、K_levant均為S-Function寫成的連續(xù)系統(tǒng),Signal是信號生成部分,仿真生成sin(πt)正弦信號。SFG_plant是系統(tǒng)模型,K_levant是K型觀測器,用于對從系統(tǒng)模型輸出的信號進(jìn)行觀測和估計,MSystem_ctrl是控制器部分,輸入激勵信號與觀測器觀測的信號,采用式(5)建立的滑??刂颇P蛯ο到y(tǒng)進(jìn)行控制,實驗設(shè)置仿真時間為2.5s。變量BsS用于存儲每次迭代時所需的待優(yōu)化參數(shù);變量ut用于存儲控制輸入;變量y用于存儲輸入信號、輸出信號和觀測信號及其速度、加速度。
圖1 Simulink 滑??刂颇P?/p>
取定常力的線性定??刂葡到y(tǒng)模型:a=1,b=0.4,c= 24336,d=0,Kn=15948000。根據(jù)式(3)可得k1=29.6,k2=-24048,k3=-709730。差分進(jìn)化待優(yōu)化參數(shù)設(shè)置:c1∈(5,600),c2∈(5,600),ks∈(20,2000),變異因子F=1.2,交叉概率P=0.75,設(shè)置進(jìn)化代數(shù)為50,染色體大小為30個,待優(yōu)化參數(shù)為3個,根據(jù)式(10)對每一代的進(jìn)化進(jìn)行評價,最終得到最優(yōu)解。
根據(jù)仿真參數(shù)設(shè)置得到最優(yōu)函數(shù)變化情況,如圖2所示??芍獌?yōu)化指標(biāo)在第30次迭代之前就進(jìn)入了穩(wěn)態(tài)區(qū),說明此時已經(jīng)找到了全局最優(yōu)解,30次迭代之后,優(yōu)化指標(biāo)已基本穩(wěn)定。通過圖3亦可看出,待優(yōu)化參數(shù)在30次迭代時已基本不變。
圖2 優(yōu)化指標(biāo)變化曲線
圖3 待優(yōu)化參數(shù)變化
經(jīng)過50次迭代后得到最優(yōu)解為c1=600,c2=45.931,ks=143.15,最優(yōu)指標(biāo)為J=1.4672,可見最優(yōu)指標(biāo)數(shù)值非常小,說明系統(tǒng)對輸入信號的跟蹤非常精確,通過比較跟蹤曲線和輸入信號曲線可進(jìn)一步更直觀地分析。
由于迭代在30次時已進(jìn)入穩(wěn)態(tài),為保證對比的區(qū)別性,取5個不同迭代次數(shù)的跟蹤曲線,選擇第1、7、10、22、50次迭代時的跟蹤曲線,與理想的輸入曲線進(jìn)行對比,如圖4所示。
圖4 位置跟蹤曲線
由圖4可知,各迭代次數(shù)對應(yīng)的位置跟蹤曲線最終都能精確地收斂于理想位置曲線,第50次迭代跟蹤曲線在初始跟蹤時跟蹤速度較慢,當(dāng)隨著時間的推移,其跟蹤速度逐漸增大,且更快地達(dá)到理想位置。由于增加了誤差懲罰項,故每次迭代后的位置跟蹤曲線沒有發(fā)生超調(diào)現(xiàn)象,均小于或等于理想曲線對應(yīng)值。
比較誤差變化曲線,分析各迭代次數(shù)對應(yīng)的誤差大小以及收斂速度,如圖5所示。根據(jù)控制輸入曲線分析控制輸入能量的大小,輸入能量越小越好,如圖6所示。根據(jù)圖5可知隨著迭代的不斷進(jìn)行,待優(yōu)化參數(shù)不斷得到優(yōu)化,位置誤差的收斂速度不斷增大;結(jié)合圖6可知控制輸入非常小,在0.001 m級別,相對誤差較小;結(jié)合圖2可得第50次迭代,即差分進(jìn)化進(jìn)入穩(wěn)態(tài)后,位置誤差和控制輸入達(dá)到最優(yōu)水平,此時的優(yōu)化函數(shù)J的數(shù)值最小。
圖5 誤差收斂曲線
圖6 控制輸入
使用優(yōu)化后的參數(shù)進(jìn)行速度跟蹤的分析,如圖7所示??芍到y(tǒng)在0.3s左右既能精確跟蹤理想速度曲線,速度跟蹤曲線與速度觀測曲線幾乎完全重合,說明觀測器對系統(tǒng)輸出的觀測是非常精確的;結(jié)合圖4位置跟蹤曲線可知,優(yōu)化后的控制器具有收斂速度更快、位置誤差與控制輸入綜合性能最優(yōu)、速度跟蹤精確等特點。綜合分析可知,運用差分進(jìn)化算法并結(jié)合滑??刂评碚?,達(dá)到了更加精確跟蹤的目的,同時又控制輸入能量保持在非常低的水平。
圖7 速度跟蹤曲線
基于差分進(jìn)化算法和伺服系統(tǒng)滑??刂评碚摚瑧?yīng)用于電液伺服控制。在進(jìn)行50次進(jìn)化迭代后得到最優(yōu)滑模因子與收斂率,仿真結(jié)果表明優(yōu)化后的系統(tǒng)的收斂速度更快,跟蹤精度更高,評價指標(biāo)最低。應(yīng)用差分進(jìn)化算法優(yōu)化滑模控制中的參數(shù),可事先預(yù)知系統(tǒng)的跟蹤性能并優(yōu)化跟蹤性能,具有很好的實際工程應(yīng)用意義。