代 偉, 黃 罡, 郝秀娟, 楊春雨, 馬小平
(中國礦業大學 信息與控制工程學院,江蘇 徐州 221116)
過程工業在國民經濟中占有極其重要的地位,過程控制是實現過程工業提質增效的重要保證,已成為現代社會不可缺少的重要組成部分[1]。過程控制系統是一門學科交叉、工程性強的自動化、電氣工程與自動化等專業的核心課程,為培養學生的工程概念和能力創造實驗和設計條件。通過課程學習使學生可以從系統和工程的角度理解工業過程控制系統,掌握系統分析、設計、參數整定和實現方法[2]。以培養學生的實踐能力為目標,過程控制系統一貫采用“厚基礎,重實踐”的教學原則。
目前在傳統教學中,教師習慣于課后布置大量作業考核學生對于知識點的掌握程度,然而這種方式不利于培養學生實踐創新思維方式。目前先進的翻轉課堂教學模式則更強調學生的自主實踐創新能力,這種模式要求學生盡可能地在實驗中掌握教學內容,不斷對實驗結果進行交流、討論、總結。在過程控制系統這門課程中,相較于傳統教學,采用翻轉課堂模式,通過大量的實驗可以更好地促進學生對知識點的掌握。
工業過程存在眾多具有單容和多容特性的過程,其中水箱液位系統是極為典型且重要的一類[3],相同或不同的水箱,通過不同的組合方式可以達到模擬單容、雙容、多容過程[4-5]的目的。此外,在工業生產方面,液位控制系統是多數工業過程生產環節中不可或缺的組件,它的性能好壞不僅在一定程度上決定了生產過程的效率與產品質量,同時也關系著生產環節的安全問題[6-7]。因此,無論是理論還是實驗教學多以水箱液位系統為實例。
一直以來關于過程控制系統的實驗教學均是利用實物水箱來進行的[8],但其缺點顯而易見:一方面實物水箱體積龐大,占據大量實驗空間;另一方面,難以調整水箱結構,以搭建具有不同特性的多容過程。隨著信息技術和計算機技術的迅速發展,虛擬仿真技術不斷被應用到實驗教學活動中,開辟了一種嶄新的實踐教學方式[9]。國家級虛擬仿真實驗教學中心近年來越來越多地被批準建立。將物理被控對象通過虛擬仿真技術進行虛擬化,以共享方式能夠大大提升實驗教學與實踐資源,并為學生提供了開放式、創新性的實踐教學環境[10]。近年來,國內外研究學者分別通過不同的平臺開發虛擬過程控制仿真實驗系統,如組態王[11]、Simulink[12]、VB[13]、LabWindows CVI[14]、LabVIEW[15]和力控[16]以及它們的結合等,都取得了一定的成果。但已有實驗系統一方面并未考慮多種水箱不同組合形成的多種過程特性,另一方面交互界面的設計與教學常用軟件脫節,導致學生難以再利用、再開發,從而難以開展創新性實驗,因此,無法基于此開展翻轉課堂教學。
鑒于上述原因,采用過程控制系統前序課程中常用的WinCC和Matlab軟件,充分結合兩者的優點,基于過程控制對象連接與嵌入(Object Linking and Embedding for Process Control,OPC)技術,開發了一套虛擬過程控制實驗教學系統,利用虛擬仿真代替實物水箱。基本思想是:基于Matlab軟件開發單容、多容水箱模型及其控制算法,基于WinCC軟件開發水箱的可視化動態過程以及參數傳遞界面,基于OPC技術實現兩者的無縫連接。該系統可滿足學生在課前和課后開展實驗的需求,在此基礎上開展了過程控制系統翻轉課堂教學設計研究。
所開發的實驗教學系統主要圍繞過程控制系統的2個教學重點,即①單容、多容水箱的過程建模;②基于所建立過程模型的控制器設計。
為實現上述教學內容,該實驗系統主要功能是對水箱液位動態過程進行模擬仿真,并輔以PID控制等功能,具體功能如圖1所示。

圖1 虛擬過程控制實驗教學系統功能圖
(1) 水箱液位動態虛擬仿真。實現單容、雙容并聯和雙容串聯3種水箱液位的動態虛擬仿真。
(2) 水箱液位動態可視化。可視化單容、雙容并聯和雙容串聯3種水箱的動態過程,方便直觀地了解實驗對象。
(3) 水箱模型參數設置。對水箱系統的直徑、初始液位、液阻系數、管路延時時間等參數進行設置。
(4) 控制器參數設計。對比例、積分、微分3個控制器參數進行設置。
(5) 辨識/控制模式選擇。用于“系統辨識”與“自動控制”模式選擇。“系統辨識”模式下,系統直接輸出OP,進行階躍測試,記錄測量過程值PV;“自動控制”模式下,系統根據設定值SV與測量過程值PV,由控制器計算輸出OP,實現自動控制。
(6) 仿真進程控制。實現虛擬仿真實驗的啟動、停止、暫停等控制功能。
(7) 數據顯示與存儲。保存實驗數據,并在界面上顯示水箱液位變化的實時曲線和歷史曲線。
(8) 通信連接功能。利用ActiveX技術,實現WinCC對Matlab的調用,并通過OPC建立Matlab和WinCC的數據連接。
系統總體結構如圖2所示。前臺界面層采用WinCC組態軟件開發,完成對單容、雙容并聯、雙容串聯水箱的工藝流程、參數設置、實時曲線、歷史曲線等界面顯示,以及仿真進程控制等功能。后臺模型層主要由Matlab軟件實現,實現對水箱模型仿真、控制算法計算等功能。數據通信層首先采用VB語言實現前臺界面層對后臺模型層Matlab 程序的調用,再利用OPC技術完成前臺界面層和后臺模型層間的數據交互。

圖2 虛擬過程控制實驗系統結構圖
(1) 水箱模型。選取單容水箱、雙容串聯水箱和雙容并聯水箱系統,建立如下數學模型:
單容水箱
(1)
雙容串聯水箱
(2)
(3)
雙容并聯水箱
(4)
(5)
采用Matlab編寫上述3個模型的微分方程函數,并采用四階-五階Runge-Kutta算法ode45進行仿真。
(2) 控制算法實現。考慮真實水箱系統閥門存在上下限約束,因此設計抗積分飽和PID控制器對水箱液位進行控制。其思想是:當控制量進入飽和區后,只執行削弱積分項的累加,而不進行增大積分項的累加。具體算法如下:
(6)
式中:
E(k)=
(7)
前臺界面層與后臺模型層之間的實時數據交換是整個實驗平臺的關鍵,選用了ActiveX和OLE for Process Control OPC (OPC)的方法開發,實現WinCC對Matlab引擎的調用與數據通信。
(1) 基于ActiveX技術的Matlab引擎調用與仿真進程控制。WinCC軟件中內置VB腳本支持ActiveX Automation 控制端協議,通過建立ActiveX連接,實現對Matlab引擎的調用,并控制仿真進程,主要方式如下:
Dim matlab % 定義全局變量
Set matlab=CreateObject("Matlab. Application")
%打開Matlab引擎
matlab.Execute (“fun”) %運行以fun命名的函數
仿真進程控制是通過編寫Start、Stop、Pause、Continue 4個函數,依靠控制定時器來實現的。定時器函數中指定了仿真模型與控制算法,并通過控制定時器中Period參數來設置仿真間隔時間。
(2) 基于OPC技術的數據通信。本系統將WinCC作為OPC服務器,Matlab作為OPC客戶端,數據通信首先在WinCC中設置內部變量,然后在Matlab中編程實現,主要代碼如下:
hostinfo = OPCServerinfo(′localhost′);
%查詢本機上所有可用OPC服務器
da=opcda(′localhost′, ′OPCServer.WinCC.1′);
%通過OPC創建訪問目標WinCC
connect(da); %連接WinCC OPC服務器
grp=addgroup(da, ′mygroup′); %建立組
Item1=additem(grp,′var′) %增加項
其中var即是WinCC內部變量中需要通信的變量名稱。
所研系統的仿真流程如圖3所示。
前臺程序主要實現人機交互界面,由初始界面、單容水箱實驗界面、雙容串聯實驗界面和雙容并聯實驗界面組成。系統初始界面如圖4所示,主要包括實驗界面切換按鈕、退出按鈕和實驗說明。
根據教學過程中的需求,單擊單容水箱、雙容串聯、雙容并聯按鈕進入對應的實驗界面。實驗界面主要分為水箱動態可視化顯示、控制算法參數設置、過程實時曲線、系統功能按鈕4個區域,如圖5(a)、6(a)所示。其中,水箱動態可視化顯示給出了水箱系統在被控過程中的液位狀態,其在不同實驗界面里根據不同水箱組合而不同;控制算法參數設置設計了SV、PV、OP以及PID參數的圖形交互接口,以及SV、PV、OP的柱狀圖顯示;過程實時曲線主要用于實時顯示水箱液位;系統功能按鈕包括了實時/歷史曲線切換按鈕、返回主菜單、運行、暫停等按鈕;歷史曲線如圖5(b)、6(b)所示。

圖3 仿真流程圖

圖4 系統初始界面
圖5、6分別為單容水箱階躍實驗和雙容串聯水箱PID控制實驗。實驗開始運行時,點擊“運行水箱系統”,后臺仿真模型啟動,并與前臺界面交互數據,左側的工藝流程圖將以動態的方式顯示給操作人員,通過流程圖里水箱液位以及柱狀圖直觀反映出控制效果。系統運行同時,右下方的圖表里會形成液位的實時數值曲線圖,若需要和歷史曲線進行比較分析,點擊“歷史曲線”按鈕即可讀取前一時刻的液位數值曲線圖。

(a) 監控界面

(b) 歷史曲線圖

(a) 監控界面

(b) 歷史曲線圖
過程控制系統的授課對象為三年級工業自動化專業學生,已具備一定的自動化專業知識和編程基礎,適合開展基于虛擬仿真實驗系統的翻轉課堂教學,該翻轉課堂組織流程如圖7所示,主要分為課前導學、課中教學和課后提升3個階段。

圖7 課程組織流程圖
(1) 課前導學。本文所設計的翻轉課堂模式課前以學生自主學習、自主仿真實驗、交流討論為主。首先教師借助網絡多媒體技術,從教學內容以及學生實際水平出發,將課程知識點進行總結歸納,制作成PPT等資料形式發放給學生。根據資料上所包含的知識點,學生在課前進行自主學習,然后在虛擬仿真平臺上獨立自主地進行仿真實驗,進而根據實驗結果進行討論。同時教師借助目前網絡交流軟件建立一個討論平臺,學生可以在此進行課前內容討論,討論的結果通過小組之間互評、個人評價等評價方式進行總結,以促進學生自我學習動力的生成與保持。
(2) 課中教學。首先學生對課前學習中的難點、疑點以及仿真時出現的問題進行組內討論,并以小組為單位進行組間學習交流,以此深化課前學習的內容,鞏固學生對于知識點的理解。教師根據討論結果,總結出學生課前學習無法掌握的難點,并根據設計的實驗系統現場進行仿真實驗。通過仿真實驗的驗證,對學生存在的疑點進行一一解答。答疑期間,教師針對知識點進行進一步的拓展,并讓每個小組針對拓展的知識點進行討論并仿真,不僅促進學生的合作學習的能力,而且讓各個小組進一步把握難點,實現知識的升華。
(3) 課后提升。采用翻轉課堂的模式,能夠使學生針對知識點進行自主創新實驗,例如在目前采用抗飽和PID情況下,將其改為梯形積分、變速積分PID等其他控制方式,或者根據實驗平臺嘗試控制其他種類的水箱,例如三容水箱、分離式雙容水箱,亦或者將上述水箱中的閥門改成由泵來控制流量。學生針對不同的角度對原實驗平臺加以創新,將得到的結果在課后進一步討論,教師則針對討論出的不同結果進行點評,進一步完善學生對于這門課程的理解程度。
為更好地開展過程控制系統翻轉課堂教學,提高工程專業學生自主實踐創新能力,開展了基于虛擬過程控制實驗教學系統的翻轉課堂教學實踐。首先以教材和實驗中廣泛使用的水箱為背景,將WinCC和Matlab相結合,基于OPC技術開發了虛擬過程控制實驗教學系統。然后圍繞該虛擬實驗教學系統,構建了過程控制系統的翻轉課堂教學模式。采用該教學模式,學生對工業過程控制工程有了更深的認知,拓展了學生的實驗創新思維,同時增加了學生的工業實踐興趣,并將教師從繁瑣重復的教學任務中解放出來,使其能有更多的時間與學生進行深入的交流,提高了教學的效率和效果。