華北電力大學本科控制理論課程設計_第1頁
華北電力大學本科控制理論課程設計_第2頁
華北電力大學本科控制理論課程設計_第3頁
華北電力大學本科控制理論課程設計_第4頁
華北電力大學本科控制理論課程設計_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、華北電力大學自動化系自動化1004課程設計報告( 2012- 2013 年度 第 1 學期)名 稱: 自動控制理論課程設計 題 目:基于自動控制理論的性能分析與校正 院 系: 自動化 班 級: 自動化1004 學 號: 201002020416 學生姓名: 王桐 指導教師: 孫海蓉 設計周數(shù): 1周 成 績: 日期: 2012 年 12 月 31 日一、課程設計的目的與要求1 正文為宋體,五號字 行間距為21 11 -12 -(請按任務書寫,把任務書考過來,從第三行開始考)二、設計正文1 正文為宋體,五號字 行間距為21 11 -12 -(包括題目,解題過程即程序,結果即打印曲線)三、課程設計

2、總結或結論1 正文為宋體,五號字 行間距為21 11 -12 -四、參考文獻1 作者1, 作者2. 書名. 出版單位, 版本. 出版日期自動控制理論課程設計一、 設計題目基于自動控制理論的性能分析與校正二、 目的與要求本課程為自動控制理論A的課程設計,是課堂的深化。設置自動控制理論A課程設計的目的是使MATLAB成為學生的基本技能,熟悉MATLAB這一解決具體工程問題的標準軟件,能熟練地應用MATLAB軟件解決控制理論中的復雜和工程實際問題,并給以后的模糊控制理論、最優(yōu)控制理論和多變量控制理論等奠定基礎。作為自動化專業(yè)的學生很有必要學會應用這一強大的工具,并掌握利用MATLAB對控制理論內容進

3、行分析和研究的技能,以達到加深對課堂上所講內容理解的目的。通過使用這一軟件工具把學生從繁瑣枯燥的計算負擔中解脫出來,而把更多的精力用到思考本質問題和研究解決實際生產(chǎn)問題上去。通過此次計算機輔助設計,學生應達到以下的基本要求:1.能用MATLAB軟件分析復雜和實際的控制系統(tǒng)。2.能用MATLAB軟件設計控制系統(tǒng)以滿足具體的性能指標要求。3.能靈活應用MATLAB的CONTROL SYSTEM 工具箱和SIMULINK仿真軟件,分析系統(tǒng)的性能。三、 主要內容1前期基礎知識,主要包括MATLAB系統(tǒng)要素,MATLAB語言的變量與語句,MATLAB的矩陣和矩陣元素,數(shù)值輸入與輸出格式,MATLAB系統(tǒng)

4、工作空間信息,以及MATLAB的在線幫助功能等。2控制系統(tǒng)模型,主要包括模型建立、模型變換、模型簡化,Laplace變換等等。3控制系統(tǒng)的時域分析,主要包括系統(tǒng)的各種響應、性能指標的獲取、零極點對系統(tǒng)性能的影響、高階系統(tǒng)的近似研究,控制系統(tǒng)的穩(wěn)定性分析,控制系統(tǒng)的穩(wěn)態(tài)誤差的求取。4控制系統(tǒng)的根軌跡分析,主要包括多回路系統(tǒng)的根軌跡、零度根軌跡、純遲延系統(tǒng)根軌跡和控制系統(tǒng)的根軌跡分析。5控制系統(tǒng)的頻域分析,主要包括系統(tǒng)Bode圖、Nyquist圖、穩(wěn)定性判據(jù)和系統(tǒng)的頻域響應。6控制系統(tǒng)的校正,主要包括根軌跡法超前校正、頻域法超前校正、頻域法滯后校正以及校正前后的性能分析。四、 進度計劃序號設計內容

5、完成時間備注1基礎知識、數(shù)學模型2012-1-312時域分析法、頻域分析2013-1-33根軌跡分析、系統(tǒng)校正2013-1-54整理打印課程設計報告2013-1-65答辯2013-1-6 自動控制原理課程設計論文正文目 錄第一板塊 前期基礎知識 1第二板塊 控制系統(tǒng)模型 1 1、有理數(shù)模型的建立 1 2、零極點模型 1 3、反饋系統(tǒng)結構圖模型 2 4、Simulink建模方法 2 5、例1-1 4 6、例1-2 4第三板塊 控制系統(tǒng)的時域分析 5 1、線性系統(tǒng)穩(wěn)定性分析 5 2、系統(tǒng)動態(tài)特性分析 6 3、例2-1 9 4、例2-2 11第四板塊 控制系統(tǒng)的根軌跡 10 1、理論分析 10 2、

6、例3-1 11 3、例3-2 12第五板塊 控制系統(tǒng)的頻率分析 16 1、頻率特性 16 2、用MATLAB作奈魁斯特圖 17 3、用MATLAB作伯德圖 17 4、用MATLEB求取穩(wěn)定裕量 19 5、時間延遲系統(tǒng)的頻域響應 19 7、例4-2 20 6、例4-1 22 第六板塊 控制系統(tǒng)的校正 24 1、根軌跡串聯(lián)超前校正,例5-1 24 2、根軌跡串聯(lián)滯后校正,例5-2 29 3、頻率串聯(lián)超前校正,例5-3 33 4、頻率串聯(lián)滯后校正,例5-4 36第七板塊 體會和心得 37第八板塊 參考文獻 38 本周,進行了自動控制原理的課程設計,在為時一周的課設中,我們主要練習了MATLAB的使用

7、,這周時間內主要學習的內容分為:前期基礎知識,控制系統(tǒng)模型,控制系統(tǒng)的時域分析,控制系統(tǒng)的根軌跡分析,控制系統(tǒng)的頻域分析和控制系統(tǒng)的矯正六個板塊:一、前期基礎知識_關于MATLABMATLAB是Mathworks公司開發(fā)的一種集數(shù)值計算、符號計算和圖形可視化三大基本功能于一體的功能強大、操作簡單的優(yōu)秀工程計算應用軟件。MATLAB不僅可以處理代數(shù)問題和數(shù)值分析問題,而且還具有強大的圖形處理及仿真模擬等功能。從而能夠很好的幫助工程師及科學家解決實際的技術問題。MATLAB的含義是矩陣實驗室(Matrix Laboratory),最初主要用于方便矩陣的存取,其基本元素是無需定義維數(shù)的矩陣。經(jīng)過十幾

8、年的擴充和完善,現(xiàn)已發(fā)展成為包含大量實用工具箱(Toolbox)的綜合應用軟件,不僅成為線性代數(shù)課程的標準工具,而且適合具有不同專業(yè)研究方向及工程應用需求的用戶使用。MATLAB最重要的特點是易于擴展。它允許用戶自行建立完成指定功能的擴展MATLAB函數(shù)(稱為M文件),從而構成適合于其它領域的工具箱,大大擴展了MATLAB的應用范圍。目前,MATLAB已成為國際控制界最流行的軟件,控制界很多學者將自己擅長的CAD方法用MATLAB加以實現(xiàn),出現(xiàn)了大量的MATLAB配套工具箱,如控制系統(tǒng)工具箱(control systems toolbox),系統(tǒng)識別工具箱(system identificat

9、ion toolbox),魯棒控制工具箱(robust control toolbox),信號處理工具箱(signal processing toolbox)以及仿真環(huán)境SIMULINK等。二、控制系統(tǒng)模型的建立1、有理數(shù)模型的建立線性系統(tǒng)的傳遞函數(shù)模型可一般地表示為: (1)將系統(tǒng)的分子和分母多項式的系數(shù)按降冪的方式以向量的形式輸入給兩個變量和,就可以輕易地將傳遞函數(shù)模型輸入到MATLAB環(huán)境中。命令格式為:; (2); (3)在MATLAB控制系統(tǒng)工具箱中,定義了tf() 函數(shù),它可由傳遞函數(shù)分子分母給出的變量構造出單個的傳遞函數(shù)對象。從而使得系統(tǒng)模型的輸入和處理更加方便。該函數(shù)的調用格式

10、為:Gtf(num,den);2、零極點模型線性系統(tǒng)的傳遞函數(shù)還可以寫成極點的形式: (5)將系統(tǒng)增益、零點和極點以向量的形式輸入給三個變量、Z和P,就可以將系統(tǒng)的零極點模型輸入到MATLAB工作空間中,命令格式為: (6) (7) (8)在MATLAB控制工具箱中,定義了zpk()函數(shù),由它可通過以上三個MATLAB變量構造出零極點對象,用于簡單地表述零極點模型。該函數(shù)的調用格式為:G=zpk(Z,P,KGain) 3、反饋系統(tǒng)結構圖模型設反饋系統(tǒng)結構圖如圖5所示。圖5反饋系統(tǒng)結構圖 控制系統(tǒng)工具箱中提供了feedback()函數(shù),用來求取反饋連接下總的系統(tǒng)模型,該函數(shù)調用格式如下:G=fe

11、edback(G1,G2,sign); (10)其中變量sign用來表示正反饋或負反饋結構,若sign=-1表示負反饋系統(tǒng)的模型,若省略sign變量,則仍將表示負反饋結構。G1和G2分別表示前向模型和反饋模型的LTI(線性時不變)對象。4、Simulink建模方法在一些實際應用中,如果系統(tǒng)的結構過于復雜,不適合用前面介紹的方法建模。在這種情況下,功能完善的Simulink程序可以用來建立新的數(shù)學模型。Simulink是由Math Works 軟件公司1990年為MATLAB提供的新的控制系統(tǒng)模型圖形輸入仿真工具。它具有兩個顯著的功能:Simul(仿真)與Link(連接),亦即可以利用鼠標在模型

12、窗口上“畫”出所需的控制系統(tǒng)模型。然后利用SIMULINK提供的功能來對系統(tǒng)進行仿真或線性化分析。與MATLAB中逐行輸入命令相比,這樣輸入更容易,分析更直觀。(1) SIMULINK的啟動:在MATLAB命令窗口的工具欄中單擊按鈕或者在命令提示符>>下鍵入simulink命令,回車后即可啟動Simulink程序。啟動后軟件自動打開Simullink模型庫窗口,如圖 7所示。這一模型庫中含有許多子模型庫,如Sources(輸入源模塊庫)、Sinks(輸出顯示模塊庫)、Nonlinear(非線性環(huán)節(jié))等。若想建立一個控制系統(tǒng)結構框圖,則應該選擇File| New菜單中的Model選項

13、,或選擇工具欄上new Model按鈕,打開一個空白的模型編輯窗口如圖 8所示。圖 7simulink 模型庫圖8模型編輯窗口(2) 畫出系統(tǒng)的各個模塊:打開相應的子模塊庫,選擇所需要的元素,用鼠標左鍵點中后拖到模型編輯窗口的合適位置。(3) 給出各個模塊參數(shù):由于選中的各個模塊只包含默認的模型參數(shù),如默認的傳遞函數(shù)模型為1/(s+1)的簡單格式,必須通過修改得到實際的模塊參數(shù)。要修改模塊的參數(shù),可以用鼠標雙擊該模塊圖標,則會出現(xiàn)一個相應對話框,提示用戶修改模塊參數(shù)。(4) 畫出連接線:當所有的模塊都畫出來之后,可以再畫出模塊間所需要的連線,構成完整的系統(tǒng)。模塊間連線的畫法很簡單,只需要用鼠標

14、點按起始模塊的輸出端(三角符號),再拖動鼠標,到終止模塊的輸入端釋放鼠標鍵,系統(tǒng)會自動地在兩個模塊間畫出帶箭頭的連線。若需要從連線中引出節(jié)點,可在鼠標點擊起始節(jié)點時按住Ctrl鍵,再將鼠標拖動到目的模塊。(5) 指定輸入和輸出端子:在Simulink下允許有兩類輸入輸出信號,第一類是仿真信號,可從source(輸入源模塊庫)圖標中取出相應的輸入信號端子,從Sink(輸出顯示模塊庫)圖標中取出相應輸出端子即可。第二類是要提取系統(tǒng)線性模型,則需打開Connection(連接模塊庫)圖標,從中選取相應的輸入輸出端子。系統(tǒng)建模作業(yè)題一:例1-1若反饋系統(tǒng)的結構如圖6所示。其中,則寫出將閉環(huán)系統(tǒng)的傳遞函

15、數(shù)輸入MATLAB的語句。解:本題屬于上述的第三種類型,可以套用feedback函數(shù),具體程序如下:>>G1=tf(1,7,24,24,1,10,35,50,24);G2=tf(10,5,1,0);H=tf(1,0.01,1);G_a=feedback(G1*G2,H)得到結果:Transfer function: 0.1 s5 + 10.75 s4 + 77.75 s3 + 278.6 s2 + 361.2 s + 120-0.01 s6 + 1.1 s5 + 20.35 s4 + 110.5 s3 + 325.2 s2 + 384 s + 120系統(tǒng)建模作業(yè)題二:例1-2 典型

16、二階系統(tǒng)的結構圖如圖9所示。用SIMULINK對系統(tǒng)進行仿真分析。圖9典型二階系統(tǒng)結構圖(1) 畫出所需模塊,并給出正確的參數(shù):l 在sources子模塊庫中選中階躍輸入(step)圖標,將其拖入編輯窗口,并用鼠標左鍵雙擊該圖標,打開參數(shù)設定的對話框,將參數(shù)step time(階躍時刻)設為0。l 在Math(數(shù)學)子模塊庫中選中加法器(sum)圖標,拖到編輯窗口中,并雙擊該圖標將參數(shù)List of signs(符號列表)設為|+-(表示輸入為正,反饋為負)。l 在continuous(連續(xù))子模塊庫中、選積分器(Integrator)和傳遞函數(shù)(Transfer Fcn)圖標拖到編輯窗口中,

17、并將傳遞函數(shù)分子(Numerator)改為900,分母(Denominator)改為1,9。l 在sinks(輸出)子模塊庫中選擇scope(示波器)和Out1(輸出端口模塊)圖標并將之拖到編輯窗口中。(3)將畫出的所有模塊按圖9用鼠標連接起來,構成一個原系統(tǒng)的框圖描述如圖10所示。(4)選擇仿真算法和仿真控制參數(shù),啟動仿真過程。三、控制系統(tǒng)的時域分析1. 線性系統(tǒng)穩(wěn)定性分析 線性系統(tǒng)穩(wěn)定的充要條件是系統(tǒng)的特征根均位于S平面的左半部分。系統(tǒng)的零極點模型可以直接被用來判斷系統(tǒng)的穩(wěn)定性。另外,MATLAB語言中提供了有關多項式的操作函數(shù),也可以用于系統(tǒng)的分析和計算。(1)直接求特征多項式的根設p為

18、特征多項式的系數(shù)向量,則MATLAB函數(shù)roots()可以直接求出方程p=0在復數(shù)范圍內的解v,該函數(shù)的調用格式為:v=roots(p) (2)由根創(chuàng)建多項式如果已知多項式的因式分解式或特征根,可由MATLAB函數(shù)poly()直接得出特征多項式系數(shù)向量,其調用格式為:p=poly(v) (3)多項式求值在MATLAB 中通過函數(shù)polyval()可以求得多項式在給定點的值,該函數(shù)的調用格式為:polyval(p,v) (4)部分分式展開 考慮下列傳遞函數(shù): 式中,但是和中某些量可能為零。MATLAB函數(shù)可將展開成部分分式,直接求出展開式中的留數(shù)、極點和余項。該函數(shù)的調用格式為: (16)則的部

19、分分式展開由下式給出: 式中, ,為極點,, 為各極點的留數(shù),為余項。(5)由傳遞函數(shù)求零點和極點。在MATLAB控制系統(tǒng)工具箱中,給出了由傳遞函數(shù)對象G求出系統(tǒng)零點和極點的函數(shù),其調用格式分別為:Z=tzero(G) (18)P=G.P1 (19)(6)零極點分布圖。 在MATLAB中,可利用pzmap()函數(shù)繪制連續(xù)系統(tǒng)的零、極點圖,從而分析系統(tǒng)的穩(wěn)定性,該函數(shù)調用格式為:pzmap(num,den)2. 系統(tǒng)動態(tài)特性分析。(1)時域響應解析算法部分分式展開法。用拉氏變換法求系統(tǒng)的單位階躍響應,可直接得出輸出c(t)隨時間t變化的規(guī)律,對于高階系統(tǒng),輸出的拉氏變換象函數(shù)為: (21)對函數(shù)

20、c(s)進行部分分式展開,我們可以用num,den,0來表示c(s)的分子和分母。(2)單位階躍響應的求法:控制系統(tǒng)工具箱中給出了一個函數(shù)step()來直接求取線性系統(tǒng)的階躍響應,如果已知傳遞函數(shù)為:則該函數(shù)可有以下幾種調用格式:step(num,den) (22)step(num,den,t) (23)或 step(G) (24)step(G,t) (25)該函數(shù)將繪制出系統(tǒng)在單位階躍輸入條件下的動態(tài)響應圖,同時給出穩(wěn)態(tài)值。對于式23和25,t為圖像顯示的時間長度,是用戶指定的時間向量。式22和24的顯示時間由系統(tǒng)根據(jù)輸出曲線的形狀自行設定。如果需要將輸出結果返回到MATLAB工作空間中,則

21、采用以下調用格式: c=step(G) (26)此時,屏上不會顯示響應曲線,必須利用plot()命令去查看響應曲線。(3)求階躍響應的性能指標MATLAB提供了強大的繪圖計算功能,可以用多種方法求取系統(tǒng)的動態(tài)響應指標。我們首先介紹一種最簡單的方法游動鼠標法。對于例16,在程序運行完畢后,用鼠標左鍵點擊時域響應圖線任意一點,系統(tǒng)會自動跳出一個小方框,小方框顯示了這一點的橫坐標(時間)和縱坐標(幅值)。按住鼠標左鍵在曲線上移動,可以找到曲線幅值最大的一點即曲線最大峰值,此時小方框中顯示的時間就是此二階系統(tǒng)的峰值時間,根據(jù)觀察到的穩(wěn)態(tài)值和峰值可以計算出系統(tǒng)的超調量。系統(tǒng)的上升時間和穩(wěn)態(tài)響應時間可以依

22、此類推。這種方法簡單易用,但同時應注意它不適用于用plot()命令畫出的圖形。另一種比較常用的方法就是用編程方式求取時域響應的各項性能指標。與上一段介紹的游動鼠標法相比,編程方法稍微復雜,但通過下面的學習,讀者可以掌握一定的編程技巧,能夠將控制原理知識和編程方法相結合,自己編寫一些程序,獲取一些較為復雜的性能指標。通過前面的學習,我們已經(jīng)可以用階躍響應函數(shù)step( )獲得系統(tǒng)輸出量,若將輸出量返回到變量y中,可以調用如下格式 y,t=step(G) (27)該函數(shù)還同時返回了自動生成的時間變量t,對返回的這一對變量y和t的值進行計算,可以得到時域性能指標。 峰值時間(timetopeak)可

23、由以下命令獲得: Y,k=max(y); (28) timetopeak=t(k) (29)應用取最大值函數(shù)max()求出y的峰值及相應的時間,并存于變量Y和k中。然后在變量t中取出峰值時間,并將它賦給變量timetopeak。 最大(百分比)超調量(percentovershoot)可由以下命令得到:C=dcgain(G);Y,k=max(y); (30) percentovershoot=100*(Y-C)/C (31)dcgain( )函數(shù)用于求取系統(tǒng)的終值,將終值賦給變量C,然后依據(jù)超調量的定義,由Y和C計算出百分比超調量。 上升時間(risetime)可利用MATLAB中控制語句編制

24、M文件來獲得。首先簡單介紹一下循環(huán)語句while的使用。while循環(huán)語句的一般格式為:while<循環(huán)判斷語句> 循環(huán)體end其中,循環(huán)判斷語句為某種形式的邏輯判斷表達式。當表達式的邏輯值為真時,就執(zhí)行循環(huán)體內的語句;當表達式的邏輯值為假時,就退出當前的循環(huán)體。如果循環(huán)判斷語句為矩陣時,當且僅當所有的矩陣元素非零時,邏輯表達式的值為真。為避免循環(huán)語句陷入死循環(huán),在語句內必須有可以自動修改循環(huán)控制變量的命令。要求出上升時間,可以用while語句編寫以下程序得到:C=dcgain(G);n=1;while y(n)<C n=n+1;endrisetime=t(n)在階躍輸入條件

25、下,y 的值由零逐漸增大,當以上循環(huán)滿足y=C時,退出循環(huán),此時對應的時刻,即為上升時間。對于輸出無超調的系統(tǒng)響應,上升時間定義為輸出從穩(wěn)態(tài)值的10%上升到90%所需時間,則計算程序如下:C=dcgain(G);n=1; while y(n)<0.1*C n=n+1; endm=1; while y(n)<0.9*C m=m+1; endrisetime=t(m)-t(n) 調節(jié)時間(setllingtime)可由while語句編程得到:C=dcgain(G);i=length(t); while(y(i)>0.98*C)&(y(i)<1.02*C) i=i-1

26、;endsetllingtime=t(i)用向量長度函數(shù)length( )可求得t序列的長度,將其設定為變量i的上限值??刂葡到y(tǒng)時域分析法作業(yè)題三:已知二階系統(tǒng)傳遞函數(shù)為:例2-1 求動態(tài)性能曲線和上升時間,峰值時間,超調量,調節(jié)時間等性能指標。>> G=zpk( ,-1+3*i,-1-3*i ,3); % 計算最大峰值時間和它對應的超調量。 C=dcgain(G) y,t=step(G);plot(t,y)gridY,k=max(y);timetopeak=t(k)percentovershoot=100*(Y-C)/C% 計算上升時間。n=1;while y(n)<C n

27、=n+1;endrisetime=t(n)% 計算穩(wěn)態(tài)響應時間。i=length(t); while(y(i)>0.98*C)&(y(i)<1.02*C) i=i-1; end setllingtime=t(i)運行后的響應圖如圖 15,命令窗口中顯示的結果為C(穩(wěn)定幅值) =timetopeak(峰值時間) = 0.3000 1.0491Percentovershoot(超調量) =risetime (上升時間)= 35.0914 0.6626setllingtime (調節(jié)時間)= 3.5337圖 15 二階系統(tǒng)階躍響應控制系統(tǒng)時域分析作業(yè)題四:例2-2給定系統(tǒng)的傳遞函

28、數(shù): 求單位階躍響應表達式,曲線,上升時間(95%),峰值時間,調節(jié)時間,超調量>> num=1,7,24,24 den=1,10,35,50,24r,p,k=residue(num,den,0)輸出結果為r= p= k= -1.0000 -4.0000 2.0000 -3.0000 -1.0000 -2.0000 -1.0000 -1.0000 1.0000 0 則可知:輸出函數(shù)c(s)為: 拉氏變換得: C=dcgain(G) y,t=step(G);plot(t,y)gridY,k=max(y);timetopeak=t(k)percentovershoot=100*(Y-C

29、)/C% 計算上升時間。n=1;while y(n)<0.95*C n=n+1;endrisetime=t(n)% 計算穩(wěn)態(tài)響應時間。i=length(t); while(y(i)>0.98*C)&(y(i)<1.02*C) i=i-1; end setllingtime=t(i)運行結果為:Timetopeak(峰值時間) =5.8281Percentovershoot(超調量) = -0.2952Setllingtime(調節(jié)時間) = 3.9208Risetime(上升時間) = 3.0730四、控制系統(tǒng)的根軌跡假設閉環(huán)系統(tǒng)中的開環(huán)傳遞函數(shù)可以表示為: 則閉環(huán)特

30、征方程為:特征方程的根隨參數(shù)K的變化而變化,即為閉環(huán)根軌跡??刂葡到y(tǒng)工具箱中提供了rlocus()函數(shù),可以用來繪制給定系統(tǒng)的根軌跡,它的調用格式有以下幾種: rlocus(num,den) (32) rlocus(num,den,K) (33)或者 rlocus(G) (34) rlocus(G,K) (35)以上給定命令可以在屏幕上畫出根軌跡圖,其中G為開環(huán)系統(tǒng)G0(s)的對象模型,K為用戶自己選擇的增益向量。如果用戶不給出K向量,則該命令函數(shù)會自動選擇K向量。如果在函數(shù)調用中需要返回參數(shù),則調用格式將引入左端變量。如R,K=rlocus(G) (36)此時屏幕上不顯示圖形,而生成變量R和

31、K。R為根軌跡各分支線上的點構成的復數(shù)矩陣,K向量的每一個元素對應于R矩陣中的一行。若需要畫出根軌跡,則需要采用以下命令:plot(R,¹¹) (37)plot()函數(shù)里引號內的部分用于選擇所繪制曲線的類型,詳細內容見表1??刂葡到y(tǒng)工具箱中還有一個rlocfind()函數(shù),該函數(shù)允許用戶求取根軌跡上指定點處的開環(huán)增益值,并將該增益下所有的閉環(huán)極點顯示出來。這個函數(shù)的調用格式為:K,P=rlocfind(G) (38)這個函數(shù)運行后,圖形窗口中會出現(xiàn)要求用戶使用鼠標定位的提示,用戶可以用鼠標左鍵點擊所關心的根軌跡上的點。這樣將返回一個K變量,該變量為所選擇點對應的開環(huán)增益,同

32、時返回的P變量則為該增益下所有的閉環(huán)極點位置。此外,該函數(shù)還將自動地將該增益下所有的閉環(huán)極點直接在根軌跡曲線上顯示出來。例題5例3-1負反饋系統(tǒng)的開環(huán)傳遞函數(shù)為試繪制k由0至無窮變化時,其閉環(huán)系統(tǒng)的根軌跡。解:num=conv(1 4,1 8); den1=conv(1 12,1 12); den2=conv(1 0,1 0); Den=conv(den1,den2); Rlocus(num,den)還可以求出分離點和回合點:利用rlocfind函數(shù)。 rlocfind(num,den)Select a point in the graphics windowselected_point =

33、-6.0190 +(-) 5.1708ians = 128.0506其中,-6.0276+502632i是分離點,相應的另一個分離點是-6.0276-502632i。此時,k=128.0001.例題六3-2負反饋控制系統(tǒng)的被控對象和傳感器模型分別為和控制器為比例控制器(1) 求系統(tǒng)臨界穩(wěn)定是的k值;(2) 求阻尼比為0.8的k值;(3) 觀察系統(tǒng)穩(wěn)定時的k對系統(tǒng)的影響;(4) K=1.225時觀察給定輸入和擾動輸入的單位階躍響應。解:系統(tǒng)的根軌跡為:>> T1=2;>> T2=0.5;>> Tse=0.05;>> Kproc=4;>>

34、 denG=conv(T1,1,T2,1);>> Gp=tf(Kproc,denG);>> H=tf(1,Tse 1);>> Ghp=Gp*H;>> rlocus; Here is an example of how the function rlocus works: Consider a randomly generated stable Transfer Function Model: of the form G(s)=num(s)/den(s):num = 0 0 0 1.1892 -1.4162den = 1.0000 2.9737 2

35、.8217 0.9142 0.0908Call rlocus using the following command (see also, help rlocus):rlocus(tf(num,den);>>sgrid(0.8,);>> axis(-25 5 -15 15);>> k,poles=rlocfind(GpH)當Kp=13.95時,s1,s2=+(-)7j;當Kp=0.3時,s1,s2=-1.22+(-)0.83j,s3=-20.1;當Kp=13.95時,s1,s2=+(-)7j;利用以下程序求的k值對系統(tǒng)的影響>> t=0:0.02

36、:10;>> for Kp=0.7:0.2:1.7GF=feedback(Kp*Gp,H,-1);ys=step(GF,t);plot(t,ys);hold on;end>> grid onKp=1.225時,給定輸入和擾動駛入的單位階躍響應如圖:給定輸入的是最上方第一條完整的線五、控制系統(tǒng)的頻域分析()頻率特性函數(shù)。設線性系統(tǒng)傳遞函數(shù)為:則頻率特性函數(shù)為:由下面的MATLAB語句可直接求出G(jw)。i=sqrt(-1)%求取-1的平方根 (49)GW=polyval(num,i*w)./polyval(den,i*w) (50)其中(num,den)為系統(tǒng)的傳遞函數(shù)

37、模型。而w為頻率點構成的向量,點右除(./)運算符表示操作元素點對點的運算。從數(shù)值運算的角度來看,上述算法在系統(tǒng)的極點附近精度不會很理想,甚至出現(xiàn)無窮大值,運算結果是一系列復數(shù)返回到變量GW中。2、用MATLAB作奈魁斯特圖??刂葡到y(tǒng)工具箱中提供了一個MATLAB函數(shù)nyquist( ),該函數(shù)可以用來直接求解Nyquist陣列或繪制奈氏圖。當命令中不包含左端返回變量時,nyquist()函數(shù)僅在屏幕上產(chǎn)生奈氏圖,命令調用格式為:nyquist(num,den) (51) nyquist(num,den,w) (52)或者nyquist(G) (53) nyquist(G,w) (54)該命令

38、將畫出下列開環(huán)系統(tǒng)傳遞函數(shù)的奈氏曲線: 如果用戶給出頻率向量w,則w包含了要分析的以弧度/秒表示的諸頻率點。在這些頻率點上,將對系統(tǒng)的頻率響應進行計算,若沒有指定的w向量,則該函數(shù)自動選擇頻率向量進行計算。對于式43和45用戶不必給定頻率向量,系統(tǒng)會自動選擇頻率向量進行計算。式44和46需要用戶給出率向量w。w包含了用戶要分析的以弧度/秒表示的諸頻率點,MATLAB會自動計算這些點的頻率響應。當命令中包含了左端的返回變量時,即:re,im,w=nyquist(G) (55)或 re,im,w=nyquist(G,w) (56)函數(shù)運行后不在屏幕上產(chǎn)生圖形,而是將計算結果返回到矩陣re、im和w

39、中。矩陣re和im分別表示頻率響應的實部和虛部,它們都是由向量w中指定的頻率點計算得到的。在運行結果中,w數(shù)列的每一個值分別對應re、im數(shù)列的每一個值。3、用MATLAB作伯德圖控制系統(tǒng)工具箱里提供的bode()函數(shù)可以直接求取、繪制給定線性系統(tǒng)的伯德圖。當命令不包含左端返回變量時,函數(shù)運行后會在屏幕上直接畫出伯德圖。如果命令表達式的左端含有返回變量,bode()函數(shù)計算出的幅值和相角將返回到相應的矩陣中,這時屏幕上不顯示頻率響應圖。命令的調用格式為: mag,phase,w=bode(num,den) (57) mag,phase,w=bode(num,den,w) (58)或 mag,p

40、hase,w=bode(G) (59) mag,phase,w=bode(G,w) (60) 矩陣mag、phase包含系統(tǒng)頻率響應的幅值和相角,這些幅值和相角是在用戶指定的頻率點上計算得到的。用戶如果不指定頻率w,MATLAB會自動產(chǎn)生w向量,并根據(jù)w向量上各點計算幅值和相角。這時的相角是以度來表示的,幅值為增益值,在畫伯德圖時要轉換成分貝值,因為分貝是作幅頻圖時常用單位??梢杂梢韵旅畎逊缔D變成分貝:magdb=20log10(mag) (61)繪圖時的橫坐標是以對數(shù)分度的。為了指定頻率的范圍,可采用以下命令格式:logspace(d1,d2) (62) 或logspace(d1,d2,

41、n) (63)公式(62)是在指定頻率范圍內按對數(shù)距離分成50等分的,即在兩個十進制數(shù)和之間產(chǎn)生一個由50個點組成的分量,向量中的點數(shù)50是一個默認值。例如要在弧度/秒與弧度/秒之間的頻區(qū)畫伯德圖,則輸入命令時,,在此頻區(qū)自動按對數(shù)距離等分成50個頻率點,返回到工作空間中,即w=logspace(-1,2)要對計算點數(shù)進行人工設定,則采用公式(63)。例如,要在與之間產(chǎn)生100個對數(shù)等分點,可輸入以下命令:w=logspace(0,3,100)在畫伯德圖時,利用以上各式產(chǎn)生的頻率向量w,可以很方便地畫出希望頻率的伯德圖。由于伯德圖是半對數(shù)坐標圖且幅頻圖和相頻圖要同時在一個繪圖窗口中繪制,因此,要用到半對數(shù)坐標繪圖函數(shù)和子圖命令。(1) 對數(shù)坐標繪圖函數(shù)利用工作空間中的向量x,y繪圖,要調用plot函數(shù),若要繪制對數(shù)或半對數(shù)坐標圖,只需要用相應函數(shù)名取代plot即可,其余參數(shù)應用與plot完全一致。命令公式有:semilogx(x,y,s) (64)上式表示只對x軸進行對數(shù)變換,y軸仍為線性坐標。semilogy(x,y,s) (65)上式是y軸取對數(shù)變換的半對數(shù)坐標圖。Loglog(x,y,s) (66)上式是全對數(shù)坐標圖,即x軸和y 軸均

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論