姜萍孫凌燕劉騰嬌李留根
(河北大學(xué)電子信息工程學(xué)院1,河北 保定 071002;河北大學(xué)羅克韋爾自動化實(shí)驗(yàn)室2,河北 保定 071002)
自抗擾控制器的結(jié)構(gòu)化文本設(shè)計與應(yīng)用
姜萍1,2孫凌燕1劉騰嬌1李留根1
(河北大學(xué)電子信息工程學(xué)院1,河北 保定 071002;河北大學(xué)羅克韋爾自動化實(shí)驗(yàn)室2,河北 保定 071002)
雙容水箱液位控制因其動態(tài)特性慣性大、非線性且存在多種不確定擾動,導(dǎo)致控制過程比較復(fù)雜。針對液位控制,運(yùn)用RSLogix5000軟件,使用結(jié)構(gòu)化文本語言編寫自抗擾控制器的各個組成部分,并采用模塊化和功能圖相結(jié)合的編程方式實(shí)現(xiàn)了自抗擾控制器模塊。仿真試驗(yàn)證明,自抗擾控制器能夠?qū)崿F(xiàn)快速無超調(diào)的控制,具有很強(qiáng)的抗干擾特性,說明結(jié)構(gòu)化文本編程的方法符合IEC 61131國際標(biāo)準(zhǔn),方便可行,適用性強(qiáng),對相關(guān)算法的工程化應(yīng)用具有參考價值。
過程控制 雙容水箱 自抗擾控制器(ADRC) PLC IEC 61131 結(jié)構(gòu)化文本
自抗擾控制技術(shù)是分析經(jīng)典PID不足的新型數(shù)字控制技術(shù),相繼提出了安排過渡過程、跟蹤微分器、擴(kuò)張狀態(tài)觀測器[1-2]和開發(fā)利用特殊非線性效應(yīng)等思想發(fā)展理論。雙容水箱是典型的非線性時延對象,目前的控制方法有基于解耦算法,給出雙容水箱的解耦模型再進(jìn)行控制的方法。由于實(shí)際系統(tǒng)的復(fù)雜度不同和對象數(shù)學(xué)模型難以建立,很多實(shí)際系統(tǒng)的解耦矩陣無法實(shí)現(xiàn)。另一種系統(tǒng)辨識建模的方法也不能取得良好的擬合精度,不能保證模型的有效性。此外,采用串級控制方式、運(yùn)用PID控制器進(jìn)行液位控制的方法,因PID控制器的局限性,很難取得良好的控制效果。因此,采用自抗擾控制器(active disturbance rejection control,ADRC),利用其非線性特性和估計補(bǔ)償作用對雙容水箱液位進(jìn)行控制,可取得比經(jīng)典PID控制器更好的效果。目前,在此方面的研究普遍只是采用Matlab軟件進(jìn)行仿真試驗(yàn),或采用A3000控制系統(tǒng)、MCGS工業(yè)組態(tài)監(jiān)控軟件、PCT-11型過程控制系統(tǒng)實(shí)驗(yàn)裝置[3-4]來進(jìn)行試驗(yàn)。本文采用羅克韋爾PLC平臺RSLogix5000軟件[6-7]實(shí)現(xiàn)對雙容水箱液位的實(shí)時控制,采用結(jié)構(gòu)化文本編程和功能圖相結(jié)合的方式,簡單易行,具有更強(qiáng)的適用性和通用性,可移植性強(qiáng),對其他工業(yè)領(lǐng)域也具有參考價值。
過程控制裝置包含被控對象、執(zhí)行器、變送設(shè)備和控制臺四部分。將連續(xù)性工業(yè)生產(chǎn)過程中常見的水箱、管路、泵、閥門等設(shè)備微縮、集中,配合自動測量、控制裝置,可以對液位進(jìn)行測量、顯示和自動控制,所有設(shè)備均可視、可操作。
系統(tǒng)采用羅克韋爾CompactLogix系列PLC作為控制器,執(zhí)行機(jī)構(gòu)為西門子MXG461電磁調(diào)節(jié)閥,PLC與PC之間通過以太網(wǎng)進(jìn)行通信??刂破脚_主要由CompactLogix控制系統(tǒng)和過程控制實(shí)驗(yàn)裝置兩部分組成,其中CompactLogix控制系統(tǒng)為整個平臺的核心,實(shí)現(xiàn)自抗擾控制算法以及數(shù)據(jù)的采集、分析、處理、發(fā)送等關(guān)鍵工作。自抗擾控制系統(tǒng)框圖如圖1所示。
圖1 自抗擾控制系統(tǒng)框圖Fig.1 Block diagram of ADRC system
本文采用測試法,由階躍響應(yīng)曲線確定被控過程傳遞函數(shù)G(s)=13.7/[(445s+1)(11s+1)]。
雙容水箱具有慣性大、時延的特點(diǎn),采用傳統(tǒng)的PID控制器很難使其穩(wěn)定。在實(shí)際過程中,水箱的對象、過程和閥門具有很強(qiáng)的非線性特性,且同時存在不確定擾動,這更使雙容水箱的調(diào)節(jié)過程難度加大。因此,本文采用自抗擾控制器對雙容水箱液位進(jìn)行控制。
自抗擾控制器的最突出特征就是把作用于被控對象的、所有不確定因素的作用,都?xì)w結(jié)為“未知擾動”,用對象輸入輸出數(shù)據(jù)對其進(jìn)行估計并給予補(bǔ)償。自抗擾控制器由三部分組成:①跟蹤微分器(tracking differentiator,TD),其作用是安排過渡過程并給出過程的微分信號;②擴(kuò)張狀態(tài)觀測器(extended state observer,ESO),其作用是給出對象狀態(tài)變量估計值及系統(tǒng)模型和外擾實(shí)時總和作用的估計值,這個實(shí)時估計值的補(bǔ)償作用使被控對象化為“積分器串聯(lián)型”;③利用非線性狀態(tài)誤差反饋(nonlinear state error feedback law,NLSEF)對被化成“積分器串聯(lián)型”的對象進(jìn)行控制。
2.1 ADRC在軟件上的實(shí)現(xiàn)方法
本文運(yùn)用RSLogix5000軟件實(shí)現(xiàn)自抗擾控制器對雙容水箱液位的控制。由于工程中并不存在可以調(diào)用的模塊,需進(jìn)行編譯開發(fā),因此,按照自定義模塊的封裝方法,將常用函數(shù)和動態(tài)結(jié)構(gòu)都設(shè)計成模塊形式,然后將各個部分組合起來,采用結(jié)構(gòu)化文本與功能塊圖相結(jié)合的編程方式。這種編程方式可以使程序的結(jié)構(gòu)以及程序內(nèi)部數(shù)據(jù)傳遞過程更加清晰,適用于由多個不同功能的函數(shù)模塊構(gòu)成的控制算法。模塊化與功能圖相結(jié)合的方法符合IEC 61131可編程邏輯控制器標(biāo)準(zhǔn)。
IEC 61131標(biāo)準(zhǔn)將現(xiàn)代軟件的概念和現(xiàn)代軟件工程的機(jī)制與傳統(tǒng)的PLC編程語言成功地結(jié)合,又對當(dāng)代種類繁多的工業(yè)控制器中的編程概念及語言進(jìn)行了標(biāo)準(zhǔn)化。該標(biāo)準(zhǔn)對可編程控制器軟件技術(shù)的發(fā)展,乃至整個工業(yè)控制軟件技術(shù)的發(fā)展起著舉足輕重的推動作用。
自抗擾算法ADRC涉及到多個模塊,每個模塊都是由一些基本的函數(shù)和變量按照一定的運(yùn)算法則組合而成。因此,設(shè)計ADRC控制器時就遵從先封裝幾個基本的非線性函數(shù),然后再調(diào)用這些已封裝的函數(shù)來構(gòu)成ADRC的各個模塊,最后把各個模塊組合起來,成為一個完整的自抗擾控制器(ADRC)。下面介紹一下函數(shù)和模塊的封裝。
2.2 特殊非線性函數(shù)
首先封裝幾個基本的非線性函數(shù)。自抗擾控制技術(shù)中常用的4個非線性函數(shù)為:sign(x,a,)、fsg(x, a,b)、fal(x,a,b)和fhan(v1,v2,r,h)。以sign(x,a)模塊的封裝為例,模塊封裝過程包括定義參數(shù),結(jié)構(gòu)化文本編程,編譯、校驗(yàn)。
根據(jù)封裝流程,sign(x,a)模塊完成封裝后即可調(diào)用。RSLogix5000對函數(shù)調(diào)用的規(guī)則如下:模塊名稱(實(shí)例名,輸入?yún)?shù)1,…,輸入?yún)?shù)n,輸出參數(shù)1,…,輸出參數(shù)n)。
2.3 ADRC功能模塊設(shè)計
完成對自抗擾控制器算法中幾個非線性函數(shù)的定義封裝后,對自抗擾控制器各個組成部分進(jìn)行定義封裝。方法如上面的非線性函數(shù)封裝方法。以二階跟蹤微分器為例,其算法如下。
定義好參數(shù)后,編寫結(jié)構(gòu)化文本。至此,自抗擾控制器的各個組成部分已經(jīng)分別封裝成獨(dú)立的函數(shù)模塊,且具有獨(dú)立的參數(shù)設(shè)置對話框,可任意更改各部分的參數(shù),達(dá)到良好的控制效果。
本文中主程序采用功能塊圖編程,插入封裝的模塊,待所有需要模塊插入完成后,按照圖1所示的關(guān)系將各個模塊連接起來,即構(gòu)成二階自抗擾控制器。同時,編寫一階、二階、三階自抗擾控制器的各個不同階次模塊,組合后可實(shí)現(xiàn)對各個階次自抗擾控制器的調(diào)用。此種模塊化方法簡單易行,可結(jié)合不同控制對象實(shí)現(xiàn)多種控制系統(tǒng),有利于自抗擾技術(shù)的研究。該方法在其他平臺上也有參考價值,便于工程推廣。
本文采用已得到的系統(tǒng)模型對系統(tǒng)進(jìn)行階躍響應(yīng)及擾動試驗(yàn),傳遞函數(shù)為G(s)=13.7/[(445s+1)(11s+ 1)]。從二階對象傳遞函數(shù)G(s)=K/[(T1s+1)(T2s+ 1)]中可以看出,T2相對T1較小,可近似于一階時滯系統(tǒng)。由于一階自抗擾控制器能夠?qū)r滯系統(tǒng)進(jìn)行很好的控制,因此采用一階自抗擾控制器對二階系統(tǒng)進(jìn)行仿真控制。這樣可以減少參數(shù)的數(shù)量,使參數(shù)整定更加容易,從而使ADRC更具有實(shí)際應(yīng)用價值。取自抗擾控制器的參數(shù):r0=0.1、h0=3.5、h=0.1、bt1=0.03、h1=0.01、bt02=250、bt01=55。當(dāng)液位處于100 mm穩(wěn)態(tài)時,加大小為50 mm的階躍信號,系統(tǒng)控制效果如圖2所示。由圖2可知,加入階躍信號后,系統(tǒng)很快無超調(diào)進(jìn)入穩(wěn)態(tài)。
圖2 二階系統(tǒng)階躍響應(yīng)曲線Fig.2 Step response curves of the second order system
參數(shù)不變,在100 mm穩(wěn)態(tài)時施加+20 mm的擾動信號,系統(tǒng)控制效果如圖3所示。
圖3 二階系統(tǒng)抗干擾響應(yīng)曲線Fig.3 Anti-interference response curves of the second-order system
雙容水箱液位控制系統(tǒng)具有明顯的非線性特征,時延遠(yuǎn)大于一階系統(tǒng)。雙容水箱的液位控制是具有純滯后的非線性耦合系統(tǒng),是過程控制中的一種典型的控制對象,上水箱的液位對下水箱的液位有明顯的影響,具有很大的慣性。在實(shí)際應(yīng)用中,由于雙容水箱的非線性,使系統(tǒng)難以調(diào)節(jié),所以加一個比例環(huán)節(jié),構(gòu)成一個串級系統(tǒng),可更有效快速地實(shí)現(xiàn)對水箱液位的調(diào)節(jié)和控制。
經(jīng)過以上試驗(yàn)可知,一階自抗擾控制器對二階控制系統(tǒng)有很好的控制作用?,F(xiàn)將自抗擾控制器應(yīng)用到實(shí)際雙容水箱液位控制裝置中,自抗擾控制器的參數(shù)設(shè)置為:r0=25、h0=10、h=0.01、bt1=0.01、h1=0.01、 bt02=400、bt01=200。系統(tǒng)液位到達(dá)50 mm的系統(tǒng)控制效果如圖4所示。由圖4可知,自抗擾控制器對雙容水箱這種具有慣性時滯的系統(tǒng)有較好的控制效果。
圖4 雙容水箱階躍響應(yīng)曲線Fig.4 Step response curves of double tank
本文采用結(jié)構(gòu)化文本和功能圖編程相結(jié)合的方式建立的自抗擾控制器系統(tǒng),可按階次和線性、非線性封裝各階控制器模塊,可根據(jù)對象的不同隨意調(diào)用,易于實(shí)行,調(diào)試簡單,具有較強(qiáng)的實(shí)用性,符合IEC 61131國際標(biāo)準(zhǔn),有利于自抗擾控制器的工程化實(shí)現(xiàn),對其他工業(yè)領(lǐng)域也具有參考價值。本文通過對自抗擾控制器的研究,在羅克韋爾PLC平臺上實(shí)現(xiàn)了對實(shí)際的水箱液位系統(tǒng)的控制,說明了自抗擾控制器具有良好的抗干擾性與較強(qiáng)的魯棒性,超調(diào)量小,更適用于復(fù)雜的控制系統(tǒng),在工業(yè)控制領(lǐng)域有廣闊的應(yīng)用前景。
[1] 韓京清.自抗擾控制技術(shù)[J].前沿科學(xué),2007(1):24-31.
[2] 韓京清.從PID技術(shù)到“自抗擾控制”技術(shù)[J].控制工程,2002, 9(3):13-18.
[3] 鄭偉建.基于自抗擾算法的液位控制系統(tǒng)[D].揚(yáng)州:揚(yáng)州大學(xué),2009.
[4] 李曉理,里驥,石隴輝.水箱液位系統(tǒng)的建模與仿真[J].系統(tǒng)仿真學(xué)報,2010(4):829-832.
[5] 廖曉文,陳政石,田志波,等.半導(dǎo)體溫控系統(tǒng)的自抗擾控制器設(shè)計[J].自動化儀表,2012(8):45-50.
[6] 錢曉龍.Control Logix系統(tǒng)電力行業(yè)自動化應(yīng)用培訓(xùn)教程[M].北京:機(jī)械工業(yè)出版社,2009.
[7] Dan W,Tong Z,Ken C,et al.Application of active disturbance rejection control to variable spindle speed noncircular turning process[J].International Journal of Machine Tools&Manufacture, 2009,3(21):419-423.
[8] 孫亮,吳根忠.自抗擾控制器優(yōu)化設(shè)計及其應(yīng)用[J].控制與應(yīng)用技術(shù),2010,37(3):26-31.
[9] 賀慶.四容水箱的自抗擾控制器設(shè)計[D].北京:北方工業(yè)大學(xué),2013.
[10] 王辰昱.自抗擾控制器的參數(shù)整定及應(yīng)用[D].保定:華北電力大學(xué),2009.
Design and Application of Active Disturbance Rejection Controller Based on Structured Text
The water level control process for double tank system is complicated because of its characteristics of large inertia,non-linearity and many uncertain disturbances.For such level control,by using RSLogix5000 software,and structured text language,various components of active disturbance rejection control(ADRC)are compiled,and with the programming method of combining modularization and functional graphics,the ADRC module is implemented.The simulation test verifies that the active disturbance rejection controller is able to realize fast speed control without overshoot,and features strong anti interference capability;the structured test programming method conforms IEC61131 international standard,it is convenient,feasible,with strong applicability,and is valuable to be referenced in engineering applications of relevant algorithm.
Process control Double-water tank Active disturbance rejection control(ADRC) PLC IEC 61131 Structured text
TP273
A
國家自然科學(xué)基金資助項(xiàng)目(編號:11271106);
河北大學(xué)應(yīng)用研究基金資助項(xiàng)目(編號:33312);
河北大學(xué)研究生教育改革重點(diǎn)基金資助項(xiàng)目(編號:YJ11-08)。
修改稿收到日期:2014-05-26。
姜萍(1971-),女,2011年畢業(yè)于華北電力大學(xué)熱能工程專業(yè),獲博士學(xué)位,副教授;主要從事自抗擾控制技術(shù)及應(yīng)用、過程控制等方面的研究。