王 華,楊可可,劉析輝
(1.新鄉職業技術學院 數控技術系,河南 新鄉 453000; 2.吉林大學 機械科學與工程學院,長春 130025)
眾所周知,現代工業的自動化越來越普及,自動化工程中機械定位系統的精確性至關重要.電動、液壓以及氣動等方式是通過執行機構驅動的定位系統,而液壓執行機構在實際應用中廣受歡迎[1].但是,液壓執行機構具有非線性、參數不確定性和輕微的動態衰減等缺陷,從而降低了它的精度,限制了它在閉環控制器中的應用[2].因此,研究液壓執行機構高精度的控制方法,對于促進液壓技術的發展具有重要意義.
為了提高液壓執行機構在實際應用中的控制精度,許多學者對液壓執行機構的控制方法進行了研究.例如:文獻[3-4]研究了液壓執行機構的開關電磁閥控制,建立定位系統的控制模型,通過仿真驗證控制系統的定位誤差,從而改善了液壓執行機構的定位沖擊;文獻[5-6]研究了自動變速器液壓執行機構控制方法,建立變速器液壓執行機構的動力學模型,設計離合器回油管路液壓執行機構,通過仿真驗證滑閥位移曲線,提高了執行機構的定位精度;文獻[7-8]研究了水下液壓執行機構控制方法,設計了液壓執行機構控制流程,對液壓執行機構主要參數進行求解,通過仿真檢驗液壓執行機構定位誤差,提高了液壓執行機構運動軌跡精度.但是,以往研究液壓執行機構,控制策略沒有考慮死區現象,導致實際追蹤誤差較大.對此,本文創建液壓執行機構平面簡圖,采用自適應死區補償耦合自適應級聯控制方法,針對執行機構運動軌跡誤差最小化問題,采用差分進化算法優化控制器參數.通過Matlab軟件對執行機構運動軌跡誤差進行仿真驗證,為深入研究液壓執行機構的控制方法提供理論依據.
本文所考慮的液壓執行機構如圖1所示.

圖1 液壓執行機構Fig.1 Hydraulic actuator
圖1中,M為系統總質量,B為黏性摩擦系數,ps為供給壓力,p0為返回壓力,p1和p2分別為氣缸1和2的壓力,v1和v2是氣缸1和2中的體積,A為氣缸活塞的橫截面積,Q1為閥門到腔室1的流量,Q2為腔室2到閥門的流量,u為施加在電磁閥上的電壓.
重疊比例閥的閥芯凸臺大于閥體的環形部分,導致在閥芯位移和流量之間的關系中出現死區.帶有死區的閥門在制造過程中所需要的精度低,而且更廉價.
液壓執行機構的數學模型[9]為
(5)
式中:f=βv[(0.5v)2-(Ay)2];xv為閥芯位置;p為氣缸室壓力差;β為體積模量;v=v1+v2;Kh為液壓常數;g=(ps-sgn(xv)p)1/2;Kem為閥常數;ωv為閥門帶寬;xvb為死區之前的閥芯位置;br為右斷點;bl為左斷點.
圖2以一個框圖的形式展現了輸入電壓u與閥芯位置xv的關系.xvb是由閥門一個內部傳感器所測得,并能在電磁閥上獲得的信號.

圖2 帶有死區閥門的框圖Fig.2 Block diagram with dead-zone valve
適用于液壓執行機構的級聯控制將液壓執行機構數學模型分為兩個互聯的子系統,一個液壓子系統和一個機械子系統,如圖3所示.它可以概括為:① 為機械子系統計算一個控制律pd(所需的壓力差),以便輸出y能夠盡可能地追蹤軌跡yd;② 為液壓子系統計算一個控制率u,以便p能夠盡可能追蹤軌跡pd.
機械子系統自適應控制法則[10]為
(6)


圖3 互聯的子系統Fig.3 Interconnected subsystems
機械子系統適應法則[10]為
(7)
式中:Γ為正對稱矩陣.
液壓子系統控制法則為
(8)
(9)
式中:xvd為閥芯位置運動軌跡;xv1為閥芯運動軌跡追蹤偏差;p1為壓力差;α為液壓常數的倒數;τv為閥門時間常數;α1和τv1為估計參數;φ1和φ2為正常數;Kp為負常數.
液壓子系統適應法則[10]為
式中:φ3和φ4為正常數.
在自適應死區補償發展中,假設xv和xvd存在xvb=Kemu這樣的關系,得
xv=DZ1(Kemu)=DZ2(u)
(12)
(13)
式中:pr=br/Kem;pl=bl/Kem.
帶有自適應死區補償的自適應級聯控制器算法[10]如下所示:
式中:η1,η2和prmax為正常數;plmin為負常數.
預估的左(右)閥門死區斷點參數必須總是負(正)的,因此,對式(15)和(16)修改為
(17)

(18)
差分進化(Differential Evolution,DE)算法從一個隨機初始化種群開始,經過變異、交叉和選擇操作產生下一種群,該過程經過多次迭代,直到滿足條件為止[11].優化的具體步驟如下:
步驟1初始化參數設置.用戶必須選擇控制DE算法的關鍵參數,即種群大小(N)、優化變量的邊界約束、突變因子(fm)、交叉率(rc)和停止標準(tmax).
步驟2初始化個體.初始化計數器t=0,同時根據n維問題空間中的均勻概率分布生成的隨機值,初始化每個決策變量的上限和下限的個體種群(解向量)x(t).在本文中,解向量由Kp,Kd,Kv的潛在解決方案給出.
步驟3評估目標函數值.對于每個個體,評估其目標函數值,采用的最小化目標函數是積分時間平方誤差(Integral Time Square Error,ITSE).
步驟4突變操作(或差分操作).根據下面的等式[12]變化個體,即
zi(t+1)=xi1(t)+fm[xi2(t)-xi3(t)]
(19)
式中:xi(t)為第i個種群位置;zi(t)為突變向量的第i個個體位置;fm為突變因子.
步驟5交叉操作.對于每個突變向量,采用均勻分布隨機選擇一個指數和一個試驗向量,通過下式[12]生成,即

(20)
式中:xij(t)為第j個實值向量的第i個個體;zij(t)為突變向量的第j個實值向量的的第i個個體;uij(t)為交叉操作后的第j個實值向量的第i個個體;rn(j)為[0,1]中隨機生成的第j個評估;rc為[0,1]內的交叉率.
為了確定向量ui(t+1)是否構成下一輪總體的個體,將其與相應的向量xi(t)進行比較.因此,如果f為最小化下的目標函數,則

(21)
步驟6更新計數器,t=t+1.
步驟7驗證停止標準.若滿足,則輸出,否則循環到步驟3.
為了驗證液壓執行器運動軌跡的跟蹤誤差,采用Matlab軟件對DE算法優化的控制器進行仿真驗證.仿真參數如下:種群大小為30,停止標準為100次,rc=0.8,fm=0.5,φ1=6.5× 10-18,φ2=1.5×106,φ3=1×10-10,φ4=5×106,η1=1.5×10-5,η2=1.5×10-5,Kp=5.1×109,Kd=1.9× 104,Kv=2.3×10-2.假設系統的運動軌跡方程式為
(22)
優化前的仿真結果如圖4所示,優化后的仿真結果如圖5所示.

圖4 優化前追蹤誤差Fig.4 Pre-optimization tracking error

圖5 優化后追蹤誤差Fig.5 Optimized tracking error
由圖4可知,優化前液壓執行器運動軌跡追蹤產生的誤差最大值為6.6×10-3m,誤差跳動幅度較大.由圖5可知:優化后液壓執行器運動軌跡追蹤產生的誤差最大值為1.5×10-3m,誤差跳動幅度較小.因此,采用差分進化算法優化液壓執行器控制器,能夠提高液壓執行器運動軌跡追蹤精度.
針對液壓執行器運動軌跡控制問題,采用了DE算法優化控制器參數,并對優化前后追蹤效果進行比較,主要結論如下:
(1) 液壓執行器在驅動過程中,需要液壓系統和機械系統的密切配合,容易產生死區現象.
(2) 采用差分進化算法優化液壓執行器控制器,能夠搜索到控制器最優調整參數,從而降低運動軌跡追蹤誤差.
(3) 采用Matlab軟件對液壓執行器優化前、后的追蹤誤差進行仿真,能夠模擬實際產生效果,避免設計不合理.