劉 寶, 張 晨
(中國石油大學(華東) 信息與控制工程學院, 山東 青島 266580)
基于OPC的SIMATIC PCS7預測控制實驗系統設計與實現
劉 寶, 張 晨
(中國石油大學(華東) 信息與控制工程學院, 山東 青島 266580)
為鍛煉學生在實驗教學中的創新能力,提出一種依托SIMATIC PCS7系統和SMPT-1000實驗裝置的預測控制實驗系統。在介紹SIMATIC PCS7系統的基礎上,以OPC通信協議為橋梁,實現了預測控制算法在SMPT-1000實驗過程中的應用,提高了學生對高級過程控制算法的認知和理解,培養了學生的創新思維和創新能力,對高校實驗教學的發展有著極其重要的推動作用。
預測控制; OPC; PCS7系統; SMPT-1000
SIMATIC PCS7系統是基于現場總線的模塊化過程控制系統,它將PLC與DCS的優點和功能結合起來,具有更廣泛的適用性[1]。SMPT-1000是北京化工大學和西門子公司聯合開發的物理仿真實驗設備,采用流程工業中通用的水汽熱能系統,主要包括燃燒、換熱、相變、濃縮等環節,在保留對象動態特性的基礎上,使生產工藝易于理解,便于開展過程控制相關專業實驗教學和技能訓練[2]。目前許多高校購置了PCS7和SMPT-1000實驗設備,但是利用該實驗設備開發的高級控制算法實驗系統較少,而高級控制算法實驗系統對提高學生的工程實踐能力大有裨益。
預測控制算法是一種基于過程模型的先進算法[3]。它首先建立控制對象的過程模型,利用模型進行運算與處理,得到被控對象在一定控制策略下的未來動態行為,再針對未來的系統動態調整控制信號以實現最優控制;系統運行中,被控對象的實時信息又反饋回來修正下一時刻預測的系統動態輸出,從而實現滾動優化。
本文依托SMPT-1000實驗設備,使用SIMATIC PCS7系統對控制對象進行傳統方法控制,然后利用OPC通信技術,完成Matlab與PCS7系統的數據交互,最后實現預測控制算法對SMPT-1000控制對象的高級控制。在實驗教學中,通過加入預測控制算法,適當增大了實驗的難度和復雜程度,使學生(包括本科生和研究生)對過程控制和先進控制算法有了較深入的理解,提高了分析問題、解決問題的能力。
1.1 SIMATIC PCS7系統
SIMATIC PCS7系統集成在SIMATIC MANAGER管理器中,它打破了傳統DCS與PLC原有的界限并進行無縫集成,使系統的應用更加廣泛[4]。PCS7的結構是以PROFIBUS現場總線技術為基礎,將現場控制設備I/O卡件全部集成于過程控制系統中,如圖1所示。

圖1 PCS7系統結構圖
現場設備通過ET200分布式I/O連到PROFI-BUS總線上。I/O卡件與CPU可以通過PROFIBUS總線實現兩者間通信,可以將主控器與操作裝置放在控制室里,現場設備(如SMPT-1000)與分布式I/O安裝在工藝現場。
1.2 SMPT-1000系統
SMPT-1000是把實物模擬裝置與數字仿真技術相結合的實驗裝置。它集成了多種工業控制對象流程,可以模擬蒸發器、加熱爐和鍋爐等工藝對象。其中鍋爐單元是本文所涉及的主要實驗工藝系統,其工藝流程如圖2所示。
軟化水被分為兩路:一路進入E1101減溫器降低過熱蒸汽溫度;另一路流向E1102省煤器為鍋爐給水預熱。鍋爐給水經煙氣預熱后被送進汽包V1102。給水流經水冷壁一側,吸收爐膛熱量成為汽水混合物,之后進入V1102進行汽水分離。經過汽水分離后的飽和蒸汽進入爐膛,氣相成分繼續升溫變為過熱蒸汽,并流進減溫器對鍋爐給水預熱后輸給下游生產環節[5]。燃油泵P1102輸送燃料,空氣被鼓風機K1101按照一定比例送向爐膛。燃料在爐膛中燃燒產生熱量,鍋爐水在熱量作用下汽化。
在實際生產過程控制中,燃燒生成的煙氣夾帶大量余熱,預熱省煤器中的鍋爐給水。在煙囪的抽力作用下,煙氣被抽出排入大氣。煙氣含氧量反映了鍋爐內的燃燒工況,通過控制煙氣含氧量保證鍋爐內充分燃燒,進而促進節能減排。由于煙氣含氧量與鍋爐的多個變量有著較強耦合和傳輸慣性,使得利用傳統控制方法對該控制變量調節存在較大困難。

圖2 SMPT-1000的鍋爐生產工藝流程圖
為了提高學生在高級過程控制方面實際動手能力,設計了PCS7預測控制實驗系統,其實驗目的是在掌握預測控制算法(MPC)基本原理的基礎上,以SMPT-1000系統的鍋爐單元為控制對象,首先在PCS7系統中組態實現基本控制回路,然后利用OPC通信技術實現Matlab的預測控制模塊與PCS7系統內部的控制算法模塊進行數據通信,最后實現對SMPT-1000實驗工藝對象的預測控制,并對其控制性能指標進行分析。
2.1 預測控制實驗系統整體架構
預測控制算法(MPC)是一種基于過程模型的先進控制算法,通常包含預測模型、滾動優化和反饋校正3部分[6]。
(1) 預測模型。根據工藝對象的歷史信息和未來輸入預測其未來輸出,具有展示系統未來動態行為的功能。
(2) 滾動優化。通過某一性能指標的最優化來確定未來的控制作用,該優化是一種有限時段的滾動優化。
(3) 反饋校正。通過優化確定一系列未來的控制作用后,通常只輸出當前控制周期的控制作用。到下一控制周期,則首先檢測工藝對象的實際輸出并對基于預測模型的輸出進行修正,然后進行新的滾動優化[7]。
OPC是一種應用廣泛的通信協議,它提供了一系列接口函數,能滿足各種類型的現場設備要求;軟件用戶訪問的方式被統一,方便軟件開發者與其他系統的對接與軟件使用者的使用[8]。本文基于OPC通信技術,設計實現PCS7系統和SMPT-1000的預測控制實驗系統。利用OPC實現了PCS7和Matlab之間的數據傳輸[9],從而在PCS7系統中實現MPC預測控制算法(見圖3)。

圖3 PCS7預測控制實驗系統整體架構圖
2.2 PCS7中控制系統組態實現
關于SMPT-1000基本控制系統的實驗設計,主要包括PCS7系統的操作員站、自動化站的系統組態和連續控制CFC、順序控制SFC組態。
2.2.1 硬件組態
(1) AS組態。進入SIMATIC MANAGER畫面,打開HW Config視圖進行AS組態。首先在Properties的Parameters選項卡中,將MAC address改為PLC的MAC地址;然后掛載PM125模塊。先將PM125掛載在DP線上,然后為PM125添加輸入與輸出,并給各輸入、輸出定義相應的標志。
(2) OS硬件組態。按照操作員站組態編輯器的硬件配置進行組態,與站組態編輯器保持一致。先在Component View中打開Configuration對象,并添加一個IE General網卡。雙擊IE General,將PC站的MAC地址寫入MAC address欄中。然后將組態信息保存并編譯,此時已將AS、OS組態完畢,應該連接AS與OS。在Component View中打開Connections對象,創建一個網絡連接。硬件組態完成后,按照順序分別下載OS組態、AS組態和網絡連接。
2.2.2 CFC程序設計
CFC在工廠連續運轉的工藝過程中,以功能塊的形式實現自動控制功能。編輯CFC時,將預先設置的功能塊放在CFC中連接線路、設置參數,實現控制功能。SMPT-1000的主要控制回路包括:
(1) 燃燒控制:需要控制燃料和空氣的配比,以達到充分燃燒;
(2) 給水控制:需要與蒸汽產量匹配,以控制鍋爐汽包內水的儲量;
(3) 過熱蒸汽出口壓力控制:要求能夠根據負荷的變化控制蒸汽壓力;
(4) 過熱蒸汽出口溫度控制:需要根據工藝要求精確控制蒸汽溫度。
本文選取燃燒控制中煙氣含氧量單回路作為被控對象,控制系統原理如圖4所示。

圖4 煙氣含氧量單回路控制系統原理圖
2.2.3 SFC程序設計
SFC是西門子公司在PCS7中解決順序控制的一個工具,運用SFC可以較為簡單、方便地完成循環、判斷、順序等方式的控制,因此在SFC中編寫程序實現SMPT-1000系統的開車過程(見圖5)。按照圖5所示開車過程,在SFC中搭建程序框圖,在每個程序塊中寫入對應步驟的控制語句并加入判斷條件,最終完成整個開車過程。

圖5 SMPT-1000開車過程示意圖
2.3 OPC通信部分的設計與實現
OPC Server是一套用于工業自動化的框架結構軟件,它提供與硬件裝置相連接的接口。客戶可以用同樣的代碼重復使用OPC接口,更加容易地遠程訪問OPC Server或遠程控制目標[10]。本文使用OPC技術實現PCS7與Matlab之間的連續數據通信。
2.3.1 PCS7中OPC-Sever實現
SIMATIC WinCC是西門子公司的人機界面組件,對于各工業領域有通用的解決方案且功能豐富。啟動WinCC時,系統會自動啟動PCS7內部的OPC Server,完成以OPC技術為通信橋梁的數據通信。
2.3.2 Matlab中OPC實現
Matlab可以通過程序與OPC Server建立連接、傳輸數據,步驟如下:
(1) OPC Server訪問PCS7系統(系統編譯后所有工藝變量均進入OPC Sever,刪去不需要的變量即可),讀取SMPT-1000系統狀態參數;
(2) Matlab與OPC Server建立通信:
hostInfo=opcserverinfo(′localhost′); //主機通訊 da=opcda(′localhost′,′OPCServer.WinCC.1′); //句柄 connect(da); //建立連接 grp=addgroup(da,′group1′); //獲取數據
(3) Matlab訪問WinCC,將狀態參數讀入先進控制程序,如:
AI1101=additem(grp,′CFC(1)/AIC1101.PV_IN′); AI1101_KP= dditem(grp,′CFC(1)/AIC1101.GAIN′); AI1101_TI = additem(grp,′CFC(1)/AIC1101.TN′); AI1101_TD = additem(grp,′CFC(1)/AIC1101.TV′); AIC1101_SP= additem(grp,′CFC(1)/AIC1101.SP_OP′); AIC1101_MAN=additem(grp,′CFC(1)/AIC1101.MAN_OP′);
(4) 各種控制狀態參數:Matlab的MPC控制算法運算得出控制輸出信號,然后寫入OPC Server;控制信號經由OPC Server寫入WinCC,再傳輸到PCS7系統,PCS7系統將控制量寫入SMPT-1000的控制器,實現對工藝實驗裝置對象的控制,如:Write(AIC1101_MAN,manual_out)。
通過上述程序就完成了OPC Server和Matlab的連接,SMPT-1000實驗裝置、PCS7系統、OPC通信、Matlab中的先進控制算法被有機的結合起來,從而實現了SMPT-1000工藝現場與第三方軟件的通信和第三方軟件對工藝流程的控制。
2.4 Matlab中預測控制算法的實現
2.4.1 預測模型的建立
為實現工藝實驗對象的預測控制,需要建立預測模型。首先,通過在Matlab中設計算法,建立實驗裝置的數學模型。本文采用階躍響應曲線法建模,即對被控對象施加一個階躍信號,待工藝輸出發生變化時測出被控對象的響應曲線,再根據響應曲線進行建模,得到控制過程的傳遞函數。根據系統的階躍響應曲線,運用兩點法求系統的近似傳遞函數模型:
(1) 系統輸出合適的階躍信號△u,采集并處理所有階躍響應數據;
(2) 數據標準化:把y(t)轉換成無量綱模式y*(t),即y*(t)=y(t)/y(),y()即階躍響應的穩態值;
(3) 計算兩個時間點:選定兩個時刻t1和t2(t2>t1>τ),延遲時間從階躍響應延遲確定,從測試結果中讀出y*(t1)和y*(t2),一般選取y*(t1)= 0.4、y*(t2)= 0.8,并得到t1和t2。
(1)
式(1)中T1、T2為被控對象的時間常數。按照求解的結果,得出系統工藝對象的近似傳遞函數為
(2)
再根據階躍響應曲線的結果建立矩陣,構建動態矩陣模型。根據階躍響應建立動態矩陣,階躍響應的采樣值按照順序對矩陣A進行賦值。
2.4.2 預測控制算法設計
在建立了實驗裝置的數學模型后,在Matlab中設計預測控制的算法。Matlab中預測控制算法主要分為3部分:
(1) 測定對象單位階躍響應的采樣值,根據采樣值建立數學模型,對動態矩陣賦值,然后由動態矩陣計算控制向量;
(2) 當前和未來時刻控制作用發生變化時,未來控制輸出ΔuM(k)點乘動態矩陣A之后,再與初始輸出預測值yP0(k)疊加,得到未來P時刻的模型輸出預測值yPM(k):
(3)
(3) 控制向量與模型向量相乘,按照公式(4)計算出其作用后的預測輸出yN1(k),未來預測輸出y1(k+1|k)與實際輸出y(k+1)比較計算誤差e(k+1),進行校正后將ycor(k+1)作為下一時刻的預測輸出[11]。具體設計實現如圖6所示。
(4)
預測控制設計流程如圖6所示。

圖6 預測控制設計流程圖
設置DMC參數是預測控制算法中較為重要的一步,需要設置的參數主要包括采樣時間T、截斷步長N、預測步長P、控制步長M[12]。采樣周期T的選擇應該遵循一般采樣控制的原則,結合香農采樣定理、控制過程的物理特征和動態特性選取;截斷步長N的選擇通常使采樣值a近似等于階躍響應的穩態值,從而使模型盡可能準確地反映對象的動態特性;預測步長P的大小對控制的穩定性和快速性有著較大的影響,一般選擇P使優化時域包含對象階躍響應的主要動態部分;控制步長M表示所要確定的未來控制量改變的數目,一般來說要求M≤P[13]。
按照上述預測控制算法的設計思路編寫MPC程序,Matlab的控制輸出通過OPC通信協議傳入PCS7中的控制系統,對SMPT-1000實驗裝置進行控制,從而實現先進控制算法在SMPT-1000實驗平臺中的應用。
該實驗系統可以完成階躍響應預測模型的建立、OPC Sever數據通信、預測控制算法仿真、SMPT-1000的預測控制算法設計及結果分析等實驗項目,可分別滿足本科生和研究生實驗需要。
根據上述實驗步驟,以煙氣含氧量被控對象為例進行實驗,其實驗結果如下。
(1) 階躍響應模型建立。對煙氣含氧量控制回路進行階躍響應,其響應曲線如圖7所示。利用兩點法求出的系統近似工藝模型為

圖7 煙氣含氧量回路階躍響應曲線
(2) 預測控制實驗效果。根據階躍響應建立動態矩陣。根據上述操作流程,設定采樣周期Ts=0.5 s,截斷步長N=50,預測步長P=20,控制步長M=1。預測控制算法控制效果如圖8所示的曲線。當設定值為10%時,測量值能夠快速地趨近設定值且超調量小,控制效果良好,但仍有微量的余差存在。PID的控制效果如圖9所示,其控制參數為:P=3.5、I=50、D=0。圖9中曲線為被控變量設定值為30%時的測量值。PID控制可以使被控變量最終穩定在設定值,但是相比較MPC的控制效果,PID控制的調節時間要長于預測控制,而且有較大的超調量(見表1)。因此,在該實驗中預測控制具有較好的控制效果。

表1 MPC與PID控制性能指標

圖8 預測控制實時曲線

圖9 PID控制方案實時曲線
依托SMPT-1000實驗裝置和SIMATIC PCS7系統設計的基于OPC的預測控制實驗平臺,能夠較好地控制鍋爐運行過程,相對于傳統PID控制,預測控制在面對多入多出、強耦合系統時有更好的控制效果。該預測控制實驗平臺自2014年起應用于實際教學中,在培養學生搭建OPC通信協議,鍛煉Matlab編程能力、創新能力與創新思維等方面取得了較好的效果。本實驗系統涉及的MPC控制原理、SIMATIC PCS7系統和SMPT-1000實驗設備較為復雜,需要進一步改進設計,以擴大該實驗系統的適用范圍。
References)
[1] 紀超,王晶,于建梅.基于SMPT-1000實驗平臺的鍋爐控制實驗設計[J].實驗技術與管理,2011,28(7):47-52.
[2] 張春曉.基于SMPT-1000的鍋爐系統控制方案設計及其實現[D].北京:北京化工大學,2013.
[3] 董哲,謝龍,張倩.基于PCS7和SMPT-1000的鍋爐控制系統設計[J].儀表技術與傳感器,2016(1):107-110.
[4] 王德康,蘇宏業,褚健.基于OPC技術的先進控制軟件設計與研究[J].化工自動化及儀表,2000,27(4):27-30.
[5] 柴凱,侯立剛,姜軍銀.OPC技術在工業過程控制中的應用研究[J].工業儀表與自動化裝置,2005(3):70-72.
[6] 徐璟.PID參數整定分析[J].廣西電業,2010(4):83-85.
[7] 時維國,宋存利.基于脈沖響應的預測控制算法及仿真[J].大連鐵道學院學報,2004,25(4):51-54.
[8] 李德偉,席裕庚,秦輝.預測控制等效集結優化策略的研究[J].自動化學報,2007,33(3):302-308.
[9] Richalet J. Industrial applications of model based predictive control[J].Automatica,1993,29(5):1251-1274.
[10] 席裕庚,耿曉軍.非線性系統滾動時域控制的性質研究[M].控制理論與應用,1999,16(增刊):118-123.
[11] 史冬琳,門洪,李峰,等.基于PCS7的過程控制實驗設計[J].自動化與儀表,2015(7):45-48.
[12] 姜建芳,王軍旺,黃輝,等.基于西門子工業網絡的過程控制實驗系統[J].實驗室研究與探索,2008,27(8):250-253.
[13] 亓英蓮.基于西門子PLC的網絡化控制實驗裝置設計[D].北京:北方工業大學,2011.
Design and realization on PCS7 model predictive control experimental system based on OPC
Liu Bao, Zhang Chen
(College of Information and Control Engineering,China University of Petroleum,Qingdao 266580, China)
In order to improve students’ innovative ability in the experimented teaching,a kind of experiment by using on SMPT-1000 device of model predictive control is put forward based on SIMATIC PCS7 system. The model predictive control in the process industry is realized via the OPC communication protocol. This experiment can help students understand the process control and advanced algorithms. It can also cultivate their innovative thinking and innovative ability. This experiment plays a very important role in the development of experimental teaching in colleges and universities.
predictive control; OPC; PCS7 system; SMPT-1000
10.16791/j.cnki.sjg.2017.04.033
2016-11-03
2015年山東省教學改革項目(2015M016);2016年全國工程專業學位研究生教改課題(2016-ZX-277);2015年山東省研究生教育創新計劃項目(SDYC15037);2016年中國石油大學(華東)重點教學改革項目(JY-A201608);2014年中國石油大學(華東)研究生重點教學改革項目(YJ-A1407)
劉寶(1971—),男,山東淄博,博士,教授,主要研究方向為油氣田智能檢測與控制技術.
E-mail:15965425299@163.com
TP273
A
1002-4956(2017)4-0130-06