李長青,王 乾,姜 煒
(河北省發(fā)電過程仿真與優(yōu)化控制工程技術(shù)研究中心(華北電力大學(xué)),河北 保定 071003)
復(fù)雜工業(yè)過程以其特有的復(fù)雜性推動著復(fù)雜過程控制的發(fā)展,這些復(fù)雜性主要表現(xiàn)在非線性和大時滯方面。然而,傳統(tǒng)比例積分微分(proportion,integration,differentiation,PID)控制算法在解決復(fù)雜工業(yè)過程中逐漸體現(xiàn)出其控制品質(zhì)不足的缺點(diǎn)。
動態(tài)矩陣控制(Dynamic Matrix Control,DMC)算法是一種重要的預(yù)測控制算法[1],經(jīng)過多年的發(fā)展,已經(jīng)成為具有代表性的先進(jìn)控制算法之一。多模型DMC算法是在DMC算法的基礎(chǔ)上實(shí)現(xiàn)的,設(shè)計(jì)過程中采用不同工況下獲取的階躍響應(yīng)模型作為內(nèi)部預(yù)測模型[2],因此在控制非線性被控對象的過程中擁有更多的對象信息。
結(jié)合嵌入式平臺[3]專用性強(qiáng)、實(shí)時性高、性能穩(wěn)定可靠的特點(diǎn),設(shè)計(jì)了一種基于嵌入式平臺的多模型DMC控制器。
多模型DMC算法是指內(nèi)部擁有多個被控對象階躍響應(yīng)的預(yù)測控制算法[5]。即將一個復(fù)雜的被控對象分解為若干個子對象,針對每個子對象設(shè)計(jì)各自的控制器,然后把各控制器的輸出通過加權(quán)器進(jìn)行加權(quán)求和運(yùn)算得到作用于實(shí)際系統(tǒng)的控制量。多模型DMC算法與DMC算法的區(qū)別在于其內(nèi)部包含多個預(yù)測模型和加權(quán)器[5]。
對于線性被控對象,在初始狀態(tài)為穩(wěn)定狀態(tài)的條件下,通過在其一端施加一個控制增量獲取其階躍響應(yīng)的采樣值 A′=[a1′,a2′, …,aN′]T,N 稱為建模時域。N的選擇應(yīng)使過程響應(yīng)值接近其穩(wěn)態(tài)值,即aN′≈a∞。由線性系統(tǒng)的比例性質(zhì)可知,其單位階躍響應(yīng)動態(tài)向量為
在k時刻在系統(tǒng)的一端施加控制增量Δu(k)時,未來N個時刻的預(yù)測模型輸出為
在k時刻,在M個連續(xù)的控制增量Δu(k),…,Δu(k+M-1)的作用下,未來 P個時刻的輸出預(yù)測值為
式中:
在 k 時刻,給定期望值 yr(k+i),i=1,…,P,取二次型優(yōu)化性能指標(biāo)
式中:Yr(k)=[yr(k+1),…,yr(k+P)]T,Q,λ為權(quán)系數(shù)構(gòu)成的對角陣。
二次型優(yōu)化性能指標(biāo)最優(yōu)解為
在k時刻,僅取當(dāng)前控制增量Δu(k)實(shí)施于被控對象。 比較實(shí)際輸出 y(k+1)與預(yù)測輸出y^(k+1),將該輸出誤差e(k+1)以加權(quán)的方式反饋到原預(yù)測模型上加以修正
式中:H為校正矩陣。
依據(jù)上述原理,可做如圖 1所示方框圖。
圖1 動態(tài)矩陣方框圖
在被控對象的不同工作點(diǎn)附近將非線性系統(tǒng)線性化,用多個線性模型逼近原非線性系統(tǒng),是一種常用的多模型建模方法[6]。
對于大時變對象,在建立多模型的過程中,應(yīng)選取模型變化明顯的工況點(diǎn),同時還需要記錄工況點(diǎn)的初始狀態(tài)和階躍響應(yīng)輸入的控制增量,然后依次在不同工況條件下進(jìn)行階躍響應(yīng)實(shí)驗(yàn)即可[7]。
采用遞推貝葉斯概率權(quán)重算法[7]作為多模型DMC算法的加權(quán)器。該算法的權(quán)重通過當(dāng)前各個子模型與對象的匹配誤差以及歷史匹配概率進(jìn)行計(jì)算,條件概率計(jì)算公式為
式中:Pj,k為 k時刻子模型 j匹配度的條件概率;ζj,k=y(tǒng)(k)-j(k),是 k 時刻子模型 j和控制對象的匹配誤差;K為遞推計(jì)算收斂系數(shù);z為子模型個數(shù)。權(quán)重計(jì)算公式為
式中:wj,k是 k時刻子模型 j的權(quán)重系數(shù);δ是極小值,當(dāng) Pj,k>δ時,使 wj,k=0;c 是 Pj,k≤δ時的模型編號 j的值,即為了保證所有權(quán)值總和為 1,在計(jì)算Pj,k>δ時的權(quán)重時,不包括 Pj,k≤δ的概率值。
最后權(quán)重系數(shù)與各子模型控制量的輸出通過加權(quán)和的計(jì)算方式,得到實(shí)際作用于被控對象的控制量
多模型DMC算法采用統(tǒng)一的控制量增量Δu作被控對象以及z個子模型的預(yù)測控制量輸入,采用被控對象的輸出和z個子模型的預(yù)測輸出Δuj作差,作為遞推貝葉斯加權(quán)概率的輸入ζj獲得加權(quán)系數(shù)w1~wz。將z個子模型的預(yù)測控制量輸出與加權(quán)系數(shù)進(jìn)行加權(quán)和運(yùn)算,最終獲得控制量增量Δu。
由于多模型DMC算法在運(yùn)行過程中運(yùn)用到了大量的矩陣運(yùn)算,并且其實(shí)現(xiàn)環(huán)境是嵌入式平臺,因此在實(shí)現(xiàn)過程中,一方面需要將矩陣算法進(jìn)行了模塊化處理,另一方面對于矩陣運(yùn)算的維度大小需要進(jìn)行限制,規(guī)定子模型個數(shù)不超過5個,子模型的采樣時域N不超過200。
多模型DMC算法的環(huán)境依托嵌入式平臺。嵌入式平臺的處理器芯片采用Motorola基于PowerPC體系結(jié)構(gòu)的MPC8560,該處理器芯片以其高性能的內(nèi)核運(yùn)行速度,內(nèi)存大、安全可靠和低功耗的特點(diǎn),適用于控制算法的核心處理器。同時,本嵌入式平臺擁有3個網(wǎng)口通信接口,1路RS-232通信接口和3路RS-485通信接口,豐富的通信接口極大地方便了與現(xiàn)場設(shè)備之間的數(shù)據(jù)交互。
出于現(xiàn)場運(yùn)行穩(wěn)定可靠的角度考慮,嵌入式平臺在搭建過程中采用冗余備份的方式進(jìn)行,即所有物理環(huán)節(jié)均有兩套設(shè)備。運(yùn)行過程中,其中的一套設(shè)備處于實(shí)時運(yùn)算狀態(tài),另外一套設(shè)備處于跟蹤運(yùn)行狀態(tài)。
嵌入式平臺通過網(wǎng)絡(luò)通信協(xié)議與上位機(jī)軟件進(jìn)行通信,從而使數(shù)據(jù)實(shí)現(xiàn)實(shí)時高速傳輸。冗余平臺之間采用RS-232通信方式實(shí)現(xiàn)運(yùn)行狀態(tài)和跟蹤狀態(tài)之間的切換,采用網(wǎng)絡(luò)通信方式實(shí)現(xiàn)數(shù)據(jù)的實(shí)時備份。平臺采用RS-485通信方式實(shí)現(xiàn)與現(xiàn)場設(shè)備之間的數(shù)據(jù)交互。目前多數(shù)現(xiàn)場設(shè)備之間的通信協(xié)議采用MODBUS,因此嵌入式平臺與現(xiàn)場運(yùn)行的傳感器和執(zhí)行器之間采用MODBUS通信協(xié)議。嵌入式平臺現(xiàn)場接線圖如圖2所示。
圖2 嵌入式平臺現(xiàn)場接線
工業(yè)現(xiàn)場對系統(tǒng)的可靠性和實(shí)時性有很高的要求,需要一套擁有高性能的操作系統(tǒng)實(shí)現(xiàn)任務(wù)的切換、調(diào)度和管理。VxWorks嵌入式操作系統(tǒng)[9]以其良好的模塊化、可擴(kuò)展性、信息性安全、功能性安全和虛擬化特性能夠有效地降低研發(fā)成本、縮短生產(chǎn)周期。因此在實(shí)現(xiàn)多模型DMC算法的過程中采用了VxWorks操作系統(tǒng)。
上位機(jī)軟件用于提供快捷便利的人機(jī)交互界面,具有快速搭建邏輯組態(tài)圖,生成嵌入式平臺運(yùn)行文件以及在線下發(fā)命令,實(shí)時在線顯示動態(tài)趨勢和歷史數(shù)據(jù)管理的功能。多模型DMC算法模塊的邏輯組態(tài)圖由上位機(jī)軟件生成運(yùn)行文件下裝至嵌入式平臺,再由嵌入式平臺實(shí)現(xiàn)算法的現(xiàn)場運(yùn)算。
每個嵌入式平臺中可以運(yùn)算多個多模型DMC算法,算法中至多可以存放5個子模型,每個子模型都涉及1個模型文件,因此在算法實(shí)現(xiàn)的過程中需要將模塊中的子模型按照規(guī)定格式進(jìn)行命名和存儲。每個多模型DMC算法模塊的文件夾命名規(guī)則采用上位機(jī)軟件下裝的唯一模塊標(biāo)識符進(jìn)行命名,文件夾中存放至多5個子模型文件,子模型1~5采用A1~A5的命名方式。
此外還需要一個額外的文件記錄當(dāng)前嵌入式平臺中所有的多模型DMC算法模塊的文件信息,該文件一方面便于對子模型文件進(jìn)行增減操作,另一方面便于區(qū)別冗余設(shè)備之間的運(yùn)行狀態(tài)與備份狀態(tài)。
算法實(shí)現(xiàn)過程中運(yùn)用了大量的矩陣運(yùn)算,所以將通用的矩陣運(yùn)算編寫成函數(shù)庫的形式方便調(diào)用。另外嵌入式平臺存儲空間相對于大規(guī)模矩陣運(yùn)算而言,空間有限。在進(jìn)行大量矩陣運(yùn)算過程中,要特別注意內(nèi)存空間的動態(tài)開辟與釋放。
考慮如下的二階非線性被控對象
采用上位機(jī)軟件搭建多模型DMC控制器、單模型DMC控制器和PID控制器邏輯組態(tài)圖進(jìn)行仿真實(shí)驗(yàn)。仿真邏輯組態(tài)如圖3所示。
通過模塊屬性對話框可以對DMC算法進(jìn)行初始狀態(tài)設(shè)定、子模型文件管理和參數(shù)屬性設(shè)置。模塊內(nèi)部存在子模型z時,對應(yīng)的采樣完成標(biāo)志前打?qū)?。?dāng)模塊內(nèi)部有且僅有1個子模型時,即為單模型DMC模塊。另外,通過“進(jìn)入系統(tǒng)數(shù)據(jù)庫”按鈕可以將模塊的實(shí)時數(shù)據(jù)記錄在數(shù)據(jù)庫中,便于日后查閱。模塊屬性如圖4所示。
對多模型DMC模塊進(jìn)行5次子模型采樣,采樣時間間隔為1 s,采樣過程參數(shù)設(shè)定如表1所示。
圖3 控制邏輯組態(tài)
表1 參數(shù)設(shè)定
對單模型DMC進(jìn)行1次模型采樣即可,采樣過程中參數(shù)設(shè)定為 r0=36,y0=30,Δ=10
子模型采樣完畢,對DMC控制器參數(shù)的設(shè)定,可以參考如下設(shè)定方案:采樣時域N,應(yīng)盡量覆蓋被控對象階躍響應(yīng)的整個過程;預(yù)測時域P,盡可能接近采樣時域;控制時域M,選取8以內(nèi)即可。隨后將各個控制器參數(shù)調(diào)節(jié)到最佳狀態(tài),分別進(jìn)行4次實(shí)驗(yàn),得到如圖5曲線。
圖4 DMC模塊屬性設(shè)置
圖5 輸出響應(yīng)曲線
從實(shí)驗(yàn)曲線可以看出,在大范圍工況條件下,PID控制器對非線性被控對象的控制有明顯的超調(diào)現(xiàn)象,而DMC控制器相比較于普通PID控制器而言具有調(diào)節(jié)時間短,超調(diào)量小的優(yōu)勢。另外,由于單模型DMC控制器只采樣了一組模型響應(yīng)數(shù)據(jù),因此在其采樣點(diǎn)附近工作時,具有與多模型DMC控制器一樣的控制效果,但是在其他工作點(diǎn)時,由于多模型DMC比單模型DMC控制器具有更多的模型,所以在控制過程中,具有明顯的超調(diào)量小的優(yōu)點(diǎn)。
詳細(xì)介紹了基于嵌入式平臺多模型DMC算法的實(shí)現(xiàn)。針對復(fù)雜的工業(yè)生產(chǎn)過程,采用多模型DMC算法使得被控對象在控制過程中具有超調(diào)量小,調(diào)整時間短的優(yōu)點(diǎn)。同時配合顯示友好的上位機(jī)軟件,更加直觀方便地搭建邏輯組態(tài),從而提升工作效率。實(shí)驗(yàn)表明,基于嵌入式平臺的多模型DMC算法具有更優(yōu)秀的控制品質(zhì)。