王紅梅, 張厚升, 邢雪寧
(山東理工大學 電氣與電子工程學院,山東 淄博 255049)
基于MATLAB/GUI的過程控制仿真實驗系統(tǒng)設計
王紅梅, 張厚升, 邢雪寧
(山東理工大學 電氣與電子工程學院,山東 淄博 255049)
為使學生更好地理解控制系統(tǒng)的結構及其特點,設計了基于MATLAB/GUI的過程控制仿真實驗系統(tǒng).仿真系統(tǒng)借助GUIDE良好的界面管理,分層次設計了液位單回路控制、加熱爐溫度串級控制、鍋爐汽包水位控制等八個子實驗.每個實驗界面可進行參數(shù)設置、仿真結果顯示、重要信息提示.后臺程序采用MALTAB 的m 文件或 Simulink實現(xiàn).該系統(tǒng)知識全面、內(nèi)容設計合理、界面友好、使用簡單、可操作性強.
過程控制;MATLAB/GUI;仿真實驗
過程控制課程是自動化學科的主干專業(yè)課程,該課程理論性和實用性都很強.目前課程的體系結構主要是授課加實驗的模式.通過對學生實驗情況的觀察,發(fā)現(xiàn)學生不能把課程知識和實驗很好的結合,對系統(tǒng)的結構特點理解欠佳,致使做實驗時一知半解,影響實驗效果.鑒于此,本文開發(fā)的基于MATLAB/GUI的仿真實驗系統(tǒng)重點彌補以上缺憾.一方面,借助MALTAB友好的界面顯示特點使學生對理論知識有更直觀的理解,另一方面,通過對仿真系統(tǒng)的構造加強對系統(tǒng)結構的認知,為今后在過程控制實驗裝置上進行實驗打下基礎.與傳統(tǒng)實驗裝置相比,該仿真實驗系統(tǒng)不需要傳感器、變送器、執(zhí)行器等實驗裝置,僅需有安裝MATLAB軟件的計算機就可進行實驗,不受場地和時間的限制,實驗投入少,實驗成本低,而且可開放性強.
過程控制課程主要包含三個核心內(nèi)容:1)各種形式的系統(tǒng)結構,比如,單回路、串級系統(tǒng)、前饋-反饋系統(tǒng)等,應該重點掌握各結構的組成、特點及應用場合.2)理論分析,通過理論分析進一步驗證系統(tǒng)的結構特點.3)參數(shù)整定,可按照一定的整定步驟,實現(xiàn)參數(shù)的最優(yōu)化[1-2].為了使學生對以上內(nèi)容有更好的掌握,仿真系統(tǒng)設計的總體思路是借助MATLAB/GUI仿真工具,直觀、簡潔的展示抽象的理論知識,借助MATLAB/Simulink,系統(tǒng)、全面的反映過程控制系統(tǒng)的結構特點和參數(shù)整定.本仿真系統(tǒng)考慮教學內(nèi)容和學生的認知規(guī)律,由簡入難,逐層的設計各實驗.實驗系統(tǒng)總體分為:簡單系統(tǒng)、高性能系統(tǒng)、特殊系統(tǒng)、復雜系統(tǒng)四部分,每個系統(tǒng)下面又有相應的子實驗.同時,子實驗的實例選取特別注意和實際應用相結合.系統(tǒng)的整體結構如圖1所示.
MATLAB的GUI為用戶提供了設計良好的人機交互界面的工具,通過它可以更好的管理程序,使操作變的更為簡單、便捷.GUIDE界面中提供了按鈕、列表框、復選框、文本框、滑塊、坐標系、菜單等控件.界面生成過程主要包括界面設計和程序?qū)崿F(xiàn),具體步驟如下:
1) 明確系統(tǒng)功能后,通過合理布置控件,制作友好的靜態(tài)界面.
2) 按一致性原則對各控件的屬性進行設置.
3) 根據(jù)功能要求,編寫各控件的回調(diào)函數(shù).
4) 系統(tǒng)測試運行.
圖1 仿真系統(tǒng)結構
2.1 統(tǒng)主界面
設計的仿真系統(tǒng)的主界面主要實現(xiàn)兩個功能:1)展示實驗的整體內(nèi)容;2)通過相應的控件進入到子實驗.為此,設計了如圖2所示的主界面.四個Panel控件用于區(qū)分四個不同種類的子實驗,每個Panel里放有兩個控件用于進入不同的子實驗.每個Pushbutton的回調(diào)函數(shù)均完成執(zhí)行關閉主界面并打開相應子實驗界面功能.整個主界面力求做到設計簡潔,層次清晰,使用方便.
圖2 實驗系統(tǒng)主界面
2.2 子實驗界面
當在主界面選擇了子實驗后,系統(tǒng)進入相應的實驗.本系統(tǒng)共包括8個子實驗,界面設計主要分為三個區(qū)域:1)參數(shù)設置區(qū),該部分主要實現(xiàn)操作人員對系統(tǒng)參數(shù)的設置;2)顯示區(qū),將仿真結果以圖形化的方式進行顯示;3)子實驗的仿真結構圖及其它信息顯示區(qū),該區(qū)便于操作人員了解子實驗系統(tǒng)的構成.本文以PID參數(shù)作用分析子實驗及前饋—反饋子實驗分別進行說明.
PID參數(shù)作用分析子實驗是通過分析系統(tǒng)的階躍響應隨某一參數(shù)的變化趨勢,來更好的理解各參數(shù)的作用[3].這樣界面操作中就需要能輸入不同數(shù)值的比例系數(shù)、積分系數(shù)、微分系數(shù),并將階躍仿真結果進行顯示.設計的PID參數(shù)作用分析子實驗界面如圖3所示.
圖3 PID參數(shù)作用分析子實驗GUI界面
PID參數(shù)作用分析子實驗GUI界面右邊區(qū)域可以根據(jù)需要利用Edit控件設定比例、積分、微分系數(shù),每個參數(shù)的意義及可變化的維數(shù)利用Text控件說明.參數(shù)設置完畢后點擊相應的“開始仿真”按鈕,則后臺仿真程序運行,完畢后在左邊的顯示區(qū)域顯示系統(tǒng)隨參數(shù)變化的階躍響應曲線.圖3顯示的是比例系數(shù)Kp從0.5變化到1.5時的系統(tǒng)階躍響應曲線.界面中還提供了仿真中的重要信息——被控對象數(shù)學模型.當實驗結束后可通過“返回”按鈕回到圖2系統(tǒng)主界面,繼續(xù)進行其它子實驗.本界面很關鍵的一點就是編寫“開始仿真”按鈕的回調(diào)函數(shù).首先需要獲取界面中用戶在Edit控件輸入的比例、積分或微分參數(shù);然后將參數(shù)由字符型轉(zhuǎn)化成數(shù)值型用于階躍響應分析.
前饋—反饋控制仿真實驗是以工業(yè)中常用的換熱器出口溫度控制為例[4],其中被加熱液體的流量變化比較劇烈,采用前饋對該干擾進行補償.該實驗通過比較前饋-反饋控制與反饋控制的階躍響應曲線的性能區(qū)別來體現(xiàn)前饋控制的作用.干擾信號取脈沖干擾和隨機干擾兩種形式,可通過界面中的按鈕來進行選擇.設計的前饋—反饋控制子實驗界面如圖4所示.在進行實驗前,需先將前饋—反饋MATLAB/Simulink仿真程序中的手動開關打到相應的位置.Simulink仿真程序中的Manual Swith用于選擇是否加入干擾,Manual Swith1用于選擇干擾類型,Manual Swith2用于選擇是否進行前饋補償.
圖4 前饋-反饋控制子實驗GUI界面
界面中所有控件的回調(diào)函數(shù)都可以看到,學生一方面可以學習如何編寫代碼,另一方面可以根據(jù)需要對界面進行改進,更進一步還可以設計新的功能界面,這也是MATLAB的優(yōu)勢所在.
子實驗的運行都是通過后臺的MATLAB的m文件或Simulink程序來實現(xiàn).MATLAB/Simulink在編程方面尤其簡便,通過選取相應的模塊并連接,則能構建仿真系統(tǒng).而且Simulink除了豐富的工具箱,還提供了用戶自定義模塊,方便用戶使用.本文以基于MATLAB/Simulink的串級控制仿真程序為例進行介紹.程序通過串級控制與單回路系統(tǒng)的比較,理解串級結構形式的改變帶來的性能變化,再通過對一次干擾和二次干擾的抗干擾能力的仿真分析,學習串級系統(tǒng)的抗干擾特點.仿真實例取自實際應用中的反應釜加熱爐溫度控制系統(tǒng)[5],其中,加熱爐溫度為主變量,夾套溫度為副變量的串級控制系統(tǒng).構建的串級控制仿真系統(tǒng)結構如圖5所示.程序中通過Manual Swith選擇是單回路控制還是串級控制,Manual Swith1選擇是否加入一次干擾,Manual Swith2選擇是否加入二次干擾.
圖5 串級控制系統(tǒng)仿真結構圖
將基于MATLAB/GUI的過程控制仿真實驗系統(tǒng)應用于《過程控制》的教學,使學生直觀的領會和理解該課程的各系統(tǒng)結構和理論知識,對調(diào)動學生的學習積極性以及提高學生的實驗興趣和實驗能力都有相當?shù)淖饔?一方面,學生通過MATLAB這一仿真平臺,可以更快捷有效的編寫仿真實驗,其超強的計算能力和豐富的圖形界面顯示給知識的學習帶來意想不到的效果;另一方面,教師可在授課時使用該軟件進行理論知識的直觀演示,增強知識的傳授.同時,結合過程控制所學知識以及MATLAB軟件,學生可自行根據(jù)需求將實驗裝置中沒有的一些復雜控制系統(tǒng)通過仿真實驗的形式加以實現(xiàn),從而極大的培養(yǎng)學生學習能力.
[1] 黃德先, 王景春, 金以慧. 過程控制系統(tǒng)[M]. 北京: 清華大學出版社, 2011.
[2]潘永湘, 楊延西, 趙躍. 過程控制與自動化儀表[M]. 第二版. 北京:機械工業(yè)出版社, 2007
[3]何佳佳, 候再恩. PID參數(shù)優(yōu)化算法[J]. 化工自動化及儀表. 2010, 37(11): 1-4.
[4]孫秀麗, 王培培. 前饋-反饋控制系統(tǒng)的具體分析及其MATLAB/Simulink仿真[J]. 中國集成電路, 2013(9), 54-58.
[5]羅及紅. 基于PID算法的爐窯溫度串級控制系統(tǒng)設計[J]. 計算機測量與控制,2012, 20(12): 3243-3245.
(編輯:劉寶江)
Design of simulation experiment system of process control based on MATLAB/GUI
WANG Hong-mei, ZHANG Hou-sheng, XING Xue-ning
(School of Electrical and Electronic Engineering, Shandong University of Technology, Zibo 255049, China)
In order to make students better understand the structure and characteristics of the process control system, the process control simulation system based on MATLAB/GUI was designed. With the help of a GUIDE good interface management, the simulation system hierarchical designs eight children experiment. For example, liquid level single loop control, furnace temperature cascade control and boiler drum water level control. Each experiment has the same characters: parameters can be set, simulation results can be shown, important messages are pointed out. Daemons use MALTAB m file or Simulink. This system has the characteristics of comprehensive knowledge, reasonable content design, friendly interface, simple use, and strong maneuverability.
process control; MATLAB/GUI; simulation experiment
2015-01-20
王紅梅,女,sdlgwhm@163.com
1672-6197(2015)06-0058-03
TP373
A