1、 2.0000 - 1.0000i 4.0000 1.0000 9.0000 - 1.0000i A 5.0000 - 1.0000i 0 - 6.0000i 2.0000 + 1.0000i 4.0000 1.0000 9.0000 + 1.0000i (4)使用冒号选出指定元素 已知: A=1 2 3;4 5 6;7 8 9;求A中第3列前2个元素;A中所有列第2,3行的元素; A(1,2,3) 3 6 A(2,3,:) 4 5 6 7 8 9(5)方括号 用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列。 magic(4) 16 2 3 13 5 11 10 8 9 7 6 12
2、 4 14 15 1 ans(:,4)= 16 2 3 5 11 10 9 7 6 4 14 153、多项式 (1)求多项式的根 (2)已知A=1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4 求矩阵A的特征多项式;求特征多项式中未知数为20时的值;把矩阵A作为未知数代入到多项式中; p=1 0 -2 -4p = 1 0 -2 -4 roots(p) 2.0000 -1.0000 + 1.0000i -1.0000 - 1.0000i A=1.2 3 5 0.9;A = 1.2000 3.0000 5.0000 0.9000 5.0000 1.7000 5.0000
3、6.0000 3.0000 9.0000 0 1.0000 1.0000 2.0000 3.0000 4.0000 poly(A)1.0000 -6.9000 -77.2600 -86.1300 604.5500 polyval(ans,20) 7.2778e+004 P1=poly(A)P1 = 1.0000 -6.9000 -77.2600 -86.1300 604.5500 poly2str(P1,A A4 - 6.9 A3 - 77.26 A2 - 86.13 A + 604.554、 基本绘图命令 (1)绘制余弦曲线y=cos(t),t0,2 (2)在同一坐标系中绘制余弦曲线y=co
4、s(t-0.25)和正弦曲线y=sin(t-0.5), t0,2 t=0:2*pi/100:2*pi; y=cos(t); plot(t,y) y1=cos(t-0.25); y2=sin(t-0.5); hold on plot(t,y1,r-,t,y2,b-.5、基本绘图控制 绘制0,4区间上的x1=10sint曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)坐标轴控制:显示范围、刻度线;(3)标注控制:坐标轴名称、标题、相应文本;4*pi/200:4*pi; x1=10*sin(t); plot(t,x1,r-.+ axis(0,14,-10,10) title(x
5、1=10*sin(t) xlabel(x,FontSize,18) ylabel(t6、基本程序设计 (1)编写命令文件:计算1+2+n2000时的最大n值; m=0;n=0; while(m2000)n=n+1;m=m+n;end n=n-1n = 62(2)编写函数文件:分别用for和while循环结构编写程序,求2的0到n次幂的和。1)新建sy162.m文件,然后输入以下内容并保存在work目录下。sum=0;for i=0:1:7sum=sum+2i;2) 新建sy162w.m文件,然后输入以下内容并保存在work目录下。a=0;i=0;while(i=10)a=a+2i;i=i+1;
6、(3)如果想对一个变量x自动赋值。当从键盘输入y或Y时(表示是),x自动赋为1; 当从键盘输入n或N时(表示否),x自动赋为0;输入其他字符时终止程序。在程序编辑器中输入以下内容,并按默认设置保存为函数文件。function x=abcd()a=input(s);switch a case y,x=1;Yn,x=0;N otherwise实验二 控制系统分析(一) 1、掌握如何使用Matlab进行系统的时域分析 2、掌握如何使用Matlab进行系统的频域分析 3、掌握如何使用Matlab进行系统的根轨迹分析 1、时域分析 (1)根据下面传递函数模型:绘制其单位阶跃响应曲线并从图上读取最大超调量
7、,绘制系统的单位脉冲响应、零输入响应曲线。 num=5*1 5 6;den=1 6 10 8;sys=tf(num,den);step(sys) gridymax=max(y) impulse(sys)sys1=ss(sys)x0=3;1;2initial(sys1,x0)(2)典型二阶系统传递函数为:当=0.7,n取2、4、6、8、10、12的单位阶跃响应。建立命令文件,输入以下内容,保存在默认目录中。wn=2:2:12; z=0.7;0.1:12;hold onfor i=1:length(wn) Gc=tf(wn(i)2,1,2*z*wn(i),wn(i)2); step(Gc,t)gr
8、id on, hold off(3)典型二阶系统传递函数为:当n =6,取0.2、0.4、0.6、0.8、1.0、1.5、2.0的单位阶跃响应。wn=6;zetas=0.2 0.4 0.6 0.8 1.0 1.5 2.0;t=0:length(zetas) Gc=tf(wn2,1,2*zetas(i)*wn,wn2);grid on,hold off2、频域分析 (1)典型二阶系统传递函数为:当=0.7,n取2、4、6、8、10、12的伯德图。 bode(Gc,t)当n =6,取0.2、0.4、0.6、0.8、1.0、1.5、2.0的伯德图。3、根轨迹分析 根据下面负反馈系统的开环传递函数,绘
9、制系统根轨迹,并分析系统稳定的K值范围。sys=tf(1,1 3 2 0)rlocus(sys)x,y=ginput(1)p=x+i*y;K=rlocfind(sys,p)运行结果p = 0 + 1.4037i K = 5.9115 在0Kcleark=100;z=-2;p=0 -1 -20;num,den=zp2tf(z,p,k);p=num+den;roots(p) -12.8990 -5.0000 -3.1010因为闭环特征方程的根全部为负值,所以系统是稳定的。2)先在work目录下建立routh.m,具体函数内容请见课本附录。然后建立.m文件,输入以下内容。s=tf();sys=100
10、*(s+2)/(s*(s+1)*(s+20)close_sys=feedback(sys,1)den=close_sys.den1rtab,msg=routh(den)Transfer function: 100 s + 200-s3 + 21 s2 + 20 s-s3 + 21 s2 + 120 s + 200den = 1 21 120 200rtab = 1 120 21 0 120 0 0 0msg =All elements in row 4 are zeros;劳斯表第一列全部为正,不变号,所以系统稳定。(2)根轨迹法判断系统稳定性:已知一个单位负反馈系统开环传递函数为:试在系统的
11、闭环根轨迹图上选择一点,求出该点的增益及其系统的闭环极点位置, 并判断在该点系统闭环的稳定性。g=(s+3)/(s*(s+5)*(s+6)*(s2+2*s+2);gh=feedback(g,1);rlocus(gh)K,poles=rlocfind(gh)运行结果:Select a point in the graphics windowselected_point = -6.3803 + 2.7640iK = 509.3252poles = -6.4319 + 2.7310i -6.4319 - 2.7310i 1.3488 + 3.0406i 1.3488 - 3.0406i -2.833
12、8有2个闭环极点在S右半平面,系统在该点不稳定。(3)Bode图法判断系统稳定性:已知两个单位负反馈系统的开环传递函数分别为:用Bode图法判断系统闭环的稳定性。g1=2.7/(s3+5*s2+4*s);g2=2.7/(s3+5*s2-4*s);bode(g1)Gm1,Pm1,Wcg1,Wcp1=margin(g1)gridfigure(2)bode(g2)Gm2,Pm2,Wcg2,Wcp2=margin(g2)2、系统能控性、能观性分析 已知连续系统的传递函数模型, 当分别取1,0,1时,判别系统的能控性与能观性 当=-1时,num=1 -1;den=1 10 27 18;A,B,C,D=t
13、f2ss(num,den);Tc=ctrb(A,B);rank(Tc)To=obsv(A,C);rank(To)运行结果能控与能观矩阵都满秩,系统能控且能观。当=0,1时,与上类似。实验十一 古典控制系统设计-根轨迹法掌握使用根轨迹法进行控制系统设计的方法 1、 根据二阶系统如图所示,其中=0.6,n=5rad/s,当有一阶跃信号作用于系统时,试计算特征量 tr、tp、ts、p。zet=0.6;wn=5;num=wn2;den=1 2*zet*wn 0;sys=tf(num,den)sys_close=feedback(sys,1)pos,tr,ts,tp=stepchar(sys_close
14、,0.02)2、根据下面负反馈系统的开环传递函数,绘制系统根轨迹,并分析系统稳定的k值范围和使系统无超调的K值范围。sys=tf(1,1,4,5,0)x,y=ginput(3);p= x+i*yK=rlocfind(s,p)3、 设单位负反馈系统的开环传递函数为:试确定带惯的 PD控制器的串联超前校正参数,使之满足:(1)阶跃响应的超调量:30%;(2)阶跃响应的超调时间:ts0.8 s(=0.02)。KK=5;bp=0.30;ts=0.8;delta=0.02;ng0=256;dg0=conv(1,0,conv(1,8,1,16);g0=tf(ng0,dg0);s=bpts2s(bp,ts,
15、delta);ngc,dgc=rg_lead(ng0,dg0,s);gc=tf(ngc,dgc)g0c=tf(g0*gc);b1=feedback(g0,1);b2=feedback(5*g0c,1);figure(4);step(b1,b2,bgrid onpos,tr,ts,tp=stepchar(b2,delta) 实验十二 古典控制系统设计Bode 图法掌握使用 Bode 图法进行控制系统设计的方法 1、设单位负被控对象的传递函数为:其设计要求:KK=25; Pm=40; wc=2.5;ng0=KK*1; dg0=conv(1,0,conv(0.05,1,0.25,1);t=0:0.0
16、1:5; w=logspace(-2,2);ngc,dgc= fg_lag_wc(ng0,dg0,w, wc);gc=tf(ngc,dgc),g0c=tf(g0*gc); b2=feedback(g0c,1);, b2,t); axis(0,5,-0.5,1.5); grid onfigure, bode(g0,g0c,w); grid on,gm,pm,wcg,wcp=margin(g0c)2、设有单位负反馈系统,其开环传递函数为:,相角裕度为50度,幅值裕度为 10dB,试确定超前滞后串联校正装置,以满足性能指标。 KK=10;delta=0.05;ng0=1; dg0=conv(1,0,
17、conv(1,1,0.5,1); b1=feedback(KK*g0,1);gm,pm,wcg,wcp=margin(KK*g0) roots(b1.den1)Pm=45;wc=2.5;ng1,dg1=fg_lead_pm_wc(ng0,dg0,Pm,wc,w);gc1=tf(ng1,dg1) %超前校正控制器g01=KK*g0*gc1;ng2,dg2=fg_lag_pm(g01.num1,g01.den1,w,Pm);gc2=tf(ng2,dg2) %滞后校正控制器g02=g01*gc2; b2=feedback(g02,1);bode(KK*g0,g02,w), grid on;gm,pm
18、,wcg,wcp=margin(g02)figure,step(b1, grid on;pos,tr,ts,tp=stepchar(b2,delta)gc=zpk(KK*gc1*gc2) 实验十三 控制系统SIMULINK 仿真学习使用 SIMULINK 进行系统仿真的方法 1、Simulink的基本操作 (1)运行 Simulink (2)常用的标准模块和模块的操作2、系统仿真及参数设置 (1)算法设置(Solver) (2)工作空间设置(Workspace I/O) 3、使用Simulink创建系统,求解非线性微分方程 其初始值为,绘制函数的波形。第一个积分环节initial condit
19、ion 为0,第二个积分环节为2。4、已知系统结构图如下:图1 含饱和非线性环节系统方框图已知输入为信号电平从 16,非线性环节的上下限为1,仿真时间为10秒,试绘制系统的响应曲线。5、PID控制系统的结构如图所示,试设计串联补偿器,使系统速度稳态误差小于 10%,相角裕量 PM=45,并对系统进行仿真。图2 典型 PID控制系统结构图 %PID校正装置的函数模型为Kp*1+1/(Ti*S)+Td*S;在此Kp=10;假设Ti=1.50;Td=0.25clear;num1=400;den1=conv(1,0,1,30,200);G1=tf(num1,den1);figure;step(feed
20、back(G1,1),5);bode(G1);grid;Kv=10;%根据误差小于10%得来Ti=1.50;%假定的Td=0.25; %假定的Gc=Kv*(Ti*Td*s*s+Ti*s+1)/(Ti*s);%通分后的PID模型bode(G1*Gc);step(feedback(G1*Gc,5),2.5);G=G1*Gc;要求速度误差小于10%,即在单位斜坡输入的响应误差小于10%。Transfer FcnTransfer Fcn1上面几乎重合的两条曲线分别为单位斜坡曲线与校正后的响应曲线,可看出误差已经很小,几乎与原曲线重合,已经满足题设要求,达到了设计PID的目的。进一步可绘制系统波特图,验证相角裕量 PM45
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1