Définir un système

A1 = 2;  % Amplification simple

A2num = [1 40]; % numérateur d'une fonction de transfert - ordre 1 (du poids fort (=- s1 - au poids faible - s0)
A2den = [1 1 1]; % dénominateur d'une fonction de transfert - ordre 2
A2 = tf(A2num, A2den);

Mettre en cascade (série) deux systèmes

Il est possible de mettre deux systèmes en série par la fonction series.

A = series(A1, A2);

Afficher la réponse indicielle

Pour afficher la réponse indicielle d’un système, il faut utiliser la fonction step.

t = linspace(0,100,1001);
[IND_A, Time_A] = step(A, t);

figure(1)
plot(Time_A, IND_A);
grid on;

Afficher la réponse impulsionnelle

t = linspace(0,100,1001);
[IMP_A, Time_A] = impulse(A, t);

figure(1)
plot(Time_A, IMP_A);
grid on;

Contre-réaction

On peut définir une nouvelle fonction de transfert \(B(s)\) correspondant à la boucle de retour :

Bnum = [1]; % numérateur - ordre 0
Bden = [1 10]; % dénominateur - ordre 1
B = tf(Bnum, Bden);

Pour pouvoir réaliser un système bouclé ayant une réaction A et une contre-reaction B, il suffit d’utiliser la fonction feedback.

TFboucle = feedback(A, B);

on peut alors afficher les réponses indicielles des deux systèmes :

[TF_boucle, Time_boucle] = step(A,TFboucle);

fonction lsim pour la réponse à un signal particulier

MATLAB / Simulation systèmes bouclés