許 鋒,羅雄麟
(中國石油大學(北京)自動化系,北京 102249)
為自動化專業學生開設的“先進控制理論與技術”課程,其教學方式主要有兩種:一種是將先進控制的教學內容放在“過程控制工程”課程中講授[1,2];一種是專門開設“先進控制理論與技術”或“自動化前沿講座”選修課進行講授[3,4]。兩種教學方式共同的問題是:課時少,而先進控制與常規控制系統相比,類型多,理論性強,難以理解。各種控制算法具有與常規控制不同的特點,以往教學中單純通過靜態演示和口述來講解過于抽象,教學效果不好。因此,為了在教學中使學生能夠深入全面的了解先進控制,有必要對“先進控制理論與技術”課程進行教學改革,探討先進控制的知識體系,設置合理的教學內容;同時改革教學手段,將Matlab軟件引入到課堂教學中。
“過程控制工程”主要講授常規PID控制系統的設計方法及工程實現。如果引入現代控制理論的思想,結合工業過程的特點,提出了一些對模型精度要求不高、在線計算方便、控制性能高、魯棒性強的實用控制策略,可以有效解決過程控制出現的問題,其控制性能與常規PID控制相比有明顯的改善,這些控制策略統稱為先進控制。
筆者認為,除狀態反饋和最優控制屬于現代控制理論的范疇外,先進控制大體上可以劃分為三個層次:①先進控制的早期基于經典控制理論、屬于常規控制的改進算法;②先進控制的流行技術引入了現代控制理論的思想,基于模型的控制算法;③先進控制的潛在技術包括自適應控制、魯棒控制和智能控制等。
我們以引入現代控制理論的思想解決常規控制的問題為中心思想,以動態建模—預測控制—軟測量為主線,32學時的課程的教學內容可作如下安排:①先進控制概述,2學時;②現代控制理論的簡單介紹,2學時;③工業過程動態建模技術,6學時;④時滯補償控制,2學時;⑤模型預測控制,8學時;⑥解耦控制,2學時;⑦軟測量技術,6學時;⑧智能控制,4學時。
Matlab軟件應用于計算機輔助教學主要有以下兩種方式:一種是課堂上單獨使用Matlab語言編寫的計算機輔助教學軟件[5,6];一種是采用 Matlab的Notebook功能完成與PPT軟件的交互[7]。前者在授課時需要Matlab和PPT間反復切換,后者需要生成一個基于M-book的Word文檔作為Matlab和PPT交互的橋梁,均無法實現Matlab程序直接嵌入PPT多媒體課件的功能。
筆者在解決Matlab程序嵌入PPT軟件的問題時采用了COM自動化技術。Matlab軟件能夠支持Microsoft公司的COM自動化服務器技術,可以被任何支持COM協議的Windows程序啟動和控制,如Visual C++和Visual Basic等。使用COM自動化技術,可以從外部程序運行Matlab程序并獲取Matlab中的數組數據[8]。而Office軟件均支持VBA可視化編程開發,PPT軟件的幻燈片頁面可加入VBA控件,開發PPT的VBA宏程序通過COM自動化技術打開Matlab并運行Matlab程序,實現Matlab程序與PPT幻燈片的鏈接。
筆者還開發了先進控制系統典型控制算法的Matlab仿真程序,以預測控制算法為主,包括模型算法控制和動態矩陣控制等算法。仿真程序中包含各種類型的被控對象,包括一階慣性加純滯后系統、二階系統、高階系統等。筆者將各種類型的先進控制算法的仿真程序分別封裝為相應的Matlab函數,在Matlab函數的參數中可以直接設定被控對象模型以及各種控制參數(如預測時域和控制時域等)。在PPT軟件的幻燈片頁面上加入VBA控件,在講課時可通過標簽、文本框和選項按鈕等VBA控件在幻燈片頁面上設定仿真模型和控制參數,通過命令按鈕執行Matlab程序,演示先進控制的曲線。
在講解預測控制時為了向學生說明預測時域、控制時域、誤差權系數、控制權系數對預測控制的影響,我們以模型算法控制為例,打開如圖1所示的幻燈片進行放映。在放映時設定預測時域、控制時域、誤差權系數、控制權系數、柔化系數和給定值等控制參數;選擇被控對象,確定仿真過程中是否加入階躍干擾;單擊“仿真”命令按鈕后即可顯示模型算法控制的控制效果曲線。通過改變控制參數,學生可以看到預測時域、控制時域、誤差權系數和控制權系數等對模型算法控制的影響。
另外,我們還進行先進控制與常規控制的對比實驗。以動態矩陣控制與常規PID控制對比為例,可以打開如圖2所示的幻燈片。在放映時可以分別設定預測控制和常規PID控制的控制參數,選擇被控對象,單擊“仿真”命令按鈕后即可顯示動態矩陣控制和常規PID控制的控制效果曲線。

圖1 模型算法控制效果

圖2 動態矩陣控制與常規PID控制效果對比
“先進控制理論與技術”課程的教學實踐表明,通過合理設計教學內容有效緩解了內容多與學時少的矛盾,突出了教學重點,使學生在有限的課堂教學時間里,掌握完備的知識體系。
通過教學方式的改革,在PPT多媒體課件中嵌入先進控制的Matlab仿真程序,可以在教學中能方便切換并進行仿真分析,展示先進控制系統的特點,增強學生的感性認識,取得良好的教學效果。
[1]蔣慰孫,俞金壽.過程控制工程(第2版)[M].北京:中國石化出版社,2004
[2]金以慧.過程控制[M].北京:清華大學出版社,1993
[3]俞金壽.工業過程先進控制[M].北京:中國石化出版社,2002
[4]王樹青等.先進控制技術及應用[M].北京:化學工業出版社,2001
[5]陳衛紅,張偉勇,胡長松.基于Matlab語言的自動控制原理多媒體教學研究[J].南京:電氣電子教學學報,2002,24(6):74-86
[6]張利.“自動控制理論”課程的 Matlab輔助教學[J].南京:電氣電子教學學報,2003,25(1):97-99
[7]羅成漢,張富忠.Matlab在自動控制原理課程教學中的應用[J].南京:電氣電子教學學報,2003,25(3):53-56
[8]蘇金明,黃國明,劉波.Matlab與外部程序接口[M].北京:電子工業出版社,2004:156-161