Les Fonctions Du Transfert: M CSMV
Les Fonctions Du Transfert: M CSMV
Les Fonctions Du Transfert: M CSMV
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
INTRODUCTION
Cette fonction de transfert peut être écrite sous Matlab comme suit :
num=[1,5];
den=[1,2,3,4,5];
g=tf(num,den)
s+5
G(s)= -----------------------------
s^4 + 2 s^3 + 3 s^2 + 4 s + 5
6(5+𝑠)
Soit la fonction du transfert suivante : 𝐺 𝑠 =
(𝑠 2 +3𝑠+1)^2(𝑠+6)(𝑠 3 +6𝑠 2 +5𝑠+3)
Cette fonction de transfert peut être écrite sous Matlab comme suit :
num=6*[1,5];
den=conv(conv(conv([1,3,1],[1,3,1]),[1,6]),[1,6,5,3]);
g=tf(num,den)
6 s + 30
G(s)= ---------------------------------------------------------------------------
s^8 + 18 s^7 + 124 s^6 + 417 s^5 + 740 s^4 + 729 s^3 + 437 s^2 + 141 s + 18
On écrit la même fonction du transfert en changeant par ’p’ avec un retard de 0.5
num=6*[1,5];
den=conv(conv(conv([1,3,1],[1,3,1]),[1,6]),[1,6,5,3]);
G=tf(num,den);
set(G,'variable','p');
set(G,'ioDelay',0.5);
G
6 p + 30
exp(-0.5*p) * ---------------------------------------------------------------------
p^8 + 18 p^7 + 124 p^6 + 417 p^5 + 740 p^4 + 729 p^3 + 437 p^2 + 141 p + 18
g11=tf(0.1134,[1.78,4.48,1],'ioDelay',0.72);
g12=tf(0.924,[2.07,0,1],'ioDelay',0);
g21=tf(0.3378,[0.361,1.09,1],'ioDelay',0.3);
g22=tf(0.318,[0,2.93,1],'ioDelay',1.29);
G=[g11,g12;g21,g22]
0.3378
#2: exp(-0.3*s) * ----------------------
0.361 s^2 + 1.09 s + 1
0.318
#2: exp(-1.29*s) * ----------
2.93 s + 1
A=[2.25 -5 -1.25 -0.5;2.25 -4.25 -1.25 -0.25;0.25 -0.5 -1.25 -1;1.25 -1.75
-0.25 -0.75];
B=[4 6;2 4;2 2;0 2];
C=[0 0 0 1; 0 2 0 2];
D=zeros(2,2);
G=ss(A,B,C,D);
G=tf(G)
s^2 + 3 s + 2.25
#1: --------------------------------------
s^4 + 4 s^3 + 6.25 s^2 + 5.25 s + 2.25
4 s^3 + 14 s^2 + 22 s + 15
#2: --------------------------------------
s^4 + 4 s^3 + 6.25 s^2 + 5.25 s + 2.25
Transfer function from input 2 to output...
12 s^3 + 32 s^2 + 37 s + 17
#2: --------------------------------------
s^4 + 4 s^3 + 6.25 s^2 + 5.25 s + 2.25
num=[1,7,24,24];
den=[1,10,35,50,24];
G=tf(num,den);
G1=ss(G)
On trouve
a=
x1 x2 x3 x4
x1 -10 -4.375 -3.125 -1.5
x2 8 0 0 0
x3 0 2 0 0
x4 0 0 1 0
b=
u1
x1 2
x2 0
x3 0
x4 0
c=
x1 x2 x3 x4
y1 0.5 0.4375 0.75 0.75
d=
u1
y1 0
Exemple
g11=tf(1,[1,1]);
g12=0;
g13=tf([1,-1],[1,3,2]);
g21=tf(-1,[1,-1]);
g22=tf(1,[1,2]);
g23=tf(1,[1,2]);
G=[g11,g12,g13;g21,g22,g23];
G1=ss(G)
On trouve
a=
x1 x2 x3 x4 x5 x6
x1 -1 0 0 0 0 0
x2 0 1 0 0 0 0
x3 0 0 -2 0 0 0
x4 0 0 0 -3 -2 0
x5 0 0 0 1 0 0
x6 0 0 0 0 0 -2
b=
u1 u2 u3
x1 1 0 0
x2 1 0 0
x3 0 1 0
x4 0 0 2
x5 0 0 0
x6 0 0 1
c=
x1 x2 x3 x4 x5 x6
y1 1 0 0 0.5 -0.5 0
y2 0 -1 1 0 0 1
d=
u1 u2 u3
y1 0 0 0
y2 0 0 0
Exemple :
Soit les systèmes suivants décrient soit par une FT ou une MFT ou par l’espace d’état :
10𝑠+20
1- 𝐺1 𝑠 = exp
(−𝑠)
10𝑠 4 +23𝑠 3 +26𝑠 2 +23𝑠+10
num=[10,20];
den=[10,23,26,23,10];
G1=tf(num,den,'iodelay',1)
Step(G1)
Transfer function:
10 s + 20
exp(-1*s) * ------------------------------------
10 s^4 + 23 s^3 + 26 s^2 + 23 s + 10
Step Response
3
2.5
2
Amplitude
1.5
0.5
0
0 5 10 15 20 25 30 35
Time (sec)
g11=tf(0.1134,[1.78,4.48,1],'ioDelay',0.72);
g12=tf(0.924,[2.07,0,1],'ioDelay',0);
g21=tf(0.3378,[0.361,1.09,1],'ioDelay',0.3);
g22=tf(0.318,[0,2.93,1],'ioDelay',1.29);
G2=[g11,g12;g21,g22]
step(G2)
0.3378
#2: exp(-0.3*s) * ----------------------
0.361 s^2 + 1.09 s + 1
Step Response
From: In(1) From: In(2)
2
1.5
To: Out(1)
0.5
Amplitude
0
0.4
0.3
To: Out(2)
0.2
0.1
0
0 200 400 600 800 1000 12000 200 400 600 800 1000 1200
Time (sec)
4 s^3 + 14 s^2 + 22 s + 15
#2: --------------------------------------
s^4 + 4 s^3 + 6.25 s^2 + 5.25 s + 2.25
12 s^3 + 32 s^2 + 37 s + 17
#2: --------------------------------------
s^4 + 4 s^3 + 6.25 s^2 + 5.25 s + 2.25
Step Response
From: In(1) From: In(2)
2
1.5
To: Out(1)
0.5
Amplitude
0
10
8
To: Out(2)
0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
Time (sec)
B- La réponse impulsionnelle :
La réponse impulsionnelle d’un système peut être tracée par Matlab en utilisant la fonction
« impulse ».
Exemple : Soit les systèmes suivants décrient soit par une FT ou une MFT ou par l’espace
d’état :
10𝑠+20
1- 𝐺1 𝑠 = exp
(−𝑠)
10𝑠 4 +23𝑠 3 +26𝑠 2 +23𝑠+10
num=[10,20];
den=[10,23,26,23,10];
G1=tf(num,den,'iodelay',1)
impulse(G1)
Transfer function:
10 s + 20
exp(-1*s) * ------------------------------------
10 s^4 + 23 s^3 + 26 s^2 + 23 s + 10
Impulse Response
1.2
0.8
0.6
Amplitude
0.4
0.2
-0.2
-0.4
-0.6
0 5 10 15 20 25 30 35 40 45
Time (sec)