郭肖楠,徐兆蓮,林建東,曹玉波*
(1.吉林化工學(xué)院 信息與控制工程學(xué)院,吉林 吉林 132022;2.遼寧中集哈深冷氣體液化設(shè)備有限公司 技術(shù)中心,遼寧 開源 112300)
雙容水箱液位控制系統(tǒng)是通過對(duì)現(xiàn)代工業(yè)生產(chǎn)過程中的液位等相關(guān)參數(shù)監(jiān)測(cè)控制,研究過程控制規(guī)律的實(shí)驗(yàn)裝置,該系統(tǒng)具有非線性、慣性大、時(shí)滯長(zhǎng)等過程控制動(dòng)態(tài)過程[1],而動(dòng)態(tài)矩陣控制對(duì)大慣性系統(tǒng)有較強(qiáng)的適應(yīng)能力,有良好的跟蹤性能和較強(qiáng)的穩(wěn)定性和魯棒性[2]。針對(duì)雙容水箱系統(tǒng),以液位為研究對(duì)象,構(gòu)建時(shí)變連續(xù)模型,再對(duì)其進(jìn)行離散化處理[3]。通過機(jī)理法建立雙容水箱的傳遞函數(shù),以系統(tǒng)的單位階躍響應(yīng)序列作為預(yù)測(cè)模型,使用Matlab腳本程序?qū)崿F(xiàn)DMC算法對(duì)雙容水箱的控制仿真,對(duì)應(yīng)用和研究動(dòng)態(tài)矩陣有一定的作用。
雙容水箱控制系統(tǒng)如圖1所示,兩水箱①、②為并聯(lián)結(jié)構(gòu),底部經(jīng)V2閥聯(lián)通,水流經(jīng)調(diào)節(jié)閥V1流入①水箱,通過閥V2流入②水箱,然后通過閥V3流出。h1,h2分別為兩水箱的液位值,Q1、Q2、Q3分別為流經(jīng)V1、V2、V3的流量,其中V2、V3為手動(dòng)閥,V1為線性調(diào)節(jié)閥,由動(dòng)態(tài)矩陣控制。被控量為②水箱液位,控制量為進(jìn)水閥V1開度u1。
圖1 雙容水箱工藝流程圖
被控對(duì)象以進(jìn)水量Q1為輸入,二號(hào)水箱液位h2為輸出,根據(jù)物料平衡關(guān)系,單位時(shí)間內(nèi)水箱進(jìn)水量與出水量之差等于水箱內(nèi)液體體積的變化量,分別建立兩水箱的物料平衡方程[4]:
(1)
各個(gè)閥門開度u,調(diào)節(jié)閥管道上的流量與液位之間的關(guān)系表達(dá)式為
(2)
其中:A1,A2分別為兩個(gè)水箱的橫截面積;u1,u2,u3分別是閥門V1,V2,V3的開度;k1,k2,k3是閥V1、V2、V3的流量系數(shù)。
將(2)式帶入(1)式后用泰勒公式在平衡點(diǎn)h10、h20點(diǎn)處將式子線性化可得增量方程:
(3)
對(duì)(3)式拉普拉斯變化后以u(píng)1(s)為輸入,H2(s)為輸出得到雙容水箱的傳遞函數(shù):
(4)
其中T1=A1R2,T2=A2R3,T3=A1R3,K=k1R3。
在平衡點(diǎn)處可以將式(1)、(2)合寫為液位增量狀態(tài)方程形式:
(5)
通過使用差分法代替微分對(duì)公式(5)進(jìn)行離散化,得到了雙容水箱液位對(duì)象的差分?jǐn)?shù)學(xué)模型:
(6)
式(6)即為雙容水箱液位對(duì)象非線性數(shù)字化增量狀態(tài)方程。在Matlab中利用腳本程序按采樣時(shí)序直接進(jìn)行遞推求解,不需要進(jìn)行線性化處理,可以模擬雙容水箱液位控制系統(tǒng)的實(shí)時(shí)仿真[5]。
DMC算法是一種基于階躍響應(yīng)的預(yù)測(cè)控制算法,它適用于漸進(jìn)穩(wěn)定的線性對(duì)象,主要包括預(yù)測(cè)模型、滾動(dòng)優(yōu)化和反饋校正三部分[6]。
被控對(duì)象單位階躍響應(yīng)的采樣值ai=a(iT),i=1,…,N的測(cè)定是構(gòu)成預(yù)測(cè)模型的重要參數(shù)。其中,T為采樣周期。由采樣點(diǎn)構(gòu)成的有限序列a0=[a1,a2,…,aN]能夠近似地反映被控對(duì)象的整個(gè)動(dòng)態(tài)范圍,即aN近似等于對(duì)象階躍響應(yīng)的穩(wěn)態(tài)值,N為建模時(shí)域[7]。利用線性系統(tǒng)所具有的比例和疊加的性質(zhì),用模型參數(shù)就足以預(yù)測(cè)對(duì)象在未來的輸出值[8]。
假設(shè)在建模時(shí)域內(nèi)控制量保持不變,系統(tǒng)在k時(shí)刻的未來N個(gè)時(shí)刻的輸出初始預(yù)測(cè)值為yN0(k+i|k),i=1,…N,在k時(shí)刻控制有增量Δu(k)…Δu(k+M-1)條件下未來N個(gè)時(shí)刻的輸出值可表示為
(7)
在式(5)中從頭截取P(優(yōu)化時(shí)域長(zhǎng)度)個(gè)式子,控制時(shí)域長(zhǎng)度為M(M
yPM(k)=yP0(k)+AΔuM(k) ,
(8)
其中,ΔuM(k)=[Δu(k) … Δu(k+M-1)T。
所有預(yù)測(cè)控制都是按一定優(yōu)化準(zhǔn)則來確定控制量的控制策略。在每個(gè)時(shí)刻k,控制器都會(huì)確定從該時(shí)刻起的M個(gè)控制增量序列用于預(yù)測(cè)控制,使被控對(duì)象在這M個(gè)控制增量的作用下,使其未來P個(gè)時(shí)刻的輸出預(yù)測(cè)值盡可能地逼近期望值[9]。
選取優(yōu)化性能指標(biāo):
(9)
式中,Q=diag(q1,…,qP),R=diag(r1,…,rM),Q、R分別稱為誤差權(quán)矩陣和控制權(quán)矩陣,它們分別表示對(duì)跟蹤誤差和控制量的變化抑制[10]。yr(k)為對(duì)象的期望輸出。
通過極值必要條件可求得:
ΔuM(k)=(ATQA+R)-1ATQ[yr(k)-yp0(k)] ,
(10)
只取向量的第一個(gè)值作用到系統(tǒng)中:
Δu(k)=cTΔuM(k),cT=[1,0…,0] 。
(11)
Δu(k)為當(dāng)前時(shí)刻的被控增量,k時(shí)刻的控制量u(k)=Δu(k)+u(k-1)。
在真實(shí)環(huán)境中系統(tǒng)工作時(shí)一定會(huì)伴隨著不確定的系統(tǒng)擾動(dòng)使預(yù)測(cè)值偏離實(shí)際值。因此在DMC控制系統(tǒng)中,控制器運(yùn)行到k時(shí)刻時(shí),將計(jì)算得到的最優(yōu)控制量u(k)作用于模型,可得到未來N個(gè)時(shí)刻的模型預(yù)測(cè)值yN1(k),取預(yù)測(cè)值的第一個(gè)元素即yN1(k+1|k)與下一時(shí)刻的被控對(duì)象的實(shí)際輸出值y(k+1)進(jìn)行比較,得到預(yù)測(cè)誤差e(k+1)如下[11]:
yN1(k)=yN0(k)+a0TΔu(k) ,
(12)
e(k+1)=y(k+1)-yN1(k+1) ,
(13)
然后對(duì)誤差加權(quán)得到加權(quán)誤差序列用于修正預(yù)測(cè)模型:
(14)
此時(shí)還要對(duì)ycor(k+1)進(jìn)行一步轉(zhuǎn)移操作最終得到y(tǒng)N0(k+1)作為下一時(shí)刻的模型預(yù)測(cè)初值:
yN0(k+1)=Sycor(k+1) ,
(15)
DMC控制雙容水箱算法流程圖如圖2所示,首先基于當(dāng)前液位預(yù)測(cè)狀態(tài)和參考軌跡,利用DMC算法計(jì)算最優(yōu)控制增量序列。
圖2 控制算法流程圖
取最優(yōu)控制序列的第一個(gè)元素用于更新預(yù)測(cè)模型,同時(shí)將計(jì)算到的控制量作用于雙容水箱進(jìn)水閥,調(diào)整閥的開度,控制水箱的水位;測(cè)量到的水箱實(shí)際水位與預(yù)測(cè)值的第一個(gè)元素之差用于修正預(yù)測(cè)模型;將修正后的預(yù)測(cè)模型經(jīng)過位移后作為當(dāng)前液位預(yù)測(cè)狀態(tài)并用于下一輪計(jì)算。
本文對(duì)所提出的雙容水箱DMC控制算法進(jìn)行了仿真驗(yàn)證,同時(shí)與PID控制器下最佳控制效果作對(duì)比,如圖3所示。
圖3 DMC控制效果與PID控制效果對(duì)比
仿真所使用的實(shí)驗(yàn)相關(guān)參數(shù)見表1[12]。
表1 實(shí)驗(yàn)相關(guān)數(shù)據(jù)
從圖3中可知,當(dāng)設(shè)定值是50 cm時(shí),控制過程中PID控制器的上升時(shí)間為46 s,在5%的誤差允許范圍內(nèi)調(diào)節(jié)時(shí)間為46 s,動(dòng)態(tài)最大值為51.954 cm,超調(diào)量是3.9%,穩(wěn)態(tài)誤差值為0;動(dòng)態(tài)矩陣預(yù)測(cè)控制器的上升時(shí)間為46 s,在相同的誤差允許范圍內(nèi)調(diào)節(jié)時(shí)間也在46 s左右,沒有超調(diào),穩(wěn)態(tài)誤差值為0。液位穩(wěn)定后,將雙容水箱的出水閥門開度由原來的50%降到30%,在PID控制器和DMC控制器下分別經(jīng)過25 s,20 s趨于穩(wěn)定值。
從圖3可以明顯看出動(dòng)態(tài)矩陣預(yù)測(cè)控制效果優(yōu)于PID控制效果。相對(duì)于PID控制,動(dòng)態(tài)矩陣預(yù)測(cè)控制具有調(diào)節(jié)時(shí)間短、抗干擾能力強(qiáng)、超調(diào)量更小的特點(diǎn),系統(tǒng)能較為快速穩(wěn)定地恢復(fù)到設(shè)定值,具有良好的控制效果。
本文建立了雙容水箱的動(dòng)態(tài)數(shù)學(xué)模型,采用機(jī)理分析法進(jìn)行建模。為了避免系統(tǒng)線性處理后產(chǎn)生的誤差,采用差分方式遞歸求解,差分方式能夠更準(zhǔn)確地描述系統(tǒng)動(dòng)態(tài)行為,使得模型更加精確可靠。通過Matlab程序仿真,運(yùn)用DMC控制原理將液位控制在恒定水位。通過仿真實(shí)驗(yàn)驗(yàn)證了該控制器對(duì)雙容水箱的控制效果優(yōu)于傳統(tǒng)的PID控制效果,動(dòng)態(tài)矩陣預(yù)測(cè)控制具有抗干擾能力強(qiáng)、超調(diào)量更小的特點(diǎn)。