matlab已知系统的传递函数为 ,求其阶跃响应
1个回答

也不晓得我写的是不是你所需要的答案!

只需要给定a的范围!

调用myfun函数即可得到阶跃响应的其中三个指标

如果是你需要的答案,请采纳!

谢!

还有问题请留言!

function [cmax,tp,ts]=myfun(a)

%概略计算某参数变化时阶跃响应的峰值、峰值时间、调节时间

%定义数组a,如a=1:0.1:5;

n=length(a);

for i=1:n

%建立传递函数

num=[1];den=[1 2*a(i) 1];

sys0=tf(num,den);

[y0,t0]=step(sys0);

%计算峰值cmax、峰值时间tp

cmax(i)=max(y0);

tp(i)=spline(y0,t0,cmax(i));

%计算调节时间ts,5%,如果需要计算2%只需将0.05换成0.02即可

for k=1:length(y0)

if abs(y0(k:length(y0))-1)