Vous êtes sur la page 1sur 38

TP AUTOMATIQUE Parcours S.I.

L3 EEA - L3 IE L3 EIA
UNIVERSITE DE CAEN
TRAVAUX PRATIQUES
AUTOMATIQUE.
Liste des travaux pratiques :
1 : Utilisation d'un logiciel de calcul matriciel et de simulation en
automatique.
2 : Utilisation d'un logiciel graphique de simulation de systmes physiques
SIMULINK / MATLAB.
3 : Identification des systmes.
4 : Boucle ouverte VS Boucle ferme.
5 : Etude de la stabilit d'une boucle ferme.
6 : Correction PI, PD, PID.
7 & 8 : Asservissement d'un systme thermique.

NOM : GROUPE :

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


2

Utilisation d'un logiciel de calcul matriciel
et de simulation en automatique :
MATLAB 6.5
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:
Mathmatique et calcul numrique
Dveloppement d'algorithmes
Modlisation, simulation et prototypage de systmes
Analyse des donnes, exploration et visualisation
Graphisme scientifique et engineering
Dveloppement d'applications notamment interface graphique.
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 :
"TOOLBOX".Ces botes outils permettent de traiter de problmes particuliers des sciences de
l'ingnieur:
Simulink pour la simulation des systmes
Control System toolbox pour la modlisation, l'analyse et la commande "classique" des
systmes dynamiques linaires stationnaires
Mu analysis and synthesis toolbox pour modlisation, l'analyse et la commande
"avance" des systmes dynamiques linaires stationnaires
Identification toolbox pour l'identification des systmes dynamiques linaires
stationnaires
etc.

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


3
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, c'est un logiciel trs ouvert. Sa limitation est de ne pas en offrir un "tout fait" pour un
utilisateur peu expert qui voudrait rsoudre un problme de CAO simple sans avoir faire de
dveloppements.
Dans le contexte de l'Automatique, MATLAB (MATrix LABoratory) offre un environnement 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 dboguage, 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 TP.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


4
ACCES A MATLAB
Matlab est, ici, 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 ci-
dessous :



AIDE SUR MATLAB
Il y a deux types daide sur Matlab 6.5. La premire correspond une aide gnrale trs intressante
mais qui est assez lente pour obtenir un renseignement sur une simple fonction. La deuxime est
une aide en ligne qui est trs prcieuse si lon veut viter de consulter en permanence laide
gnrale. Matlab est structur en sous-rpertoires de fonctions lmentaires. La liste des rpertoires
est obtenue en tapant help.
Fentre de travail :
Workspace
Rpertoire de travail
ou
Historique des commandes
Aide
ou
Dtails des variables du
workspace
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


5
matlab\datafun
Data analysis and Fourier transform functions.
matlab\elmat
- Elementary matrices and matrix manipulation.
matlab\elfun- Elementary math functions. matlab\general- General purpose commands.
matlab\funfun
-Function functions - nonlinear numerical methods.
matlab\color
- Color control and lighting model functions.
matlab\graphics- General purpose graphics functions. matlab\iofun- Low-level file I/O functions.
matlab\lang
- Language constructs and debugging.
matlab\matfun
- Matrix functions - numerical linear algebra.
matlab\ops
- Operators and special characters.
matlab\demos
- The MATLAB Expo and other demonstrations.
matlab\plotxy- Two dimensional graphics. matlab\polyfun- Polynomial and interpolation functions.
matlab\sparfun- Sparse matrix functions. matlab\specfun- Specialized math functions.
matlab\specmat- Specialized matrices. matlab\strfun- Character string functions.
matlab\plotxyz- Three dimensional graphics. matlab\sounds- Sound processing functions.
matlab\dde- DDE Toolbox.
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.
ZEROS(N) is an N-by-N matrix of zeros.
ZEROS(M,N) or ZEROS([M,N]) is an M-by-N matrix of zeros.
ZEROS(SIZE(A)) is the same size as A and all zeros.
Linstruction lookfor zeros permet dobtenir la liste dinstruction qui on un rapport avec la
fonction zeros.
I. UTILISATION ELEMENTAIRE
Dans une premire approche, on peut utiliser les fonctions de Matlab de manire squentielle pour
rsoudre un problme.

Exemple : zeros(5,2) crera une matrice de 5 lignes et deux colonnes remplies de zros. Les
lments de cette matrice sont logs dans une variable provisoire appele ans (answer), mais cette
variable sera de nouveau utilise par la fonction suivante.

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


6
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 yz (utiliser help).
La liste des variables en mmoire est obtenue par les commandes who (simple) ou whos (dtaille).

Rsolution d'un systme d'quations linaires.
Cherchons rsoudre le systme :
3x 2 y 1
x y 5
+ =

+ =


Sous la forme matricielle :
(

=
(

5
1
y
x
1 1
2 3
A X = B
La solution de ce problme est obtenue en calculant
1
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
du systme en visualisant l'intersection des deux droites :
y 1.5 x 0.5
y x 5
= +

= +


Connaissant dj la solution, nous choisissons un domaine de variation de x = [-3, 3].

Saisir " x=[-3:0.2:3];". On cre ainsi un vecteur tel que :
Son premier lment est -3.
Les lments suivants sont obtenus par incrmentation de 0.2.
Le dernier lment est le dernier nombre obtenu 3.
En utilisant laide et la fonction linspace, recrer la variable x.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


7
Calculer pour chaque quation respectivement les vecteurs y1 et y2. Avec la fonction plot,
reprsenter les deux courbes sur le mme graphique. Utiliser les possibilits d'annotation graphique
pour personnaliser votre graphe (title, grid,...).

Rechercher les coordonnes du point d'intersection avec :
1. ginput.
2. En changeant les chelles du graphe : axis.
3. En utilisant le zoom graphique.

II. UTILISATION LIEE A L'AUTOMATIQUE
Matlab utilise pour les systmes LTI (Linaire et Invariant dans le Temps) une reprsentation objet.
Cette reprsentation est commune pour tous les types de reprsentation (fonction de transfert, tat,
zros-ples-gain,...). Ici, nous ne verrons que la reprsentation par fonction de transfert.
1. Saisie des fonctions de transfert
La fonction de transfert ( )
1
2
p 2
G p
3p 6p 1
+
=
+ +
sera mise en mmoire grce linstruction :

sys1 = tf([1 2],[3 6 1]);
Le premier vecteur contient les coefficients du numrateur dans lordre des puissances dcroissantes
de p. Le deuxime contient les coefficients du dnominateur dans lordre des puissances
dcroissantes de p.
Lobjet systme sys1 est une structure comme le montre la rponse du logiciel linstruction
"get(sys1).
>>get(sys1)
num: {[0 1 2]}
den: {[3 6 1]}
Variable: 's'
Ts: 0
ioDelay: 0
InputDelay: 0
OutputDelay: 0
InputName: {''}
OutputName: {''}
InputGroup: {0x2 cell}
OutputGroup: {0x2 cell}
Notes: {}
UserData: []
Les diffrents champs fournissent tous les renseignements utiles pour caractriser le systme en
question.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


8

Le paramtre Ts = 0 prcise quil sagit dun systme continu, le champ ioDelay renseigne sur la
valeur dun retard pur ventuel. Pour obtenir la valeur du retard de lobjet sys, il faut saisir :
"sys1.ioDelay" (analogie avec les structures du langage C).
A noter que les champs num et den correspondent des cellules (cell en langage Matlab), aussi
pour obtenir la valeur du dnominateur de sys, il faut taper : "sys1.den{1}". Ce qui correspond
demander la valeur de la 1 cellule du champ den de la structure sys. On peut obtenir le vecteur
contenant les lments du dnominateur en utilisant lopration de vectorisation : "sys1.den{:}". Il
est possible de rcuprer le numrateur et le dnominateur dune fonction de transfert laide de la
fonction "tfdata".
2. affichage des fonctions de transfert
La manire dobtenir les caractristiques dun objet systme est tout simplement de taper son nom
dans le workspace :
>> sys1
Transfer function:
s + 2
---------------
3 s^2 + 6 s + 1

Entrer les fonctions de transfert suivantes et sauvegarder le numrateur et le dnominateur de
chaque systme dans des variables indpendantes. Vrifier leurs proprits laide des instructions
prcdentes.
2 3 4
2
0.5 1 2.5
G ; G ; G
0.05p 1 p 1
p 0.5p 1
= = =
+ +
+ +

3. Opration sur les fonctions de transfert
Il est possible dassembler 2 fonctions de transfert entre elles :
En srie :

>>sys_serie = sys1 * sys2;
En parallle :
>>sys_para=sys1 + sys2;

Dans les deux cas, vrifier le rsultat.
sys1 sys2
sys1
sys2

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


9

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. La variable sign dfinit le
type de bouclage (contre raction : - par dfaut sinon + pour une raction) :



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);
La rponse indicielle (e(t) = u(t)) laide de la fonction >>step(sys1);.
En cliquant sur le trac avec le bouton droit, il est possible de modifier les proprits du graphe et
surtout dobtenir des renseignements sur les temps de rponse ou dpassement du trac.
Tracer la rponse impulsionnelle et indicielle de sys2 et dterminer de manire graphique la valeur
de la sortie en rgime permanent et la valeur de la constante de temps. Vrifier ces valeurs avec
celles attendues.
Tracer ces deux rponses pour sys4. Mesurer la pseudo priode obtenue pour la rponse indicielle et
vrifier quelle correspond bien celle attendue.
5. Reprsentation frquentielle - rgime harmonique.
La reprsentation harmonique du systme est obtenue en appliquant un signal sinusodal lentre
du systme pour toutes les frquences et en posant p=jw.
Une fonction de transfert est alors compltement dcrite par son module et sa phase. Matlab calcule
la rponse en frquence dune fonction de transfert et se sert de cette rponse pour tracer les
diverses reprsentations utilises en automatique.
sys2

sys1
-
+
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


10
A noter qu'en anglais, frequency signifie la pulsation en rad/s (ce n'est pas la frquence en Hertz) et
quil est conseill dutiliser la fonction "ngrid".
Diagramme de Bode :
Le diagramme de Bode reprsente le module en dB et la phase en degrs en fonction du logarithme
de la pulsation.
Utiliser la fonction Bode pour tracer le diagramme de sys2. Mesurer le gain statique (module de G
2

pour w 0), la pulsation de coupure w
c
-3 dB, la pente de la courbe de gain lorsque w >> w
c
.
Comparer les rsultats aux valeurs thoriques. Faire le mme travail pour sys4.
Diagramme de Nyquist :
La reprsentation de Nyquist reprsente la fonction de transfert dans lespace complexe, ce lieu est
paramtr avec la pulsation.
Utiliser la fonction nyquist pour tracer le diagramme de sys2. Mesurer le gain statique (module de
G
2
pour w0). Faire le mme travail pour sys4.
Diagramme de Black-Nichols :
Cette reprsentation est plus simplement appele reprsentation de Black. Rappelons que lon porte
la phase en degr en abscisse et le module en dB en ordonne. Ce lieu est paramtr en pulsation.
Utiliser la fonction nichols pour tracer le diagramme de sys2. Mesurer le gain statique (module de
G
2
pour w 0), la pulsation de coupure w
c
-3 dB. Comparer les rsultats aux valeurs thoriques.
Faire le mme travail pour sys4.
III. PROGRAMMATION ET FUNCTIONS M-FILE.
Matlab est aussi un langage de programmation qui dispose de plusieurs instructions de saut
conditionnel (if, elseif, else, end) et de boucle du type : for, while.

Exemple : Que reprsente EPS dans la suite dinstructions suivantes?

EPS=1 ;
for i=1 :1000
EPS=EPS/2
if (1+EPS)<=1 EPS=EPS*2
break
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N1


11
end
end
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.
Utilisation des M-File :
A laide dune M-File, tudier les diffrents tracs frquentiels et temporels des fonctions de
transfert suivantes :
( ) ( )
( )
2
0
2 2
0 0
1 1 j 1 j 4
, , ,
j 1 j 4 1 j
j j 2 j

+ +
+ +
+ +

Pour le systme du deuxime ordre avec intgrateur, le facteur damortissement est gal 0.1 et la
pulsation propre est de 10 rd/s.
Pour les autres systmes, on prendra les valeurs suivantes : 1s = .
Dterminer le systme possdant la plus grande bande passante et le temps de rponse 5 % le plus
petit.
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

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N2


12

Utilisation d'un logiciel graphique de
simulation de systmes physiques :
SIMULINK / MATLAB

Matlab (voir TP 1) est un logiciel trs
performant pour le calcul numrique
et la visualisation. Ce logiciel permet,
entre autre, de calculer les rponses de
fonctions de transfert reprsentant des
systmes physiques. Afin d'amliorer
encore plus la convivialit de
certaines simulations, une Toolbox
particulire t cre : SIMULINK.
Celle-ci permet de raliser une
simulation grce une fentre
graphique o l'on ralise un schma-
bloc. On dispose d'un certain nombre
de bibliothques de SIMULINK
(Continuous, Discrete, Sources,
Sinks, etc.) ainsi que la possibilit
d'utiliser des variables dfinies sous
Matlab. Il est galement possible de
retourner des rsultats numriques
sous Matlab.
Pour accder la fentre de
commande de Simulink, il faut lancer
Matlab et taper simulink dans la
fentre de travail de Matlab ou cliquer
sur l'icne . Celle-ci est
reprsente sur la figure ci-contre.













TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N2


13
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 sous la rubrique "File". Les fichiers simulink possdent l'extension ".mdl".
Pour raliser un schma, 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 connexions entre la sortie du premier bloc et l'entre du deuxime bloc, toujours en
maintenant la souris clique.
Sauvegarder de temps en temps 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 Dormand-
Prince". 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>.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N2


14
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 ci-dessous.

Modifier les paramtres du bloc "Transfert Fcn" de manire utiliser le systme sys2 partir des
champs de l'objet systme sys2. Ajuster les paramtres de la simulation pour obtenir une rponse
indicielle complte. Vrifier les valeurs de la sortie en rgime permanent et la constante de temps
(vous pouvez utiliser les icnes de la figure graphique pour effectuer un zoom par exemple).
De manire visualiser le signal d'entre sur la mme figure, utiliser un multiplexeur en
slectionnant l'objet "Mux" de la bibliothque "Signals&Systems" et relier le signal d'entre et de
sortie de la fonction de transfert. Relier enfin la sortie du multiplexeur au Scope.
Il est possible de manipuler aussi des blocs contenant un objet systme. Ce bloc est prsent dans le
rpertoire "Control System toolbox". Il suffit dindiquer le nom du systme mmoris dans le
workspace de Matlab. Remplacer le bloc "Transfert Fcn" par le bloc "LTI System" de la
bibliothque "Control System toolbox". Vrifier le fonctionnement.
De manire visualiser les signaux sous Matlab, ajouter le bloc "To Workspace" dans le schma.
Pour rcuprer le temps de simulation, utiliser le bloc "Clock" puis tracer sous Matlab la rponse
du systme en fonction du temps. On peut aussi utiliser l'option "Workspace I/O" dans les
paramtres de simulation de Simulink.
3. EXEMPLE N 2
Pour raliser un systme boucl, introduire le comparateur en slectionnant l'objet "Sum" de la
bibliothque "Math". Par dfaut, l'objet slectionn est un sommateur. Il faut donc modifier ses
paramtres pour le transformer en comparateur.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N2


15





1 - Reproduire le systme boucl de la figure prcdente.
2 Introduire un gain proportionnel en slectionnant l'objet "gain" de la bibliothque "Math" avant
la fonction de transfert dans la chane directe. Modifier les paramtres du bloc "fonction de
transfert" afin de dfinir la fonction de transfert suivante :
3 2
10
sys5
p 6p 11p 6
=
+ + +

Rechercher approximativement le gain limite au-del duquel la sortie du systme boucl diverge.
4. EXEMPLE N3
On dsire tudier le systme de fonction de transfert
K
G(p)
1 p
=
+
boucl par un gain proportionnel
not A. K est le gain statique du systme et sa constante de temps (on prendra K = 1 et = 1 sec).
Dclarez l'objet systme correspondant not sys3. La fonction de transfert du systme boucl est
note F(p).







3.1. Modification du comportement : analyses frquentielle et temporelle.
Afin de voir les effets du bouclage sur la bande passante du systme, dterminer, sous Matlab, la
fonction de transfert en boucle ferme partir des paramtres de la fonction de transfert en boucle
ouverte.
Ensuite, sur la mme fentre graphique, tracer le diagramme de Bode des 2 fonctions de transfert
(boucle ouverte et boucle ferme). Quel est leffet du bouclage ? Justifier votre rponse en
comparant les paramtres des deux fonctions de transfert.

G(p)
Y*(p)
+
Y(p)
U(p)
-
+
G(p)
Y*(p)
+
Y(p)
A
U(p) (p)
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N2


16
Dterminer la bande passante 3db et le gain statique de ces deux fonctions de transfert et vrifier
que le produit bande passante*gain statique reste constant.
Afin de visualiser l'effet du bouclage dans le domaine temporel (avec Simulink), tracer sur le mme
graphe la rponse indicielle de F(p) et celle de AG(p). Le systme tant trs rapide, il sera peut
tre ncessaire de modifier la prcision de lalgorithme de simulation notamment le Min et le
Max Step Size. Dterminer les deux constantes de temps et les gains statiques de chaque rponse.
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 ?

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


17

Identification des systmes.
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 simple 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 dun processus sans intgrateur, on peut distinguer trois phases :
un temps de retard : T',
un temps de dcollement : T'',
un temps de monte : T
A
.

La somme des temps de retard et de dcollement est note . Ce retard correspond en fait au dlai
ncessaire pour quune commande ait une action significative sur la sortie. On appelle rglabilit le
rapport T
A
/. En pratique, le processus sera dautant plus facile rgler que ce rapport sera
important (retard pur petit).
I.2. Systme rglabilit leve.
On considre un systme comme ayant un coefficient de rglabilit lev lorsque le rapport T
A
/

est
suprieur 10. Toute action sur lentre provoque presque immdiatement une action sur la sortie et
les procds correspondants sont en gnral faciles asservir.

T' T''
y(t)
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


18
I.3. Systme faible rglabilit.
On place souvent dans cette catgorie les processus ayant un rapport T
A
/ infrieur 4 (limite tire
de lexprience industrielle). Si T
A
/ 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 rgulateurs 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 < T
A
/ < 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. Ce modle sera utilis ensuite
pour dterminer la loi de commande la plus adapte.
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.
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 . Comme ces systmes prsentent la particularit davoir une
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).
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


19
Dans le cas de systme plus complexe que le premier ordre pur, il est obligatoire dutiliser une
mthode didentification plus adapte.
II.3 Identification des systmes du premier ordre avec retard : modle de BRODA.
Si l'on recherche un modle du 1
er
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 t
1
et t
2
tels que:

En utilisant t
1
, t
2
, 0,4 y et 0,28 y, un calcul simple permet dtablir les relations suivantes :
1 2
2 1
2, 8t 1, 8t
5, 5(t t )
=
=

Do lexpression de G(p) avec les paramtres ainsi dtermins.
II.4. Identification des systmes dordre quelconque partir de la rponse indicielle.
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, tout comme
celui de Broda, bien qutant une reprsentation trs approximative du procd modliser ont t
couramment utiliss dans lindustrie car ils ne ncessitent pas lutilisation dun calculateur.
Aujourdhui, ces modles tendent disparatre car ils sont remplacs par des mthodes
didentification paramtriques beaucoup plus prcise (niveau BAC+5).
Modle de STREJC.
On cherche un modle de la forme :
( )
p
n
e
G(p) K
1 p

=
+

y 0,4 y
y(t)
0,28 y
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


20
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 : T
A
et T
U
.

Pour ce type de modle, on considre que la rglabilit du systme ne doit pas tre trop faible. A
partir de T
U
et T
A
, on identifie les paramtres , et n de la fonction de transfert, laide du
nomogramme 1 (figure suivante).
A noter que si le rapport T
u
/T
a
est trop faible, il possible de considrer + = ' T et ensuite de
travailler avec T'.
Si (n') nest pas un nombre entier, poser n ' n = + avec n entier (0<<1) et crire = . Si lon
travaille avec T
u
alors T
R
= + .
y(t)
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


21

Nomogramme 1
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


22
III. TRAVAIL PREPARATOIRE OBLIGATOIRE
Dterminer par les mthodes de Broda et de Strejc les fonctions de transfert qui sont l'origine de
ces rponses indicielles (une mthode appliquer par figure et amplitude de l'chelon : 2 Volts).



Temps en seconde
Amplitude
Temps en seconde
Amplitude
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


23

Lorsque la rponse indicielle prsente un dpassement, les prcdentes mthodes ne peuvent pas
tre utilises. Dans ce cas, on considre la rponse indicielle comme tant celle d'un systme du 2
nd

ordre caractris par un coefficient d'amortissement et une pulsation propre
0
. Les relations
donnant la valeur de ces paramtres en fonction des caractristiques de la rponse indicielle ont t
tablies en cours. En utilisant ces relations, identifier le systme dont la rponse indicielle est
donne ci-dessous.

IV. TRAVAIL PRATIQUE
IV.1 - Caractristique statique

A partir du fichier "proc_1.mdl" prsent dans votre rpertoire de travail, raliser avec SIMULINK,
un schma permettant de relever la caractristique statique point par point du procd identifier.
Relever la caractristique statique en envoyant une commande constante sur le procd. Dterminer
la plage de linarit du systme. Quelle est la valeur de la sortie Y
0
si U
0
=5V ? Le couple (U
0
, Y
0
)
est-il un point de fonctionnement acceptable ? Si non, en proposer un autre. Justifier votre rponse ?
Dterminer le gain statique du modle autour du point de fonctionnement.
Temps en seconde
Amplitude
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


24

IV.2 - Identification par les mthodes de Broda et Strejc
Toujours avec "proc_1.mdl", raliser une rponse indicielle autour du point de fonctionnement
choisi (lamplitude est dterminer en fonction de la caractristique statique).
La rponse indicielle peut tre trace dans une fentre graphique et stocke dans une variable
MATLAB en slectionnant le bloc "To Workspace" du rpertoire "Sinks"). Ainsi, elle pourra tre
utilise pour valider les modles obtenus.
Aprs avoir fait un zoom adquat, sauvegarder la rponse complte. Identifier la fonction de
transfert de ce procd. Pour cela, on commencera par mesurer le gain statique et ensuite la (les)
constante(s) de temps du systme.
Une fois le modle tabli, vrifier sur le mme graphique la similitude entre les rponses indicielles
du procd et du modle (utiliser "transport delay" du bloc "continuous" pour le retard si besoin).
Pour cela, il suffit dappliquer le signal dentre sur le procd et sur le modle et de tracer les deux
sorties sur le mme graphe la rponse indicielle du systme avec celle du modle identifi. Tracer
galement sur une autre figure le signal d'erreur.
Pourquoi la valeur du rgime permanent du modle est-elle diffrente de celle du procd
correspondant ? Modifier le schma du modle de manire obtenir le mme rgime permanent.
Identifier ensuite les procds prsents dans les fichiers "proc_2.mdl" en adoptant la mme
dmarche que prcdemment.

IV.3 Identification d'un systme lectrique
On dispose d'un botier contenant trois systmes lectriques :
un intgrateur
un systme du 1
er
ordre de fonction de transfert : ( )
( )
1
K
G p
1+ p
=


un systme du 2
nd
ordre de fonction de transfert : ( )
2
n
2
2 2
n n
K
G p
p +2 p+

=



On s'intresse l'identification des systmes rels G
1
(p) et G
2
(p). Des blocs, utilisables dans
l'environnement Simulink et permettant de dialoguer avec les convertisseurs de la carte
d'acquisition, ont t dvelopps.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N3


25
Connecter le procd lectrique sur le botier d'extension de la carte en utilisant la voie 2 bipolaire
et charger le fichier "proc_3.mdl". Vrifier que le bloc "Envoi d'une tension bipolaire sur la voie 2"
soit configur de manire gnrer une tension de 0 Volt en fin de simulation.
Pour chacun des systmes, autour d'un point de fonctionnement nul, appliquer l'instant t = 5 sec un
chelon de 1 Volt. En dduire la fonction de transfert des deux systmes.
Tracer ensuite le diagramme de Bode pour chacun des systmes et retrouver, partir de ces rponses
frquentielles les paramtres des deux modles.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N4


26

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
p
=
+
3
0 5 1 .

Travail prparatoire : Donner le gain statique (K) et la constante de temps () du systme.
L'objectif est de comparer, tout d'abord, le comportement du systme en boucle ouverte et ensuite
celui du systme en boucle ferme corrig par un correcteur proportionnel A. On prendra A=2 pour
les questions suivantes. En boucle ouverte, on a donc le schma-bloc suivant :
A
1+ p
G(p)=
Y(p)
K
Y*(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).






Figure 2
A
K
G(p)
Y(p)
Y
*
(p)
C(p)
U(p)

u
(p)
y
(p)
+
+
+ +
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N4


27
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 :


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.









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 :


Figure 5

Donner le nom de chacune de ces fonctions de transfert ?
Y*(p)

y
(p)

u
(p)
Y*(p)

y
(p)

u
(p)
G(p) Y(p)
Y
*
(p)
C(p)
+
-
U(p)
+

u
(p)
y
(p)
+
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N4


28
III. COMPARAISON BOUCLE OUVERTE - BOUCLE FERMEE
III.1. Bande passante
Travail pratique : Tracer les diagrammes de Bode reliant les signaux Y*(p),
u
(p) et
y
(p) Y(p),
en superposant le diagramme en boucle ouverte et en boucle ferme pour chaque fonction de
transfert.
a) Quel est l'effet du bouclage sur le diagramme de Bode de la fonction de transfert
Y(p)/Y*(p)?

b) Quel est l'effet du bouclage sur le rejet de perturbation (statique et dynamique) ?.

c) D'aprs ces courbes, l'influence d'une excitation sinusodale Y*(p) ou dune perturbation
sera-t-elle toujours la mme sur la sortie lorsque la pulsation de l'excitation change ?
Justifier.

III.2. Performances en poursuite et en rgulation
Travail pratique : l'objectif est d'tudier le comportement de y(t) lorsque y*(t),
u
(t) et
y
(t) sont
des signaux chelons ou sinusodaux. Raliser avec simulink et dans la mme fentre, le systme en
boucle ouverte (figure 2) et en boucle ferme (figure 4). Relier la sortie de ces deux systmes un
scope pour les comparer.
a) Excitation chelon : successivement pour chaque entre (y*(t),
u
(t) et
y
(t)), prendre un
chelon unitaire comme signal d'excitation. Pour chaque essai, on comparera les rsultats
obtenus (erreur de position : ( ) ( ) y* t y t et temps de rponse 5%) en boucle
ouverte et en boucle ferme. Retrouver ces rsultats par le calcul (thorme de la valeur
finale).
b) Excitation sinusodale : successivement pour chaque entre (y*(t),
u
(t) et
y
(t)), prendre un
signal sinusodal de pulsation 20 rad/s et d'amplitude unitaire. Pour chaque essai, on
comparera l'amplitude de la sortie en boucle ouverte et en boucle ferme. Pourquoi y a-t-il
des variations d'amplitude entre chaque entre en boucle ferme ?
c) Excitation sinusodale bis : Sans imprimer les rponses, refaire les mmes essais avec un
signal sinusodal de pulsation 1 rad/s et d'amplitude unitaire. Justifier la diffrence de
comportement de la sortie avec l'excitation prcdente (20 rad/s) ?
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N4


29
IV. ANALYSE DES PERFORMANCES D'UN SYSTEME BOUCLE
Sous Matlab, crer les fonctions de transferts suivantes :
( )
2
1
G p
p 2 0.3 10p 100
=
+ +
et ( )
1
C p
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) Quel 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.
f) Une perturbation d'entre de type chelon peut-elle tre rejete ?
g) Quel 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 ?


TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N5


30

ANALYSE D'UNE BOUCLE FERMEE
STABILITE - PERFORMANCES
1. RAPPELS ET DEFINITIONS :
La limite de stabilit en boucle ferme est caractrise par la valeur -1 (point critique) de la fonction
de transfert en boucle ouverte en rgime harmonique. Cette valeur correspond un module de 1 (0
dB) et une phase de -180. On dfinit :
La marge de gain G : pour une phase de -180, c'est la valeur du coefficient (not G) par
lequel il faut multiplier le module pour que celui-ci soit gal 1. On l'exprime gnralement en
dB (20*log((G)) et c'est sous cette forme qu'on le mesure dans le cas des diagrammes de Bode
et de Black-Nichols. Une autre dfinition donne : G est gale l'inverse du gain de L(j) pour
la pulsation laquelle le dphasage est de -180 (o L(j) = C(j) G(j)) :
( )
i
i, 180
1
G min
L j

| |
|
=
|

\

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 :
( ) ( ) ( )
min min
M -1- L j 1 L j = = +
On peut remarquer que : ( ) ( ) ( )
1
1
min max
min
M 1 L j S j S j

= + = =
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
croisement, l'expression de la marge de phase est :
i 0dB
i
i
min

| |
=
|
\

La marge de retard R qui correspond au plus grand retard additionnel que peut supporter le
systme sans entraner la dstabilisation du systme en boucle ferme :
0dB
R

=

.
Dans le cas o il existe plusieurs frquences de croisement, l'expression de la marge de retard est
:
i 0dB
i
i
0dB
i
min
R

| |

|
\
=

.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N5


31

Figure 1 : Lieu de Nyquist (hodographe) d'une fonction de transfert en boucle ouverte
avec ses marges de stabilit.
2. TRAVAIL PREPARATOIRE
2.1 - Soit la fonction de transfert suivante :
1.98
G(p)
(p 0.9) (p 1) (p 1.1)
=
+ + +

Tracer les 3 diagrammes asymptotiques de G(p) (Bode, Nyquist et Black-Nichols).
2.2 Afin de faciliter les calculs, on considre que G(p) possde un ple triple en 1. Dans ces
conditions, calculer les marges de gain et de phase ainsi que les pulsations associes ces marges.
Si ce systme est boucl avec un gain proportionnel, quel doit tre la valeur de ce gain pour avoir
une marge de phase de 45. Justifier la rponse par le calcul et graphiquement.
Calculer la valeur du gain limite K
lim
qui amne le systme la limite de stabilit. Dans ce cas,
quelle est la valeur de la pulsation de loscillation de sortie (en rad/s) ?
3. TRAVAIL PRATIQUE
3.1 - Sous Matlab, en crant l'objet systme G, tracer les diagrammes de Bode, Nyquist et Black-
Nichols 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.
Re[L(j)]
Im[L(j)]

1
G

M
=
0dB 0dB
i i
; L( j ) 1 =
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N5


32
Illustration des marges de stabilit :
Raliser sous Simulink le schma suivant

Figure 2 : systme boucl raliser
Dans ce schma, les blocs "retard variable" (Transport Delay) et gain ont t introduits de manire
vrifier la valeur des marges de gain et de retard.
Avec un gain unitaire, trouver exprimentalement la valeur du retard au-del de laquelle le systme
boucl devient instable. Comparer cette valeur avec la marge de retard R calcule prcdemment.
Mesurer la pulsation d'oscillation de la sortie lorsque le systme est en limite de stabilit.
Avec un retard nul, retrouver, en simulation, la valeur du gain au-del duquel le systme boucl
devient instable. Comparer cette valeur avec la marge de gain G calcule prcdemment. Mesurer
la pulsation d'oscillation de la sortie lorsque le systme est en limite de stabilit. Est-ce la mme ?
Expliquer.
3.2 Application sur le procd lectrique
L'objectif est de faire l'tude de la stabilit concernant un systme lectrique constitu par la mise en
srie des systmes du 1
er
ordre et du 2
nd
ordre identifis lors du TP identification.
En reprenant les fonctions de transfert identifies, construire sous Matlab l'objet systme
correspondant la mise en srie des deux systmes. Recommencer le travail demand lors du
paragraphe 3.1 avec ce nouveau systme (sans la mesure de la pulsation d'oscillation).
Aprs avoir reli la sortie du systme du 1
er
ordre l'entre du systme du 2
nd
ordre, connecter la
l'entre du 1
er
ordre au botier d'extension de la carte en utilisant la voie 2 bipolaire et la sortie du 2
nd

ordre une entre analogique. Charger le fichier "proc_3.mdl". Le modifier de manire reproduire
le schma de la figure 2. Vrifier que le bloc "Envoi d'une tension bipolaire sur la voie 2" soit
configur de manire gnrer une tension de 0 Volt en fin de simulation.
Vrifier exprimentalement les rsultats obtenus en simulation avec vos modles. Les rsultats sont-
ils diffrents ? Expliquer.
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N5


33
3.3 Compromis performances - stabilit
L'objectif est de mettre en vidence le compromis performance stabilit sur le systme du 3
me

ordre en simulation. Reprendre les fonctions de transfert identifies. Choisir quelques valeurs
adquates de gain et l'aide de la rponse indicielle du systme en boucle ferme et des tracs
frquentiels (Bode, Nyquist et Black-Nichols), illustrer ce compromis. Pour cela, valuer, dans
chaque cas, les performances ainsi que les marges de stabilit correspondantes.

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N6


34

CORRECTION PI, PD, PID
I. RAPPEL SUR L'OBJECTIF D'UN ASSERVISSEMENT.
Une configuration gnrale de systme boucl avec un retour unitaire est la suivante :





Figure 1 : systme en boucle ferme
Le problme est de choisir le correcteur C(p) et de rgler ses paramtres pour que l'asservissement
fonctionne correctement c'est--dire faire suivre le mieux possible la sortie du systme y(t) vers le
signal de rfrence y*(t) malgr la prsence de perturbations qui agissent sur le systme.
u
(t) et

y
(t) reprsente les perturbations qui agissent respectivement l'entre et la sortie du systme. w(t)
reprsente du bruit de mesure. De plus, la commande u(t) doit tre admissible pour le systme
(problme de saturation des actionneurs par exemple).
Ce rglage est effectu de manire respecter des spcifications imposes par un cahier des charges.
Ainsi, il peut tre demand d'avoir :

une bonne prcision statique (rgime permanent)
un faible temps de rponse et dpassement limit
un bon rejet des perturbations, problme de rgulation
un bon suivi de trajectoire, problme de poursuite
une bonne stabilit
une bonne robustesse (garantir le bon fonctionnement sur le procd rel)
etc.

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 :
G(p)
Y(p)
Y
*
(p)
C(p)
+
-
U(p)
+

u
(p)
y
(p)
+
+
w(p)
TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N6


35
II. CARACTERISTIQUES PRINCIPALES DES CORRECTEURS P, PI, PD, PID.
Correcteur Proportionnel (P): ( ) C p K
p
= .
Laugmentation de K
p
amliore la prcision statique et peut aussi amliorer les performances
en dynamique mais un gain trop important peut dstabiliser un systme.
Correcteur Proportionnel et Intgral (PI) : ( )
p
i
1
C p K 1
T 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.
Correcteur Proportionnel et Driv (PD) :
d
p
d
T p
C(p) K 1
T
1 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 T
d
/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.
Correcteur Proportionnel, Intgral et Driv (PID) :
d
p
d
i
T p 1
C(p) K 1
T
T p
1 p
N
| |
|
= + +
|
|
+
|
\
.
Il regroupe les avantages et les inconvnients des correcteurs prcdents.
Sous cette forme, il s'agit de la forme fondamentale, standard ou mixte du PID.


Figure 2 : exemple de structure de correcteur PID
y(t)
u
y
*
(t)

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N6


36
Il existe plusieurs structures de P.I.D. Si ces structures ne modifient pas la position des ples en
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 :
( )( )
1
0.5
G (p)
p 1 0.5p 1
=
+ +

Le cahier des charges prcise pour le systme en boucle ferme :
L'erreur de position doit tre nulle en rgime permanent.
Le dpassement de sa rponse indicielle doit tre de 25% au maximum.
Les marges de stabilit doivent tre suffisantes (M>-6dB, >40).
Travail prparatoire :
a) Pour rpondre aux spcifications du cahier des charges, quelle(s) action(s) le correcteur doit-il
contenir ? Justifier la rponse.
b) Etablir l'expression de l'erreur de position et montrer que le correcteur PI permet d'annuler cette
erreur.
c) Avec ce type de correcteur, 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.
d) Par la mthode du lieu des racines, montrer que si lon utilise un correcteur PI, la diminution du
temps de monte est limite et montrer que cela entrane obligatoirement une augmentation du
dpassement. Que faut-il faire pour liminer cet inconvnient ?
e) Compte tenu du cahier des charges, quel est le contour (en dB) que doit tangenter le diagramme
de Black de la fonction de transfert en boucle ouverte ? Quelle est la valeur du coefficient
d'amortissement associ ?
Rappel : La valeur du 1
er
dpassement et le facteur de rsonance sont donns respectivement par les
relations suivantes :
2
/ 1
%
D 100 e

= et
2
1
Q
2 1
=

.
Travail exprimental : en utilisant les diffrents abaques, synthtiser un correcteur qui rpond aux
spcifications. Justifier les valeurs des paramtres de C(p) par une analyse frquentielle rigoureuse.
Vrifier le comportement temporel du systme corrig en utilisant le fichier boucle_fermee.mdl.

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N6


37
III.2. Correction PD
Le deuxime systme asservir est le suivant :
( )
2
4
G (p)
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 G
2
(p).
b) En dduire la valeurs 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 :
L'erreur de position doit tre nulle en rgime permanent.
Le premier dpassement de sa rponse indicielle ne doit pas dpasser 20%.
Les marges de stabilit doivent tre suffisantes (M>-6dB, >40).
Dterminer les paramtres du correcteur avance de phase permettant de rpondre aux
spcifications. Calculer les marges de stabilit du systme corrig.
f) Vrifier le comportement temporel du systme corrig en utilisant le fichier boucle_fermee.mdl.
et dterminer le temps de rponse 5%.

III.3. Correction PID
a) Asservir le systme G
1
(p) avec un PID standard ou mixte de manire obtenir un temps de
rponse minimal avec les marges de stabilit spcifies par le cahier des charges.
b) Comparer les performances du systme boucl pour diffrentes structure de PID (forme parallle,
srie, actions drive ou proportionnelle et drive appliques sur le signal de sortie.

TP AUTOMATIQUE L3 EEA L3 IE L3 EIA TP N7 & 8


38

Asservissement d'un systme thermique.

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 micro-
ordinateur. 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.