TP Asservissements Linéaires
TP Asservissements Linéaires
Continus et Echantillonnés
Encadré par :
Professeur Hassan EL FADIL
Réaliser par :
OUZDDOU HIBA
MARGHICH KHALID
Filière / Niveau :
Génie électrique / 1ére année cycle ingénieur (S6)
Année universitaire :
2024-2025
TP : Asservissement et Régulation des
Systèmes Linéaires continus
Objectifs :
L’objectif de ces séances de TP est d’utiliser Matlab/Simulink pour simuler et
étudier le comportement des systèmes linéaires continus. La première partie
est dédiée aux commandes utiles de Matlab permettant d’appréhender le
comportement temporel et fréquentiel des systèmes linéaires continus. La
deuxième partie est, quant à elle, réservée à l’étude d’une application : étude
en boucle ouverte et en boucle fermée. Tout au long de cette dernière partie,
certaines questions doivent être abordées par un calcul théorique. La
commande help permet d’obtenir de l’aide sur n’importe quelle commande à
utiliser.
La fonction H1 :
La fonction H2 :
La fonction H3 :
5) Tracer les réponses impulsionnelles et indicielles de ces fonctions de
transferts? (on utilisera step et impulse).
La fonction H1 :
La réponse impulsionnelle :
La réponse indicielle :
La fonction H2 :
La réponse impulsionnelle :
La réponse indicielle :
La fonction H3 :
La réponse impulsionnelle :
La réponse indicielle :
6) Tracer la réponse indicielle de H2(p) pour différentes valeurs de ξ : 0.1;
0.3; 0.5; √2/2; 1; 2; 10. Calculer le dépassement dans chaque cas.
Conclure.
Pour ξ = 0.1 :
Pour ξ = 0.3 :
Pour ξ = 0.5 :
Pour ξ = √2/2 :
Pour ξ = 1 :
Pour ξ = 2 :
Pour ξ = 10 :
Le calcul du dépassement :
Pour 0 ˂ ξ ˂ 1 :
Conclusion :
Plus ξ est petit, plus la réponse est rapide mais avec dépassement.
Plus ξ est grand, plus le système est lent mais stable (pas de
dépassement).
ξ=1 est le cas optimal : pas de dépassement et temps de réponse
minimal parmi les systèmes sans oscillation.
1.8
1.6
1.4
1.2
Vitesse (rad/s)
0.8
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10
Temps (s)
Réponse indicielle
2) Que vaut la valeur finale de la vitesse en (rad/s) ? Quelle est sa valeur en
(tr/min) ?
Vf = 2 rad/s
Vf = 2× 60/2 π = 19.09 tr/min
3) Relever son temps de réponse, à 5%, trBO en BO.
La vitesse à trBO est : Vf × 0.95 = 1.9 rad/s
Donc graphiquement : trBO = 1.33 s
4) On maintient, toujours, une entrée de commande u en échelon de valeur
30, relever la réponse de Ω(t) en présence d’un échelon de couple de
perturbation Cch de valeur 10 (N.m) appliqué à l’instant 5s (Step time : 5).
1.8
1.6
1.4
(t) (rad/s)
1.2
1
Vitesse
0.8
(t)
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10
Temps (s)
2
(t) (rad/s)
1.5
Vitesse
0.5
(t)
0
0 1 2 3 4 5 6 7 8 9 10
Temps (s)
% Paramètres du système
R = 0.5; % Ohm
L = 1e-3; % H
K = 0.15; % Nm/A
J = 2e-2; % kg.m²
f = 5e-5; % N.m.s
A = 10; % Gain ampli
N = 1000; % Rapport réducteur
% Coefficients de la FT
G0 = (K*A)/(N*(R*f + K^2));
a1 = (R*J + L*f)/(R*f + K^2);
a2 = (L*J)/(R*f + K^2);
-40
Magnitude (dB)
-60
-80
-100
-120
0
-45
Phase (deg)
-90
-135
-180
-1 0 1 2 3 4
10 10 10 10 10 10
Frequency (rad/s)
p = pole(Gp);
disp('Pôles de G(p) :');
disp(p);
Alors : et
Et on a : et
Commentaire :
La différence importante entre les valeurs de ces constantes du temps traduit
une séparation nette des dynamiques électrique (rapide) et mécanique (lente),
ce qui est typique dans les moteurs à courant continu.
2.4. Étude en boucle fermée (BF):
On a :
Avec :
a2 ˃ 0 ; a1 ˃ 0 ; 1 + K1G0 ˃ 0
Alors :
4) Calculer la valeur K1e de K1 qui permet d’avoir une erreur de position égale
à 5% ?
On sait que l’erreur de position correspond à une entrée échelon :
Or :
La vitesse :
Réponse de la vitesse (t) avec C ch = 0 et K 1 = K 1t
2.5
1.5
(rad/s)
Vitesse
0.5
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
L’erreur :
Évolution de l'erreur (t) = ref -
2
1.5
1
(rad/s)
Erreur
0.5
-0.5
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
La vitesse :
Évolution de la vitesse (t)
2.5
2
(
Vitesse
1
0.5
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
L’erreur :
Évolution de l'erreur (t) = -
ref
2
1.5
1
(rad/s)
Erreur
0.5
-0.5
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
La FTBO devient :
Or :
4) Simuler le système de la figure 6 avec le régulateur PI ainsi calculé ? (voir
figure 8).
2
(rad/s)
1.5
Vitesse
0.5
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
L’erreur :
1.5
1
)
Erreur
0.5
-0.5
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
La vitesse :
Évolution de la vitesse avec C ch=1000 (t)
2.5
1.5
(rad/s)
Vit
1
0.5
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Temps (s)
L’erreur :
Évolution de l'erreur avec Cch =1000 (t) = ref
-
2
1.5
1
(rad/s)
Erreur
0.5
-0.5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Temps (s)
Les courbes obtenues montrent que l'ajout d'une action intégrale permet
d'annuler l'erreur statique : la vitesse de sortie suit parfaitement la consigne à
long terme. Le temps de réponse reste court, comparable à celui du correcteur
proportionnel, et la stabilité est conservée.
8) Avec ce correcteur PI, les performances du cahier des charges (stabilité
précision, rapidité et compensation des perturbations) sont-elles satisfaites ?
Les performances du système avec correcteur PI sont globalement
satisfaisantes et répondent bien aux exigences du cahier des charges.
Le compromis entre rapidité et précision est bien équilibré, avec une
amélioration notable de la précision grâce à l’élimination de l’erreur statique.
2.4.3. Correcteur de type proportionnel intégral (PID):
Cette fois nous allons utiliser la forme mixte d’un correcteur de type PID. Sa
fonction de transfert est:
Avec : Ki, τi, τd et a sont des paramètres à calculer. Ce correcteur est constitué
de deux parties en cascade : une partie PI et une partie avance de phase (ou
Proportionnel Dérivée (PD) filtré).
1) Pour la partie PI, on envisage d’utiliser la méthode de compensation du
pôle dominant (constante du temps la plus lente). Donner, alors la valeur de
τi ? (se référer à l’équation (1.2)).
La FTBO :
Finalement, on obtient :
3) Afin d’avoir une meilleur rapidité en BF, on choisit ω0 très grande devant la
pulsation de coupure à -3dB de la boucle ouverte ω[Link] prend ω0 = 1000ωcB0
(ωcB0 obtenue à l’équation 4 de l’analyse fréquentielle), calculer alors .
On prend : ω0 = 1000ωcB0 et on a : ωcB0 = 2.26 rad/s donc : ω0 = 2060 rad/s
Et on a : avec :
Alors :
On a :
2.5
2
(rad/s)
1.5
Vitesse
0.5
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
L’erreur :
Évolution de l'erreur avec (t) = ref
-
2
1.5
1
Erreur (rad/s)
0.5
-0.5
-1
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Temps (s)
2.5
2
(rad/s)
1.5
Vitesse
0.5
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
L’erreur :
Temps (s)
1.5
1
Erreur (rad/s)
0.5
-0.5
-1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Temps (s)
Commentaire :
Les courbes obtenues montrent qu’on a pu compenser la perturbation, la
vitesse de sortie suit parfaitement la consigne, le système est rapide (temps de
réponse très court) et on a pu assurer la précision en annulant l’erreur.
11) Avec ce correcteur PID, les performances du cahier des charges (stabilité
précision, rapidité et compensation des perturbations) sont-elles satisfaites ?
Le correcteur PID satisfait parfaitement le cahier des charges : La stabilité, la
précision et la rapidité sont améliorées et les perturbations sont compensées.
TP Asservissements Echantillonnés
Objectif :
L’objectif de ces séances de TP est d’utiliser Matlab/Simulink pour simuler et
étudier le comportement de systèmes échantillonnés. Pour chaque partie à
traiter, on doit tout d’abord déterminer la réponse théorique, puis dans un
deuxième temps, simuler et retrouver la réponse à l’aide de Matlab/Simulink.
2. Discrétisation :
Soit un système continu défini par sa fonction de transfert :
Avec :
La transformée en z, Gb(z) du système échantillonné avec bloqueur d’ordre
zéro :
Avec :
Te = 1s :
La simulation :
Les réponses indicielles :
1.4
1.2
1
Amplitude
0.8
0.6
0.4
1/(s+1)
0.2 z / (z - exp(-1))
(1 - exp(-1)) / (z - exp(-1))
(1 - exp(-0.5)) / (z - exp(-0.5))
(1 - exp(-0.25)) / (z - exp(-0.25))
0
0 1 2 3 4 5 6 7 8 9 10
Temps (s)
Finalement :
Impulsion unitaire :
Finalement :
Simuler les réponses impulsionnelles de ce système pour les valeurs
suivantes de α : -1.5 ;-1 ; -0.5 ; 0.5 ; 1 ; 1.5 (prendre Te = 1s). Relever les
allures obtenues ainsi que les valeurs des 8 premiers échantillons.
Pour α = -1.5 :
Pour α = -1 :
Pour α = -0.5 :
Pour α = 0.5 :
Pour α = 1 :
Pour α = 1.5 :
Système du second ordre du type :
D’où :
On a :
Alors :
Pour K=0.67 :
Pour K=0.68 :
La condition de stabilité :
Si les pôles du système sont à l'intérieur du cercle unité, le système est stable.
Dans le cas de notre système, cette condition est respectée si :
K < 0.68
Avec :
Pour K=0.67 :
On trouve : et on prend :
Finalement, on trouve :
Pour K=0.68 :
On trouve : et on prend :
Finalement, on trouve :
On a :
Donc :
Et on a : la FTBF :
Conclusion : Le système est stable dans les deux cas. Une période
d’échantillonnage plus petite améliore la fidélité de la réponse, car elle capte
mieux les variations rapides du système continu.
5. Bouclage :
Soit un système échantillonné de fonction de transfert :
Pour n ≥ 1 :
Pour n ≥ 1 :
On trouve finalement :
Cas a = 1 :
Cas a ≠ 1 :
Avec :
Pour :
Pour :
La réponse indicielle :
Réponse indicielle discrète (stairs)
8
5
y(k)
0
0 5 10 15 20 25 30
Pour : k
La réponse indicielle :
Réponse indicielle discrète (stairs)
45
40
35
30
25
y(k)
20
15
10
0
0 5 10 15 20 25 30
k
On effectue un bouclage par retour unitaire (Fig.2) :
Déterminer l’expression de la fonction de transfert en BF F(z).
L’erreur statique :
L'erreur statique s'écrit :
Avec :
Simuler la réponse indicielle du système bouclé toujours pour les
valeurs b=-0,5 et a=0,8 puis b=-0,5 et a=1.
Pour :
La réponse indicielle :
Réponse indicielle discrète (stairs)
1.4
1.2
0.8
y(k)
0.6
0.4
0.2
0
0 5 10 15 20 25 30
k
Pour :
La réponse indicielle :
1
y(k)
0
0 5 10 15 20 25 30
k
Pour :
Pour :
Conclure.
Pour a = 0.8 et b= -0.5 le système est marginalement stable et pour a = 1 et b=
-0.5 le système est stable.
6. Calcul de correcteurs :
6.1. Synthèse par transposition du continu :
On souhaite asservir par une méthode numérique un système de fonction de
transfert :
Qu’appelle-t-on ce correcteur ?
C’est un correcteur à avance de phase de la forme :
Avec :
La marge de phase:
L’erreur de vitesse :
On réalise ce montage :
A l’aide de ce code :
On obtient :
20
15
Amplitude
10
0
-5
0 5 10 15 20 25 30
Temps (s)
Discrétisation avant :
Discrétisation arrière :
Approximation de Tustin :
Une fois ces 3 correcteurs déterminés, simuler pour chacun les
réponses indicielles obtenues (utiliser le schéma Fig.3).
Correcteur C1 :
Schéma de simulation :
Réponse indicielle :
Réponse numérique
1
0.9
0.8
0.7
0.6
Amplitude
0.5
0.4
0.3
0.2
0.1
0
0 5 10 15 20 25 30
Temps (s)
Correcteur C2 :
Schéma de simulation :
Réponse indicielle :
Réponse numérique
1
0.9
0.8
0.7
0.6
Amplitude
0.5
0.4
0.3
0.2
0.1
0 5 10 15 20 25 30
Temps (s)
Correcteur C3 :
Schéma de simulation :
Réponse indicielle :
Réponse numérique
1
0.9
0.8
0.7
0.6
Amplitude
0.5
0.4
0.3
0.2
0.1
0
0 10 20 30 40 50 60 70 80 90 100
Temps (s)
6.2. Synthèse directe :
On souhaite asservir par une méthode numérique un système de fonction de
transfert G(p). A cet effet, on le fait précéder par un bloqueur d’ordre zéro et
suivre par un échantillonneur de cadence Te. La fonction de transfert en z du
système échantillonné bloqué est :
Ce système est-il stable ?
Pour un système discret, la stabilité dépend des pôles de H(z). Les pôles sont :
Schéma de simulation :
Pour K = 1 : 6
10 6 Réponse indicielle du système pour K = 1
2
Sortie y(k)
-2
-4
-6
0 10 20 30 40 50 60 70 80 90 100
Temps (s)
Pour K = 0.8 :
Réponse indicielle du système pour K = 0.8
2
1.8
1.6
1.4
1.2
Sortie y(k)
0.8
0.6
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100
Temps (s)
1.6
1.4
1.2
Sortie y(k)
0.8
0.6
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100
Temps (s)
Déterminons par simulation la valeur limite du gain correspondant à un
système à la limite de stabilité.
On prend :
K = 0.77 :
1.8
1.6
1.4
1.2
Sortie y(k)
0.8
0.6
0.4
0.2
0
0 20 40 60 80 100
Temps (s)
K = 0.76 :
1.8
1.6
1.4
1.2
Sortie y(k)
0.8
0.6
0.2
0
0 20 40 60 80 100
Temps (s)
K = 0.75 :
1.8
1.6
1.4
1.2
Sortie y(k)
0.8
0.6
0.4
0.2
0
0 20 40 60 80 100
Temps (s)
Klim = 0.75
Quel est le gain statique du système bouclé pour cette valeur limite du
gain ?
Le gain statique :
Pour K = Klim = 0.75 :
0.045
0.04
0.035
0.03
Sortie y(k)
0.025
0.02
0.015
0.01
0.005
0
0 10 20 30 40 50 60 70 80 90 100
Temps (s)
Avec :
On choisit :
Calculer les coefficients b2, b1, b0.
On a :
Par identification, on trouve :
Calculer la FTBF.
La fonction de transfert en BF s’écrit :
La FTBO :
Donc :
Alors la condition de stabilité est :
Pour K = 1.86 :
Pour K = 1.85 :
Pour K = 1.5 :
Pour K = 1 :
Pour K = 0.1 :
Conclure.