摘要:分析了傳統(tǒng)自動控制原理實驗的局限,提出利用MATLAB資源和M語言開發(fā)實驗教學軟件的必要性,研制了一套基于MATLAB的自動控制原理實驗教學軟件并舉例。教學實踐表明,開發(fā)的教學軟件效果良好。
關鍵詞:MATLAB;自動控制原理;教學軟件
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2008)08-11ppp-0c
1 研究意義
傳統(tǒng)的自動控制原理實驗在某些教學儀器廠生產的控制實驗裝置上完成,其內部用運算放大器、電阻、電容等模擬器件構成了比例、積分、一階慣性等典型環(huán)節(jié)。實驗時,把系統(tǒng)分解成各典型環(huán)節(jié)的串聯(lián)形式,然后在模擬裝置上把表示相應典型環(huán)節(jié)的模塊連接起來,通過示波器觀察系統(tǒng)的響應和各項動態(tài)指標。這樣的實驗方式,雖然在培養(yǎng)學生動手能力、加深對課堂學習內容的印象等方面有一定的作用,但存在兩個局限:
(1)實驗設備高度集成,擴展性能差由于實驗裝置的各典型環(huán)節(jié)已經集成,可改參數有限,使得實驗以驗證性為主,而且操作復雜。比如觀察一個二階系統(tǒng)在不同阻尼系數下的階躍響應和動態(tài)指標,首先要把系統(tǒng)分解成典型環(huán)節(jié)的串聯(lián)形式,然后加上階躍輸入信號后在示波器上觀察響應和各項指標,操作起來十分不便。
(2)繪圖、計算復雜自動控制原理是自動控制專業(yè)的一門比較抽象的理論課程。由于控制系統(tǒng)分析往往涉及到各種分析方法的繪圖和復雜的計算,學生需要花很多的時間和精力在繪圖和計算上,影響到對控制系統(tǒng)分析原理的掌握。因而該課程授課難度大,學生的學習壓力也很大。
因此,這種實驗方式不僅未能發(fā)揮實驗在教學環(huán)節(jié)中的作用,而且成了制約“自動控制理論”教學的瓶頸。
隨著計算機應用軟件的飛速發(fā)展,計算機輔助教學軟件的開發(fā)已成為計算機應用軟件領域和教學改革的課題。用計算機完成復雜的計算和繪圖,授課時引導學生把精力放在概念的理解和方法的掌握上,將是該課程教學發(fā)展方向。MATLAB是1980年美國學者CleveMoler等人推出的用于工程計算和數值分析交互式語言。MATLAB軟件環(huán)境給用戶提供了一個人機交互的M語言。用戶用MATLAB進行控制系統(tǒng)分析,一般是用M語言在MATLAB運行環(huán)境下一步一步地輸入命令,用MATLAB提供的子程序和繪圖功能完成系統(tǒng)分析計算。這種靈活的操作方式要求用戶必須掌握M語言編程方法和各個控制系統(tǒng)分析子程序的調用接口,比較適合于有控制系統(tǒng)分析經驗和熟悉M語言的用戶。對于初學自動控制理論的學生,這種操作方式是不適合的。這可能使學生把精力和時間耗費在學習和掌握M語言上,而不是用在對控制系統(tǒng)分析原理的掌握上。因此,利用MATLAB資源和M語言開發(fā)適用于自動控制原理實驗教學的應用軟件是必要的。
2 國內外研究綜述
目前,MATLAB已經成為國際上最流行的科學與工程計算的軟件工具,國內外很重視利用MATLAB研究和開發(fā)自動控制類課程的實驗教學軟件。國際控制界的許多專家已經開發(fā)了大量基于MATLAB的控制軟件,我國很多高校和研究部門也正在研制此軟件,但是國內尚未見有關產品的報道。
3 自控實驗教學軟件的研制
基于上述MATLAB強大的功能,我們研制了一套“基于MATLAB的自動控制原理實驗教學軟件”。該軟件的研制,給自動控制理論的教學工作帶來了極大的便利,能夠使學生直觀、生動地了解自控理論的內容,并對自控系統(tǒng)的設計起到良好的輔助作用,還可節(jié)省實驗設備的投資與維護費用。整個系統(tǒng)的功能分為階躍響應、脈沖相應、Nyquist圖、Bode圖和根軌跡圖等等。
軟件接口界面按照如下方式設計:
(1)菜單界面:根據自動控制原理課程的內容特點,在主菜單頁上排列該軟件的主要功能和控制系統(tǒng)方框圖,方框圖的傳遞函數可以按用戶需要自行更改。系統(tǒng)主界面如圖1所示。
圖1 系統(tǒng)主界面
(2)數據輸入:數據輸入采用統(tǒng)一格式的數據輸入對話框,如圖2所示。
圖2 數據輸入對話框
(3)結果輸出:計算結果輸出采用直觀的圖形顯示方式。
例如某開環(huán)系統(tǒng)的傳遞函數為lhj03.tif繪制系統(tǒng)的Bode圖。
先在數據輸入對話框中輸入開環(huán)傳遞函數的分子分母矩陣,然后點擊主界面中的按鈕“Nyquist圖”,則可以在主界面的坐標位置輸出結果。部分程序如下:
function NYQUIST_Callback(hObject, eventdata, handles) %“Nyquisy圖”按鈕回調
global num1 den1%定義傳遞函數的分子多項式系數矩陣為全局變量
m=tf(num1,den1);%求傳遞函數
t=[0:0.1:6];%定義向量t
subplot('position',[0.12 0.52 0.5 0.45]);%在指定位置建立圖形
nyquist(m);%繪制系統(tǒng)的Nyquisy圖
xlabel('實軸');%Nyquisy圖的橫坐標標注
ylabel('虛軸');%Nyquisy圖的縱坐標標注
title('Nyquist圖');%Nyquisy圖名稱
運行結果如圖3所示。
圖3 運行結果
4 結束語
根據自動控制原理實驗課程的特點,為用戶設計一個美觀、簡潔、明了的操作界面,使教師和學生不需要MATLAB知識就能掌握和應用,操作盡量簡單。充分調動學生的學習積極性,提高學生動手分析、設計系統(tǒng)的能力,有效地克服目前自動控制原理實驗的局限,從而使自控實驗煥發(fā)新的生機。
參考文獻:
[1] 劉宏友,李莉. MATLAB 6基礎與應用[M]. 重慶大學出版社,2002.
[2] 溫希東. 自動控制原理及應用[M]. 西安電子科技大學出版社,2004.
[3] 俞眉芳. 自動控制原理及系統(tǒng)[M]. 高等教育出版社,2005.
[4] 黃永安. Matlab7.0/Simulink6.0 建模仿真開發(fā)與高級工程應用[M]. 清華大學出版社,2005.