matlab question response question

I have a control system with a PID controller, and im trying to simulate a system response, i need to plot the values first in a graph and then add the transfer function?
this is what i have found and im doing:
dt = 0.1; t = 0:dt:50; u = zeros(1,numel(t)); u(t<=20) = 45; u(t> 20 & t<=40) = -45; u(t> 40) = 0;
obviously with the lsim command
Is there a better way ?
Thanks in advance

 Accepted Answer

Mischa Kim
Mischa Kim on 14 Mar 2014
Edited: Mischa Kim on 14 Mar 2014
John, you just need to build the signal (no need for plotting), e.g.,
dt = 0.1; % adjust as necessary
t = 0:dt:50;
u = zeros(1,numel(t));
u(t<=20) = 45; % you probably want to use rad instead of deg
u(t> 20 & t<=40) = -45;
u(t> 40) = 0;
and feed it as an input to the system.

1 Comment

Correct,
lsim(sys,u,t)
or similar. You might have/want to specify initial conditions x0 for the system, in which case you'll have an additional parameter.

Sign in to comment.

More Answers (0)

Categories

Find more on Control System Toolbox in Help Center and File Exchange

Tags

No tags entered yet.

Asked:

on 13 Mar 2014

Edited:

on 21 Jul 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!