劉先平 ,柴細元 ,郭智勇 ,張志攀 ,韓明明
(1.中國石油渤海鉆探工程有限公司測井分公司天津300280;2.中國石油大學(北京)博士后科研流動站北京102249;3.西南石油大學機電工程學院,四川成都610500;4.大港油田公司勘探開發(fā)研究院天津300280)
組態(tài)軟件是結(jié)合計算機技術(shù)和控制技術(shù)發(fā)展起來的[1-2],在SCADA、DCS等工控系統(tǒng)中運行于IPC作為監(jiān)控層管理軟件,發(fā)揮著數(shù)據(jù)采集與過程控制功能的軟件開發(fā)平臺[3-5]。國外常見的工控組態(tài)軟件主要有 Wonderware 的 InTouch[6],GE 的 IFix[7],Citect的Citech[8]以及Siemens的WinCC[9]等。國內(nèi)目前工控使用最廣泛的組態(tài)軟件是北京亞控科技發(fā)展有限公司開發(fā)的組態(tài)王King View,國內(nèi)其他具有代表性的組態(tài)軟件還有北京三維力控科技有限公司開發(fā)的ForceControl[10-12],由北京昆侖通態(tài)自動化軟件科技有限公司開發(fā)的MCGS等[13-14]。
組態(tài)軟件一般具有豐富多樣的圖形動畫、功能強大的模塊控件、不斷完善的外圍硬件模塊驅(qū)動庫以及技術(shù)成熟的網(wǎng)絡(luò)支持技術(shù),它能以靈活多樣的組態(tài)方式(非編程)提供良好的用戶開發(fā)界面和簡潔的使用方法[15],其預設(shè)置的各種軟件模塊可輕易實現(xiàn)HMI、實時數(shù)據(jù)庫數(shù)據(jù)管理、與IPC外圍硬件進行數(shù)據(jù)通信以及曲線和數(shù)據(jù)報表的功能[16],但在實現(xiàn)各種復雜的控制算法方面尚有不足。在組態(tài)軟件實現(xiàn)控制算法方面,國內(nèi)組態(tài)軟件與國外組態(tài)軟件實現(xiàn)方法手段一致,主要有3種方法:一是使用DDE或OPC與第三方控制算法運行軟件進行數(shù)據(jù)交換;二是使用VB或VC將控制算法編譯成ActiveX控件,使用組態(tài)軟件進行控件加載的方式實現(xiàn)復雜控制[17];三是使用組態(tài)軟件自帶的VBA等算法編程環(huán)境實現(xiàn)復雜控制算法。此3種實現(xiàn)控制算法的方法較復雜,工作任務量大。力控組態(tài)軟件不帶有VBA編程環(huán)境,使用方法二實現(xiàn)控制算法尚未見諸調(diào)研資料。
本實驗研究以力控組態(tài)軟件為平臺,通過研究PID控制算法原理及力控組態(tài)軟件運行機制,在力控組態(tài)軟件平臺上編程實現(xiàn)PID控制算法,基于組態(tài)平臺建立油箱模型對控制算法實現(xiàn)可行性進行驗證,并為其他類似組態(tài)軟件平臺提供一種實現(xiàn)控制算法的新方法。同時,力控組態(tài)軟件帶有控制策略模塊,但使用時需要單獨購買。如果能夠使用編程實現(xiàn)力控組態(tài)軟件的控制功能,則能夠在使用力控組態(tài)進行控制的工程中減少投入成本,從而帶來直接的經(jīng)濟效益。
力控組態(tài)軟件程序編寫通過腳本編輯器完成,力控腳本編輯器有六種方式,分別是當前窗口腳本編輯器、應用程序腳本編輯器、觸敏動作腳本編輯器、數(shù)據(jù)改變腳本編輯器、鍵操作腳本編輯器、特殊條件腳本編輯器。其中當前窗口腳本編輯器、應用程序腳本編輯器、觸敏動作腳本編輯器具有開始動作、周期執(zhí)行、退出動作的3種程序運行方式。
在當前窗口腳本編輯器編寫的程序只在本窗口有效,切換到其他窗口后,原窗口的周期執(zhí)行程序不繼續(xù)執(zhí)行。在進入、退出或切換當前窗口時可執(zhí)行一次預設(shè)的程序,其他時間內(nèi)窗口程序按按一定時間周期循環(huán)執(zhí)行,程序執(zhí)行周期最短為100 ms,即一秒鐘時間最多只能循環(huán)執(zhí)行所編寫的程序10次。力控組態(tài)采用的是邊解釋邊執(zhí)行的程序執(zhí)行方式,在周期執(zhí)行的中每一段程序執(zhí)行周期內(nèi),程序從第一條開始向下逐條執(zhí)行,一直執(zhí)行到最后一條程序,然后等待本次時間循環(huán)周期結(jié)束。本次循環(huán)結(jié)束后,開始下一個循環(huán),重復執(zhí)行周期運行窗口中的程序。
圖1所示為當前窗口編輯器“窗口運行周期執(zhí)行”窗口,本次實驗研究所編寫的程序代碼都在此窗口中執(zhí)行。對窗口中編輯的程序可以進行編譯查錯,當編譯不通過的時候,當前窗口的程序無法進行保存。本次實驗研究所編寫的PID控制程序按0.1 s的周期重復執(zhí)行,以時間段內(nèi)的數(shù)值和代替積分,以數(shù)值對執(zhí)行周期的后向差分代替微分。
圖1 當前窗口腳本編輯器
1)假設(shè)油箱為圓柱體外型,則油箱液位H可表示為油箱中油的體積V與油箱內(nèi)圓柱底面積S之比,即H=V/S。
2)令S=1,則數(shù)值上有H=V。
3)令△t時間內(nèi),流入油箱的流量和流出油箱的流量分別為常量Fi和Fo,則△t時間后當前油箱液位為:H=V=(Fi-Fo)t+Vo,其中Vo為△t時間前的油箱油位。
4)假設(shè)油箱流入流量為最大流入流量Fimax與流入閥門開度Vai的乘積,油箱流出流量為液位為H時流出流量f(H)與流入閥門開度Vao的乘積。
5)假設(shè)流出流量f(H)與液位H為線性關(guān)系,即滿足:f(H)=aH+b,a為比例系數(shù),b為偏移量。f(H)隨H的增多而增大,當H為0時,f(H)=b為大于0的數(shù)。
綜上,在某時刻t0,經(jīng)過△t時間后,油箱液位表達式則變?yōu)椋?/p>
閥門開度采用滿開度的比例計算,即開度為一半時,閥門開度表示為50%,全開為100%,全關(guān)為0。在力控組態(tài)軟件中編寫實現(xiàn)程序為:
假設(shè)PID計算出閥門控制量能夠立即使電動調(diào)節(jié)閥動作,即電動調(diào)節(jié)閥對控制量的響應無延時。則在某時間t時刻開始的周期△t內(nèi),本次閥門開度值等于上次閥門開度與PID計算開度之和。
參照實驗室油箱模型,設(shè)油箱最高油位為200個單位。進油閥全開并且出油閥全開時,油箱無法蓄油,即有Fimax≤b。進油閥全開并且出油閥全關(guān)時,假設(shè)20 s時間可以注滿整個油箱,而程序執(zhí)行周期為0.1 s,即200個周期可以將200單位的油箱注滿油,所以可得到最大進油流量Fimax為1單位,同時不妨設(shè)b=1。假設(shè)油箱全滿時,閥門全開時的最大f(H)為2,則由f(H)=aH+b計算得a=0.005。
模擬PID控制系統(tǒng)原理框圖如圖2所示,本次實驗的研究過程為油箱,被控變量為油箱液位。執(zhí)行器是力控組態(tài)編程實現(xiàn)的電動調(diào)節(jié)閥,控制器為力控組態(tài)軟件及其編程實現(xiàn)的PID控制算法。
圖2 模擬PID控制系統(tǒng)原理框圖
模擬PID控制系統(tǒng)的控制器數(shù)學模型為:
圖3 數(shù)字PID控制系統(tǒng)原理框圖
由于計算機處理的都是離散的數(shù)字信號,不能對連續(xù)的模擬PID進行運算,因此,使用計算機做控制器PID控制時,必須對檢測信號進行離散化處理,使用數(shù)字PID實現(xiàn)模擬PID功能。計算機做控制器的PID控制系統(tǒng)原理圖如圖3所示。
數(shù)字式PID控制器數(shù)學模型有位置型控制器和增量型控制器兩種,增量型PID數(shù)字控制器主要適用于步進電機控制中,本次實驗控制器采用位置型數(shù)字PID控制器。我們對式(1)離散化,使用后向差商代替微分,時間段內(nèi)的離散積累代替積分,具體形式如表1所示。
表1 模擬PID調(diào)節(jié)器方程離散化對應表
則可得到位置型數(shù)字PID控制器的差分方程為:
在本次實驗中,使用采樣時間間隔為T=0.1s,在力控當前窗口編輯器程序周期執(zhí)行窗口中編程實現(xiàn)位置型數(shù)字PID控制器程序如下:
圖4 程序周期執(zhí)行流程圖
力控實現(xiàn)單油箱建模與PID控制的程序過程運行過程如圖4所示,考慮到現(xiàn)實情況下,閥門開度不可能達到100,且不可能完全關(guān)閉,因此設(shè)置閥門開度在5%~95%之間。程序按周期反復執(zhí)行。
如圖5所示為力控組態(tài)編程實現(xiàn)的單油箱建模與PID控制界面圖,從圖中可以看出力控開發(fā)的單油箱建模與PID控制實驗平臺由4部分組成,分別是:實物流程仿真、控制曲線輸出、油箱模型參數(shù)設(shè)置、PID控制器設(shè)置。通過設(shè)置油箱參數(shù)與PID控制參數(shù),可以對油箱液位進行控制仿真,并將仿真結(jié)果由控制曲線輸出界面動態(tài)顯示輸出。
圖5 油箱建模與PID控制界面圖
在圖5中,控制參數(shù):Kp=0.3,Td=0.2,積分作用關(guān)閉,被控變量從50跳變到80,油箱液位變化(細曲線)趨勢圖。從圖5可知PID控制有效,控制參數(shù)設(shè)定合理;油箱模型較合理,能夠反映真實的油箱模型情況;力控組態(tài)能夠在一定約束條件下編程實現(xiàn)PID控制算法。
此次力控組態(tài)軟件平臺編程實現(xiàn)單油箱建模與PID控制,一定程度上驗證了力控編程實現(xiàn)控制算法的可行性,但還需在此平臺上進行各種先進控制算法的編程實驗,以充分論證力控編程實現(xiàn)控制算法的可行性。在本次實驗研究中,對模型的建立使用了一些理想化假設(shè),按這些假設(shè)建立的模型不能完全反應真實情況,下一步希望能夠基于實驗室使用A3000系統(tǒng)進行力控組態(tài)控制算法驗證。
參考文獻:
[1]王勇,王衛(wèi).監(jiān)控組態(tài)軟件在吳一聯(lián)實行數(shù)字化改造中的應用[J].電子設(shè)計工程,2013,21(21):19-21.
[2]程西浩,展巍.嵌入式組態(tài)軟件系統(tǒng)的設(shè)計[J].電子設(shè)計工程,2012,20(8):46-48.
[3]北京三維力控科技有限公司.基于力控監(jiān)控組態(tài)軟件的大型廣域網(wǎng)解決方案[J].電子技術(shù)應用,2010,36(5):13-14.
[4]石磊,喻貴忠,王民.基于力控監(jiān)控組態(tài)軟件的動車段安全聯(lián)鎖系統(tǒng)[J].電子技術(shù)應用,2011,37(6):18-19.
[5]屈保中,周偉.工業(yè)監(jiān)控組態(tài)軟件技術(shù)應用[M].鄭州:鄭州大學出版社,2011.
[6]梁秀霞,張培楠.基于InTouch組態(tài)軟件與串口的通訊實現(xiàn)[J].儀表技術(shù)與傳感器,2012(3):62-63.
[7]郭益鋒.基于IFIX的信息管理系統(tǒng)的設(shè)計與研究[J].電子設(shè)計工程,2016,24(18):126-128.
[8]卜飛飛,鄔春學,李言章,等.基于OCS和CITECH抽油機效率測試系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機與應用化學,2013(6).
[9]王君元,李春明.WinCC flexible在人機界面組態(tài)中的應用[J].可編程控制器與工廠自動化,2014(10):97-99.
[10]隋麗梅.PLC和力控軟件在超濾控制系統(tǒng)中的應用[J].工業(yè)控制計算機,2013,26(1):30-31.
[11]梅秋燕.基于力控組態(tài)的立體倉庫監(jiān)控系統(tǒng)設(shè)計[J].電氣自動化,2014,36(1):10-11.
[12]劉舂燕,陳啟佳.PLC及力控組態(tài)在油氣集輸系統(tǒng)上的應用[J].可編程控制器與工廠自動化,2014(6):95-99.
[13]于玲,杜向軍.基于MCGS監(jiān)控的智能電梯群控系統(tǒng)設(shè)計[J].天津職業(yè)院校聯(lián)合學報,2015(2):63-65.
[14]馬繼花.基于MCGS的網(wǎng)絡(luò)控制系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機光盤軟件與應用,2013(6):203-203.
[15]呂文霞.基于面向?qū)ο蠹夹g(shù)的監(jiān)控組態(tài)軟件系統(tǒng)的設(shè)計與實現(xiàn)[D].西安:西安電子科技大學,2011.
[16]孫平安.泵站綜合自動化及其優(yōu)化控制調(diào)節(jié)的研究[D].揚州:揚州大學,2012.
[17]劉文龍,郭福田.基于自制PID控件的水箱液位計算機監(jiān)控系統(tǒng)[J].化工自動化及儀表,2013,40(10):1241-1244.