Sinusoidal steady state response to sinusoidal input

46 Ansichten (letzte 30 Tage)
tsstac1
tsstac1 am 20 Feb. 2016
Bearbeitet: Abdulhakim am 11 Nov. 2023
So I have a transfer function of a feedback system,
>> yd
yd =
s^3 + 202 s^2 + 401 s + 200
------------------------------
s^3 + 202 s^2 + 20401 s + 1e06
Of which I'd like to look at the sinusoidal steady state response to the disturbance d(t) = sin(130t).
How do you do this in matlab? I'm well aware of how to get a step or impulse response, but not a sinusoidal response.

Akzeptierte Antwort

Star Strider
Star Strider am 20 Feb. 2016
Use the lsim function:
% num = s^3 + 202 s^2 + 401 s + 200
% den = s^3 + 202 s^2 + 20401 s + 1e06
n = [1 202 401 200];
d = [1 202 20401 1E+6];
sys = tf(n,d); % Define LTI System
t = linspace(0, 100, 1000); % Time Vector
u = sin(130*t); % Forcing Function
y = lsim(sys, u, t); % Calculate System Response
figure(1)
plot(t, y)
grid
  4 Kommentare
Max Agarwal
Max Agarwal am 25 Sep. 2022
here 130 is omega??
Star Strider
Star Strider am 25 Sep. 2022
It is the frequency in radians/time_unit.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Abdulhakim
Abdulhakim am 11 Nov. 2023
Bearbeitet: Abdulhakim am 11 Nov. 2023
If you know the Laplace transform of the input you can exploit the fact that the impulse function in the s-domain is equal to 1. Here is how:
For a system with input and output
Since
impulse(G*R) is actually the output in the time domain .
The laplace transform for
num = [1 202 401 200];
den = [1 202 20401 10^6];
G = tf(num,den)
SIN = tf(130,[1 0 130^2]);
C = G*SIN
impulse(C)

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by