我想绘制步骤响应。我知道我可以使用状态空间方程的阶跃函数,但我尝试使用绘图函数得到相同的结果。这是我的代码示例:
for i=1:201
u(i) = 1;
x1(i+1) = (-(b/J)*x1(i) + (K/J)*x2(i));
x2(i+1) = (-(K/L)*x1(i) - (R/L)*x2(i) + (1/L)*u(i));
y(i) = x1(i);
end
这是状态空间方程:
A = [-b/J K/J
-K/L -R/L];
B = [0
1/L];
C = [1 0];
D = 0;
如果我这样做:
t = 0:1:200;
plot(t, y)
它不起作用,我希望得到与下面的步骤函数相同的结果:
sys = ss(A,B,C,D);
step(sys)
你可以找到我的状态空间方程here。
答案 0 :(得分:1)
不匹配的原因是`f(40) >= 1,000,000`...
是连续时间模型,而sys
的计算将其视为离散时间系统。
以下是估算离散时间域中连续时间系统的阶跃响应的方法:
y