路勇良,趙軍,李莉莉,張振,劉青華
(1.山東大學(xué)機(jī)械工程學(xué)院高效潔凈機(jī)械制造教育部重點實驗室,山東濟(jì)南 250061;2.山東大學(xué)機(jī)械工程國家級實驗教學(xué)示范中心,山東濟(jì)南 250061;3.山東蒂德精密機(jī)床有限公司,山東濟(jì)寧 272000)
數(shù)控機(jī)床輪廓跟蹤控制涉及到位置伺服控制和輪廓誤差控制等相關(guān)方面[1-2]。截至目前,針對位置伺服控制已有多種控制策略,如PID控制[3]、最優(yōu)控制[4]、迭代學(xué)習(xí)控制[5]、模糊邏輯控制[6]等,這些控制策略均以提高位置環(huán)的跟蹤控制性能作為首要任務(wù)。因為多軸運動中伺服進(jìn)給系統(tǒng)各軸在動態(tài)性能方面存在著較大的差異,所以僅對單軸位置伺服控制進(jìn)行研究無法保證加工過程中的輪廓跟蹤精度。針對上述問題,目前最常用的方法即為交叉耦合控制(Cross-Coupled Control,CCC)[7-8]。
自抗擾控制 (Active Disturbance Rejection Control,ADRC)由韓京清[9]提出,相對于傳統(tǒng)PID控制,該控制策略在減小信號擾動、實現(xiàn)信號擾動估計和補(bǔ)償?shù)确矫嫘阅芏加酗@著的提升。
交叉耦合控制主要分為以下4類:基于任務(wù)坐標(biāo)系的多變量的CCC,基于無源性的CCC,基于輪廓誤差傳遞函數(shù)的CCC和基于頻域法的傳統(tǒng)CCC。其中基于頻域法的傳統(tǒng)CCC結(jié)構(gòu)中大多采用PID控制器,但是相對于多軸運動系統(tǒng),傳統(tǒng)PID控制器在信號抗干擾、輪廓跟蹤控制方面均存在一定的不足之處。
本文作者結(jié)合自抗擾控制原理,設(shè)計一種適用于位置閉環(huán)反饋控制和輪廓誤差補(bǔ)償控制器的新型自抗擾非線性PID控制器 (TNP-ADRC)。與傳統(tǒng)PID控制器進(jìn)行比較,在MATLAB/Simulink中完成對2種控制方法的伺服進(jìn)給系統(tǒng)建模,并進(jìn)行位置信號跟蹤和理論圓軌跡輪廓誤差的仿真模擬,從而驗證所設(shè)計的控制器在信號跟蹤和提高輪廓加工精度方面具有良好的性能。
交叉耦合輪廓控制模型系統(tǒng)地闡述了基于兩軸運動控制系統(tǒng)輪廓誤差補(bǔ)償?shù)慕徊骜詈峡刂疲和ㄟ^輪廓誤差計算模型對輪廓誤差ε進(jìn)行實時估算,并將ε值作為交叉耦合控制器的輸入量進(jìn)行控制,然后經(jīng)由輪廓誤差分配模型將誤差修正量分配到各運動軸,從而實現(xiàn)各軸的協(xié)同控制。
在基于位置環(huán)的頻域法交叉耦合控制結(jié)構(gòu)中,位置環(huán)與CCC相互分離,故可以將CCC應(yīng)用到已有的位置控制系統(tǒng)中,且無需對位置環(huán)內(nèi)部做任何調(diào)整。
當(dāng)理論軌跡為一條直線時,數(shù)控機(jī)床執(zhí)行末端當(dāng)前位置點到理論軌跡的距離可以精確獲得。直線型輪廓誤差模型如圖1所示,計算公式如下:
ε=-Exsinθ+Eycosθ=-ExCx+EyCy
(1)
式中:θ是直線與x軸的夾角;Ex和Ey分別為x軸與y軸的跟隨誤差。
圓弧型輪廓的輪廓誤差是位置點到圓心的實際距離和圓弧半徑之間的差值,如圖2所示,其幾何關(guān)系可以依據(jù)下式來確定:
圖2 圓弧軌跡輪廓誤差模型
(2)
式中:θ是瞬時切線參考位置與x軸之間的角度。上式可通過泰勒展開式進(jìn)一步簡化為
(3)
通常軸向跟蹤誤差比圓半徑小得多,因此,公式中的高階項Ex、Ey可以忽略不計,從而便可以得到式(1)。針對小半徑或高速圓形輪廓的進(jìn)行輪廓誤差計算時,采用式(4)代替式(1)計算輪廓誤差[10-11]:
(4)
(5)
(6)
式(4)對線性輪廓和圓形輪廓均有效,Cx、Cy為交叉耦合增益。
傳統(tǒng)的PID控制形式為誤差的現(xiàn)在(P)、過去(I)和將來(變化趨勢D)的線性組合,顯然這種線性組合不是最佳的組合形式,可以在非線性范圍內(nèi)尋求更合適、更有效的組合形式。
針對傳統(tǒng)PID控制器所存在的起始誤差大、對強(qiáng)耦合的系統(tǒng)控制效果差、控制精度不理想等缺陷,結(jié)合實際生產(chǎn)加工需求,提出了一種基于NLPID的自抗擾位置伺服控制器 (TNP-ADRC)。其結(jié)構(gòu)如圖3所示。
圖3 TNP-ADRC結(jié)構(gòu)
其中:vi(k) 是x、y軸的參考輸入位置;vix(k)是vi(k)的位置跟蹤信號;viy(k)是vix(k)的微分信號;yi(k)是x、y軸實際的位置輸出點;b0是信號的已知部分參數(shù);ui(k)是x、y軸的控制量;zix(k)是yi(k)的位置跟蹤信號;ziy(k)是zix(k)的微分信號;ui(k)為x、y軸的控制量。
對輸入?yún)⒖嘉恢眯盘栠M(jìn)行預(yù)處理,引入非線性微分跟蹤器Ⅰ[12]。其數(shù)學(xué)表達(dá)式為
(7)
式中:h是采樣周期;δ為決定跟蹤快慢的參數(shù);v(k)是第k時刻的輸入信號。fst(*)是最速控制綜合函數(shù):
(8)
(9)
為實現(xiàn)對x、y軸實際的位置輸出點yi(k)的跟蹤,并且獲得實際速度信號ziy(k)的精確估計值,引入微分跟蹤器Ⅱ[13]。其數(shù)學(xué)表達(dá)式如下:
(10)
式中:ri2是速度因子;hi2是濾波因子。
為實現(xiàn)對未知不確定性和外加干擾的補(bǔ)償,引入非線性擴(kuò)張觀測器[14]。其數(shù)學(xué)表達(dá)式:
(11)
式中:βi>0(i=1,2,3);α1=0.5;α2=0.25。fal(e,α,δ)為飽和函數(shù),其作用是抑制信號抖振,數(shù)學(xué)表達(dá)式為
(12)
可推得:z1(t)→x1(t),z2(t)→x2(t),z3(t)→x3(t)=f1(x1,x2)+(b-b0)u(t)。
依據(jù)跟蹤微分器Ⅰ、跟蹤微分器Ⅱ所輸出的信息,可得到3個變量,分別為ei0(k)、ei1(k)、ei2(k),其分別對應(yīng) PID控制中的比例、積分和微分,各自表達(dá)式如下:
(13)
對其進(jìn)行非線性組合可以得到:
ui(k)=β0fal(e0(k),α0,δ)+β1fal(e1(k),α1,δ)+β2fal(e2(k),α2,δ)
(14)
式中:β0、β1、β2分別為P、I、D非線性項的增益系數(shù);δ是常數(shù)并且滿足δ>0,0≤α0≤α1≤1≤α2;fal函數(shù)的形式為
(15)
采用非線性PID作為補(bǔ)償控制器,設(shè)計基于NLPID的變增益交叉耦合控制器(CNP)結(jié)構(gòu)代入傳統(tǒng)交叉耦合(CCC)結(jié)構(gòu)中,見圖4。
圖4 基于NLPID的按比例分配輪廓誤差變增益 交叉耦合控制
根據(jù)式(4)得到當(dāng)前時刻的輪廓誤差ε(k),進(jìn)而得到:
(16)
(17)
u(k)=βc0fal(ε0(k),αc0,δc)+βc1fal(ε1(k),αc1,δc)+βc2fal(ε2(k),αc2,δc)
(18)
ucx(k)=Cxu(k),ucy(k)=Cyu(k)
(19)
Ux(k)=ux(k)-ucx(k),Uy(k)=uy(k)-ucy(k)
(20)
式中:u(k)為非線性誤差耦合控制量;ucx(k)和ucy(k)分別為x軸和y軸的輪廓誤差反饋控制量;ux(k)和uy(k)分別為x軸和y軸的位置跟蹤控制量;Ux(k)和Uy(k)分別為x軸和y軸的最終補(bǔ)償控制輸入量;βc0、βc1、βc2分別為P、I、D非線性項的增益系數(shù)。
采用按比例分配輪廓誤差,這種方法能夠保證各軸附加的補(bǔ)償作用沿輪廓誤差方向,而且不需要通過試湊不斷修改權(quán)值,避免盲目性操作。
比例系數(shù)C′x、C′y:
C′x=εx/|ε|
(21)
C′y=εy/|ε|
(22)
式中:
(23)
TNP-ADRC交叉耦合控制方法中單軸跟蹤控制器TNP-ADRC結(jié)構(gòu)如圖3所示,Simulink結(jié)構(gòu)建模見圖5,交叉耦合控制器采用圖4所示的變增益結(jié)構(gòu)。
圖5 TNP-ADRC在MATLAB/Simulink中的建模
將所提出的方法 (以下簡稱TNP-ADRC交叉耦合控制)與基于傳統(tǒng)PID單軸跟蹤控制器交叉耦合控制 (TPCP)分別進(jìn)行位置指令信號跟蹤和模擬理論圓軌跡輪廓誤差變化情況2組對比仿真實驗。
所針對的被控對象為
(24)
(25)
取位置指令為幅值1.0的方波信號。
取采樣間隔為h=0.01,非線性微分器Ⅰ參數(shù)取δ=10;非線性微分器Ⅱ的參數(shù)r12=r22=500,h12=h22=0.01;擴(kuò)張觀測器中,取β11=β21=100,β12=β22=300,β13=β23=1 000,δ=0.002 5,α11=α21=0.5,α12=α22=0.25;非線性PID控制器中,α10=α20=-0.5,α11=α21=0.75,α12=α22=1.5,β10=β20=0,β11=β21=300,β12=β22=5,δ=0.02。
基于傳統(tǒng)PID控制的單軸跟蹤控制器參數(shù)選取為Kp1=Kp2=260,Kd1=Kd2=5,Ki1=Ki2=5?;赑ID的交叉耦合控制器參數(shù)選取Kpc=90,Kic=5,Kdc=5。
在MATLAB/Simulink環(huán)境下進(jìn)行位置信號跟蹤,仿真結(jié)果如圖6和圖7所示。
圖6 基于TNP-ADRC控制的方波響應(yīng)
圖7 位置跟蹤誤差波動對比
將整個數(shù)控機(jī)床進(jìn)給伺服系統(tǒng)近似為一個五階系統(tǒng)。由于高階系統(tǒng)的分析研究比較繁瑣,因此對高階系統(tǒng)進(jìn)行降階處理,轉(zhuǎn)化為一個等效低階系統(tǒng)[15]:
G(s)=
(26)
對上述進(jìn)給伺服系統(tǒng)傳遞函數(shù)進(jìn)行穩(wěn)定性分析,見圖8。
圖8 傳遞函數(shù)極點分布(a)和伺服系統(tǒng)動態(tài)特性(b)
從圖8中可以看出:進(jìn)給伺服系統(tǒng)傳遞函數(shù)的所有極點都分布在復(fù)平面的左半部分,由此可知進(jìn)給系統(tǒng)穩(wěn)定。
將文中所提出的TNP-ADRC交叉耦合系統(tǒng)和TPCP交叉耦合系統(tǒng)分別在MATLAB/Simulink環(huán)境下進(jìn)行建模,見圖9和圖10。理論圓軌跡和輪廓誤差的變化如圖11所示。
圖9 TPCP交叉耦合控制模型
圖10 TNP-ADRC交叉耦合控制模型
圖11 理論圓軌跡(a)和輪廓誤差的變化(b)
通過上述仿真試驗及對比表1中的相關(guān)數(shù)據(jù)可知:相比于傳統(tǒng)TPCP交叉耦合控制,采用TNP-ADRC的控制結(jié)構(gòu)在平均值、最大值和均方根上分別減小了28.9%、20.9%、13.3%,這是因為TNP-ADRC在自抗擾控制結(jié)構(gòu)的基礎(chǔ)上,還增加了非線性觀測器Ⅱ來實現(xiàn)對位置信號的快速追蹤。
表1 理論圓軌跡運動實驗結(jié)果
文中設(shè)計了一種TNP-ADRC交叉耦合控制方法,并利用MATLAB/Simulink仿真平臺與傳統(tǒng)PID單軸控制器交叉耦合控制 (TPCP)進(jìn)行了位置信號跟蹤和針對理論圓軌跡加工輪廓進(jìn)行對比仿真。 實驗證明相比于傳統(tǒng)TPCP交叉耦合控制,采用TNP-ADRC:的控制方法在平均值、最大值和均方根上分別減小了28.9%、20.9%、13.3%,這是因為TNP-ADRC在自抗擾控制結(jié)構(gòu)的基礎(chǔ)上,還增加了非線性觀測器Ⅱ來實現(xiàn)對位置信號的快速追蹤。