- sys - defines your state space
- u defines your input signal which in case of step input can be defined as u=ones(length(t)) % cause we know for step u(t)=1 (you can see it from laplace transform tables)
- t - time, for example; t=linspace(0,5,10)
- x0 = is a vector of initial conditions
State Space unit step and initial conditions
86 次查看(过去 30 天)
显示 更早的评论
I am trying to get MATLAB to show a state space response with both a unit step input and initial conditions. All documentation shows only how to do one or the other, as if I try using step() or initial(), the second overrides the first. Thanks!
0 个评论
回答(3 个)
Daniel Stankowski
2020-1-7
The above method works but you can also use an lsim command.
Do the following:
lsim(sys,u,t,x0)
where;
2 个评论
shivam sahil
2020-4-11
A small correction, it should be:
u=ones(length(t),1) ;
instead of
u=ones(length(t))
Youngsik Kim
2017-11-3
You can get the zero input response from initial() and zero state response from step() separately, and then you can add up later to plot the response.
[yi,ti,xi]=initial(systm,xinitial); [ystep,ts,xs]=step(systm,ti);
Then, the superposition of them is what you want. ytotal=yi+ystep; Then plot time .vs. ytotal.
0 个评论
Drishya Dinesh
2021-4-19
how to get a response with initial value of 10.
t2=400;
u_del=(0.0022*k*(s+0.06931)*(s^2+0.4852*s+0.1492))/((s+0.04833)*(s+0.004352)*(s^2+0.06012*s+0.01331));
figure
step(u_del,t2);
ylabel('Velocity,u (m/s)','fontsize',10);
title('Time Response');
grid
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dynamic System Models 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!