某被控对象传递函数Gc(s)=5/s(0.1s+1)(0.05s+1),采用零阶保持器,设采样周期T=0.1s,针对单位速度输入设计最少拍有纹波数字控制器D(z),计算采样时刻数字控制器和系统的输出响应并画图
1个回答
关注
展开全部
然后,可以使用MATLAB等软件计算并画出系统的输出响应波形图。以下是MATLAB的代码和结果:% 离散时间系统传递函数 G(z)num = [0.5366 0.5345];den = [1 -1.882 0.9407];sys = tf(num, den, 0.1, 'Variable', 'z^-1');% 数字控制器 D(z)kp = 1.34;D = kp;% 闭环系统传递函数 T(z)T = feedback(D * sys, 1);% 画出单位速度输入和系统输出响应t = (0:0.1:5)';u = ones(length(t), 1);[y, ~] = lsim(T, u, t);plot(t, y);xlabel('Time (s)');ylabel('Position (m)');title('Step Response with Minimal Overshoot');
咨询记录 · 回答于2023-04-16
某被控对象传递函数Gc(s)=5/s(0.1s+1)(0.05s+1),采用零阶保持器,设采样周期T=0.1s,针对单位速度输入设计最少拍有纹波数字控制器D(z),计算采样时刻数字控制器和系统的输出响应并画图
然后,可以使用MATLAB等软件计算并画出系统的输出响应波形图。以下是MATLAB的代码和结果:% 离散时间系统传递函数 G(z)num = [0.5366 0.5345];den = [1 -1.882 0.9407];sys = tf(num, den, 0.1, 'Variable', 'z^-1');% 数字控制器 D(z)kp = 1.34;D = kp;% 闭环系统传递函数 T(z)T = feedback(D * sys, 1);% 画出单位速度输入和系统输出响应t = (0:0.1:5)';u = ones(length(t), 1);[y, ~] = lsim(T, u, t);plot(t, y);xlabel('Time (s)');ylabel('Position (m)');title('Step Response with Minimal Overshoot');