版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,1,多分支判斷語(yǔ)句switch-case作用:多分支判斷選擇。 一般表達(dá)形式:switch選擇判斷量case 選擇判斷值1 選擇判斷語(yǔ)句1case 選擇判斷值2 選擇判斷語(yǔ)句2otherwise 判斷執(zhí)行語(yǔ)句end 注意:當(dāng)其中一個(gè)case語(yǔ)句后的條件為真時(shí),switch-case語(yǔ)句不對(duì)其后的case語(yǔ)句進(jìn)行判斷。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,2,例如:利用switch_case語(yǔ)句編寫(xiě)判斷季節(jié)的函數(shù)文件。function demo_switch_case(month) switch month case 3,4,5 season=spring cas
2、e 6,7,8 season=summer case 9,10,11 season=autumn otherwise season=winter end將該函數(shù)文件以demo_switch_case.m為文件名保存后,在命令窗口輸入“demo_switch_case(1)”,可調(diào)用該函數(shù)文件,返回結(jié)果為:season = winter。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,3,人機(jī)交互命令 作用:在執(zhí)行 MATLAB 主程序文件時(shí),在適當(dāng)?shù)牡胤綄?duì)程序的運(yùn)行進(jìn)行觀察或干預(yù)。 重要性:在調(diào)試程序的時(shí)候,人機(jī)交互命令更是不可缺少。 MATLAB 語(yǔ)言提供的基本人機(jī)交互命令有 :echo、input、p
3、ause 和 keyboard 四種。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,4,echo 命令作用:使M文件的命令在執(zhí)行時(shí)可見(jiàn),有利于程序的調(diào)試和演示。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,5,input命令input 命令用來(lái)提示用戶從鍵盤(pán)輸入數(shù)據(jù)、字符串或表達(dá)式,并接收輸入值。,例:R = input(How many apples),pause 命令 作用:使程序暫時(shí)終止執(zhí)行,等待用戶按任意鍵后繼續(xù)執(zhí)行基本調(diào)用格式: pause %暫停程序等待回應(yīng)。 pause (n) %在程序運(yùn)行中等待 n秒后繼續(xù)運(yùn)行。 pause on%顯示其后的 pause 命令,并且執(zhí)行 pause 命令。 pau
4、se off%顯示其后的 pause 命令,但不執(zhí)行該命令。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,6,keyboard命令 keyboard命令與input命令的作用相似。當(dāng)程序遇到此命令時(shí),MATLAB就將暫時(shí)停止運(yùn)行程序,處于等待鍵盤(pán)輸入狀態(tài)且在屏幕上顯示字符 K。鍵盤(pán)處理完畢后,輸入字符串return,程序?qū)⒗^續(xù)執(zhí)行。在M文件中使用該命令,對(duì)于程序的調(diào)試和在程序運(yùn)行中修改變量都很方便。,例如:disp( please input a month: ) % 顯示提示信息keyboard% 控制權(quán)交給鍵盤(pán)demo_switch_case (ans)輸入數(shù)字(例如3)回車(chē),繼續(xù)在命令行輸入“re
5、turn”,控制權(quán)返回給MATLAB,即可顯示3月是春天。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,7,程序調(diào)試與診斷 MATLAB程序出錯(cuò)時(shí)的基本處理方法 語(yǔ)法格式錯(cuò)誤 如缺“(”或“)”等,在運(yùn)行時(shí)可檢測(cè)出大多數(shù)該類(lèi)錯(cuò)誤,并指出錯(cuò)在哪一行。 算法邏輯錯(cuò)誤 這樣的錯(cuò)誤非常隱蔽,往往是對(duì)算法考慮不周全,程序可以順利通過(guò),顯示的結(jié)果也是正常的數(shù)值,但是與先驗(yàn)的預(yù)期不符合。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,8,注意:在包含函數(shù)調(diào)用的 MATLAB 程序運(yùn)行時(shí),當(dāng)發(fā)生運(yùn)行錯(cuò)誤時(shí),不會(huì)顯示出錯(cuò)信息,又無(wú)法檢測(cè)各個(gè)局部變量。應(yīng)采用調(diào)試技術(shù)來(lái)查找問(wèn)題。,(1)在可能發(fā)生錯(cuò)誤的 M 文件中,刪去某些語(yǔ)句行末的分
6、號(hào),使顯示其運(yùn)行中間結(jié)果,從中可發(fā)現(xiàn)一些問(wèn)題; (2)在 M 文件的適當(dāng)位置上加上keyboard命令,使在執(zhí)行時(shí)在此暫停,從而檢查局部工作空間中變量的內(nèi)容,從中找到出錯(cuò)的線索,利用 return 命令可恢復(fù)程序的執(zhí)行; (3)注釋掉 M 函數(shù)文件的函數(shù)定義行,使函數(shù)文件轉(zhuǎn)變成腳本文件; (4)使用MATLAB調(diào)試器,設(shè)置斷點(diǎn),或單步執(zhí)行。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,9,MATLAB的代碼編輯調(diào)試器MATLAB的代碼編輯調(diào)試器是一個(gè)綜合了代碼編寫(xiě)與調(diào)試的集成開(kāi)發(fā)環(huán)境。MATLAB代碼調(diào)試過(guò)程主要是通過(guò)調(diào)試器菜單Debug下的各子項(xiàng)進(jìn)行的。調(diào)試選項(xiàng)及其功能見(jiàn)表1-3。,M文件調(diào)試器Deb
7、ug菜單,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,10,表1-3 調(diào)試選項(xiàng)及其功能,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,11,Set/Clear Breakpoint: 設(shè)置或清除斷點(diǎn)。 1、可以選擇該選項(xiàng)對(duì)當(dāng)前行進(jìn)行操作; 2、通過(guò)快捷鍵F12; 3、直接點(diǎn)擊該行左側(cè)的“-”。 注:設(shè)置斷點(diǎn)時(shí)該處顯示為紅點(diǎn)。再次進(jìn)行相同的操作則刪除該斷點(diǎn)。 例子:tiyidianba,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,12,Set/Modify Conditional Breakpoint:該選項(xiàng)用于設(shè)置或修改條件斷點(diǎn)。 條件斷點(diǎn)為一種特殊的斷點(diǎn),當(dāng)滿足指定的條件時(shí)則程序執(zhí)行至此時(shí)停止,否則程序繼續(xù)進(jìn)行。其設(shè)置界面
8、如圖1-12所示,在輸入框中輸入斷點(diǎn)條件則將當(dāng)前行設(shè)置為條件斷點(diǎn)。此時(shí)設(shè)置的斷點(diǎn)處顯示為黃色。例子:tiyidianba,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,13,Enable/Disable Breakpoint:開(kāi)啟或關(guān)閉當(dāng)前行的斷點(diǎn),如果當(dāng)前行不存在斷點(diǎn),則設(shè)置當(dāng)前行為斷點(diǎn);如果當(dāng)前行是斷點(diǎn),則改變?cè)摂帱c(diǎn)的狀態(tài)。在調(diào)試時(shí),被關(guān)閉的斷點(diǎn)將會(huì)被忽略。例子:tiyidianba,在程序調(diào)試中,變量的值是查找錯(cuò)誤的重要線索,在MATLAB中查看變量的值可以有三種方法:(1)在編輯器中將鼠標(biāo)放置在待查看的變量處,停留,則在此處顯示該變量的值;(2)在工作空間中查看該變量的值;(3)在命令窗口中輸入變
9、量名,則顯示該變量的值。,以上介紹了程序調(diào)試的方法和工具,在真正編寫(xiě)程序時(shí),需要根據(jù)不同的情況靈活應(yīng)用這些功能,達(dá)到最高的調(diào)試效率。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,14,本章小結(jié) 簡(jiǎn)要介紹了控制系統(tǒng)仿真的基本概念及仿真工具M(jìn)ATLAB的語(yǔ)言特點(diǎn);(1.1) 詳細(xì)講述了在系統(tǒng)仿真過(guò)程中可能用到的MATLAB基本功能,從數(shù)值計(jì)算功能入手,介紹了MATLAB中的數(shù)組、矩陣、繪圖、函數(shù)、M文件及編程控制等基礎(chǔ)知識(shí)。 希望通過(guò)本章的學(xué)習(xí)能夠掌握MATLAB的基本用法,為后續(xù)利用MATLAB進(jìn)行仿真打下基礎(chǔ)。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,15,習(xí)題:1. 查看MATLAB的目錄結(jié)構(gòu),并檢查計(jì)算機(jī)
10、中安裝了 哪些MATLAB工具箱。2. 使用help命令查找函數(shù)plot和plot3的幫助信息。3. 已知矩陣A為四階魔方矩陣,矩陣B =1 2 3 4;3 4 5 6;5 6 7 8;7 8 9 0,求矩陣A和矩陣B的矩陣乘積和數(shù) 組乘積。 %magic(4) 4. 用符號(hào)計(jì)算驗(yàn)證三角等式。 % expand(),syms x y;expand(sin(x-y),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,16,5. 求f = sin(x)2的導(dǎo)數(shù),求 f = sin(x)2 + cos(y)2對(duì)y 的導(dǎo)數(shù)。 % diff() 6. 求積分 。%int(f,t,a,b) 7. 解方程x3-6*x2+1
11、1*x-5=1 。%solve()8. 繪圖:f = (x2 + y2)4 - (x2 - y2)2, 其中1 x 1。9. 編程求12+22+32+.+1002,并計(jì)算運(yùn)算時(shí)間。 %(tic toc)10. Fibonacci數(shù)組的元素滿足規(guī)則:(k=1,2,), ;且 。試編程求該數(shù)組中 第一個(gè)大于10000的元素及序號(hào)。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,17,6. syms tao omiga t A;int(A*exp(-i*omiga*t),t,-tao/2,tao/2) 8. x=-1:0.01:1; y=x; X,Y=meshgrid(x,y); F=(X.2+Y.2).4-(
12、X.2-Y.2).2; mesh(X,Y,F); xlabel(x);ylabel(y);title(f的圖像) 9. tic a(1)=12; sum(1)=a(1); for i=2:100 a(i)=i2; sum(i)=sum(i-1)+a(i); end sum_100=sum(100) toc,10. a(1)=1;a(2)=1; for i=3:50 a(i)=a(i-1)+a(i-2); if a(i)10000 element=a(i) order=i break end end,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,控制系統(tǒng)仿真與CAD,第2章 控制系統(tǒng)的數(shù)學(xué)描述 河南工業(yè)大學(xué)
13、 電氣工程學(xué)院 閆晶晶,19,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,系統(tǒng)的數(shù)學(xué)模型,系統(tǒng)數(shù)學(xué)模型的重要性 系統(tǒng)仿真分析必須已知數(shù)學(xué)模型 系統(tǒng)設(shè)計(jì)必須已知數(shù)學(xué)模型 數(shù)學(xué)模型是本課程的基礎(chǔ) 系統(tǒng)數(shù)學(xué)模型的獲取 建模方法:從已知的物理規(guī)律出發(fā),用數(shù)學(xué) 推導(dǎo)的方法建立起系統(tǒng)的數(shù)學(xué)模型 辨識(shí)方法:由實(shí)驗(yàn)數(shù)據(jù)擬合系統(tǒng)的數(shù)學(xué)模型,20,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,第2章 控制系統(tǒng)的數(shù)學(xué)描述,2.1 控制系統(tǒng)數(shù)學(xué)模型與控制工具箱函數(shù) 2.1.1 傳遞函數(shù)模型 2.1.2 狀態(tài)空間模型 2.2 控制系統(tǒng)模型的轉(zhuǎn)換及連接 2.2.1 模型轉(zhuǎn)換函數(shù) 2.2.2 模型連接與化簡(jiǎn) 2.3 控制系統(tǒng)建模工程實(shí)例,MAT
14、LAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,21,2.1.1 傳遞函數(shù)模型,主要內(nèi)容:介紹一下如何把經(jīng)典控制里最常用的傳遞函數(shù)模型輸入給計(jì)算機(jī)。 線性系統(tǒng)通常是以線性常微分方程來(lái)描述:,2.1 控制系統(tǒng)數(shù)學(xué)模型與控制工具箱函數(shù),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,22,傳遞函數(shù)的理論基礎(chǔ) Laplace變換,Pierre-Simon Laplace (1749-1827),法國(guó)數(shù)學(xué)家 Laplace變換,t域s域,定義:,Laplace變換的一條重要性質(zhì): 若,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,23,傳遞函數(shù)模型 傳遞函數(shù)即放大倍數(shù)G(s)=Y(s)/U(s) 在零初始條件下,線性常微分方程經(jīng)Laplace變換
15、后,即為線性系統(tǒng)的傳遞函數(shù)模型: 對(duì)線性定常系統(tǒng),式中s的系數(shù)均為常數(shù),且不等于零,這時(shí)系統(tǒng)在MATLAB中可以方便地由分子(numerator)和分母(denominator)系數(shù)構(gòu)成的向量組唯一地確定出來(lái)。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,24,在MATLAB中,傳遞函數(shù)的分子、分母分別用num和den表示,表達(dá)方式為:num=b0,b1,b(m-1),bmden=a0,a1,a(n-1),an其中:它們都是按s的降冪進(jìn)行排列的,缺項(xiàng)補(bǔ)零。如果ai,bi都為常數(shù),這樣的系統(tǒng)又稱為線性時(shí)不變系統(tǒng)(Linear Time-invariant systems ,簡(jiǎn)稱LTI);系統(tǒng)的分母多項(xiàng)式稱
16、為系統(tǒng)的特征多項(xiàng)式。對(duì)物理可實(shí)現(xiàn)系統(tǒng)來(lái)說(shuō),一定要滿足mn。 對(duì)于離散時(shí)間系統(tǒng),其單輸入單輸出系統(tǒng)的LTI系統(tǒng)差分方程為:,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,25,對(duì)應(yīng)的脈沖傳遞函數(shù)為: 用不同向量分別表示分子和分母多項(xiàng)式,就可以利用控制系統(tǒng)工具箱的函數(shù)表示傳遞函數(shù)變量G:num=b0,b1,b(m-1),bmden=a0,a1,a(n-1),an 在MATLAB中,不論是連續(xù)還是離散時(shí)間系統(tǒng),都用函數(shù)命令tf( )來(lái)建立控制系統(tǒng)的傳遞函數(shù)模型,還可以將零極點(diǎn)模型或者狀態(tài)空間模型轉(zhuǎn)換為傳遞函數(shù)模型。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,26,表2-1 tf( )函數(shù)的具體用法見(jiàn)下表,MATLAB語(yǔ)
17、言與應(yīng)用語(yǔ)言與應(yīng)用,27,例2-1 將已知系統(tǒng)的傳遞函數(shù)模型 輸入到MATLAB工作空間中。解:方法一:在MATLAB命令窗口中輸入:num=1 1; %分子多項(xiàng)式向量den=1 3 2 0; %分母多項(xiàng)式向量G=tf(num,den) %系統(tǒng)傳遞函數(shù)模型執(zhí)行后結(jié)果如下:Transfer function: s + 1-s3 + 3 s2 + 2 s,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,28,方法二:在MATLAB命令窗口中輸入:s=tf( s ) %定義Laplace算子符號(hào)變量G=(s+1)/( s3 + 3 *s2 + 2*s) %直接給出系統(tǒng)傳遞函數(shù)表達(dá)式執(zhí)行后結(jié)果如下:Transfer
18、 function: s + 1-s3 + 3 s2 + 2 s,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,29,例2-2 已知傳遞函數(shù)模型 ,將其輸入到MATLAB工作空間中。解:方法一:在MATLAB命令窗口中輸入:num=conv(10,2 1); %分子向量多項(xiàng)式den=conv(1 0 0,1 7 13); %分母向量多項(xiàng)式G=tf(num,den) %系統(tǒng)傳遞函數(shù)模型執(zhí)行后結(jié)果如下:Transfer function: 20 s + 10-s4 + 7 s3 + 13 s2,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,30,方法二:在MATLAB命令窗口中輸入:s=tf(s); %定義Laplace
19、算子符號(hào)變量G=10*(2*s+1)/(s2* (s2+7*s+13) %直接給出系統(tǒng)傳遞函數(shù)表達(dá)式執(zhí)行后結(jié)果如下:Transfer function: 20 s + 10-s4 + 7 s3 + 13 s2,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,31,例2-3 RLC電路如圖2-1所示,試建立以電容上電壓Uc(t)為輸出變量,輸入電壓Ur(t)為輸入變量的運(yùn)動(dòng)方程;如果R=1.6,L=1.0H,C=0.40F時(shí),建立其傳遞函數(shù)模型。 解:第一步:建立系統(tǒng)的微分方程。設(shè)回路電流為i(t),根據(jù)基爾霍夫電壓定律、電流定律得到系統(tǒng)的回路方程為: (2-6) (2-7)將(2-7)代入(2-6),消去中
20、間變量i(t),得到描述RLC網(wǎng)絡(luò)輸入輸出關(guān)系的微分方程為:,(2-8),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,32,第二步:根據(jù)微分方程寫(xiě)出傳遞函數(shù)。 在零初始條件下,對(duì)上述方程中各項(xiàng)求拉氏變換,并令 , ,可得s的代數(shù)方程為: 由傳遞函數(shù)定義,得系統(tǒng)傳遞函數(shù)為: 將R=1.6,L=1.0H,C=0.40F代入(2-10)得:,(2-9),(2-10),(2-11),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,33,第三步:將系統(tǒng)模型輸入到MATLAB工作空間中。程序如下:clearclcs=tf(s) ; %定義Laplace算子符號(hào)變量G=25/(10* s2 + 16 *s + 25) %直接給出系
21、統(tǒng)傳遞函數(shù)表達(dá)式程序運(yùn)行結(jié)果為:Transfer function: 25-10 s2 + 16 s + 25,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,34,例2-4 某一以微分方程描述系統(tǒng)的傳遞函數(shù),其微分方程描述如下: 試使用MATLAB建立其模型。解:首先求取系統(tǒng)傳遞函數(shù)。在零初始條件下,對(duì)微分方程兩邊取Laplace變換,可得系統(tǒng)傳遞函數(shù): 然后建立系統(tǒng)模型,MATLAB程序如下:num=1 0 6; %分子多項(xiàng)式系數(shù)行向量den=1 6 11 6; %分母多項(xiàng)式系數(shù)行向量G=tf(num,den) %建立傳遞函數(shù)模型程序運(yùn)行結(jié)果如下:Transfer function: s2 + 6-s3
22、 + 6 s2 + 11 s + 6,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,35,例2-5 已知傳遞函數(shù)的分子為(s+1),分母項(xiàng)為(s3+4s2 +2s+6),時(shí)滯是2,試建立系統(tǒng)的傳遞函數(shù)模型。 解:方法一,由于系統(tǒng)有時(shí)滯項(xiàng),除了設(shè)置分子項(xiàng)num和分母項(xiàng)den外,還要在tf( )函數(shù)中設(shè)置輸入傳輸延時(shí)iodelay的屬性,其值賦給變量dt,程序如下: num=1 1; den=1 4 2 6; dt=2; G=tf(num,den,iodelay,dt) 程序運(yùn)行結(jié)果為: Transfer function: s + 1 exp(-2*s) * - s3 + 4 s2 + 2 s + 6,MA
23、TLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,36,方法二,也可以采用Laplace算子的符號(hào)變量直接建立傳遞函數(shù)模型,程序?yàn)椋簊=tf(s);G=(s+1)/(s3+4*s2+2*s+6);set(G,iodelay,2);G程序運(yùn)行后結(jié)果與方法一相同。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,37,零極點(diǎn)增益模型實(shí)質(zhì):零極點(diǎn)增益模型實(shí)際上是傳遞函數(shù)模型的另一種表現(xiàn)形式。 原理:分別對(duì)原系統(tǒng)傳遞函數(shù)的分子、分母進(jìn)行因式分解處理,獲得系統(tǒng)的零點(diǎn)和極點(diǎn)的表示形式。 其中:K為系統(tǒng)增益,zi(i=1,2,m)為零點(diǎn),pj(j=1,2,n)為極點(diǎn)。 注:對(duì)系數(shù)為實(shí)數(shù)的傳遞函數(shù)模型來(lái)說(shuō),系統(tǒng)的零極點(diǎn)或者為實(shí)數(shù),或者以共軛復(fù)
24、數(shù)的形式出現(xiàn)。,(2-12),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,38,離散系統(tǒng)的傳遞函數(shù)也可表示為零極點(diǎn)增益模式: 在MATLAB中零極點(diǎn)增益模型用z,p,k矢量組表示。即:z=z1,z2,zmp=p1,p2,.,pnk=K調(diào)用zpk( )函數(shù)就可以輸入這個(gè)零極點(diǎn)增益模型,還可以將傳遞函數(shù)模型或者狀態(tài)空間模型轉(zhuǎn)換為零極點(diǎn)增益模型,具體用法如表2-2所示。,(2-13),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,39,表2-2 zpk函數(shù)的具體用法,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,40,例2-6 雙T網(wǎng)絡(luò)如圖2-2所示,試求以Uc為輸出,Ur為輸入的傳遞函數(shù)和零極點(diǎn)增益模型。其中R1=40,R2=80
25、,C1=100F,C2=50F。 解:首先,根據(jù)基爾霍夫電壓 定律、電流定律建立各元件的 微分方程。方程如下: (2-14),圖2-2 雙T網(wǎng)絡(luò),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,41,再求取系統(tǒng)傳遞函數(shù)。將(2-14)中各元件的微分方程進(jìn)行拉氏變換,并改寫(xiě)成以下形式: 消去中間變量I1(s)和I2(s),得到系統(tǒng)的傳遞函數(shù)為:,(2-15),(2-16),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,42,將R1=40,R2=80,C1=100F,C2=50F代入上式,可得系統(tǒng)的傳遞函數(shù)為:最后,編寫(xiě)MATLAB程序。程序如下:num=1;den=16 10 1;G=tf(num,den)G1=zpk(
26、G)運(yùn)行后,獲得系統(tǒng)的傳遞函數(shù)和零極點(diǎn)增益模型,結(jié)果為:Transfer function: 1-16 s2 + 10 s + 1Zero/pole/gain: 0.0625-(s+0.5) (s+0.125),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,43,例2-7 已知系統(tǒng)的傳遞函數(shù)為 , 將零極點(diǎn)增益模型輸入MATLAB工作空間。解:在MATLAB的命令窗口輸入:z1=-5;-5; %零點(diǎn)向量p1=-1;-2;-2-2*j;-2+2*j; %極點(diǎn)向量k=4; %增益向量G1=zpk(z1,p1,k) %得到系統(tǒng)零極點(diǎn)增益模型則執(zhí)行后得到如下結(jié)果:Zero/pole/gain: 4 (s+5)2-
27、(s+1) (s+2) (s2+ 4s + 8),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,44,例2-8 已知系統(tǒng)的傳遞函數(shù)為: ,求系統(tǒng) 的零極點(diǎn)向量和增益值,并繪制系統(tǒng)零極點(diǎn)分布圖。解:在MATLAB的命令窗口輸入:s=zpk( s ); %定義算子G=4*(s+5)/(s+1)/(s+2)/(s+6) %直接得到系統(tǒng)模型z,p,k=zpkdata(G, v ) %得到系統(tǒng)零極點(diǎn)向量和增益值pzmap(G) %繪制系統(tǒng)零極點(diǎn)分布圖則執(zhí)行后得到的系統(tǒng)傳遞函數(shù)及零極點(diǎn)向量和增益值:Zero/pole/gain: 4 (s+5)-(s+1) (s+2) (s+6)z = -5p = -1 -2 -6k
28、 = 4 系統(tǒng)的零極點(diǎn)分布圖,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,45,部分分式模型優(yōu)點(diǎn):方便應(yīng)用Laplace反變換求系統(tǒng)的輸出響應(yīng)。函數(shù):r,p,k=residue(b,a)可以求出傳遞函數(shù)的部分分式之和形式。傳遞函數(shù)的部分分式之和形式為: 注:使用函數(shù)r,p,k=residue(b,a)時(shí),余數(shù)返回到向量r,極點(diǎn)返回到列向量p,常數(shù)項(xiàng)返回到k。 另外,函數(shù)b,a=residue(r,p,k)也可以將部分分式轉(zhuǎn)化為多項(xiàng)式比p(s)/q(s)。,(2-17),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,46,例2-9 已知系統(tǒng)的傳遞函數(shù)為 ,求取系統(tǒng)的部分分式模型。解:在MATLAB命令窗口中輸入:nu
29、m=2,0,9,1; den=1,1,4,4; r,p,k=residue(num,den)則執(zhí)行后得到如下結(jié)果:r = 0.0000 - 0.2500i 0.0000 + 0.2500i -2.0000 p = -0.0000 + 2.0000i -0.0000 - 2.0000i -1.0000 k = 2根據(jù)MATLAB程序運(yùn)行結(jié)果,可寫(xiě)出系統(tǒng)的部分分式模型:,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,47,狀態(tài):系統(tǒng)中存在著若干個(gè)動(dòng)態(tài)信息,稱為狀態(tài)。狀態(tài)向量:在表征系統(tǒng)動(dòng)態(tài)信息的所有變量中,能夠完全描述系統(tǒng)運(yùn)行的最少數(shù)目的一組獨(dú)立變量(不惟一)稱為系統(tǒng)的狀態(tài)向量。n維狀態(tài)空間:以n維狀態(tài)變量為
30、基所構(gòu)成的空間稱為n維狀態(tài)空間。狀態(tài)空間模型:由狀態(tài)向量所表征的模型便是狀態(tài)空間模型。,2.1.2 狀態(tài)空間模型,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,48,任何系統(tǒng)都可以用狀態(tài)空間表達(dá)式來(lái)進(jìn)行數(shù)學(xué)描述,狀態(tài)空間表達(dá)式(又稱為動(dòng)態(tài)方程),由狀態(tài)方程與輸出方程組成,揭示了系統(tǒng)內(nèi)部狀態(tài)對(duì)系統(tǒng)性能的影響。具有n個(gè)狀態(tài)、m個(gè)輸入和p個(gè)輸出的線性時(shí)不變系統(tǒng),狀態(tài)空間模型即狀態(tài)空間表達(dá)式為: 離散系統(tǒng)的狀態(tài)空間模型為:,(2-18),(2-19),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,49,函數(shù)ss( )可用來(lái)建立控制系統(tǒng)的狀態(tài)空間模型,連續(xù)和離散系統(tǒng)的狀態(tài)空間模型建立有所區(qū)別,具體用法如表2-3 另外,要得到狀
31、態(tài)空間模型,還可以從傳遞函數(shù)模型或者零極點(diǎn)模型轉(zhuǎn)換過(guò)來(lái)。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,50,例2-10 RLC無(wú)源網(wǎng)絡(luò)如圖2-1所示,ur(t)為輸入,uc(t)為輸出,若選擇i(t), uc(t)為狀態(tài)變量,試建立系統(tǒng)的狀態(tài)空間模型,并用MATLAB實(shí)現(xiàn)。 解:第一步:求取系統(tǒng)的狀態(tài) 空間模型。由圖2-1可列系統(tǒng) 微分方程:,(2-20),(2-21),(2-22),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,51,寫(xiě)成矩陣形式: 若選擇 , ,則系統(tǒng)的狀態(tài)空間模型為:,(2-23),(2-24),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,52,其中: 將R=1.6,L=1.0H,C=0.40F代入得:
32、 則系統(tǒng)的狀態(tài)空間模型為:,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,53,第二步:MATLAB實(shí)現(xiàn)。在MATLAB命令窗口中輸入:A=-16 -1;25 0; %給狀態(tài)矩陣A賦值B=1;0; %給輸入矩陣B賦值C=0 1; %給輸出矩陣C賦值D=0; %給前饋矩陣D賦值G=ss(A,B,C,D) %輸入并顯示系統(tǒng)狀態(tài)空間模型執(zhí)行后得到如下結(jié)果:a = b= x1 x2 u1 x1 -16 -1 x1 1 x2 25 0 x2 0 c = d= x1 x2 u1 y1 0 1 y1 0Continuous-time model.,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,54,例2-11 將如下系統(tǒng)的狀態(tài)空間
33、模型輸入到MATLAB工作空間中。 解:在MATLAB命令窗口中輸入:A=6 5 4;1 0 0;0 1 0; B=1;0;0; C=0 6 7; D=0; G=ss(A,B,C,D) %輸入并顯示系統(tǒng)狀態(tài)空間模型,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,55,則執(zhí)行后得到如下結(jié)果:a = x1 x2 x3 x1 6 5 4 x2 1 0 0 x3 0 1 0b = u1 x1 1 x2 0 x3 0c = x1 x2 x3 y1 0 6 7d = u1 y1 0Continuous-time model.,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,56,例2-12 將如下一個(gè)兩輸入兩輸出系統(tǒng)的狀態(tài)空間模型
34、輸入到MATLAB工作空間中,并求其系統(tǒng)參數(shù)。 , 解:首先,在MATLAB命令窗口中輸入以下程序,將狀態(tài)空間模型輸入到MATLAB工作空間:A=1 6 9 10; 3 12 6 8; 4 7 9 11; 5 12 13 14;B=4 6; 2 4; 2 2; 1 0; C=0 0 2 1; 8 0 2 2; D=zeros(2,2); %D為一個(gè)22的零方陣Gss=ss(A,B,C,D) %得到系統(tǒng)狀態(tài)空間模型,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,57,程序執(zhí)行后結(jié)果如下:a = x1 x2 x3 x4 x1 1 6 9 10 x2 3 12 6 8 x3 4 7 9 11 x4 5 12 1
35、3 14 b = u1 u2 x1 4 6 x2 2 4 x3 2 2 x4 1 0 c = x1 x2 x3 x4 y1 0 0 2 1 y2 8 0 2 2d = u1 u2 y1 0 0 y2 0 0 Continuous-time model.,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,58,然后在MATLAB命令窗口輸入以下語(yǔ)句,可獲取系統(tǒng)模型參數(shù) A,B,C,D=ssdata(Gss) 執(zhí)行后結(jié)果如下:A = 1 6 9 10 3 12 6 8 4 7 9 11 5 12 13 14B = 4 6 2 4 2 2 1 0C = 0 0 2 1 8 0 2 2D = 0 0 0 0,MATL
36、AB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,59,在MATLAB命令窗口中輸入以下語(yǔ)句可得所有參數(shù)的屬性值:get(Gss) 執(zhí)行后結(jié)果如下: a: 4x4 double b: 4x2 double c: 2x4 double d: 2x2 double e: StateName: 4x1 cell InternalDelay: 0 x1 double Ts: 0 InputDelay: 2x1 double OutputDelay: 2x1 double InputName: 2x1 cell OutputName: 2x1 cell InputGroup: 1x1 struct OutputGroup: 1
37、x1 struct Name: Notes: UserData: ,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,60,2.2 控制系統(tǒng)模型的轉(zhuǎn)換及連接2.2.1 模型轉(zhuǎn)換函數(shù),控制系統(tǒng)的模型表示:傳遞函數(shù)模型、零極點(diǎn)模型和狀態(tài)空間模型,這三種模型之間也可以進(jìn)行相互轉(zhuǎn)換。 模型轉(zhuǎn)換的函數(shù):ss2tf、ss2zp、tf2ss、tf2zp、zp2ss、zp2tf。它們的關(guān)系可用圖2-4所示的結(jié)構(gòu)來(lái)表示,,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,61,表2-4 數(shù)學(xué)模型轉(zhuǎn)換函數(shù)及其功能,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,62,例2-13 已知系統(tǒng)傳遞函數(shù)為 ,試求其零極點(diǎn)增益模型及狀態(tài)空間模型。 解:在MATLAB命
38、令窗口中輸入:num=9;den=conv(1 3,1 4 4);Gtf=tf(num,den);Gzpk=zpk(Gtf)Gss=ss(Gtf),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,63,執(zhí)行后結(jié)果如下: Transfer function: 9-s3 + 7 s2 + 16 s + 12Zero/pole/gain: 9-(s+3) (s+2)2a = x1 x2 x3 x1 -7 -4 -1.5 x2 4 0 0 x3 0 2 0b = u1 x1 1 x2 0 x3 0c = x1 x2 x3 y1 0 0 1.125d = u1 y1 0Continuous-time model.,M
39、ATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,64,例2-14 已知某系統(tǒng)的零極點(diǎn)增益模型為: 求其傳遞函數(shù)模型及狀態(tài)空間模型。 解:在MATLAB命令窗口中輸入:z=-1;-2; %零點(diǎn)向量p=-3 -5; %極點(diǎn)向量k=3; %增益Gzpk=zpk(z,p,k) %零極點(diǎn)模型a,b,c,d=zp2ss(z,p,k) %將零極點(diǎn)模型轉(zhuǎn)換為狀態(tài)空間模型num,den=zp2tf(z,p,k) %由零極點(diǎn)模型得到傳遞函數(shù)的分子和分母向量,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,65,執(zhí)行后結(jié)果如下:Zero/pole/gain:3 (s+1) (s+2)- (s+3) (s+5)a = -8.0000 -3.873
40、0 3.8730 0b = 1 0c = -15.0000 -10.0698d = 3num = 3 9 6den = 1 8 15,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,66,例2-15 將雙輸入單輸出的系統(tǒng)模型轉(zhuǎn)換為多項(xiàng)式傳遞函數(shù)模型。解:在MATLAB命令窗口中輸入:a=0 1;-3 -2;b=1 0;0 1;c=1 0;d=0 0;num,den=ss2tf(a,b,c,d,1)num2,den2=ss2tf(a,b,c,d,2)Gss=ss(a,b,c,d);Gtf=tf(Gss),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,67,執(zhí)行后得到如下結(jié)果:num = 0 1.0000 2.0000de
41、n = 1.0000 2.0000 3.0000num2 = 0 0 1.0000den2 = 1.0000 2.0000 3.0000Transfer function from input 1 to output: s + 2-s2 + 2 s + 3Transfer function from input 2 to output: 1-s2 + 2 s + 3,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,68,例2-16 造紙工業(yè)中的一加壓液流箱系統(tǒng)。該系統(tǒng)的狀態(tài)變量是箱中的液位h(t)與料漿的總壓頭H(t),輸入變量是料漿流入量u1(t)與空氣流入量u2(t),輸出變量是狀態(tài)變量H(t)與h(t
42、)的和。系統(tǒng)狀態(tài)空間模型為:試求系統(tǒng)的狀態(tài)空間模型、傳遞函數(shù)模型及零極點(diǎn)增益模型。解:由系統(tǒng)的狀態(tài)空間模型,編寫(xiě)如下MATLAB程序:a=-0.5620 0.05114;-0.254 0;b=0.03247 1.145;0.112541 0;c=1 1;d=0 0;G=ss(a,b,c,d),G1=tf(G), G2=zpk(G),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,69,運(yùn)行后結(jié)果如下:a = x1 x2 x1 -0.562 0.05114 x2 -0.254 0 b = u1 u2 x1 0.03247 1.145 x2 0.1125 0 c = x1 x2 y1 1 1 d = u1 u2
43、 y1 0 0 Continuous-time model.,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,70,Transfer function from input 1 to output: % 系統(tǒng)從u1到y(tǒng)的傳遞函數(shù)模型 0.145 s + 0.06076-s2 + 0.562 s + 0.01299Transfer function from input 2 to output: % 系統(tǒng)從u2到y(tǒng)的傳遞函數(shù)模型 1.145 s - 0.2908-s2 + 0.562 s + 0.01299Zero/pole/gain from input 1 to output: % 系統(tǒng)從u1到y(tǒng)的零極點(diǎn)
44、增益模型 0.14501 (s+0.419)-(s+0.5378) (s+0.02415)Zero/pole/gain from input 2 to output: % 系統(tǒng)從u2到y(tǒng)的零極點(diǎn)增益模型 1.145 (s-0.254)-(s+0.5378) (s+0.02415),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,71,模型間的基本連接方式主要有:串聯(lián)連接:series() 并聯(lián)連接:parallel()反饋連接:feedback(),2.2.2 模型連接與化簡(jiǎn),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,72,若控制系統(tǒng)由幾個(gè)環(huán)節(jié)串聯(lián)而成,即環(huán)節(jié)按照信號(hào)傳遞的方向串聯(lián)在一起(如圖2-5所示),并且各環(huán)
45、節(jié)之間沒(méi)有負(fù)載效應(yīng)和返回影響,則系統(tǒng)可以等效為一個(gè)環(huán)節(jié),其等效傳遞函數(shù)為各環(huán)節(jié)傳遞函數(shù)的乘積,即 在MATLAB中,series( )函數(shù)可完成等效傳遞函數(shù)的求取。,圖2-5 串聯(lián)連接結(jié)構(gòu),串聯(lián)連接結(jié)構(gòu),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,73,例2-17 已知兩個(gè)系統(tǒng)的傳遞函數(shù) 和 ,求其G1(s)和G2(s)進(jìn)行串聯(lián)后的系統(tǒng)模型 解:MATLAB程序?yàn)椋簄um1=10;den1=20 1 0;num2=1 1;den2=1 6 1;num,den=series(num1,den1,num2,den2);printsys(num,den) %將系統(tǒng)模型寫(xiě)成“num/den”格式程序運(yùn)行結(jié)果為:
46、num/den = 10 s + 10 - 20 s4 + 121 s3 + 26 s2 + s,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,74,模型并聯(lián)若組成控制系統(tǒng)的環(huán)節(jié)具有相同的輸入信號(hào),且各環(huán)節(jié)輸出信號(hào)的代數(shù)和作為系統(tǒng)的輸出,則這幾個(gè)環(huán)節(jié)的連接方式為并聯(lián),如圖2-6所示,此時(shí)系統(tǒng)可等效為一個(gè)環(huán)節(jié),其等效傳遞函數(shù)為各環(huán)節(jié)傳遞函數(shù)的和,即 注:在MATLAB中,parallel( )函數(shù)可完成等效傳遞函數(shù)的求取。,圖2-6 并聯(lián)連接結(jié)構(gòu),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,75,例2-18 已知兩個(gè)系統(tǒng)的傳遞函數(shù) 和 ,求G1(s)和G2(s)進(jìn)行并聯(lián)后的系統(tǒng)模型解:MATLAB的程序?yàn)椋簄um1=
47、10;den1=20 1 0;num2=1 1;den2=1 6 1;num,den=parallel(num1,den1,num2,den2);printsys(num,den)程序運(yùn)行結(jié)果為:num/den = 20 s3 + 31 s2 + 61 s + 10 - 20 s4 + 121 s3 + 26 s2 + s,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,76,反饋連接自動(dòng)控制系統(tǒng)中,若兩個(gè)環(huán)節(jié)具有圖2-7所示的結(jié)構(gòu)形式,則稱為反饋聯(lián)接。對(duì)于(a)所示的正反饋系統(tǒng),其等效傳遞函數(shù)為: 對(duì)于(b)所示的負(fù)反饋系統(tǒng),其等效傳遞函數(shù)為: 注:在MATLAB中,feedback( )函數(shù)可計(jì)算閉環(huán)傳
48、遞函數(shù)。,(a)正反饋連接,(b) 負(fù)反饋連接,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,77,例2-19 已知系統(tǒng) 和 ,求G1(s)和G2(s)分別進(jìn)行串聯(lián)、并聯(lián)和反饋連接后的系統(tǒng)模型。 解:由系統(tǒng)的傳遞函數(shù)模型,編寫(xiě)MATLAB程序(程序1):num1=1 1; den1=1 4 26; G1=tf(num1,den1);num2=1; den2=1 6;G2=tf(num2,den2);Gs=series(G1,G2) , %求取G1(s)和G2(s)串聯(lián)的等效傳遞函數(shù)Gp=parallel(G1,G2), %求取G1(s)和G2(s) 并聯(lián)的等效傳遞函數(shù)Gf=feedback(G1,G2)
49、%求取負(fù)反饋的等效傳遞函數(shù),前向通道傳遞函數(shù)為G1(s),反饋通道傳遞函數(shù)為G2(s),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,78,程序1執(zhí)行后結(jié)果如下:Transfer function: %串聯(lián)等效傳遞函數(shù)為Gs=G1(s)*G2(s) s + 1-s3 + 10 s2 + 50 s + 156 Transfer function: %并聯(lián)的等效傳遞函數(shù)為Gp=G1(s)+G2(s) 2 s2 + 11 s + 32-s3 + 10 s2 + 50 s + 156 Transfer function: %反饋的等效傳遞函數(shù)為Gf =G1/(1+G1*G2) s2 + 7 s + 6-s3 +
50、10 s2 + 51 s + 157,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,79,本例還可以用如下程序(程序2)完成:num1=1 1; den1=1 4 26; G1=tf(num1,den1);num2=1; den2=1 6;G2=tf(num2,den2);Gs=G2*G1, Gp=G1+G2, Gf=G1/(1+G1*G2)程序2執(zhí)行后結(jié)果為:Transfer function: % Gs s + 1-s3 + 10 s2 + 50 s + 156 Transfer function: % Gp 2 s2 + 11 s + 32-s3 + 10 s2 + 50 s + 156 Trans
51、fer function: % Gf s4 + 11 s3 + 60 s2 + 206 s + 156-s5 + 14 s4 + 117 s3 + 621 s2 + 1954 s + 4082,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,80,注意:程序2執(zhí)行后結(jié)果的Gf與程序1的Gf表達(dá)式不同,這是因?yàn)槌绦?的Gf分子分母存在公約項(xiàng),這里可用函數(shù)Gf=minreal(Gf)來(lái)獲得系統(tǒng)的最小實(shí)現(xiàn)模型。說(shuō)明:對(duì)于反饋連接,雖然運(yùn)算式與feedback( )函數(shù)等效,但得到的系統(tǒng)階次可能高于實(shí)際系統(tǒng)階次,需通過(guò)minreal( )函數(shù)進(jìn)一步求其最小實(shí)現(xiàn)。嚴(yán)格意義上的傳遞函數(shù)定義為經(jīng)過(guò)零極點(diǎn)對(duì)消之后的輸入-輸
52、出關(guān)系,當(dāng)分子分母有公因式時(shí),必須消除。minreal( )函數(shù),即最小實(shí)現(xiàn)是一種模型的實(shí)現(xiàn),它消除了模型中過(guò)多的或不必要的狀態(tài)。對(duì)傳遞函數(shù)或零極點(diǎn)增益模型,這等價(jià)于將可彼此對(duì)消的零極點(diǎn)對(duì)進(jìn)行對(duì)消。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,81,例2-20 給定一個(gè)多回路控制系統(tǒng)的結(jié)構(gòu)方框圖如圖2-8所示,試求系統(tǒng)的傳遞函數(shù)。解:方法一:在MATLAB命令窗口中輸入:G1=tf(1,1 1);G2=tf(1,3 4 1);Gp=G1+G2;G3=tf(1,1 0);Gs=series(G3,Gp);Gc=Gs/(1+Gs);Gc1=minreal(Gc)執(zhí)行結(jié)果為:Transfer function
53、: s + 0.6667-s3 + 1.333 s2 + 1.333 s + 0.6667,圖2-8 例2-20多回路控制 系統(tǒng)的結(jié)構(gòu)框圖,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,82,方法二:新建一個(gè)空的M文件,將上述程序?qū)懺贓ditor窗口中,完成后單擊Run圖標(biāo)或選擇Debug菜單欄中Run運(yùn)行,打開(kāi)“Workspace”窗口中相應(yīng)的變量,可看到運(yùn)行結(jié)果,例如:打開(kāi)變量Gc,可看到:Transfer function: 9 s6 + 36 s5 + 56 s4 + 42 s3 + 15 s2 + 2 s-9 s8 + 42 s7 + 88 s6 + 112 s5 + 95 s4 + 52 s3
54、 + 16 s2 + 2 s打開(kāi)變量Gc1,可看到:Transfer function: s + 0.6667-s3 + 1.333 s2 + 1.333 s + 0.6667,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,83,例2-21: 組合機(jī)床動(dòng)力滑臺(tái)銑平面時(shí)的情況如圖2-9(a)所示,試分析并求該系統(tǒng)的微分方程和傳遞函數(shù)。 (a)動(dòng)力滑臺(tái) (b)動(dòng)力滑臺(tái)力學(xué)模型 圖2-9 例2-21中組合機(jī)床動(dòng)力滑臺(tái)及其力學(xué)模,2.3 控制系統(tǒng)建模工程實(shí)例,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,84,解:第一步:建立系統(tǒng)的微分方程并求取系統(tǒng)傳遞函數(shù)。任何一個(gè)機(jī)械振動(dòng)系統(tǒng)一般都是由若干具有不同彈性和質(zhì)量的元件組成。在
55、研究機(jī)械振動(dòng)時(shí),需要將實(shí)際的振動(dòng)系統(tǒng)抽象為力學(xué)模型,這是一種簡(jiǎn)化過(guò)程。,分析如圖2-9(a)所示為組合機(jī)床動(dòng)力滑臺(tái)銑平面時(shí)的情況,當(dāng)切削刀fi(t)變化時(shí),滑臺(tái)可能產(chǎn)生振動(dòng),從而降低被加工工件的表面質(zhì)量。為了分析和研究這個(gè)系統(tǒng),設(shè)動(dòng)力滑臺(tái)的質(zhì)量為m,液壓缸的剛度為k,粘性阻尼系數(shù)為c,輸入切削力為fi(t),yo (t)為輸出位移,若不計(jì)動(dòng)力滑臺(tái)與支承之間的摩擦,將動(dòng)力滑臺(tái)連同銑刀抽象成如圖2-9(b)所示的質(zhì)量彈簧阻尼系統(tǒng)的力學(xué)模型。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,85,牛頓定律、虎克定律等物理定律是建立機(jī)械系統(tǒng)數(shù)學(xué)模型的基礎(chǔ)。根據(jù)牛頓第二定律知: 可得 將輸出變量項(xiàng)寫(xiě)在等號(hào)的左邊,將輸
56、入變量項(xiàng)寫(xiě)在等號(hào)的右邊,并將各階導(dǎo)數(shù)項(xiàng)按降冪排列,得 上式就是組合機(jī)床動(dòng)力滑臺(tái)銑平面時(shí)的機(jī)械系統(tǒng)的數(shù)學(xué)模型,即動(dòng)力微分方程。,(2-26),(2-27),(2-28),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,86,第二步:根據(jù)微分方程寫(xiě)出傳遞函數(shù)。在零初始條件下,對(duì)(2-28)中各項(xiàng)求拉氏變換,并令 , , 可得s的代數(shù)方程為:由傳遞函數(shù)定義,得系統(tǒng)傳遞函數(shù)為: 若組合機(jī)床動(dòng)力滑臺(tái)中物體質(zhì)量m1kg,彈簧的虎克系數(shù)為常數(shù)k=20N/m,粘性阻尼系數(shù)也為常數(shù)c=5N/m/s;則系統(tǒng)的傳遞函數(shù)為:,(2-29),(2-30),(2-31),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,87,第三步:將系統(tǒng)模型輸入到
57、MATLAB工作空間中。程序如下:clearclcs=tf(s) ; %定義Laplace算子符號(hào)變量G=1/(s2 + 5 *s + 20) %直接給出系統(tǒng)傳遞函數(shù)表達(dá)式程序運(yùn)行結(jié)果為:Transfer function: 1-s2 + 5 s + 20,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,88,例2-22 如圖2-10 所示為電樞控制直流電動(dòng)機(jī)原理圖,圖中Ra、La分別是電樞電路的電阻和漏磁電感,Mc是折合到電動(dòng)機(jī)軸上的總負(fù)載轉(zhuǎn)矩,激磁磁通為常值,若電動(dòng)機(jī)各參數(shù)分別為Ra2.0,La0.5H,Cm=0.1,Ce=0.1,fm=0.2Nms,Jm=0.02kg.m2,分別以電動(dòng)機(jī)電樞電壓Ua(
58、t) 和負(fù)載力矩Md(t)為輸入變量,以電動(dòng)機(jī)的轉(zhuǎn)動(dòng)速度m(t)為輸出變量,在MATLAB中建立電動(dòng)機(jī)的數(shù)學(xué)模型。,圖2-10 例2-22的電樞控制直流電動(dòng)機(jī)工作原理,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,89,解: 第一步:分析系統(tǒng),繪制系統(tǒng)結(jié)構(gòu)圖。電樞控制直流電動(dòng)機(jī)的工作實(shí)質(zhì)是將輸入的電能轉(zhuǎn)換為機(jī)械能,也就是由輸入的電樞電壓Ua(t)在電樞回路中產(chǎn)生電樞電流ia(t),再由電流ia(t)與激磁磁通相互作用產(chǎn)生電磁轉(zhuǎn)矩Mm(t),從而拖動(dòng)負(fù)載運(yùn)動(dòng)。因此,根據(jù)直流電動(dòng)機(jī)的工作原理及基爾霍夫定律,直流電動(dòng)機(jī)的運(yùn)動(dòng)方程可由電樞回路電壓平衡方程、電磁轉(zhuǎn)矩方程和電動(dòng)機(jī)軸上的轉(zhuǎn)矩平衡方程三部分組成,分別如下
59、所示。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,90,(1)電樞回路電壓平衡方程: Ea 是電樞反電勢(shì),它是當(dāng)電樞旋轉(zhuǎn)時(shí)產(chǎn)生的反電勢(shì),其大小與激磁磁通及轉(zhuǎn)速成正比,方向與電樞電壓Ua(t)相反,即其中:Ce反電勢(shì)系數(shù)。(2)電磁轉(zhuǎn)矩方程: 其中:Cm是電動(dòng)機(jī)轉(zhuǎn)矩系數(shù) ,Me(t)是由電樞電流產(chǎn)生的電磁轉(zhuǎn)矩。,(2-32),(2-33),(2-34),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,91,(3)電動(dòng)機(jī)軸上的轉(zhuǎn)矩平衡方程: 式中:Jm轉(zhuǎn)動(dòng)慣量(電動(dòng)機(jī)和負(fù)載折合到電動(dòng)機(jī)軸上的),fm電動(dòng)機(jī)和負(fù)載折合到電動(dòng)機(jī)軸上的粘性摩擦系數(shù)。,(2-35),(2-36),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,92,在工程應(yīng)
60、用中,由于電樞電路電感La較小,通常忽略不計(jì),因而(2-36)可簡(jiǎn)化為: 其中,Tm為電動(dòng)機(jī)機(jī)電時(shí)間常數(shù), ; 如果電樞電阻Ra和電動(dòng)機(jī)的轉(zhuǎn)動(dòng)慣量Jm都很小而忽略不計(jì)時(shí)(2-37)還可進(jìn)一步簡(jiǎn)化為: (2-38)由于電動(dòng)機(jī)的轉(zhuǎn)速與電樞電壓成正比,于是電動(dòng)機(jī)可作為測(cè)速發(fā)電機(jī)使用。,(2-37),MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,93,圖2-11 例2-22的電樞控制直流電動(dòng)機(jī)結(jié)構(gòu)圖,根據(jù)式(2-32)(2-38),得到如圖2-11所示的電樞控制直流電動(dòng)機(jī)的結(jié)構(gòu)圖。,MATLAB語(yǔ)言與應(yīng)用語(yǔ)言與應(yīng)用,94,第二步:根據(jù)系統(tǒng)系統(tǒng)結(jié)構(gòu)圖,求取系統(tǒng)傳遞函數(shù)。若選取電動(dòng)機(jī)各參數(shù)分別為Ra2.0,La0.5
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 商丘師范學(xué)院《建筑學(xué)導(dǎo)論》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年國(guó)際債務(wù)追收代理服務(wù)合同范本3篇
- 汕頭大學(xué)《教師口語(yǔ)表達(dá)與普通話》2023-2024學(xué)年第一學(xué)期期末試卷
- 陜西職業(yè)技術(shù)學(xué)院《課外音樂(lè)活動(dòng)組織與策劃》2023-2024學(xué)年第一學(xué)期期末試卷
- 公司杠桿收購(gòu)合同范例
- 服裝外貿(mào)購(gòu)銷(xiāo)合同范例
- 預(yù)制樁基礎(chǔ)施工方案
- 陜西學(xué)前師范學(xué)院《數(shù)字繪畫(huà)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年防靜電中空板項(xiàng)目可行性研究報(bào)告
- 陜西師范大學(xué)《房車(chē)營(yíng)地運(yùn)營(yíng)管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 設(shè)計(jì)一臥式單面多軸鉆孔組合機(jī)床動(dòng)力滑臺(tái)的液壓系統(tǒng)
- 行政事業(yè)單位管理辦法
- 蓄能器的基本功能
- 《典范英語(yǔ)》(1a)評(píng)價(jià)方案
- 煤礦井下有毒有害氣體管理規(guī)定
- 戶口本日文翻譯樣文(模板)
- 關(guān)于調(diào)整污水處理費(fèi)征收標(biāo)準(zhǔn)的申請(qǐng)
- 倉(cāng)儲(chǔ)合同案例分析(共6篇)
- 應(yīng)急預(yù)案評(píng)審要素表
- 九年級(jí)上冊(cè)數(shù)學(xué)知識(shí)點(diǎn)考點(diǎn)
- 研究開(kāi)發(fā)費(fèi)用加計(jì)扣除的鑒證報(bào)告記錄要求
評(píng)論
0/150
提交評(píng)論