Vous êtes sur la page 1sur 146

Automatique linaire chantillonne

Version 2009.1

Gonzalo Cabodevila
gonzalo.cabodevila@femto-st.fr TDs : G. Cabodevila, D. Chappe, A. Janex, B. Lang Tutorial Matlab : B. Jouvencel 1re 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

Pr eface
Le choix de lenseignement de lautomatique echantillonn ee d` es la premi` ere ann ee se fonde sur la constatation que la majorit e dentre vous ont acquis les bases de lautomatique lin eaire pendant les classes pr eparatoires. Celles et ceux pour qui cette hypoth` ese est fausse auront un peu de travail personnel suppl ementaire ` a fournir. Les enseignants sont l` a pour vous aider, nh esitez pas ` a poser des questions. Par ailleurs, la biblioth` eque poss` ede quelques ouvrages de qualit e tels que [1] et [2] sans oublier les techniques de ling enieur, accessibles en ligne. Ce polycopi e1 nest gu` ere quun document vous epargnant la recopie de formules, la pr esence en cours est indispensable. Enn, je ne saurai que trop vous conseiller de lire dautres ouvrages traitant du m eme sujet, notamment [3], [4], [5] ou [6] (vous noterez une etrange ressemblance avec ce dernier ouvrage, c etait 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 t el echarger an davoir une deuxi` eme version des faits. Le cours est organis e sous la forme de 6 le cons aussi ind ependantes que possible. Des rappels des notions utiles pour la compr ehension de la le con seront faits au d ebut de chaque s eance, n eanmoins 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 r A A edig e avec L TEX, les transparents sont faits avec L TEX et le package Beamer. Les dessins sont issus de Matlab et de Xg ou Draw de Open Oce.

Table des mati` eres


1 Introduction 1.1 D enition . . . . . . . . . . . . . . . . . . . . . . . 1.2 Exemples dasservissements . . . . . . . . . . . . . 1.2.1 Historique . . . . . . . . . . . . . . . . . . . 1.3 Mise en uvre des asservissements num eriques . . 1.3.1 Technologie des asservissements . . . . . . . 1.4 Echantillonnage et quantication . . . . . . . . . . 1.4.1 Le bruit de quantication . . . . . . . . . . 1.5 P eriode d echantillonnage . . . . . . . . . . . . . . 1.5.1 Le probl` eme de la p eriode d echantillonnage 1.5.2 Le recouvrement de spectre avec les mains . 1.5.3 Bruit sur la d eriv ee . . . . . . . . . . . . . . 1.5.4 Choix de la p eriode d echantillonnage . . . 9 9 9 9 13 14 17 17 17 17 19 20 21 25 25 26 28 28 28 28 30 30 30 31 32 32 33 33 35 35 37 37 38 38 39 40 41 42 43 43 43 46 46 47 47

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

2 Transform ee en z 2.1 D enition de la transform ee en z . . . . . . . . . . . . . . . . . . . . 2.2 Propri et es de la transform ee en z . . . . . . . . . . . . . . . . . . . . 2.3 Calcul de la transform ee en z . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Par la formule de d enition . . . . . . . . . . . . . . . . . . . 2.3.2 Par la th eorie des r esidus . . . . . . . . . . . . . . . . . . . . 2.3.3 Par lutilisation des tables . . . . . . . . . . . . . . . . . . . . 2.4 Transform ee inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Th eorie des r esidus . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Par division polynomiale . . . . . . . . . . . . . . . . . . . . . 2.4.3 Par lutilisation des tables . . . . . . . . . . . . . . . . . . . 2.5 Transmittances echantillonn ees . . . . . . . . . . . . . . . . . . . . . 2.5.1 Notions de sch ema bloc . . . . . . . . . . . . . . . . . . . . . 2.5.2 Transform ee en z dun sch ema bloc . . . . . . . . . . . . . . . 2.5.3 Transform ee dun syst` eme pr ec ed e par un bloqueur dordre 0 2.5.4 Transmittances echantillonn ees de syst` emes boucl es . . . . . 2.5.5 Avec Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Analyse des syst` emes 3.1 Stabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Conditions de stabilit e . . . . . . . . . . . . . . . . . . . . . 3.1.2 Crit` ere de Jury . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.3 Crit` ere de Routh-Hurwitz appliqu e sur la transform ee en w 3.1.4 Avec Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Correspondance des plans z et p . . . . . . . . . . . . . . . . . . . 3.2.1 R eponse impulsionnelle en fonction de la position des p oles. 3.3 Le lieu dEvans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 D enition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Pr ecision des syst` emes echantillonn es . . . . . . . . . . . . . . . . 3.4.1 Erreur vis-` a-vis de la consigne . . . . . . . . . . . . . . . . . 3.4.2 Erreur vis-` a-vis de la perturbation . . . . . . . . . . . . . . 3.4.3 Extension du raisonnement ` a tous types dentr ees . . . . . . 5

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

6 3.4.4

` TABLE DES MATIERES Cycle limite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 51 51 51 52 53 53 55 55 56 57 58 59 59 60 62 65 65 65 67 68 68 70 71 72 73 77 77 79 79 79 81 82 83 83 84

4 Transposition des correcteurs analogiques 4.1 Les di erentes approximations de la d eriv ee . . . 4.1.1 Di erences vers larri` ere . . . . . . . . . . 4.1.2 Di erences vers lavant . . . . . . . . . . . 4.1.3 Transformation bilin eaire . . . . . . . . . 4.1.4 Avec Matlab . . . . . . . . . . . . . . . . 4.2 PID analogique . . . . . . . . . . . . . . . . . . . 4.2.1 R eglages de Ziegler-Nichols . . . . . . . . 4.2.2 P, PI, ou PID ? . . . . . . . . . . . . . . . 4.3 Le PID num erique . . . . . . . . . . . . . . . . . 4.3.1 R eglages de Takahashi pour un r egulateur 4.4 Mise en uvre dun asservissement . . . . . . . . 4.4.1 Anti windup . . . . . . . . . . . . . . . . 4.4.2 Pr edicteur de Smith . . . . . . . . . . . . 4.4.3 Algorithme . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PID num erique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . ltr e . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

5 Synth` eses ` a temps d etablissement ni 5.1 Synth` ese en z de correcteurs . . . . . . . . . . . . . . . . . . . . 5.1.1 Exemple idiot... mais riche denseignements . . . . . . . 5.2 Synth` eses ` a temps d etablissement ni . . . . . . . . . . . . . . 5.2.1 Synth` ese ` a temps d etablissement minimal absolu . . . . 5.2.2 Synth` ese ` a temps d etablissement minimal non absolu . 5.2.3 R eponse pile . . . . . . . . . . . . . . . . . . . . . . . . 5.2.4 Applications des synth` eses ` a temps d etablissement ni 5.2.5 Exemples de r eponse pile . . . . . . . . . . . . . . . . . 5.3 R esolution de l equation diophantienne . . . . . . . . . . . . . 6 M ethodes de commande avanc ees 6.1 Choix des p oles en boucle ferm ee . . . . . . . . . . . . . . . . 6.2 M ethode de Zdan . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.2 Correcteur de Zdan . . . . . . . . . . . . . . . . . . . 6.3 Commande RST . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1 Synth` ese de la loi de commande RST . . . . . . . . . 6.3.2 Choix des polyn omes Am , Bm et A0 . . . . . . . . . . 6.3.3 Cas particulier du correcteur RST : le correcteur s erie Bibliographie

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

Annexes

87
89 93 . 95 . 96 . 97 . 98 . 99 . 101 . 102

A Tables de transform ees B Travaux dirig es B.1 TD n1 : Fr equence d echantillonnage et equations r ecurrentes B.2 TD n2 : Syst` emes r ecurrents . . . . . . . . . . . . . . . . . . . B.3 TD n3 : Asservissement num erique de vitesse . . . . . . . . . B.4 TD n4 : Etude dun four electrique . . . . . . . . . . . . . . . B.5 TD n5 et 6 : Etude dun asservissement de position . . . . . . B.6 TD n7 : M ethode de Zdan . . . . . . . . . . . . . . . . . . . . B.7 TD n8 : Synth` ese dun r egulateur RST . . . . . . . . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

C Tutorial Matlab 105 Tutorial Matlab de Jouvencel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

` TABLE DES MATIERES D Annales Devoir personnel Juin 2006 Examen nal Juin 2006 . . Devoir personnel Juin 2007 Examen nal Juin 2007 . . Examen nal Juin 2008 . . Examen nal Janvier 2009 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7 127 127 129 133 134 138 144

` TABLE DES MATIERES

Chapitre 1

Introduction
1.1 D enition

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 t aches par des machines fonctionnant sans intervention humaine. Wikip edia Cest une partie dun ensemble plus vaste nomm e cybern etique. D enie en 1947 par Norbert Wienner, la cybern etique est la base de la robotique, de lautomatique, de lintelligence articielle et de la th eorie de linformation.

1.2
1.2.1

Exemples dasservissements
Historique

Lhistoire de lautomatique d emarre sans doute d` es la pr ehistoire. En eet, le masque du sorcier pr ehistorique est une premi` ere tentative de donner une vie propre ` a un objet inanim e. Le syst` eme souvent cit e comme etant la premi` ere r ealisation dun correcteur automatique est la clepsydre de Ktesibios (-270 av. J.C) (gure 1.1). An dam eliorer le principe de lhorloge ` a eau, Ktesibios introduit un r eservoir suppl ementaire dans lequel le volume de liquide reste constant gr ace ` a un otteur qui ferme lentr ee du r eservoir lorsque celui-ci est trop plein. En gros, cest une chasse deau moderne.

Fig. 1.1 Clepsydre de Ktesibios(-270 av. J.C., Alexandrie). Lhorloge, des si` ecles plus tard, est encore un moteur de d ecouvertes dans le domaine de lautomatique. L echappement ` a ancre nest gu` ere quun stabilisateur de fr equence. Les d eveloppements de lhorloge conduisent alors ` a la cr eation dautomates extr emement compliqu es. Citons, ` a titre dexemple, le canard de Vaucanson 9

10

CHAPITRE 1. INTRODUCTION

(1709-1782) (gure 1.2) qui pouvait boire, se nourrir, caqueter, nager, dig erer et d ef equer. Lid ee de la programmation est n ee ` a peu pr` es ` a la m eme epoque. En 1728, Jean-Philippe Falcon cr ee le premier m etier ` a tisser programmable par cartons perfor es. Vaucanson r ealise un m etier ` a tisser programm e en 1745, et en 1801 le c el` ebre m etier ` a tisser automatique programmable de Joseph-Marie Jacquard.

Fig. 1.2 Canard de Vaucanson (

1739).

Fig. 1.3 M etier ` a tisser programmable.

Fig. 1.4 Cartes perfor ees, le d ebut de la programmation.

A la m eme epoque dautres syst` emes voient le jour, pouss es par la r evolution industrielle qui est en marche. Denis Papin d eveloppe la soupape de s ecurit e (gure 1.5) pour les syst` emes fonctionnant ` a la vapeur et James Watt invente le r egulateur de vitesse ` a boule (gure 1.6). Les r ealisations pr ec edentes ne manquent pas ding eniosit e, n eanmoins il faudra attendre larriv ee de l electricit e puis de l electronique pour voir appara tre les premiers correcteurs en tant que tels. Enn, le d eveloppement des microprocesseurs puis celui des microcontr oleurs permet aujourdhui de mettre en uvre des principes de commande tr` es elabor es, notamment : le pilotage de syst` emes instables les commandes robustes lidentication en ligne la commande de syst` emes non lin eaires la commande pr edictive ...

1.2. EXEMPLES DASSERVISSEMENTS

11

Fig. 1.5 Soupape de s ecurit e de Denis Papin ( 1679).

Fig. 1.6 R egulateur de vitesse de Watt (1788).

Les gures 1.7 et 1.8 repr esentent deux exemples de stabilisation de syst` emes instables, les gures 1.9 et 1.10 repr esentent 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.

Fig. 1.7 Fus ee Ariane (ESA).

Fig. 1.8 Avion de combat Rafale (Dassault).

12

CHAPITRE 1. INTRODUCTION

Fig. 1.9 Fus ee Ariane (ESA).

Fig. 1.10 Centrale electrique de Tchernobyl.

Retenez encore quaujourdhui sur 100 syst` emes m eritant d etre asservis : 10 le sont eectivement, mais 9 sont mal asservis.

1.3. MISE EN UVRE DES ASSERVISSEMENTS NUMERIQUES

13

1.3

Mise en uvre des asservissements num eriques

Le sch ema g en eral dun asservissement analogique est repr esent e en gure 1.11, sa transposition en commande num erique est repr esent ee en gure 1.12.

Fig. 1.11 Syst` eme asservi lin eaire continu.

Fig. 1.12 Syst` eme asservi lin eaire echantillonn e. (Ne cherchez pas les boites CAN et CNA sous simulink, elles nexistent
pas ! CAN est intrins` eque en passant de continu ` a echantillonn e, CNA sappelle en fait ZOH pour Zero Order Hold.)

Les avantages de lasservissement num erique sont nombreux, en voici quelques uns.
R ealisation ais ee de r egulateurs complexes, lois de commande ran ees. Facilit e de mise en oeuvre de commandes anticipatrices (compensation par rapport ` a la consigne ou ` a certaines perturbations). Mise en oeuvre dalgorithmes de r egulation sans equivalent analogique. Insensibilit e de la caract eristique entr ee-sortie du r egulateur aux parasites, aux variations de temp erature, au vieillissement, etc. Pas de dispersion des param` etres du r egulateur en cas de fabrication en s erie. Prise en compte de d efauts, des limites et comportements particuliers du syst` eme ` a r egler (non lin earit es, saturations) par simple programmation. Lin earisation autour dun point de fonctionnement ajustable. G en erateur de trajectoires int egr e. Changement de correcteur souple et rapide. Interface utilisateur conviviale. Plusieurs syst` emes corrig es par un seul microprocesseur.

14

CHAPITRE 1. INTRODUCTION

Il y a aussi quelques inconv enients quil convient de conna tre pour mieux les contourner. Notamment lobservation discontinue de la grandeur r egl ee, le syst` eme est en boucle ouverte entre deux instants d echantillonnage. Sans pr ecautions particuli` eres, le bouclage num erique ins` ere des non lin earit es dans la boucle de r egulation dues : ` a la quantication des convertisseurs, ` a la pr ecision de calcul nie du microprocesseur, au proc ed e d echantillonnage (recouvrement spectral). Ces non lin earit es peuvent avoir un eet d estabilisant (cycles limites) et introduisent des bruits suppl ementaires, voire des battements. Un autre ph enom` ene important est linsertion de retards purs dans la boucle de r egulation dus au temps de conversion analogique-num erique (A/N) et num erique-analogique (N/A) et au temps dex ecution de lalgorithme de r egulation, or les retards purs sont tr` es d estabilisants.

1.3.1

Technologie des asservissements

Le choix du support mat eriel dun asservissement num erique est evidemment fonction de lobjet contr ol e. La gamme de supports est vaste, pour xer les id ees voici trois syst` emes complets. Dans le cas de syst` emes tr` es complexes, n ecessitant plusieurs asservissements simultan es, des interfaces utilisateurs conviviales, le choix se porte sur des calculateurs industriels qui se pr esentent sous la forme dun rack dans lequel on ins` ere des cartes ` a microprocesseur et des cartes dentr ees sorties. La puissance de calcul nest pas limit ee.

Fig. 1.13 Kit de d eveloppement sur Bus VME.

Fig. 1.14 Carte d acquisition haute densit e. 96 voies analogiques 12 bits 3 M ech./s.

La programmation de ces syst` emes fait appel ` a un syst` eme dexploitation multit ache temps r eel. A linverse, pour des syst` emes simples, un microcontr oleur1 sut. La programmation se fait alors en C ou en Assembleur, les microcontr oleurs plus puissants acceptent sans probl` eme un OS temps r eel.

Fig. 1.15 Microcontr oleur PIC. Entre les deux, il existe des cartes de puissance interm ediaire 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
1 Microcontr oleur = sur la m eme puce microprocesseur+ p eriph eriques : horloges, entr ees sorties binaires et analogiques, liaisons num eriques, ...

1.3. MISE EN UVRE DES ASSERVISSEMENTS NUMERIQUES 16F877) ainsi que pratiquement tous les bus classiques (I2C, SPI, CAN et une interface Ethernet)

15

Fig. 1.16 Carte microcontr oleur SSV DIL/NetPC DNP/5280. Enn, il existe les DSP : Digital Signal Processing, d edi es au calcul rapide et ottant, plut ot utilis es dans des applications n ecessitant du traitement du signal cons equent. Et pour nir, sachez que les PID industriels soit disant analogiques cachent un microcontr oleur, cette technologie permettant de r ealiser des constantes de temps impossibles ` a r ealiser en analogique. Mais aussi, de g erer des alarmes, des saturations, des modes de d efaut, etc. Vous trouverez au 4.2.1 page 55 une m ethode rapide pour d eterminer les coecients de ces correcteurs.

Fig. 1.17 R egulateur analogique de type PID.

16 CAN

CHAPITRE 1. INTRODUCTION

An de faire traiter le signal par un microprocesseur, il faut le lui rendre accessible, cest le r ole du convertisseur analogique num erique. Plusieurs m ethodes de conversion existent2 .

Convertisseur ` a rampe num erique lent, pr ecis

Convertisseur ` a pes ees successives =

Convertisseur ash rapide, moins pr ecis

Fig. 1.18 Principes de conversion analogique num erique.

CNA Le convertisseur num erique analogique le plus connu est fond e sur le principe du r eseau R-2R comme illustr e sur la gure 1.19. Ce principe est tr` es consommateur de surface de silicium, aussi la grande majorit e des microcontr oleurs nen poss` edent pas. Une autre m ethode 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 d esir e. Ce principe pr esente l enorme avantage de ne demander quun bit de sortie du microcontr oleur par rapport ` a 16 bits pour un CNA classique !

Fig. 1.19 Convertisseur num erique Fig. 1.20 Signal modul e en modulation de largeur dimpulsion avant et analogique de type r eseau R-2R. apr` es ltrage haute fr equence.

2 dessins

tir es de : http ://hyperphysics.phy-astr.gsu.edu/hbase/electronic/adc.html

1.4. ECHANTILLONNAGE ET QUANTIFICATION

17

1.4

Echantillonnage et quantication

La gure 1.21 montre la di erence fondamentale entre le signal analogique et le signal echantillonn e et quanti e que le microcontr oleur per coit. Ce signal est en fait une suite de nombres cod es sur n bits (typiquement 8 ` a 16 bits)

Fig. 1.21 Echantillonnage et quantication dun signal. En observant le signal echantillonn e et quanti e (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 fr equence d echantillonnage 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 sinuso dal damplitude egale ` a la dynamique du convertisseur, le rapport signal ` a bruit SN R3 est de : SN R = 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 diminu e par la quantication. Il existe des convertisseurs de : 8, 10, 12, 16, 24, 40 bits. Il existe aussi des convertisseurs ayant une caract eristique logarithmique.

1.5
1.5.1

P eriode d echantillonnage
Le probl` eme de la p eriode d echantillonnage

La gure 1.23 montre un m eme signal echantillonn e` a plusieurs fr equences, lorsque la p eriode d echantillonnage Te est egale ` a la moiti e de la fr equence du signal, on voit quil devient impossible de reconstituer le signal original. En augmentant encore la p eriode d echantillonnage on tombe sur des aberrations comme illustr e en gure 1.24.
3 SN R

: Signal to Noise Ratio

18

CHAPITRE 1. INTRODUCTION

Fig. 1.22 Bruit de quantication dun signal.

Fig. 1.23 Signaux echantillonn es ` a di erentes fr equences.

Fig. 1.24 Signal ostensiblement sous- echantillonn e.

1.5. PERIODE DECHANTILLONNAGE

19

1.5.2

Le recouvrement de spectre avec les mains

Sans entrer dans les d etail du traitement du signal rappelons une constante des transform ees usuelles, Laplace, Fourier et bient ot z : le produit de fonctions temporelles est transform e en un produit de convolution dans lespace op erationnel. En particulier pour la transform ee de Fourier :
F ourier

x(t) y (t) x(t) y (t) La relation 1.1 est illustr ee en gure 1.25.

X (f ) Y (f ) X (f ) Y (f )

(1.1) (1.2)

F ourier

Fig. 1.25 Spectre dun signal echantillonn e ( echantillonnage parfait). En fonction des valeurs relatives de Fmax et Fe on obtient deux types de spectres di erents comme illustr e en gure 1.26.

Fig. 1.26 Ph enom` ene de recouvrement de spectre. Lorsque Fmax > Fe /2, il se produit le ph enom` ene de recouvrement de spectre, ` a ne pas confondre avec le repliement de spectre. Si ce ph enom` ene se produit, il est alors impossible de reconstituer le signal original, do` u le th eor` eme de Shannon : Le th eor` eme de Shannon Toute fonction du temps f (t) poss edant un spectre de fr equence limit ee ` a Fmax peut etre transform ee par echantillonnage p eriodique, de fr equence Fe sup erieure ou egale ` a 2Fmax , sans aucune perte dinformation. Ce th eor` eme nest quune limite infranchissable, dautre ph enom` enes vont intervenir bien avant dans le choix de la p eriode d echantillonnage.

20

CHAPITRE 1. INTRODUCTION

Notez que lid ee dun spectre limit e` a Fmax est illusoire, tous les signaux en automatique ont un spectre inni. On ne peut alors que minimiser ce ph enom` ene de recouvrement de spectre. Il sera parfois n ecessaire dajouter un ltre dit ltre anti-recouvrement ou ltre anti-repliement. Le calcul de ce ltre m eriterait un chapitre a ` lui seul. Disons pour faire extr emement simple, quil sagit le plus souvent dun ltre electronique passe-bas du premier ordre dont la fr equence de coupure est choisie entre Fmax et Fe .

1.5.3

Bruit sur la d eriv ee

Le th eor` eme de Shannon impose donc une p eriode d echantillonnage maximum, quen est-il de la p eriode d echantillonnage minimum ? La gure 1.27 montre que si la p eriode d echantillonnage tend vers 0, la d eriv ee calcul ee par le taux de variation entre deux p eriodes d echantillonnage tend vers la d eriv ee de la fonction. df (t) dt f (t) f (t Te ) Te

Fig. 1.27 Di erence entre d eriv ee analogique et d eriv ee num erique. Ceci nest malheureusement vrai que dans le cas dun signal sans bruit. Or les signaux sont toujours entach es de bruit et dans ce cas la proposition pr ec edente nest plus vraie. Dans le cas dun signal en rampe, la gure 1.28 montre que lerreur sur le calcul de la d eriv ee cro t lorsque Te d ecro t.

Fig. 1.28 Inuence de la p eriode d echantillonnage dans le cas de calculs de d eriv ees en pr esence de bruit. Ajoutez ` a cela le fait quune p eriode d echantillonnage tr` es petite implique un microcontr oleur tr` es rapide et donc co uteux.

1.5. PERIODE DECHANTILLONNAGE

21

1.5.4

Choix de la p eriode d echantillonnage

Les consid erations pr ec edentes montrent : une limite fondamentale : le th eor` eme de Shannon, que lid ee de sur echantillonner provoque enorm ement de bruit sur le calcul des d eriv ees et demande un microcontr oleur puissant donc cher. Entre les deux, il existe un vaste choix de fr equences d echantillonnage. Plusieurs auteurs proposent une formalisation de ce choix, le plus souvent quasi-empirique mais donnant de bons r esultats du point de vue du compromis pr ecision - vitesse de calcul n ecessaire. Sevely [3] Yves choisit Te , la p eriode d echantillonnage telle quelle soit 2 2 Te 180 90 Te 9 4, 5 B ulher [4] Hansruedi choisit Te , la p eriode d echantillonnage telle quelle soit 5 fois plus petite que la constante de temps la plus rapide que lon veut contr oler en boucle ferm ee Te 5

8 fois plus petite que la pseudo-p eriode, sil sagit de p oles complexes conjugu es

Te Crit` ere fr equentiel [9]

1 2 8 0 1 2

On choisit Fe , la fr equence d echantillonnage telle quelle soit 6 ` a 24 fois plus grande que la fr equence de coupure du syst` eme. Soit pour un syst` eme dordre 1 : Te Pour un syst` eme dordre 2 : soit :
k 2 p2 +20 p+0

0.25 < 0 T < 1 = 0.7 0.4 < 0 T < 1.75 = 1 Exemple Soit G(p) une fonction de transfert poss edant 4 p oles 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 esp erez acc el erer 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 p2 0 2 )(1

+ 3 p)(1 + 4 p)

Quelques valeurs num eriques pour xer les id ees : 3 = 1s, 0 = 1 rad.s1 et =0.43 (r eglage classique ` a 20% de d epassement), on ne cherche pas ` a contr oler 4 .

22

CHAPITRE 1. INTRODUCTION

Fig. 1.29 R eponse dun second ordre echantillonn e (mais pas quanti e !). Observez le retard introduit par l echantillonnage.

Fig. 1.30 Comparaison des p eriodes d echantillonnages pr econis ees par di erents auteurs.

1.5. PERIODE DECHANTILLONNAGE

23

Fig. 1.31 Lieu des p oles en z en fonction de la p eriode d echantillonnage. Te varie de 0.01s ` a 3s. B uhler Sevely + + + crit` ere fr equentiel

24

CHAPITRE 1. INTRODUCTION

Chapitre 2

Transform ee en z
2.1 D enition de la transform ee en z

On appelle transform ee en z dun signal f (t) la transform ee de Laplace F (p) du signal echantillonn e f (t), dans laquelle on eectue la substitution z = eTe p Notation : Z [F (p)] ou Z [f (t)] Rappel : transform ee de Laplace dun signal

(2.1)

L[f (t)] =
0

f (t)ept dt

le signal f (t) echantillonn e s ecrit f (t) avec : f (t) = f (t)Te (t) avec Te =
k=

(t kTe )

k Z peigne de Dirac

Ainsi la transform ee de Laplace du signal echantillonn e est :


L[f (t)] =
0

f (t)
k=

(t kTe ) ept dt f (t) (t kTe )ept dt

L[f (t)] =
k= 0

L[f (t)] =
k=

f (kTe )ekTe p

la fonction f etant nulle pour tout t < 0,

F (p) = L[f (t)] =


k=0

f (kTe )ekTe p

puis en posant z = e

Te p

F (z ) =
k=0

f (kTe )z k

(2.2)

Exemple : f (t) = U (t) echelon dHeaviside


F (z ) =
k=0

f (kTe )z k =
k=0

z k = 1 + z 1 + z 2 + . . . =

1 z = 1 z 1 z1

Rappel : Somme dune suite g eom etrique : premier terme qui y est moins premier terme qui ny est pas sur un moins la raison. 25

26

EN Z CHAPITRE 2. TRANSFORMEE

2.2

Propri et es de la transform ee en z

Comme la transform ee en z est la transform ee de Laplace suivie dun changement de variable, ses propri et es se d eduisent de celles de la transform ee de Laplace. Lin earit e Z [af (t) + bg (t)] = aF (z ) + bG(z ) o` u a et b sont des constantes Translations r eelles Retard de k p eriodes Z [f (t kTe )U (t kTe )] = z k F (z ) Notez lop erateur retard z 1 (2.4) (2.3)

Fig. 2.1 Illustration de la propri et e du retard.

Avance de k p eriodes Z [f (t + kTe )U (t)] Z [f (t + kTe )U (t)] = z k F (z ) z k F (0) z k1 F (Te ) z k2 F (2Te ) . . . zF ((k 1)Te )
k 1

= z k F (z )
k=0

f (kTe )z k

(2.5)

Les valeurs initiales sont enlev ees, sinon, le principe de causalit e nest plus respect e.

Fig. 2.2 Illustration de la propri et e de lavance.

Translation complexe Z [eaTe f (t)] = Z [F (p + a)] = F (zeaTe ) (2.6)

ES DE LA TRANSFORMEE EN Z 2.2. PROPRIET Changement d echelle en z z Z [ak f (kTe )] = F ( ) a

27

(2.7)

Th eor` eme de la valeur nale


t

lim f (t) = lim f (kTe ) = lim (1 z 1 )F (z )


k z 1

(2.8)

Th eor` eme de la valeur initiale


t0

lim f (t) = lim f (kTe ) = lim F (z )


k 0 z

(2.9)

Th eor` eme de la convolution discr` ete

Z
k=0

f (kTe )g ((n k )Te )] = F (z )G(z )

(2.10)

Cest le th eor` eme fondamental qui permet de transformer l equation de la sortie dun syst` eme, en temporel : en z : sortie = convolution de lentr ee avec la r eponse impulsionnelle du syst` eme, sortie = produit de lentr ee avec la transmittance du syst` eme.

Multiplication par tk Z [tf (t)] = Te z Tr` es utile pour d emontrer la forme des signaux canoniques Th eor` eme de sommation Z
k=0

d F (z ) dz

(2.11)

f (kTe ) =

z F (z ) z1

(2.12)

Pour aller plus loin :

D emontrez le th eor` eme de la convolution discr` ete

28

EN Z CHAPITRE 2. TRANSFORMEE

2.3
2.3.1

Calcul de la transform ee en z
Par la formule de d enition

F (z ) =
k=0

f (kTe )z k

(2.13)

Cette m ethode est souvent lourde ` a mettre en uvre. Exemples : f (t) = et

F (z ) =
k=0

ekTe z k = 1 + eTe z 1 + e2Te z 2 + . . . =

1 1 eTe z 1

z z eTe

f (t) = t

F (z )

=
k=0

kTe z k = Te
k=0

kz k = zTe
k=0

kz k1

= zTe
k=0

d d k z = zTe dz dz

z k
k=0

1 zTe z 2 d = = zTe dz 1 z 1 (1 z 1 )2 Te z = (z 1)2

2.3.2

Par la th eorie des r esidus

Cest la m ethode la plus ` a m eme de traiter tous les cas ! N eanmoins elle implique la connaissance de la th eorie des r esidus. Elle nest donc donn ee qu` a titre informatif. F (z ) =
i

R esidus

F ( ) 1 eTe z 1

=i

o` u les i sont les p oles de la fonction de transfert F (p) Rappel : Th eorie des r esidus. f (z )dz = 2j

Res

avec Res(a) = si le p ole a est un p ole simple dordre n 1 lim (n 1)! za

dn1 [(z a)n f (z )] dz n1

2.3.3

Par lutilisation des tables

Ce sera la m ethode utilis ee dans le cadre de ce cours. Le plus souvent on poss` ede la transform ee de Laplace du syst` eme. On proc` ede ` a une d ecomposition en el ements simples puis, ` a laide du tableau A.1 donn e en page 90, on obtient la transform ee en z . Notez que la connaissance des propri et es de la transform ee en z est souvent n ecessaire. Rappel sur la d ecomposition en el ements simples On consid` ere la fraction rationnelle r eelle : F = 4p3 + 1)(p + 1)3

(p2

La forme de sa d ecomposition en el ements simples se d eduit de la valeur et de la multiplicit e de ses p oles. Il existe des r eels a, b, c, d, e, f et un polyn ome r eel E tels que :

EN Z 2.3. CALCUL DE LA TRANSFORMEE 4p3 a c (dp + e) b =E+ + + + + 1)(p + 1)3 p + 1 (p + 1)2 (p + 1)3 (p2 + 1)

29

(p2

Il sagit d esormais de d eterminer la valeur de chaque coecient ind etermin e. Le degr e du num erateur de F est strictement inf erieur au degr e de son d enominateur, donc E = 0. On multiplie de part et dautre par (p + 1)3 et on fait p = 1 pour obtenir c = 2 . De m eme, on multiplie de part et dautre par (p2 + 1) et on fait p = pour obtenir d = 1 et e = 1. On etudie ensuite la limite de limp 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. V erication, calculer par exemple F (1) = 1/4 . Transformation en z

1 p+1 4 (p+1)2 2 (p+1) 3 p 1 (p2 +1)

z z e Te Te ze 4 (z eTe )2
Te

????
p (p2 +1)

1 (p2 +1)

z (z cos Te ) z 2 2z cos Te +1

z sin Te z 2 2z cos Te +1

mais

1 Te zeaTe at te (z eaTe )2 (p + a)2 L 1 2 at 1 t e = 2 (p + a)3 Z [tf (t)] = Te z d F (z ) dz

et

donc Z t teat = Te z

T 2 eaT z z + eaT Te zeaTe d = 3 dz (z eaTe )2 (z eaT ) Te zeTe z + 4 z eTe (z eTe )2


3

4p3 (p2 + 1)(p + 1)3

= + +

T 2 eaT z z + eaT (z eaT ) z (z cos Te ) z sin Te z 2 2z cos Te + 1 z 2 2z cos Te + 1

30

EN Z CHAPITRE 2. TRANSFORMEE

2.4

Transform ee inverse

Il sagit, le plus souvent de revenir ` a loriginal temporel, soit pour tracer la sortie dun syst` eme echantillonn e soit pour retrouver l equation r ecurrente, dun correcteur pour limplanter dans le calculateur.

2.4.1

Th eorie des r esidus

Celle-ci nest donn ee ` a titre informatif, elle ne sera jamais utilis ee dans le cadre de ce cours. Cest la m ethode la plus complexe ` a appliquer ` a la main, par contre elle est extr emement 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 (kTe ) =
i

R esidus z k1 F ( )

=i

o` u les i sont les p oles de la fonction de transfert F (z ) Exemple : F (z ) = Il y a deux r esidus en z = a et en z = 1. Resz=1 Resz=a donc F (kTe ) = z 2 k 1 1 z = z 1 z a 1a z 2 k 1 ak+1 = lim z = z a z 1 a1 = lim 1 ak+1 1 ak+1 + = 1a a1 1a z z zaz1

2.4.2

Par division polynomiale

On ne cherche alors que les premiers echantillons de la r eponse dun syst` eme ` a une entr ee sp eci ee. z Exemple : original de z 0.5 z z 0 + + 0.5 0.5 0.5 0 + + 0.25z 1 0.25z 1 z 0.5 1 + 0.5z 1 + 0.25z 2 + (2.14)

f (t) = (t) + 0.5 (t Te ) + 0.25 (t 2Te ) + donc f (0) = 1, f (T e) = 0.5, f (2Te ) = 0.25,

INVERSE 2.4. TRANSFORMEE

31

2.4.3

Par lutilisation des tables

z) M ethode : d ecomposer F ( en el ements simples z Puis ` a laide du tableau A.1 donn e en page 90 retrouver les originaux fi (t) z) D evelopper F ( en e l e ments simples, z rechercher les racines du d enominateur z1 , z2 , , zn , construire C1 C2 C3 Cn F (z ) = + + + + , z z z1 z z2 z z3 z zn

revenir ` a

F (z ) =
Puis en utilisant

C1 z C2 z C3 z Cn z + + + + . z z1 z z2 z z3 z zn Z 1 z = ak , za

on obtient :

k k k k f (kTe ) = C1 z1 + C2 z2 + C3 z3 + + Cn zn .

Remarque : les zi peuvent etre complexes, mais sont complexes conjugu es deux ` a deux.

En r esum e

Fig. 2.3 Ensemble des transformations.

32

EN Z CHAPITRE 2. TRANSFORMEE

2.5
2.5.1

Transmittances echantillonn ees


Notions de sch ema bloc

Rappels sur la r eduction des sch emas-blocs

Fig. 2.4 Op erations fondamentales de r eduction des graphes. Le sch ema de droite est equivalent ` a celui de gauche.

Pour aller plus loin :

Donner la fonction de transfert du syst` eme d ecrit ` a la gure 2.5.

ABDE +AGE Fig. 2.5 Exercice : montrez que ce sch ema se r eduit ` a un bloc de transmittance : (1+ ABC )(1+DEF ) .

2.5. TRANSMITTANCES ECHANTILLONN EES

33

2.5.2

Transform ee en z dun sch ema bloc

La gure 2.6 d ecrit une partie de sch ema bloc en p, il sagit alors de transformer ce sch ema en un sch ema bloc en z . La tentation est grande de transformer terme ` a terme, mais cest faux !

Fig. 2.6 Il est impossible de transformer un graphe en p en un graphe en z par transformation des di erents blocs !

G1 (p) G1 (z ) G2 (p) G2 (z ) G(p) = G1 (p)G2 (p) G(z ) = G1 (z )G2 (z )

Pour que cela soit vrai il faut que le signal entre G1 et G2 soit un signal echantillonn e. Les deux exemples suivants illustreront ce probl` eme.

2.5.3

Transform ee dun syst` eme pr ec ed e par un bloqueur dordre 0

Le bloqueur dordre 0 (en anglais Zero Order Hold) est lobjet physique qui permet de passer dun signal num erique echantillonn e, qui ne contient que de linformation et seulement aux instants d echantillonnage, ` a un signal analogique continu par morceaux.

Fig. 2.7 Signaux dentr ee et de sortie dun bloqueur dordre 0. On cherche la transform ee en z du sch ema bloc donn e en gure 2.8.

Fig. 2.8 Transmittance continue pr ec ed ee dun bloqueur dordre 0. En premier lieu, il nous faut la transmittance en p du bloqueur dordre 0, ensuite nous verrons comment d eterminer la transform ee en z de lensemble.

34 Fonction de transfert dun bloqueur dordre 0

EN Z CHAPITRE 2. TRANSFORMEE

Rappel : La transform ee de Laplace dun syst` eme est la transform ee de Laplace de sa r eponse impulsionnelle. Si lon soumet un bloqueur dordre 0 ` a une impulsion, on obtient la sortie illustr ee en gure 2.9.

Fig. 2.9 R eponse impulsionnelle dun bloqueur dordre 0.

B0 (t) = U (t) U (t Te ) B0 (p) = U (p) U (p)eTe p B0 (p) = 1 eTe p p

Calcul de la transform ee dun syst` eme pr ec ed e par un bloqueur dordre 0 G(z ) = Z L1 [B0 (p)G(p)] Par souci de simplication d ecriture nous ecrirons : G(z ) = Z [B0 (p)G(p)] donc 1 eTe p G(p) p G(p) eTe p G(p) p p

G(z )

= Z = Z

En appliquant la lin earit e de la transformation puis le th eor` eme du retard, on obtient : G(z ) G(p) eTe p Z G(p) p p G(p) = (1 z 1 )Z p = Z

do` u G(z ) = z1 G(p) Z z p

Une table des transform ees usuelles de syst` emes pr ec ed es dun bloqueur dordre 0 est donn ee dans le tableau A.2 en page 91.

Pour aller plus loin :

V erier quelques lignes du tableau A.2

2.5. TRANSMITTANCES ECHANTILLONN EES

35

Fig. 2.10 Syst` eme boucl e echantillonn e.

2.5.4

Transmittances echantillonn ees de syst` emes boucl es

Le probl` eme pos e en gure 2.10 est quil ny a pas d echantillonneur bloqueur entre la sortie s et la transmittance H (p). Qu` a cela ne tienne, la transmittance en boucle ferm ee dun syst` eme s ecrit : BF = Ici BF (z ) = C (z )Z [B0 (p)G(p)] 1 + C (z )Z [B0 (p)G(p)H (p)] cha ne directe 1 + cha ne directe cha ne de retour

2.5.5

Avec Matlab

Matlab ne sait transformer quen utilisant une m ethode, ici : faire pr ec eder le syst` eme dun bloqueur dordre 0. >> >> >> >> >> >> Te=1; sys=tf([1],[1 1 0] ) sysd=c2d(sys,Te, zoh); present(sysd); sysc=d2c(sysd,zoh); present(sysdp); % % % % % % d efinition de la p eriode d echantillonnage d efinition du syst` eme continu transform ee en z avec BOZ pr esentation du r esultat transform ee inverse avec BOZ pr esentation du r esultat

>> 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);

36 Transfer function: -9.84e-016 s + 1 -------------------s^2 + s + 1.776e-015

EN Z CHAPITRE 2. TRANSFORMEE

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 p oles en p et les p oles en z an de comprendre comment le syst` eme r eagit ` a une entr ee de consigne et dans quelle mesure il est possible de transformer cette r eaction. Deux points sont fondamentaux, la stabilit e du syst` eme et sa pr ecision. En eet on cherche toujours ` a am eliorer ces deux points lorsque lon asservit un syst` eme. Notez que ces analyses sont totalement ind ependantes du fait que lon parle dun syst` eme en boucle ouverte ou en boucle ferm ee. Hormis lanalyse de la stabilit e par le crit` ere de Nyquist (non abord e dans ce cours) qui pr edit la stabilit e dun syst` eme boucl e par un retour unitaire, lensemble des autres points sappliquent sur une fonction de transfert, celle-ci repr esentant soit un syst` eme en boucle ouverte soit en boucle ferm ee.

3.1

Stabilit e

D enition 1 Un syst` eme est dit stable si, ecart e de sa position de repos, celui-ci revient a ` cette position lorsque la cause qui len a ecart e cesse. D enition 2 Un syst` eme est dit stable si sa r eponse ` a toute entr ee born ee est born ee.

Note : en appliquant ces d enitions lint egrateur pur nest pas stable !

Fig. 3.1 Stabilit e des syst` emes au sens de Lyapounov [12] : illustration de la stabilit e dune bille sur un prol.

37

38

` CHAPITRE 3. ANALYSE DES SYSTEMES

3.1.1

Conditions de stabilit e

Nous avons vu au 2.4.3 quun signal F (z ) de la forme : F (z ) = C1 z C2 z C3 z Cn z + + + + z z1 z z2 z z3 z zn

avait pour original f (kTe ) de la forme :


k k k k f (kTe ) = C1 z1 + C2 z2 + C3 z3 + + Cn zn

les Ci et les zi etant complexes. Pour que le syst` eme soit stable, il faut alors que :
k

lim f (kTe ) = 0

donc que : |zi | < 1 En dautres termes, pour quun syst` eme soit stable, il faut et il sut que les p oles de la fonction de transfert soient de module inf erieur ` a 1. Par abus de langage, nous inclurons dans lensemble des syst` emes stables ceux ayant un ou plusieurs p oles en 1. 1 Pour conna tre la stabilit e dun syst` eme il sut alors de calculer le module des p oles du syst` eme. Ce calcul est le plus souvent fastidieux voire impossible. Cest pourquoi, il existe des crit` eres de stabilit e ne faisant pas directement le calcul des p oles mais qui permettent de savoir sils sont, ou pas, de module inf erieur ` a 1.

Fig. 3.2 Zones o` u les p oles sont stables en p et en z .

3.1.2

Crit` ere de Jury


N (z ) D (z )

Soit H (z ) =

la fonction de transfert dun syst` eme echantillonn e.


0 0 2 0 n D(z ) = a0 0 + a1 z + a2 z + . . . + an z

On construit la matrice de dimensions (n 1) (n + 1) suivante : a0 0 a1 0 a2 0 . . .


2 an 0

a0 1 a1 1 a2 1 . . .
2 an 1

a0 2 a1 2 a2 2 . . .
2 an 2

a0 n1 a1 n1 0

a0 n

0 0 . . . 0

dont les el ements sont d enis comme suit :


1 Ceux-ci

sont marginalement stables.

3.1. STABILITE 0 aj 0 aj nj aj nj k aj k

39

+1 aj = k

pour 0 k n j 1 pour k > n j 1

Le polyn ome D(z ) na aucun z ero de module sup erieur ` a 1 si les n + 1 conditions suivantes sont respect ees : 1. 2. 3.
n 0 i=0 ai = D (1) > 0 n (1)n i=0 (1)i a0 i = 0 0 a0 an < 0

(1)n D(1) > 0

j 4. aj 0 anj > 0 pour j = 1, , n 2

Exemple :
0 0 2 0 3 D(z ) = a0 0 + a1 z + a2 z + a3 z

1. 2. 3.
n 0 i=0 ai = D (1) > 0 n (1)n i=0 (1)i a0 i = 0 a0 0 a3 < 0

a0 0 a1 0

a0 1 a1 1

a0 2 a1 2

a0 3 0

(1)n D(1) > 0

1 4. a1 0 a2 > 0

D eterminer les conditions de stabilit e du syst` eme : H (z ) = 2z + 1 z 3 + 2z 2 + 4z + 7

3.1.3

Crit` ere de Routh-Hurwitz appliqu e sur la transform ee en w

Transform ee en w La transform ee en w est une transformation homographique qui fait correspondre exactement lint erieur du cercle unit e au demi plan gauche du plan complexe. w= z1 z+1 z= 1+w 1w

En appliquant la transform ee en w au syst` eme, les racines en z de module inf erieur ` a 1 sont transform ees en des racines ` a partie r eelle n egative, il sut alors dappliquer le crit` ere de Routh-Hurwitz sur la transform ee en w pour conna tre le signe des racines du polyn ome consid er e et donc la stabilit e du syst` eme.

40

` CHAPITRE 3. ANALYSE DES SYSTEMES

Fig. 3.3 Illustration de la transform ee homographique w. D eterminer les condition de stabilit e du syst` eme par lapplication du crit` ere de Routh sur la transform ee en w : 2z + 1 H (z ) = 3 z + 2z 2 + 4z + 7

3.1.4

Avec Matlab

Ou tout autre logiciel de calcul num erique (Scilab, Octave...2 ) >> P=[1 2 4 7]; >> abs(roots(P)) % d efinition du polyn^ ome % calcul du module (abs) des racine (roots) de P

Il sut de regarder si les modules de toutes les racines sont inf erieurs ` a 1.

2 Logiciels

gratuits !

3.2. CORRESPONDANCE DES PLANS Z ET P

41

3.2

Correspondance des plans z et p

Lobjectif est de d eterminer le type de comportement du syst` eme ` a la vue des p oles du syst` eme trac es dans le plan complexe. Etudions le lien entre un p ole simple en p et son transform e par la transformation en z P oles simples z 1 p+a z eaTe Le p ole en a est transform e en un p ole en eaTe Laxe des r eels en p est transform e en laxe des r eels positifs en z . laxe des r eels n egatifs en z na pas de correspondant en p.

Fig. 3.4 Transformation des p oles simples de p vers z .

P oles complexes conjugu es G(p) =


2 n 2 p2 +2n p+n

B0 G(z )

b1 z +b0 z 2 2(ek Te ) cos(d Te )z +e2k Te

p1 , p1 o` u d

= =

n d n 1 2

z1 , z1

= ek Te cos(d Te ) = ek Te ed Te

e2k Te cos2 (d Te ) e2k Te

= ek Te (cos(d Te ) sin(d Te )) (3.1)

Fig. 3.5 Transformation des p oles complexes conjugu es de p vers z .

G en eralisation

Dans les deux cas nous avons bien la relation : P ole du syst` eme continu pi P ole du syst` eme echantillonn e zi = eTe pi (3.2)

La gure 3.6 montre cette relation.

42

` CHAPITRE 3. ANALYSE DES SYSTEMES

Fig. 3.6 Lieu des p oles iso-amortissement.

3.2.1

R eponse impulsionnelle en fonction de la position des p oles.

Fig. 3.7 R eponses impulsionnelles des p oles en fonction de leur position.

Fig. 3.8 Relation entre p oles du syst` eme continu et ceux du syst` eme echantillonn e.

3.3. LE LIEU DEVANS

43

3.3
3.3.1

Le lieu dEvans
D enition

Fig. 3.9 Le lieu dEvans : calcul des p oles du syst` eme en boucle ferm ee par un gain k . Le lieu dEvans est le lieu des p oles de la fonction de transfert en boucle ferm ee lorsque le gain K varie de 0 ` a linni. Ce lieu est donc un moyen de choisir un gain K pour obtenir, en boucle ferm ee, des performances pr e-sp eci ees. 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 m ethode est parfaitement possible mais demande un peu dexp erience pour le choix des p oles et des z eros du correcteur. N eanmoins avec une m ethode de type try and error on arrive ` a de bons r esultats. Exemple de code Matlab
>> sysd=zpk([],[0.1 0.9], 1, 1) %p eriode d echantillonnage = 1s >> rlocus(sysd); >> zgrid

3.3.2

Exemples
Tab. 3.1 Exemple 1

G(z ) =

1 (z 0.1)(z 0.9)

lorsque k est tr` es faible les p oles en BF sont proches de ceux en BO lorsque k augmente, le syst` eme acc el` ere, les p oles se rapprochent et deviennent complexes conjugu es lorsque k d epasse la valeur de 0.9, les p oles ont un module > 1, le syst` eme est instable

44

` CHAPITRE 3. ANALYSE DES SYSTEMES Tab. 3.2 Exemple 2

G(z ) =

z 0.5 (z 0.1)(z 0.9)

lorsque k est tr` es faible les p oles en BF sont proches de ceux en BO lorsque k augmente, le p ole en 0.9 tend vers le z ero en 0.5, lautre p ole tend vers la limite de stabilit e est obtenue pour k = 1.39

Tab. 3.3 Exemple 3

G(z ) =

z +0.5 (z 0.1)(z 0.9)

lorsque k est tr` es faible les p oles en BF sont proches de ceux en BO lorsque k augmente, les p oles se rapprochent lun de lautre, puis deviennent complexes conjugu es lorsque k est tr` es grand lun des p oles tend vers le z ero, lautre vers

3.3. LE LIEU DEVANS Tab. 3.4 Exemple 4

45

G(z ) =

(z +0.7)(z +0.2) (z 0.1)(z 0.9)

lorsque k est tr` es faible les p oles en BF sont proches de ceux en BO lorsque k augmente, les p oles se rapprochent lun de lautre, puis deviennent complexes conjugu es lorsque k est tr` es grand les p oles en BF tendent vers les z eros en BO.

Tab. 3.5 Exemple 5

G(z ) =

(z +0.7)(z +0.2) (z 0.1)(z 0.5)(z 0.9)

On retrouve les m emes tendances que pour les exemples pr ec edents les p oles se rapprochent lun de lautre avant de devenir complexes conjugu es lorsque k est tr` es grand les p oles en BF tendent vers les z eros en BO ou vers linni.

46

` CHAPITRE 3. ANALYSE DES SYSTEMES

3.4

Pr ecision des syst` emes echantillonn es

Fig. 3.10 Sch ema g en eral pour l etude de la pr ecision des syst` emes. On consid` ere le sch ema pr esent e en gure 3.10. Calculons lerreur statique du syst` eme pour une entr ee w(z ) en echelon et une perturbation p(z ) nulle.

3.4.1

Erreur vis-` a-vis de la consigne

Lerreur est :

(z ) (z ) [1 + C (z )G(z )]

= W (z ) S (z ) = W (z ) (z )C (z )G(z ) = W (z )

W (z ) (z ) = 1 + C (z )G(z ) Calculons maintenant la limite de (kTe ) lorsque k lim (t) = lim (kTe ) = lim (1 z 1 )(z ) = lim (1 z 1 )
k z 1 z 1

W (z ) 1 + C (z )G(z )

Avec une entr ee en echelon unit e W (z ) = on obtient : lim (kTe ) = lim (1 z 1 )

z z1

z 1 1 = lim z 1 k z 1 1 + C (z )G(z ) z1 1 + C (z )G(z ) lobjectif etant davoir une erreur statique nulle, il faut que
k

lim (kTe ) = 0

et par cons equent que : 1 =0 z 1 1 + C (z )G(z ) Supposons maintenant que C (z ) ou G(z ) poss` ede un int egrateur pur. La transmittance en boucle ouverte peut s ecrire : lim C (z )G(z ) = donc lim 1 = lim 1 + C (z )G(z ) z1 1 + 1
N (z ) (z 1)D (z )

N (z ) N (z ) = D (z ) (z 1)D (z ) (z 1)D (z ) =0 (z 1)D (z ) + N (z )

z 1

= lim

z 1

Conclusion : pour quun syst` eme pr esente une erreur statique nulle pour une entr ee en echelon, il faut que la transmittance en boucle ouverte pr esente au moins un int egrateur pur.

` 3.4. PRECISION DES SYSTEMES ECHANTILLONN ES

47

3.4.2

Erreur vis-` a-vis de la perturbation

Supposons cette fois que lentr ee W (z ) est nulle et que la perturbation P (z ) est un echelon unit e. Lerreur est :

(z ) (z )(1 + C (z )G(z ))

= W (z ) S (z ) = 0 (P (z )G(z ) + (z )C (z )G(z )) = P (z )G(z ) z G(z ) G(z ) = lim z 1 1 + C (z )G(z ) z1 1 + C (z )G(z )

lim (kTe ) = lim (1 z 1 )


z 1

Supposons que le syst` eme en boucle ouverte poss` ede un seul int egrateur pur et etudions les deux cas suivants Cas 1 : lint egrateur pur est dans C (z ). Cas 2 : lint egrateur pur est dans G(z ). Dans les deux cas : lim (kTe ) = lim
NG (z ) D G (z )

z 1

1+

NC (z ) NG (z ) DC (z ) DG (z )

= lim

z 1

NG (z )DC (z ) DC (z )DG (z ) + NC (z )NG (z )

Cas 1 : l int egrateur pur est dans C (z ). C (z ) = NC (z ) (z 1)DC (z )

Cas 2 : lint egrateur pur est dans G(z ). G(z ) = NG (z ) (z 1)DG (z )

lim (kTe ) = lim

lim (kTe ) =

z 1

lim

NG (z )(z 1)DC (z ) (z 1)DC (z )DG (z ) + NC (z )NG (z )


k

z 1

NG (z )DC (z ) DC (z )(z 1)DG (z ) + NC (z )NG (z ) NG (z )DC (z ) =0 z 1 NC (z )NG (z )

lim (kTe ) = 0

lim (kTe ) = lim

Conclusion : pour quun syst` eme pr esente une erreur statique nulle pour une perturbation en echelon, il faut au moins un int egrateur pur en amont de la perturbation.

3.4.3

Extension du raisonnement ` a tous types dentr ees

Calcul de lerreur vis-` a-vis de la consigne, le syst` eme etant soumis ` a une entr ee canonique quelconque de la forme w(t) = tm donc : W (z ) = A(z ) (z 1)m+1

o` u A(z ) est un polyn ome en z nayant pas (z 1) en facteur. La transmittance en boucle ouverte peut s ecrire : CG(z ) = kN (z ) (z 1)n D(z )

avec k le gain statique du syst` eme et N (z ) et D(z) moniques3 .


3 Dont

le coecient de plus haut degr e est 1.

48 Lexpression de lerreur est alors : lim (kTe ) = lim (1 z 1 )


z 1

` CHAPITRE 3. ANALYSE DES SYSTEMES

1 A( z ) A(z ) = lim (1 z 1 ) m +1 (z 1) 1 + CG(z ) z1 (z 1)m+1 1 +

1
kN (z ) (z 1)n D (z )

soit :
k

lim (kTe ) = lim

(z 1)n D(z ) A(z )D(z ) A(z ) 1 (z 1)n z1 lim m +1 n z 1 z (z 1) (z 1) D(z ) + kN (z ) z1 z (z 1)m (z 1)n D(z ) + kN (z )

Les valeurs de limk (kTe ) sont r esum ees dans le tableau 3.6. Tab. 3.6 Erreur permanente en fonction de lentr ee et de la classe du syst` eme en labsence dentr ee de perturbation.5

classe du syst` eme = nb dint egrateurs purs 0 1 2 3 . . .

echelon

rampe

parabole

m=0
1 1+k

m=1
Te k

m=2
Te k

.. . .. . .. .

0 0 0 . . .

0 0 . . .

0 . . .

Pour aller plus loin :

Quelle est lerreur permanente du syst` eme 3.11 dans les conditions d ecrites ?

Fig. 3.11 Syst` eme soumis ` a une entr ee en rampe et une perturbation en echelon.

5 Cest

le polyn ome A(z ) qui fait appara tre le terme Te .

` 3.4. PRECISION DES SYSTEMES ECHANTILLONN ES

49

3.4.4

Cycle limite

Les r esultats obtenus pr ec edemment ne tiennent pas compte de la quantication du signal. Cette quantication provoque une non lin earit e d estabilisante et par cons equent, un petite oscillation autour de la valeur nale comme illustr e en gure 3.12. La pr ecision est alors fonction du pas de quantication.

Fig. 3.12 Cycle limite d u` a la quantication du signal. Dans le cas de syst` emes instables en boucle ouverte, le cycle limite, v eritable oscillation entretenue est in evitable. Par contre lamplitude de cette oscillation est contr olable par le choix du pas de quantication.

50

` CHAPITRE 3. ANALYSE DES SYSTEMES

Chapitre 4

Transposition des correcteurs analogiques


Il est, a priori, dommage de synth etiser un correcteur analogique puis de le convertir en correcteur num erique. Les m ethodes de synth` eses num eriques abondent et donnent de meilleurs r esultats en termes de performances (robustesse, pr ecision, rejet de perturbation). N eanmoins dans le cas o` u le correcteur analogique est d ej` a synth etis e et quil ne sagit que de le transposer en num erique, la transform ee bilin eaire donn ee ci-apr` es se r ev` ele fort utile 1 . Par ailleurs, cette m ethode de synth` ese de correcteurs num eriques coupl ee ` a une m ethode de synth` ese type Ziegler-Nichols permet de synth etiser 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 di erentes approximations de la d eriv ee

Fig. 4.1 Principe de calcul de la d eriv ee par di erences nies : di erences vers lavant et vers larri` ere. En introduisant lop erateur retard q .

4.1.1

Di erences vers larri` ere


dx dt x(t) x(t Te ) 1 q 1 q1 = x(t) = x(t) Te Te qTe z1 zTe 1 1 Te p Int egration : 1 Te z p z1

D erivation : p Cela correspond ` a lapproximation :

z = e Te p

= p

z1 zTe

1 La synth` ese de correcteur analogiques sort du cadre de ce cours, reportez vous au poly dautomatique lin eaire continue de B. Lang

51

52

CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES

Fig. 4.2 Transform ee du domaine de stabilit e en p. Un syst` eme continu instable peut etre transform e en un syst` eme discret stable. Calcul num erique de lint egrale :
t n

Fig. 4.3 M ethode des rectangles : approximation par exc` es.

I=
0

x( )d
k=1

x(kTe )Te

in = in1 + Te xn

4.1.2

Di erences vers lavant


dx dt D erivation : p x(t + Te ) x(t) q1 = x(t) Te Te z1 Te Int egration : Te 1 p z1

Cela correspond ` a lapproximation : z = eTe p 1 + Te p = p z1 Te

Fig. 4.4 Transform ee du domaine de stabilit e en p. Un syst` eme continu stable peut etre transform e en un syst` eme discret instable. Calcul num erique de lint egrale :
t n1

Fig. 4.5 M ethode des rectangles : approximation par d efaut.

I=
0

x( )d
k=0

x(kTe )Te

in = in1 + Te xn1

4.1. LES DIFFERENTES APPROXIMATIONS DE LA DERIV EE

53

4.1.3

Transformation bilin eaire


1 d x(t + T e) d x(t) + 2 dt dt x(t + Te ) x(t) Te dx dt D erivation : p 2 z1 Te z + 1 dx(t) dt q+1 2 q1 x(t) Te

La d eriv ee num erique est proche de la moyenne des d eriv ees au point consid er e et au point pr ec edent.

2 q1 x(t) Te q + 1 Int egration : 1 Te z + 1 p 2 z1

Cela correspond ` a lapproximation : z = e Te p e e


Te p 2

1+ 1

p Te 2

Te p 2 Te p 2

2 + Te p 2 Te p

Fig. 4.6 Transform ee du domaine de stabilit e en p. Les deux r egions se correspondent rigoureusement. Calcul num erique de lint egrale :
t n

Fig. 4.7 M ethode des trap` ezes.

I=
0

x( )d
k=1

x((k 1)Te ) + x(kTe ) Te 2

in = in1 +

Te (xn1 + xn ) 2

Remarque : La transformation bilin eaire introduit une distorsion des fr equences. Cette distorsion peut etre compens ee ` a une pulsation donn ee 1 par lutilisation de D erivation : p 1 z1 tan(1 Te /2) z + 1

4.1.4

Avec Matlab

Seule la transform ee bilin eaire est directement implant ee, les di erences avant et arri` ere ne le sont pas ! >> >> >> >> >> >> >> >> >> >> Te=1; sys=tf([1],[1 1 1] ) % d efinition du syst` eme continu sysd=c2d(sys,Te, tustin); % transform ee en z par transform ee bilin eaire present(sysd); % pr esentation du r esultat sysdp=c2d(sys,Te, prewarp, 2); % transform ee bilin eaire avec pr ecompens ee (f1=2rad/s) present(sysdp); % pr esentation du r esultat sysdb=c2d(sys,Te, zoh); % transform ee avec BOZ present(sysdb); % pr esentation du r esultat W=logspace(-1, 0.5, 200); bode(sys,r,sysd,y--,sysdp,gx,sysdb,k., W);

54

CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES

Fig. 4.8 Ph enom` ene de distorsion de la transformation bilin eaire.

Fig. 4.9 Comparaison des transform ees en z dun point de vue fr equentiel. Syst` eme original analogique .......... Transform ee avec BOZ Transform ee bilin eaire + + + Transform ee bilin eaire avec pr ecompensation (en f = 2 rad/s.)

4.2. PID ANALOGIQUE

55

4.2

PID analogique

Tous les correcteurs analogiques sont transformables en correcteurs num eriques, le plus connu dentre eux etant le PID. De nombreuses m ethodes 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 calcul es ` a partir dessais eectu es sur le syst` eme.

4.2.1

R eglages de Ziegler-Nichols
C (p) = K 1 + 1 + Td p Ti p

Le correcteur PID s ecrit :

Tab. 4.1 Coecients dun PID r egl e par les m ethodes de Ziegler-Nichols et Chien-Hrones-Reswick : essai indiciel et m ethode du pompage.

M ethode de pompage Boucle ferm ee Syst` emes stables ou instables en boucle ouverte

M ethodes ap eriodiques Boucle ouverte Syst` emes stables, instables ou int egrateurs

Ziegler-Nichols R egulation ou Poursuite P P.I K = 0.5Kosc K = 0.45Kosc Ti = 0.83Tosc P.I.D K = 0.6Kosc Ti = 0.5Tosc Td = 0.125Tosc

Ziegler-Nichols R egulation ou Poursuite K=


1 a

Chien-Hrones-Reswick

R egulation 1 K = 0.3 a
1 K = 0.6 a

Poursuite 1 K = 0.3 a
1 K = 0.35 a

1 K = 0.9 a

Ti = 3.3
1 K = 1.2 a

Ti = 4
1 K = 0.95 a

Ti = 1.2T ou 10
1 K = 0.6 a

Ti = 2 Td = 0.5

Ti = 2.4 Td = 0.42

Ti = T ou 6 Td = 0.5

1 Si

le syst` eme ` a un comportement de type int egrateur pur.

56

CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES

Il faut ensuite transformer le correcteur analogique C (p) en un correcteur num erique par lune des m ethodes de transformation vues pr ec edemment (4.1 ou 2.5.3). La transform ee bilin eaire est la plus utilis ee et donne de bons r esultats ` a condition de choisir une p eriode d echantillonnage proche du quasi-continu, cest-` a-dire les limites basses des valeurs commun ement admises (voir g. 1.30). Le tableau 4.1 nest quun bref aper cu de lensemble des r eglages d evelopp es par divers auteurs et qui sadaptent a une majorit ` e de syst` emes. Pour des syst` emes plus particuliers ou des r eglages plus ns tenant compte des caract eristiques de votre syst` eme, voyez les r ef erences [13] ou [14] qui proposent plus de 200 r eglages !

4.2.2

P, PI, ou PID ?

Le choix est toujours un peu ambigu e. Le principe de choix commun ement admis, qui sapplique dailleurs ` a tous les choix de r egulateur et correcteurs, est le principe du minimum : si un correcteur P donne les r esultats escompt es, 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 r eponse temporelle du syst` eme ` a un echelon dentr ee. Notez la proposition de correcteur de type tout ou rien, qui fonctionne bien dans les cas ou la pr ecision requise est faible ou que le syst` eme supporte bien les fortes variations de commande. Si le syst` eme est en limite de r eglabilit e par un PID, il faudra alors revoir la conception de la commande soit par des boucles imbriqu ees, soit synth etiser un correcteur num erique fond e sur dautres approches. Dernier point, mais non le moindre, sachez que les r eglages de PID propos es, Ziegler-Nichols (voir page 55) ou Takahashi (voir page 58) sont avant tout des r eglages de r egulation et non pas dasservissement. En dautres termes, ces r eglages sont choisis lorsque lobjectif principal est dasservir une grandeur ` a une consigne constante et d etre insensible aux perturbations. Tab. 4.2 choix dune m ethode de correction en fonction de lindice de r eglabilit e R eglabilit e T / R egulateur > 20 Tout ou rien 10 ` a 20 P 5` a 10 PI 2` a5 PID <2 limite du PID1

Tab. 4.3 choix dune m ethode de correction en fonction de lindice de r eglabilit e : cas des syst` emes instables R eglabilit e a. R egulateur 0.05 < a Tout ou rien 0.05 < a < 0.1 P 0.1 < a < 0.2 PI 0.2 < a < 0.5 PID a > 0.5 limite du PID1

1 voir

4.4.2 page 60

4.3. LE PID NUMERIQUE

57

4.3

Le PID num erique


1 u(t) = kp (t) + Ti
0 t

En continu, la sortie dun PID s ecrit : d ( )d + Td dt

L equivalent en num erique s ecrit alors : Te uk = kp k + Ti (k k1 ) j + Td Te j =0


k

uk+1 uk = kp k+1 k +

Te (k+1 2k + k1 ) k+1 + Td Ti Te Te (z 2 + z 1 ) z + Td Ti Te

(z 1)U (z ) = kp z 1 + do` u la transmittance du PID num erique

(z )

z kd z 1 U (z ) (z ) = kp + ki Te z 1 + Te z Ce correcteur reste p edagogique, dans une application industrielle on pr ef erera les formes suivantes : Application industrielles des correcteurs PID 1. Laction d eriv ee id eale provoque une forte augmentation du bruit hautes fr equences, on utilise en pratique une d eriv ee ltr ee. Ceci conduit en discret au r egulateur PID ltr e: U (z ) z kd z 1 (z ) = kp + ki Te z 1 + Te z Le choix de est classiquement de 0.1 2. Lors dun changement de consigne de type echelon, la d eriv ee du signal derreur entre la consigne et la sortie est tr` es grande (pratiquement une d eriv ee d echelon soit un Dirac). La commande PID sur l ecart va engendrer une commande proportionnelle ` a la variation de lerreur via le module d erivateur. Lamplitude de cette commande risque d etre inadmissible en pratique. Une solution pour limiter ce ph enom` ene est dappliquer laction d eriv ee seulement sur la sortie du proc ed e do` u le PID avec la d eriv ee sur la mesure seule : U (z ) = kp (z ) + ki Te z kd z 1 (z ) T Y (z ) z1 e z

3. M eme remarque que pr ec edemment mais cette fois sur la partie proportionnelle do` u le PID avec laction proportionnelle et d eriv ee sur la mesure seule : U (z ) = ki Te z kd z 1 (z ) kp + T Y (z ) z1 e z

Cette derni` ere solution est bien entendu la meilleure.

58

CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES

4.3.1

R eglages de Takahashi pour un r egulateur PID num erique ltr e

La forme du PID utilis e est : U (z ) U (z ) = =


z ki Te z 1 (z ) kp + kd z 1 Te z

Y (z )

PI ou PID P

kp (z )

dont les equations r ecurrentes sont : uk uk


c = uk1 + ki Te (yk yk ) kp (yk1 yk ) kd Te

(yk 2yk1 + yk2 )

PI ou PID P

c kp (yk yk )

Comme pour la m ethode 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 ferm ee avec un gain K : on augmente K jusqu` a Kosc valeur du gain pour laquelle on obtient une oscillation entretenue de p eriode Tosc . Tab. 4.4 R eglages de Takahashi pour un r egulateur PID num erique ltr e. M ethode de pompage Boucle ferm ee Syst` emes stables ou instables en boucle ouverte M ethodes ap eriodiques Boucle ouverte Syst` emes stables, instables ou int egrateurs

P P.I kp ki

kp = 0.5Kosc = = = = = 0.45Kosc 0.5ki Te


osc 0.54 K Tosc

kp = kp ki kp ki kd = = = = =

1 a( +Te ) 0.9 a( +0.5Te ) 0.27 a( +0.5Te )2 1.2 a( +Te )

0.5ki Te

kp P.I.D ki kd

0.6Kosc 0.5ki Te
osc 1.2 K Tosc

0.5ki Te

0.6 a( +0.5Te )2 0.5 a

3 40 Kosc Tosc

Ces r eglages sont en fait les coecients qui minimisent lerreur

k0

|k |

4.4. MISE EN UVRE DUN ASSERVISSEMENT

59

4.4
4.4.1

Mise en uvre dun asservissement


Anti windup

Apr` es application du correcteur pr ec edent, la premi` ere imperfection qui appara t est due aux non lin earit es du syst` eme et en particulier les saturations de lorgane de commande (amplicateur, vanne, ...). En particulier lorsque lerreur est importante (d emarrage par exemple), lint egrateur int` egre une erreur grande et donc sa sortie est tr` es grande. Lorsque le syst` eme arrive ` a la valeur de consigne, lint egrateur est encore plein et donc le syst` eme d epasse largement cette valeur de consigne.

Fig. 4.10 Eet de labsence de saturation sur le terme int egral. Pour eviter ce ph enom` ene deux m ethodes sont de loin les plus utilis ees, souvent simultan ement : la mise en place dun g en erateur de trajectoire (ex : bras de robot), an que le syst` eme ne quitte pas son domaine de lin earit e.

la mise en place dun anti-windup qui limite la valeur stock ee dans lint egrateur pur au maximum de commande admissible par le syst` eme.

Fig. 4.11 PID classique avec anti-windup.

60

CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES

4.4.2

Pr edicteur de Smith

Dans le cas de syst` emes tr` es retard es, ce qui arrive souvent dans les applications industrielles, les m ethodes pr ec edentes ne fonctionnent pas bien. En fait un r eglage classique de PID conduit ` a un syst` eme plus lent en boucle ferm ee quen boucle ouverte si le retard pur d epasse la moiti e de la constante de temps dominante. Soit G(z ) un syst` eme tr` es retard e de la forme. G(z ) = G1 (z )z k Le principe de synth` ese est le suivant : on synth etise un correcteur C1 (z ) pour le syst` eme non retard e G1 (z ) puis on adapte ce correcteur pour le syst` eme r eel G(z ).

Fig. 4.12 Sch ema id eal de correction de syst` emes tr` es retard es. Utopique car le retard pur nest pas dissociable du reste de la transmittance du syst` eme. Bien que totalement irr ealisable en l etat car le retard pur nest pas dissociable du reste de la transmittance du syst` eme, calculons tout de m eme la fonction de transfert du syst` eme pr esent e en gure 4.12. F (z ) = C1 (z ) G1 (z ) k z 1 + C1 (z ) G1 (z )

En introduisant la transmittance G(z ), on obtient : F (z ) F (z ) F (z ) qui est de la forme : F (z ) = En posant : C (z ) = C 1 (z ) 1 + (1 z k )G1 (z )C1 (z ) C (z )G(z ) 1 + C (z )G(z ) = = = 1 C1 (z ) G(z ) 1 + C1 (z ) G1 (z ) C1 (z )G(z ) + C1 (z )G(z ) C1 (z ) G(z ) 1 + C1 (z ) G1 (z )(1 z k ) + C1 (z )G(z )
C1 (z ) G(z ) 1+(1z k )G1 (z )C1 (z ) C1 (z ) + 1+(1z k )G (z )C (z ) G(z ) 1 1

C (z ) est un correcteur est parfaitement r ealisable : voir sch ema 4.13. Calcul de la boucle de retour du pr edicteur de Smith avec Matlab
>> sysc=tf([1],[1 4 3 0]); >> sysd=c2d(sysc, 0.1, zoh); % saisie de la fonction de transfert en p % transform ee en z avec un BOZ et Te = 0.1 % sysr=z^(-20) soit 2s avec Te=0.1 >> sysr=tf([1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1],[1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0], 0.1); >> corr=sysr*sysd % retour = produit de la transform ee du syst` eme sans retard par (1-z^-n) >> [nu, de]=tfdata(corr,v) % r ecup eration du num erateur et du d enominateur

Note : la mise en uvre dun pr edicteur de Smith implique de poss eder un tr` es bon mod` ele du syst` eme. Les syst` emes pr esentant des variations de param` etres ne peuvent pas etre corrig es par ce type de correcteur.

4.4. MISE EN UVRE DUN ASSERVISSEMENT

61

Fig. 4.13 Sch ema dun pr edicteur de Smith.

Fig. 4.14 Performances dun pr edicteur de Smith.

62

CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES

4.4.3

Algorithme

Le cadencement dune routine dasservissement est donn e en gure 4.15. Lors de la r ealisation du logiciel de commande, deux points sont importants : La minimisation du temps entre echantillonnage des capteurs et sortie des commandes. En eet, toute la th eorie de la commande echantillonn ee suppose que ce temps est nul ! La minimisation des variations de p eriode d echantillonnage. L` a encore, Te est suppos e constant.

Fig. 4.15 Cadencement dune routine de r egulation. Le cas A de la gure 4.16 est presque id eal. Le cas B est le cas limite, le retard pur introduit par le temps de calcul est de Te /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 pr e-calcul e pour la commande suivante lest juste apr` es la sortie de la commande en cours.

Fig. 4.16 R epartition du temps de calcul.

4.4. MISE EN UVRE DUN ASSERVISSEMENT

63

Fonction interruption PID( : void) : void result : void /* Mesure de la sortie */ yn CAN ;

/* Calcul de lerreur */ n wn yn ; /* Calcul des termes du PID */ pn Kp n ; dn Kd (n n1 ) ; in in1 + Ki n ; /* Calcul de la commande */ vn pn + dn + in ; /* Mod` ele de lactionneur */ Si (vn Uinf ) Alors un Uinf ; /* Commande r eelle = saturation basse */ Sinon Si (vn Usup ) Alors un Usup ; /* Commande r eelle = saturation haute */ Sinon un vn ; /* Commande r eelle = commande PID */ Fin Si Fin Si /* Sortie de la commande */ CNA un ; /* D esaturation du terme int egral */ in in + un vn ; /* Mise ` a jour des variables */ n1 n ; in1 in ; Fin

Algorithme 1: Algorithme de PID classique avec anti-windup.

64

CHAPITRE 4. TRANSPOSITION DES CORRECTEURS ANALOGIQUES

Chapitre 5

Synth` eses ` a temps d etablissement ni


5.1
5.1.1

Synth` ese en z de correcteurs


Exemple idiot... mais riche denseignements
(z 2)(z 0.5) (z + 0.7)(z 0.8)(z 1)

Soit ` a corriger un syst` eme G(z ) : G(z ) =

On se propose de cr eer un correcteur parfait, cest-` a-dire, la compensation parfaite du syst` eme par le correcteur C (z ) soit : (z + 0.7)(z 0.8)(z 1) 1 = C (z ) = G(z ) (z 2)(z 0.5) Le syst` eme corrig e en boucle ouverte devient donc : C (z ) G(z ) = 1 G(z ) = 1 G(z )

Cest bien un syst` eme parfait, il est m eme inutile de boucler ! Bien entendu cela ne peut pas fonctionner et ce pour deux raisons. Stabilit e C (z ) =

S (z ) (z + 0.7)(z 0.8)(z 1) = E (z ) (z 2)(z 0.5)

Inutile de se lancer dans une etude, le correcteur C (z ) est ostensiblement instable ` a cause du p ole en 2, donc ext erieur au cercle unit e. Causalit e Etudions l equation r ecurrente de ce correcteur : C (z ) = donc S (z )[(z 2)(z 0.5)] = E (z )[(z + 0.7)(z 0.8)(z 1)] S (z )[z 2 2.5z + 1] = E (z )[z 3 1.1 z 2 0.46 z + 0.56] En multipliant droite et gauche par z 2 S (z )[1 2.5z 1 + z 2 ] = E (z )[z 1.1 0.46 z 1 + 0.56z 2 ] S (z ) = E (z )[z 1.1 0.46 z 1 + 0.56z 2 ] + S (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) 65 S (z ) (z + 0.7)(z 0.8)(z 1) = E (z ) (z 2)(z 0.5)

66

` ` TEMPS DETABLISSEMENT CHAPITRE 5. SYNTHESES A FINI

s(k ) est une fonction de la commande ` a linstant suivant e(k + 1) ! Ce correcteur nest pas causal, il est donc impossible ` a r ealiser. Les synth` eses de correcteurs num eriques conduisent souvent ` a des correcteurs non causaux et/ ou instables, il faut donc syst ematiquement v erier : la causalit e la stabilit e La m ethode pr ec edente ayant echou e, on se propose de r ealiser un autre correcteur pratiquement aussi id eal que le pr ec edent mais utilisant le bouclage. F (z ) = C (z )G(z ) 1 + C (z )G(z )

Fig. 5.1 Syst` eme boucl e.

Premi` ere tentative : F (z ) = 1

C (z )G(z ) =1 1 + C (z )G(z )

....1 = 0 Cest encore impossible !

Deuxi` eme tentative : La perfection etant impossible ` a atteindre, essayons de d eterminer un correcteur qui rendrait le syst` eme corrig e equivalent ` a un retard pur. La sortie suivrait parfaitement lentr ee mais d ecal ee dune p eriode d echantillonnage. On r esout donc : C (z )G(z ) F (z ) = = z 1 1 + C (z )G(z ) C (z ) = Application num erique : C (z ) = 0.04 causalit e : oui stabilit e : non (p oles en 0.5 et 2 !) Le r esultat de cette correction est pr esent e en gure 5.2. Comme pr evu le syst` eme est bien instable, mais observez que la r eponse continue du syst` eme passe bien par 1 aux instants d echantillonnage ! Essayons de formaliser un peu plus cette approche ` a laide des synth` eses ` a temps d etablissement ni. 50.0 z 2 5.0 z 28.0 2.0 z 2 5.0 z + 2.0 z 1 G(z )(1 z 1 )

` ` TEMPS DETABLISSEMENT 5.2. SYNTHESES A FINI

67

Fig. 5.2 R eponse du syst` eme ` a un echelon.

5.2

Synth` eses ` a temps d etablissement ni

Un syst` eme est dit ` a temps d etablissement ni lorsque son erreur (k ) = 0 en un nombre ni de p eriodes d echantillonnage, lentr ee etant un polyn ome en t sp eci e (le plus souvent un echelon : t0 ).
(k)

Temps d etablissement ni
Temps dtablissement infini

Fig. 5.3 Comparaison de lerreur permanente entre un syst` eme ` a temps d etablissement ni ou inni.

D enition Un syst` eme est dit ` a temps d etablissement ni si lerreur (t) sannule en un nombre ni d echantillons, pour une entr ee u(t) = tm sp eci ee. Corollaire (z ) est donc un polyn ome en z (donc pas une fraction rationnelle)1 . P (z ) La transform ee en z de u(t) = tm est de la forme2 U (z ) = (1z ome en z de degr e d m. 1 )m+1 avec P (z ) polyn (z )(1 F (z )) (z ) = U (z ) Y (z ) = U (z ) [1 F (z )] = P(1 z 1 )m+1 O` u F (z ) est la transmittance en boucle ferm ee.
(z )(1F (z )) Pour que P ome il faut et il sut que 1 F (z ) contienne (1 z 1 )m+1 en facteur, donc (1z 1 )m+1 soit un polyn 1 F (z ) s ecrit sous la forme :

(5.1)

1 F (z ) = (1 z 1 )m+1 K (z )
1 Calculons (z ) de la gure 5.3 par la formule de d enition de la transform ees en z (2.13) (z2) = 0 + 1 z1 + 2 z2 : cest bien un polyn ome.

(5.2)

voir eq. 2.11 page 27

68 o` u K (z ) est un polyn ome.

` ` TEMPS DETABLISSEMENT CHAPITRE 5. SYNTHESES A FINI

Pour v erication, appliquons le th eor` eme de la valeur nale : P (z )(1 F (z )) P (z )(1 z 1 )m+1 K (z ) = lim (1 z 1 ) =0 1 m +1 z 1 (1 z ) (1 z 1 )m+1

lim (t) = lim (1 z 1 )(z ) = lim (1 z 1 )


z 1 z 1

5.2.1

Synth` ese ` a temps d etablissement minimal absolu


Un syst` eme est dit ` a temps d etablissement minimal lorsque le degr e de (z ) est minimal.

D enition

En reprenant les equations (5.1) et (5.2) (z )(1 F (z )) = P (z )K (z ) (z ) = P(1 z 1 )m+1 Si K (z ) = 1, alors le syst` eme est dit minimal absolu. Dans ce cas : 1 F (z ) = (1 z 1 )m+1

(z ) = P (z ) = p0 + p1 z 1 + p2 z 2 + . . . + pm z m
Donc (t) sannule pour t = (m + 1)Te Le correcteur C (z ) est alors : C (z ) = 1 (1 z 1 )m+1 (1 z 1 )m+1 G(z )

Remarque 1 : Le correcteur compense les p oles et les z eros de G(z ) donc cette m ethode de commande ne sapplique quaux syst` emes ne poss edant que des p oles et des z eros stables ! Remarque 2 : seul (t) sannule, pas (t) !

Fig. 5.4 Lerreur echantillonn ee est bien nulle mais lerreur continue ne lest pas.

5.2.2

Synth` ese ` a temps d etablissement minimal non absolu

Si le syst` eme mod elis e par G(z ) poss` ede des p oles ou des z eros ext erieurs au cercle unit e, la synth` ese ` a temps d etablissement minimal absolu nest plus applicable. La synth` ese en temps d etablissement minimal consiste alors ` a chercher K (z ) de degr e minimal respectant les deux conditions suivantes : 1. F (z ) doit poss eder parmi ses racines les z eros de G(z ) ext erieurs au cercle unit e 2. 1 F (z ) doit poss eder parmi ses racines les p oles de G(z ) ext erieurs au cercle unit e D emonstration : posons G(z ) = B + (z )B (z ) A+ (z )A (z )

o` u B + (z ), B (z ), A+ (z ), A (z ) sont des polyn omes tels que :

` ` TEMPS DETABLISSEMENT 5.2. SYNTHESES A FINI B + (z ) B (z )

69

contient tous les z eros de G(z) int erieurs au cercle unit e (dits stables) contient tous les z eros de G(z) ext erieurs au cercle unit e (dits instables) ainsi que les retards purs du syst` eme

A (z ) A (z ) alors :

contient tous les p oles de G(z) int erieurs au cercle unit e (stables) contient tous les p oles de G(z) ext erieurs au cercle unit e (instables) C (z ) = A+ (z )A (z ) F (z ) B + (z )B (z ) 1 F (z )

Comme C (z ) ne peut pas contenir B (z ) au d enominateur (p oles instables) alors F (z ) doit contenir en facteur la partie instable B (z ). De m eme, C (z ) ne peut pas contenir au num erateur A (z ) (ce serait de la compensation de p oles de G(z ) instable !) donc 1 F (z ) doit contenir en facteur A (z ). Remarque : les p oles et z eros sur le cercle unit e sont ` a consid erer comme instables le probl` eme pos e se ram` ene ` a la r esolution de 3 equations : B (z )L(z ) (non compensation des z eros instables par le correcteur) A (z )J (z ) (non compensation des p oles instables par le correcteur) (1 z 1 )m+1 K (z ) (temps d etablissement ni)

F (z ) 1 F (z ) 1 F (z ) qui se condense en :

= = =

(5.3) (5.4) (5.5)

F (z ) 1 F (z ) K (z )

= B (z )L(z ) = (1 z
1 m+1

(5.6) A (z )K (z )

(5.7) (5.8)

= A (z )K (z )

Cela reviens ` a r esoudre l equation diophantienne (1 z 1 )m+1 A (z )K (z ) + B (z )L(z ) = 1 Si la r esolution donne K (z ) = A (z )K (z ) = k0 + k1 z 1 + k2 z 2 + +kn 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 dur ee nie, mais de m + n + 1 p eriodes d echantillonnage.

70

` ` TEMPS DETABLISSEMENT CHAPITRE 5. SYNTHESES A FINI

5.2.3

R eponse pile

La r eponse pile est un cas particulier des syst` emes ` a temps d etablissement minimal non absolu. D enition Un syst` eme est dit ` a r eponse pile lorsque la sortie continue atteint son r egime permanent pour une entr ee canonique en un nombre ni d echantillons. Conditions Pour pouvoir r ealiser un correcteur ` a r eponse pile pour une entr ee de type u(t) = tm , il faut que le syst` eme pr esente au moins m int egrateurs purs.

Fig. 5.5 Sch ema dun syst` eme ` a r eponse pile.

La gure 5.5 montre un exemple classique avec les di erents signaux. On veut, pour une entr ee en parabole , que la sortie soit une parabole. Le syst` eme pr esentant deux int egrateurs purs, il faut que la sortie du correcteur soit une constante au bout dun certain temps (le temps d etablissement). Puisque la sortie du correcteur est constante au bout du temps d etablissement, cette sortie s ecrit : W (z ) = La sortie du syst` eme en boucle ferm ee est : S (z ) = W1 ( z ) 1 z 1
sortie correcteur

W1 (z ) 1 z 1

A+ (z )A

B + (z )B (z ) U1 (z ) = (z )(1 z 1 )m (1 z 1 )m+1
en entr ee en tm

F (z )
FT en BF

syst` eme d ecompos e num, den et IT purs

Apr` es simplication des termes en (1 z 1 ) la deuxi` eme partie de l egalit e devient : W1 ( z ) B + (z )B (z ) = U1 (z )F (z ) A+ (z )A (z ) A+ (z )A (z ) B + (z )B (z )

W1 (z ) = U1 (z )F (z )

W1 , F, U1 , A+ , A , B + , B etant des polyn omes, il vient imm ediatement que F s ecrit : F (z ) = B + (z )B (z )L(z ) o` u L(z ) est un polyn ome. La synth` ese revient donc ` a d eterminer deux polyn omes L(z ) et K (z ) tels que : (1 z 1 )m+1 A K (z )

1 F (z ) F (z )

(5.9) (5.10)

= B + (z )B (z )L(z )

Ce qui revient ` a r esoudre l equation diophantienne : (1 z 1 )m+1 A K (z ) + B + (z )B (z )L(z ) = 1 Le correcteur s ecrit alors : (5.11)

` ` TEMPS DETABLISSEMENT 5.2. SYNTHESES A FINI

71

C (z ) C (z )

= = = =

1 F (z ) syst` eme 1 F (z ) A+ (z )A (z )(1 z 1 )m F (z ) B + (z )B (z ) 1 F (z ) A+ (z )A (z )(1 z 1 )m B + (z )B (z )L(z ) + B (z )B (z ) (1 z 1 )m+1 A K (z ) A+ (z )L(z )) (1 z 1 )K (z )

(5.12) (5.13) (5.14) (5.15)

5.2.4

Applications des synth` eses ` a temps d etablissement ni

Applications sur syst` emes physiques Rarissimes Peu de syst` emes restent lin eaires avec de telles commandes Electrotechnique Applications sur syst` emes informatifs Plus courantes Pas de physique, tout reste num erique donc pas de probl` eme entre les instants d echantillonnage Observateurs Contr ole de syst` emes dinformations

72

` ` TEMPS DETABLISSEMENT CHAPITRE 5. SYNTHESES A FINI

5.2.5

Exemples de r eponse pile


T (p) = 5 + 2p + 5

Le syst` eme continu etudi e est : p2

Pour Te =1s, sa transform ee en z avec un bloqueur dordre 0 est : T (z ) = 0.9858z + 0.4557 z 2 + 0.3062z + 0.1353

Le correcteur pile, calcul e pour avoir une erreur ` a l echelon dentr ee nulle est : Cp (z ) = 0.6937z 2 + 0.2124z + 0.09388 z 2 0.6839z 0.3161

Le correcteur pour avoir un temps d etablissement minimal est : Cem (z ) = z 2 + 0.3062z + 0.1353 0.9858z 2 0.5302z 0.4557

R eponse pile

R eponse ` a temps d etablissement minimal

Fig. 5.6 Comparaison des commandes et sorties pour un correcteur pile et ` a temps d etablissement minimum : Te =0.5s.

R eponse pile

R eponse ` a temps d etablissement minimal

Fig. 5.7 Comparaison des commandes et sorties pour un correcteur pile et ` a temps d etablissement minimum : Te =1s.

5.3. RESOLUTION DE LEQUATION DIOPHANTIENNE

73

5.3

R esolution de l equation diophantienne

Quelle que soit la m ethode adopt ee pour le calcul du correcteur (Zdan, pile RST, ...), cela revient ` a la r esolution dune equation diophantienne de la forme :

AX + BY = C o` u : A, X , B , Y et C sont des polyn omes en z 1 Cette equation nadmet de solutions que ssi : dX + dY + 1 = max{dAX, dBY, dC, } Sil existe une solution alors : (5.16)

dX dY

dB 1 dA 1

Ces conditions etant respect ees, deux cas peuvent se pr esenter :

l equation est r eguli` ere dC < dA + dB

l equation est non r eguli` ere dC dA + dB Solution minimale en X Solution minimale en Y dX = max{(dC dA), (dB 1)} dY = dA 1

dX = dB 1 dY = dA 1

dX = dB 1 dY = max{(dC dB ), (dA 1)}

Soit

(a0 +a1 z 1 + +an z k )(x0 +x1 z 1 + +xk z k )+(b0 +b1 z 1 + +bm z m )(y0 +y1 z 1 + +yl z l ) = c0 +c1 z 1 + +cp z p o` u p n + sup(k, l)

Par identication terme ` a terme : a0 x0 + b0 y0 = c0 a x +a x +b y +b y =c 1 0 0 1 1 0 0 1 1 a2 x0 + a1 x1 + a0 x2 + b2 y0 + b1 y1 + b0 y2 = c2 soit sous forme matricielle :

74 max(n + k, m + l) + 1

` ` TEMPS DETABLISSEMENT CHAPITRE 5. SYNTHESES A FINI a0 a1 a2 . . . an 0 . . . 0 . . . 0 0 a0 a1 . . . . . . an .. . .. .. . . 0 . . . 0 a0 a1 . . . . . . an . . . 0 b0 b1 b2 . . . 0 b0 b1 b2 . . . .. .. . . 0 . . . 0 b0 b1 . . . . . . . . . . . . bm

x0 . . . xk = y0 . . . yl

c0 . . . . . . . . .

bm . . . . . . 0

..

..

cp 0 . . . 0

l+1

k+1

Pour que cette matrice soit inversible, il faut que max(n + k, m + l) + 1 = k + l + 1 Ce qui correspond ` a l equation 5.16. Si toutefois cette derni` ere condition est respect ee mais que le d eterminant de A est nul, cest que les polyn omes A et B ne sont pas premiers entre eux. Exemple 1 Soit ` a r esoudre : (1 + 2z 1 3z 2 z 3 )X + (0.5 + 0.01z 1 )Y = 0.7z 2 + 0.9z 3 + z 4

dC 4

dA + dB 3+1

(5.17) (5.18)

l equation est non r eguli` ere. On choisi la premi` ere forme : dY dX = = dA 1 = 2 max{(dC dA)}, (dB 1) = max{(4 3, 0)} = 1

(1 + 2z 1 3z 2 z 3 )(x0 + x1 z 1 ) + (0.5 + 0.01z 1 )(y0 + y1 z 1 + y2 z 2 ) = 0.7z 2 + 0.9z 3 + z 4 soit sous forme matricielle : 1 0 1 2 3 1 0.5 0.01 0 0 0 x 0 x1 y0 y1 y2 0 0 x0 0

2 3 1 0

0.5 0 x 0 1 0.01 0.5 y0 = 0.7 0 0.01 y 0.9 1 0 0 y2 1 2.2930 1.0000 = 4.5860 7.0803 19.2996

5.3. RESOLUTION DE LEQUATION DIOPHANTIENNE Si on avais choisi le deuxi` eme forme : dX dY = = dB 1 = 0 max{(dC dB )}, (dA 1) = max{(4 1, 2)} = 3

75

(1 + 2z 1 3z 2 z 3 )(x0 ) + (0.5 + 0.01z 1 )(y0 + y1 z 1 + y2 z 2 + y3 z 3 ) = 0.7z 2 + 0.9z 3 + z 4 soit sous forme matricielle : 1 0.5 0.01 0 0 0 0 0. 5 0.01 0 0 x 0 y0 y1 y2 y3 Exemple 2 Soit ` a r esoudre : (1 + 2z 1 3z 2 z 3 )X + (0.5 + 0.01z 1 )Y = 1 0 0 0 x0 0 0

2 3 1 0

0 0. 5 0 0.01 0.5 0 0.01 0.4958 0.9916 = 1.9634 1.6140 0.8407

y0 y1 = y2 y3

0.7 0.9 1

dC 0 l equation est r eguli` ere donc : dY dX

dA + dB

(5.19) (5.20)

< 3+1

= =

dA 1 = 2 dB 1 = 0

(1 + 2z 1 3z 2 z 3 )(x0 ) + (2 + 3z 1 )(y0 + y1 z 1 + y2 z 2 ) = 1 soit sous forme matricielle : 1 2 0 0 x0 1

2 3 1

3 2 0 y 0 0 = 0 3 2 y1 0 0 0 3 y2 0 x0 0.7297 y0 0.8649 = y1 0.5676 y2 0.2432

76

` ` TEMPS DETABLISSEMENT CHAPITRE 5. SYNTHESES A FINI

Chapitre 6

M ethodes de commande avanc ees


6.1 Choix des p oles en boucle ferm ee

Cest un choix qui ne peut etre fond e que sur des consid erations physiques, on nasservit pas de la m eme fa con un avion de combat et un avion de ligne ! Quelques r` egles peuvent pourtant etre donn ees, vous saurez les adapter ` a votre cas particulier. Si vous avez correctement choisi votre fr equence d echantillonnage et que votre cahier des charges nest pas utopique, les p oles de la fonction de transfert en boucle ouverte sont ` a peu pr` es dans la zone gris ee de la gure 6.1.

Fig. 6.1 Emplacement des p oles en boucle ouverte. En boucle ferm ee, vous pouvez esp erer acc el erer 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 lin eaire.

77

78

CHAPITRE 6. METHODES DE COMMANDE AVANCEES

Fig. 6.2 Zones de placement des p oles en boucle ferm ee ` a eviter.

Les p oles du syst` eme en boucle ferm ee seront choisis en evitant les zones gris ees de la gure 6.2. En voici les raisons : Pas trop proches du cercle unit e. En eet une petit variation de mod` ele (vieillissement, variation de masse, ...) pourrait engendrer une instabilit e du syst` eme. Pas trop proches du point 1. Sinon, vous ne diminuez pas le temps d etablissement ou alors vous avez mal choisi la fr equence d echantillonnage. Pas de facteur damortissement trop petit, cela conduit ` a des d epassements importants de la consigne et allonge le temps d etablissement. Pas de p oles r eels n egatifs, car ces p oles g en` erent une oscillation amortie non souhaitable. Un p ole est tr` es souvent utilis e, le retard pur (en z = 0), p ole le plus rapide. Si vous respectez ces crit` eres, vos p oles en boucle ferm ee devraient etre dans la zone non gris ee de la gure 6.2. Nous parlons peu des z eros de la fonction de transfert. Non pas quils soient n egligeables, bien au contraire ! Ils ont une inuence sur le comportement du syst` eme mais sont diciles ` a contr oler. En fait leur contr ole demande un correcteur un peu plus complexe. Deux m ethodes de synth` ese vous sont propos ees ci-apr` es. La premi` ere, la m ethode de Zdan, ne soccupe que des p oles de la fonction de transfert en boucle ferm ee. En pr esence de z eros, une premi` ere synth` ese donne un correcteur aux performances assez eloign ees du cahier des charges que vous vous etes pos e. Une deuxi` eme synth` ese tenant compte de ce premier r esultat donne alors de bonnes performances. La m ethode RST, qui pr esente un degr es de libert e suppl ementaire permet de placer les z eros aussi bien que les p oles.

6.2. METHODE DE ZDAN

79

6.2

M ethode de Zdan

Les m ethodes ` a temps d etablissement ni conduisent le plus souvent ` a des correcteurs qui g en` erent des commandes trop importantes. Tous comptes faits, on cherche rarement daussi bonnes performances pour le syst` eme boucl e. En g en eral, une am elioration dun facteur 3 sur le temps d etablissement et une erreur statique voire de tra nage nulle sont susantes, compte tenu des saturations du syst` eme. La m ethode de Zdan propose de calculer un correcteur tel que le syst` eme en boucle ferm ee se comporte comme un syst` eme du second ordre de pulsation propre n et de facteur damortissement donn es.

6.2.1

Principe

On impose au syst` eme boucl e: en r egime transitoire : un comportement type second ordre (n et ) en r egime permanent : erreur nulle pour une entr ee canonique u(t) = tm et eventuellement une erreur m+1 donn ee pour u1 (t) = t . Exemple : erreur nulle ` a l echelon, erreur sp eci ee 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 ) sont des polyn omes tels que : B + (z ) B (z ) contient tous les z eros de G(z) int erieurs au cercle unit e (dits stables) contient tous les z eros de G(z) ext erieurs au cercle unit e (dits instables) ainsi que les retards purs du syst` eme A+ (z ) A (z )

contient tous les p oles de G(z) int erieurs au cercle unit e (stables) contient tous les p oles de G(z) ext erieurs au cercle unit e (instables)

6.2.2

Correcteur de Zdan

Le correcteur est d ecompos e en trois parties, sous la forme : C (z ) = C1 (z ) C2 (z ) C3 (z ) C1 (z ) doit annuler lerreur permanente, compte tenu des l int egrateurs purs d ej` a contenus dans G(z ) donc, en labsence de perturbations 2 : C1 (z ) = 1 (1 z 1 )m+1l

C2 (z ) doit compenser les p oles et les z eros stables de G(z ) donc : A+ ( z ) C2 (z ) = + B (z ) C3 (z ) doit imposer le comportement en boucle ferm ee et comporte au moins autant de param` etres que de sp ecications ` a satisfaire. Posons : C3 (z ) = 1 ( z ) 2 ( z )

1 (z ) et 2 (z ) seront choisis les plus courts possible de la forme :


1 La 2 En

synth` ese en z est parfaitement possible mais conduit ` a des erreurs faciles ` a eviter en utilisant la forme en z 1 . cas de perturbations, le nombre dint egrateurs purs ne suis pas la formule donn ee. Reportez vous au 3.4.

80

CHAPITRE 6. METHODES DE COMMANDE AVANCEES 4 param` etres 1 (z ) = 2 (z ) = kc (1 + 1 z


1

6 param` etres ) kc (1 + 1 z
1

+ 2 z
2

0 + 1 z 1

0 + 1 z 1 + 2 z 2 )

La transmittance en boucle ouverte s ecrit alors : C (z ) G(z ) = C1 (z ) C2 (z ) C3 (z ) G(z ) = La transmittance en boucle ferm ee est : F (z ) = C (z )G(z ) NF (z ) = 1 + C (z )G(z ) DF (z ) B (z )1 (z ) (1 z 1 )m+1 A (z )2 (z )

En ecrivant l egalit e des d enominateurs on obtient : DF (z ) = (1 z 1 )m+1 A (z )2 (z ) + B (z )1 (z ) (6.1)

Choix de DF (z ) Comme indiqu e pr ec edemment, on cherche un comportement de type second ordre. Aussi, DF (z ) sera d ecompos e en deux parties telles que : DF (z ) = (1 + p1 z 1 + p2 z 2 ) p oles dominants avec : p1 = 2eTe cos(Te 1 2) P (z ) p oles n egligeables

p2 = e2Te Les p oles n egligeables seront choisis tels que |zi | < 0.1 et le plus souvent zi = 0 soit des retards purs. Leur nombre est fonction de l equation 6.1. En eet, il doit y avoir egalit e des degr es des polyn omes. R esolution de l equation 6.1 Une fois l equation pos ee, le nombre de p oles n egligeables sobtient directement par l equation des degr es de chaque membre. La r esolution seectue en identiant les termes kc , i et i en posant les egalit es des termes de m eme degr e. Une m ethode de r esolution plus longue mais plus syst ematique est donn ee au 5.3 Quelques remarques

Remarque 1 : En prenant DF (z ) = 1 on retrouve le correcteur astatique. Remarque 2 : Rien noblige ` a choisir un comportement en boucle ferm ee de type second ordre, ordre 1 ou 3 ou n marchent aussi, on parle alors de m ethode du mod` ele. Remarque 3 : En utilisant la d ecomposition en z 1 vous verrez appara tre les retards purs du syst` eme. Ceuxci ne sont pas compensables, en eet un syst` eme ayant n retards purs ne r epondra jamais en moins de n echantillons. A ce titre, les retards purs doivent gurer dans B (z ) et se retrouveront dans la fonction de transfert en boucle ferm ee : NF (z ) = B (z )1 (z ).

6.3. COMMANDE RST

81

6.3

Commande RST

Fig. 6.3 Principe de correcteur par correcteur RST. V(z) est une perturbation de charge, E(z) est une perturbation de sortie. La forme g en erale de la loi de commande dun correcteur de type RST est : (voir sch ema 6.3) S (z )U (z ) = T (z )W (z ) R(z )Y (z ) donc : U (z ) = La sortie du syst` eme boucl e est donn ee par : Y (z ) = B (z ) B (z ) U (z ) + V (z ) + E (z ) A(z ) A( z ) T (z ) R(z ) W (z ) Y (z ) S (z ) S (z ) (6.3) (6.2)

An dall eger les notations, les arguments des polyn omes ne seront plus not es. En r e ecrivant (6.2) et (6.3), = T W (z ) R Y (z ) = B U (z ) + B V (z ) + A E (z )

S U (z ) A Y (z ) Explicitons U (z ) :

(6.4) (6.5)

AS U (z ) AS U (z ) (AS + BR) U (z )

= = =

AT W (z ) AR Y (z ) AT W (z ) BR U (z ) BR V (z ) AR E (z ) AT W (z ) BR V (z ) AR E (z )

U (z ) = et Y (z )

AT BR AR W (z ) V (z ) E (z ) AS + BR AS + BR AS + BR

(6.6)

AS Y (z ) AS Y (z ) (AS + BR) Y (z )

= = =

BS U (z ) + BS V (z ) + AS E (z ) AR Y (z ) BT W (z ) BR Y (z ) + BS V (z ) + AS E (z ) BT W (z ) + BS V (z ) + AS E (z )

Y (z ) =

BT BS AS W (z ) V (z ) E (z ) AS + BR AS + BR AS + BR

(6.7)

82

CHAPITRE 6. METHODES DE COMMANDE AVANCEES

6.3.1

Synth` ese de la loi de commande RST

Synth` ese par placement de p oles On cherche une loi de commande U (z ) telle que le syst` eme en boucle ferm ee ait une fonction de transfert mod` ele donn ee de la forme : Bm (z ) Fm (z ) = Am (z ) or, dapr` es 6.7 et en supposant V = E = 0 Y (z ) = Il faut donc r ealiser : BT Bm = AS + BR Am (6.9) BT W (z ) AS + BR (6.8)

Compensation des z eros An de simplier les calculs mais surtout an dobtenir une fonction de transfert dordre le plus faible possible, on cherche ` a compenser les p oles et les z eros. Posons : B = B+B o` u: B+ contient tous les z eros de G(z) int erieurs au cercle unit e (dits stables)

B contient tous les z eros de G(z) ext erieurs ou sur le cercle unit e (dits instables) Note 1 : an dobtenir ult erieurement 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 r eagir plus vite que son retard pur. B ne pouvant etre en facteur de AS + BR (compensation interdite) il faut que B divise Bm , donc : Bm = B Bm B + peut etre un facteur de AS + BR (compensation permise) il devra dans ce cas diviser aussi S , donc : S = B+S R e ecrivons ces r esultats, (6.9) devient : B + (AS en simpliant : T B = m AS + B R Am Ce qui implique que : T AS + B R

B Bm B+BT = + B R) Am

(6.10)

(6.11)

= A0 B m = A0 Am

(6.12) (6.13)

O` u A0 est un polyn ome donn e dit polyn ome observateur par analogie avec la commande par retour d etat (Cours commande avanc ee 2A). Le polyn ome caract eristique de la boucle ferm ee est alors : AS + BR = B + A0 Am (6.14)

Remarque 1 : A0 contient les modes de la boucle ferm ee qui ne seront pas excit es par le signal de commande, par contre ces modes seront excit es par une perturbation ! Y W Par contre : Y E =
W =V =0

=
E =V =0

BT BA0 Bm B Bm Bm = + = = AS + BR B A0 Am Am Am AS AB + S AS = + = AS + BR B A0 Am A0 Am

6.3. COMMANDE RST Remarque 2 : U W =


E =V =0

83 AT AA0 Bm AB = + = + m AS + BR B A0 Am B Am

Les z eros stables du proc ed e apparaissent comme des p oles de la fonction de transfert de w vers u ce qui peut etre n efaste (exemple p oles stables ` a partie r eelle n egative). Annulation de lerreur statique vis-` a-vis des perturbations Ce qui suit nest valable que pour une perturbation E , si la perturbation est en V (voir sch ema 6.3), le raisonnement reste identique mais les IT pur du syst` eme (l) ne peuvent etre pris en compte, car pour annuler lerreur lint egrateur doit etre situ e entre lentr ee de perturbation et lerreur. La fonction de transfert de la boucle est : BR BR = AS AS Pour annuler une erreur statique dordre m il faut que Fb ait m+1 int egrateurs purs ( echelon : m=0, 1 IT pur). La fonction de transfert du proc ed e poss` ede d ej` a l p oles en z = 1 donc : Fb = A(z ) = (1 z 1 )l A+ A Pour que Fb poss` ede m+1 p oles en z = 1, il faut que S soit de la forme : S = (1 z 1 )m+ll S1 A+ A l equation diophantienne (6.13) devient : (1 z 1 )m+1 S1 A+ A + B R = A0 Am (6.15)

6.3.2
Am

Choix des polyn omes Am , Bm et A0

Cest le d enominateur de la fonction de transfert voulue. Il contient donc les p oles voulus. Comme pour la m ethode de Zdan, on les choisit plut ot de la forme deux p oles complexes conjugu es dominants et n p oles n egligeables. Bm eme ` a corriger. Il L` a encore comme pour la m ethode de Zdan, Bm doit contenir tous les retards purs du syst` contient aussi tous les z eros dit instables, cest-` a-dire ext erieurs au cercle unit e. Bm peut aussi contenir dautres z eros, en particulier ceux qui, tout en etant int erieurs au cercle unit e, ont une partie r eelle n egative. Sils sont compens es, donc au d enominateur du correcteur, la commande du syst` eme pr esentera une r eponse indicielle altern ee rapide, peu appr eci ee des syst` emes (voir g. 3.7 ). A0 Le polyn ome dobservation A0 est, en g en eral, choisi egal ` a 1, on a alors une dynamique identique en asservissement et en r egulation. On peut aussi le choisir de la forme (1 az 1 ). Dans ce cas, on ltre les perturbations, la r eaction de lasservissement sera plus douce mais plus longue.

6.3.3

Cas particulier du correcteur RST : le correcteur s erie


R(z ) S (z )

En choisissant T = R on obtient le correcteur s erie de la forme C (z ) = En reprenant 6.12 R = T = A0 B m Si on compense les p oles stables du proc ed e` a laide de A0 le polyn ome dobservation : A0 = A+

84 donc,

CHAPITRE 6. METHODES DE COMMANDE AVANCEES R = A+ B m

et l equation diophantienne (6.15) devient : (1 z 1 )m+1 S1 A+ A + B A+ Bm = A+ Am soit, (1 z 1 )m+1 A S1 + B Bm = Am qui est en fait l equation diophantienne de la m ethode de Zdan en posant : 1 ( z ) 2 ( z ) = Bm (z ) (6.17) (6.16)

= S1 (z )

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 lin eaires echantillonn es. Paris : Dunod Universit e, 1973. Lausane, Suisse : [4] H. B uhler, R eglages echantillonn es, volume 1, traitement par la transformation en z. Presses polythechniques et universitaires romandes, 1986. [5] Y. Granjon, Automatique. Dunod : Ellipses, 2001. France : Ellipses, 2005. [6] E. Godoy and E. Ostertag, Commande num erique des syst` emes.

[7] B. Jouvencel, Automatique echantillonn ee. [Online]. Available : http ://www.lirmm.fr/ jouvence/ [8] M. Etique, R egulation num erique, 2005. [Online]. Available : http ://iai.eivd.ch/users/mee/ [9] D. Peaucelle, Syst` emes ` a temps discret, commande num erique des proc ed es, 2003. [Online]. Available : http ://www.laas.fr/%7Epeaucell/DPpages/DPteach.html [10] J. Chemla, Syst` emes asservis echantillonn es, 2005. [Online]. Available : http ://auto.polytech.univtours.fr/automatique/SSE/ressources/cours.pdf [11] S. Tliba, M. Jungers, and Y. Chitour, Commande des processus : asservissement num eriques, 2005. [Online]. Available : http ://www.satie.ens-cachan.fr/automatique/PolyMaster-nal.pdf [12] D. Arzelier, Repr esentation et analyse des syst` emes lin eaires. [Online]. Available : http ://www.laas.fr/ arzelier/polycop/n6k1/poly v5-2.pdf [13] K. J. Astr om and T. H agglund, 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 transform ees

89

90

ANNEXE A. TABLES DE TRANSFORMEES

Tab. A.1 Table des transform ees de Laplace et en Z usuelles.

X(p) 1 ekTe p
1 p 1 p2 1 p+a 1 (p+a)2 1 p(1+ p) 1 p2 (1+ p) 1 p(1+ p)2 p 2 + 2 p p 2 + 2 (p+a)2 + 2 p (p+a)2 + 2
2 n 2 2) p(p +n

x(t) (t) (t kTe ) (t)=1 t eat teat 1 et/ t + et/


t t/ 1 (1 + )e

X(z) 1 zk
z z 1 Te z (z 1)2 z z eaTe Te zeaTe (z eaTe )2 (1eTe / )z (z 1)(z eTe / ) Te z (z 1)2 z z 1

(1eTe / )z (z 1)(z eTe / ) z

z eTe /

Te zeTe / (z eTe / )2

sin t cos t eat sin t eat cos t 1 cos n t


p n t sin p t 1 2 e
2 n

z sin Te z 2 2z cos Te +1 z (z cos Te ) z 2 2z cos Te +1 zeaTe sin Te z 2 2zeaTe cos Te +e2aTe z 2 zeaTe cos Te z 2 2zeaTe cos Te +e2aTe z z 1

z (z cos n Te ) z 2 2z cos n Te +1

1 1+2 p + p2 n

p = n 1

1 2 + )

n n t sin(p t p e

1 p 1+2 p + p2 n
2 n

p = n

1 2

= cos1 eat ebt 1


b at ab e z z eaTe

ba (p+a)(p+b) ab p(p+a)(p+b)

z z ebTe

a bt ab e

z z 1

bz (ab)(z eaTe )

az (ab)(z ebTe )

91

Tab. A.2 Table des transform ees en z des syst` emes classiques pr ec ed es dun bloqueur dordre 0. Te est la p eriode d echantillonnage et a = eTe /

Transmittance en p Transmittance en z
B0 (p) p B0 (p) 1+ p B0 (p) p(1+ p) Te z 1 1a z a ,a

= eTe /

(Te (1a))z aTe + (1a) z 2 (1+a)z +a b2 z 2 +b1 z +b0 z 3 (2+a)z 2 +(1+2a)z a

B0 (p) p2 (1+ p)

b2 =

Te 2 2

+ Te + 2 (1 a)
2

e 2 2 )(1 a) + Te (1 + a) b1 = ( T2

b0 = 2 (1 a) aTe ( +
B0 (p) (1+1 p)(1+2 p)

Te 2)

b1 z +b0 z 2 (eTe /1 +eTe /2 )z +eTe /1 eTe /2 Te /1 )2 (1eTe /2 ) b1 = 1 (1e 1 2

b0 = eTe /1 eTe /2
B0 (p) (1+ p)2 B0 (p) (1+ p)3 1a z a 1a z a

1 eTe /2 2 eTe /1 1 2

Te a(z 1) (z a)2 Te (2 +Te )a(z 1) 2 (z a)2

Te 2 a2 (z 1) 2 (z a)3

b2 z 2 +b1 z +b0 z 3 (1+a1 +a2 )z 2 +(a1 +a2 +a1 a2 )z a1 a2

ai = eTe /i
B0 (p) p(1+1 p)(1+2 p)

b2 = Te

2 2 1 (1a1 )2 (1a2 ) 1 2 2 2 (1+a2 )(1a1 )2 (1+a1 )(1a2 ) 1 1 2

b1 = Te (a1 + a2 ) b0 = Te a1 a2
B0 (p) 2 1+ p+ 12 p2 n n

2 2 1 a2 (1a1 )2 a1 (1a2 ) 1 2

p = n <1

1 2

b0 +b1 z z 2 2zen Te cos(p Te )+e2n Te sin( T ) b0 = e2n Te + en Te ( p e 1 2

cos(p Te ))

b1 = 1 en Te

sin(p Te )

1 2

+ cos(p Te )

92

ANNEXE A. TABLES DE TRANSFORMEES

Annexe B

Travaux dirig es
ENSMM 1 ANNEE

93

94

ANNEXE B. TRAVAUX DIRIGES

B.1. TD N1 : FREQUENCE DECHANTILLONNAGE ET EQUATIONS RECURRENTES

95

B.1

TD n1 : Fr equence d echantillonnage et equations r ecurrentes

Choix de la p eriode d echantillonnage


Exercice 1. choix de la p eriode d echantillonnage Soit le syst` eme continu de transmittance G(p) = p3 1p + 2p2 + 11p + 10

Donner lallure des diagrammes de Bode et evaluer la pulsation de coupure (utiliser eventuellement MATLAB). Dans quel intervalle peut-on choisir la p eriode d echantillonnage ` a utiliser pour observer la sortie de ce syst` eme ? A laide de simulink tracer la r eponse indicielle du syst` eme continu et la r eponse echantillonn ee avec les p eriodes d echantillonnage que vous avez d etermin ees. Conclure.

Syst` emes r ecurrents


Exercice 2. Etude dune equation de r ecurrence s n+1 + asn = un Soit le syst` eme r ecurrent dentr ee un et sortie sn d eni par s =0
0

Calculer la suite { sn } lorsque lentr ee est une suite unitaire { un }={ 1,1,. . . .1,. . . } Repr esenter graphiquement { sn } pour di erentes valeurs de a. Sous quelle condition ce syst` eme est-il stable ? A laide de Matlab , pour di erentes valeurs de a ex ecuter les 2 commandes : >> S=dstep(1,[1 a]) >> dstep(1,[1 a]) % Calcul de la sortie de la fonction de transfert % Trac e de la sortie

Comparer aux r esultats du calcul pr ec edent ? Calculer egalement les valeurs de sn ` a laide de Matlab. Exercice 3. Soit le syst` eme r ecurrent dentr ee un et sortie sn d eni par : 5 1 1 s n+2 6 sn+1 + 6 sn = 6 un s = 2; s = 1
0 1

Calculer la suite { sn } lorsque lentr ee est une suite unitaire un ={ 1,1,. . . .1,. . . }. Etudier la stabilit e de ce syst` eme. Exercice 4. Soit le syst` eme r ecurrent dentr ee un et sortie sn d eni par : s n+3 + asn+2 + asn+1 + bsn = un a, b R+ Etudier dans le plan des param` etres a et b la stabilit e de ce syst` eme.

96

ANNEXE B. TRAVAUX DIRIGES

B.2

TD n2 : Syst` emes r ecurrents

On souhaite mod eliser l evolution du cheptel dun eleveur de bovins. Soit : x1k : le nombre de vaches de 1 an, x2k : le nombre de vaches de 2 ans, x3k : le nombre de vaches de 3 ans et plus, yk : le nombre total de vaches ces valeurs repr esentant des nombres moyens au cours de lann ee 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 l eleveur sautorise ` a acheter ou vendre uniquement des vaches de trois ans et plus. Soit uk le nombre de vaches achet ees (uk > 0) ou bien vendues (uk < 0) au cours de lann ee k . Le syst` eme ainsi d ecrit a une cadence Te de 1 an. Cette cadence peut sinterpr eter comme une p eriode d echantillonnage si on consid` ere que le proc ed e ( elevage) est en r ealit e continu (les vaches existent entre 2 mesures). La notion d echantillonnage correspond au choix de compter les vaches une fois par an. 1. Etablir les equations r ecurrentes de ce syst` eme. 2. En d eduire la fonction de transfert H (z ) = la sortie du syst` eme.
Y (z ) U (z )

et l equation r ecurrente qui relie uniquement l entr ee et

3. Calculer les p oles de la transmittance. Le syst` eme est-il stable ? 4. On consid` ere une loi de commande statique telle que : uk = K (Kc yc yk ). Faire le sch ema fonctionnel et calculer la transmittance en boucle ferm ee G(z ) =
Y (z ) Yc (z ) .

Le gain Kc (gain de pr ecommande) sert ` a r egler le gain statique du syst` eme boucl e. On souhaite un gain statique egal ` a 1, exprimer Kc en fonction de K . Etudier la stabilit e 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); >> rltool(h) % d efinition de la fonction de transfert % lieu dEvans

Retrouver sur ce lieu le domaine des valeurs de K assurant la stabilit e. Observer les r eponses ` a un echelon de ce syst` eme pour des valeurs de K correspondant aux di erents modes. Quelle est la valeur de K qui vous semble la plus satisfaisante. 6. Reprendre la simulation avec Simulink en consid erant que la consigne x ee par l eleveur est davoir un cheptel de 30 vaches (yc =30) . V erier la valeur du gain Kc calcul e 5, observer l evolution du troupeau et des achats ou ventes de b etail par l eleveur.

B.3. TD N3 : ASSERVISSEMENT NUMERIQUE DE VITESSE

97

B.3

TD n3 : Asservissement num erique de vitesse

Soit lasservissement num erique de vitesse etudi e en TP :

Mod elisation du syst` eme


Soit A le gain daction P et B le gain daction I. Donner le sch ema fonctionnel de cette r egulation Donner l equation de r ecurrence liant la commande uk ` a la consigne wk et ` a la mesure yk . On mesure = 15ms et le produit km kg = 0.3. Quelle p eriode d echantillonnage Te peut-on choisir ? On choisit Te = 10 ms. Calculer la transmittance en z de lensemble convertisseurs, ampli, moteur, g en eratrice tachym etrique.

R egulation proportionnelle
(A=0, B=0) Etudier la stabilit e de cette r egulation Calculer en fonction de A la r eponse de cette r egulation ` a un echelon de consigne. Quelles sont les di erents types de r eponse que lon peut obtenir. Pour quelles valeurs de A a-t-on une r eponse sans d epassement ? Calculer de 2 mani` eres la valeur du gain statique et de lerreur statique.

R egulation proportionnelle et int egrale


D eterminer le domaine de stabilit e 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) d es la n de la premi` ere p eriode dhorloge (r eponse en 1 coup) ?

98

ANNEXE B. TRAVAUX DIRIGES

B.4

TD n4 : Etude dun four electrique

Soit un four electrique. Autour dun point de fonctionnement, la transmittance liant la variation de temp erature s ` a la variation de tension de commande U est de la forme : G(p) = s(p) Ke10p = U (p) 1 + 100p

Ce four est command e par calculateur selon le sch ema fonctionnel :

1. On choisit une p eriode d echantillonnage Te =10 secondes. Justier ce choix. Montrez que la transmittance H (z ) du syst` eme echantillonn e-bloqu e dentr ee E (z ) et sortie S (z ) est de la forme : S (z ) K (1 a) H (z ) = = E (z ) z (z a) 2. On utilise un r egulateur 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 stabilit e du syst` eme en boucle ferm ee en fonction de A. Montrer quil faut A < 0.25 pour avoir une r eponse sans d epassement. Pour A = 0.25 calculer la r eponse du syst` eme ` a un echelon unit e. Calculer les 10 premi` eres valeurs de cette r eponse et en d eduire le temps de r eponse ` a 5%.

3. On souhaite am eliorer la rapidit e de la r eponse indicielle. Pour cela on choisit maintenant un r egulateur de la forme : C (z ) = A(z a)(z ) K (1 a)(z 1)(z )

Calculer A, et pour avoir une r eponse en 2 p eriodes d echantillonnage. 4. Peut-on trouver un correcteur donnant une r eponse en une p eriode ?

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 di erentes m ethodes (2 s eances)

Etude dune r egulation continue


Lasservissement de position est d ecrit par le mod` ele :

La perturbation Vp appliqu ee sur la commande du moteur est equivalente ` a la perturbation due ` a la variation du couple r esistant sur le moteur. R egulation proportionnelle C (p) = A 1. Exprimer la sortie Vs ainsi que l ecart en fonction de Vc et Vp . 2. On souhaite que lerreur permanente soit inf erieure ` a 10% de lamplitude de la perturbation . Quelle valeur faut-il donner ` a A? Quel est dans ce cas le facteur damortissement ? 3. D eterminer la marge de phase (par le calcul ou en utilisant Matlab) 4. En utilisant Matlab/Simulink tracer la r eponse ` a un echelon de consigne et un echelon de perturbation retard e de 20 ms. Correcteur ` a avance de phase On remplace A par un correcteur de transmittance C (p) = A 1 + Tp avec a < 1 1 + aT p

On utilise la valeur de A calcul ee pr ec edement pour conserver la pr ecision de lasservissement, mais on souhaite une marge de phase sup erieure ` a 70 pour avoir un bon amortissement. On choisit T = 1/60 et a = 1/4. 1. V erier avec Matlab que la condition sur la marge de phase est bien v eri ee. 2. En utilisant Matlab/Simulink tracer la r eponse ` a un echelon de consigne et un echelon de perturbation retard e de 20 ms.

Commande par calculateur


On souhaite r ealiser lasservissement de position en utilisant un calculateur. 1. Donner le nouveau sch ema fonctionnel. 2. Dans quel domaine de valeur faut-il choisir la p eriode d echantillonnage ? 3. On choisit une p eriode d echantillonnage Te =0.005 s. Calculer la transmittance G(z ) de lensemble convertisseurs ampli moteur capteur .

100 Transposition dun correcteur analogique

ANNEXE B. TRAVAUX DIRIGES

1. Donner la transmittance du correcteur echantillonn e obtenu en discr etisant le correcteur ` a avance de phase analogique de 3 mani` eres di erentes : discr etisation avant, discr etisation arri` ere, m ethode de Tustin 2. Dans ces 3 cas, tracer avec Matlab/Simulink la r eponse ` a un echelon de consigne et un echelon de perturbation retard e de 20 ms. Comparer ` a la r egulation continue. Rappel : Discr etisation avant Discr etisation arri` ere Approximation de Tustin R egulation proportionnelle On choisit un correcteur C (z ) = K 1. Etudier la stabilit e de cet asservissement. 2. Retrouver la condition de stabilit e en tra cant, avec Matlab, le lieu dEvans. 3. En utilisant ce lieu d eterminer K pour avoir le meilleur temps de r eponse. 4. Quelle est alors la valeur de lerreur permanente en r eponse ` a un echelon de consigne et ` a un echelon de perturbation sur la commande. D etermination dun correcteur par la m ethode du mod` ele
eme ordre de transmittance : On souhaite que lasservissement se comporte comme un mod` ele du 2`

: : :

p= p= p=

z 1 Te z 1 zTe 2 z 1 Te z +1

M (p) =

1 (1 + 0.005p)2

1. Calculer la transmittance M (z ) correspondant ` a M (p) pr ec ed e dun bloqueur dordre 0. 2. D eterminer un correcteur tel que la transmittance en boucle ferm ee de lasservissement num erique de position soit equivalente ` a celle du mod` ele (pour simplier les calculs certains p oles et z eros du correcteurs pourront compenser les p oles et z eros stables de G(z )). 3. Tracer avec Matlab/Simulink la r eponse ` a un echelon de consigne et un echelon de perturbation retard e 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 r eponse ` a un echelon de consigne et un echelon de perturbation retard e de 20 ms. Comparer les r esultats obtenus par les di erentes m ethodes

B.6. TD N7 : METHODE DE ZDAN

101

B.6

TD n7 : M ethode de Zdan
1 p(1 + p)

Le processus ` a commander a pour transmittance op erationnelle G(p) d enie par : G(p) =

D eterminer la valeur limite Tmax de la p eriode d echantillonnage. En prenant Te =1 seconde, faire la synth` ese du correcteur num erique C (z ) de mani` ere ` a ce que : Lerreur permanente du syst` eme boucl e, vis-` a-vis dune entr ee en rampe soit nulle. Le syst` eme corrig e, boucl e, poss` ede une dynamique identique ` a celle dun syst` eme continu du second ordre de pulsation n = 0.2 rad.s1 et de facteur damortissement = 0.6. Que peut-on pr evoir quant au d epassement relatif ` a la r eponse indicielle ? Quelle est la valeur de lerreur dordre 2 en r egime permanent ?

Comparaison des synth` eses ` a temps d etablissement ni.


La transmittance en z du processus ` a contr oler est : G(z ) = 0.025z 1 (1 + 0.816z 1 ) (1 0.952z 1 )(1 0.528z 1 )

Quelle est la di erence fondamentale entre r eponse pile et r eponse ` a temps d etablissement minimal ? Faites la synth` ese dans les deux cas. Comparez les points suivants : la valeur de lerreur en r egime permanent, la valeur maximum de la commande, le temps d etablissement.

102

ANNEXE B. TRAVAUX DIRIGES

B.7

TD n8 : Synth` ese dun r egulateur RST


dy 1 d2 y 3 du = aby (t) + (a + b) + abu(t) + ( b 2a) dt2 dt 2 2 dt

On souhaite contr oler ` a laide dun calculateur num erique le proc ed e continu d ecrit par l equation di erentielle :

avec a=ln(2) et b=ln(3) La loi de commande uk est appliqu ee au syst` eme ` a laide dun convertisseur num erique/analogique mod elis e par un bloqueur dordre z ero ; un convertisseur analogique/num erique mod elis e comme un echantillonneur, est plac e en sortie (voir gure 1).

Mod elisation
1. Donner la fonction de transfert G(p) =
Y (p) U (p)

du proc ed e continu
Y (z ) U (z )

2. On choisit Te =1s , donner la fonction de transfert G(z ) =

du proc ed e echantillonn e.

R egulation proportionnelle

1. D eterminer en utilisant le crit` ere de Jury, les valeurs de K qui stabilisent le syst` eme.

R egulateur RST
On souhaite que le syst` eme se comporte comme un syst` eme du 1 ordre de gain statique unit e et de constante de temps = 2s. On souhaite egalement une erreur statique nulle en r eponse ` a un echelon de perturbation sur lentr ee de commande U . 1. Calculer le r egulateur RST qui satisfait ces conditions (voir principe du calcul page suivante). 2. A laide de simulink tracer la r eponse ` a un echelon unitaire de consigne et un echelon de perturbation damplitude 0.1 intervenant ` a t = 10s.

` B.7. TD N8 : SYNTHESE DUN REGULATEUR RST

103

Principe de calcul dun R egulateur RST On utilise une structure qui agit di eremment sur la consigne et sur la sortie : H (z ) = B (z ) T (z ) A(z ) S (z )

R (z ) S (z ) Ou R, S, T sont des polyn omes en z qui doivent respecter les contraintes : deg(S ) deg(R) deg(S ) deg(T ) pour que le r egulateur soit r ealisable. On souhaite que le syst` eme corrig e se comporte comme le mod` ele : M (z ) = Bm ( z ) Am (z )

Le calcul de la transmittance en boucle ferm ee conduit ` a la relation : BT Bm (z ) = AS + BR Am (z ) (B.1)

Cette relation conditionne les choix suivants : les z eros de B (z ) qui ne sont pas des z eros de Bm (z ) doivent etre des z eros de AS + BR. Le syst` eme compens e devant etre stable, les z eros de B (z )dont le module est sup erieur ` a 1, doivent etre des z eros de Bm (z ). Nous noterons B (z ) = Bi (z )Bs (z ) o` u Bi (z ) contient les z eros instables et Bs (z ) contient les z eros stables de B (z ). Nous noterons Bm (z ) = Bi (z )Bm (z ) . les z eros de Bs (z ) doivent etre des z eros de AS + BR donc n ecessairement des z eros de S(z). Pour assurer la pr ecision on peut introduire un certain nombre dint egrateurs. De ces di erentes conditions on peut d eduire :S (z ) = (z 1) Bs (z )S (z ) L egalit e (B.1) devient : Bi Bs T Bi Bm = A(z 1) Bs S (z ) + Bi Bs R Am soit : A(z T 1) S ( z ) + Bi R = Bm Am

(B.2)

(B.3)

Introduisons le polyn ome P(z) nomm e polyn ome dobservation tel que T = Bm P L equation du syst` eme compens e devient : P Am = A(z 1) S + Bi R ou encore : Bs P Am = AS + BR On peut montrer quune solution de cette equation doit v erier les in egalit es : deg(A ) deg(B ) deg(A) deg(B ) m m deg(P ) 2 deg(A) deg(A ) deg(B ) + 1
m s

104

ANNEXE B. TRAVAUX DIRIGES

Annexe C

Tutorial Matlab
Ce tutorial est honteusement vol e ` a Bruno Jouvencel Professeur ` a luniversit e de Montpellier. Vous trouverez dautres documents de qualit e sur sa page personnelle : http://www.lirmm.fr/~jouvence/.

105

jouvencel

INTRODUCTION A MATLAB
ENVIRONNEMENT MATLAB
Matlab est un environnement de calcul numrique matriciel. Aprs le lancement de Matlab, une fentre de commande apparat qui permet l'utilisateur de taper une commande quelconque obissant la syntaxe de Matlab. :

">>" symbole/prompt apparaissant gauche et indiquant que l'interprteur est prt recevoir une commande. Variables Les variables dfinies par l'utilisateur sont ranges dans l'espace mmoire de Matlab, ces variables sont dites globales. Le "Workspace browser" permet d'observer les variables existantes. Les commandes who ou whos permettent d'obtenir les mmes informations. Pour lancer le Workspace browser, icne : Rpertoires de travail Matlab permet d'ouvrir, de crer, de modifier etc des fichiers. Matlab sauvegarde tous les fichiers crs dans le rpertoire par dfaut qu'il est possible de modifier l'aide de la commande "cd" ou en lanant le "path browser" l'aide de l'icne suivant : La fentre suivante apparat , il est alors possible de changer le rpertoire courant. Quand une commande est taper, matlab recherche celle-ci dans l'ensemble des rpertoires dont la liste apparat dans la fentre "path", on peut ajouter ou supprimer un rpertoire de son choix.

Introduction Matlab

jouvencel

Aide / Help L'icne permet d'accder l'aide en ligne, la fentre d'aide est ouverte

Les commandes suivantes >> help >> helpwin (la fentre ci-contre) >> helpdesk (manuel complet avec Acrobat Reader) Toute commande Matlab possde une entte fournissant des informations sur la commande et sa syntaxe. la commande : >>lookfor mot-cl permet d'avoir la liste des commandes ont l'entte contient mot-cl Autres outils Editeur : accs par FileNewM_file ou icne Dbugger : intgrer l'diteur Array_editor : dans le Workspace Browser, double clic sur une variable. Simulink : environnement graphique de simulation de systmes dynamique : Interprteur >> commande rsultat affichage du rsultat >> interprteur disponible >> commande ; le point virgule provoque l'absence de l'affichage du rsultat >> interprteur disponible Format d'affichage Les rsultats numriques sont affichs avec le format dfini par dfaut et redfinissable par l'utilisateur. File Preferences Commentaires Le symbole % introduit un commentaire, celui-ci n'est pas valu par l'interprteur.

Introduction Matlab

jouvencel

DONNEES
Vecteurs Vecteur ligne >> v=[1 2 3 4 5] ; % vecteur 1*5 >> v=[1:5]; % rsultat identique la ligne prcdente (incrment de 1 par dfaut) >> v= [1:1:5]; % idem incrment spcifi Vecteur transpos >> v=[1 2 3 4 5] '; % vecteur 5*1 >> v=[1:5]'; >> v= [1:1:5]'; >> w=v'; >> v1 =[borne inf:increment:borne sup]; >> v1(i) ; %ime lment ATTENTION le premier est i=1 >> length(v) %dimension du vecteur Matrices >>A=[1 2 3; 4 5 6;7 8 9; 10 11 12]; %matrice rectangle 4*3 >>B=[1 2 3] %matrice 3*1 >> size(A); %dimension de la matrice >>A(i,j); % lment ligne i colonne j >>A(:,n); % nime colonne >>A(p,:); % pime ligne >>A(i:j,:); % sous matrice des lignes i j >>A(i:j,k:l); % sous matrice des lignes i j colonnes k l Suppression des donnes >> clear >> clear A % supprime toutes les variables % supprime la variable A

Sauvegarde des donnes save nom_fichier A B C % sauve les variables A B et C dans le fichier nom_fichier load nom_fichier % rcupration des donnes

Introduction Matlab

jouvencel

SCRIPT
M_files : est un fichier avec l'extension .m qui contient du code Matlab. Script : contient des commandes Matlab function : procdure arguments valeur retourne action sur utilit function dfinition accs par lookfor accs par help corps function f = fact(n) %fact factorielle % fact(n) retourne n! f=prod(1:n); Script Non Non var globales actions rptes function Oui oui variables locales et globales Extension matlab

Plusieurs variables d'entre / sortie function [a,b]= nomFonction(c,d,e)

Introduction Matlab

jouvencel

GRAPHISME
Tout trac avec Matlab, s'effectue dans une fentre graphique que l'on cre par la commande figure ou quand on excute une commande de dessin (plot ). On peut crer autant de fentres graphiques que l'on veut celles-ci tant numrotes de 1 N au fur et mesure de leur cration. La fentre graphique par dfaut et la dernire qui a t cre par figure ou la dernire active par une commande de dessin ou slectionne avec la souris. figure % cre une fentre graphique qui devient la figure par dfaut, figure(n) % cre une fentre graphique numro n qui devient la fentre active

Fonctions plot t = 0:0.1:5; x = 2*sin(2*pi*t); plot(t,x); % dessin de x en fonction de t, interpolation linaire entre les points. plot(t,x,'-') % idem avec style - - plot(t,x,'b-') % idem style --- couleur bleue plot(t,x,'o') % idem pas d'interpolation, chaque point marqu par o Un plot provoque l'effacement du dessin prcdent (par dfaut) on peut superposer des dessins en mettant le commutateur hold on hold on % dsactivation par hold off title('Titre de la figure'); xlabel('commentaire sur l'axe x'); ylabel('idem axe y'); axis([xmin,xmax,ymin,ymax]); % dfinit l'chelle des axes legend('trac 1','trac 2',.) ; %chaque trac est associ une lgende grid % affiche une grille text(x,y,'texte') % place texte la position x y dans la fentre gtext('texte") % place texte la position dfinie avec la souris Une fentre graphique peut tre subdivise en plusieurs tracs, subplot(n,p,q)% subdivision en n*q dessin et slectionne qime

Introduction Matlab

jouvencel

SIMULINK
LANCEMENT DE SIMULINK:
Dans la fentre de commande de Matlab: Cliquer sur cet icne pour lancer Simulink

La fentre suivante contenant les librairies de simulink, apparat ainsi qu'une fentre de travail. librairies de simulink

fentre de travail

Construction d'un modle dans la fentre de travail Mthode de placement d'un composant on slectionne une librairie de simulink : double clic pour l'ouvrir (exemple librairie : Linear) on slectionne un composant (exemple Sum): on maintient l'appui sur le bouton gauche de la souris on fait glisser l'lment dans la fentre de travail on relche le bouton.

Introduction Matlab

jouvencel

Exercice : construire l'environnement dcrit dans la figure suivante, on indique au-dessus de chaque lment, la librairie d'origine.

Ralisation des connexions Mthode : On slectionne avec la souris, le symbole > situ sur un composant On maintient l'appui sur le bouton et on tire le lien vers un symbole > On peut relcher le bouton pour changer de direction. On vrifie que la connexion est correcte par le fait que la flche est accentue Paramtrage des composants Mthode On effectue un double clic sur le composant exemple Mux, la fentre de paramtrage s'ouvre, On tape les valeurs dsires : ici la valeur 2 pour indiquer 2 entres, On ferme cette fentre par Close, les nouvelles valeurs sont prises en compte. Exercice paramtrer le gnrateur sinusodal avec une amplitude de 2 et une frquence de 0.5 Hz le gain sera rgl 0.5. rgler la frquence de dpart du chirp 0.01 hz Dsignation des composants Chaque composant possde un nom par dfaut exemple Gain, on peut modifier ce nom. Mthode clic sur le nom on tape un nouveau nom

Introduction Matlab

jouvencel

Marquage des liens ou connexions Mthode Double clic sur le lien que l'on veut marquer, une fentre apparat qui vous indique le bon droulement de l'opration. on tape un nom exemple sin, Ritrer l'opration pour le chirp

Propagation des marquages Mthode la sortie d'un composant : double clic sur le lien, taper le symbole < puis cliquer hors de cette fentre, taper Ctrl D (contrle D) Renvoi d'un signal et rcupration Afin de ne pas surcharger le dessin, on peut utiliser 2 composants situs dans la librairie connections qui permettent d'effectuer une transition sans fil. Ces 2 composants s'appellent GOTO et FROM Le "tag" possde un nom que l'on peut modifier

Chaque tag doit tre modifi un par un, attention aux correspondances.

Introduction Matlab

jouvencel

Personnalisation de la fentre de travail Il est possible de redimensionner chaque composant on le slectionne, on saisit une poigne, on tire ou on diminue.

Dans le menu Format de la fentre on dispose d'autres commandes (il faut d'abord slectionner un composant).

Font permet de choisir le type de caractres Flip name : de placer le nom au dessus /en dessous Hide name de cacher le nom Flip block de retourner le bloc Rotate block de le tourner de 90 Foreground color de slectionner une couleur pour le texte Background color : de slectionner une couleur pour le bloc

On peut de mme personnaliser les liens ou connexions : Wide Vector Lines permet de dimensionner l'paisseur des liens en fonction du nombre de signaux, Line Width permet d'obtenir l'indication du nombre de signaux sur les liens Ctrl D permet de mettre jour tout ceci en cas de modification.

Modifications Modification des composants On peut : ajouter un composant tout moment, supprimer un composant en le slectionnant et touche Suppr, Modifier la position d'un composant en le slectionnant on laisse la touche gauche de la souris appuye et on le dplace. dupliquer un composant : on le slectionne, on appuie sur la touche Ctrl on faisant glisser le composant. 9 Introduction Matlab

jouvencel

On peut revenir en arrire de toute opration en utilisant l'icne Undo


start

undo

Modification des liens

droulement simulation

en utilisant les poignes situes sur le lien (une fois slectionner celles-ci apparaissent), en appuyant sur le bouton droit de la souris on ajoute un nouveau dpart, shift et bouton gauche permet d'ajouter de nouvelles poignes de changement de direction.

nouveau dpart

nouvelle poigne

SIMULATION
Paramtrage de la simulation La simulation utilise un certain nombre de paramtres : menu simulation parameters instant de dpart ( 0 par dfaut) instant d'arrt (mettre 20s) On tudiera ultrieurement les autres paramtres. Faire close ce qui valide les modifications. Lancement de la simulation menu simulation start ou ctrl T ou icne > Une sonnerie indique la fin de la simulation

10

Introduction Matlab

jouvencel

Exercice lancer la simulation aprs avoir ouvert le scope

On peut effectuer des zooms avant/arrire avec les 3 premiers icnes ajuster les axes avec le 4 sauver les donnes avec le 5 rgler le scope avec le 6 imprimer avec le dernier

LIEN ENTRE SIMULINK ET MATLAB


Pour diverses oprations, il est intressant de disposer des signaux dans l'environnement de matlab ou de rcuprer des signaux dfinis dans matlab. Envoi de signaux vers l'environnement de matlab Les blocs ToWorkspace de la librairie Sinks permettent de diriger les signaux vers l'environnement de matlab dans l'exemple trait jusqu' prsent ceci est ralis avec le bloc nomm "signaux" sur lequel arrive le tag "de" Exercice : Dans la fentre de commande matlab, taper plot(tout,signaux) signaux est une variable contenant les signaux gnrs tout est une variable que l'on verra plus tard Rcupration de signaux issus de matlab Le bloc FromWorkspace de la librairie Source permet de dfinir des signaux dans l'environnement Matlab et de les utiliser dans l'environnement de Simulink. Exemple On dfinit la variable T=0:0.01:20; ainsi que le signal dsir U=sin(2*pi*t^3); Attention les vecteurs T et U doivent tre des vecteurs colonnes.

11

Introduction Matlab

jouvencel

SIMULATION D'UN SYSTEME NON LINEAIRE


Construction d'un modle non linaire Exemple :
& 1 = x 2 + u cos( x1 ) x &2 =u x y = x1

On commence par crer le systme l'aide du bloc Fcn de la librairie NonLinear L'entre de ce bloc est nomme u et peut-tre un vecteur Les composantes sont dsignes par u(1) u(2) etc
& 1 s'crit : u(3)+u(1)*cos(u(2)) la fonction correspondant x si les entres sont respectivement u,x1 et x2 ceci est programm dans la fentre de dfinition de Fcn

La construction du systme cidessus, utilise des intgrateurs (librairie linear) et des multiplexeurs (librairie Connexions) comme sur la figure suivante.

On peut alors effectuer une simulation du systme, on voit que celui-ci diverge, le contrle de ce systme sera vu ultrieurement dans le chapitre commande non linaire. Cration d'un sous systme On va encapsuler le systme prcdent dans un sous systme, cette mthode permet de rendre plus lisible un schma et de paramtrer le sous-systme. Mthode on slectionne tous les lments qui formeront le sous-systme On tape Ctrl G (ou EditCreate SubSystem)

12

Introduction Matlab

jouvencel

On obtient : un bloc nomm Subsystem que l'on peut renommer, les entres et sorties peuvent tre elle aussi renommes l'intrieur du bloc (double clic pour ouvrir le bloc). Des ports d'entre et de sortie on t rajouts automatiquement, on peut en ajouter par exemple le port correspondant x2

On va introduire un gain suivant x2 d'une valeur dsigne par g edit Mask Subsystem initialization

En cliquant maintenant sur le soussystme, on obtient la fentre suivante, dans laquelle on fixe une valeur de g

On prend en compte cette valeur pour la drive de x2 par exemple par editLook under Mask

13

Introduction Matlab

jouvencel

MODELISATION DUN SYSTEME LINEAIRE MONOVARIABLE ET SIMULATION


But : Construire un modle continu en reprsentation externe et le simuler. Dfinition du systme : H ( p ) = Format : Une fonction de transfert monovariable peut tre reprsente Soit par le rapport de 2 polynmes en p (ou s). Dans Matlab, un polynme se reprsente par un vecteur de paramtres suivant les puissances dcroissantes de p par exemple : le dnominateur de lexemple ci-dessus se reprsente par le vecteur : [1 0.2 1] Soit par une reprsentation par zros et ples Matlab utilise un modle LTI pour la dfinition de systmes

1 p + 0.2 p + 1
2

cration dun modle LTI {Linear Time Invariant} Dfinir le numrateur exemple : >num = 1 ; Dfinir le dnominateur exemple >den = [1 0.2 1] ; Construire le systme LTI exemple > sys1= tf(num,den) ; Faire afficher sys1 en tapant le nom puis sur la touche Return Vecteur dfinissant les zros exemple : > zz=[] %aucun Vecteur dfinissant les ples exemple : > pp=[ -0.1000 + 0.9950i -0.1000-0.9950i] Gain exemple > k=1 Construire le systme : > sys2=zpk(zz,pp,k)

Ou

Les proprits dun modle LTI sont obtenues en tapant : > get(sys1)

14

Introduction Matlab

jouvencel

On obtient : num = {[0 0 1]} den = {[1 0.2 1]} Variable = 's' choix possible {continu : {s p} chantillonn : {z z-1 q}} Ts = 0 0 / systme continu sinon la priode dchantillonnage Td = 0 0 ou la valeur dun retard sur lentre InputName = {''} on peut donner un nom lentre OutputName = {''}Idem pour la sortie Notes = {} UserData = [] modification des champs laide de la fonction set >set(sys,'Variable','p') Transfer function: 1 --------------p^2 + 0.2 p + 1 analyse du systme Diagramme de bode > bode(sys1) Diagramme de Nyquist > nyquist(sys1) Diagramme de Nichols > nichols(sys1) Trac des ples et des zros > pzmap(sys1) Lieu des ples > rlocus(sys1) Note : aprs chacune de ces commandes, la commande grid permet dobtenir un maillage adapt au type de diagramme. Calcul des zros, des ples et du gain >[Z,P,K]=zpkdata(sys1,'v') Ples seuls >pole(sys1) ou eig(sys1) Calcul des marges de phase et de gain >margin(sys1) Simulation Rponse impulsionnelle >impulse(sys1) Rponse un chelon > step(sys1) Rponse une entre quelconque : Il faut dfinir la variable temporelle t=0 :0.01 :10 ; Il faut dfinir lentre u=sin(t) On simule > lsim(sys1,u,t) Interface de travail avec les modle LTI Matlab offre un environnement de travail que lon obtient en tapant >ltiview Utilisation de simulink Le modle LTI peut-tre utilis dans lenvironnement de simulink Ouvrir successivement : Blocksets&toolsboxes LTI /exer5/aexer5

15

Introduction Matlab

jouvencel

Faire glisser dans la fentre de travail le bloc lti Taper le nom sys1 aprs un double clic sur le bloc. Simuler le systme.

Tout ce qui prcde permet de travailler pratiquement indpendamment de simulink, dans la suite, nous allons nous servir uniquement de simulink qui permet dinterconnecter facilement des systmes. Interconnexion de systmes But : dfinir un correcteur avance de phase et corriger le systme du stage prcdent {aexer6/exer6} Rappel : calcul dun correcteur avance de phase (pendant la sance) calculer le correcteur construire lenvironnement suivant qui permet de comparer sans et avec correcteur /exer6/

Calculer le gain statique du systme

Discrtisation du correcteur Rappel : cf. cours /exer7/aexer7 Extraire le numrateur et le dnominateur de sysc le correcteur continu Utiliser la fonction c2d avec la mthode de Tustin pour transforme le correcteur continu en correcteur discret avec une priode dchantillonnage de 0.1s, Simuler ce correcteur discret et comparer le au rsultats obtenus avec le correcteur continu.

16

Introduction Matlab

jouvencel

Complments Le correcteur avance de phase calcul prcdemment, possde un gain statique que lon peut dterminer de la manire suivante : /aexer8/exer8 Calcul du systme en boucle ouverte > sysbo = sysc*sys Calcul du systme en boucle ferme > sysbf = feedback(sysbo,1) Attention le dnominateur nest pas normalis Gain statique : Gs = sysbf(0) Si on dsire ramener le gain statique 1 il faut ajouter un amplificateur de 1/Gs. Le correcteur devient sysc*1/Gs [nu,de]=tfdata(sysbf,'v'); gs=de(length(de)); nu=nu./gs; de=de./gs; sysbf=2*tf(nu,de); [mg,mp,wg,wp]=margin(sysbf); %erreur mpd-mp On vrifie dans ce cas que la marge de phase diminue, pour modifier la marge de phase, on recalcule le correcteur en prenant en compte cette cart.

MODELISATION DUN SYSTEME LINEAIRE MULTIVARIABLE ET SIMULATION


Rappel sur la reprsentation dtat (cf . stage) Un systme dynamique linaire multivariable se met sous la forme suivante

17

Introduction Matlab

jouvencel

& (t ) = AX (t ) + Bu (t ) X s (t ) = Cu (t ) + Du (t )

ou

X k +1 = FX k + Gu k s k = CX k + Du k

X(t) (Xk) A (F) U(t) (uk) B (G) S(t) (sk) C D

est le vecteur dtat de dimension n la matrice dvolution ou dtat de dimension n n la commande de dimension r la matrice dentre de dimension n r la sortie de dimension m la matrice dobservation de dimension m n la matrice de couplage entre/sortie de dimension m r

Cration dun modle LTI en reprsentation dtat : ss Les proprits sobtiennent et se modifient par get et set Sous simulink, utiliser le bloc StateSpace de la librairie Linear (ou Discret )

Exemple : pendule invers

Figure 1: Chariot et pendule.


& ), le dispositif pendulaire est Un chariot [C] se dplace sur un rail (position r, vitesse r constitu d'une tige [L] l'extrmit de laquelle, est monte une masse [M]. La liaison entre le chariot et le pendule est une rotode non actionne. Les quations diffrentielles rgissant le mouvement du chariot et celui du pendule sont donnes par les quations suivantes :

&& + KQ & - M l g sin(Q) + M l & &cos(Q) = 0 JQ 1 s 1 s r


&& cos(Q) - Q & 2 sin(Q)] = f & + fR r & + M 1 l s [Q M& r

avec : r: f : 18 la position du chariot (m) la force horizontale applique au chariot (en N) Introduction Matlab

jouvencel

q: M1 : M0 : M: ls : J K, fR : g:

la position angulaire du pendule (en rd) la masse du pendule (Kg) la masse du chariot la masse totale du chariot et du pendule distance au chariot, du centre de gravit du pendule (m) Inertie (kg m2) coefficients de frottement visqueux du pendule et du chariot gravit.

Mise en quation voir le document en annexe Reprsentation dtat du systme linaris et normalis:
0 & = 0 X 0 0 1 Y= 0 0 0 0 0 1 X + 0 u - 6.1347 - 0.1289 - 1.9148 0.0008 21.4964 26.3388 - 0.1362 84.3862 0 0 0 0 0 u 1 0 0 X + 0 1 0 0 0 - 1.9503 0

Simulation du systme stabilis (cor_lin1)

1 Calcul de lobservateur 2 Calcul du retour dtat 3 Calcul du gain statique 4 Construction de lenvironnement 5 Simulation

Figure 2 Schma du systme stabilis Simuler le fonctionnement du systme Le systme est-il stabilis ? Vrifier le bon fonctionnement de l'observateur Exercer une forte variation de position au chariot, le modle est-il raliste ?

Etape 2 : Asservissement de la position du chariot (cor_lin2)

19

Introduction Matlab

jouvencel

Ajout dune correction intgrale sur la position du chariot

Etape 3 : Limitation de la commande (cor_lin3) Ajout dune saturation sur lentre du pendule

Etape 4 : Simulation avec le modle non linaire (cor_nl) On remplace le modle linaris par le modle non linaire du pendule

20

Introduction Matlab

126

ANNEXE C. TUTORIAL MATLAB

Annexe D

Annales
ere ann 1` ee Juin 2006

Devoir personnel
Tous documents autoris es

Ce devoir est l etude dun syst` eme instable quil faut rendre tr` es rapide Vous avez le choix des armes, Matlab, Mathematica, Maple, bin ome ... Mais comprenez ce que vous faites ! R edaction manuscrite obligatoire.

Continu
0.2416s + 2.133 0.6419s 0.03555

La fonction de transfert G(s) est telle que : G(p) =

s2

avec s : op erateur de Laplace (notation Matlab)

1.1

En boucle ouverte

1. Ce syst` eme est-il stable ? 2. Tracer dans le plan complexe les p oles et les z eros du syst` eme. 3. Calculez la r eponse indicielle du syst` eme en boucle ouverte.

1.2

En boucle ferm ee

1. Le correcteur etant un gain pur, montrer quil nexiste pas de gain tel que le syst` eme soit stable. 2. Comment peut-on le v erier avec Matlab ?

2
2.1

Echantillonn e
Echantillonnage

On choisit d echantillonner le syst` eme ` a une fr equence de 1 Hz. 1. Que pensez vous de ce choix ? 2. Calculez la fonction de transfert en z de ce syst` eme en y introduisant un bloqueur dordre 0. 127

128

ANNEXE D. ANNALES

2.2

Correcteur en temps d etablissement minimal

1. Calculez le correcteur s erie qui minimise le temps d etablissement pour une entr ee en echelon. 2. Le correcteur obtenu est-il en temps d etablissement minimal ou en temps d etablissement minimal absolu. 3. En utilisant le crit` ere de Jury, v erier que le syst` eme boucl e est stable. 4. Calculer lerreur statique et lerreur de tra nage (respectivement ` a une entr ee en echelon puis en rampe) 5. D eterminer l equation r ecurrente de ce correcteur.

2.3

Correcteur ` a r eponse pile

1. Calculez le correcteur s erie qui donne une r eponse pile pour une entr ee en echelon. 2. Rappelez bri` evement le point commun avec le correcteur pr ec edent et la di erence fondamentale. 3. En utilisant le crit` ere de Jury, v erier que le syst` eme boucl e est stable. 4. Calculer lerreur statique et lerreur de tra nage (respectivement ` a un entr ee en echelon puis en rampe) 5. D eterminer l equation r ecurrente de ce correcteur.

2.4

Comparaison

1. Comparez les deux correcteur pr ec edents en fonction de crit` eres que je vous laisse appr ecier.

JUIN 2006 ere ann 1` ee Juin 2006

129

Examen dautomatique
Tous documents autoris es, dur ee : 3h

Cet examen se d ecompose en quatre parties ind ependantes, le bar` eme est purement indicatif. Conseil : limitez la pr ecision de vos r esultats ` a 103 .

Exercice 1 (4 pts, 30 mn)

La fonction de transfert G(z ) est telle que : G(z ) = (1 2z 1 )(1 + 0.5z 1 )(1 0.5z 1 ) (1 + 1.5z 1 0.81z 2 1.215z 3 )

1. En utilisant le crit` ere de Jury, d eterminez si le syst` eme est stable en boucle ouverte. 2. Lun de p oles de G(z ) est en 0.9, d eterminez les autres p oles du syst` eme. On choisit un correcteur de la forme : C (z ) = K (1 az 1 )(1 z 1 ) (1 bz 1 )(1 z 1 )

3. Choisissez a et b de fa con ` a compenser respectivement un p ole et un z ero du syst` eme. Une explication claire est demand ee. 4. Choisissez pour avoir une erreur statique nulle. 5. Choisissez K et pour xer une dynamique convenable. 6. Donnez l equation r ecurrente du correcteur.

Exercice 2 (5 pts, 30 mn)


p1 (p + 1)(p + 2)

La fonction de transfert G(p) est telle que : G(p) =

1. Lobjectif etant de rendre le syst` eme environ 3 fois plus rapide en boucle ferm ee quen boucle ouverte, proposez une p eriode d echantillonnage. 2. Quel que soit le r esultat de la question pr ec edente, calculez G(z ) la fonction de transfert du syst` eme echantillonn e pr ec ed e dun bloqueur dordre 0 en prenant Te = 1s. 3. D eterminez un correcteur par la m ethode de Zdan tel que : le syst` eme pr esente une erreur permanente nulle pour une entr ee en rampe le syst` eme en boucle ferm ee se comporte comme un syst` eme du troisi` eme ordre poss edant 3 p oles en 0.5. Aide : d emarrez la r esolution en prenant 1 (z ) = kc (1 + 1 z 1 ) et 2 (z ) = 1 + 1 z 1 4. V eriez la stabilit e et la causalit e du correcteur obtenu. 5. V eriez que le syst` eme pr esente bien une erreur statique nulle pour une entr ee en echelon. 6. Sans calcul, dites pourquoi les caract eristiques du syst` eme en boucle ferm ee sont assez eloign ees du cahier des charges pos e.

130

ANNEXE D. ANNALES

Exercice 3 (3 pts, 30 mn)


yk+2 0.9yk+1 + 0.2yk = uk yk+1 : : : : pi` eces produites au jour k + 1 pi` eces produites au jour k commande, en pi` eces ` a produire au jour k constante r eelle

La production dune machine est mod elisable par une equation r ecurrente de la forme :

o` u:

yk uk a

1. Calculez H (z ) la transform ee en z du syst` eme d ecrit pr ec edemment. 2. Calculez la r eponse indicielle yh (kTe ) de ce syst` eme. 3. Calculez la r eponse impulsionnelle y (kTe ). Supposons que la commande est de type echelon A U (kTe ), 4. Quelle amplitude A faut-il appliquer pour que l lot produise exactement 1000 pi` eces en 5 jours ?

Probl` eme (8 pts, 1h30)

An d etudier la m ecanique de la rupture de mat eriaux composites, on utilise le m ecanisme suivant. En labsence de frottements, l energie cin etique de la pointe est enti` erement dissip ee dans la propagation de la ssure. La mesure de la vitesse et celle de la longueur de la ssure permettent de comparer di erents mat eriaux composites.

Fig. D.1 Impacteur, sch ema de principe. La vitesse dimpact est fonction de langle initial 0 , donc de la dext erit e de lutilisateur. Pour am eliorer le syst` eme on utilise alors un moteur couple1 plac e sur laxe de rotation qui permet dasservir la vitesse dimpact. Le temps entre le d emarrage et limpact etant tr` es court, il faut utiliser un asservissement tr` es rapide. Au sein du probl` eme les di erentes parties sont largement ind ependantes.

4.1
1 En

Mod elisation
GB : pan-cake motor, moteur electrique ` a courant continu pr esentant un fort couple mais une faible vitesse.

Hyp : La masse est suppos ee ponctuelle et situ ee ` a une distance L de laxe de rotation.

JUIN 2006

131

1. D eterminez l equation di erentielle non lin eaire du mouvement de la tige (t) en fonction des param` etres L, M , g la constante de gravit e terrestre et le couple moteur. 2. En faisant lhypoth` ese, classique, que est petit d eterminez l equation di erentielle lin eaire du mouvement de la pointe. 3. Calculez la transform ee de Laplace de l equation di erentielle pr ec edente en tenant compte des conditions (0) = 0 . initiales (0) = 0 et 4. Calculez alors la fonction de transfert continue du syst` eme (angle du syst` eme vis-` a-vis du couple moteur. G(p) = (p) (p)

5. Dessinez un sch ema bloc faisant appara tre la fonction de transfert G(p), la position initiale 0 apparaissant comme une perturbation. La fonction de transfert du moteur couple est : H (p) = (p) kc = U (p) R + Ls p

U o` u : kc R Ls

: : : : :

Couple moteur tension dinduit contante de couple r esistance dinduit Inductance s erie de linduit

6. Dessinez le sch ema bloc du syst` eme complet (moteur + syst` eme m ecanique et perturbation).

4.2

Commande du couple moteur

On ne sint eresse dans cette partie qu` a lasservissement du couple moteur. Un essai de pompage du courant moteur donne le r esultat indiqu e sur la gure D.2.

Fig. D.2 Ph enom` ene de pompage du courant dinduit : oscillation obtenue pour un gain Kosc = 40 on mesure alors Tosc = 1ms. 1. D eterminez les constantes kp , Ti et Td du correcteur PID donn e ci-apr` es pour asservir le courant dans le moteur. 1 U (p) P ID(p) = = kp (1 + + Td p) (p) Ti p 2. D eduisez-en les constantes kp , Ti , Td et correcteur PID de la forme suivante : P ID(p) = U (p) 1 Td p = kp (1 + + ) (p) Ti p 1 + p

3. Au vu du r esultat pr esent e en gure D.2, calculez une p eriode d echantillonnage correcte pour implanter le correcteur pr ec edent sous forme num erique. Le calcul du correcteur num erique, nest pas demand e mais quelques explications sont les bienvenues !

132

ANNEXE D. ANNALES

4.3

Commande de la vitesse

Dans cette partie, la constante de temps dominante du syst` eme moteur corrig e par le PID pr ec edent est si petite vis-` a-vis des constantes de temps du syst` eme m ecanique que le moteur corrig e par le PID est consid er e comme un gain km . 1. D eterminez un correcteur ` a r eponse pile pour une entr ee en rampe.

4.4

Traitement du signal

Les donn ees de vitesse et position sont enregistr ees sur le calculateur pour un traitement du signal hors ligne. 1. les donn ees, echantillonn ees ` a fe = 1 kHz sont ltr ees avec un ltre num erique de la forme : F (z ) = z+2 (z 0.5)2

Calculez le diagramme de Bode du ltre analogique equivalent et son domaine de validit e.

Applications num eriques


AN : kc = 1; R = 1; Ls = 1; km = 1; L = 1; L1 = 1; M = 1; g = 10

JUIN 2007 ere ann 1` ee Juin 2007

133

Devoir personnel
Ce devoir est l etude dune m ethode de commande un peu particuli` ere dite commande par mod` ele interne. Le principe nest pas dasservir une sortie ` a une consigne mais dasservir la sortie dun syst` eme ` a celle dun mod` ele. Vous avez le choix des armes, Matlab, Mathematica, Maple, bin ome ... Mais comprenez ce que vous faites !

Fig. D.3 Sch ema g en eral dune commande par mod` ele interne.

Questions
k s+1 k s+1

La fonction de transfert Gr (s) est telle que : Gr (s) = et on choisira : F1 (z ) = F2 (z ) = avec s : op erateur de Laplace (notation Matlab) 1. Choisir une p eriode d echantillonnage du syst` eme. 2. Montrer que si k = k il existe un gain H0 tel que lerreur statique soit nulle malgr e la perturbation en echelon. 3. A partir de maintenant, on prendra : Gr (s) = avec F1 (z ) = F2 (z ), H (z ) quelconque 4. Calculer la fonction de transfert globale entr ee sortie du syst` eme. 5. Proposer un cahier des charges plausible pour le syst` eme en boucle ferm ee. 6. Calculer les fonctions de transfert F1 (z ), F2 (z ) et H (z ), en fonction du cahier des charges. 7. Donner lalgorithme de commande. 1 s+2 et Gm (s) = Z 1 2s + 1 et Gm (s) = Z BOZ (p)

z za

et

H (z ) = H0 = cte

134 ere ann 1` ee Juin 2007

ANNEXE D. ANNALES

Examen dautomatique
Tous documents autoris es, dur ee : 2h

Cet examen se d ecompose en six parties presque ind ependantes, le sujet est dicilement faisable dans le temps imparti. Ne perdez pas de temps sur une question dicile, passez ` a la suivante. Conseil : limitez la pr ecision de vos r esultats ` a 103 . Le probl` eme pos e est lasservissement de force dun bloc moteur du drone compos e dun moteur synchrone dit moteur brushless, de son collecteur electronique et dune h elice ` a pas variable. Lobjet de cette etude est en particulier la r egulation de la vitesse du moteur ` a 6000 tr/mn et ce, quel que soit le pas de lh elice.

Fig. D.4 Syst` eme ` a r eguler.

Fig. D.5 Sch ema bloc g en eral de lasservissement de force.

Etude analogique

Fig. D.6 Sch ema de lasservissement avec un correcteur PID.

JUIN 2007

135

Le moteur est repr esent e par une constante de temps T = 20ms , le collecteur electronique lui, se comporte comme un retard pur de dur ee = 5ms. Dans cette partie on ne prendra pas en compte lexistence dune perturbation. G(p) = 1. Tracer la r eponse indicielle de G(p). 2. D eterminer un correcteur analogique de type PI pour lasservissement de ce syst` eme. 3. Sans calcul mais avec une br` eve justication, quel sera probablement le d epassement de la sortie pour une entr ee en echelon ? 10e p 1 + Tp

Asservissement num erique

Tous comptes faits, on d ecide de placer un correcteur num erique. La p eriode d echantillonnage est : Te = 5 ms. Lobjectif est dobtenir une r eponse indicielle la plus rapide possible.

Fig. D.7 Syst` eme boucl e avec un correcteur de type temps d etablissement minimal. 1. Que pensez-vous de cette p eriode d echantillonnage ? 2. Calculer la fonction de transfert en z G(z ) de lensemble collecteur electronique + moteur pr ec ed e dun e p bloqueur dordre 0. (G(p) = 10 ) 1+T p 3. D ecomposer G(z ) sous la forme : G(z ) = B + (z )B (z ) A+ (z )A (z )

o` u B + (z ), A+ (z ) sont compensables et B (z ), A (z ) ne le sont pas. 4. Expliquez pourquoi la recherche dun correcteur donnant une boucle ferm ee equivalente ` a 1 retard pur est vou ee ` a l echec. 5. Calculer un correcteur C (z ) qui donne une r eponse en temps minimal. On cherche donc C (z ) tel que : C (z )G(z ) = z 2 1 + C (z )G(z ) 6. Calculer les trois premiers echantillons de la commande du moteur cest-` a-dire de la sortie du correcteur.

R egulation num erique - Zdan

Dans cette partie, la variation de couple due au pas variable est prise en compte sous la forme dun couple de perturbation comme indiqu e sur la gure D.8.

Fig. D.8 Mod` ele du syst` eme avec la perturbation due au pas variable mod elis ee par une rampe. 1. Calculer un correcteur C (z ) avec la m ethode de Zdan ayant pour caract eristiques :

136
mod` ele en boucle ferm ee de type troisi` eme ordre

ANNEXE D. ANNALES

N (z ) (1 0.5z 1 )3
erreur statique nulle, et ce malgr e la perturbation en rampe. On prendra pour la partie C3 du correcteur de Zdan la forme :

C3 (z ) =

1 (z ) K (1 z1 z 1 ) = 2 (z ) 1 z2 z 1

2. Calculer lerreur permanente de votre syst` eme corrig e en labsence de perturbation. 3. V erier la stabilit e de votre correcteur. 4. Calculer l equation r ecurrente de votre correcteur et v erier la causalit e de ce correcteur.

R egulation num erique - Commande par anticipation

An de diminuer le d epassement obtenu par le correcteur pr ec edent, on se propose dimplanter une commande par anticipation.

Fig. D.9 Commande par anticipation. Le correcteur D(z ) sera choisi presque identique ` a C (z ) de la forme : C (z ) = C1 (z )C2 (z )C3 (z ) = D(z ) = C1 (z )C2 (z )C3 (z ) = A+ (z ) 1 (z ) 1 1 n (1 z ) B + (z ) 2 (z ) 1 A+ (z ) 1 (z ) (1 z 1 )n B + (z ) 2 (z )

1. Montrez que 1 (z ) ninue que sur les z eros de la boucle ferm ee. 2. Calculez 1 (z ), 2 (z ) et 1 (z ) tels que la transmittance en boucle ferm ee soit exactement egale ` a z 2 (10.5z 1 )3 . Aide : reprenez la solution de la question 3.1 3. Calculer les trois polyn omes R(z ),S (z ) et T (z ) dun correcteur RST qui permettrai dobtenir exactement la m eme dynamique que la commande par anticipation en boucle ferm ee.

Asservissement de force
F = a 3

La relation force verticale en fonction de la vitesse du moteur et du pas est suppos ee de la forme :

Application num erique : F0 = 1 N pour 0 = 10et 0 = 6000 tr/mn 1. D eterminer a.


3 2. Donner un mod` ele lin earis e de la force autour de sa valeur nominale F0 = a0 0 de la forme F = F0 + + par d eveloppement limit e.

3. Donner un sch ema bloc du syst` eme complet incluant la force. 4. D eterminer la fonction de transfert entre la commande de pas et la sortie en force, le syst` eme etant r egul e par la commande par anticipation. 5. Le pas et la vitesse etant quanti es par des CAN de 8 bits, soit 28 pas de quantication entre 0 et 8000 tr/mn et entre 45, quelle est lerreur de force en r egime etabli ?

JUIN 2008

137

Questions ind ependantes pour ceux qui nissent trop t ot


1. Calculer la transform ee en z du signal donn e en gure D.10.

Fig. D.10 R eponse indicielle d esir ee. 2. Soit H (z ) une transmittance op erationnelle dun syst` eme qui soumise ` a un echelon unit e pr esente en sortie la r eponse pr esent ee en gure D.10. Calculer H (z ). 3. Le syst` eme repr esent e par : D (z ) = est-il stable ? 4. Tracer intuitivement le lieu dEvans de la fonction de transfert suivante : F (z ) = z + 0.5 z 2 + 0.2z + 0.4 z+3 z 3 + 1.2z 2 .25z 0.3

dont les p oles et le z ero sont repr esent es sur la gure D.11.

Fig. D.11 P oles et z eros de F (z ).

138 ere ann 1` ee Juin 2008

ANNEXE D. ANNALES

Examen dautomatique
Tous documents autoris es, dur ee : 2h Le probl` eme pos e est la r egulation de fr equence dun oscillateur ultra-stable ` a 7 GHz. Embarqu e sur un satellite, cet oscillateur d erive dans le temps en fonction des variations de temp erature du saphir. On sattachera ` a la r ealisation de deux r egulateurs ind ependants : une r egulation analogique de phase qui corrige la fr equence et une r egulation num erique de temp erature. Ces deux signaux sont traduits en une tension continue par un capteur appropri e.

R egulation analogique de phase

Il sagit ici de d eterminer un correcteur analogique qui agit sur la phase de la fr equence de 7 GHz ultra-stable. la transmittance entre la phase et la fr equence est H (p).

Fig. D.12 Lieu dEvans du syst` eme. 1. Le lieu dEvans du syst` eme H (p) = de type PI de Ziegler-Nichols.
S (p) U (p)

est donn e en gure D.12. En d eduire un correcteur analogique

2. Le diagramme de Bode du syst` eme form e du correcteur PI calcul e pr ec edemment suivi de la transmittance H (p) (voir g. D.14) est donn e en gure D.14 (un zoom est donn e en gure D.15). Mesurez la marge de phase et la marge de gain G. 3. Le syst` eme boucl e par un retour unitaire et corrig e par le correcteur d etermin e pr ec edemment pr esente une r eponse indicielle ayant trop de d epassement. On se propose de baisser la gain pour le rendre moins rapide. Calculez le nouveau gain du correcteur PI an davoir une marge de phase de 90 degr es (T i reste identique). 4. Au vu de votre exp erience, quel type de r eponse indicielle devrait-on avoir avec un telle marge de phase ?

JUIN 2008

139

Fig. D.13 Syst` eme pr ec ed e du correcteur PI.

Fig. D.14 Diagramme de Bode du syst` eme pr esent e en gure D.13.

Fig. D.15 Diagramme de Bode du syst` eme pr esent e en gure D.13 (zoom sur la zone critique).

Transposition du r egulateur analogique


1. Tout comptes faits, on d ecide dimplanter le correcteur analogique calcul e pr ec edemment sur un calculateur num erique. Rappelez en deux lignes les principaux avantages du r egulateur num erique sur sa version analogique.

140

ANNEXE D. ANNALES

2. Calculez un correcteur num erique par la m ethode de votre choix que vous justierez. 3. Choisissez la p eriode d echantillonnage maximum pour eviter le ph enom` ene de recouvrement de spectre en faisant lhypoth` ese que le spectre du signal est limit ea ` 104 rad.s1 .

R egulation num erique de temp erature

Description du syst` eme Ce saphir, de tr` es haut facteur de qualit e, est pos e dans une enceinte isol ee thermiquement. An d eviter tout choc thermique, la dynamique dasservissement est choisie tr` es lente. Une fois dans lespace, le saphir met plusieurs heures ` a atteindre sa temp erature de fonctionnement. Deux types de perturbation apparaissent : V (z ) en entr ee du syst` eme repr esente les variations de temp erature dues aux d erives de l electronique et sont mod elis ees par une rampe. E (z ) en sortie repr esente linuence du soleil sur le satellite. Elle est repr esent ee par une perturbation sinuso dale.

Fig. D.16 Sch ema bloc de la fonction de transfert entre la temp erature de sortie Y et la puissance dentr ee U en pr esence des perturbations V et E . V est une perturbation de charge de type rampe, E est une perturbation de sortie de type sinuso dal.

Cahier des charges Lerreur permanente dordre 0 (r eponse ` a l echelon dentr ee W (z ) doit etre nulle et ce, y compris en cas de perturbations V (z ) en forme de rampe. Le syst` eme en boucle ferm ee doit rejeter les perturbation sinuso dales E (z ) Le syst` eme doit r epondre tr` es lentement ` a un echelon de consigne W (z ), le comportement en boucle ferm ee est plus lent quen boucle ouverte ! On d esire un comportement de type premier ordre, la constante de temps est de 5 heures soit 18000 secondes.

JUIN 2008

141

3.1

Mod elisation

Mod elisation du syst` eme en boucle ouverte sans perturbations La temp erature du saphir au cours du temps est mesur ee apr` es avoir soumis le syst` eme ` a un echelon de puissance thermique. Le r esultat est donn e gure D.17.

Fig. D.17 R eponse de la temp erature du saphir en fonction dun echelon unitaire de puissance. 1. On fait lhypoth` ese que la transmittance du syst` eme est de la forme : G(p) = k (1 + p)2

Pr` es avoir donn e la r eponse temporelle s(t) de G(p) soumise ` a un echelon unit e, d eterminez graphiquement les valeurs de k et . 2. D eterminez la transform ee en z de la transmittance G(p) pr ec ed ee dun bloqueur dordre 0 echantillonn ee avec une p eriode T e = /5. Mod elisation du syst` eme voulu en boucle ferm ee 1. Proposez une transmittance continue (en p), r epondant au cahier des charges. 2. D eterminez la fonction de transfert du mod` ele M (z ) = analogique pr ec ed e par un bloqueur dordre 0.
Bm (z ) Am (z )

qui est la transform ee en z de votre mod` ele

142 Premier correcteur

ANNEXE D. ANNALES

Fig. D.18 Principe de correction par correcteur RST. V(z) est une perturbation de charge de type rampe, E(z) est une perturbation de sortie de type sinuso dal. Quel que soit le r esultat de la partie pr ec edente, vous continuerez avec la fonction de transfert en z 0.01752z + 0.01534 B (z ) = 2 G(z ) = A( z ) z 1.637z + 0.6703 Dans cette partie on ne tiendra pas compte de la perturbation sinuso dale E (z ). 1. D ecomposez G(z ) sous la forme : G(z ) = B + (z )B (z ) A+ (z )A (z )

o` u B + (z ), A+ (z ) sont compensables et B (z ), A (z ) ne le sont pas. 2. On d ecompose le polyn ome S (z ) en un produit de trois polyn omes : S1 (z ) contient le nombre dint egrateurs purs n ecessaires pour r epondre au cahier des charges, S2 (z ) compense les z eros compensables de B (z ), S3 (z ) assurera la dynamique voulue en boucle ferm ee. Donnez les polyn omes S1 (z ) et S2 (z ). 3. D eterminez S3 (z ) et R(z ) tels que la transmittance du syst` eme en boucle ferm ee soit egale ` a celle du mod` ele de comportement voulu M (z ). 4. Calculez lerreur permanente de votre syst` eme corrig e en labsence de perturbation. le correcteur RST est nalement implant e sous la forme donn ee en gure D.19.

Fig. D.19 Implantation du correcteur RST. 5. V eriez la stabilit e du correcteur C (z ) =


R(z ) S (z )

U (z ) (z ) .

6. Calculez l equation r ecurrente de votre correcteur et v eriez la causalit e de ce correcteur. 7. En utilisant le th eor` eme de la valeur nale, d eterminez la valeur de la commande en r egime permanent U , le syst` eme etant soumis ` a un echelon dentr ee, les perturbations etant nulles.

JANVIER 2009 Correcteur r ejecteur de la perturbation sinuso dale

143

Ce g en erateur de fr equence est embarqu e sur un satellite qui tourne autour de la terre en 90 minutes. Le capteur de temp erature subit alors une perturbation sinuso dale de p eriode T = 90mn. On se propose ici de recalculer un nouveau correcteur qui rejette asymptotiquement cette perturbation. 1. En reprenant le sch ema D.18, Calculez la fonction de transfert Gp (z ) = du syst` eme et en introduisant le polyn ome dobservation A0 .
Y (z ) E (z )

en fonction des param` etres

2. Calculez la pulsation du signal de perturbation puis calculez la transform ee en z du signal sinuso dal E (t) = sin(t) echantillonn e` a la p eriode T e. 3. Calculez alors le signal Y (z ) en fonction de ce signal E (z ), tous les autres signaux entrant etant nuls. 4. Proposez une condition sur les polyn omes S et sur A0 an que la sortie Y (z ) ne d epende plus du signal sinuso dal. 5. Calculez le correcteur RST qui r epond au cahier des charges complet.

144 ere ann 1` ee Janvier 2009

ANNEXE D. ANNALES

Examen dautomatique
Tous documents autoris es, dur ee : 2h

Le probl` eme pos e est le positionnement dun t elescope sur monture azimutale. On ne soccupera dans ce sujet que de la partie r eglage de lazimut. Dans la phase de mise en station (recherche de deux etoiles bien connues) et de pointage vers un objet pr ecis (plan` ete, n ebuleuse, com` ete ...), le t elescope sera asservi par un correcteur de type Zdan. Lobjet etant visualis e, la poursuite de cet objet sera r ealis ee par un correcteur de type r eponse pile. Le passage dun correcteur ` a lautre ne sera pas etudi e.

Fig. D.20 T elescope ` a monture azimutale.

Mod elisation
+ B = c + p J

Le mouvement du t elescope est d ecrit par l equation di erentielle suivante

avec : J B c p : Linertie de lensemble moteur + parabole : la position angulaire de lantenne : le coecient de frottement visqueux : le couple moteur : le couple de perturbation

1. D eterminer la transform ee de Laplace de cette equation di erentielle en supposant les conditions initiales nulles. 2. Donner le sch ema bloc de ce syst` eme. On posera pour simplier l ecriture : B/J = a, c /B = u et p /B = w. 3. En faisant lhypoth` ese que p = 0, d eterminer la fonction de transfert continue G(p) =
(p) u(p)

de ce syst` eme.

4. Tracer ` a main lev ee, la forme g en erale du diagramme de Bode asymptotique de G(p) en module et en phase. 5. En d eduire le diagramme de Nyquist. Ce syst` eme peut-il devenir instable si on le boucle par un gain (voir gure D.21) ? 6. D eterminer la fonction de transfert echantillonn ee G(z ) de ce syst` eme pr ec ed e dun bloqueur dordre 0.

JANVIER 2009

145

Fig. D.21 Syst` eme boucl e sans bloqueur dordre 0

Fig. D.22 Syst` eme boucl e avec un bloqueur dordre 0

R egulation num erique : correcteur PI

Avec a = 10, en prenant une p eriode d echantillonnage T e = 20 ms et en bouclant par un retour unitaire le syst` eme pr ec ed e par un bloqueur dordre 0 et un gain K = 100 (voir gure D.22), lensemble se met ` a osciller a une fr ` equence de 5 Hz sans quitter le domaine de lin earit e. 1. Au vu du r esultat pr ec edent, proposer un correcteur de type PI num erique qui donne de bons r esultats. 2. Donner alors le sch ema bloc de ce correcteur PI.

R egulation num erique : phase de mise en station

Quel que soit le r esultat de la partie pr ec edente, vous continuerez avec la fonction de transfert en z 0.001873z + 0.001752 B (z ) = G(z ) = A(z ) (z 1)(z 0.8173)

3.1

R eglage de base
B + (z )B (z ) m (1 z 1 ) A+ (z )A (z )

1. D ecomposez G(z ) sous la forme : G(z ) =

o` u B + (z ), A+ (z ) sont compensables et B (z ), A (z ) ne le sont pas. 2. On d ecompose le correcteur C (z ) en un produit de trois correcteurs : C1 (z ) contient le nombre dint egrateurs purs n ecessaires pour obtenir une erreur statique nulle en pr esence dun couple de perturbation c de type echelon C2 (z ) compense les p oles et z eros compensables de G(z ), (rappel : on ne compense pas (1z1 1 )m ) C3 (z ) assurera la dynamique voulue en boucle ferm ee. Donnez les polyn omes C1 (z ) et C2 (z ).
1 (z ) 3. D eterminez C3 (z ) = eme corrig e, boucl e, poss` ede une dynamique identique ` a celle dun 2 (z ) tel que le syst` 1 syst` eme continu du second ordre de pulsation n = 1 rad.s et de facteur damortissement = 0.707. La p eriode d echantillonnage Te sera choisie egale ` a 0.2 secondes. Aide : sil ny a pas derreur 1 (z ) = + z 1 et 2 (z ) = 4. V erier, par le calcul, que lerreur statique de ce syst` eme est nulle y compris en pr esence dune perturbation. 5. Presque sans calcul, quelle est lerreur permanente de vitesse en labsence de perturbation.

3.2

R eglage avanc e

On souhaite dans cette partie am eliorer le comportement dynamique du syst` eme en boucle ferm ee en choisissant un r eglage qui impose une erreur permanente dacc el eration a () non nulle mais aussi faible que lon veut. Dans notre cas on choisira a () = 0.1. Le correcteur propos e est de la forme : C (z ) = C1 (z ) C2 (z ) D3 (z ) o` u C1 et C2 sont ceux d etermin es pr ec edemment et D3 est de la forme2 : D3 = 1 (z ) + (1 z 1 )2 M (z ) 2 (z ) M (z )

avec 1 (z ) et 2 (z ) calcul es pr ec edemment.


2 Attention

cette forme est particuli` ere pour ce syst` eme, ce nest pas g en eralisable.

146 1. Donnez la transform ee en z dun signal de type parabolique.

ANNEXE D. ANNALES

2. En prenant M (z ) = cte = m0 , montrer que lerreur dacc el eration du syst` eme en boucle ferm ee d epend de m0 . 3. Calculer m0 tel que a () = 0.1.

R egulation num erique : phase de poursuite


1. Est-il possible de calculer un correcteur ` a r eponse pile pour une entr ee de type rampe pour ce syst` eme ? Est-ce faisable pour une entr ee de type parabole ? 2. D eterminer un correcteur ` a r eponse pile pour une entr ee de type rampe. Aide : sil ny a pas derreur L(z ) = + z 1 et K (z ) = + z 1 (notations du cours) 3. En utilisant le th eor` eme de la valeur nale, calculer lerreur permanente de vitesse (entr ee de type rampe). 4. Calculer l equation r ecurrente de votre correcteur et v erier la causalit e de ce correcteur.

Dans cette phase, lasservissement est assur e par un correcteur de type r eponse pile.