代 偉, 黃 罡, 郝秀娟, 楊春雨, 馬小平
(中國礦業(yè)大學(xué) 信息與控制工程學(xué)院,江蘇 徐州 221116)
過程工業(yè)在國民經(jīng)濟(jì)中占有極其重要的地位,過程控制是實現(xiàn)過程工業(yè)提質(zhì)增效的重要保證,已成為現(xiàn)代社會不可缺少的重要組成部分[1]。過程控制系統(tǒng)是一門學(xué)科交叉、工程性強(qiáng)的自動化、電氣工程與自動化等專業(yè)的核心課程,為培養(yǎng)學(xué)生的工程概念和能力創(chuàng)造實驗和設(shè)計條件。通過課程學(xué)習(xí)使學(xué)生可以從系統(tǒng)和工程的角度理解工業(yè)過程控制系統(tǒng),掌握系統(tǒng)分析、設(shè)計、參數(shù)整定和實現(xiàn)方法[2]。以培養(yǎng)學(xué)生的實踐能力為目標(biāo),過程控制系統(tǒng)一貫采用“厚基礎(chǔ),重實踐”的教學(xué)原則。
目前在傳統(tǒng)教學(xué)中,教師習(xí)慣于課后布置大量作業(yè)考核學(xué)生對于知識點的掌握程度,然而這種方式不利于培養(yǎng)學(xué)生實踐創(chuàng)新思維方式。目前先進(jìn)的翻轉(zhuǎn)課堂教學(xué)模式則更強(qiáng)調(diào)學(xué)生的自主實踐創(chuàng)新能力,這種模式要求學(xué)生盡可能地在實驗中掌握教學(xué)內(nèi)容,不斷對實驗結(jié)果進(jìn)行交流、討論、總結(jié)。在過程控制系統(tǒng)這門課程中,相較于傳統(tǒng)教學(xué),采用翻轉(zhuǎn)課堂模式,通過大量的實驗可以更好地促進(jìn)學(xué)生對知識點的掌握。
工業(yè)過程存在眾多具有單容和多容特性的過程,其中水箱液位系統(tǒng)是極為典型且重要的一類[3],相同或不同的水箱,通過不同的組合方式可以達(dá)到模擬單容、雙容、多容過程[4-5]的目的。此外,在工業(yè)生產(chǎn)方面,液位控制系統(tǒng)是多數(shù)工業(yè)過程生產(chǎn)環(huán)節(jié)中不可或缺的組件,它的性能好壞不僅在一定程度上決定了生產(chǎn)過程的效率與產(chǎn)品質(zhì)量,同時也關(guān)系著生產(chǎn)環(huán)節(jié)的安全問題[6-7]。因此,無論是理論還是實驗教學(xué)多以水箱液位系統(tǒng)為實例。
一直以來關(guān)于過程控制系統(tǒng)的實驗教學(xué)均是利用實物水箱來進(jìn)行的[8],但其缺點顯而易見:一方面實物水箱體積龐大,占據(jù)大量實驗空間;另一方面,難以調(diào)整水箱結(jié)構(gòu),以搭建具有不同特性的多容過程。隨著信息技術(shù)和計算機(jī)技術(shù)的迅速發(fā)展,虛擬仿真技術(shù)不斷被應(yīng)用到實驗教學(xué)活動中,開辟了一種嶄新的實踐教學(xué)方式[9]。國家級虛擬仿真實驗教學(xué)中心近年來越來越多地被批準(zhǔn)建立。將物理被控對象通過虛擬仿真技術(shù)進(jìn)行虛擬化,以共享方式能夠大大提升實驗教學(xué)與實踐資源,并為學(xué)生提供了開放式、創(chuàng)新性的實踐教學(xué)環(huán)境[10]。近年來,國內(nèi)外研究學(xué)者分別通過不同的平臺開發(fā)虛擬過程控制仿真實驗系統(tǒng),如組態(tài)王[11]、Simulink[12]、VB[13]、LabWindows CVI[14]、LabVIEW[15]和力控[16]以及它們的結(jié)合等,都取得了一定的成果。但已有實驗系統(tǒng)一方面并未考慮多種水箱不同組合形成的多種過程特性,另一方面交互界面的設(shè)計與教學(xué)常用軟件脫節(jié),導(dǎo)致學(xué)生難以再利用、再開發(fā),從而難以開展創(chuàng)新性實驗,因此,無法基于此開展翻轉(zhuǎn)課堂教學(xué)。
鑒于上述原因,采用過程控制系統(tǒng)前序課程中常用的WinCC和Matlab軟件,充分結(jié)合兩者的優(yōu)點,基于過程控制對象連接與嵌入(Object Linking and Embedding for Process Control,OPC)技術(shù),開發(fā)了一套虛擬過程控制實驗教學(xué)系統(tǒng),利用虛擬仿真代替實物水箱?;舅枷胧牵夯贛atlab軟件開發(fā)單容、多容水箱模型及其控制算法,基于WinCC軟件開發(fā)水箱的可視化動態(tài)過程以及參數(shù)傳遞界面,基于OPC技術(shù)實現(xiàn)兩者的無縫連接。該系統(tǒng)可滿足學(xué)生在課前和課后開展實驗的需求,在此基礎(chǔ)上開展了過程控制系統(tǒng)翻轉(zhuǎn)課堂教學(xué)設(shè)計研究。
所開發(fā)的實驗教學(xué)系統(tǒng)主要圍繞過程控制系統(tǒng)的2個教學(xué)重點,即①單容、多容水箱的過程建模;②基于所建立過程模型的控制器設(shè)計。
為實現(xiàn)上述教學(xué)內(nèi)容,該實驗系統(tǒng)主要功能是對水箱液位動態(tài)過程進(jìn)行模擬仿真,并輔以PID控制等功能,具體功能如圖1所示。
圖1 虛擬過程控制實驗教學(xué)系統(tǒng)功能圖
(1) 水箱液位動態(tài)虛擬仿真。實現(xiàn)單容、雙容并聯(lián)和雙容串聯(lián)3種水箱液位的動態(tài)虛擬仿真。
(2) 水箱液位動態(tài)可視化??梢暬瘑稳荨㈦p容并聯(lián)和雙容串聯(lián)3種水箱的動態(tài)過程,方便直觀地了解實驗對象。
(3) 水箱模型參數(shù)設(shè)置。對水箱系統(tǒng)的直徑、初始液位、液阻系數(shù)、管路延時時間等參數(shù)進(jìn)行設(shè)置。
(4) 控制器參數(shù)設(shè)計。對比例、積分、微分3個控制器參數(shù)進(jìn)行設(shè)置。
(5) 辨識/控制模式選擇。用于“系統(tǒng)辨識”與“自動控制”模式選擇?!跋到y(tǒng)辨識”模式下,系統(tǒng)直接輸出OP,進(jìn)行階躍測試,記錄測量過程值PV;“自動控制”模式下,系統(tǒng)根據(jù)設(shè)定值SV與測量過程值PV,由控制器計算輸出OP,實現(xiàn)自動控制。
(6) 仿真進(jìn)程控制。實現(xiàn)虛擬仿真實驗的啟動、停止、暫停等控制功能。
(7) 數(shù)據(jù)顯示與存儲。保存實驗數(shù)據(jù),并在界面上顯示水箱液位變化的實時曲線和歷史曲線。
(8) 通信連接功能。利用ActiveX技術(shù),實現(xiàn)WinCC對Matlab的調(diào)用,并通過OPC建立Matlab和WinCC的數(shù)據(jù)連接。
系統(tǒng)總體結(jié)構(gòu)如圖2所示。前臺界面層采用WinCC組態(tài)軟件開發(fā),完成對單容、雙容并聯(lián)、雙容串聯(lián)水箱的工藝流程、參數(shù)設(shè)置、實時曲線、歷史曲線等界面顯示,以及仿真進(jìn)程控制等功能。后臺模型層主要由Matlab軟件實現(xiàn),實現(xiàn)對水箱模型仿真、控制算法計算等功能。數(shù)據(jù)通信層首先采用VB語言實現(xiàn)前臺界面層對后臺模型層Matlab 程序的調(diào)用,再利用OPC技術(shù)完成前臺界面層和后臺模型層間的數(shù)據(jù)交互。
圖2 虛擬過程控制實驗系統(tǒng)結(jié)構(gòu)圖
(1) 水箱模型。選取單容水箱、雙容串聯(lián)水箱和雙容并聯(lián)水箱系統(tǒng),建立如下數(shù)學(xué)模型:
單容水箱
(1)
雙容串聯(lián)水箱
(2)
(3)
雙容并聯(lián)水箱
(4)
(5)
采用Matlab編寫上述3個模型的微分方程函數(shù),并采用四階-五階Runge-Kutta算法ode45進(jìn)行仿真。
(2) 控制算法實現(xiàn)??紤]真實水箱系統(tǒng)閥門存在上下限約束,因此設(shè)計抗積分飽和PID控制器對水箱液位進(jìn)行控制。其思想是:當(dāng)控制量進(jìn)入飽和區(qū)后,只執(zhí)行削弱積分項的累加,而不進(jìn)行增大積分項的累加。具體算法如下:
(6)
式中:
E(k)=
(7)
前臺界面層與后臺模型層之間的實時數(shù)據(jù)交換是整個實驗平臺的關(guān)鍵,選用了ActiveX和OLE for Process Control OPC (OPC)的方法開發(fā),實現(xiàn)WinCC對Matlab引擎的調(diào)用與數(shù)據(jù)通信。
(1) 基于ActiveX技術(shù)的Matlab引擎調(diào)用與仿真進(jìn)程控制。WinCC軟件中內(nèi)置VB腳本支持ActiveX Automation 控制端協(xié)議,通過建立ActiveX連接,實現(xiàn)對Matlab引擎的調(diào)用,并控制仿真進(jìn)程,主要方式如下:
Dim matlab % 定義全局變量
Set matlab=CreateObject("Matlab. Application")
%打開Matlab引擎
matlab.Execute (“fun”) %運行以fun命名的函數(shù)
仿真進(jìn)程控制是通過編寫Start、Stop、Pause、Continue 4個函數(shù),依靠控制定時器來實現(xiàn)的。定時器函數(shù)中指定了仿真模型與控制算法,并通過控制定時器中Period參數(shù)來設(shè)置仿真間隔時間。
(2) 基于OPC技術(shù)的數(shù)據(jù)通信。本系統(tǒng)將WinCC作為OPC服務(wù)器,Matlab作為OPC客戶端,數(shù)據(jù)通信首先在WinCC中設(shè)置內(nèi)部變量,然后在Matlab中編程實現(xiàn),主要代碼如下:
hostinfo = OPCServerinfo(′localhost′);
%查詢本機(jī)上所有可用OPC服務(wù)器
da=opcda(′localhost′, ′OPCServer.WinCC.1′);
%通過OPC創(chuàng)建訪問目標(biāo)WinCC
connect(da); %連接WinCC OPC服務(wù)器
grp=addgroup(da, ′mygroup′); %建立組
Item1=additem(grp,′var′) %增加項
其中var即是WinCC內(nèi)部變量中需要通信的變量名稱。
所研系統(tǒng)的仿真流程如圖3所示。
前臺程序主要實現(xiàn)人機(jī)交互界面,由初始界面、單容水箱實驗界面、雙容串聯(lián)實驗界面和雙容并聯(lián)實驗界面組成。系統(tǒng)初始界面如圖4所示,主要包括實驗界面切換按鈕、退出按鈕和實驗說明。
根據(jù)教學(xué)過程中的需求,單擊單容水箱、雙容串聯(lián)、雙容并聯(lián)按鈕進(jìn)入對應(yīng)的實驗界面。實驗界面主要分為水箱動態(tài)可視化顯示、控制算法參數(shù)設(shè)置、過程實時曲線、系統(tǒng)功能按鈕4個區(qū)域,如圖5(a)、6(a)所示。其中,水箱動態(tài)可視化顯示給出了水箱系統(tǒng)在被控過程中的液位狀態(tài),其在不同實驗界面里根據(jù)不同水箱組合而不同;控制算法參數(shù)設(shè)置設(shè)計了SV、PV、OP以及PID參數(shù)的圖形交互接口,以及SV、PV、OP的柱狀圖顯示;過程實時曲線主要用于實時顯示水箱液位;系統(tǒng)功能按鈕包括了實時/歷史曲線切換按鈕、返回主菜單、運行、暫停等按鈕;歷史曲線如圖5(b)、6(b)所示。
圖3 仿真流程圖
圖4 系統(tǒng)初始界面
圖5、6分別為單容水箱階躍實驗和雙容串聯(lián)水箱PID控制實驗。實驗開始運行時,點擊“運行水箱系統(tǒng)”,后臺仿真模型啟動,并與前臺界面交互數(shù)據(jù),左側(cè)的工藝流程圖將以動態(tài)的方式顯示給操作人員,通過流程圖里水箱液位以及柱狀圖直觀反映出控制效果。系統(tǒng)運行同時,右下方的圖表里會形成液位的實時數(shù)值曲線圖,若需要和歷史曲線進(jìn)行比較分析,點擊“歷史曲線”按鈕即可讀取前一時刻的液位數(shù)值曲線圖。
(a) 監(jiān)控界面
(b) 歷史曲線圖
(a) 監(jiān)控界面
(b) 歷史曲線圖
過程控制系統(tǒng)的授課對象為三年級工業(yè)自動化專業(yè)學(xué)生,已具備一定的自動化專業(yè)知識和編程基礎(chǔ),適合開展基于虛擬仿真實驗系統(tǒng)的翻轉(zhuǎn)課堂教學(xué),該翻轉(zhuǎn)課堂組織流程如圖7所示,主要分為課前導(dǎo)學(xué)、課中教學(xué)和課后提升3個階段。
圖7 課程組織流程圖
(1) 課前導(dǎo)學(xué)。本文所設(shè)計的翻轉(zhuǎn)課堂模式課前以學(xué)生自主學(xué)習(xí)、自主仿真實驗、交流討論為主。首先教師借助網(wǎng)絡(luò)多媒體技術(shù),從教學(xué)內(nèi)容以及學(xué)生實際水平出發(fā),將課程知識點進(jìn)行總結(jié)歸納,制作成PPT等資料形式發(fā)放給學(xué)生。根據(jù)資料上所包含的知識點,學(xué)生在課前進(jìn)行自主學(xué)習(xí),然后在虛擬仿真平臺上獨立自主地進(jìn)行仿真實驗,進(jìn)而根據(jù)實驗結(jié)果進(jìn)行討論。同時教師借助目前網(wǎng)絡(luò)交流軟件建立一個討論平臺,學(xué)生可以在此進(jìn)行課前內(nèi)容討論,討論的結(jié)果通過小組之間互評、個人評價等評價方式進(jìn)行總結(jié),以促進(jìn)學(xué)生自我學(xué)習(xí)動力的生成與保持。
(2) 課中教學(xué)。首先學(xué)生對課前學(xué)習(xí)中的難點、疑點以及仿真時出現(xiàn)的問題進(jìn)行組內(nèi)討論,并以小組為單位進(jìn)行組間學(xué)習(xí)交流,以此深化課前學(xué)習(xí)的內(nèi)容,鞏固學(xué)生對于知識點的理解。教師根據(jù)討論結(jié)果,總結(jié)出學(xué)生課前學(xué)習(xí)無法掌握的難點,并根據(jù)設(shè)計的實驗系統(tǒng)現(xiàn)場進(jìn)行仿真實驗。通過仿真實驗的驗證,對學(xué)生存在的疑點進(jìn)行一一解答。答疑期間,教師針對知識點進(jìn)行進(jìn)一步的拓展,并讓每個小組針對拓展的知識點進(jìn)行討論并仿真,不僅促進(jìn)學(xué)生的合作學(xué)習(xí)的能力,而且讓各個小組進(jìn)一步把握難點,實現(xiàn)知識的升華。
(3) 課后提升。采用翻轉(zhuǎn)課堂的模式,能夠使學(xué)生針對知識點進(jìn)行自主創(chuàng)新實驗,例如在目前采用抗飽和PID情況下,將其改為梯形積分、變速積分PID等其他控制方式,或者根據(jù)實驗平臺嘗試控制其他種類的水箱,例如三容水箱、分離式雙容水箱,亦或者將上述水箱中的閥門改成由泵來控制流量。學(xué)生針對不同的角度對原實驗平臺加以創(chuàng)新,將得到的結(jié)果在課后進(jìn)一步討論,教師則針對討論出的不同結(jié)果進(jìn)行點評,進(jìn)一步完善學(xué)生對于這門課程的理解程度。
為更好地開展過程控制系統(tǒng)翻轉(zhuǎn)課堂教學(xué),提高工程專業(yè)學(xué)生自主實踐創(chuàng)新能力,開展了基于虛擬過程控制實驗教學(xué)系統(tǒng)的翻轉(zhuǎn)課堂教學(xué)實踐。首先以教材和實驗中廣泛使用的水箱為背景,將WinCC和Matlab相結(jié)合,基于OPC技術(shù)開發(fā)了虛擬過程控制實驗教學(xué)系統(tǒng)。然后圍繞該虛擬實驗教學(xué)系統(tǒng),構(gòu)建了過程控制系統(tǒng)的翻轉(zhuǎn)課堂教學(xué)模式。采用該教學(xué)模式,學(xué)生對工業(yè)過程控制工程有了更深的認(rèn)知,拓展了學(xué)生的實驗創(chuàng)新思維,同時增加了學(xué)生的工業(yè)實踐興趣,并將教師從繁瑣重復(fù)的教學(xué)任務(wù)中解放出來,使其能有更多的時間與學(xué)生進(jìn)行深入的交流,提高了教學(xué)的效率和效果。