MATLAB Answers

# matlab question response question

1 view (last 30 days)
johnaly7 on 13 Mar 2014
Edited: johnaly7 on 21 Jul 2014
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
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Accepted Answer

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 CommentShowHide None
Mischa Kim on 14 Mar 2014
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.

### Tags

No tags entered yet.

### Community Treasure Hunt

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

Start Hunting!