控制系统仿真matlab第六章习题答案
控制系统仿真第六章课后题
作业6.1
在图6.1中,已知单位负反馈系统被控对象的传递函数为
试编写matlab程序,设计系统的超前矫正器Gc(s),要求:
1)在斜坡信号r(t)=2t作用下,系统的稳态误差ess<=0.002;
2)校正后系统的相位裕度Pm范围为:45~55;
3)绘制系统校正后的bode图和阶跃响应曲线。
程序:
>> s=tf('s');
>> G=1000/(s*(0.1*s+1)*(0.001*s+1));
>> margin(G) % 绘制校正前的bode图
>> figure(2)
>> sys=feedback(G,1);
>> step(sys) %绘制校正前的单位阶跃响应曲线
>> [Gm,Pm]=margin(G); %该句值计算bode图的增益裕量Gm和相位裕量Pm
>> [mag,phase,w]=bode(G); %该句只计算bode图上多个频率点w对应的幅值和相位
>> QWPm=50; %取矫正后的相位为50
>> FIm=QWPm-Pm+5;
>> FIm=FIm*pi/180;
>> alfa=(1-sin(FIm))/(1+sin(FIm));
>> adb=20*log10(mag);
>> am=10*log10(alfa);
>> wc=spline(adb,w,am);
>> T=1/(wc*sqrt(alfa));
>> alfat=alfa*T;
>> Gc=tf([T 1],[alfat 1]) %校正器的传递函数
Transfer function:
0.01794 s + 1
-------------
0.00179 s + 1
>> figure(3)
>> margin(Gc*G) % 系统矫正后的bode图
>> figure(4)
>> step(feedback(Gc*G,1)) % 校正后的单位阶跃响应曲线
作业6.2
在图6.1中,已知单位负反馈系统被控对象的传递函数为
试编写matlab程序,设计系统的滞后校正器Gc(s),要求:
在斜坡信号r(t)=t作用下,系统的稳态误差ess;
校正后系统的相位裕度Pm范围为:40~50;
绘制系统矫正前后的bode图和阶跃响应曲线。
计算K ess=1/K<=0.01 K>=100 取K=100
程序如下:
>> s=tf('s');
>> G=100/(s*(0.1*s+1)*(0.02*s+1));
>> margin(G) %绘制校正前的bode图
如下图示,这是一个不稳定的系统。
>> figure(2)
>> step(feedback(G,1))
可以看出系统的动态响应不稳定,处于震荡发散的状态。
>> P0=45;
>> fic=-180+P0+5;
>> [mu,pu,w]=bode(G);
>> wc2=spline(pu,w,fic);
>> d1=conv(conv([1 0],[0.1 1]),[0.02 1]);
>> na=polyval(100,j*wc2);
>> da=polyval(d1,j*wc2); %该句是用j*wc2代替多项式中的s
>> G1=na/da;
>> g1=abs(G1); %abs()函数是取绝对值,这里表示求复数G1的模
>> L=20*log10(g1);
>> beta=10^(L/20); T=1/(0.1*wc2);
>> betat=beta*T;
>> Gc=tf([T 1],[betat 1])
Transfer function:
1.558 s + 1
-----------
20.27 s + 1
>> figure(3)
>> margin(Gc*G)
>> figure(4)
>> step(feedback(Gc*G,1))
作业6.3
在图6.1中,已知单位负反馈系统被控对象的传递函数为
试编写matlab程序,设计系统的滞后-超前校正器Gc(s),要求:
在单位斜坡信号r(t)=t作用下,系统的速度误差系数Kv=20s-1;
校正后系统的实际相位裕量Pm范围为:42~58;
校正后系统的实际剪切频率wc2>=1.3rad/s;
绘制系统校正前后的bode图和阶跃响应曲线。
由题知 K=40
程序如下:先绘制校正前的bode图和单位阶跃响应曲线,再绘制校正后的
第一种
>> s=tf('s');
>> G0=40/(s*(s+1)*(s+2));
>> figure(1)
>> margin(G0)
>> figure(2)
>> step(feedback(G0,1))
校正前系统的增益裕量Gm=-16.5,相位裕量Pm=-