Cours 1 A
Cours 1 A
Cours 1 A
chantillonne
Version 2010/2011
Gonzalo Cabodevila
[email protected]
TDs : G. Cabodevila, D. Chappe, A. Janex, B. Lang
1
re
anne
Semestre jaune
AUT1 - Automatique
cole Nationale Suprieure de
Mcanique et des Microtechniques
26, chemin de lpitaphe
25030 Besanon cedex FRANCE
http://intranet-tice.ens2m.fr
Preface
Le choix de lenseignement de lautomatique echantillonnee d`es la premi`ere annee se fonde sur la constata-
tion que la majorite dentre vous ont acquis les bases de lautomatique lineaire continue pendant les classes
preparatoires. Celles et ceux pour qui cette hypoth`ese est fausse auront un peu de travail personnel supplementaire
` a fournir. Les enseignants sont l`a pour vous aider, nhesitez pas `a poser des questions. Par ailleurs, la biblioth`eque
poss`ede quelques ouvrages de qualite tels que [1] et [2] sans oublier les techniques de lingenieur, accessibles en
ligne au sein de lecole.
Ce polycopie
1
nest gu`ere quun document vous epargnant la recopie de formules, la presence en cours est
indispensable. Enn, je ne saurai que trop vous conseiller de lire dautres ouvrages traitant du meme sujet,
notamment [3], [4], [5] ou [6] (vous noterez une etrange ressemblance avec ce dernier ouvrage, cetait mon prof !).
Il existe aussi quelques ouvrages au format PDF disponibles gratuitement sur internet ([7], [8], [9], [10], [11])
que je vous conseille vivement de telecharger an davoir une deuxi`eme version des faits.
Le cours est organise sous la forme de 6 lecons aussi independantes que possible. Des rappels des notions utiles
pour la comprehension de la lecon seront faits au debut de chaque seance, neanmoins une relecture des notes
de cours (15mn) est indispensable.
Lhomme de science le sait bien, lui, que seule la
science, a pu, au l des si`ecles, lui apporter lhorloge
pointeuse et le parcm`etre automatique sans lesquels
il nest pas de bonheur terrestre possible.
Pierre Desproges
Extrait de Vivons heureux en attendant la mort
Peut-on, dans la vie, triper sur quoi que ce soit,
sans se faire un peu chier pour lapprendre ?
Pierre Foglia
1. Ce cours est redige avec L
A
T
E
X, les transparents sont faits avec L
A
T
E
Xet le package Beamer. Les courbes sont le plus souvent
tracees avec Matlab
c
et les dessins sont fait avec Draw de Open Oce, Inkscape, les packages PGF et TIKZ ou Matlab.
3
4
Table des mati`eres
1 Introduction 9
1.1 Denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Exemples dasservissements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Mise en uvre des asservissements numeriques . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.1 Technologie des asservissements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 Echantillonnage et quantication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.4.1 Le bruit de quantication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5 Periode dechantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.5.1 Le probl`eme de la periode dechantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.5.2 Le recouvrement de spectre avec les mains . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.5.3 Bruit sur la derivee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.5.4 Choix de la periode dechantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2 Transformee en z 25
2.1 Denition de la transformee en z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2 Proprietes de la transformee en z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3 Calcul de la transformee en z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.3.1 Par la formule de denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.3.2 Par la theorie des residus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.3.3 Par lutilisation des tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4 Transformee inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.1 Theorie des residus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.2 Par division polynomiale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.3 Par lutilisation des tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.5 Transmittances echantillonnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.5.1 Notions de schema bloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.5.2 Transformee en z dun schema bloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.5.3 Transformee dun syst`eme precede par un bloqueur dordre 0 . . . . . . . . . . . . . . . 33
2.5.4 Transmittances echantillonnees de syst`emes boucles . . . . . . . . . . . . . . . . . . . . 35
2.5.5 Avec Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3 Analyse des syst`emes 37
3.1 Stabilite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.1.1 Conditions de stabilite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1.2 Crit`ere de Jury . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1.3 Crit`ere de Routh-Hurwitz applique sur la transformee en w . . . . . . . . . . . . . . . . 39
3.1.4 Avec Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.2 Correspondance des plans z et p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2.1 Reponse impulsionnelle en fonction de la position des poles. . . . . . . . . . . . . . . . . 42
3.3 Le lieu dEvans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.3.1 Denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.3.2 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.4 Precision des syst`emes echantillonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.4.1 Erreur vis-`a-vis de la consigne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.4.2 Erreur vis-`a-vis de la perturbation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.4.3 Extension du raisonnement `a tous types dentrees . . . . . . . . . . . . . . . . . . . . . . 48
5
6 TABLE DES MATI
`
ERES
3.4.4 Cycle limite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4 Transposition des correcteurs analogiques 51
4.1 Les dierentes approximations de la derivee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.1.1 Dierences vers larri`ere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.1.2 Dierences vers lavant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.1.3 Transformation bilineaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.1.4 Avec Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.2 PID analogique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2.1 Reglages de Ziegler-Nichols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2.2 P, PI, ou PID? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.3 Le PID numerique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.3.1 Reglages de Takahashi pour un regulateur PID numerique ltre . . . . . . . . . . . . . 58
4.4 Mise en uvre dun asservissement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.4.1 Anti windup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.4.2 Predicteur de Smith . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.4.3 Algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5 Synth`eses `a temps detablissement ni 65
5.1 Synth`ese en z de correcteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.1.1 Exemple idiot... mais riche denseignements . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2 Synth`eses `a temps detablissement ni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.2.1 Synth`ese `a temps detablissement minimal absolu . . . . . . . . . . . . . . . . . . . . . . 68
5.2.2 Synth`ese `a temps detablissement minimal non absolu . . . . . . . . . . . . . . . . . . . 68
5.2.3 Reponse pile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.2.4 Applications des synth`eses `a temps detablissement ni . . . . . . . . . . . . . . . . . . 71
5.2.5 Exemples de reponse pile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.3 Resolution de lequation diophantienne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6 Methodes de commande avancees 77
6.1 Choix des poles en boucle fermee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.2 Methode de Zdan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.2.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.2.2 Correcteur de Zdan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.3 Commande RST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.3.1 Synth`ese de la loi de commande RST . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6.3.2 Choix des polynomes A
m
, B
m
et A
0
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.3 Cas particulier du correcteur RST : le correcteur serie . . . . . . . . . . . . . . . . . . . 84
Bibliographie 85
I Annexes 89
A Tables de transformees 91
B Travaux diriges 95
B.1 TD n1 : Frequence dechantillonnage et equations recurrentes . . . . . . . . . . . . . . . . . . 97
B.2 TD n2 : Syst`emes recurrents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
B.3 TD n3 : Asservissement numerique de vitesse . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
B.4 TD n4 : Etude dun four electrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
B.5 TD n5 et 6 : Etude dun asservissement de position . . . . . . . . . . . . . . . . . . . . . . . . 101
B.6 TD n7 : Methode de Zdan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
B.7 TD n8 : Synth`ese dun regulateur RST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Chapitre 1
Introduction
1.1 Denition
Lautomatique est la science qui traite de lanalyse et de la commande des syst`emes dynamiques evoluant
avec le temps. En dautres mots de lautomatisation de taches par des machines fonctionnant sans intervention
humaine.
Wikipedia
Cest une partie dun ensemble plus vaste nomme cybernetique. Denie en 1947 par Norbert Wienner, la
cybernetique est la base de la robotique, de lautomatique, de lintelligence articielle et de la theorie de
linformation.
1.2 Exemples dasservissements
1.2.1 Historique
Lhistoire de lautomatique demarre sans doute d`es la prehistoire. En eet, le masque du sorcier prehistorique
est une premi`ere tentative de donner une vie propre `a un objet inanime.
Le syst`eme souvent cite comme etant la premi`ere realisation dun correcteur automatique est la clepsydre de
Ktesibios (-270 av. J.C) (gure 1.1). An dameliorer le principe de lhorloge `a eau, Ktesibios introduit un
reservoir supplementaire dans lequel le volume de liquide reste constant grace `a un otteur qui ferme lentree
du reservoir lorsque celui-ci est trop plein. En gros, cest une chasse deau moderne.
Figure 1.1 Clepsydre de Ktesibios (-270 av. J.C., Alexandrie).
Lhorloge, des si`ecles plus tard, est encore un moteur de decouvertes dans le domaine de lautomatique.
Lechappement `a ancre nest gu`ere quun stabilisateur de frequence. Les developpements de lhorloge conduisent
alors `a la creation dautomates extremement compliques. Citons, `a titre dexemple, le canard de Vaucanson
7
8 CHAPITRE 1. INTRODUCTION
(1709-1782) (gure 1.2) qui pouvait boire, se nourrir, caqueter, nager, digerer et defequer. Lidee de la pro-
grammation est nee `a peu pr`es `a la meme epoque. En 1728, Jean-Philippe Falcon cree le premier metier `a tisser
programmable par cartons perfores. Vaucanson realise un metier `a tisser programme en 1745, et en 1801 le
cel`ebre metier `a tisser automatique programmable de Joseph-Marie Jacquard.
Figure 1.2 Canard de Vaucanson ( 1739).
Figure 1.3 Metier `a tisser programmable.
Figure 1.4 Cartes perforees, le debut de la pro-
grammation.
A la meme epoque dautres syst`emes voient le jour, pousses par la revolution industrielle qui est en marche.
Denis Papin developpe la soupape de securite (gure 1.5) pour les syst`emes fonctionnant `a la vapeur et James
Watt invente le regulateur de vitesse `a boule (gure 1.6).
Les realisations precedentes ne manquent pas dingeniosite, neanmoins il faudra attendre larrivee de lelectricite
puis de lelectronique pour voir apparatre les premiers correcteurs en tant que tels. Enn, le developpement
des microprocesseurs puis celui des microcontroleurs permet aujourdhui de mettre en uvre des principes de
commande tr`es elabores, notamment :
le pilotage de syst`emes instables
les commandes robustes
lidentication en ligne
la commande de syst`emes non lineaires
la commande predictive
...
1.2. EXEMPLES DASSERVISSEMENTS 9
Figure 1.5 Soupape de securite de Denis Papin
( 1679). Figure 1.6 Regulateur de vitesse de Watt (1788).
Les gures 1.7 et 1.8 representent deux exemples de stabilisation de syst`emes instables, les gures 1.9 et 1.10
representent quant `a elles deux exemples de syst`emes instables pour lesquels le correcteur na rien pu faire.
Dans les deux cas, le correcteur ny est pour rien. Une erreur humaine et une erreur de conception sont `a
lorigine des deux probl`emes.
Figure 1.7 Fusee Ariane (ESA). Figure 1.8 Avion de combat Rafale (Dassault).
10 CHAPITRE 1. INTRODUCTION
Figure 1.9 Fusee Ariane (ESA). Figure 1.10 Centrale electrique de Tchernobyl.
Retenez encore quaujourdhui sur 100 syst`emes meritant detre asservis :
10 le sont eectivement,
mais 9 sont mal asservis.
1.3. MISE EN UVRE DES ASSERVISSEMENTS NUM
ERIQUES 11
1.3 Mise en uvre des asservissements numeriques
Le schema general dun asservissement analogique est represente en gure 1.11, sa transposition en commande
numerique est representee en gure 1.12.
Figure 1.11 Syst`eme asservi lineaire continu.
Figure 1.12 Syst`eme asservi lineaire echantillonne. (Ne cherchez pas les boites CAN et CNA sous simulink, elles
nexistent pas ! CAN est intrins`eque en passant de continu `a echantillonne, CNA sappelle en fait ZOH pour Zero Order Hold.)
Les avantages de lasservissement numerique sont nombreux, en voici quelques uns.
Realisation aisee de regulateurs complexes, lois de commande ranees.
Facilite de mise en oeuvre de commandes anticipatrices (compensation par rapport `a la consigne ou `a
certaines perturbations).
Mise en oeuvre dalgorithmes de regulation sans equivalent analogique.
Insensibilite de la caracteristique entree-sortie du regulateur aux parasites, aux variations de temperature,
au vieillissement, etc.
Pas de dispersion des param`etres du regulateur en cas de fabrication en serie.
Prise en compte de defauts, des limites et comportements particuliers du syst`eme `a regler (non linearites,
saturations) par simple programmation.
Linearisation autour dun point de fonctionnement ajustable.
Generateur de trajectoires integre.
Changement de correcteur souple et rapide.
Interface utilisateur conviviale.
Plusieurs syst`emes corriges par un seul microprocesseur.
12 CHAPITRE 1. INTRODUCTION
Il y a aussi quelques inconvenients quil convient de connatre pour mieux les contourner. Notamment lobserva-
tion discontinue de la grandeur reglee, le syst`eme est en boucle ouverte entre deux instants dechantillonnage.
Sans precautions particuli`eres, le bouclage numerique ins`ere des non linearites dans la boucle de regulation
dues :
`a la quantication des convertisseurs,
`a la precision de calcul nie du microprocesseur,
au procede dechantillonnage (recouvrement spectral).
Ces non linearites peuvent avoir un eet destabilisant (cycles limites) et introduisent des bruits supplementaires,
voire des battements. Un autre phenom`ene important est linsertion de retards purs dans la boucle de regulation
dus au temps de conversion analogique-numerique (A/N) et numerique-analogique (N/A) et au temps dexecution
de lalgorithme de regulation, or les retards purs sont tr`es destabilisants.
1.3.1 Technologie des asservissements
Le choix du support materiel dun asservissement numerique est evidemment fonction de lobjet controle. La
gamme de supports est vaste, pour xer les idees voici trois syst`emes complets.
Dans le cas de syst`emes tr`es complexes, necessitant plusieurs asservissements simultanes, des interfaces utili-
sateurs conviviales, le choix se porte sur des calculateurs industriels qui se presentent sous la forme dun rack
dans lequel on ins`ere des cartes `a microprocesseur et des cartes dentrees sorties. La puissance de calcul nest
pas limitee.
Figure 1.13 Kit de developpement sur Bus VME. Figure 1.14 Carte d acquisition haute densite.
96 voies analogiques 12 bits 3 Mech./s.
La programmation de ces syst`emes fait appel `a un syst`eme dexploitation multitache temps reel.
A linverse, pour des syst`emes simples, un microcontroleur
1
sut. La programmation se fait alors en C ou
en Assembleur, les microcontroleurs plus puissants acceptent sans probl`eme un syst`eme dexploitation temps
reel
2
.
Entre les deux, il existe des cartes de puissance intermediaire telle que la SSV DIL/NetPC DNP/5280. Celle-ci
poss`ede 8Mo de ROM et 16 Mo de RAM (`a comparer aux 8192 mots de ROM et 368 octets de RAM dun PIC
16F877) ainsi que pratiquement tous les bus classiques (I2C, SPI, CAN et une interface Ethernet)
Enn, il existe les DSP : Digital Signal Processing, dedies au calcul rapide et ottant, plutot utilises dans des
applications necessitant du traitement du signal consequent.
Et pour nir, sachez que les PID industriels soit disant analogiques cachent un microcontroleur, cette technologie
permettant de realiser des constantes de temps impossibles `a realiser en analogique. Mais aussi, de gerer des
alarmes, des saturations, des modes de defaut, etc. Vous trouverez au 4.2.1 page 55 une methode rapide pour
determiner les coecients de ces correcteurs.
1. Microcontroleur = sur la meme puce microprocesseur+ peripheriques : horloges, entrees sorties binaires et analogiques,
liaisons numeriques, ...
2. RTLinux par exemple qui presente lavantage detre gratuit.
1.3. MISE EN UVRE DES ASSERVISSEMENTS NUM
ERIQUES 13
Figure 1.15 Microcontroleur ADUC.
Figure 1.16 Carte microcontroleur SSV DIL/NetPC DNP/5280.
CAN
An de faire traiter le signal par un microprocesseur, il faut le lui rendre accessible, cest le role du convertisseur
analogique numerique. Plusieurs methodes de conversion existent
3
.
CNA
Le convertisseur numerique analogique le plus connu est fonde sur le principe du reseau R-2R comme illustre
sur la gure 1.19. Ce principe est tr`es consommateur de surface de silicium, aussi la grande majorite des micro-
controleurs nen poss`edent pas. Une autre methode de conversion consiste `a utiliser le principe de modulation
en largeur dimpulsion (MLI, en anglais PWM). Le principe est de faire varier la valeur moyenne du signal de
sortie binaire (0 - 5V) en faisant varier la largeur de limpulsion. Un ltre RC ltrera les variations rapides,
ne laissant passer que les variations lentes soit le signal desire. Ce principe presente lenorme avantage de ne
demander quun bit de sortie du microcontroleur par rapport `a 16 bits pour un CNA classique !
3. dessins tires de : http://hyperphysics.phy-astr.gsu.edu/hbase/electronic/adc.html
Figure 1.17 Regulateur analogique de type PID.
14 CHAPITRE 1. INTRODUCTION
Convertisseur `a rampe numerique Convertisseur `a pesees successives Convertisseur ash
lent, precis = rapide, moins precis
Figure 1.18 Principes de conversion analogique numerique.
Figure 1.19 Convertisseur
numerique analogique de type
reseau R-2R.
Figure 1.20 Signal module en modulation de largeur dimpulsion avant
et apr`es ltrage haute frequence.
1.4 Echantillonnage et quantication
La gure 1.21 montre la dierence fondamentale entre le signal analogique et le signal echantillonne et quantie
que le microcontroleur percoit. Ce signal est en fait une suite de nombres codes sur n bits (typiquement 8 `a
16 bits)
En observant le signal echantillonne et quantie (en bas `a droite de la gure 1.21), la tentation est grande de
vouloir sapprocher du signal analogique en essayant de faire du quasi-continu par un surdimensionnement
des deux param`etres principaux que sont la frequence dechantillonnage et le pas de quantication. Les deux
parties suivantes, je lesp`ere, vous en dissuaderont.
1.4.1 Le bruit de quantication
Pour un signal sinusodal damplitude egale `a la dynamique du convertisseur, le rapport signal `a bruit SNR
4
est de :
SNR = 6 n 4, 76
o` u n est le nombre de bits du convertisseur
En pratique on choisit n tel que le rapport signal `a bruit de lensemble ne soit pas trop diminue par la
quantication. Il existe des convertisseurs de : 8, 10, 12, 16, 24 bits. Il existe aussi des convertisseurs ayant une
caracteristique logarithmique.
4. SNR : Signal to Noise Ratio
1.4. ECHANTILLONNAGE ET QUANTIFICATION 15
Figure 1.21 Echantillonnage et quantication dun signal.
Figure 1.22 Bruit de quantication dun signal.
16 CHAPITRE 1. INTRODUCTION
1.5 Periode dechantillonnage
1.5.1 Le probl`eme de la periode dechantillonnage
La gure 1.23 montre un meme signal echantillonne `a plusieurs frequences, lorsque la periode dechantillonnage
T
e
est egale `a la moitie de la frequence du signal, on voit quil devient impossible de reconstituer le signal
original.
Figure 1.23 Signaux echantillonnes `a dierentes frequences.
En augmentant encore la periode dechantillonnage on tombe sur des aberrations comme illustre en gure 1.24.
Figure 1.24 Signal ostensiblement sous-echantillonne.
1.5.2 Le recouvrement de spectre avec les mains
Sans entrer dans les detail du traitement du signal rappelons une constante des transformees usuelles, Laplace,
Fourier et bientot z : le produit de fonctions temporelles est transforme en un produit de convolution dans
lespace operationnel. En particulier pour la transformee de Fourier :
x(t) y(t)
Fourier
X(f) Y (f) (1.1)
x(t) y(t)
Fourier
X(f) Y (f) (1.2)
La relation 1.1 est illustree en gure 1.25.
En fonction des valeurs relatives de F
max
et F
e
on obtient deux types de spectres dierents comme illustre en
gure 1.26.
1.5. P
ERIODE D
ECHANTILLONNAGE 17
Figure 1.25 Spectre dun signal echantillonne (echantillonnage parfait).
Figure 1.26 Phenom`ene de recouvrement de spectre.
Lorsque F
max
> F
e
/2, il se produit le phenom`ene de recouvrement de spectre, `a ne pas confondre avec le
repliement de spectre. Si ce phenom`ene se produit, il est alors impossible de reconstituer le signal original, do` u
le theor`eme de Shannon :
Le theor`eme de Shannon Toute fonction du temps f(t) possedant un spectre de frequence limitee `a F
max
peut etre transformee par echantillonnage periodique, de frequence F
e
superieure ou egale `a 2F
max
, sans aucune
perte dinformation.
Ce theor`eme nest quune limite infranchissable, dautre phenom`enes vont intervenir bien avant dans le choix
de la periode dechantillonnage.
Notez que lidee dun spectre limite `a F
max
est illusoire, tous les signaux en automatique ont un spectre inni.
On ne peut alors que minimiser ce phenom`ene de recouvrement de spectre. Il sera parfois necessaire dajouter
un ltre dit ltre anti-recouvrement ou ltre anti-repliement
5
.
Le calcul de ce ltre meriterait un chapitre `a lui seul. Disons pour faire extremement simple, quil sagit le plus
souvent dun ltre electronique passe-bas du premier ordre dont la frequence de coupure est choisie entre F
max
et F
e
.
1.5.3 Bruit sur la derivee
Le theor`eme de Shannon impose donc une periode dechantillonnage maximum, quen est-il de la periode
dechantillonnage minimum? La gure 1.27 montre que si la periode dechantillonnage tend vers 0, la derivee
calculee par le taux de variation entre deux periodes dechantillonnage tend vers la derivee de la fonction.
5. Ces deux phenom`enes ne sont pas identiques mais une certaine confusion existe dans la litterature...
18 CHAPITRE 1. INTRODUCTION
df(t)
dt
f(t) f(t T
e
)
T
e
Figure 1.27 Dierence entre derivee analogique et derivee numerique.
Ceci nest malheureusement vrai que dans le cas dun signal sans bruit. Or les signaux sont toujours entaches
de bruit et dans ce cas la proposition precedente nest plus vraie. Dans le cas dun signal en rampe, la gure
1.28 illustre le fait que lerreur sur le calcul de la derivee crot lorsque T
e
decrot.
Figure 1.28 Inuence de la periode dechantillonnage dans le cas de calculs de derivees en presence de bruit.
Ajoutez `a cela le fait quune periode dechantillonnage tr`es petite implique un microcontroleur tr`es rapide et
donc co uteux.
1.5. P
ERIODE D
ECHANTILLONNAGE 19
1.5.4 Choix de la periode dechantillonnage
Les considerations precedentes montrent :
une limite fondamentale : le theor`eme de Shannon,
que lidee de surechantillonner provoque enormement de bruit sur le calcul des derivees et demande un
microcontroleur puissant donc cher.
Entre les deux, il existe un vaste choix de frequences dechantillonnage. Plusieurs auteurs proposent une for-
malisation de ce choix, le plus souvent quasi-empirique mais donnant de bons resultats du point de vue du
compromis precision - vitesse de calcul necessaire.
Sevely [3]
Yves choisit T
e
, la periode dechantillonnage telle quelle soit
2
18
0
T
e
2
9
0
9
T
e
4, 5
B ulher [4]
Hansruedi choisit T
e
, la periode dechantillonnage telle quelle soit
5 fois plus petite que la constante de temps la plus rapide que lon veut controler en boucle fermee
T
e
5
8 fois plus petite que la pseudo-periode, sil sagit de poles complexes conjugues
T
e
1
8
2
0
_
1
2
Crit`ere frequentiel [9]
On choisit F
e
, la frequence dechantillonnage telle quelle soit 6 `a 24 fois plus grande que la frequence de coupure
du syst`eme. Soit pour un syst`eme dordre 1 :
T
e
4
Pour un syst`eme dordre 2 :
k
p
2
+2
0
p+
2
0
soit :
0.25 <
0
T < 1 = 0.7
0.4 <
0
T < 1.75 = 1
Exemple
Soit G(p) une fonction de transfert possedant 4 poles en boucle ouverte :
G(p) =
1
(1 +
1
p)(1 +
2
p)(1 +
3
p)(1 +
4
p)
Apr`es mise en uvre de lasservissement vous esperez accelerer le syst`eme, la fonction de transfert devient donc
F(p) =
C(p)G(p)
1 +C(p)G(p)
=
1
(1 +
2 m
0
p +
p
2
0
2
)(1 +
3
p)(1 +
4
p)
Quelques valeurs numeriques pour xer les idees :
3
= 1s,
0
= 1 rad.s
1
et =0.43 (reglage classique `a 20% de depassement),
on ne cherche pas `a controler
4
.
20 CHAPITRE 1. INTRODUCTION
Figure 1.29 Reponse dun second ordre echantillonne (mais pas quantie !). Observez le retard introduit par
lechantillonnage.
Figure 1.30 Comparaison des periodes dechantillonnages preconisees par dierents auteurs.
1.5. P
ERIODE D
ECHANTILLONNAGE 21
Figure 1.31 Lieu des poles en z en fonction de la periode dechantillonnage.
T
e
varie de 0.01s `a 3s.
B uhler
Sevely
+ + + crit`ere frequentiel
22 CHAPITRE 1. INTRODUCTION
Chapitre 2
Transformee en z
2.1 Denition de la transformee en z
On appelle transformee en z dun signal f(t) la transformee de Laplace F
(t),
dans laquelle on eectue la substitution
z = e
T
e
p
(2.1)
Notation : :[F(p)] ou :[f(t)]
Rappel : transformee de Laplace dun signal
L[f(t)] =
_
0
f(t)e
pt
dt
le signal f(t) echantillonne secrit f
(t) avec :
f
(t) = f(t)
T
e
(t)
avec
T
e
=
k=
(t kT
e
) k Z peigne de Dirac
Ainsi la transformee de Laplace du signal echantillonne est :
L[f
(t)] =
_
0
_
f(t)
k=
(t kT
e
)
_
e
pt
dt
=
k=
_
0
f(t)(t kT
e
)e
pt
dt
=
k=
f(kT
e
)e
kT
e
p
la fonction f etant nulle pour tout t < 0,
F
(p) = L[f
(t)] =
k=0
f(kT
e
)e
kT
e
p
puis en posant z = e
T
e
p
F(z) =
k=0
f(kT
e
)z
k
(2.2)
Exemple :
f(t) = U(t) echelon dHeaviside
F(z) =
k=0
f(kT
e
)z
k
=
k=0
z
k
= 1 +z
1
+z
2
+. . . =
1
1 z
1
=
z
z 1
Rappel : Somme dune suite geometrique :
premier terme qui y est moins premier terme qui ny est pas sur un moins la raison.
23
24 CHAPITRE 2. TRANSFORM
EE EN Z
2.2 Proprietes de la transformee en z
Comme la transformee en z est la transformee de Laplace suivie dun changement de variable, ses proprietes
se deduisent de celles de la transformee de Laplace.
Linearite
:[af(t) +bg(t)] = aF(z) +bG(z) (2.3)
o` u a et b sont des constantes
Translations reelles
Retard de k periodes
:[f(t kT
e
)U(t kT
e
)] = z
k
F(z) (2.4)
Notez loperateur retard z
1
Figure 2.1 Illustration de la propriete du retard.
Avance de k periodes
:[f(t +kT
e
)U(t)] = z
k
F(z) z
k
F(0) z
k1
F(T
e
) z
k2
F(2T
e
) . . . zF((k 1)T
e
)
:[f(t +kT
e
)U(t)] = z
k
_
F(z)
k1
n=0
f(nT
e
)z
n
_
(2.5)
Les valeurs initiales sont enlevees, sinon, le principe de causalite nest plus respecte.
Figure 2.2 Illustration de la propriete de lavance.
Translation complexe
:[e
aT
e
f(t)] = :[F(p +a)] = F(ze
aT
e
) (2.6)
2.2. PROPRI
ET
ES DE LA TRANSFORM
EE EN Z 25
Changement dechelle en z
:[a
k
f(kT
e
)] = F(
z
a
) (2.7)
Theor`eme de la valeur nale
lim
t
f
(t) = lim
k
f(kT
e
) = lim
z1
(1 z
1
)F(z) (2.8)
Theor`eme de la valeur initiale
lim
t0
f
(t) = lim
k0
f(kT
e
) = lim
z
F(z) (2.9)
Theor`eme de la convolution discr`ete
:
_
k=0
f(kT
e
)g((n k)T
e
)]
_
= F(z)G(z) (2.10)
Cest le theor`eme fondamental qui permet de transformer lequation de la sortie dun syst`eme,
en temporel : sortie = convolution de lentree avec la reponse impulsionnelle du syst`eme,
en z : sortie = produit de lentree avec la transmittance du syst`eme.
Multiplication par t
: [tf(t)] = T
e
z
d
dz
F(z) (2.11)
Tr`es utile pour demontrer la forme des signaux canoniques
Theor`eme de sommation
:
_
n
k=0
f(kT
e
)
_
=
z
z 1
F(z) (2.12)
Pour aller plus loin : Demontrez le theor`eme de la convolution discr`ete
26 CHAPITRE 2. TRANSFORM
EE EN Z
2.3 Calcul de la transformee en z
2.3.1 Par la formule de denition
F(z) =
k=0
f(kT
e
)z
k
(2.13)
Cette methode est souvent lourde `a mettre en uvre.
Exemples :
f(t) = e
t
F(z) =
k=0
e
kT
e
z
k
= 1 +e
T
e
z
1
+e
2T
e
z
2
+. . . =
1
1 e
T
e
z
1
=
z
z e
T
e
f(t) = t
F(z) =
k=0
kT
e
z
k
= T
e
k=0
kz
k
= zT
e
k=0
kz
k1
= zT
e
k=0
d
dz
z
k
= zT
e
d
dz
k=0
z
k
= zT
e
d
dz
1
1 z
1
=
zT
e
z
2
(1 z
1
)
2
=
T
e
z
(z 1)
2
2.3.2 Par la theorie des residus
Cest la methode la plus `a meme de traiter tous les cas ! Neanmoins elle implique la connaissance de la theorie
des residus. Elle nest donc donnee qu`a titre informatif.
F(z) =
i
Residus
_
F()
1 e
T
e
z
1
_
=
i
o` u les
i
sont les poles de la fonction de transfert F(p)
Rappel : Theorie des residus.
_
f(z)dz = 2j
Res
avec
Res(a) =
1
(n 1)!
lim
za
_
d
n1
dz
n1
[(z a)
n
f(z)]
_
si le pole a est un pole simple dordre n
2.3.3 Par lutilisation des tables
Ce sera la methode utilisee dans le cadre de ce cours. Le plus souvent on poss`ede la transformee de Laplace
du syst`eme. On proc`ede `a une decomposition en elements simples puis, `a laide du tableau A.1 donne en page
92, on obtient la transformee en z. Notez que la connaissance des proprietes de la transformee en z est souvent
necessaire.
Exemple
Soit `a transformer en z, le syst`eme donne par sa fonction de transfert en p :
F(p) =
4p
3
(p
2
+ 1)(p + 1)
3
2.3. CALCUL DE LA TRANSFORM
EE EN Z 27
Decomposition en elements simples
La forme de sa decomposition en elements simples se deduit de la valeur et de la multiplicite de ses poles. Il
existe des reels a, b, c, d, e, f et un polynome reel E tels que :
4p
3
(p
2
+ 1)(p + 1)
3
= E +
a
p + 1
+
b
(p + 1)
2
+
c
(p + 1)
3
+
(dp +e)
(p
2
+ 1)
Il sagit desormais de determiner la valeur de chaque coecient indetermine.
Le degre du numerateur de F est strictement inferieur au degre de son denominateur, donc E = 0.
On multiplie de part et dautre par (p + 1)
3
et on fait p = 1 pour obtenir c = 2 .
De meme, on multiplie de part et dautre par (p
2
+ 1) et on fait p = pour obtenir d = 1 et e = 1.
On etudie ensuite la limite de lim
p
pF(p) , ce qui donne a +d = 0 do` u a = 1.
Puis on calcule F(0) = 0 do` u 0 = a +b +c +e et donc b = 4.
Verication, calculer par exemple F(1) = 1/4 .
Ainsi la decomposition en elements simples donne :
4p
3
(p
2
+ 1)(p + 1)
3
=
1
p + 1
+
4
(p + 1)
2
2
(p + 1)
3
+
(p 1)
(p
2
+ 1)
Transformation en z
1
p+1
z
ze
T
e
4
(p+1)
2
4
T
e
ze
T
e
(ze
T
e
)
2
p1
(p
2
+1)
=
p
(p
2
+1)
1
(p
2
+1)
z(zcos T
e
)
z
2
2z cos T
e
+1
z sin T
e
z
2
2z cos T
e
+1
2
(p+1)
3
????
mais
1
(p +a)
2
te
at
T
e
ze
aT
e
(z e
aT
e
)
2
et
L
_
1
2
t
2
e
at
_
=
1
(p +a)
3
: [tf(t)] = T
e
z
d
dz
F(z)
donc
:
_
t te
at
= T
e
z
d
dz
_
T
e
ze
aT
e
(z e
aT
e
)
2
_
=
T
2
e
aT
z
_
z +e
aT
_
(z e
aT
)
3
:
_
4p
3
(p
2
+ 1)(p + 1)
3
_
=
z
z e
T
e
+ 4
T
e
ze
T
e
(z e
T
e
)
2
+
T
2
e
aT
z
_
z +e
aT
_
(z e
aT
)
3
+
z(z cos T
e
)
z
2
2z cos T
e
+ 1
z sin T
e
z
2
2z cos T
e
+ 1
28 CHAPITRE 2. TRANSFORM
EE EN Z
2.4 Transformee inverse
Il sagit, le plus souvent de revenir `a loriginal temporel, soit pour tracer la sortie dun syst`eme echantillonne
soit pour retrouver lequation recurrente, dun correcteur pour limplanter dans le calculateur.
2.4.1 Theorie des residus
Celle-ci nest donnee `a titre informatif, elle ne sera jamais utilisee dans le cadre de ce cours. Cest la methode
la plus complexe `a appliquer `a la main, par contre elle est extremement simple `a utiliser avec les logiciels de
calcul symbolique tels que Maple ou Mathematica. Cest en outre la plus apte `a aller plus loin.
f(kT
e
) =
i
Residus
_
z
k1
F()
_
=
i
o` u les
i
sont les poles de la fonction de transfert F(z)
Exemple :
F(z) =
z
z a
z
z 1
Il y a deux residus en z = a et en z = 1.
Res
z=1
= lim
z1
z
2
z a
z
k1
=
1
1 a
Res
z=a
= lim
za
z
2
z 1
z
k1
=
a
k+1
a 1
donc
F(kT
e
) =
1
1 a
+
a
k+1
a 1
=
1 a
k+1
1 a
2.4.2 Par division polynomiale
On ne cherche alors que les premiers echantillons de la reponse dun syst`eme `a une entree speciee.
Exemple : original de
z
z0.5
z z 0.5
z + 0.5 1 + 0.5z
1
+ 0.25z
2
+
0 + 0.5
0.5 + 0.25z
1
0 + 0.25z
1
(2.14)
f
EE INVERSE 29
2.4.3 Par lutilisation des tables
Methode : decomposer
F(z)
z
en elements simples
Puis `a laide du tableau A.1 donne en page 92 retrouver les originaux f
i
(t)
Developper
F(z)
z
en elements simples,
rechercher les racines du denominateur z
1
, z
2
, , z
n
,
construire
F(z)
z
=
C
1
z z
1
+
C
2
z z
2
+
C
3
z z
3
+ +
C
n
z z
n
,
revenir `a
F(z) =
C
1
z
z z
1
+
C
2
z
z z
2
+
C
3
z
z z
3
+ +
C
n
z
z z
n
.
Puis en utilisant
:
1
_
z
z a
_
= a
k
,
on obtient :
f(kT
e
) = C
1
z
k
1
+C
2
z
k
2
+C
3
z
k
3
+ +C
n
z
k
n
.
Remarque : les z
i
peuvent etre complexes, mais sont complexes conjugues deux `a deux.
En resume
Figure 2.3 Ensemble des transformations.
30 CHAPITRE 2. TRANSFORM
EE EN Z
2.5 Transmittances echantillonnees
2.5.1 Notions de schema bloc
Rappels sur la reduction des schemas-blocs
Figure 2.4 Operations fondamentales de reduction des graphes. Le schema de droite est equivalent `a celui
de gauche.
Pour aller plus loin : Donner la fonction de transfert du syst`eme decrit `a la gure 2.5.
Figure 2.5 Exercice : montrez que ce schema se reduit `a un bloc de transmittance :
ABDE+AGE
(1+ABC)(1+DEF)
.
2.5. TRANSMITTANCES
ECHANTILLONN
EES 31
2.5.2 Transformee en z dun schema bloc
La gure 2.6 decrit une partie de schema bloc en p, il sagit alors de transformer ce schema en un schema bloc
en z. La tentation est grande de transformer terme `a terme, mais cest faux !
Figure 2.6 Il est impossible de transformer un graphe en p en un graphe en z par transformation des dierents
blocs !
G
1
(p) G
1
(z)
G
2
(p) G
2
(z)
G(p) = G
1
(p)G
2
(p) G(z) = G
1
(z)G
2
(z)
Pour que cela soit vrai il faut que le signal entre G
1
et G
2
soit un signal echantillonne.
Exemple : soit : G
1
(p) =
1
p
et G
2
(p) =
1
p+a
alors G
1
(z) =
z
z1
et G
2
(z) =
z
ze
T
e
/
et : [G
1
(p)G
2
(p)] =
(1e
T
e
/
)z
(z1)(ze
T
e
/
)
,=
z
z1
z
ze
T
e
/
2.5.3 Transformee dun syst`eme precede par un bloqueur dordre 0
Le bloqueur dordre 0 (en anglais Zero Order Hold) est lobjet physique qui permet de passer dun signal
numerique echantillonne, qui ne contient que de linformation et seulement aux instants dechantillonnage, `a
un signal analogique continu par morceaux.
Figure 2.7 Signaux dentree et de sortie dun bloqueur dordre 0.
On cherche la transformee en z du schema bloc donne en gure 2.8.
En premier lieu, il nous faut la transmittance en p du bloqueur dordre 0, ensuite nous verrons comment
determiner la transformee en z de lensemble.
Fonction de transfert dun bloqueur dordre 0
Rappel : La transformee de Laplace dun syst`eme est la transformee de Laplace de sa reponse impulsionnelle.
Si lon soumet un bloqueur dordre 0 `a une impulsion, on obtient la sortie illustree en gure 2.9.
B
0
(t) = U(t) U(t T
e
)
B
0
(p) = U(p) U(p)e
T
e
p
32 CHAPITRE 2. TRANSFORM
EE EN Z
Figure 2.8 Transmittance continue precedee dun bloqueur dordre 0.
Figure 2.9 Reponse impulsionnelle dun bloqueur dordre 0.
B
0
(p) =
1 e
T
e
p
p
Calcul de la transformee dun syst`eme precede par un bloqueur dordre 0
G(z) = :
_
L
1
[B
0
(p)G(p)]
EES 33
Figure 2.10 Syst`eme boucle echantillonne.
2.5.4 Transmittances echantillonnees de syst`emes boucles
Le probl`eme pose en gure 2.10 est quil ny a pas dechantillonneur bloqueur entre la sortie s et la transmittance
H(p). Qu`a cela ne tienne, la transmittance en boucle fermee dun syst`eme secrit :
BoucleFermee =
chane directe
1 + chane directe chane de retour
Ici
F(z) =
C(z): [B
0
(p)G(p)]
1 +C(z): [B
0
(p)G(p)H(p)]
2.5.5 Avec Matlab
Matlab ne sait transformer quen utilisant une methode, ici : faire preceder le syst`eme dun bloqueur dordre 0.
>> Te=1; % definition de la periode dechantillonnage
>> sys=tf([1],[1 1 0] ) % definition du syst`eme continu
>> sysd=c2d(sys,Te, zoh); % transformee en z avec BOZ
>> present(sysd); % presentation du resultat
>> sysc=d2c(sysd,zoh); % transformee inverse avec BOZ
>> present(sysdp); % presentation du resultat
>> Te=1;
>> sys=tf([1],[1 1 0] )
Transfer function:
1
-------
s^2 + s
>> sysd=c2d(sys,Te, zoh);
>> present(sysd);
Transfer function:
0.3679 z + 0.2642
----------------------
z^2 - 1.368 z + 0.3679
Sampling time: 1
>> sysc=d2c(sysd,zoh);
>> present(sysc);
34 CHAPITRE 2. TRANSFORM
EE EN Z
Transfer function:
-9.84e-016 s + 1
--------------------
s^2 + s + 1.776e-015
Chapitre 3
Analyse des syst`emes
Avant de faire une correction quelconque il faut analyser le syst`eme. Dans ce chapitre nous aborderons le lien
entre les poles en p et les poles en z an de comprendre comment le syst`eme reagit `a une entree de consigne
et dans quelle mesure il est possible de transformer cette reaction. Deux points sont fondamentaux, la stabilite
du syst`eme et sa precision. En eet on cherche toujours `a ameliorer ces deux points lorsque lon asservit un
syst`eme.
Notez que ces analyses sont totalement independantes du fait que lon parle dun syst`eme en boucle ouverte
ou en boucle fermee. Hormis lanalyse de la stabilite par le crit`ere de Nyquist (non aborde dans ce cours) qui
predit la stabilite dun syst`eme boucle par un retour unitaire, lensemble des autres points sappliquent sur une
fonction de transfert, celle-ci representant soit un syst`eme en boucle ouverte soit en boucle fermee.
3.1 Stabilite
Denition 1 Un syst`eme est dit stable si, ecarte de sa position de repos, celui-ci revient ` a cette position
lorsque la cause qui len a ecarte cesse.
Denition 2 Un syst`eme est dit stable si sa reponse `a toute entree bornee est bornee.
Note : en appliquant ces denitions lintegrateur pur nest pas stable !
Figure 3.1 Stabilite des syst`emes au sens de Lyapounov [12] : illustration de la stabilite dune bille sur un
prol.
35
36 CHAPITRE 3. ANALYSE DES SYST
`
EMES
3.1.1 Conditions de stabilite
Nous avons vu au 2.4.3 quun signal F(z) de la forme :
F(z) =
C
1
z
z z
1
+
C
2
z
z z
2
+
C
3
z
z z
3
+ +
C
n
z
z z
n
avait pour original f(kT
e
) de la forme :
f(kT
e
) = C
1
z
k
1
+C
2
z
k
2
+C
3
z
k
3
+ +C
n
z
k
n
les C
i
et les z
i
etant complexes.
Pour que le syst`eme soit stable, il faut alors que :
lim
k
f(kT
e
) = 0
donc que :
[z
i
[ < 1
En dautres termes, pour quun syst`eme soit stable, il faut et il sut que les poles de la fonction de transfert
soient de module inferieur `a 1.
Par abus de langage, nous inclurons dans lensemble des syst`emes stables ceux ayant un ou plusieurs poles en
1.
1
Pour connatre la stabilite dun syst`eme il sut alors de calculer le module des poles du syst`eme. Ce calcul
est le plus souvent fastidieux voire impossible. Cest pourquoi, il existe des crit`eres de stabilite ne faisant pas
directement le calcul des poles mais qui permettent de savoir sils sont, ou pas, de module inferieur `a 1.
Figure 3.2 Zones o` u les poles sont stables en p et en z.
3.1.2 Crit`ere de Jury
Soit H(z) =
N(z)
D(z)
la fonction de transfert dun syst`eme echantillonne.
D(z) = a
0
0
+a
0
1
z +a
0
2
z
2
+. . . +a
0
n
z
n
On construit la matrice de dimensions (n 1) (n + 1) suivante :
_
_
a
0
0
a
0
1
a
0
2
a
0
n1
a
0
n
a
1
0
a
1
1
a
1
2
a
1
n1
0
a
2
0
a
2
1
a
2
2
0 0
.
.
.
.
.
.
.
.
.
.
.
.
a
n2
0
a
n2
1
a
n2
2
0 0
_
_
dont les elements sont denis comme suit :
1. Ceux-ci sont marginalement stables.
3.1. STABILIT
E 37
a
j+1
k
=
_
a
j
0
a
j
njk
a
j
nj
a
j
k
pour 0 k n j 1
0 pour k > n j 1
Le polynome D(z) na aucun zero de module superieur `a 1 si les n + 1 conditions suivantes sont respectees :
1.
n
i=0
a
0
i
= D(1) > 0
2. (1)
n
n
i=0
(1)
i
a
0
i
= (1)
n
D(1) > 0
3.
a
0
0
a
0
n
< 0
4.
a
j
0
a
j
nj
> 0 pour j = 1, , n 2
Exemple a lordre 3 (n = 3) :
D(z) = a
0
0
+a
0
1
z +a
0
2
z
2
+a
0
3
z
3
_
_
a
0
0
a
0
1
a
0
2
a
0
3
a
1
0
a
1
1
a
1
2
0
_
_
1.
3
i=0
a
0
i
= D(1) > 0
2. (1)
3
3
i=0
(1)
i
a
0
i
= (1)
3
D(1) > 0 soit D(1) < 0
3.
a
0
0
a
0
3
< 0
4.
a
1
0
a
1
2
> 0 soit (a
0
0
)
2
(a
0
3
)
2
< a
0
0
a
0
2
a
0
1
a
0
3
Determiner les conditions de stabilite du syst`eme :
H(z) =
2z + 1
z
3
+ 2z
2
+ 4z + 7
3.1.3 Crit`ere de Routh-Hurwitz applique sur la transformee en w
Transformee en w La transformee en w est une transformation homographique qui fait correspondre exac-
tement linterieur du cercle unite au demi plan gauche du plan complexe.
w =
z 1
z + 1
z =
1 +w
1 w
En appliquant la transformee en w au syst`eme, les racines en z de module inferieur `a 1 sont transformees en
des racines `a partie reelle negative, il sut alors dappliquer le crit`ere de Routh-Hurwitz sur la transformee en
w pour connatre le signe des racines du polynome considere et donc la stabilite du syst`eme.
38 CHAPITRE 3. ANALYSE DES SYST
`
EMES
Figure 3.3 Illustration de la transformee homographique w.
Determiner les condition de stabilite du syst`eme par lapplication du crit`ere de Routh sur la trans-
formee en w :
H(z) =
2z + 1
z
3
+ 2z
2
+ 4z + 7
3.1.4 Avec Matlab
Ou tout autre logiciel de calcul numerique (Scilab, Octave...
2
)
>> P=[1 2 4 7]; % definition du polyn^ome
>> abs(roots(P)) % calcul du module (abs) des racine (roots) de P
Il sut de regarder si les modules de toutes les racines sont inferieurs `a 1.
2. Logiciels gratuits !
3.2. CORRESPONDANCE DES PLANS Z ET P 39
3.2 Correspondance des plans z et p
Lobjectif est de determiner le type de comportement du syst`eme `a la vue des poles du syst`eme traces dans le
plan complexe.
Etudions le lien entre un pole simple en p et son transforme par la transformation en z
Poles simples
1
p +a
z
z e
aT
e
Le pole en a est transforme en un pole en e
aT
e
Laxe des reels en p est transforme en laxe des reels positifs en z. laxe des reels negatifs en z na pas de
correspondant en p.
Figure 3.4 Transformation des poles simples de p vers z.
Poles complexes conjugues
G(p) =
2
n
p
2
+2
n
p+
2
n
B
0
G(z) =
b
1
z+b
0
z
2
2(e
k
T
e
) cos(
d
T
e
)z+e
2
k
T
e
p
1
, p
1
=
n
d
z
1
, z
1
= e
k
T
e
cos(
d
T
e
)
_
e
2
k
T
e
cos
2
(
d
T
e
) e
2
k
T
e
o` u
d
=
n
_
1
2
= e
k
T
e
(cos(
d
T
e
) sin(
d
T
e
))
= e
k
T
e
e
d
T
e
(3.1)
Figure 3.5 Transformation des poles complexes conjugues de p vers z.
Generalisation Dans les deux cas nous avons bien la relation :
Pole du syst`eme continu Pole du syst`eme echantillonne
p
i
z
i
= e
T
e
p
i
(3.2)
Les gures 3.6 et 3.7 montre cette relation.
40 CHAPITRE 3. ANALYSE DES SYST
`
EMES
Figure 3.6 Lieu des poles iso-amortissement.
Figure 3.7 Lieu des poles iso-amortissement.
3.2.1 Reponse impulsionnelle en fonction de la position des poles.
Figure 3.8 Reponses impulsionnelles des poles en fonction de leur position.
3.3. LE LIEU DEVANS 41
Figure 3.9 Relation entre poles du syst`eme continu et ceux du syst`eme echantillonne.
3.3 Le lieu dEvans
3.3.1 Denition
Figure 3.10 Le lieu dEvans : calcul des poles du syst`eme en boucle fermee par un gain k .
Le lieu dEvans est le lieu des poles de la fonction de transfert en boucle fermee lorsque le gain K varie de 0 `a
linni.
Ce lieu est donc un moyen de choisir un gain K pour obtenir, en boucle fermee, des performances pre-speciees.
La construction du lieu est assez complexe et fait appel `a 8 r`egles que vous trouverez dans [3]. La synth`ese
de correcteurs `a laide de cette methode est parfaitement possible mais demande un peu dexperience pour le
choix des poles et des zeros du correcteur. Neanmoins avec une methode de type try and error on arrive `a
de bons resultats.
Exemple de code Matlab
>> sysd=zpk([],[0.1 0.9], 1, 1) %periode d echantillonnage = 1s
>> rlocus(sysd);
>> zgrid
3.3.2 Exemples
42 CHAPITRE 3. ANALYSE DES SYST
`
EMES
Table 3.1 Exemple 1
G(z) =
1
(z0.1)(z0.9)
lorsque k est tr`es faible les poles en
B.F. sont proches de ceux en B.O.
lorsque k augmente, le syst`eme
accel`ere, les poles se rapprochent et
deviennent complexes conjugues
lorsque k depasse la valeur de 0.9, les
poles ont un module > 1, le syst`eme
est instable
Table 3.2 Exemple 2
G(z) =
z0.5
(z0.1)(z0.9)
lorsque k est tr`es faible les poles en
B.F. sont proches de ceux en B.O.
lorsque k augmente, le pole en 0.9
tend vers le zero en 0.5, lautre pole
tend vers
la limite de stabilite est obtenue pour
k = 1.39
3.3. LE LIEU DEVANS 43
Table 3.3 Exemple 3
G(z) =
z+0.5
(z0.1)(z0.9)
lorsque k est tr`es faible les poles en
B.F. sont proches de ceux en B.O.
lorsque k augmente, les poles se rap-
prochent lun de lautre, puis de-
viennent complexes conjugues
lorsque k est tr`es grand lun des poles
tend vers le zero, lautre vers
Table 3.4 Exemple 4
G(z) =
(z+0.7)(z+0.2)
(z0.1)(z0.9)
lorsque k est tr`es faible les poles en
B.F. sont proches de ceux en B.O.
lorsque k augmente, les poles se rap-
prochent lun de lautre, puis de-
viennent complexes conjugues
lorsque k est tr`es grand les poles en
B.F. tendent vers les zeros en B.O..
44 CHAPITRE 3. ANALYSE DES SYST
`
EMES
Table 3.5 Exemple 5
G(z) =
(z+0.7)(z+0.2)
(z0.1)(z0.5)(z0.9)
On retrouve les memes tendances que
pour les exemples precedents
les poles se rapprochent lun de lautre
avant de devenir complexes conjugues
lorsque k est tr`es grand les poles en
B.F. tendent vers les zeros en B.O.
ou vers linni.
3.4 Precision des syst`emes echantillonnes
C(z) G(z)
W(z)
+
(z)
+
Y (z)
P(z)
+
Figure 3.11 Schema general pour letude de la precision des syst`emes.
On consid`ere le schema presente en gure 3.11. Calculons lerreur statique du syst`eme pour une entree W(z)
en echelon et une perturbation P(z) nulle.
3.4.1 Erreur vis-`a-vis de la consigne
Lerreur est :
(z) = W(z) S(z)
= W(z) (z)C(z)G(z)
(z) [1 +C(z)G(z)] = W(z)
(z) =
W(z)
1 +C(z)G(z)
3.4. PR
ES 45
Calculons maintenant la limite de (kT
e
) lorsque k
lim
t
(t) = lim
k
(kT
e
) = lim
z1
(1 z
1
)(z) = lim
z1
(1 z
1
)
W(z)
1 +C(z)G(z)
Avec une entree en echelon unite
W(z) =
z
z 1
on obtient :
lim
k
(kT
e
) = lim
z1
(1 z
1
)
z
z 1
1
1 +C(z)G(z)
= lim
z1
1
1 +C(z)G(z)
lobjectif etant davoir une erreur statique nulle, il faut que
lim
k
(kT
e
) = 0
et par consequent que :
lim
z1
1
1 +C(z)G(z)
= 0
Supposons maintenant que C(z) ou G(z) poss`ede un integrateur pur. La transmittance en boucle ouverte peut
secrire :
C(z)G(z) =
N(z)
D(z)
=
N(z)
(z 1)D
(z)
donc
lim
z1
1
1 +C(z)G(z)
= lim
z1
1
1 +
N(z)
(z1)D
(z)
= lim
z1
(z 1)D
(z)
(z 1)D
(z) +N(z)
= 0
Conclusion : pour quun syst`eme presente une erreur statique nulle pour une entree en echelon, il faut que
la transmittance en boucle ouverte presente au moins un integrateur pur.
3.4.2 Erreur vis-`a-vis de la perturbation
Supposons cette fois que lentree W(z) est nulle et que la perturbation P(z) est un echelon unite.
Lerreur est :
(z) = W(z) S(z)
= 0 (P(z)G(z) +(z)C(z)G(z))
(z)(1 +C(z)G(z)) = P(z)G(z)
lim
k
(kT
e
) = lim
z1
(1 z
1
)
z
z 1
G(z)
1 +C(z)G(z)
= lim
z1
G(z)
1 +C(z)G(z)
Supposons que le syst`eme en boucle ouverte poss`ede un seul integrateur pur et etudions les deux cas suivants
Cas 1 : lintegrateur pur est dans C(z) =
N
C
(z)
D
C
(z)
.
Cas 2 : lintegrateur pur est dans G(z) =
N
G
(z)
D
G
(z)
.
Dans les deux cas :
lim
k
(kT
e
) = lim
z1
N
G
(z)
D
G
(z)
1 +
N
C
(z)
D
C
(z)
N
G
(z)
D
G
(z)
= lim
z1
N
G
(z)D
C
(z)
D
C
(z)D
G
(z) +N
C
(z)N
G
(z)
46 CHAPITRE 3. ANALYSE DES SYST
`
EMES
1
1z
1
C(z) G(z)
W(z)
+ +
Y (z)
P(z)
+
Cas 1 : l integrateur pur est dans C(z).
C(z) =
N
C
(z)
(z 1)D
C
(z)
lim
k
(kT
e
) =
lim
z1
N
G
(z)(z 1)D
C
(z)
(z 1)D
C
(z)D
G
(z) +N
C
(z)N
G
(z)
lim
k
(kT
e
) = 0
C(z)
1
1z
1
G(z)
W(z)
+ +
Y (z)
P(z)
+
Cas 2 : lintegrateur pur est dans G(z).
G(z) =
N
G
(z)
(z 1)D
G
(z)
lim
k
(kT
e
) =
lim
z1
N
G
(z)D
C
(z)
D
C
(z)(z 1)D
G
(z) +N
C
(z)N
G
(z)
lim
k
(kT
e
) = lim
z1
D
C
(z)
N
C
(z)
,= 0
Conclusion : pour quun syst`eme presente une erreur statique nulle pour une perturbation en echelon, il
faut au moins un integrateur pur en amont de la perturbation.
3.4.3 Extension du raisonnement `a tous types dentrees
Calcul de lerreur vis-`a-vis de la consigne, le syst`eme etant soumis `a une entree canonique quelconque de la
forme w(t) = t
m
donc :
W(z) =
A(z)
(z 1)
m+1
o` u A(z) est un polynome en z nayant pas (z 1) en facteur.
La transmittance en boucle ouverte peut secrire :
CG(z) =
N(z)
(z 1)
n
D(z)
Lexpression de lerreur est alors :
lim
k
(kT
e
) = lim
z1
(1 z
1
)
A(z)
(z 1)
m+1
1
1 +CG(z)
= lim
z1
(1 z
1
)
A(z)
(z 1)
m+1
1
1 +
N(z)
(z1)
n
D(z)
soit :
lim
k
(kT
e
) = lim
z1
z 1
z
A(z)
(z 1)
m+1
(z 1)
n
D(z)
(z 1)
n
D(z) +N(z)
= lim
z1
1
z
(z 1)
n
(z 1)
m
A(z)D(z)
(z 1)
n
D(z) +N(z)
Cas : n > m
lim
k
(kT
e
) = 0
Cas : n = m = 0
lim
k
(kT
e
) = lim
z1
A(z)D(z)
D(z) +N(z)
= lim
z1
A(1)D(1)
D(1) +N(1)
=
A(1)
1 +
N(1)
D(1)
=
1
1 +K
Note 1 : K est le gain en boucle ouverte (syst`eme + correcteur), K =
N(1)
D(1)
.
Note 2 : si n = m = 0 alors lentree est un echelon unite donc A(z) = z.
3.4. PR
ES 47
Cas : n = m 1
lim
k
(kT
e
) = lim
z1
A(z)D(z)
(z 1)
n
D(z) +N(z)
= lim
z1
A(z)D(z)
N(z)
=
A(1)D(1)
N(1)
=
A(1)
K
=
T
e
K
Note 1 : K est le gain en boucle ouverte (syst`eme + correcteur), K =
N(1)
D(1)
.
Note 2 : si n = m = 1 alors A(1) = T
e
(voir tables A.1 page 92).
Cas : n < m
lim
k
(kT
e
) =
Les valeurs de lim
k
(kT
e
) sont resumees dans le tableau 3.6.
Table 3.6 Erreur permanente en fonction de lentree et de la classe du syst`eme en labsence dentree de
perturbation.
classe du syst`eme echelon rampe parabole
=
nb dintegrateurs purs m = 0 m = 1 m = 2
0
1
1+K
1 0
T
e
K
2 0 0
T
e
K
3 0 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Pour aller plus loin : Quelle est lerreur permanente du syst`eme 3.12 dans les conditions decrites ?
1
1z
1
C(z)
1
1z
1
G(z)
W(z)
+ +
Y (z)
P(z)
+
Figure 3.12 Syst`eme soumis `a une entree en rampe et une perturbation en echelon.
48 CHAPITRE 3. ANALYSE DES SYST
`
EMES
3.4.4 Cycle limite
Les resultats obtenus precedemment ne tiennent pas compte de la quantication du signal. Cette quantication
provoque une non linearite destabilisante et par consequent, un petite oscillation autour de la valeur nale
comme illustre en gure 3.13. La precision est alors fonction du pas de quantication.
Figure 3.13 Cycle limite d u `a la quantication du signal.
Dans le cas de syst`emes instables en boucle ouverte, le cycle limite, veritable oscillation entretenue est inevitable.
Par contre lamplitude de cette oscillation est controlable par le choix du pas de quantication.
Chapitre 4
Transposition des correcteurs
analogiques
Il est, a priori, dommage de synthetiser un correcteur analogique puis de le convertir en correcteur numerique.
Les methodes de synth`eses numeriques abondent et donnent de meilleurs resultats en termes de performances
(robustesse, precision, rejet de perturbation). Neanmoins dans le cas o` u le correcteur analogique est dej`a
synthetise et quil ne sagit que de le transposer en numerique, la transformee bilineaire donnee ci-apr`es se
rev`ele fort utile
1
.
Par ailleurs, cette methode de synth`ese de correcteurs numeriques couplee `a une methode de synth`ese type
Ziegler-Nichols permet de synthetiser en quelques minutes un correcteur pour un syst`eme dont on ignore tout
ou presque et qui plus est, pratiquement sans comprendre lautomatique !
4.1 Les dierentes approximations de la derivee
Figure 4.1 Principe de calcul de la derivee par dierences nies : dierences vers lavant et vers larri`ere.
En introduisant loperateur retard q.
4.1.1 Dierences vers larri`ere
dx
dt
x(t) x(t T
e
)
T
e
=
1 q
1
T
e
x(t) =
q 1
qT
e
x(t)
Derivation : p
z 1
zT
e
Integration :
1
p
T
e
z
z 1
Cela correspond `a lapproximation :
z = e
T
e
p
1
1 T
e
p
= p
z 1
zT
e
1. La synth`ese de correcteur analogiques sort du cadre de ce cours, reportez vous au poly dautomatique lineaire continue de
B. Lang
49
50 CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES
Figure 4.2 Transformee du domaine de stabilite en
p. Un syst`eme continu instable peut etre transforme
en un syst`eme discret stable.
Figure 4.3 Methode des rectangles : approximation
par exc`es.
Calcul numerique de lintegrale :
I =
_
t
0
x()d
n
k=1
x(kT
e
)T
e
i
n
= i
n1
+T
e
x
n
4.1.2 Dierences vers lavant
dx
dt
x(t +T
e
) x(t)
T
e
=
q 1
T
e
x(t)
Derivation : p
z 1
T
e
Integration :
1
p
T
e
z 1
Cela correspond `a lapproximation :
z = e
T
e
p
1 +T
e
p =p
z 1
T
e
Figure 4.4 Transformee du domaine de stabilite en
p. Un syst`eme continu stable peut etre transforme en
un syst`eme discret instable.
Figure 4.5 Methode des rectangles : approximation
par defaut.
Calcul numerique de lintegrale :
I =
_
t
0
x()d
n1
k=0
x(kT
e
)T
e
i
n
= i
n1
+T
e
x
n1
4.1. LES DIFF
ERENTES APPROXIMATIONS DE LA D
ERIV
EE 51
4.1.3 Transformation bilineaire
La derivee numerique est proche de la moyenne des derivees au point considere et au point precedent.
1
2
_
d x(t +Te)
dt
+
d x(t)
dt
_
x(t +T
e
) x(t)
T
e
dx(t)
dt
_
q + 1
2
_
q 1
T
e
x(t)
dx
dt
2
T
e
q 1
q + 1
x(t)
Derivation : p
2
T
e
z 1
z + 1
Integration :
1
p
T
e
2
z + 1
z 1
Cela correspond `a lapproximation :
z = e
T
e
p
e
T
e
p
2
e
T
e
p
2
1 +
T
e
p
2
1
T
e
p
2
2 +T
e
p
2 T
e
p
Figure 4.6 Transformee du domaine de stabilite en
p. Les deux regions se correspondent rigoureusement. Figure 4.7 Methode des trap`ezes.
Calcul numerique de lintegrale :
I =
_
t
0
x()d
n
k=1
x((k 1)T
e
) +x(kT
e
)
2
T
e
i
n
= i
n1
+
T
e
2
(x
n1
+x
n
)
Remarque : La transformation bilineaire introduit une distorsion des frequences. Cette distorsion peut etre
compensee `a une pulsation donnee
1
par lutilisation de
Derivation : p
1
tan(
1
T
e
/2)
z 1
z + 1
4.1.4 Avec Matlab
Seule la transformee bilineaire est directement implantee, les dierences avant et arri`ere ne le sont pas !
>> Te=1;
>> sys=tf([1],[1 1 1] ) % definition du syst`eme continu
>> sysd=c2d(sys,Te, tustin); % transformee en z par transformee bilineaire
>> present(sysd); % presentation du resultat
>> sysdp=c2d(sys,Te, prewarp, 2); % transformee bilineaire avec precompensee (f1=2rad/s)
>> present(sysdp); % presentation du resultat
>> sysdb=c2d(sys,Te, zoh); % transformee avec BOZ
>> present(sysdb); % presentation du resultat
>> W=logspace(-1, 0.5, 200);
>> bode(sys,r,sysd,y--,sysdp,gx,sysdb,k., W);
52 CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES
Figure 4.8 Phenom`ene de distorsion de la transformation bilineaire.
Figure 4.9 Comparaison des transformees en z dun point de vue frequentiel.
Syst`eme original analogique
.......... Transformee avec BOZ
Transformee bilineaire
+ + + Transformee bilineaire avec precompensation (en f = 2 rad/s.)
4.2. PID ANALOGIQUE 53
4.2 PID analogique
Tous les correcteurs analogiques sont transformables en correcteurs numeriques, le plus connu dentre eux etant
le PID. De nombreuses methodes permettent de calculer les coecients du correcteur PID `a partir dun mod`ele
du syst`eme. Cependant, dans la plupart des cas, un tel mod`ele dexiste pas. On proc`ede alors des choix de
param`etres calcules `a partir dessais eectues sur le syst`eme.
4.2.1 Reglages de Ziegler-Nichols
Le correcteur PID secrit :
C(p) = K
_
1 +
1
T
i
p
+T
d
p
_
Table 4.1 Coecients dun PID regle par les methodes de Ziegler-Nichols et Chien-Hrones-Reswick : essai
indiciel et methode du pompage.
Methode de pompage
Boucle fermee
Methodes aperiodiques
Boucle ouverte
Syst`emes stables ou instables
en boucle ouverte
Syst`emes stables, instables
ou integrateurs
Ziegler-Nichols Ziegler-Nichols Chien-Hrones-Reswick
Regulation ou
Poursuite
Regulation ou
Poursuite
Regulation Poursuite
P K = 0.5K
osc
K =
1
a
K = 0.3
1
a
K = 0.3
1
a
P.I K = 0.45K
osc
K = 0.9
1
a
K = 0.6
1
a
K = 0.35
1
a
T
i
= 0.83T
osc
T
i
= 3.3 T
i
= 4 T
i
= 1.2T ou 10
1
P.I.D K = 0.6K
osc
K = 1.2
1
a
K = 0.95
1
a
K = 0.6
1
a
T
i
= 0.5T
osc
T
i
= 2 T
i
= 2.4 T
i
= T ou 6
1
T
d
= 0.125T
osc
T
d
= 0.5 T
d
= 0.42 T
d
= 0.5
1. Si le syst`eme ` a un comportement de type integrateur pur.
54 CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES
Il faut ensuite transformer le correcteur analogique C(p) en un correcteur numerique par lune des methodes
de transformation vues precedemment (4.1 ou 2.5.3).
La transformee bilineaire est la plus utilisee et donne de bons resultats `a condition de choisir une periode
dechantillonnage proche du quasi-continu, cest-`a-dire les limites basses des valeurs communement admises
(voir g. 1.30).
Le tableau 4.1 nest quun bref apercu de lensemble des reglages developpes par divers auteurs et qui sadaptent
`a une majorite de syst`emes. Pour des syst`emes plus particuliers ou des reglages plus ns tenant compte des
caracteristiques de votre syst`eme, voyez les references [13] ou [14] qui proposent plus de 200 reglages !
4.2.2 P, PI, ou PID?
Le choix est toujours un peu ambigu. Le principe de choix communement admis, qui sapplique dailleurs `a
tous les choix de regulateur et correcteurs, est le principe du minimum : si un correcteur P donne les resultats
escomptes, on ne met pas un PI, moins encore un PID! Les tableaux 4.2 et 4.3 donnent un crit`ere de choix en
fonction de la reponse temporelle du syst`eme `a un echelon dentree.
Notez la proposition de correcteur de type tout ou rien, qui fonctionne bien dans les cas ou la precision
requise est faible ou que le syst`eme supporte bien les fortes variations de commande. Si le syst`eme est en limite
de reglabilite par un PID, il faudra alors revoir la conception de la commande soit par des boucles imbriquees,
soit synthetiser un correcteur numerique fonde sur dautres approches.
Dernier point, mais non le moindre, sachez que les reglages de PID proposes, Ziegler-Nichols (voir page 55)
ou Takahashi (voir page 58) sont avant tout des reglages de regulation et non pas dasservissement. En
dautres termes, ces reglages sont choisis lorsque lobjectif principal est dasservir une grandeur `a une consigne
constante et detre insensible aux perturbations.
Table 4.2 choix dune methode de correction en fonction de lindice de reglabilite
Reglabilite T/ > 20 10 `a 20 5 `a 10 2 `a 5 < 2
Regulateur Tout ou rien P PI PID limite du PID
1
Table 4.3 choix dune methode de correction en fonction de lindice de reglabilite : cas des syst`emes instables
Reglabilite a. 0.05 < a 0.05 < a < 0.1 0.1 < a < 0.2 0.2 < a < 0.5 a > 0.5
Regulateur Tout ou rien P PI PID limite du PID
1
1. voir 4.4.2 page 60
4.3. LE PID NUM
ERIQUE 55
4.3 Le PID numerique
En continu, la sortie dun PID secrit :
u(t) = k
p
_
_
(t) +
1
T
i
t
_
0
()d +T
d
d
dt
_
_
Lequivalent en numerique secrit alors :
u
k
= k
p
_
_
k
+
T
e
T
i
k
j=0
j
+T
d
(
k
k1
)
T
e
_
_
u
k+1
u
k
= k
p
_
k+1
k
+
T
e
T
i
k+1
+T
d
(
k+1
2
k
+
k1
)
T
e
_
(z 1)U(z) = k
p
_
z 1 +
T
e
T
i
z +T
d
(z 2 +z
1
)
T
e
_
(z)
do` u la transmittance du PID numerique
U(z)
(z)
= k
p
+k
i
T
e
z
z 1
+
k
d
T
e
z 1
z
Ce correcteur reste pedagogique, dans une application industrielle on preferera les formes suivantes :
Application industrielles des correcteurs PID
1. Laction derivee ideale provoque une forte augmentation du bruit hautes frequences, on utilise en pratique
une derivee ltree. Ceci conduit en discret au regulateur PID ltre :
U(z)
(z)
= k
p
+k
i
T
e
z
z 1
+
k
d
T
e
z 1
z
Le choix de est classiquement de 0.1
2. Lors dun changement de consigne de type echelon, la derivee du signal derreur entre la consigne et la
sortie est tr`es grande (pratiquement une derivee dechelon soit un Dirac). La commande PID sur lecart va
engendrer une commande proportionnelle `a la variation de lerreur via le module derivateur. Lamplitude
de cette commande risque detre inadmissible en pratique. Une solution pour limiter ce phenom`ene est
dappliquer laction derivee seulement sur la sortie du procede do` u le PID avec la derivee sur la mesure
seule :
U(z) = k
p
(z) +k
i
T
e
z
z 1
(z)
k
d
T
e
z 1
z
Y (z)
3. Meme remarque que precedemment mais cette fois sur la partie proportionnelle do` u le PID avec laction
proportionnelle et derivee sur la mesure seule :
U(z) = k
i
T
e
z
z 1
(z)
_
k
p
+
k
d
T
e
z 1
z
_
Y (z)
Cette derni`ere solution est bien entendu la meilleure.
56 CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES
4.3.1 Reglages de Takahashi pour un regulateur PID numerique ltre
La forme du PID utilise est :
U(z) = k
i
T
e
z
z1
(z)
_
k
p
+
k
d
T
e
z1
z
_
Y (z) PI ou PID
U(z) = k
p
(z) P
dont les equations recurrentes sont :
u
k
= u
k1
+k
i
T
e
(y
c
k
y
k
) k
p
(y
k1
y
k
)
k
d
T
e
(y
k
2y
k1
+y
k2
) PI ou PID
u
k
= k
p
(y
c
k
y
k
) P
Comme pour la methode de Ziegler-Nichols, il faut alors soumettre le syst`eme `a lun des deux essais :
un essai indiciel qui donne les valeurs de et a,
un essai en boucle fermee avec un gain K : on augmente K jusqu`a K
osc
valeur du gain pour laquelle
on obtient une oscillation entretenue de periode T
osc
.
Table 4.4 Reglages de Takahashi pour un regulateur PID numerique ltre.
Methode de pompage
Boucle fermee
Methodes aperiodiques
Boucle ouverte
Syst`emes stables ou instables
en boucle ouverte
Syst`emes stables, instables
ou integrateurs
P k
p
= 0.5K
osc
k
p
=
1
a(+T
e
)
P.I
k
p
= 0.45K
osc
0.5k
i
T
e
k
i
= 0.54
K
osc
T
osc
k
p
=
0.9
a(+0.5T
e
)
0.5k
i
T
e
k
i
=
0.27
a(+0.5T
e
)
2
P.I.D
k
p
= 0.6K
osc
0.5k
i
T
e
k
i
= 1.2
K
osc
T
osc
k
d
=
3
40
K
osc
T
osc
k
p
=
1.2
a(+T
e
)
0.5k
i
T
e
k
i
=
0.6
a(+0.5T
e
)
2
k
d
=
0.5
a
Ces reglages sont en fait les coecients qui minimisent lerreur
k0
[
k
[
4.4. MISE EN UVRE DUN ASSERVISSEMENT 57
4.4 Mise en uvre dun asservissement
4.4.1 Anti windup
Apr`es application du correcteur precedent, la premi`ere imperfection qui apparat est due aux non linearites du
syst`eme et en particulier les saturations de lorgane de commande (amplicateur, vanne, ...).
En particulier lorsque lerreur est importante (demarrage par exemple), lintegrateur int`egre une erreur grande
et donc sa sortie est tr`es grande. Lorsque le syst`eme arrive `a la valeur de consigne, lintegrateur est encore
plein et donc le syst`eme depasse largement cette valeur de consigne.
Figure 4.10 Eet de labsence de saturation sur le terme integral.
Pour eviter ce phenom`ene deux methodes sont de loin les plus utilisees, souvent simultanement :
la mise en place dun generateur de trajectoire (ex : bras de robot), an que le syst`eme ne quitte pas
son domaine de linearite.
la mise en place dun anti-windup qui limite la valeur stockee dans lintegrateur pur au maximum de
commande admissible par le syst`eme.
Figure 4.11 PID classique avec anti-windup.
58 CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES
4.4.2 Predicteur de Smith
Dans le cas de syst`emes tr`es retardes, ce qui arrive souvent dans les applications industrielles, les methodes
precedentes ne fonctionnent pas bien. En fait un reglage classique de PID conduit `a un syst`eme plus lent en
boucle fermee quen boucle ouverte si le retard pur depasse la moitie de la constante de temps dominante.
Soit G(z) un syst`eme tr`es retarde de la forme.
G(z) = G
1
(z)z
k
Le principe de synth`ese est le suivant : on synthetise un correcteur C
1
(z) pour le syst`eme non retarde G
1
(z)
puis on adapte ce correcteur pour le syst`eme reel G(z).
C
1
(z) G
1
(z)
z
n
U(z)
+
Y (z)
Figure 4.12 Schema ideal de correction de syst`emes tr`es retardes. Utopique car le retard pur nest pas
dissociable du reste de la transmittance du syst`eme.
Bien que totalement irrealisable en letat car le retard pur nest pas dissociable du reste de la transmittance
du syst`eme, calculons tout de meme la fonction de transfert du syst`eme presente en gure 4.12.
F(z) =
C
1
(z) G
1
(z)
1 +C
1
(z) G
1
(z)
z
k
En introduisant la transmittance G(z), on obtient :
F(z) =
C
1
(z) G(z)
1 +C
1
(z) G
1
(z) C
1
(z)G(z) +C
1
(z)G(z)
F(z) =
C
1
(z) G(z)
1 +C
1
(z) G
1
(z)(1 z
k
) +C
1
(z)G(z)
F(z) =
C
1
(z)
1+(1z
k
)G
1
(z)C
1
(z)
G(z)
1 +
C
1
(z)
1+(1z
k
)G
1
(z)C
1
(z)
G(z)
qui est de la forme :
F(z) =
C(z)G(z)
1 +C(z)G(z)
En posant :
C(z) =
C
1
(z)
1 + (1 z
k
)G
1
(z)C
1
(z)
C(z) est un correcteur est parfaitement realisable : voir schema 4.13.
Exemple de calcul de la boucle de retour du predicteur de Smith avec Matlab Le syst`eme `a
asservir presente un retard pur de 2 secondes :
G(p) =
1
p
3
+ 4p
2
+ 3p
e
2p
>> sysc=tf([1],[1 4 3 0]); % saisie de la fonction de transfert en p
>> sysd=c2d(sysc, 0.1, zoh); % transformee en z avec un BOZ et Te = 0.1
% retour = produit de la transformee du syst`eme sans retard par (1-z^-n)
>> retour=sysd*(1-tf(1,1,0.1,Outputdelay,20));
>> [nu, de]=tfdata(retour,v) % r ecuperation du numerateur et du denominateur
Note : la mise en uvre dun predicteur de Smith implique de posseder un tr`es bon mod`ele du syst`eme. Les
syst`emes presentant des variations de param`etres ne peuvent pas etre corriges par ce type de correcteur.
4.4. MISE EN UVRE DUN ASSERVISSEMENT 59
C
1
(z) G
1
(z)
z
n
W(z)
(1 z
1
)G
1
(z)
U(z)
+ +
Y (z)
G(z)
predicteur de Smith
Figure 4.13 Schema dun predicteur de Smith.
Figure 4.14 Performances dun predicteur de Smith.
60 CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES
4.4.3 Algorithme
Le cadencement dune routine dasservissement est donne en gure 4.15. Lors de la realisation du logiciel de
commande, deux points sont importants :
La minimisation du temps entre echantillonnage des capteurs et sortie des commandes. En eet, toute
la theorie de la commande echantillonnee suppose que ce temps est nul !
La minimisation des variations de periode dechantillonnage. L`a encore, T
e
est suppose constant.
Figure 4.15 Cadencement dune routine de regulation.
Le cas A de la gure 4.16 est presque ideal. Le cas B est le cas limite, le retard pur introduit par le temps de
calcul est de T
e
/2. Si le temps de calcul est vraiment trop important, il vaut mieux attendre le coup dhorloge
suivant pour envoyer la commande. Bien entendu ce cas introduit un retard pur dans le syst`eme qui doit etre
pris en compte au moment de la synth`ese (cas C). Un peu dastuce permet presque toujours de se ramener au
cas D o` u tout ce qui peut etre pre-calcule pour la commande suivante lest juste apr`es la sortie de la commande
en cours.
Figure 4.16 Repartition du temps de calcul.
4.4. MISE EN UVRE DUN ASSERVISSEMENT 61
Fonction interruption PID( : void) : void
result : void
/* Mesure de la sortie */
y
n
CAN;
/* Calcul de lerreur */
n
w
n
y
n
;
/* Calcul des termes du PID */
p
n
K
p
n
;
d
n
K
d
(
n
n1
) ;
i
n
i
n1
+K
i
n
;
/* Calcul de la commande */
v
n
p
n
+d
n
+i
n
;
/* Mod`ele de lactionneur */
Si (v
n
U
inf
) Alors
u
n
U
inf
; /* Commande reelle = saturation basse */
Sinon
Si (v
n
U
sup
) Alors
u
n
U
sup
; /* Commande reelle = saturation haute */
Sinon
u
n
v
n
; /* Commande reelle = commande PID */
Fin Si
Fin Si
/* Sortie de la commande */
CNA u
n
;
/* Desaturation du terme integral */
i
n
i
n
+u
n
v
n
;
/* Mise `a jour des variables */
n1
n
;
i
n1
i
n
;
Fin
Algorithme 1: Algorithme de PID classique avec anti-windup.
62 CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES
Chapitre 5
Synth`eses `a temps detablissement ni
5.1 Synth`ese en z de correcteurs
5.1.1 Exemple idiot... mais riche denseignements
Soit `a corriger un syst`eme G(z) :
G(z) =
(z 2)(z 0.5)
(z + 0.7)(z 0.8)(z 1)
On se propose de creer un correcteur parfait, cest-`a-dire, la compensation parfaite du syst`eme par le correcteur
C(z) soit :
C(z) =
1
G(z)
=
(z + 0.7)(z 0.8)(z 1)
(z 2)(z 0.5)
Le syst`eme corrige en boucle ouverte devient donc :
C(z) G(z) =
1
G(z)
G(z) = 1
Cest bien un syst`eme parfait, il est meme inutile de boucler ! Bien entendu cela ne peut pas fonctionner et ce
pour deux raisons.
Stabilite
C(z) =
W(z)
(z)
=
(z + 0.7)(z 0.8)(z 1)
(z 2)(z 0.5)
Inutile de se lancer dans une etude, le correcteur C(z) est ostensiblement instable `a cause du pole en 2, donc
exterieur au cercle unite.
Causalite Etudions lequation recurrente de ce correcteur :
C(z) =
W(z)
(z)
=
(z + 0.7)(z 0.8)(z 1)
(z 2)(z 0.5)
donc
W(z)[(z 2)(z 0.5)] = (z)[(z + 0.7)(z 0.8)(z 1)]
W(z)[z
2
2.5z + 1] = (z)[z
3
1.1 z
2
0.46 z + 0.56]
En multipliant droite et gauche par z
2
W(z)[1 2.5z
1
+z
2
] = (z)[z 1.1 0.46 z
1
+ 0.56z
2
]
W(z) = (z)[z 1.1 0.46 z
1
+ 0.56z
2
] +W(z)[2.5z
1
z
2
]
En revenant `a loriginal :
s(k) = e(k + 1) 1.1 e(k) 0.46 e(k 1) + 0.56e(k 2) + 2.5s(k 1) s(k 2)
63
64 CHAPITRE 5. SYNTH
`
ESES
`
A TEMPS D
ETABLISSEMENT FINI
w(k) est une fonction de la commande `a linstant suivant (k + 1) ! Ce correcteur nest pas causal, il est donc
impossible `a realiser.
Les synth`eses de correcteurs numeriques conduisent souvent `a des correcteurs non causaux et/ ou instables, il
faut donc systematiquement verier :
la causalite
la stabilite
La methode precedente ayant echoue, on se propose de realiser un autre correcteur pratiquement aussi ideal
que le precedent mais utilisant le bouclage.
F(z) =
C(z)G(z)
1 +C(z)G(z)
C(z) G(z)
U(z)
+
(z) W(z) Y (z)
ETABLISSEMENT FINI 65
Figure 5.2 Reponse du syst`eme `a un echelon.
5.2 Synth`eses `a temps detablissement ni
Un syst`eme est dit `a temps detablissement ni lorsque son erreur
ETABLISSEMENT FINI
o` u K(z) est un polynome.
Pour verication, appliquons le theor`eme de la valeur nale :
lim
t
(t) = lim
z1
(1 z
1
)(z) = lim
z1
(1 z
1
)
U
N
(z)(1 F(z))
(1 z
1
)
m+1
= lim
z1
(1 z
1
)
U
N
(z)(1 z
1
)
m+1
K(z)
(1 z
1
)
m+1
= 0
5.2.1 Synth`ese `a temps detablissement minimal absolu
Denition Un syst`eme est dit `a temps detablissement minimal lorsque le degre de (z) est minimal.
En reprenant les equations (5.1) et (5.2)
(z) =
U
N
(z)(1 F(z))
(1 z
1
)
m+1
= U
N
(z)K(z)
Si K(z) = 1, alors le syst`eme est dit minimal absolu. Dans ce cas :
1 F(z) = (1 z
1
)
m+1
(z) = U
N
(z) = u
0
+u
1
z
1
+u
2
z
2
+. . . +u
m
z
m
Donc
(z)
A
+
(z)A
(z)
o` u B
+
(z), B
(z), A
+
(z), A
ETABLISSEMENT FINI 67
B
+
(z) contient tous les zeros de G(z) interieurs au cercle unite (dits stables)
B
(z) contient tous les zeros de G(z) exterieurs au cercle unite (dits instables)
ainsi que les retards purs du syst`eme
A
+
(z) contient tous les poles de G(z) interieurs au cercle unite (stables)
A
(z) contient tous les poles de G(z) exterieurs au cercle unite (instables)
alors :
C(z) =
A
+
(z)A
(z)
B
+
(z)B
(z)
F(z)
1 F(z)
Comme C(z) ne peut pas contenir B
(z).
Remarque : les poles et zeros sur le cercle unite sont `a considerer comme instables
le probl`eme pose se ram`ene `a la resolution de 3 equations :
F(z) = B
(z)L(z) (5.6)
1 F(z) = (1 z
1
)
m+1
A
(z)K
(z) (5.7)
K(z) = A
(z)K
(z) (5.8)
Cela reviens `a resoudre lequation diophantienne
(1 z
1
)
m+1
A
(z)K
(z) +B
(z)L(z) = 1
Le correcteur secrit alors :
C(z) =
1
syst`eme
F(z)
1 F(z)
(5.9)
C(z) =
A
+
(z)A
(z)
B
+
(z)B
(z)
F(z)
1 F(z)
(5.10)
=
A
+
(z)A
(z)
B
+
(z)B
(z)
B
(z)L(z)
(1 z
1
)
m+1
A
(z)K
(z)
(5.11)
(5.12)
C(z) =
A
+
(z)L(z)
B
+
(z)(1 z
1
)
m+1
K
(z)
Si la resolution donne
K(z) = A
(z)K
(z) = k
0
+k
1
z
1
+k
2
z
2
+ +k
n
z
k
alors
(z) = U(z)K(z) =
0
+
1
z
1
+
2
z
2
+ +
m+n
z
(m+n)
Le transitoire est bien de duree nie, mais de m+n + 1 periodes dechantillonnage.
68 CHAPITRE 5. SYNTH
`
ESES
`
A TEMPS D
ETABLISSEMENT FINI
5.2.3 Reponse pile
La reponse pile est un cas particulier des syst`emes `a temps detablissement minimal non absolu.
Denition Un syst`eme est dit `a reponse pile lorsque la sortie continue atteint son regime permanent pour
une entree canonique en un nombre ni dechantillons.
Conditions Pour pouvoir realiser un correcteur `a reponse pile pour une entree de type u(t) = t
m
, il faut que
le syst`eme presente au moins m integrateurs purs.
Figure 5.5 Schema dun syst`eme `a reponse pile.
La gure 5.5 montre un exemple classique avec les dierents signaux. On veut, pour une entree en parabole ,
que la sortie soit une parabole. Le syst`eme presentant deux integrateurs purs, il faut que la sortie du correcteur
soit une constante au bout dun certain temps (le temps detablissement).
Puisque la sortie du correcteur est constante au bout du temps detablissement, cette sortie secrit comme la
somme dun nombre q ni dechelons soit :
W(z) =
q
i=0
w
i
z
i
1 z
1
=
W
N
(z)
1 z
1
avec W
N
(z) : polynome en z
La sortie du syst`eme en boucle fermee est :
S(z) =
W
N
(z)
1 z
1
. .
sortie
correcteur
B
+
(z)B
(z)
A
+
(z)A
(z)(1 z
1
)
m
. .
syst`eme decompose en
num, den et IT purs
3
=
U
N
(z)
(1 z
1
)
m+1
. .
entree en t
m
F(z)
..
FT en B.F.
Apr`es simplication des termes en (1 z
1
) la deuxi`eme partie de legalite devient :
W
N
(z)
B
+
(z)B
(z)
A
+
(z)A
(z)
= U
N
(z)F(z)
W
N
(z) = U
N
(z)F(z)
A
+
(z)A
(z)
B
+
(z)B
(z)
W
N
, F, U
N
, A
+
, A
, B
+
, B
(z)L(z)
o` u L(z) est un polynome.
La synth`ese revient donc `a determiner deux polynomes L(z) et K(z) (K(z) = A
(z) (5.13)
F(z) = B
+
(z)B
(z)L(z) (5.14)
Ce qui revient `a resoudre lequation diophantienne :
(1 z
1
)
m+1
A
(z) +B
+
(z)B
(z)L(z) = 1 (5.15)
3. Seuls les m integrateurs purs necessaires sont extraits de A
ETABLISSEMENT FINI 69
Le correcteur secrit alors :
C(z) =
1
syst`eme
F(z)
1 F(z)
(5.16)
C(z) =
A
+
(z)A
(z)(1 z
1
)
m
B
+
(z)B
(z)
F(z)
1 F(z)
(5.17)
=
A
+
(z)A
(z)(1 z
1
)
m
B
+
(z)B
(z)
B
+
(z)B
(z)L(z)
(1 z
1
)
m+1
A
(z)
(5.18)
(5.19)
C(z) =
A
+
(z)L(z)
(1 z
1
)
m+1
K
(z)
5.2.4 Applications des synth`eses `a temps detablissement ni
Applications sur syst`emes physiques
Rarissimes
Peu de syst`emes restent lineaires avec de telles commandes
Electrotechnique
Applications sur syst`emes informatifs
Plus courantes
Pas de physique, tout reste numerique donc pas de probl`eme entre les instants dechantillonnage
Observateurs
Controle de syst`emes dinformations
70 CHAPITRE 5. SYNTH
`
ESES
`
A TEMPS D
ETABLISSEMENT FINI
5.2.5 Exemples de reponse pile
Le syst`eme continu etudie est :
T(p) =
5
p
2
+ 2p + 5
Pour T
e
=1s, sa transformee en z avec un bloqueur dordre 0 est :
T(z) =
0.9858z + 0.4557
z
2
+ 0.3062z + 0.1353
Le correcteur pile, calcule pour avoir une erreur `a lechelon dentree nulle est :
C
p
(z) =
0.6937z
2
+ 0.2124z + 0.09388
z
2
0.6839z 0.3161
Le correcteur pour avoir un temps detablissement minimal est :
C
em
(z) =
z
2
+ 0.3062z + 0.1353
0.9858z
2
0.5302z 0.4557
Reponse pile Reponse `a temps detablissement minimal
Figure 5.6 Comparaison des commandes et sorties pour un correcteur pile et `a temps detablissement
minimum : T
e
=0.5s.
Reponse pile Reponse `a temps detablissement minimal
Figure 5.7 Comparaison des commandes et sorties pour un correcteur pile et `a temps detablissement
minimum : T
e
=1s.
5.3. R
ESOLUTION DE L
EQUATION DIOPHANTIENNE 71
5.3 Resolution de lequation diophantienne
Quelle que soit la methode adoptee pour le calcul du correcteur (Zdan, pile RST, ...), cela revient `a la resolution
dune equation diophantienne de la forme :
AX +BY = C
o` u : A, X, B, Y et C sont des polynomes en z
1
Cette equation nadmet de solutions que ssi :
dX + dY + 1 = maxdAX, dBY, dC, (5.20)
Sil existe une solution alors :
dX dB 1
dY dA 1
Ces conditions etant respectees, deux cas peuvent se presenter :
lequation est
reguli`ere
lequation est
non reguli`ere
dC < dA + dB dC dA + dB
Solution minimale en X Solution minimale en Y
dX = dB 1 dX = dB 1 dX = max(dC dA), (dB 1)
dY = dA 1 dY = max(dC dB), (dA 1) dY = dA 1
Soit
(a
0
+a
1
z
1
+ +a
n
z
k
)(x
0
+x
1
z
1
+ +x
k
z
k
)+(b
0
+b
1
z
1
+ +b
m
z
m
)(y
0
+y
1
z
1
+ +y
l
z
l
) = c
0
+c
1
z
1
+ +c
p
z
p
o` u p n + sup(k, l)
Par identication terme `a terme :
_
_
a
0
x
0
+b
0
y
0
= c
0
a
1
x
0
+a
0
x
1
+b
1
y
0
+b
0
y
1
= c
1
a
2
x
0
+a
1
x
1
+a
0
x
2
+b
2
y
0
+b
1
y
1
+b
0
y
2
= c
2
soit sous forme matricielle :
72 CHAPITRE 5. SYNTH
`
ESES
`
A TEMPS D
ETABLISSEMENT FINI
max(n +k, m+l) + 1
_
_
_
_
a
0
0 0
a
1
a
0
.
.
.
a
2
a
1
.
.
.
0
.
.
.
.
.
.
.
.
.
a
0
a
n
.
.
. a
1
0 a
n
.
.
.
.
.
.
.
.
.
.
.
.
0 a
n
.
.
.
.
.
.
0 0
. .
k+1
b
0
0 0
b
1
b
0
.
.
.
b
2
b
1
.
.
.
0
.
.
. b
2
.
.
.
b
0
.
.
. b
1
.
.
.
b
m
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 b
m
. .
l+1
_
_
_
_
x
0
.
.
.
x
k
y
0
.
.
.
y
l
_
_
=
_
_
c
0
.
.
.
.
.
.
.
.
.
c
p
0
.
.
.
0
_
_
Pour que cette matrice soit inversible, il faut que
max(n +k, m+l) + 1 = k +l + 1
Ce qui correspond `a lequation 5.20. Si toutefois cette derni`ere condition est respectee mais que son determinant
est nul, cest que les polynomes A et B ne sont pas premiers entre eux.
Exemple 1 Soit `a resoudre :
(1 + 2z
1
3z
2
z
3
)X + (0.5 + 0.01z
1
)Y = 1
dC ? dA + dB (5.21)
0 < 3 + 1 (5.22)
lequation est reguli`ere donc :
dY = dA 1 = 2
dX = dB 1 = 0
(1 + 2z
1
3z
2
z
3
)(x
0
) + (2 + 3z
1
)(y
0
+y
1
z
1
+y
2
z
2
) = 1
soit sous forme matricielle :
_
_
1 2 0 0
2 3 2 0
3 0 3 2
1 0 0 3
_
_
_
_
x
0
y
0
y
1
y
2
_
_
=
_
_
1
0
0
0
_
_
_
_
x
0
y
0
y
1
y
2
_
_
=
_
_
0.7297
0.8649
0.5676
0.2432
_
_
5.3. R
ESOLUTION DE L
EQUATION DIOPHANTIENNE 73
Exemple 2 Soit `a resoudre :
(1 + 2z
1
3z
2
z
3
)X + (0.5 + 0.01z
1
)Y = 0.7z
2
+ 0.9z
3
+z
4
dC ? dA + dB (5.23)
4 3 + 1 (5.24)
lequation est non reguli`ere. On choisi la premi`ere forme :
dY = dA 1 = 2
dX = max(dC dA), (dB 1) = max(4 3, 0) = 1
(1 + 2z
1
3z
2
z
3
)(x
0
+x
1
z
1
) + (0.5 + 0.01z
1
)(y
0
+y
1
z
1
+y
2
z
2
) = 0.7z
2
+ 0.9z
3
+z
4
soit sous forme matricielle :
_
_
1 0 0.5 0 0
2 1 0.01 0.5 0
3 2 0 0.01 0.5
1 3 0 0 0.01
0 1 0 0 0
_
_
_
_
x
0
x
1
y
0
y
1
y
2
_
_
=
_
_
0
0
0.7
0.9
1
_
_
_
_
x
0
x
1
y
0
y
1
y
2
_
_
=
_
_
2.2930
1.0000
4.5860
7.0803
19.2996
_
_
Si on avais choisi le deuxi`eme forme :
dX = dB 1 = 0
dY = max(dC dB), (dA 1) = max(4 1, 2) = 3
(1 + 2z
1
3z
2
z
3
)(x
0
) + (0.5 + 0.01z
1
)(y
0
+y
1
z
1
+y
2
z
2
+y
3
z
3
) = 0.7z
2
+ 0.9z
3
+z
4
soit sous forme matricielle :
_
_
1 0.5 0 0 0
2 0.01 0.5 0 0
3 0 0.01 0.5 0
1 0 0 0.01 0.5
0 0 0 0 0.01
_
_
_
_
x
0
y
0
y
1
y
2
y
3
_
_
=
_
_
0
0
0.7
0.9
1
_
_
_
_
x
0
y
0
y
1
y
2
y
3
_
_
=
_
_
0.4958
0.9916
1.9634
1.6140
0.8407
_
_
74 CHAPITRE 5. SYNTH
`
ESES
`
A TEMPS D
ETABLISSEMENT FINI
Chapitre 6
Methodes de commande avancees
6.1 Choix des poles en boucle fermee
Cest un choix qui ne peut etre fonde que sur des considerations physiques, on nasservit pas de la meme
facon un avion de combat et un avion de ligne ! Quelques r`egles peuvent pourtant etre donnees, vous saurez les
adapter `a votre cas particulier.
Si vous avez correctement choisi votre frequence dechantillonnage et que votre cahier des charges nest pas
utopique, les poles de la fonction de transfert en boucle ouverte sont `a peu pr`es dans la zone grisee de la gure
6.1.
Figure 6.1 Emplacement des poles en boucle ouverte.
En boucle fermee, vous pouvez esperer accelerer le syst`eme dun facteur 3 `a 10. Apr`es cela, vous quitterez le
cadre de lhypoth`ese fondamentale de ce cours : le syst`eme est lineaire.
75
76 CHAPITRE 6. M
EES
Figure 6.2 Zones de placement des poles en boucle fermee `a eviter.
Les poles du syst`eme en boucle fermee seront choisis en evitant les zones grisees de la gure 6.2. En voici les
raisons :
Pas trop proches du cercle unite. En eet une petit variation de mod`ele (vieillissement, variation de
masse, ...) pourrait engendrer une instabilite du syst`eme.
Pas trop proches du point 1. Sinon, vous ne diminuez pas le temps detablissement ou alors vous avez
mal choisi la frequence dechantillonnage.
Pas de facteur damortissement trop petit, cela conduit `a des depassements importants de la consigne
et allonge le temps detablissement.
Pas de poles reels negatifs, car ces poles gen`erent une oscillation amortie non souhaitable.
Un pole est tr`es souvent utilise, le retard pur (en z = 0), pole le plus rapide.
Si vous respectez ces crit`eres, vos poles en boucle fermee devraient etre dans la zone non grisee de la gure 6.2.
Nous parlons peu des zeros de la fonction de transfert. Non pas quils soient negligeables, bien au contraire !
Ils ont une inuence sur le comportement du syst`eme mais sont diciles `a controler. En fait, leur controle
demande un correcteur un peu plus complexe. Deux methodes de synth`ese vous sont proposees ci-apr`es.
La premi`ere, la methode de Zdan, ne soccupe que des poles de la fonction de transfert en boucle fermee. En
presence de zeros, une premi`ere synth`ese donne un correcteur aux performances assez eloignees du cahier des
charges que vous vous etes pose. Une deuxi`eme synth`ese tenant compte de ce premier resultat donne alors de
bonnes performances.
La methode RST, qui presente un degres de liberte supplementaire permet de placer les zeros aussi bien que
les poles.
6.2. M
ETHODE DE ZDAN 77
6.2 Methode de Zdan
Les methodes `a temps detablissement ni conduisent le plus souvent `a des correcteurs qui gen`erent des com-
mandes trop importantes. Tous comptes faits, on cherche rarement daussi bonnes performances pour le syst`eme
boucle. En general, une amelioration dun facteur 3 sur le temps detablissement et une erreur statique voire
de tranage nulle sont susantes, compte tenu des saturations du syst`eme.
La methode de Zdan propose de calculer un correcteur tel que le syst`eme en boucle fermee se comporte comme
un syst`eme du second ordre de pulsation propre
n
et de facteur damortissement donnes.
6.2.1 Principe
On impose au syst`eme boucle :
en regime transitoire : un comportement type second ordre (
n
et )
en regime permanent : erreur nulle pour une entree canonique u(t) = t
m
et eventuellement une erreur
donnee pour u
1
(t) = t
m+1
. Exemple : erreur nulle `a lechelon, erreur speciee pour une rampe.
La transmittance `a asservir est mise sous la forme suivante :
1
G(z) =
B
+
(z)B
(z)
(1 z
1
)
l
A
+
(z)A
(z)
o` u B
+
(z), B
(z), A
+
(z), A
(z) contient tous les zeros de G(z) exterieurs au cercle unite (dits instables)
ainsi que les retards purs du syst`eme
A
+
(z) contient tous les poles de G(z) interieurs au cercle unite (stables)
A
(z) contient tous les poles de G(z) exterieurs au cercle unite (instables)
6.2.2 Correcteur de Zdan
Le correcteur est decompose en trois parties, sous la forme :
C(z) = C
1
(z) C
2
(z) C
3
(z)
C
1
(z) doit annuler lerreur permanente, compte tenu des l integrateurs purs dej`a contenus dans G(z)
donc, en labsence de perturbations
2
:
C
1
(z) =
1
(1 z
1
)
m+1l
C
2
(z) doit compenser les poles et les zeros stables de G(z)
donc :
C
2
(z) =
A
+
(z)
B
+
(z)
C
3
(z) doit imposer le comportement en boucle fermee et comporte au moins autant de param`etres que de
specications `a satisfaire.
Posons :
C
3
(z) =
1
(z)
2
(z)
1
(z) et
2
(z) polynomes en z.
La transmittance en boucle ouverte secrit alors :
C(z) G(z) = C
1
(z) C
2
(z) C
3
(z) G(z) =
B
(z)
1
(z)
(1 z
1
)
m+1
A
(z)
2
(z)
1. La synth`ese en z est parfaitement possible mais conduit `a des erreurs faciles `a eviter en utilisant la forme en z
1
.
2. En cas de perturbations, le nombre dintegrateurs purs ne suis pas la formule donnee. Reportez-vous au 3.4.
78 CHAPITRE 6. M
EES
La transmittance en boucle fermee est :
F(z) =
C(z)G(z)
1 +C(z)G(z)
=
B
(z)
1
(z)
(1 z
1
)
m+1
A
(z)
2
(z) +B
(z)
1
(z)
=
N
F
(z)
D
F
(z)
En ecrivant legalite des denominateurs on obtient :
D
F
(z) = (1 z
1
)
m+1
A
(z)
2
(z) +B
(z)
1
(z) (6.1)
Choix de D
F
(z) Comme indique precedemment, on cherche un comportement de type second ordre. Aussi,
D
F
(z) sera decompose en deux parties telles que :
D
F
(z) = (1 +p
1
z
1
+p
2
z
2
)
. .
poles dominants
avec :
p
1
= 2e
0
T
e
cos(
0
T
e
_
1
2
)
p
2
= e
2
0
T
e
Voici quelques relations pour la determination des poles :
Table 6.1 Valeurs approximatives de langle des poles et du depassement indiciel en fonction du coecient
damortissement
Depassement
1 0
0 %
0.707 45
5 %
0.45 60
20 %
0.20 80
50 %
Figure 6.3 Relation entre depassement et position des poles dans le plan complexe
Pour
H(p) =
1
1 +
2
0
p +
p
2
2
0
Temps de reponse `a 5% :
T
r5%
=
3
m
0
6.2. M
ETHODE DE ZDAN 79
Temps de montee (10 `a 90% de la valeur nale) :
T
m
=
2
0
1 m
2
Premier depassement
D1 = 100e
1m
2
Resolution de lequation 6.1 La methode de resolution de cette equation est donnee au 5.3 73.
Quelques remarques
Remarque 1 : En prenant D
F
(z) = 1 on retrouve le correcteur astatique.
Remarque 2 : Rien noblige `a choisir un comportement en boucle fermee de type second ordre, ordre 1 ou 3 ou
n marchent aussi, on parle alors de methode du mod`ele.
Remarque 3 : En utilisant la decomposition en z
1
vous verrez apparatre les retards purs du syst`eme. Ceux-
ci ne sont pas compensables, en eet un syst`eme ayant n retards purs ne repondra jamais en moins de n
echantillons. A ce titre, les retards purs doivent gurer dans B
(z)
1
(z).
80 CHAPITRE 6. M
EES
6.3 Commande RST
Figure 6.4 Principe de correcteur par correcteur RST. V(z) est une perturbation de charge, E(z) est une
perturbation de sortie.
La forme generale de la loi de commande dun correcteur de type RST est : (voir schema 6.4)
S(z)U(z) = T(z)W(z) R(z)Y (z) (6.2)
donc :
U(z) =
T(z)
S(z)
W(z)
R(z)
S(z)
Y (z) (6.3)
La sortie du syst`eme boucle est donnee par :
Y (z) =
B(z)
A(z)
U(z) +
B(z)
A(z)
V (z) +E(z)
An dalleger les notations, les arguments des polynomes ne seront plus notes.
En reecrivant (6.2) et (6.3),
S U(z) = T W(z) R Y (z) (6.4)
A Y (z) = B U(z) +B V (z) +A E(z) (6.5)
Explicitons U(z) :
AS U(z) = AT W(z) AR Y (z)
AS U(z) = AT W(z) BR U(z) BR V (z) AR E(z)
(AS +BR) U(z) = AT W(z) BR V (z) AR E(z)
U(z) =
AT
AS +BR
W(z)
BR
AS +BR
V (z)
AR
AS +BR
E(z) (6.6)
et Y (z)
AS Y (z) = BS U(z) +BS V (z) +AS E(z) AR Y (z)
AS Y (z) = BT W(z) BR Y (z) +BS V (z) +AS E(z)
(AS +BR) Y (z) = BT W(z) +BS V (z) +AS E(z)
Y (z) =
BT
AS +BR
W(z)
BS
AS +BR
V (z)
AS
AS +BR
E(z) (6.7)
6.3. COMMANDE RST 81
6.3.1 Synth`ese de la loi de commande RST
Synth`ese par placement de poles On cherche une loi de commande U(z) telle que le syst`eme en boucle
fermee ait une fonction de transfert mod`ele donnee de la forme :
F
m
(z) =
B
m
(z)
A
m
(z)
or, dapr`es 6.7 et en supposant V = E = 0
Y (z) =
BT
AS +BR
W(z) (6.8)
Il faut donc realiser :
BT
AS +BR
=
B
m
A
m
(6.9)
Compensation des zeros An de simplier les calculs mais surtout an dobtenir une fonction de transfert
dordre le plus faible possible, on cherche `a compenser les poles et les zeros.
Posons :
B = B
+
B
o` u :
B
+
contient tous les zeros de G(z) interieurs au cercle unite (dits stables)
B
contient tous les zeros de G(z) exterieurs ou sur le cercle unite (dits instables)
Note 1 : an dobtenir ulterieurement S sous forme monique on prendra B
+
sous forme monique.
Note 2 : concernant les retards purs, ceux-ci etant impossibles `a compenser ils font donc partie de B
, car le
syst`eme ne peut reagir plus vite que son retard pur.
B
divise B
m
, donc :
B
m
= B
m
B
+
peut etre un facteur de AS +BR (compensation permise) il devra dans ce cas diviser aussi S, donc :
S = B
+
S
T
B
+
(AS
+B
R)
=
B
m
A
m
(6.10)
en simpliant :
T
AS
+B
R
=
B
m
A
m
(6.11)
Ce qui implique que :
T = A
0
B
m
(6.12)
AS
+B
R = A
0
A
m
(6.13)
O` u A
0
est un polynome donne dit polynome observateur par analogie avec la commande par retour detat
(Cours commande avancee 2A).
Le polynome caracteristique de la boucle fermee est alors :
AS +BR = B
+
A
0
A
m
(6.14)
Remarque 1 : A
0
contient les modes de la boucle fermee qui ne seront pas excites par le signal de commande,
par contre ces modes seront excites par une perturbation !
Y
W
E=V =0
=
BT
AS +BR
=
BA
0
B
m
B
+
A
0
A
m
=
B
m
A
m
=
B
m
A
m
Par contre :
Y
E
W=V =0
=
AS
AS +BR
=
AB
+
S
B
+
A
0
A
m
=
AS
A
0
A
m
82 CHAPITRE 6. M
EES
Remarque 2 :
U
W
E=V =0
=
AT
AS +BR
=
AA
0
B
m
B
+
A
0
A
m
=
AB
m
B
+
A
m
Les zeros stables du procede apparaissent comme des poles de la fonction de transfert de W vers U ce qui peut
etre nefaste (exemple poles stables `a partie reelle negative).
Annulation de lerreur statique vis-`a-vis des perturbations Ce qui suit nest valable que pour une per-
turbation E, si la perturbation est en V (voir schema 6.4), le raisonnement reste identique mais les integrateurs
purs du syst`eme (l) ne peuvent etre pris en compte, car pour annuler lerreur lintegrateur doit etre situe entre
lentree de perturbation et lerreur.
La fonction de transfert de la boucle est :
F
b
=
BR
AS
=
B
R
AS
Pour que F
b
poss`ede m+ 1 poles en z = 1, il faut que S
soit de la forme :
S
= (1 z
1
)
m+1l
S
1
lequation diophantienne (6.13) devient :
(1 z
1
)
m+1
S
1
A
+
A
+B
R = A
0
A
m
(6.15)
6.3.2 Choix des polynomes A
m
, B
m
et A
0
A
m
Cest le denominateur de la fonction de transfert voulue. Il contient donc les poles voulus. Comme pour la
methode de Zdan, on les choisit plutot de la forme deux poles complexes conjugues dominants et n poles
negligeables.
B
m
L`a encore comme pour la methode de Zdan, B
m
doit contenir tous les retards purs du syst`eme `a corriger. Il
contient aussi tous les zeros dit instables, cest-`a-dire exterieurs au cercle unite.
B
m
peut aussi contenir dautres zeros, en particulier ceux qui, tout en etant interieurs au cercle unite, ont une
partie reelle negative. Sils sont compenses, donc au denominateur du correcteur, la commande du syst`eme
presentera une reponse indicielle alternee rapide, peu appreciee des syst`emes (voir g. 3.8 ).
A
0
Le polynome dobservation A
0
est, en general, choisi egal `a 1, on a alors une dynamique identique en asservis-
sement et en regulation. On peut aussi le choisir de la forme (1az
1
). Dans ce cas, on ltre les perturbations,
la reaction de lasservissement sera plus douce mais plus longue.
6.3.3 Cas particulier du correcteur RST : le correcteur serie
En choisissant T = R on obtient le correcteur serie de la forme
C(z) =
R(z)
S(z)
En reprenant 6.12
R = T = A
0
B
m
Si on compense les poles stables du procede `a laide de A
0
le polynome dobservation :
A
0
= A
+
6.3. COMMANDE RST 83
donc,
R = A
+
B
m
et lequation diophantienne (6.15) devient :
(1 z
1
)
m+1
S
1
A
+
A
+B
A
+
B
m
= A
+
A
m
(6.16)
soit,
(1 z
1
)
m+1
A
1
+B
m
= A
m
(6.17)
qui est en fait lequation diophantienne de la methode de Zdan en posant :
1
(z) = B
m
(z)
2
(z) = S
1
(z)
84 CHAPITRE 6. M
EES
Bibliographie
[1] E. Ostertag, Automatique - Syst`emes et asservissements continu. France : Ellipses, 2005.
[2] B. Lang and V. Minzu, Commande automatique des syst`emes lineaires continus. Cours avec applications
utilisant matlab. France : Ellipses, 2001.
[3] Y. Sevely, Syst`emes et asservissements lineaires echantillonnes. Paris : Dunod Universite, 1973.
[4] H. B uhler, Reglages echantillonnes, volume 1, traitement par la transformation en z. Lausane, Suisse :
Presses polythechniques et universitaires romandes, 1986.
[5] Y. Granjon, Automatique. Dunod : Ellipses, 2001.
[6] E. Godoy and E. Ostertag, Commande numerique des syst`emes. France : Ellipses, 2005.
[7] B. Jouvencel. Automatique echantillonnee. [Online]. Available : http ://www.lirmm.fr/ jouvence/
[8] M. Etique. (2005, octobre) Regulation numerique. [Online]. Available : http ://iai.eivd.ch/users/mee/
[9] D. Peaucelle. (2003, april) Syst`emes `a temps discret, commande numerique des procedes. [Online].
Available : http ://www.laas.fr/%7Epeaucell/DPpages/DPteach.html
[10] J. Chemla. (2005, octobre) Syst`emes asservis echantillonnes. [Online]. Available :
http ://auto.polytech.univ-tours.fr/automatique/SSE/ressources/cours.pdf
[11] S. Tliba, M. Jungers, and Y. Chitour. (2005, september) Commande des processus : asservissement
numeriques. [Online]. Available : http ://www.satie.ens-cachan.fr/automatique/PolyMaster-nal.pdf
[12] D. Arzelier. Representation et analyse des syst`emes lineaires. [Online]. Available : http ://www.laas.fr/ ar-
zelier/polycop/n6k1/poly v5-2.pdf
[13] K. J.
Astrom and T. Hagglund, PID Controllers : Theory, Design, and Tuning Second Edition. Research
Triangle Park, 1995.
[14] A. ODWYER, Pi and pid controller tuning rules for time delay processes : a summary, 2000. [Online].
Available : citeseer.ist.psu.edu/dwyer00pi.html
[15] A. Schopenhauer. Lart davoir toujours raison. [Online]. Available :
http ://www.philo5.com/Mes%20lectures/Schopenhauer,%20Lart%20davoir%20toujours%20raison.htm
85
86 BIBLIOGRAPHIE
Premi`ere partie
Annexes
87
Annexe A
Tables de transformees
89
90 ANNEXE A. TABLES DE TRANSFORM
EES
Table A.1 Table des transformees de Laplace et en z usuelles.
X(p) x(t) X(z)
1 (t) 1
e
kT
e
p
(t kT
e
) z
k
1
p
(t)=1
z
z1
1
p
2
t
T
e
z
(z1)
2
1
p+a
e
at z
ze
aT
e
1
(p+a)
2
te
at T
e
ze
aT
e
(ze
aT
e
)
2
1
p(1+p)
1 e
t/
(1e
T
e
/
)z
(z1)(ze
T
e
/
)
1
p
2
(1+p)
t + e
t/ T
e
z
(z1)
2
(1e
T
e
/
)z
(z1)(ze
T
e
/
)
1
p(1+p)
2
1 (1 +
t
)e
t/ z
z1
z
ze
T
e
/
T
e
ze
T
e
/
(ze
T
e
/
)
2
p
2
+
2
sin t
z sin T
e
z
2
2z cos T
e
+1
p
p
2
+
2
cos t
z(zcos T
e
)
z
2
2z cos T
e
+1
(p+a)
2
+
2
e
at
sin t
ze
aT
e
sin T
e
z
2
2ze
aT
e
cos T
e
+e
2aT
e
p
(p+a)
2
+
2
e
at
cos t
z
2
ze
aT
e
cos T
e
z
2
2ze
aT
e
cos T
e
+e
2aT
e
2
n
p(p
2
+
2
n
)
1 cos
n
t
z
z1
z(zcos
n
T
e
)
z
2
2z cos
n
T
e
+1
1
1+2
p
n
+
p
2
2
n
p
1
2
e
n
t
sin
p
t
p
=
n
_
1
2
1
p
_
1+2
p
n
+
p
2
2
n
_
1
n
p
e
n
t
sin(
p
t + )
p
=
n
_
1
2
= cos
1
ba
(p+a)(p+b)
e
at
e
bt z
ze
aT
e
z
ze
bT
e
ab
p(p+a)(p+b)
1
b
ab
e
at
a
ab
e
bt z
z1
+
bz
(ab)(ze
aT
e
)
az
(ab)(ze
bT
e
)
91
Table A.2 Table des transformees en z des syst`emes classiques precedes dun bloqueur dordre 0. T
e
est la
periode dechantillonnage et a = e
T
e
/
Transmittance en p Transmittance en z
B
0
(p)
p
T
e
z1
B
0
(p)
1+p
1a
za
,a = e
T
e
/
B
0
(p)
p(1+p)
(T
e
(1a))zaT
e
+(1a)
z
2
(1+a)z+a
B
0
(p)
p
2
(1+p)
b
2
z
2
+b
1
z+b
0
z
3
(2+a)z
2
+(1+2a)za
b
2
=
T
e
2
2
+ T
e
+
2
(1 a)
b
1
= (
T
e
2
2
2
2
)(1 a) + T
e
(1 + a)
b
0
=
2
(1 a) aT
e
( +
T
e
2
)
B
0
(p)
(1+
1
p)(1+
2
p)
b
1
z+b
0
z
2
(e
T
e
/
1
+e
T
e
/
2
)z+e
T
e
/
1
e
T
e
/
2
b
1
=
1
(1e
T
e
/
1
)
2
(1e
T
e
/
2
)
2
b
0
= e
T
e
/
1
e
T
e
/
2
1
e
T
e
/
2
2
e
T
e
/
1
2
B
0
(p)
(1+p)
2
1a
za
T
e
a(z1)
(za)
2
B
0
(p)
(1+p)
3
1a
za
T
e
(2+T
e
)a(z1)
2
(za)
2
T
e
2
a
2
(z1)
2
(za)
3
B
0
(p)
p(1+
1
p)(1+
2
p)
b
2
z
2
+b
1
z+b
0
z
3
(1+a
1
+a
2
)z
2
+(a
1
+a
2
+a
1
a
2
)za
1
a
2
a
i
= e
T
e
/
i
b
2
= T
e
2
1
(1a
1
)
2
2
(1a
2
)
2
b
1
= T
e
(a
1
+ a
2
)
2
1
(1+a
2
)(1a
1
)
2
2
(1+a
1
)(1a
2
)
2
b
0
= T
e
a
1
a
2
2
1
a
2
(1a
1
)
2
2
a
1
(1a
2
)
2
B
0
(p)
1+
2
n
p+
1
2
n
p
2
p
=
n
_
1
2
< 1
b
0
+b
1
z
z
2
2ze
n
T
e
cos(
p
T
e
)+e
2
n
T
e
b
0
= e
2
n
T
e
+ e
n
T
e
(
sin(
p
T
e
)
1
2
cos(
p
T
e
))
b
1
= 1 e
n
T
e
_
sin(
p
T
e
)
1
2
+ cos(
p
T
e
)
_
92 ANNEXE A. TABLES DE TRANSFORM
EES
Annexe B
Travaux diriges
ENSMM 1 ANNEE
93
94 ANNEXE B. TRAVAUX DIRIG
ES
B.1. TD N1 : FR
EQUENCE D
ECHANTILLONNAGE ET
EQUATIONS R
ECURRENTES 95
B.1 TD n1 : Frequence dechantillonnage et equations recurrentes
Choix de la periode dechantillonnage
Exercice 1. choix de la periode dechantillonnage
Soit le syst`eme continu de transmittance
G(p) =
1 p
p
3
+ 2p
2
+ 11p + 10
Donner lallure des diagrammes de Bode et evaluer la pulsation de coupure (utiliser eventuellement MATLAB).
Dans quel intervalle peut-on choisir la periode dechantillonnage `a utiliser pour observer la sortie de ce syst`eme ?
A laide de simulink tracer la reponse indicielle du syst`eme continu et la reponse echantillonnee avec les periodes
dechantillonnage que vous avez determinees. Conclure.
Syst`emes recurrents
Exercice 2. Etude dune equation de recurrence
Soit le syst`eme recurrent dentree u
n
et sortie s
n
deni par
_
_
_
s
n+1
+as
n
= u
n
s
0
= 0
Calculer la suite s
n
lorsque lentree est une suite unitaire u
n
= 1,1,. . . .1,. . .
Representer graphiquement s
n
pour dierentes valeurs de a. Sous quelle condition ce syst`eme est-il stable ?
A laide de Matlab , pour dierentes valeurs de a executer les 2 commandes :
>> S=dstep(1,[1 a]) % Calcul de la sortie de la fonction de transfert
>> dstep(1,[1 a]) % Trace de la sortie
Comparer aux resultats du calcul precedent ?
Calculer egalement les valeurs de s
n
`a laide de Matlab.
Exercice 3.
Soit le syst`eme recurrent dentree u
n
et sortie s
n
deni par :
_
_
_
s
n+2
5
6
s
n+1
+
1
6
s
n
=
1
6
u
n
s
0
= 2; s
1
= 1
Calculer la suite s
n
lorsque lentree est une suite unitaire u
n
= 1,1,. . . .1,. . . .
Etudier la stabilite de ce syst`eme.
Exercice 4.
Soit le syst`eme recurrent dentree u
n
et sortie s
n
deni par :
_
_
_
s
n+3
+as
n+2
+as
n+1
+bs
n
= u
n
a, b R
+
Etudier dans le plan des param`etres a et b la stabilite de ce syst`eme.
96 ANNEXE B. TRAVAUX DIRIG
ES
B.2 TD n2 : Syst`emes recurrents
On souhaite modeliser levolution du cheptel dun eleveur de bovins. Soit :
x1
k
: le nombre de vaches de 1 an,
x2
k
: le nombre de vaches de 2 ans,
x3
k
: le nombre de vaches de 3 ans et plus,
y
k
: le nombre total de vaches
ces valeurs representant des nombres moyens au cours de lannee k.
Les vaches de 1 an ne se reproduisent pas.
Les vaches de deux ans produisent en moyenne 0.8 veau par an,
celles de trois ans et plus 0.4 veau par an.
Dautre part, seules celles de trois ans et plus meurent de causes naturelles avec un taux moyen de 30 % par
an.
Enn leleveur sautorise `a acheter ou vendre uniquement des vaches de trois ans et plus. Soit u
k
le nombre de
vaches achetees (u
k
> 0) ou bien vendues (u
k
< 0) au cours de lannee k.
Le syst`eme ainsi decrit a une cadence T
e
de 1 an. Cette cadence peut sinterpreter comme une periode
dechantillonnage si on consid`ere que le procede (elevage) est en realite continu (les vaches existent entre 2
mesures). La notion dechantillonnage correspond au choix de compter les vaches une fois par an.
1. Etablir les equations recurrentes de ce syst`eme.
2. En deduire la fonction de transfert H(z) =
Y (z)
U(z)
et lequation recurrente qui relie uniquement l entree et
la sortie du syst`eme.
3. Calculer les poles de la transmittance. Le syst`eme est-il stable ?
4. On consid`ere une loi de commande statique telle que : u
k
= K(K
c
y
c
y
k
).
Faire le schema fonctionnel et calculer la transmittance en boucle fermee G(z) =
Y (z)
Y
c
(z)
.
Le gain K
c
(gain de precommande) sert `a regler le gain statique du syst`eme boucle. On souhaite un gain
statique egal `a 1, exprimer K
c
en fonction de K.
Etudier la stabilite de ce syst`eme en fonction de K.
5. En utilisant Matlab tracer le lieu dEvans de H(z) :
>> h=tf([num(H)],[den(H)],T); % definition de la fonction de transfert
>> rltool(h) % lieu dEvans
Retrouver sur ce lieu le domaine des valeurs de K assurant la stabilite. Observer les reponses `a un echelon
de ce syst`eme pour des valeurs de K correspondant aux dierents modes. Quelle est la valeur de K qui
vous semble la plus satisfaisante.
6. Reprendre la simulation avec Simulink en considerant que la consigne xee par leleveur est davoir un
cheptel de 30 vaches (y
c
=30) . Verier la valeur du gain K
c
calcule 5, observer levolution du troupeau
et des achats ou ventes de betail par leleveur.
B.3. TD N3 : ASSERVISSEMENT NUM
ERIQUE DE VITESSE 97
B.3 TD n3 : Asservissement numerique de vitesse
Figure B.1 Asservissement numerique de vitesse etudie en TP.
Modelisation du syst`eme
Soit A le gain daction P et B le gain daction I. Donner le schema fonctionnel de cette regulation
Donner lequation de recurrence liant la commande u
k
`a la consigne w
k
et `a la mesure y
k
.
On mesure = 15ms et le produit k
m
k
g
= 0.3. Quelle periode dechantillonnage T
e
peut-on choisir ?
On choisit T
e
= 10 ms. Calculer la transmittance en z de lensemble convertisseurs, ampli, moteur, generatrice
tachymetrique.
Regulation proportionnelle
(A,=0, B=0)
Etudier la stabilite de cette regulation
Calculer en fonction de A la reponse de cette regulation `a un echelon de consigne. Quelles sont les dierents
types de reponse que lon peut obtenir. Pour quelles valeurs de A a-t-on une reponse sans depassement ?
Calculer de 2 mani`eres la valeur du gain statique et de lerreur statique.
Regulation proportionnelle et integrale
Determiner le domaine de stabilite en fonction des param`etres A et B.
Donner les nouvelles valeurs du gain statique et de lerreur statique.
Calculer A et B pour que la sortie atteigne la consigne (et garde cette valeur) des la n de la premi`ere periode
dhorloge (reponse en 1 coup) ?
98 ANNEXE B. TRAVAUX DIRIG
ES
B.4 TD n4 : Etude dun four electrique
Soit un four electrique. Autour dun point de fonctionnement, la transmittance liant la variation de temperature
s
`a la variation de tension de commande U est de la forme :
G(p) =
s(p)
U(p)
=
Ke
10p
1 + 100p
Ce four est commande par calculateur selon le schema fonctionnel donne en gure B.2
Figure B.2 Schema fonctionnel de lasservissement du four.
1. On choisit une periode dechantillonnage T
e
=10 secondes. Justier ce choix.
Montrez que la transmittance H(z) du syst`eme echantillonne-bloque dentree E(z) et sortie S(z) est de
la forme :
H(z) =
S(z)
E(z)
=
K(1 a)
z(z a)
2. On utilise un regulateur C(z) de la forme :
C(z) =
A(z a)
K(1 a)(z )
Calculer lerreur statique. On souhaite une erreur statique nulle. Quelle valeur faut-il donner `a ?
Etudier la stabilite du syst`eme en boucle fermee en fonction de A.
Montrer quil faut A < 0.25 pour avoir une reponse sans depassement.
Pour A = 0.25 calculer la reponse du syst`eme `a un echelon unite. Calculer les 10 premi`eres valeurs
de cette reponse et en deduire le temps de reponse `a 5%.
3. On souhaite ameliorer la rapidite de la reponse indicielle. Pour cela on choisit maintenant un regulateur
de la forme :
C(z) =
A(z a)(z )
K(1 a)(z 1)(z )
Calculer A, et pour avoir une reponse en 2 periodes dechantillonnage.
4. Peut-on trouver un correcteur donnant une reponse en une periode ?
B.5. TD N5 ET 6 : ETUDE DUN ASSERVISSEMENT DE POSITION 99
B.5 TD n5 et 6 : Etude dun asservissement de position
Synth`ese dun correcteur par dierentes methodes (2 seances)
Etude dune regulation continue
Lasservissement de position est decrit par le mod`ele :
La perturbation V
p
appliquee sur la commande du moteur est equivalente `a la perturbation due `a la variation
du couple resistant sur le moteur.
Regulation proportionnelle C(p) = A
1. Exprimer la sortie V
s
ainsi que lecart en fonction de V
c
et V
p
.
2. On souhaite que lerreur permanente soit inferieure `a 10% de lamplitude de la perturbation .
Quelle valeur faut-il donner `a A?
Quel est dans ce cas le facteur damortissement ?
3. Determiner la marge de phase (par le calcul ou en utilisant Matlab)
4. En utilisant Matlab/Simulink tracer la reponse `a un echelon de consigne et un echelon de perturbation
retarde de 20 ms.
Correcteur `a avance de phase
On remplace A par un correcteur de transmittance
C(p) = A
1 +Tp
1 +aTp
avec a < 1
On utilise la valeur de A calculee precedement pour conserver la precision de lasservissement, mais on souhaite
une marge de phase superieure `a 70 pour avoir un bon amortissement. On choisit T = 1/60 et a = 1/4.
1. Verier avec Matlab que la condition sur la marge de phase est bien veriee.
2. En utilisant Matlab/Simulink tracer la reponse `a un echelon de consigne et un echelon de perturbation
retarde de 20 ms.
Commande par calculateur
On souhaite realiser lasservissement de position en utilisant un calculateur.
1. Donner le nouveau schema fonctionnel.
2. Dans quel domaine de valeur faut-il choisir la periode dechantillonnage ?
3. On choisit une periode dechantillonnage T
e
=0.005 s. Calculer la transmittance G(z) de lensemble
convertisseurs ampli moteur capteur .
100 ANNEXE B. TRAVAUX DIRIG
ES
Transposition dun correcteur analogique
1. Donner la transmittance du correcteur echantillonne obtenu en discretisant le correcteur `a avance de phase
analogique de 3 mani`eres dierentes : discretisation avant, discretisation arri`ere, methode de Tustin
2. Dans ces 3 cas, tracer avec Matlab/Simulink la reponse `a un echelon de consigne et un echelon de
perturbation retarde de 20 ms. Comparer `a la regulation continue.
Rappel : Discretisation avant : p =
z1
T
e
Discretisation arri`ere : p =
z1
zT
e
Approximation de Tustin : p =
2
T
e
z1
z+1
Regulation proportionnelle
On choisit un correcteur C(z) = K
1. Etudier la stabilite de cet asservissement.
2. Retrouver la condition de stabilite en tracant, avec Matlab, le lieu dEvans.
3. En utilisant ce lieu determiner K pour avoir le meilleur temps de reponse.
4. Quelle est alors la valeur de lerreur permanente en reponse `a un echelon de consigne et `a un echelon de
perturbation sur la commande.
Determination dun correcteur par la methode du mod`ele
On souhaite que lasservissement se comporte comme un mod`ele du 2
`eme
ordre de transmittance :
M(p) =
1
(1 + 0.005p)
2
1. Calculer la transmittance M(z) correspondant `a M(p) precede dun bloqueur dordre 0.
2. Determiner un correcteur tel que la transmittance en boucle fermee de lasservissement numerique de
position soit equivalente `a celle du mod`ele (pour simplier les calculs certains poles et zeros du correcteurs
pourront compenser les poles et zeros stables de G(z)).
3. Tracer avec Matlab/Simulink la reponse `a un echelon de consigne et un echelon de perturbation retarde
de 20 ms.
4. Calculer lerreur permanente relative `a la perturbation.
5. Proposer un correcteur permettant dannuler cette erreur et tracer avec Matlab/Simulink la reponse `a un
echelon de consigne et un echelon de perturbation retarde de 20 ms.
Comparer les resultats obtenus par les dierentes methodes
B.6. TD N7 : M
ES
B.7 TD n8 : Synth`ese dun regulateur RST
On souhaite controler `a laide dun calculateur numerique le procede continu decrit par lequation dierentielle :
d
2
y
dt
2
= aby(t) + (a +b)
dy
dt
+
1
2
abu(t) + (
3
2
b 2a)
du
dt
avec a=ln(2) et b=ln(3)
La loi de commande u
k
est appliquee au syst`eme `a laide dun convertisseur numerique/analogique modelise
par un bloqueur dordre zero ; un convertisseur analogique/numerique modelise comme un echantillonneur, est
place en sortie (voir gure 1).
Modelisation
1. Donner la fonction de transfert G(p) =
Y (p)
U(p)
du procede continu
2. On choisit T
e
=1s , donner la fonction de transfert G(z) =
Y (z)
U(z)
du procede echantillonne.
Regulation proportionnelle
1. Determiner en utilisant le crit`ere de Jury, les valeurs de K qui stabilisent le syst`eme.
Regulateur RST
On souhaite que le syst`eme se comporte comme un syst`eme du 1 ordre de gain statique unite et de constante
de temps = 2s. On souhaite egalement une erreur statique nulle en reponse `a un echelon de perturbation sur
lentree de commande U.
1. Calculer le regulateur RST qui satisfait ces conditions (voir principe du calcul page suivante).
2. A laide de simulink tracer la reponse `a un echelon unitaire de consigne et un echelon de perturbation
damplitude 0.1 intervenant `a t = 10s.
B.7. TD N8 : SYNTH
`
ESE DUN R
(S)
(R)
(S)
(T)
pour que le regulateur soit realisable.
On souhaite que le syst`eme corrige se comporte comme le mod`ele :
M(z) =
B
m
(z)
A
m
(z)
Le calcul de la transmittance en boucle fermee conduit `a la relation :
BT
AS +BR
=
B
m
(z)
A
m
(z)
(B.1)
Cette relation conditionne les choix suivants :
les zeros de B(z) qui ne sont pas des zeros de B
m
(z) doivent etre des zeros de AS +BR.
Le syst`eme compense devant etre stable, les zeros de B(z)dont le module est superieur `a 1, doivent etre
des zeros de B
m
(z).
Nous noterons B(z) = B
i
(z)B
s
(z) o` u B
i
(z) contient les zeros instables et B
s
(z) contient les zeros
stables de B(z). Nous noterons B
m
(z) = B
i
(z)B
m
(z) .
les zeros de B
s
(z) doivent etre des zeros de AS +BR donc necessairement des zeros de S(z).
Pour assurer la precision on peut introduire un certain nombre dintegrateurs.
De ces dierentes conditions on peut deduire :S(z) = (z 1)
B
s
(z)S
(z)
Legalite (B.1) devient :
B
i
B
s
T
A(z 1)
B
s
S
(z) +B
i
B
s
R
=
B
i
B
m
A
m
(B.2)
soit :
T
A(z 1)
(z) +B
i
R
=
B
m
A
m
(B.3)
Introduisons le polynome A
0
(z) nomme polynome dobservation tel que
T = B
m
A
0
Lequation du syst`eme compense devient :
A
0
A
m
= A(z 1)
+B
i
R
ou encore :
B
s
A
0
A
m
= AS +BR
On peut montrer quune solution de cette equation doit verier les inegalites :
_
_
_
(A
m
)
(B
m
)
(A)
(B)
(A
0
) 2
(A)
(A
m
)
(B
s
) + 1
104 ANNEXE B. TRAVAUX DIRIG
ES