5-1 设控制系统的开环传递函数为 2(1)( )( )(1)(416)K sG sH sssss 试画出该系统的根轨迹。 解: 在 Matlab 窗口中输入下列命令: nu m=[1 1]; a=[1 0]; b=[1 -1]; c=[1 4 16]; d=conv (a,b); den=conv (d,c); rlocu s(nu m,den) grid on 可得到系统的根轨迹如下图所示: -10-8-6-4-2024-8-6-4-202468860.920.440.440.720.1440.7220.580.98100.920.980.30.580.140.840.30.84Root LocusReal AxisImaginary Axis 5 -2 某反馈控制系统的开环传递函数为 24420KG s H ss sss 试绘制其根轨迹。 解:在 MATLAB 命令窗口中输入下列命令: num=1; den=conv(conv([1,0],[1,4]),[1,4,20]); rlocus(num,den) grid on 运行结果为: -10-8-6-4-20246-8-6-4-202468860.940.50.50.760.1640.7620.640.985100.940.9850.340.640.160.860.340.86Root LocusReal AxisImaginary Axis 5 -3 .已知某系统传递函数为 2180(1)100( )11(1)[()2 0.31]40200200sW ssss 试绘制其伯德图。 解:分子分母同乘 100*200 得到 280 200(100)( )(2.5100)(2 0.3200)200sW ssss 在 Matlab 窗口中输入下列命令: k=80*200; num=[1 100]; a=[2.5 100]; b=[(1/200) 2*0.3 200]; den=conv(a,b); w=logspace(-1,1,100); [m,p]=bode(k*num,den,w); subplot(2,1,1); semilogx(w,20*log10(m)); grid; xlabel('Frequency(rad/sec)'); ylabel('Gain(dB)'); subplot(2,1,2); semilogx(w,p); grid; xlabel('Frequency(rad/s)'); ylabel('Phase(deg)'); 可绘制该系统的伯德图如下所示。 10-110010137.8537.937.953838.0538.1Frequency(rad/sec)Gain(dB)10-1100101-15-10-50Frequency(rad/s)Phase(deg) 5 -4 设控制系统具有如下的开环传递函数 15KG s H ss ss 试求取当K=10 时的相角裕度和幅值裕度,并画出其伯德图。 解:在 MATLAB 命令窗口中输入下列命令: k=10; num=1; den=poly([0,-1,-5]); [m,p,w]=bode(num,den); subplot(2,1,1); semilogx(w,20*log10(m)); grid on; ylabel('Gain(dB)'); subplot(2,1,2); semilogx(w,p); grid on; xlabel('Frequency(rad/sec)'); ylabel('Phase(deg)'); [gm,pm,wcg,wcp]=margin(m,p,w) 这里gm,wcg 为幅值裕度值与相应...