王憲磊
(塔里木大學(xué)機(jī)械電氣化工程學(xué)院,新疆 阿拉爾 843300)
MATLAB在機(jī)械類專業(yè)《自動控制原理》課程教學(xué)中的應(yīng)用*
王憲磊
(塔里木大學(xué)機(jī)械電氣化工程學(xué)院,新疆阿拉爾843300)
針對機(jī)械類專業(yè)《自動控制原理》課程的特點(diǎn),通過運(yùn)用MATLAB進(jìn)行系統(tǒng)建模,繪制時域分析響應(yīng)曲線、根軌跡圖、頻域分析中的奈奎斯特圖及伯德圖,以及進(jìn)行系統(tǒng)的穩(wěn)定性分析,說明了MATLAB在自動控制原理課程教學(xué)中的優(yōu)越性,有利于提高教學(xué)效率,提高學(xué)生學(xué)習(xí)的主動性及利用仿真軟件解決問題的能力。
課程與教學(xué)論;MATLAB;自動控制原理;教學(xué);穩(wěn)定性、時域分析;根軌跡;頻域分析
《自動控制原理》是機(jī)械類專業(yè)的一門抽象的專業(yè)基礎(chǔ)課,該課程內(nèi)容豐富、公式多、圖形多、理論性強(qiáng),而且比較抽象,學(xué)生學(xué)習(xí)起來比較困難,加上機(jī)械類專業(yè)該課程的學(xué)時壓縮,要想在有限的學(xué)時內(nèi)提高課堂教學(xué)質(zhì)量和效率,必須改變傳統(tǒng)的板書繪圖和簡單的多媒體課件展示,借助于MATLAB計(jì)算機(jī)仿真軟件,使該課程的教學(xué)更加直觀、靈活,可以提高學(xué)生學(xué)習(xí)的積極性和利用仿真軟件解決問題的能力。
該課程內(nèi)容多,涉及到系統(tǒng)的建模、時域分析、穩(wěn)定性、根軌跡、頻域分析等,如果用傳統(tǒng)的板書,不容易畫出很多曲線,特別是在分析參數(shù)變化對系統(tǒng)的影響時,參數(shù)要不斷調(diào)整,同時要看對系統(tǒng)的影響結(jié)果,傳統(tǒng)的板書畫的曲線不準(zhǔn)確,很難將參數(shù)的全部變化展示出來,所以,該課程要借助于MATLAB軟件,在課堂教學(xué)中,利用其強(qiáng)大的圖形功能,將系統(tǒng)在不同參數(shù)變化下的結(jié)果仿真展示出來,學(xué)生很容易直觀理解。下面將對該課程中的具體內(nèi)容,借助MATLAB來進(jìn)行分析。
1.1系統(tǒng)建模
控制系統(tǒng)的數(shù)學(xué)模型中,最基本的就是傳遞函數(shù),傳遞函數(shù)的表示形式主要有多項(xiàng)式形式和零極點(diǎn)形式,要學(xué)會用MATLAB表示傳遞函數(shù)及各種形式。
若要用MATLAB把該系統(tǒng)的傳遞函數(shù)表示為零極點(diǎn)形式,程序如下:
運(yùn)行后命令窗口顯示:
1.2時域分析
對這種類型的時域分析,傳統(tǒng)的方法是,已知系統(tǒng)的輸入信號是單位階躍,可以求出其拉普拉斯變換,再結(jié)合系統(tǒng)的傳遞函數(shù),先求出系統(tǒng)輸出量的拉普拉斯變換,再把其進(jìn)行部分分式展開,進(jìn)行拉普拉斯反變換,求出其單位階躍響應(yīng),要畫出響應(yīng)曲線,還要根據(jù)時間t的變化,求出不同的輸出值,最后繪制出系統(tǒng)在不同時間下的響應(yīng)曲線,這種繪制曲線的方法復(fù)雜繁瑣,畫的曲線也不是很準(zhǔn)確,學(xué)生聽起來也很枯燥。
若采用MATLAB編程則能畫出很精確的曲線,而且省時容易理解,可以更加直觀地看到時間變化時系統(tǒng)的輸出量變化情況。最重要的是,如果同一個系統(tǒng),還要看單位脈沖響應(yīng)曲線的話,不需要用傳統(tǒng)繁瑣的方法,只需要在MATLAB編程中改變相應(yīng)的程序,就可以很容易得到系統(tǒng)的脈沖響應(yīng)曲線。所以,在該課程教學(xué)中,時域分析借助MATLAB,可以更多地看到統(tǒng)一系統(tǒng)的各種響應(yīng)曲線,從而可以對系統(tǒng)作分析和比較,可以很容易確定系統(tǒng)到底在哪種響應(yīng)下工作性能最好,這也是自動控制系統(tǒng)分析中經(jīng)常做的工作。
該系統(tǒng)的單位階躍響應(yīng)曲線,根據(jù)MATLAB的命令和函數(shù),編寫M文件,程序?yàn)椋?/p>
階躍響應(yīng)曲線顯示結(jié)果,如圖1所示。
圖1 系統(tǒng)的單位階躍響應(yīng)
該系統(tǒng)的單位脈沖響應(yīng)曲線,根據(jù)MATLAB的命令和函數(shù),編寫M文件,程序?yàn)椋?/p>
脈沖響應(yīng)曲線顯示結(jié)果,如圖2所示。
圖2 系統(tǒng)的單位脈沖響應(yīng)
1.3穩(wěn)定性分析
已知某系統(tǒng)的閉環(huán)特征多項(xiàng)式為:
D(s)=2s4+6s3+20s2+30s+18,試分析系統(tǒng)的穩(wěn)定性。
傳統(tǒng)方法是采用勞斯穩(wěn)定判據(jù),首先判斷特征多項(xiàng)式的各項(xiàng)系統(tǒng)都大于零,而且不缺項(xiàng),然后列勞斯表,再看勞斯表的第一列是否都大于零,如果是,則該系統(tǒng)穩(wěn)定,否則就不穩(wěn)定。這個判斷方法,難點(diǎn)是列勞斯表,要進(jìn)行相應(yīng)的計(jì)算,如果列勞斯表出錯,則會影響系統(tǒng)穩(wěn)定性的判斷,這種方法只適用于比較簡單的系統(tǒng),如果系統(tǒng)越復(fù)雜,系統(tǒng)的閉環(huán)特征多項(xiàng)式階數(shù)越高,則列勞斯表難點(diǎn)越大,容易出錯,影響系統(tǒng)穩(wěn)定性的判斷。
若采用MATLAB來判斷系統(tǒng)的穩(wěn)定性,只需要進(jìn)行簡單的編程,就可以判斷出系統(tǒng)的穩(wěn)定性,不需要做大量的計(jì)算,而且用MATLAB編程判斷穩(wěn)定性,特別適合于復(fù)雜的高階系統(tǒng)。用MATLAB來判斷系統(tǒng)的穩(wěn)定性,可以按照穩(wěn)定的充分條件來判斷,也就是先利用軟件算出系統(tǒng)的全部特征根,如果全部特征根都是負(fù)實(shí)根或?qū)嵅繛樨?fù)的復(fù)根,則系統(tǒng)穩(wěn)定,否則就是不穩(wěn)定,根據(jù)MATLAB的命令和函數(shù),編寫M文件,程序?yàn)椋?/p>
運(yùn)行后命令窗口顯示:
可見,系統(tǒng)的全部特征根都是實(shí)部為負(fù)的復(fù)跟,因此,該系統(tǒng)穩(wěn)定。
1.4根軌跡
根軌跡是分析系統(tǒng)的某一參數(shù)由零連續(xù)變化到無窮大時,閉環(huán)特征根在復(fù)平面上形成的若干條曲線。所以,如果用傳統(tǒng)的方法,就要利用根軌跡法則來手工繪制,工作量大,也容易出錯,不容易理解記憶,另外,系統(tǒng)還要根據(jù)參數(shù)的不斷變化來觀察特征根的變化軌跡,若用手工畫圖,比較繁瑣,不能反映參數(shù)調(diào)整的動態(tài)過程。若采用MATLAB,不要繁瑣的根軌跡法則,通過簡單的編程方便繪制,另外也可以直觀地看到參數(shù)調(diào)整時系統(tǒng)特征根的變化,非常形象直觀,便于學(xué)生理解。
運(yùn)行后命令窗口顯示如圖3所示的根軌跡。
圖3 系統(tǒng)的根軌跡
1.5頻域分析
傳統(tǒng)教學(xué)中繪制伯德圖的步驟是:先利用傳遞函數(shù)求出系統(tǒng)的頻率特性,整理成典型環(huán)節(jié)組合的形式,分別畫出各典型環(huán)節(jié)的對數(shù)幅頻特性和相頻特性曲線,最后將各典型環(huán)節(jié)的對數(shù)幅頻特性和相頻特性進(jìn)行疊加,得到系統(tǒng)總的伯德圖曲線。這一過程中,繪制各典型環(huán)節(jié)的曲線比較繁瑣,最后還要疊加得出總的曲線,繁瑣復(fù)雜,學(xué)生學(xué)習(xí)起來興趣不高,若用MATLAB來繪制伯德圖,則經(jīng)過簡單的編程,就可以得出準(zhǔn)確的伯德圖。程序如下:
運(yùn)行后命令窗口顯示如圖4所示的伯德圖。
圖4 系統(tǒng)的伯德
傳統(tǒng)教學(xué)中繪制奈奎斯特圖的步驟是:先利用傳遞函數(shù)求出系統(tǒng)的頻率特性,計(jì)算出幅頻特性和相頻特性,在求出頻率為0和無窮大兩種狀態(tài)的頻率特性,求奈奎斯特圖與實(shí)軸或虛軸的交點(diǎn),再選頻率中間變化的一些值,最后勾畫出大致曲線。這一過程中,步驟繁瑣,手工繪制不準(zhǔn)確,學(xué)生學(xué)習(xí)起來興趣不高,若用MATLAB來繪制奈奎斯特圖,則經(jīng)過簡單的編程,就可以得出準(zhǔn)確的圖。程序如下:
運(yùn)行后命令窗口顯示如圖5所示的奈奎斯特圖。
圖5 系統(tǒng)的奈奎斯特德
機(jī)械類專業(yè)《自動控制原理》教學(xué)中引入先進(jìn)的MATLAB軟件后,改善了教學(xué)手段,可以在課堂有限的課時內(nèi)增加教學(xué)信息量,通過仿真軟件,可以更好地展示教學(xué)內(nèi)容,將抽象的理論知識,通過軟件繪制的圖形曲線很好地表達(dá)出來,大大提高教學(xué)效率和質(zhì)量,有助于學(xué)生對知識的理解,提高了學(xué)生的學(xué)習(xí)興趣。通過引入MATLAB輔助教學(xué),也間接地給學(xué)生普及了MATLAB基礎(chǔ)知識,使學(xué)生學(xué)會了如何用計(jì)算機(jī)進(jìn)行輔助分析,為學(xué)生以后課程的學(xué)習(xí)打下良好的基礎(chǔ)。
[1]熊曉君.自動控制原理實(shí)驗(yàn)教程(硬件模擬與MATLAB仿真)[M].北京:機(jī)械工業(yè)出版社,2009.
[2]薛安克,彭冬亮,陳雪亭.自動控制原理(第二版)[M].西安:西安電子科技大學(xué)出版社,2007.
[3]王麗君,苗彬,孟先新.MATLAB在機(jī)械控制工程教學(xué)中的應(yīng)用[J].華北水利水電學(xué)院學(xué)報,2004,25(4):44-46.
[4]胡羽.淺談MATLAB在機(jī)械類《自動控制原理》教學(xué)中的應(yīng)用[J].甘肅科技,2009,25(14):179-180.
[5]王輝,張段芹,馬軍,等.基于MATLAB的機(jī)械工程控制基礎(chǔ)教學(xué)與實(shí)踐[J].山西科技,2013,28(6):94-96.
[6]王蕊.Matlab在《機(jī)械控制工程基礎(chǔ)》教學(xué)中的應(yīng)用[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,2011,24(4):179-180,187.
[7]梁康養(yǎng),張世亮,施錫鵬.Matlab在《機(jī)械工程控制基礎(chǔ)》實(shí)驗(yàn)教學(xué)中的應(yīng)用[J].廣西輕工業(yè),2009(12):35-36.
[8]熊偉麗,徐保國.提高機(jī)械專業(yè)“自動控制原理”教學(xué)質(zhì)量的思考[J].邊疆經(jīng)濟(jì)與文化,2007(10):141-142.
[9]馮靜安,王衛(wèi)兵,張立新,等.Matlab在機(jī)械工程控制基礎(chǔ)教學(xué)中的應(yīng)用[J].科技創(chuàng)新與生產(chǎn)力,2014,(1):73-75.
G642
塔里木大學(xué)高教研究項(xiàng)目資助(編號:TDGJ1534)。