几点小问题:
1、既然是单位反馈,反馈通道就没必要放一个H(s)方框了;
2、第1题只说到kp,应该是单独的P控制,但表达不清楚。
3、第2、3题所谓“积分时间”、“微分时间”都显得很不专业,容易引起歧义,应加上“常数”二字为宜。
第1题
(1)求阶跃响应
G=zpk([],[-1 -1 -1],1)for kp=1:0.5:4, step(feedback(kp*G,1)) hold on, end
(2)从阶跃响应曲线可以看到,系统存在稳态误差,kp增大,对于减小稳态误差有利,但振荡加剧,超调量增大。
(3)根据终值定理来求:
>> syms s kp>> G=1/(s+1)^3
>> limit(kp*G/(1+kp*G),0)
ans =
1/(1+kp)*kp
第2题
(1)阶跃响应:
G=zpk([],[-1 -1 -1],1)s=tf('s')
kp=0.5
clf
for Ti=0.6:0.2:2,
Gc=kp*(1+1/(Ti*s))
step(feedback(Gc*G,1))
hold on
end
(2)从阶跃响应曲线可以看到,加入积分控制之后,系统无静差。随着积分时间常数增大,系统超调减小。
(3)用终值定理:
>> syms s kp Ti>> G=1/(s+1)^3
>> Gc=kp*(1+1/(Ti*s))
>> limit(Gc*G/(1+Gc*G),0)
ans =
1
第3题
求阶跃响应:
G=zpk([],[-1 -1 -1],1)s=tf('s')
kp=0.5
clf
for Td=0:0.4:2,
Gc=kp*(1+Td*s)
step(feedback(Gc*G,1))
hold on
end
从阶跃响应曲线可见,微分时间常数的增大有利于提高系统快速性。
第4题
阶跃响应:
G=zpk([],[-1 -1 -1],1)s=tf('s')
kp=0.5
Ti=1
clf
for Td=0:0.4:2,
Gc=kp*(1+Td*s+1/(Ti*s))
step(feedback(Gc*G,1))
hold on
end
这个题直接把传递函数表示出来然后调用相应的函数即可。
参考代码:
G1=tf([1 2],[1 31 229 198])s=tf('s')
G=feedback(G1,1)/s
bode(1000*G)
figure,margin(1000*G)
figure,rlocus(G)
(1)从margin的绘图结果可知幅值裕度为14.1dB,相角裕度为40.6度。
(2)从根轨迹图可见,闭环系统稳定的条件是K<=4890(近似值)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)