Professional Documents
Culture Documents
Parcours S.I.
L3 EEA - L3 IE L3 EIA
UNIVERSITE DE CAEN
TRAVAUX PRATIQUES
AUTOMATIQUE.
NOM :
GROUPE :
T. P. AUTOMATIQUE.
T.P. N1
MATLAB / SIMULINK
Matlab est un logiciel de calcul scientifique gnral. Comme d'autres produits (Scilab, MatrixX),
c'est un logiciel de calcul NUMERIQUE. Il propose notamment la rsolution numrique d'un grand
nombre de problmes mathmatiques classiques, du plus grand intrt pour les ingnieurs et les
chercheurs. Bien plus qu'une super calculatrice, Matlab permet de dvelopper de faon rapide des
programmes de calcul scientifique pouvant prsenter des interfaces homme-machine trs conviviale
avec des possibilits graphiques intressantes. Il n'est donc pas ddi un domaine ou application
technique particulire. Parmi ses utilisations, on peut citer:
Dveloppement d'algorithmes
Matlab prsente un ensemble de fonctions gnrales, fournies dans sa version de base. A cela
s'ajoute un certain nombre de groupes de fonctions spcialises appeles botes outils :
TOOLBOXS .Ces botes outils permettent de traiter de problmes particuliers des sciences de
l'ingnieur:
etc.
T. P. AUTOMATIQUE.
T.P. N1
Par exemple, les botes outils Control System toolbox et Mu analysis and synthesis toolbox
traitent de la conception de lois de commande. La puissance de Matlab est d'offrir tous les lments
ncessaires la construction rapide d'un programme de CAO par ses utilisateurs. De ce point de
vue-l, c'est un logiciel trs ouvert.
Dans le contexte de l'Automatique, MATLAB (MATrix LABoratory) offre un environnement
unique de simulation et de prototypage. Le langage technique puissant est la fois concis et
descriptif, permettant de modliser des systmes complexes avec des petites parties de code facile
comprendre. La vaste bibliothque de fonctions, disponibles comme faisant partie du noyau
MATLAB ou par l'intermdiaire de Botes Outils orientes objet, permettent de construire
rapidement des simulations et des modles pour un grand nombre de types d'applications. Les outils
de modlisation vont des solveurs d'quations diffrentielles dans MATLAB aux fonctions
spcialises des Botes Outils pour les statistiques et l'apprentissage et la modlisation de rseaux
de neurones. Des fonctions intgres d'animation et des graphiques rapides charger permettent de
visualiser le comportement d'un modle pour de l'analyse, des tests, du deboguage, des prsentations
de rsultats.
Matlab est un langage interprt, driv du langage C, avec lequel il est possible de modifier un
programme pour en voir immdiatement les effets, sans avoir recompiler comme en C. Comme la
plupart des algorithmes mathmatiques avancs et de bas niveau sont dj dvelopps pour vous, le
code ncessaire pour construire un modle dans MATLAB est beaucoup plus court que le code C ou
C++ correspondant. Ceci rend le code MATLAB facile crire et faire voluer au cours du temps.
Deux types de fonctions sont prsentes sous Matlab: celles qui sont compiles (crites en langage C)
et celles crites dans le langage MATLAB qui peuvent tre reprises, modifies par l'utilisateur (d'o
une grande flexibilit). MATLAB tant programme en langage C, il peut utiliser des routines en C
ou tre appel partir d'un programme de langage C.
L o MATLAB offre un environnement de programmation familier, Simulink et Stateflow
fournissent un environnement de conception graphique pour modliser et simuler des systmes
complexes de contrle, de Traitement du Signal et des systmes contrls par la logique. Btis
partir de MATLAB, ces produits peuvent appeler n'importe quelle fonction MATLAB y compris
des routines crites par l'utilisateur, permettant de combiner le meilleur des 2 approches. Mme les
fonctions des Botes Outils peuvent tre imbriques dans des schmas blocs Simulink. Le nombre
de fonctions disponibles dans les diffrentes bibliothques tant trs grand, nous nous limiterons ici
une description sommaire des T.P.
T. P. AUTOMATIQUE.
T.P. N1
ACCES A MATLAB
Matlab est une application Windows. En cliquant deux fois sur l'icne Matlab, s'ouvre alors la
fentre principale. Cette fentre est divise en plusieurs parties comme le montre la figure cidessous :
Aide
ou
Dtails des variables du
workspace
Fentre de travail :
Workspace
Rpertoire de travail
ou
Historique des commandes
T. P. AUTOMATIQUE.
T.P. N1
matlab\datafun
matlab\elmat
matlab\funfun
matlab\color
matlab\lang
matlab\ops
matlab\matfun
matlab\demos
Pour obtenir le contenu d'un rpertoire, il suffit de taper help <nom_rpertoire> : help elmat
Pour obtenir des renseignements sur une fonction particulire, par exemple zeros qui est contenue
dans le bloc elmat, il suffit de taper :
help zeros
ZEROS
All zeros.
T. P. AUTOMATIQUE.
T.P. N1
lments de cette matrice sont logs dans une variable provisoire appele ans (answer), mais cette
variable sera de nouveau utilise par la fonction suivante.
Un rsultat presque identique est obtenu en utilisant : yz=zeros(5,2) mais dans ce cas, le rsultat est
log dans une variable dont le nom est yz et qui est maintenue en mmoire par Matlab jusqu' ce
que:
Matlab soit ferm.
Ce nom de variable soit utilis pour stocker une autre valeur.
La variable soit efface par l'instruction clear (utiliser help).
La liste des variables en mmoire est obtenue par les commandes who (simple) ou whos (dtaille).
AX=B
1
La solution de ce problme est obtenue en calculant X = A B .
Rsolution directe :
1. Saisir la matrice A en crivant A=[3 2 ;-1 1]; Les crochets dlimitent la matrice, les lments
sont entrs ligne par ligne, chaque ligne tant spare par un ;. Le ";" aprs le "]" permet de
supprimer l'affichage du rsultat l'cran.
2. De la mme manire, saisir la matrice b et calculer la solution du problme en utilisant
l'instruction inv (help inv). Chercher la mme solution en utilisant l'une des divisions '/' ou '\'
(help slash). Quelle est la diffrence entre les deux ?
Rsolution graphique :
Pour prendre contact avec les reprsentations graphiques de Matlab, nous allons chercher la solution
y = 1.5 x + 0.5
du systme en visualisant l'intersection des deux droites :
y = x + 5
Connaissant dj la solution, nous choisissons un domaine de variation de x = [-3, 3].
T. P. AUTOMATIQUE.
T.P. N1
T. P. AUTOMATIQUE.
T.P. N1
p+2
3p + 6 p + 1
2
T. P. AUTOMATIQUE.
T.P. N1
0.5
;
0.05 p + 1
G3 =
1
;
p +1
G4 =
2.5
p 2 + 0.5 p + 1
T. P. AUTOMATIQUE.
T.P. N1
sys1
sys2
>>sys_para=sys1 + sys2;
sys2
En boucle ferme :
Pour calculer la fonction de transfert en boucle ferme, il existe la fonction feedback qui calcule la
fonction de transfert en boucle ferme du systme prsent ci-dessous. Par dfaut le bouclage est
une contre raction (soustracteur) mais si lon veut faire de la raction, il suffit de placer le terme +1
aprs les systmes boucler (ex : SYS = FEEDBACK(SYS1,SYS2,+1) ) :
sys1
sys2
Si la fonction de transfert possde un retard, il nest pas possible dutiliser la fonction feedback pour
calculer le transfert en boucle ferme car le dnominateur nest plus un polynme coefficients
constants.
4. Reprsentation temporelle
A partir dune fonction de transfert, Matlab peut calculer la rponse temporelle dune fonction de
transfert une entre. La rponse impulsionnelle et la rponse indicielle sont dj programmes
dans des fonctions. Le rsultat de ce calcul (vecteurs contenant le temps et la rponse du systme)
peut tre plac dans des variables de retour ou par dfaut directement trac dans une figure. De
mme si lon ne prcise pas le vecteur temps, la fonction le dterminera automatiquement.
La rponse impulsionnelle (e(t) = (t)) laide de la fonction >>impulse(sys1);
10
T. P. AUTOMATIQUE.
T.P. N1
11
T. P. AUTOMATIQUE.
T.P. N1
EPS=1 ;
for i=1 :1000
EPS=EPS/2
if (1+EPS)<=1 EPS=EPS*2
break
end
end
Pourquoi cette boucle de 1000 itrations sarrte t-elle avant ?
Dans lexemple prcdent, si lon veut recommencer avec un nombre d'itrations de 2000, il faut
rcrire la srie dinstructions pour obtenir le rsultat. Pour viter ce genre de problme, il est
possible denregistrer une srie dinstructions dans un fichier nom_fic.m et de vrifier quil ne
porte pas un nom identique une fonction MATLAB puis excuter ce fichier.
Dans le menu Fichier, ouvrir un nouveau fichier .m. Dans ce fichier, retaper lexemple prcdent,
sauvegarder le fichier et excuter le sous Matlab en crivant le nom du fichier sous le workspace.
Attention : un fichier Matlab (extension .m) ne dois jamais porter le mme nom quune variable du
workspace ou un nom dj existant dans un autre rpertoire.
Une fois ce TP termin, sauvegarder les diffrentes variables que vous avez utilises avec la
commande save workspace as dans le menu file.
Ces diffrentes variables vous resserviront dans le T.P. n2. N'oublier pas de noter le nom de
votre sauvegarde dans ce cahier pour ne pas l'oublier.
NOM DE LA SAUVEGARDE :
.mat
12
TP AUTOMATIQUE
TP N2
une Toolbox
: SIMULINK.
raliser une
une fentre
accder
la
fentre
de
sur l'icne
. Celle-ci est
reprsente sur la figure ci-contre.
13
TP AUTOMATIQUE
TP N2
I. PRESENTATION DU SIMULATEUR
1. Ralisation d'un schma de simulation
Une fois la commande de Simulink ouverte, il est possible d'ouvrir un fichier o de dclarer un
nouveau new sous la rubrique "File". Les fichiers simulink possdent l'extension ".mdl".
Pour raliser le schma de la figure 2 , il faut runir ses lments dans la fentre graphique
correspondante au fichier courant. Pour cela, il faut ouvrir une bibliothque de simulink
(Continuous, Discrete, Sources, Sinks, etc.), choisir l'lment intressant dans cette bibliothque
en cliquant dessus avec la souris et en maintenant la souris clique, faire glisser llment ainsi
slectionn vers votre fentre graphique (NE JAMAIS FAIRE LA MANIPULATION
INVERSE).
Une fois les lments essentiels prsents, il suffit de les lier entre eux avec la souris, c'est--dire
tracer des connections entre la sortie du premier bloc et l'entre du deuxime bloc.
Noublier pas de sauvegarder le schma dans votre rpertoire de travail, il sera ainsi possible d'aller
le rechercher en cas de fausse manipulation.
2. Dfinition des paramtres des lments.
Ceux-ci peuvent tre dfinis en cliquant deux fois sur l'lment considr. La manire dont Matlab
les exige est indique en commentaire dans la boite d'entre qui s'ouvre cet effet. On dfinit ainsi
les paramtres des fonctions de transfert, les signaux appliqus, les chelles par dfaut des graphes
des signaux observs. On peut utiliser aussi comme paramtres des variables pralablement dfinies
dans le workspace (l'espace de travail) de Matlab.
3. Ralisation d'une simulation
Une fois le schma de simulation ralis, on effectue la simulation en choisissant dans le menu
"Simulation" les paramtres de celle-ci : instant de dbut, instant de fin, etc.. Ces paramtres sont
utiliss par l'algorithme de simulation qui est un algorithme d'intgration numrique. Il est possible
de choisir son algorithme de simulation mais sauf cas particulier, on utilisera "ode45 DormandPrince". Ensuite, lancer la simulation en cliquant sur l'icne
2. EXEMPLE N1
De manire retrouver les variables que vous avez dfinies dans le TP. n1, charger votre fichier de
sauvegarde (extension ".mat") ralise la fin du TP en tapant load <nom du fichier>.
14
TP AUTOMATIQUE
TP N2
Ouvrir ensuite un nouveau fichier sous Simulink. Prendre un gnrateur d'chelon sous la rubrique
"Sources", une fonction de transfert sous la rubrique "Continuous" et un scope dans la bibliothque
"Sinks". Ensuite relier les diffrents lments avec la souris. Le schma, une fois termin, doit
correspondre celui de la figure 2 donne ci-dessous.
15
TP AUTOMATIQUE
TP N2
Icne de configuration
Nombre
Nombre de tracs (Axes)
de
points
maximal afficher.
Nom de la variable
cre
dans
le
workspace de Matlab.
Dans longlet Data history , il est possible de limiter le nombre de points mmoriss ce qui limite
de fait le nombre de points affichs (sauvegarde de la mmoire RAM). Par dfaut, vous tes limit
5000 points.
Il est possible dimporter les donnes affiches en slectionnant Save data to workspace . Une
fois sauvegard dans le workspace de Matlab, il va tre possible dutiliser ces donnes sous forme
dune figure Matlab avec tous les avantages sur la prsentation et la sauvegarde des rsultats.
16
TP AUTOMATIQUE
TP N2
La difficult rside dans le format de la sauvegarde, il sagit dune structure avec le temps en
champs distinct. Voici des exemples de ligne de commande permettant de rcuprer les donnes
sous forme vectorielle :
>> temps=y.time ; %cration du vecteur temps contenant les instants de simulation
>> sortie=y.signals(2).values(:,1).
n de lentre du scope
K
boucl par un gain proportionnel
1+ p
not A. K est le gain statique du systme et sa constante de temps (on prendra K = 1 et = 1 sec).
Reprendre le systme sys3 du TP 1 qui correspond cette fonction de transfert. La fonction de
transfert du systme boucl est note F(p).
Y*(p)
(p)
U(p)
A
G(p)
Y(p)
TP AUTOMATIQUE
TP N2
Pour mettre en vidence les effets du gain A, refaire ces manipulations en augmentant ou en
diminuant sensiblement sa valeur. Comment voluent les constantes de temps associes aux deux
systmes lorsque A devient trs grand ou trs petit ?
Dterminer les deux constantes de temps et les gains statiques de chaque rponse.
Tracer la rponse frquentielle (Bode) de la boucle ouverte et de la boucle ferme. Peut-on retrouver
la constante de temps et gain statique des deux systmes ?
Justifier par le calcul les diffrences existant entre la rponse boucle ouverte et boucle ferme en
terme de temps de rponse et de gain statique. Retrouve-t-on leffet du gain sur ces grandeurs ?
18
TP N3
Lobjet de ce TP est de montrer la dmarche suivie pour modliser un procd. La mthodologie qui
va tre utilise est celle que lon retrouve gnralement dans lindustrie. Bien que le modle obtenu
soit assez peu satisfaisant, cette mthode, relativement sommaire, a le mrite de donner un modle
exprimental utilisable pour la commande.
I. RAPPEL.
I.1. Notion de rglabilit.
Cette notion est principalement utilise pour les processus ayant un retard pur important. Si on
examine la rponse indicielle (figure 1) dun processus sans intgrateur, on peut distinguer trois
phases :
un temps de retard : T',
un temps de dcollement : T'',
un temps de monte : TA.
y(t)
T'
T''
TP N3
suprieur 10. Toute action sur lentre provoque presque immdiatement une action sur la sortie et
les procds correspondants sont en gnral faciles asservir.
I.3. Systme faible rglabilit.
On place souvent dans cette catgorie les processus ayant un rapport TA/ infrieur 4 (limite tire
de lexprience industrielle). Si TA/ est faible, il faut attendre un temps lev (comparativement au
temps de monte du procd) pour quune entre commence agir sur la sortie. Si lon cherche
augmenter la prcision par les mthodes usuelles comme laccroissement du gain ou lintervention
dune action intgrale, on a de grandes chances de dstabiliser le procd.
De tels procds ne peuvent pas, en gnral, tre rguls correctement par de simples rgulateur de
type P.I.D. et ils ncessitent des commandes plus adaptes telles que la correction avec Prdicteur
de Smith ou une correction numrique (niveau BAC+4 et +5).
I.4. Systme rglabilit moyenne.
Ce cas correspond en gnral 4 < TA/ < 10, ces valeurs tires de lexprience sont fournies titre
indicatif et doivent tre releves si lon lve les exigences de prcision sur le processus.
II. MODELISATION EN BOUCLE OUVERTE.
La premire tape dun asservissement commence par une identification du procd.
Lidentification a pour objet de dterminer un modle du procd.
Les mthodes prsentes dans ce qui va suivre, donnent une reprsentation trs
approximative du procd modliser. Ces approches ont t couramment utilises dans
lindustrie par le pass car elles ne ncessitent pas lutilisation dun calculateur.
Malheureusement, lutilisation de ces mthodes persiste cause de leur simplicit dutilisation
malgr lapparition de mthodes beaucoup plus performantes.
II.1. Caractristique statique.
La caractristique statique d'un systme (si elle existe) est obtenue en appliquant un signal de
commande constant l'entre du systme. Ce systme atteindra alors asymptotiquement une valeur
finale constante en sortie. En imposant diffrentes valeurs pour la commande, le trac du signal de
sortie en rgime permanent en fonction de l'entre reprsente la caractristique statique du procd.
A noter que si le systme possde un temps de rponse relativement long, lobtention de cette
caractristique peut prendre un certain temps.
20
TP N3
II.2. Identification des systmes du premier ordre partir de leur rponse indicielle.
Le cas des systmes du premier ordre est le plus simple car ces fonctions de transfert sont dfinies
laide de deux paramtres K et
tangente verticale lorigine, il est trs facile didentifier un premier ordre. Le gain statique
correspond la variation de la sortie divise par la variation de lentre (en rgime permanent). La
constante de temps se dtermine partir du temps de rponse 5% ou lorsque la rponse indicielle a
atteint 63% du rgime permanent (voir TD). Dans le cas de systmes plus complexes que le premier
ordre pur, il est obligatoire dutiliser une mthode didentification plus adapte.
II.3 Identification des systmes dordre quelconque partir de leur rponse indicielle : modle
de BRODA.
Cette mthode considre que le systme tudi est un premier ordre avec retard ce qui est trs
restrictif. Bien sur lorsque le systme est dordre lev, le rsultat ne sera pas trs bon.
Si l'on recherche un modle du 1er ordre avec retard pur, alors on cherche un modle de la forme :
p
e ( )
G(p) = K
(1 + p )
est le retard pur du modle, la constante de temps. On dtermine les temps t1 et t2 tels que:
y(t)
0,4 y
0,28 y
= 2,8 t1 1,8 t 2
= 5, 5 (t 2 t1 )
Do lexpression de G(p) avec les paramtres ainsi dtermins.
21
TP N3
II.4. Identification des systmes dordre quelconque partir de la rponse indicielle : Modle
de STREJC.
Si la rponse ne prsente pas de dpassement, le systme est donc apriodique. Dans ce cas, il est
possible de modliser le systme sous la forme dun modle de STREJC. Ce modle va donner un
modle ayant la structure suivante :
G(p) = K
p
e ( )
(1 + p )n
est le retard pur du systme, la constante de temps, n lordre du systme. Pour identifier ces trois
paramtres, on trace sur la rponse indicielle, la tangente au point dinflexion. Ensuite comme sur la
figure ci-dessous, on value deux paramtres : TA et TU.
y(t)
22
Tu/Ta
TP N3
Ta
Nomogramme 1
23
TP N3
Amplitude
Temps en secondes
Amplitude
Temps en secondes
Figure 4 : Rponse indicielle caractriser avec les mthodes Strejc et Broda
24
TP N3
Sortie en Volts
30
25
20
15
10
5
0
-5
0
5
Temps en Secondes
10
TP N3
La rponse indicielle peut tre trace dans une fentre graphique MATLAB, ce qui permet de faire
toutes les manipulations ncessaire sans imprimer la courbe.
Sauvegarder la rponse complte aprs avoir fait un zoom adquat. Identifier la fonction de transfert
de ce procd en utilisant la mthode adapte la rponse.
Une fois le modle tabli, vrifier sur le mme graphique la similitude entre les rponses indicielles
du procd et du modle. Pour cela, il suffit dappliquer le signal dentre petit signal sur le
procd et sur le modle et de tracer sur le mme graphe la rponse indicielle du systme avec celle
du modle identifi. Cette validation devra figurer dans votre compte rendu.
Identifier ensuite les procds prsents dans les fichiers "proc_2.mdl", "proc_3.mdl" ,
"proc_4.mdl" en adoptant la mme dmarche que prcdemment.
26
TP N4
BOUCLE OUVERTE
VS
BOUCLE FERMEE
Pendant ce T.P., on se propose dtudier le comportement dun systme vis--vis de diffrentes
excitations en boucle ouverte et en boucle ferme. Pour le travail prparatoire, il est demand
d'tablir les expressions littrales avant de donner les valeurs numriques des diffrents
paramtres.
Considrons le systme reliant la sortie y(t) une sortie dsire y*(t). Ce systme est du premier
ordre et a pour fonction de transfert :
G( p) =
3
0.5 p + 1
Y*(p)
K
A
G(p)=
K
A
Y(p)
1+ p
Figure 1
Travail prparatoire : Donner le gain statique et la constante de temps de L(p) "systme +
correcteur" en boucle ouverte.
I. SYSTEME EN BOUCLE OUVERTE
Deux signaux sont susceptibles d'affecter le fonctionnement du systme : u(p) reprsentant un
signal de perturbation sur la commande U(p) et y(p) le signal de perturbation sur la sortie Y(p).
u(p)
Y*(p)
U(p)
C(p)
y(p)
+
G(p)
+
Y(p)
+
Figure 2
27
TP N4
Travail prparatoire : Etablir lexpression littrale de Y(p) en fonction de Y*(p), u(p) et y(p).
Donner les constantes de temps et les gains statiques des diffrentes fonctions de transfert. Ecrire le
schma bloc prcdent sous la forme suivante :
Y*(p)
y(p)
u(p)
Figure 3
II. SYSTEME EN BOUCLE FERMEE
On reprend maintenant le mme systme mais cette fois-ci boucl avec un correcteur proportionnel
de gain A, C(p) = A.
u(p)
Y*(p)
U(p)
C(p)
y(p)
+
+
G(p)
Y(p)
Figure 4
Travail prparatoire : Etablir lexpression littrale de Y(p) en fonction de Y*(p), u(p) et y(p).
Donner les constantes de temps et les gains statiques des diffrentes fonctions de transfert. Ecrire le
schma bloc prcdent sous la forme suivante :
Y*(p)
y(p)
u(p)
Figure 5
28
TP N4
29
TP N4
G ( p) =
1
p + 2 0.3 10 p + 100
2
et C ( p ) =
1
.
p
Sachant que G(p) reprsente le systme asservir et C(p) le correcteur, reprsenter les diffrents
diagrammes de Bode des trois fonctions de sensibilit S(p), G(p) S(p) et T(p) de la boucle ferme
(retour unitaire).
On considre que le systme tudi est soumis une perturbation d'entre et une perturbation de
sortie. On dfinit la pulsation d'attnuation 6 dB pour une fonction de sensibilit comme tant la
pulsation pour laquelle l'effet de la perturbation est attnu d'un facteur 2 ou de 6dB.
A partir de ces indications et compte tenu des diagrammes de Bode obtenus, rpondez aux questions
suivantes en utilisant uniquement les trois rponses frquentielles prcdentes :
a) Donner la bande de pulsations d'attnuation pour les fonctions de sensibilit S(p) et T(p).
b) Quelle va tre l'amplitude en sortie d'une perturbation de sortie sinusodale de pulsation
s = 100 rad/s et 0,1 rad/s ?
c) Une perturbation de sortie de type chelon peut-elle tre rejete ?
d) Le systme boucl peut-il rpondre un chelon de consigne sans erreur de position ?
e) Le systme devant suivre une consigne sinusodale, donner la pulsation maximale pour
laquelle la sortie a la mme amplitude que la consigne.
f) Une perturbation d'entre de type chelon peut-elle tre rejete ?
g) Quelle va tre l'amplitude en sortie d'une perturbation d'entre sinusodale de pulsation
s = 100 rad/s et 0,1 rad/s ?
V. CONCLUSION
Aprs cette tude, quels sont les avantages de la boucle ferme sur la boucle ouverte ?
30
TP N5
1
G = min
i L ( j
i,180 )
La marge de module est la distance minimale entre le point critique et le lieu du systme. Ce
critre de stabilit est plus global que la marge de gain. L'expression de cette marge est donne
par :
M = ( -1- L ( j) )
On peut remarquer que :
min
= 1 + L ( j )
M = 1 + L ( j) min = S1 ( j)
min
min
= S ( j) max
La marge de phase : pour un module gal 1 ( = 0dB), c'est la valeur qu'il faut retrancher
la phase pour qu'elle soit gale -180. Dans le cas o il existerait plusieurs frquences de
La marge de retard R qui correspond au plus grand retard additionnel que peut supporter le
Dans le cas o il existe plusieurs frquences de croisement, l'expression de la marge de retard est
min i 0dB
i
i .
: R =
0dB
i
31
TP N5
Im[L(j)]
1
G
=
Re[L(j)]
0dB ; L( j 0dB) = 1
i
1.98
(p + 0.9) (p + 1) (p + 1.1)
3. TRAVAIL PRATIQUE
3.1 - Sous Matlab, en crant l'objet systme G, tracer les diagrammes de Bode, Nyquist et BlackNichols de G(p). Retrouver les marges de gain et de phase sur chaque diagramme et comparer les
valeurs avec celles dtermines lors du travail prparatoire.
En dduire la marge de retard et dterminer la marge de module.
32
TP N5
TP N5
34
TP N6
U(p)
C(p)
y(p)
G(p)
Y(p)
w(p)
Pour cela, l'automaticien a, sa disposition, plusieurs types de correcteur possdant chacun des
avantages et des inconvnients. Rappelons rapidement leffet des diffrents types disponibles de
correcteur pour une rgulation continue :
35
TP N6
1
Correcteur Proportionnel et Intgral (PI) : C ( p ) = K p 1 +
Ti p
Il supprime lerreur de position en rgime permanent mais diminue les marges de robustesse
car il sagit dune action retard de phase. Il peut dstabiliser le systme s'il est mal choisi.
T p
Correcteur Proportionnel et Driv (PD) : C(p) = K p 1 + d
.
1 + Td p
N
En pratique, il nest pas possible de raliser un drivateur idal (signaux nergie infinie).
On implante donc un module de drive filtre. Le rglage de la constante de filtrage Td/N
permet de limiter le gain donn aux hautes frquences. Le coefficient N correspond au gain
donn au module de drive filtre. En dautres termes, le bruit de mesure ou les
changements de consigne seront amplifis au plus par N.
Sauf cas particulier, ce type de correcteur est utilis avec des procds comportant un
intgrateur. Il amliore les performances en dynamique. Mal choisi, il est inefficace mais
rarement dstabilisant.
T p
1
+ d
Correcteur Proportionnel, Intgral et Driv (PID) : C(p) = K p 1 +
.
Ti p 1 + Td p
N
y*(t)
y(t)
TP N6
boucle ferme, elles agissent sur lordre du numrateur de la fonction de transfert du systme en
boucle ferme (cf. cours).
III. APPLICATIONS.
III.1. Correction PI
Le premier systme asservir est le suivant : G1 (p) =
0.5
( p + 1)( 0.5 p + 1)
37
TP N6
III.2. Correction PD
Le deuxime systme asservir est le suivant : G 2 (p) =
4
p
p ( p + 1) + 1
3
Travail prparatoire :
Avec ce type de correction, est-ce que le systme boucl est adapt pour rejeter une ventuelle
perturbation de type chelon en sortie et en entre ? Pour chaque cas, justifier la rponse.
Travail exprimental :
a) Tracer les diffrents tracs frquentiels pour le systme G2(p).
b) En dduire la valeur des paramtres suivants : marges de gain et de phase, rsonance en boucle
ferme. Pour chacun de ces paramtres, dterminer approximativement la pulsation associe.
c) Expliquer en quoi il est ncessaire de faire une correction de type avance de phase.
d) Est-il utile de tracer la rponse indicielle de ce systme en boucle ferme ?
e) On doit effectuer la conception du systme boucl avec un correcteur de type proportionnel et
driv et retour unitaire de faon vrifier les conditions imposes suivantes :
38
TP N7 & 8
On cherche asservir le systme thermique prsent dans la salle de TP. Ce systme est constitu
dun tube de PVC conduisant un flux ascendant dair chaud. Lair est chauff la base du tube par
une rsistance chauffante qui est elle-mme alimente par une tension dlivre par le microordinateur. La temprature est mesure par un thermocouple situ lextrmit suprieur du tube.
La tension dlivre par le capteur de temprature est comprise dans un domaine de 0 10 Volts.
Le cahier des charges spcifie que lasservissement devra remplir les conditions suivantes :
La sortie ne doit pas prsenter derreur de position.
Les marges de gain et de phase doivent avoir des valeurs correctes.
Le dpassement, suite une consigne de type chelon, doit tre infrieur 10 %.
Le temps de rponse doit tre le plus rapide possible.
La mise au point de lasservissement se fera sous lenvironnement Matlab. Il est indispensable de
tester la boucle ferme en simulation avant de l'appliquer sur le systme rel.
Remarques
1 - Le fichier aero.mdl contient les blocs de base permettant de connecter le PC au systme.
2 - Le compte rendu doit tre prcis et concis, il doit notamment faire apparatre clairement les
justificatifs qui ont conduisent aux choix des paramtres du modle et du correcteur proposs.
39