《《MATLAB語言及其應用》實驗報告.doc》由會員分享,可在線閱讀,更多相關《《MATLAB語言及其應用》實驗報告.doc(24頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、MATLAB 語言及其應用實驗報告實驗指導老師:學院:電氣與信息工程學院班級:自動化姓名: 學號: 學號:MATLAB 語言及其應用實驗指導目錄實驗一 Matlab 使用方法和程序設計. 實驗二 控制系統(tǒng)的模型及其轉(zhuǎn)換. 實驗三 控制系統(tǒng)的時域、頻域和根軌跡分析. 實驗四 動態(tài)仿真集成環(huán)境-Simulink. 實驗五 直流電機自動調(diào)速系統(tǒng)控制器設計實驗一 Matlab使用方法和程序設計一、 實驗目的1、掌握Matlab軟件使用的基本方法;2、熟悉Matlab的數(shù)據(jù)表示、基本運算和程序控制語句3、熟悉Matlab繪圖命令及基本繪圖控制4、熟悉Matlab程序設計的基本方法二、 實驗內(nèi)容:1、幫助
2、命令使用help命令,查找 sqrt(開方)函數(shù)的使用方法;2、矩陣運算(1) 矩陣的乘法已知A=1 2;3 4; B=5 5;7 8;求A2*B A=1 2;3 4; B=5 5;7 8; C=A2*BC = 105 115 229 251(2) 矩陣除法已知 A=1 2 3;4 5 6;7 8 9;B=1 0 0;0 2 0;0 0 3;AB,A/B A=1 2 3;4 5 6;7 8 0; B=1 0 0;0 2 0;0 0 3; AB,A/Bans = -1.7778 1.7778 -0.3333 1.5556 -1.5556 0.6667 -0.1111 0.4444 -0.3333
3、ans = 1.0000 1.0000 1.0000 4.0000 2.5000 2.0000 7.0000 4.0000 0(3) 矩陣的轉(zhuǎn)置及共軛轉(zhuǎn)置已知A=5+i,2-i,1;6*i,4,9-i;求A., A A=5+i,2-i,1;6*i,4,9-i; A.,Aans = 5.0000 + 1.0000i 0 + 6.0000i 2.0000 - 1.0000i 4.0000 1.0000 9.0000 - 1.0000ians = 5.0000 - 1.0000i 0 - 6.0000i 2.0000 + 1.0000i 4.0000 1.0000 9.0000 + 1.0000i(
4、4) 使用冒號表達式選出指定元素已知: A=1 2 3;4 5 6;7 8 9;求A中第3列前2個元素;A中所有列第2,3行的元素;方括號用magic函數(shù)生成一個4階魔術矩陣,刪除該矩陣的第四列 A=1 2 3;4 5 6;7 8 9; B=A(1:2,3)B = 3 6 B1=A(2:3,:)B1 = 4 5 6 7 8 9 B1=A(2:3,:)B1 = 4 5 6 7 8 9B(:,4)= B = 16 2 3 5 11 10 9 7 6 4 14 15 3、多項式(1)求多項式 的根 p=1 0 -2 -4; r=roots(p)r = 2.0000 -1.0000 + 1.0000i
5、 -1.0000 - 1.0000i(2)已知A=1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4 ,求矩陣A的特征多項式;把矩陣A作為未知數(shù)代入到多項式中; A=1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4; p=poly(A)p = 1.0000 -6.9000 -77.2600 -86.1300 604.5500 y=sym(A) y = 6/5, 3, 5, 9/10 5, 17/10, 5, 6 3, 9, 0, 1 1, 2, 3, 44、基本繪圖命令(1)繪制余弦曲線 y=cos(t),t0,2(2)在同一坐標系中繪制余弦曲
6、線y=cos(t-0.25)和正弦曲線y=sin(t-0.5),t0,2 t=0:0.01:2*pi; y=cos(t); plot(t,y); title(余弦函數(shù)y=cos(t); x=0:0.01:2*pi;y=cos(x-0.25);plot(x,y)hold ony=sin(x-0.5);plot(x,y) title(y=cos(t-0.25),y=sin(t-0.5)5、基本繪圖控制繪制0,4區(qū)間上的x1=10sint曲線,并要求:(1)線形為點劃線、顏色為紅色、數(shù)據(jù)點標記為加號;(2)坐標軸控制:顯示范圍、刻度線、比例、網(wǎng)絡線(3)標注控制:坐標軸名稱、標題、相應文本; t=0
7、:0.01:4*pi; x1=10*sin(t); plot(t,x1,-.r+); xlabel(X); ylabel(Y); grid on title(x1=10sin(t) legend(y,4)6、基本程序設計(1)編寫命令文件:計算1+2+n s=0;n=0; while s mn=n-1mn = 63(2)編寫函數(shù)文件:分別用for和while循環(huán)結(jié)構(gòu)編寫程序,求2的0到n次冪的和。For循環(huán)function y=miqiuhe (n)y=0;x=0;for (i=0:n) x=2i; y=y+x;endend y=miqiuhe(4)y =31While循環(huán)function y
8、 =midehe(n)y=0;x=0;i=0;while i y=miqiuhe(4)y =31(3)如果想對一個變量x自動賦值。當從鍵盤輸入y或Y時(表示是),x自動賦為1;當從鍵盤輸入n或N時(表示否),x自動賦為0;輸入其他字符時終止程序。str=input(輸入字符:,s) ;輸入字符:y if str=y|str=Y,x=1;elseif str=n|str=N,x=0;else error(終止程序) ;end ,xx = 1str=input(輸入字符:,s) ;輸入字符:n if str=y|str=Y,x=1;elseif str=n|str=N,x=0;else error
9、(終止程序) ;end ,xx = 0str=input(輸入字符:,s) ;輸入字符:c if str=y|str=Y,x=1;elseif str=n|str=N,x=0;else error(終止程序) ;end ,x ?終止程序?qū)嶒灦?控制系統(tǒng)的模型及其轉(zhuǎn)換一、 實驗目的1、掌握建立控制系統(tǒng)模型的函數(shù)及方法;2、掌握控制系統(tǒng)模型間的轉(zhuǎn)換方法及相關函數(shù);3、熟悉控制系統(tǒng)模型的連接方法;4、掌握典型系統(tǒng)模型的生成方法。二、 實驗內(nèi)容:1. 控制系統(tǒng)模型1.1 系統(tǒng)的模型為試建立系統(tǒng)的傳遞函數(shù)模型。 s=tf(s);G=4*(s+2)*(s2+6*s+6)/s/(s+1)3/(s3+3*s2
10、+2*s+5) Transfer function: 4 s3 + 32 s2 + 72 s + 48-s7 + 6 s6 + 14 s5 + 21 s4 + 24 s3 + 17 s2 + 5 s1.2 已知單輸入雙輸出系統(tǒng)的零極點模型 建立系統(tǒng)的零極點模型。 s=zpk(s); g=3*(s+12);4*(s+5)*(s+3)/(s+3)*(s+4)*(s+5) Zero/pole/gain from input to output. 3 (s+12) #1: - (s+3) (s+4) (s+5) 4 (s+5) (s+3) #2: - (s+3) (s+4) (s+5)1.3 給定系統(tǒng)
11、的狀態(tài)空間表達式, 建立系統(tǒng)的狀態(tài)空間模型。 a=-2.8,-1.4,0,0;1.4,0,0,0;-1.8,-0.3,-0.4,-0.6;0,0,0.6,0; b=1;0;1;0; c=0,0,0,1;d=zeros(1,1);g=ss(a,b,c,d)a = x1 x2 x3 x4 x1 -2.8 -1.4 0 0 x2 1.4 0 0 0 x3 -1.8 -0.3 -0.4 -0.6 x4 0 0 0.6 0b = u1 x1 1 x2 0 x3 1 x4 0c = x1 x2 x3 x4 y1 0 0 0 1d = u1 y1 0Continuous-time model.2. 控制系統(tǒng)
12、模型的轉(zhuǎn)換2.1 將1.1的模型轉(zhuǎn)換為零極點模型 s=zpk(s); g=4*(s+2)*(s2+6*s+6)/s/(s+1)3/(s3+3*s+2*s+5)Zero/pole/gain: 4 (s+2) (s+1.268) (s+4.732)-s (s+1)3 (s+0.8688) (s2 - 0.8688s + 5.755)2.2 將1.2的模型轉(zhuǎn)換為狀態(tài)空間模型 s=zpk(s); g=3*(s+12);4*(s+5)*(s+3)/(s+3)*(s+4)*(s+5); G=ss(g)a = x1 x2 x1 1 -12 x2 0 1b = u1 x1 0 x2 -2c = x1 x2 y
13、1 1.5 0d = u1 y1 0 e = x1 x2 x1 0 1 x2 0 0Continuous-time model.2.3 將1.3 的模型轉(zhuǎn)換為零極點模型 a=-2.8,-1.4,0,0;1.4,0,0,0;-1.8,-0.3,-0.4,-0.6;0,0,0.6,0; c=0,0,0,1;d=zeros(1,1); b=1;0;1;0;c=0,0,0,1;d=zeros(1,1);g=ss(a,b,c,d); g1=zpk(g)Zero/pole/gain: 0.6 (s2 + s + 1.54)-(s+1.4)2 (s2 + 0.4s + 0.36)3. 控制系統(tǒng)模型的連接:已
14、知兩個系統(tǒng) 求按串聯(lián)、并聯(lián)、系統(tǒng)2聯(lián)接在反饋通道時的負反饋系統(tǒng)的狀態(tài)方程。 A1=0,1;1,-2; b1=1;1; c1=1,3; d1=0; G=ss(A1,b1,c1,d1); a2=0,1;-1,-3; b2=0;1; c2=1 4; d2=0; g2=ss(a2,b2,c2,d2); g3=g2*g1a = x1 x2 x3 x4 x5 x6 x1 0 1 0 0 0 0 x2 -1 -3 0.5763 0.3262 0.6 0 x3 0 0 -0.2 1 0 0 x4 0 0 -0.32 -0.2 1.104 0 x5 0 0 0 0 -1.4 1 x6 0 0 0 0 -3.10
15、9e-016 -1.4b = u1 x1 0 x2 0 x3 0 x4 0 x5 0 x6 1c = x1 x2 x3 x4 x5 x6 y1 1 4 0 0 0 0d = u1 y1 0Continuous-time model. g4=g1+g2a = x1 x2 x3 x4 x5 x6 x1 -0.2 1 0 0 0 0 x2 -0.32 -0.2 1.104 0 0 0 x3 0 0 -1.4 1 0 0 x4 0 0 -3.109e-016 -1.4 0 0 x5 0 0 0 0 0 1 x6 0 0 0 0 -1 -3b = u1 x1 0 x2 0 x3 0 x4 1 x5 0
16、x6 1c = x1 x2 x3 x4 x5 x6 y1 0.5763 0.3262 0.6 0 1 4d = u1 y1 0Continuous-time model. g5=feedback(g1,g2)a = x1 x2 x3 x4 x5 x6 x1 -0.2 1 0 0 0 0 x2 -0.32 -0.2 1.104 0 0 0 x3 0 0 -1.4 1 0 0 x4 0 0 -3.109e-016 -1.4 -1 -4 x5 0 0 0 0 0 1 x6 0.5763 0.3262 0.6 0 -1 -3b = u1 x1 0 x2 0 x3 0 x4 1 x5 0 x6 0c =
17、 x1 x2 x3 x4 x5 x6 y1 0.5763 0.3262 0.6 0 0 0d = u1 y1 0Continuous-time model.4、典型系統(tǒng)的生成:4 典型二階系統(tǒng) 試建立 時的系統(tǒng)傳遞函數(shù)模型。w=6; e=0.1; h=w2/(s2+2*e*w*s+w2)Transfer function: 36-s2 + 1.2 s + 365、連續(xù)系統(tǒng)的離散化:對連續(xù)系統(tǒng) 在采樣周期 T=0.1 時進行離散化。s=tf(s); g=6*(s+3)/(s+1)/(s+2)/(s+5); t=0.1; gd=c2d(g,t)Transfer function:0.02552 z
18、2 + 0.002704 z - 0.01601-z3 - 2.33 z2 + 1.786 z - 0.4493Sampling time: 0.1實驗三 控制系統(tǒng)的時域、頻域和根軌跡分析一、 實驗目的1、掌握如何使用Matlab進行系統(tǒng)的時域分析2、掌握如何使用Matlab進行系統(tǒng)的頻域分析3、掌握如何使用Matlab進行系統(tǒng)的根軌跡分析二、 實驗內(nèi)容:1、時域分析1.1、某系統(tǒng)的開環(huán)傳遞函數(shù)為 試編程求系統(tǒng)在單位負反饋下的階躍響應曲線,并求最大超調(diào)量。 s=tf(s); g=20/(s4+8*s3+36*s2+40*s); g1=feedback(g,1);step(g1)1.2、典型二階
19、系統(tǒng) 編程求:當 分別取值為0.2、0.4、0.6、0.8、1.0、1.5、2.0時的單位階躍響應曲線。wn=6;s=tf(s);figure;for z=0.2:0.2:1.0 g=wn2/(s2+2*z*wn*s+wn2) step(g) hold on endfor z=1.0:0.5:2.0g=wn2/(s2+2*z*wn*s+wn2) step(g) hold on end1.3、典型二階系統(tǒng)傳遞函數(shù)為: 繪制當:分別取2、4、6、8、10、12時的單位階躍響應曲線。z=0.7s=tf(s)figure;for wn=2.0:2.0:12.0 g=wn2/(s2+2*z*wn*s+w
20、n2) step(g) hold onend2、根軌跡分析根據(jù)下面負反饋系統(tǒng)的開環(huán)傳遞函數(shù),繪制系統(tǒng)根軌跡,并分析使系統(tǒng)穩(wěn)定的K值范圍。 s=tf(s)g=1/s*(s+1)*(s+3)rlocus(g),grid3、頻域分析 典型二階系統(tǒng)傳遞函數(shù)為: 3.1 繪制當:取2、4、6、8、10、12時的伯德圖z=0.7s=tf(s)bode(g)for wn=2.0:2.0:12.0 g=wn2/(s2+2*z*wn*s+wn2) hold onend 32 繪制當:分別取0.2、0.4、0.6、0.8、1.0、1.5、2.0時的伯德圖。wn=6;s=tf(s);bode(g);for z=0.
21、2:0.2:1.0 g=wn2/(s2+2*z*wn*s+wn2) hold on endfor z=1.0:0.5:2.0g=wn2/(s2+2*z*wn*s+wn2) hold on end實驗四 動態(tài)仿真集成環(huán)境Simulink一、 實驗目的1、熟悉Simulink模塊庫中常用標準模塊的功能及其應用;2、掌握利用Simulink在用戶窗口中建立控制系統(tǒng)仿真模型的方法;3、掌握模塊參數(shù)和仿真參數(shù)的設置以及建立子系統(tǒng)的方法。二、 實驗內(nèi)容1. 用Simulink對以下系統(tǒng)進行仿真 其中u(t)為系統(tǒng)輸入,y(t)為系統(tǒng)輸出,仿真當輸入為正弦信號時,輸出的信號的波形,仿真時間 0 t plot(tout,yout)2. 在滑艇的運行過程中,滑艇主要受到如下作用力的控制:滑艇自身的牽引力F,滑艇受到的水的阻力 。其中水的阻力 , 為滑艇的運動速度。由運動學的相關定理可知,整個滑艇系統(tǒng)的動力學方程為: 其中,m為滑艇的質(zhì)量。假設滑艇的質(zhì)量為1000kg,建立此系統(tǒng)的Simulink模型并進行分析。Simulink仿真圖波形圖:plot(tout,yout)3 輸入教材中 P198 中例題5-2 并作仿真。Simulink仿真圖波形圖:plot(tout,yout) plot3(yout(:,1),yout(:,2),yout(:,3),grid