Finding the ramp response to a transfer function

168 views (last 30 days)
If T is the transfer function defined below, how do you find the ramp response?
G = tf(poly([-2 -3]),poly([0 -1])); T=feedback(G,1)

Accepted Answer

Mathieu NOE
Mathieu NOE on 17 Mar 2021
You can use lsim function for any input
t=0:0.01:10
slope = 2;
ramp=slope*t; % Your input signal
G = tf(poly([-2 -3]),poly([0 -1])); T=feedback(G,1); % Your transfer function
[y,t]=lsim(G,ramp,t);
plot(t,y)
  2 Comments
Aleem Andrew
Aleem Andrew on 17 Mar 2021
Thank you for your answer. Can you use lsim for a step input? I get an error message when I do so.
t=0:0.01:10;
slope = 2;
ramp=1; % Your input signal
G = tf(poly([-2 -3]),poly([0 -1])); T=feedback(G,1); % Your transfer function
[y,t]=lsim(G,ramp,t);
plot(t,y)
Mathieu NOE
Mathieu NOE on 18 Mar 2021
hello
sure, but whatever the type of input signal, its dimensions must be the same as time vector (t)
I also changed the name of the input to avoid any confusion (it's not a ramp anymore)
so this is the correct code :
t=0:0.01:10;
mystep=1*ones(size(t)); % Your input signal
G = tf(poly([-2 -3]),poly([0 -1])); T=feedback(G,1); % Your transfer function
[y,t]=lsim(G,mystep,t);
plot(t,y)

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!