陳惠英 ,王培良 ,李祖欣
(湖州師范學院 信息與工程學院,浙江 湖州 313000)
計算機控制技術課程是湖州師范學院工科專業——電子信息工程專業自動化方向的專業模塊課。它融合了控制技術、計算機技術和通信技術等多種技術,是一門理論性和實踐性都很強的綜合性課程。它主要包含兩部分內容:一是計算機控制的理論基礎;二是實現技術,主要包括通道接口技術與系統實現技術。該課程是一門綜合性很強的專業課,與電路、電子技術、自動控制原理及微機與接口技術等諸多專業課程都有關聯,在專業課程體系中占舉足輕重的地位[1]。
然而,計算機控制技術課程所涉及的理論知識,其特點是概念抽象,并且需要進行大量復雜的計算和公式推導,從而使學生在學習該課程時易產生畏懼情緒。因此,單純的板書講解很難取得好的教學效果[2]。針對這種情況,考慮到MATLAB/Simulink仿真軟件具有強大的數值、符號運算及圖形處理等功能,適用于工程應用領域的分析、設計和復雜計算,且不要求使用者具備很強的數學功底和編程能力,現已成為大學教學中常用的計算機輔助教學軟件[3]。為此,近年來,筆者在教學過程中,嘗試將Matlab/Simulink仿真軟件引入到該課程的一些重點難點問題的講授和分析中。利用Matlab強大的計算功能可以幫助學生解決復雜的計算難點;利用簡單的畫圖功能或者Simulink仿真模型可以使學生看到控制效果,以及不同參數對控制效果的影響。這對學生加深概念理解,提高學生學習積極性起到了很好的促進作用,取
得了良好的教學效果。
例如[1]:設離散數字控制系統如圖1所述,采樣周期,,試設計單位階躍輸入的最少拍數字控制器。

圖1 離散數字控制系統
求解:
(1)先求解廣義對象脈沖傳遞函數

式(1)是關于Z變換計算,當G0(s)較為復雜的情況下,G(z)計算量大且復雜,很多學生在這一步的求解時就有一定的困難,得不到準確的結果。現利用Matlab語言進行編程:

經整理后,易得:

(2)最少拍有紋波數字控制器設計
數字控制器D(z)為:

此時,系統輸出C(z)=Φ(z)R(z)=z-1/(1-z-1)=0+z-1+z-2+…,控制器輸出

上述的C(z)、U(z)的展開表達式,計算相對復雜,也可以采用 Matlab編程實現,以U(z)為例:syms z k;

運行后求得結果:u=0.2720,-0.2954,0.2121,-0.1523,0.1093,-0.0785,0.0564,-0.0405,0.0291,-0.0209即為展開式前面10項的系數值。
(3)最少拍無紋波數字控制器設計
G(z)中含單位圓內的零點z=-0.718,應作為閉環脈沖傳遞函數Φ(z)的零點,另外,z-1應包含在中Φ(z),此時可選擇Φ(z)為:

對應于單位階躍輸入時,k=1,因此,Φe(z)的選擇為:

其中F(z)=1+b1z-1+…bnz-n,上式說明Φe(z)中包含了一個z=1的零點,故z=1的極點不需要再作處理。由于Φ(z)=-1-Φe(z),所以,此時n=1,

解得待定系數為

所以

數字控制器D(z)為:

(4)系統的階躍響應特性
以上對系統1分別設計了有波紋和無波紋的最少拍數字控制器,但控制器的理論值計算出來后,學生只能看到表達式,不易于理解和記憶,為此,利用Simulink對該系統進行建模仿真,仿真模型如圖2所示。其中,對于有波紋的情況,模型中的Disctete controller模塊用式(3)表示,而對于無波紋的情況,用式(4)表示。針對上述兩種情況,運行后控制器的輸出,系統的階躍響應仿真曲線分別如圖3和4所示。從圖中很明顯可以看出,在有波紋最少拍控制系統中,控制器的輸出量是不斷變化的,系統的輸出響應經過一拍后達到設定值,但只有在采樣點時輸出才與輸入一致,采樣點之間系統的輸出是不斷波動的。而在無波紋最少拍控制系統中,控制器的輸出量經過兩拍后即為零,系統的輸出經過兩拍后達到設定值且恒定。仿真結果與理論分析的結果相一致。

圖2 Simulink仿真模型

圖3 有波紋情況

圖4 無波紋情況
很顯然,在最小拍控制器的設計中,利用matlab語言編程,很容易地解決了計算復雜的難題;通過Similink建模仿真,運行結果以圖形的形式表示,形象、直觀,可以使學生更好的理解和掌握最少拍控制系統的設計內容及其特點。
Matlab提供了高效簡潔的編程語言和Simulink仿真環境,簡單易學、圖形直觀。在計算機控制理論教學中,具有很好的應用價值。除了上述所舉的應用實例外,還可以應用在Z脈沖傳遞函數求取、系統穩定性判斷、數字PID控制器參數整定、模糊控制器設計等諸多方面。總之,該輔助教學軟件的引入,不僅可以激發學生學習該課程的興趣,而且能很好地加深學生對所學知識的理解,從而提高教學效果。
[1]劉國榮.計算機控制技術與應用第二版[M].北京:機械工業出版社,2008.
[2]胡建平.MatLab/Simulink在《計算機控制技術》教學中的應用[J].上海工程技術大學教育研究,2009(1):42-44.
[3]劉衛國.Matlab程序設計與應用第二版[M].北京:高等教育出版社,2006.