馬向國 劉同娟 張旭鳳
北京物資學(xué)院 北京 101149
基于MATLAB 的自動(dòng)控制原理虛擬實(shí)驗(yàn)仿真平臺(tái)*
馬向國 劉同娟 張旭鳳
北京物資學(xué)院 北京 101149
本文將MATLAB軟件引入自動(dòng)控制原理課程的教學(xué)和實(shí)驗(yàn)中,通過MATLAB軟件提供的控制系統(tǒng)工具箱,可以對(duì)線性系統(tǒng)進(jìn)行模型建立、時(shí)域分析、頻域分析和根軌跡分析;同時(shí)該軟件也可以對(duì)離散系統(tǒng)時(shí)間響應(yīng)進(jìn)行分析。通過教學(xué)實(shí)踐表明,基于MATLAB 的自動(dòng)控制原理虛擬實(shí)驗(yàn)仿真平臺(tái)的建立和應(yīng)用,改革了自動(dòng)控制原理課程實(shí)驗(yàn)教學(xué)的形式和內(nèi)容,培養(yǎng)了學(xué)生的興趣和實(shí)踐能力,提高了課堂教學(xué)的效率。
MATLAB;自動(dòng)控制;仿真
自動(dòng)控制原理是自動(dòng)控制工程、物流設(shè)備工程等相關(guān)專業(yè)的重要的專業(yè)基礎(chǔ)課,涉及控制系統(tǒng)的模型建立、系統(tǒng)分析、系統(tǒng)設(shè)計(jì)的基本理論和相關(guān)技術(shù)。其特點(diǎn)是概念抽象,數(shù)學(xué)含量大,計(jì)算繁雜,以致學(xué)生難于理解。為了改變這一局面,我們利用MATLAB中的具有可視化編程能力的圖形用戶界面、SIMULINK仿真功能和控制系統(tǒng)工具箱中豐富的庫函數(shù)等,開發(fā)了基于MATLAB 的自動(dòng)控制原理虛擬實(shí)驗(yàn)仿真平臺(tái)。學(xué)生一旦掌握這門語言, 就可以很容易地利用軟件的相關(guān)命令函數(shù)做出所需的各種圖形,對(duì)自動(dòng)控制理論課程學(xué)習(xí)也有極大的促進(jìn)作用。
MATLAB是美國MathWorks公司開發(fā)的科學(xué)與工程計(jì)算軟件。在歐美大學(xué)里,諸如應(yīng)用代數(shù)、數(shù)理統(tǒng)計(jì)、電工電子、自動(dòng)控制、數(shù)字信號(hào)處理、模擬與數(shù)字通信、動(dòng)態(tài)系統(tǒng)仿真等課程的教科書,都有MATLAB內(nèi)容。MATLAB 是攻讀學(xué)位的大學(xué)生、碩士生、博土生必須掌握的基本工具。在設(shè)計(jì)研究單位和工業(yè)部門,MATLAB 被認(rèn)作是進(jìn)行高效研究和開發(fā)的首選軟件工具。尤為重要的是,MATLAB 中提供了可視化動(dòng)態(tài)仿真環(huán)境——Simulink,可實(shí)現(xiàn)動(dòng)態(tài)系統(tǒng)的直觀建模、仿真與分析,并支持連續(xù)、離散及兩者混合的線性和非線性系統(tǒng),因此使一個(gè)復(fù)雜系統(tǒng)的輸入和仿真變得相當(dāng)簡(jiǎn)單。
MATLAB 能適合多學(xué)科、多部門的要求,其特點(diǎn)是:(1)以復(fù)數(shù)矩陣或數(shù)組為數(shù)據(jù)單元進(jìn)行運(yùn)算,可直接處理矩陣或數(shù)組。(2)語言結(jié)構(gòu)緊湊,內(nèi)涵豐富,編程效率高,用戶使用方便。(3)強(qiáng)大的繪圖功能。用戶只需一條或幾條語句就可方便地給出復(fù)雜的二維、三維圖形。(4)含有豐富的內(nèi)部函數(shù),可直接調(diào)用而不需另行編程。如用來求解微分方程或微分方程組的Dsolve 函數(shù)、求解線性方程組的Solve 函數(shù)。(5)帶有Simulink 動(dòng)態(tài)模擬工具及Toolbox 等其他功能,可方便地生成模擬模型。(6)便于系統(tǒng)擴(kuò)充,通過M文件形式,共享C、FORTRAN 等語言的資源。(7)在涉及復(fù)雜算法的仿真中(如電氣傳動(dòng)控制系統(tǒng)),彌補(bǔ)了Pspice 傳遞函數(shù)的不足。
1.線性系統(tǒng)的時(shí)域分析
自動(dòng)控制系統(tǒng)最基本的問題就是求在輸入信號(hào)作用下的輸出響應(yīng),即自動(dòng)控制系統(tǒng)的時(shí)域分析。線性系統(tǒng)的時(shí)域分析是以拉氏變換為工具,從傳遞函數(shù)出發(fā),直接在時(shí)間域上研究自動(dòng)控制系統(tǒng)性能的一種方法。此方法對(duì)系統(tǒng)分析結(jié)果直接、全面,但計(jì)算量較大,尤其是對(duì)于高階系統(tǒng)。MATLAB語言的廣泛應(yīng)用,可以較好地彌補(bǔ)這一不足。
(1)基本時(shí)域響應(yīng)函數(shù)。MATLAB控制系統(tǒng)工具箱提供了豐富的用于對(duì)控制系統(tǒng)時(shí)間響應(yīng)進(jìn)行分析的工具函數(shù),能同時(shí)支持用傳遞函數(shù)和狀態(tài)空間表示的模型,常用到的函數(shù)如表1所示。利用這些函數(shù)可方便地對(duì)系統(tǒng)的階躍響應(yīng)、脈沖響應(yīng)等進(jìn)行仿真和分析。
表1 時(shí)域響應(yīng)函數(shù)
解:在MATLAB中建立m文件如下:
運(yùn)行結(jié)果如圖1所示:
圖1 系統(tǒng)的單位階躍響應(yīng)曲線
(2)時(shí)域中穩(wěn)定性分析。系統(tǒng)穩(wěn)定的充分必要條件是:系統(tǒng)特征方程的全部根,都位于s左半平面,因此只要求出控制系統(tǒng)閉環(huán)特征方程的根,并進(jìn)一步判斷所有根的實(shí)部是否都小于零,就可判斷系統(tǒng)是否穩(wěn)定。
解:利用roots()函數(shù)求解閉環(huán)特征方程根來判斷系統(tǒng)穩(wěn)定性
格式:roots(P)
功能:求多項(xiàng)式的根
說明:P是降冪排列多項(xiàng)式系數(shù)向量,該函數(shù)的輸出就是求出的根,存放在ans中。
編制m文件ex11_8.m如下:
k=50;z=[-5];p=[0 -3 -4];
[n1,d1]=zp2tf(z,p,k); %獲得開環(huán)傳遞函數(shù)分子和分母系數(shù)向量
P=n1+d1; %獲得閉環(huán)傳遞函數(shù)的分母系數(shù)向量
roots(P) %獲得特征方程的根
運(yùn)行結(jié)果為:
ans =
-1.0760 + 7.1000i
-1.0760 - 7.1000i
-4.8480
計(jì)算結(jié)果表明所有特征根的實(shí)部均為負(fù),故閉環(huán)系統(tǒng)是穩(wěn)定的。
(3)線性系統(tǒng)的根軌跡分析。MATLAB中繪制根軌跡的有關(guān)函數(shù)(見表2)。
表2 MATLAB中繪制根軌跡的有關(guān)函數(shù)
已知某系統(tǒng)的開環(huán)傳遞函數(shù)為G(s)H(s)=K/s(s+1)(s+2),試?yán)L制系統(tǒng)根軌跡。
解:編制MATLAB程序如下,繪制的根軌跡圖如圖2所示。
num=1;
den=poly([0 -1 -2]); %由系統(tǒng)的極點(diǎn)求系統(tǒng)開環(huán)傳函的分母多項(xiàng)式
rlocus(num,den); %畫根軌跡
圖2 系統(tǒng)的根軌跡圖
2.離散系統(tǒng)的MATLAB仿真
MATLAB控制系統(tǒng)工具箱提供了豐富的用于對(duì)離散系統(tǒng)時(shí)間響應(yīng)進(jìn)行分析的工具函數(shù),常用到的函數(shù)如表3所示。利用這些函數(shù)可方便地對(duì)系統(tǒng)的階躍響應(yīng)、脈沖響應(yīng)等進(jìn)行仿真和分析。
表3 離散系統(tǒng)的時(shí)域響應(yīng)相關(guān)函數(shù)
解:在MATLAB中建立m程序如下,運(yùn)行結(jié)果見圖4所示
dsys=tf([0.5 0.04],[1 -0.6 0.53],0.1);
subplot(2,1,1),pzmap(dsys)
title('零極點(diǎn)圖')
subplot(2,1,2),rlocus(dsys)
[k,poles]=rlocfind(dsys)
title('根軌跡圖')
從以上實(shí)例可見,應(yīng)用MATLAB軟件,語句簡(jiǎn)單,生成圖像直觀,對(duì)提高教學(xué)效果和激發(fā)學(xué)生的學(xué)習(xí)興趣有很大幫助。
自動(dòng)控制原理虛擬實(shí)驗(yàn)仿真平臺(tái)的應(yīng)用,在教學(xué)實(shí)踐中取得了很好的效果。具體體現(xiàn)在:(1)有效激發(fā)學(xué)生的學(xué)習(xí)興趣。(2)利用MATLAB 語言,加深了學(xué)生對(duì)本課程的掌握程度,提高了教學(xué)質(zhì)量。(3)完善了實(shí)驗(yàn)教學(xué)模式。雖然自動(dòng)控制原理是一門較為成熟的課程,但是隨著計(jì)算機(jī)語言的不斷出現(xiàn),原有的教材顯得單薄,因此還需編寫新的教材。增加MATLAB在本課程的應(yīng)用部分,使得自動(dòng)控制原理課程的教學(xué)改革更加深入,更加完善。
[1]胡壽松.自動(dòng)控制原理(第四版)[M].北京:科學(xué)出版社,2003
[2](日)緒方勝彥.現(xiàn)代控制工程[M].北京:科學(xué)出版社,1976
[3]王華.MATLAB在電信工程中的應(yīng)用[M].北京:中國水利水電出版社,2001
[4]王炳武.MATLAB5.3實(shí)用教程[M].北京:中國水利水電出版社,2000
[5]陳桂明,張明照.應(yīng)用MATLAB建模與仿真[M].北京:科學(xué)出版社,2001
Abstract:In this article MATLAB software is introduced in "Automatic Control Theory" course in teaching and experiments, through the MATLAB software provides control system toolbox, linear system modeling, time-domain analysis, frequency domain analysis and root locus analysis can be carried on. In the same time, the software can also analyze time-respond of the discrete-time systems. Through teaching practice shows that, establishment and application of Automatic Control Theory" virtual experiment simulation platform based on MATLAB can reform the Experimental Teaching of "Automatic Control Theory" in the form and content. In the same time ,develop the student's interest and practical ability and improve the classroom teaching efficiency.
Key words: MATLAB ;automatic control;simulation
Virtual experiment simulation platform of automatic control theory based on MATLAB
Ma Xiangguo, Liu Tongjuan, Zhang Xufeng
Beijing wuzi university, Beijing ,101149,China
2009-08-05
馬向國,博士,副教授。
*本文系北京物資學(xué)院2009年教育教學(xué)改革項(xiàng)目。