Vous êtes sur la page 1sur 23

Syst`mes Asservis Echantillonns e e

J.P. Chemla Mars 2002


Jusqu` prsent, les syst`mes asservis ont t tudis dans leur tat naa e e eee e e turel : a temps continu. Nous les avons commands a laide de correcteurs ` e ` de mme nature (avance et retard de phase, PID, retour dtat sont des e e correcteurs a temps continu). ` Lav`nement du numrique nous pousse a revoir lautomatique sous un e e ` autre angle : la commande par calculateur. Plutt que de limiter cette o commande a une imitation de correcteurs analogiques, il est plus intressant ` e de tout revoir sous les aspects numriques et chantillonns. e e e

1
1.1
1.1.1

Rappels sur les syst`mes numriques e e


reprsentation des signaux ` temps discrets e a
Dnition (simplie) e e

Un signal a temps discret est une suite sd (k), k Z. Lorsque ce signal est ` lchantillonnage dun signal continu sc (t) a une priode , on a : e ` e sd (k) = sc (k.) Remarque : nous ne considrerons dans la suite du cours que les signaux e causals, cest a dire : sd (k) = 0 ` k < 0.

1.2

Signaux numriques fondamentaux e

Dirac centr Cette fonction est dnie par : e e (k) = 0 k = 0; (0) = 1

(k)

Figure 1: reprsentation dun dirac e

Echelon unitaire Cette fonction est dnie par : e (k) = 0 k < 0;


(k)

(k) = 1 k 0

Figure 2: reprsentation dun echelon e

Rampe Cette fonction est dnie par : e r(k) = 0 k = 0; r(k) = k k > 0

r(k)

Figure 3: reprsentation dune rampe e

1.3
1.3.1

La transforme en z e
Dnition e

Par dnition, la transforme en z est : e e

S(z) =
k=0

s(k).z k

Exemple : si S(z) = 1 z 1 + 0.5z 2 , on a s(k) = 0 k < 0 ou k > 2; s(0) = 1; s(1) = 1; s(2) = 0.5

Autre exemple : pour s(k) = ak , k 0, S(z) = ak 1 = 1 k=0 z


a z

z za

si

a <1 z

Cet exemple est important a retenir car il peut permet davoir la transforme ` e en z des rponses des syst`mes continus du premier ordre en s(t) = et/ . En e e chantillonn, cette rponse devient : s(k) = e.k/ . En posant a = e/ , e e e on retrouve la transforme en z de cette rponse : e e S(z) = 1.3.2 Proprits e e z z e

Soient f et g deux fonctions chantillonnes et F et G leur transformes en e e e z. On notera T z() loprateur transforme en z. e e 3

Linarit T z(a.f + b.g) = a.F + b.G e e Transforme la convolution en produit T z(f g) = F.G Retard T z(f (k k0 ) = z k0 .F (z) Avance Si y(k) = x(k + k0 ); on a Y (z) = z k0 [X(z) x(0).z 0 x(1).z 1 . . . x(k0 1).z k0 +1 ]
z Multiplication par ak T z(ak .f (k)) = F ( a )

1.3.3

Transforme en z de fonctions classiques e T z((k)) = 1 T z((k)) = z z1 z T z(r(k)) = (z 1)2 z T z(ak ) = za

Pour plus de transformes, voir table des transformes usuelles sur feuille e e a part. ` 1.3.4 Thor`mes des valeurs initiales et nales e e

s(0) = limz+ S(z) limk+ s(k) = limz1 (z 1).S(z) 1.3.5 Recherche de loriginal

Le calcul de la transforme inverse s(k) dune fonction en S(z) peut se faire e selon deux mthodes : e 1. Par dcomposition en lments simples de e ee de transformes. Exemple : e S(z) =
S(z) z

puis en utilisant la table

2z (z 1)(z 0, 5) S(z) 4 4 = z z 1 z 0, 5 s(k) = 4 4.(0, 5)k 4

2. On peut aussi calculer les premi`res valeurs de s(k) en eectuant une e division de polynmes : o S(z) = z z2 (on sait que s(k) = 2k )

La division polynomiale donne : z z +2 2 2 +4z 1 4z 1 z2 1 + 2.z 1 + 4.z 2 . . .

On retrouve les premi`res valeurs de s(k) : s(0) = 1; e 4.

s(1) = 2;

s(2) =

2
2.1

Fonction de transfert en z dun syst`me e numrique e


Dnition, ordre et rponse dun syst`me e e e

Un syst`me numrique est dnit par une quation de rcurrence entre son e e e e e entre e(k) et sa sortie s(k). Cette quation est de la forme : e e s(k+n)+an1 s(k+n1)+. . .+a1 s(k+1)+a0 s(k) = b0 e(k)+b1 e(k+1)+. . .+bm e(k+m)
n m

s(k + n) +
i=0

ai s(k + i) =
j=0

bj e(k + j)

Comme le syst`me est causal, la sortie a linstant k + n ne peut pas e ` dpendre de lentre aux instants dapr`s. On en dduit que m n. e e e e On remarque que lon peut conna tre de proche en proche toutes les valeurs de la sortie s(k) si lon connait lentre e(k) et les conditions inie tiales. On appelle fonction de transfert G(z) du syst`me le rapport entre la e transforme en z, S(z), de la sortie et E(z), celle de lentre. e e On obtient : G(z) = b0 + b1 .z + . . . + bm .z m S(z) = n E(z) z + an1 .z n1 + . . . + a1 .z + a0

On appelle lordre dun syst`me lordre de lquation de rcurrence. Cest e e e la dirence maximale dindice dans les termes de sortie. Cest aussi le degr e e du dnominateur de la fonction de transfert. e 5

Comme pour les fonctions de transfert continues, cette fonction de transfert est une fonction rationnelle dont le degr du dnominateur est suprieur e e e au degr du numrateur. e e On peut connaitre la rponse dun syst`me a une entre donne en formant e e ` e e la transforme en z inverse de T (z).E(z). Rappel : la transforme inverse e e dune fonction de transfert seule na aucune signication. Exemple : Soit un syst`me dni par son quation de rcurrence : e e e e s(k + 1) 0, 5.s(k) = e(k) On connait les conditions initiales : s(0) = 0. Lentre est un chelon e e unitaire. Pour calculer la sortie s(k) k, on peut utiliser lquation de e rcurrence de proche en proche ou utiliser la transforme en z. e e De proche en proche : s(1) = 0, 5.s(0) + e(0) = 1 s(2) = 0, 5.s(1) + e(1) = 1, 5 s(3) = 0, 5.s(2) + e(2) = 1, 75 . . . Avec la transforme en z : La fonction de transfert est : e G(z) = 1 z 0, 5 S(z) =
S(z) , z

z (z 1)(z 0, 5) on trouve

En dcomposant en lments simples e ee S(z) = 2.z 2.z z 1 z 0, 5

s(k) = 2 2.(0, 5)k

2.2

Retards purs

Les syst`mes peuvent prsenter un retard pur. Ils se manifestent dans lquation e e e de rcurrence par lapparition de termes en e(k r) o` r est le retard en nome u bre de pas dchantiollonnage. e Exemple 1 Un syst`me dnit par : e e s(k + 2) + a1 .s(k + 1) + a2 .s(k) = b.e(k 5) avec des conditions initiales nulles ne donnerait un rsultat (s(k) > 0) que e pour k 5. Exemple 2 Un syst`me dnit par : e e s(k + 3) + 3.s(k + 2) + 2.s(k + 1) + s(k) = e(k + 1) + 2.e(k) + e(k 1) + e(k 2) est dordre 3 et prsente un retard de 2 pas dchantillonnage (par la prsence e e e du terme e(k 2). 6

Dans la fonction de transfert, le retard se manifeste par la prsence dun e terme en z r en facteur. Dans lexemple prcdent, la fonction de transfert e e est : 3 2 2 z + 2z + z + 1 G(z) = z . 3 z + 3z 2 + 2z + 1 Remarque Un zro au numrateur (z z0 ) est une avance partielle. Si e e z0 = 0 (zro nul), il y a une avance dun pas entier. e

2.3

Intgration numrique e e

En numrique, lintgration est une sommation. Son quation de rcurence e e e e est donc: 1 s(k + 1) = s(k) + e(k) I(z) = z1 Nous verrons dans le chapitre suivant que cette fonction de transfert correspond a un facteur pr`s a lchantillonnage dun intgrateur continu. ` e ` e e

2.4

Forme standard

De mme quen continu, on peut crire une fonction de transfert numrique e e e en mettant en vidence les points suivants : e les intgrateurs, e le gain lventuel retard e Cette forme est la suivante : G(z) = o` le gain K est : u K = lim (z 1)m .G(z)
z1

N (z) K .z r . (z 1)m D(z) N (z) =1 z1 D(z) lim

Exemple : Mettre sous forme standard la fonction de transfert du syst`me dont lquation de rcurrence est : e e e 2.s(k) = s(k 1) + 4.s(k 2) 3.s(k 3) + 3.e(k) + 2.e(k 1) + 5.e(k 2) Rponse : gain : 2; ordre 3; type : 2; avance dun pas e G(z) = 3z 2 + 2z + 5 2 .z. (1 z)2 4z + 6 7

2.5

Ples et stabilit o e

Comme en continu, les ples de la fonction de transfert caractrisent la dyo e namique du syst`me. e 2.5.1 Condition de stabilit e

Un syst`me numrique est stable si et seulement si tous les ples e e o de ce syst`me sont de module infrieur ` 1 ; cest ` dire si tous les e e a a ples sont ` lintrieur du cercle de rayon 1 et de centre (0, 0) dans o a e le plan complexe. Dans la gure 4, on trouvera quelques exemples de comportements de syst`mes du premier ordre en fonction du lieu du ple. Un chier polenz.sq e o tlchargeable a ladresse : http://homepage.mac.com/jpchemla, dans le ee ` rpertoire Auto echantillonnee vous permet dexprimenter la rponse dun e e e syst`me dordre 1 ou 2 en fonction du placement du ou des ples. Ce e o chier souvre avec lapplication Sysquake Le tlchargeable a ladresse : ee ` http://www.calerga.com/.
1 0.9 0.8 0.7

40

rponse du systme

0.6

30

0.5

20

0.4

rponse du systme

0.3

10
0.2

0.1

-10

4 nb de pas

-20

140

-30 0 1 2 3 4 nb de pas 5 6 7

120

100

rponse du systme

80

60

40

20

4 nb de pas

1.2

10

0.8 rponse du systme

0.6
rponse du systme 6

0.4

0.2

-0.2

4 nb de pas

8
0

1.6

5 nb de pas

10

1.4
1.2

1.2
1

rponse du systme

0.8
rponse du systme

0.8

0.6

0.6

0.4

0.4

0.2

0.2

4 nb de pas

0.5

1.5 nb de pas

2.5

Figure 4: sortie dun syst`me de premier ordre en fonction de son ple en z e o

2.5.2

Crit`re de Jury e

Il nest pas toujours facile de calculer les ples dune fonction de transo fert surtout quand celle-ci se prsente sous forme dveloppe. Un crit`re e e e e permet de dterminer la stabilit dun syst`me a partir des coecients du e e e ` dnominateur. e Soit une fonction de transfert dont le dnominateur scrit : e e D(z) = an .z n + an1 .z n1 + . . . + a1 .z + a0 Le crit`re ncessite de former le tableau 1. e e 1 2 3 4 5 6 z0 a0 an b0 bn1 c0 cn2 z1 a1 an1 b1 bn2 c1 cn3 ... ... ... ... ... ... ... ... ... ... ... ... cn2 c0 ... ... ... bn1 b0 0 0 zn an a0 0 0 0 0

Table 1: tableau de Jury o` bj = a0 .aj an .anj ; u cj = b0 .bj bn1 .bnj1 . Le crit`re de Jury est : Le syst`me est stable si D(z) vrie les conditions e e e suivantes : 1. D(1) > 0, 2. D(1) > 0 pour n pair, D(1) < 0 sinon, 3. |a0 | < an ; |b0 | > |bn1 |; |c0 | > |cn2 |; ...

Exemple : Donner la stabilit des syst`mes dnis par leur fonction de e e e transfert : G1 (z) = z 0, 5 ; z 2 0, 9z + 0, 8 G2 (z) = 2.(z + 2) z 2 + 3, 5z 2

2.6

Prcision e

Comme en continu, la prcision du syst`me en boucle ferme dpend du gain e e e e et du type (nombre dintgrateurs) du syst`me en boucle ouverte (voir gure e e 5). 9

E(z)

+ -

(z)

K m (1-z)

N(z) D(z)

Y(z)

Figure 5: Asservissement numrique e

Le calcul de lerreur donne : (z) = E(z)


1 1 + K. (z1)m . N (z) D(z)

En tudiant limk ( (k)) = limz1 (z 1) (z), on trouve les rsultats e e suivants : Entre e m=0 m=1 m=2 Echelon E0 (k) Rampe ak E0 1+K a 0 k 0 0

Fonction de transfert dun syst`me continu e chantillonn e e

Les syst`mes numriques nexistent que sous forme de mod`le dans un ore e e dinateur. Notre objectif est de faire de la commande, par un processeur (numrique), dun syst`me rel continu par nature. Comme nous lavons dit e e e au dbut du cours, on peut soit voir le correcteur numrique comme imitation e e dun correcteur continu, soit voir le syst`me rel continu comme un syst`me e e e numrique, cest a dire tel quil sera vu par le calculateur. e `

3.1

Principe gnral e e

La gure 6 donne le schma de principe de la correction numrique. e e

10

Numrique

Continu

BOZ consigne commande calcule Bloqueur d'ordre zro

Elaboration de la commande par calculateur

commande

Systme continu

sortie continue

sortie numrise

Echantillonneur (CAN)

sortie continue

Figure 6: Asservissement numrique e

Vu du calculateur, le syst`me continu prcd du Bloqueur dOrdre Zro e e e e e (BOZ) et suivi de lchantillonneur est considr comme un syst`me numrique. e ee e e Ce syst`me continu, dni par sa fonction de transfert en Laplace (en p) est e e donc vu par le calculateur comme un syst`me numrique ayant une fonction e e de transfert en z. Lquivalence est montre dans la gure 7. e e
Continu
Echantillonneur (CAN) BOZ Entre numrique E(z) Bloqueur d'ordre zro entre continue E(p)

Systme continu T(p)

sortie continue S(p)

sortie numrique S(z)

Entre numrique E(z)

Systme numrique G(z)

sortie numrique S(z)

Figure 7: Equivalent numrique dun syst`me continu muni dun BOZ et e e chantillonn e e

On attire lattention que cette quivalence nest pas entre T (p) et G(z) qui e sont de nature dirente mais entre lensemble T (p), bloqueur et chantillonneur, e e et G(z). On peut montrer que : G(z) = T z[B(p).T (p)] = (1 z 1 ).T z T (p) p

o` B(p) est la fonction de transfert du BOZ et T z[F (p)] dsigne la transu e forme en z de la transforme de Laplace inverse de F (p) chantillonne. Un e e e e tableau des fonctions classiques fourni en annexe permet de passer rapidement de F (p) a T z[F (p)]. ` 11

Exemple : Soit un syst`me continu du premier ordre dnit par sa e e fonction de transfert K T (p) = 1 + p Ce syst`me, muni dun BOZ et dun chantillonneur sera considr comme e e ee un syst`me numrique dont la fonction de transfert en z est : e e G(z) = (1 z 1 ).T z K p(1 + p)

Pour calculer la T z[. . .], nous pouvons commencer par calculer sa transforme e de Laplace inverse : s(t) = T L1
t K = K.(1 e ) p(1 + p)

Une fois chantillonn a la priode , nous avons : e e` e s(k) = K. 1 e


k.

e e En posant a = e , on a la transforme en z cherche : Tz z(1 a) K = S(z) = K. p(1 + p) (z 1)(z a)

On en dduit la fonction de transfert en z dun syst`me du premier ordre e e continu muni dun BOZ et dun chantillonneur : e G(z) = K(1 a) za avec a = e

Remarque importante : La fonction de transfert dun syst`me continu e chantillonn dpend de la priode dchantillonnage . e e e e e

3.2

PID numrique e

Lintgration numrique est une sommation, la drivation numrique est une e e e e soustraction. Dans ce paragraphe, nous allons en fait calculer lquivalent e numrique des correcteurs connus en analogique : lintgrateur, le drivateur e e e et pour nir le PID. INTEGRATEUR La fonction detransfert en continu de lintgrateur e est : 1 S(p) = I(p) = E(p) Ti p 12

Si on numrise ce syst`me (` laide dun BOZ et dun chantillonneur), on e e a e obtient la fonction de transfert en z suivante : 1 S(z) = I(z) = (1 z 1 )T z E(z) Ti p 2 1 = . Ti z 1 s(k + 1) = s(k) + e(k) Ti Pour crer un intgrateur numrique ayant le mme comportement quun e e e e intgrateur analogique de constante Ti , il sut daccumuler les valeurs prises e par lentre (e(k)) pondres par un facteur /Ti . e ee DERIVATEUR La fonction de transfert en continu dun drivateur e parfait est : S(p) = D(p) = Td p E(p) Ce drivateur analogique nexiste pas (il nest pas causal) puisque que sa e fonction de transfert a un numrateur de degr plus haut que le dnominateur e e e (ici constant). On peut namoins trouver le drivateur numrique quivalent. e e e e Td (e(k) e(k 1)) Td z 1 . D(z) = z s(k) =

DERIVATEUR FILTRE Si lon veut lquivalent numrique dun drivateur e e e ralisable en analogique, on part du drivateur ltr dont la fonction de transe e e fert est : Td p D(p) = 1 + Td p N Si on numrise ce syst`me (` laide dun BOZ et dun chantillonneur), on e e a e obtiendrait la fonction de transfert en z suivante : S(z) Td = D(z) = (1 z 1 )T z E(z) 1 + Td p N z1 N = N. avec : z0 = e Td z z0 s(k + 1) = z0 s(k) + N.(e(k + 1) e(k)) Sur la gure 8, on peut comparer les sorties dun drivateur et dun e drivateur ltr en rponse a un chelon. e e e ` e 13

s(k)= (Td/).(k) (dirac)

k s(k)=N.z 0

k
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8

Figure 8: sorties compares dun drivateur (` gauche) et dun drivateur e e a e ltr (` droite) en rpose a un chelon e a e ` e

PID NUMERIQUE Le correcteur le plus courant, en analogique est le correcteur PID. Ce dernier est souvent utilis dans lindustrie et mis en e oeuvre par des PID numrique ou des cartes a controleur ou des automates. e ` Toutes ces solutions sont en fait des calculateurs numriques qui vont simuler e un correcteur analogique. Comment sont raliss ces PID numriques ? cest e e e ce que nous dcrivons dans ce paragraphe. e La fonction de transfert dun PID analogique (avec drivateur ltr) est : e e Td p 1 ) + C(p) = K(1 + Ti p 1 + T d p N Son quivalent en numrique est (dapr`s les rsultats prcdents) : e e e e e e 1 z1 C(z) = K(1 + . + N. ) Ti z 1 z z0 Les param`tres pratiques de ce correcteur sont : e o ` z0 = e Td est un ple adoucissant de lordre de 0, 2 a 0, 4 qui samortit en quelques coups. N r`gle leet driv e e e Ti r`gle leet intgral e e K r`gle lamplitude de la correction (gain) e
N

4
4.1

Commande par calculateur


Principe et intrt e e

Dans ce chapitre, le calculateur va calculer une commande en fonction de la consigne et de la sortie numrise du syst`me. Le principe est de presque e e e 14

tout faire en numrique. Le syst`me continu sera vu, lui aussi, comme un e e syst`me numrique. e e On distingue 4 tapes dans la mise en place dun asservissement numrique. e e 1. Le choix du pas dchantillonnage sur lequel seront rgls : le calcue e e lateur, le BOZ et lchantillonneur. Une fois choisie, on peut calculer e la fonction de transfert du processus numris. e e 2. Le choix du mod`le numrique (fonction de transfert en z) a atteindre e e ` en boucle ferme apr`s correction. e e 3. On en dduit le correcteur ncessaire. e e 4. On programme le calculateur pour quil ralise la correction calcule e e prcdemment an quil labore la commande. e e e Si, par nature, un correcteur numrique est plus lent (car cadenc par la e e priode dchantillonnage) quun correcteur analogique, ses avantages sont e e les suivants : certaines corrections numriques sont impossible a raliser en analogique, e ` e par sa capacit a mmoriser des signaux, la correction de syst`mes a e` e e ` retard est plus aise, e la exibilit de la programmation permet de raliser des corrections tr`s e e e nes, facilement r`glables voire auto-ajustables (rglage automatique e e du correcteur).

4.2

Choix du pas dchantillonnage e

Le processus nest observ et la commande ne peut changer quaux instants e .k. Le choix du pas est important car Si est trop petit, le calculateur corrigera sans arrt a tout petits e ` coups; Si est trop grand, le calculateur risque de perdre des informations importantes mais trop rapides ou mme ne plus pouvoir commander e car les erreurs (sortie-consigne) seront trop importantes. En pratique, on choisira une frquence dchantillonnage fe en fonction de e e la frquence la plus haute que lon souhaite observer fh (ce qui est directement e

15

li a la frquence de coupure du syst`me que lon souhaite commander. On e` e e choisit : 1 5fh = fe < 25fh Pour un premier ordre : 4 < < Pour un second ordre : 0,25 < < 1,25 n n Pour visualiser linuence de la priode dchantillonnage sur un asservissee e ment, vous pouvez tlcharger le chier correch.sq sur http://homepage.mac.com/jpchemla/. ee (Ce chier souvre avec Sysquake LE tlchargeable sur http://www.calerga.com). ee Ce chier visualise la sortie en BO et BF en continu (courbes bleues) et en chantillonn (courbes en chelles) dun syst`me du premier ordre. Le gain, e e e e la priode dchantillonnage et la constante de temps du syst`me sont mode e e iables.

4.3
4.3.1

Structures possibles
Correcteurs RST

La commande u(k) tient compte des valeurs prcdentes u(k 1), u(k 2), . . . de la commande envoye e e e an de doser progressivement les eorts. des rsultats obtenus en sortie : y(k), y(k 1), . . . e de la trajectoire de consigne : yc (k), yc (k 1), . . .. La commande peut donc scrire, dans le cas gnral : e e e u(k) =
i

ri u(k i) +
j

tj yc (k j) +
l

sl y(k l)

Cette commande, souvent appele RST peut se mettre concr`tement en place e e suivant la gure 9.
u(k) commande calcule BOZ CAN

consigne yc(k)

T(z)

1/R(z)

Systme continu

sortie y(k)

G(z) S(z)

Figure 9: Structure RST dasservissement numrique e

16

Dterminer le correcteur, cest dterminer les polynmes T (z), R(z) et e e o S(z). 4.3.2 structure classique

Le plus souvent, on a T (z) = S(z) et la structure du correcteur devient plus classique (voir gure 10). Le correcteur C(z) est introduit entre le calcul de lerreur (y(k) yc (k)) et la commande u(k). Par rapport a la structure ` S(z) prcdente, on a C(z) = R(z) . e e
u(k) commande calcule BOZ CAN

consigne yc(k)

C(z)

Systme continu

sortie y(k)

G(z)

Figure 10: Structure classique dasservissement numrique e

4.3.3

Dmarche en boucle ouverte e

La dmarche est dobtenir une fonction de transfert en boucle ouverte (proe duit de G(z) et de C(z)) qui ait les proprits requises pour avoir un bon ee asservissement en boucle ferme. Ces proprits sont : e ee C(z).G(z) doit avoir les intgrateurs ncessaires (1 si on veut une erreur e e en position nulle, 2 pour avoir une erreur de vitesse nulle, . . . ) le gain est rgl pour contrler lamortissement e e o C(z) doit avoir les zros ncessaires pour rduire les temps de rponse. e e e e 4.3.4 Dmarche en boucle ferme e e

On se xe la fonction de transfert a obtenir en boucle ferme (Hm (z) = Bm ). ` e Am On en dduit le correcteur a mettre pour y parvenir. e ` Le plus souvent, on choisit, comme fonction de transfert en BF on choisit lun des deux mod`les suivant : e

17

1. une fonction de transfert de gain unit qui permet dannuler lerreur en e quelques (n) coups : H(z) = 1 [1 + an1 z 1 + . . . + a0 z n ] 1 + an1 + . . . + a0

2. un second ordre damortissement rglable et de gain unit. e e 4.3.5 Contraintes sur le correcteur

Le correcteur doit tre ralisable. En particulier, le degr de son e e e dnominateur doit tre suprieur au degr de son numrateur, e e e e e le syst`me doit tre stable en boucle ferme, e e e le correcteur ne doit pas compenser un zro du syst`me a corriger de e e ` module suprieur a 1 par un ple instable. Voir le chier textitcorrP1.sq e ` o en placant le zro du syst`me a corriger en dehors du cercle unit. Ce e e ` e chier est sur le site habituel (http://homepage.mac.com/jpchemla/ et souvre avec le logiciel Sysquake LE tlchargeable sur www.calerga.com). ee 4.3.6 Les trois types de processus ` corriger a

Processus de type P1 ce sont les plus faciles a corriger car ils ne prsentent ` e pas de zro de module > 1 (tous les zros sont stables) et ils vrient : e e e deg(denominateur) 1 deg(numerateur) deg(denominateur) Processus de type P2 ils nont que des zros stables et vrient e e deg(denominateur) deg(numerateur) 2 Processus de type P3 ce sont les processus qui ont des zros instables (de e module> 1)

4.4
4.4.1

Rgulation de processus de type P1 e


La consigne est en chelon e

Soit G(z) la fonction de transfert du syst`me a commander. On adoptera, e ` par exemple, une dmarche en boucle ouverte. Comme la consigne est en e

18

chelon, la fonction de transfert en BO doit avoir un intgrateur pour obtenir e e une erreur statique nulle. On choisit le correcteur C(z) tel que : G(z).C(z) = K z1 C(z) = K 1 . z 1 G(z)

La fonction de transfert en boucle ferme devient : e H(z) = K z (1 K)

Le gain est de 1 (pas derreur statique), le syst`me est stable pour 0 < K < 2. e Pour K = 1, la fonction de transfert en BF est H(z) = z 1 cest a dire ` que la sortie y(k) du syst`me vrie y(k) = e(k 1). La sortie du syst`me e e e est lentre retarde dun pas dchantillonnage ! On peut vrier leet de e e e e K sur le correcteur (commande et sortie) en utilisant le chier corrP1 sur le serveur habituel. 4.4.2 La consigne est en rampe

Pour avoir une erreur statique nulle, il faut 2 intgrateurs dans la boucle e ouverte. La premi`re ide serait de choisir le correcteur C(z) tel que : e e C(z).G(z) = K K H(z) = 2 2 (z 1) z 2z + K + 1

O` H(z) serait la fonction de transfert en BF. Un simple calcul des ples u o montre que ce syst`me serait instable. Pour amliorer la stabilit, on choisit e e e dintroduire un zro au numrateur, ce qui est quivalent a introduire une e e e ` avance partielle. C(z).G(z) = K(z z0 ) (z 1)2 4 1 + z0

Le calcul de la fonction de transfert en BF donne cette fois : H(z) = z2 K(z z0 ) + (K 2)z + 1 K.z0 stable pour 0 < z0 < 1 0 < K <

Un cas particulier se prsente pour : K = 2 et z0 = 0.5. Pour ces valeurs, e on a 2z 1 H(z) = = 2z 1 + z 2 2 z

19

Cest aussi un cas de rponse pile puisque par la forme de H(z), on a e forcment une rponse nie en 2 pas dchantillonnage. Pour sen convaie e e ncre, on peut calculer la sortie a une entre en rampe unit : e(k) = k. La ` e e transforme inverse de S(z) = H(z).E(z) donne : e s(k) = 2.e(k 1) e(k 2) Ce qui donne pour s(k) : s(0) = 0; s(1) = 0; s(k) = 2.(k 1) (k 2) = k k 2

la sortie rejoint lentre pour k = 2. e

4.5

Rgulation de processus de type P2 e

Le principe reste identique a la rgulation prcdente mais la fonction de ` e e e transfert en BF a obtenir doit comporter les retards ncessaires a la faisabilit ` e ` e du correcteur. Exemple 1 G(z) = 3 2 0, 15z + 0, 01 z 0, 6z Si on dsire obtenir une fonction de transfert H(z) du second ordre en e BF, celle ci doit comporter un retard dun pas pour que le correcteur soit ralisable. e 1 + a1 + a0 1 H(z) = 2 .z z + a1 z + a 0 cette fonction de transfert est de second ordre, a un retard 1 et est de gain 1 (pas derreur statique). Do` le correcteur : u C(z) = 1 H(z) . G(z) 1 H(z)

est tel que le degr de son numrateur est gal a celui de son dnominateur. e e e ` e

4.6

Rgulation de processus de type P1 ou P2 avec e retard

Certains syst`mes prsentent des retards intrins`ques entre lentre et la sore e e e tie. Leur fonction de transfert peut scrire : e G(z) = F (z).z n

20

o` F (z) est une fonction de transfert sans retard et n est le nombre de pas u dchantillonnage qui forme le retard. (on suppose ici que le retard est un e nombre entier de pas dchantillonnage). La mthode dans ce cas est de e e calculer le correcteur ncessaire sur le syst`me sans retard, puis on en dduit e e e le correcteur a appliquer rellement. ` e On adopte par exemple une dmarche en BF. Soit H(z) la fonction de e transfert que lon souhaite obtenir apr`s correction. H(z) prsente naturellee e n ment le mme retard que le syst`me en BO : H(z) = H (z).z . On calcule le e e correcteur C (z) qui permettrait dobtenir H (z) en ne considrant que F (z), e cad : C (z).F (z) = H (z) 1 + C (z).F (z) On peut montrer que pour obtenir H(z) a partir de G(z), il faut le correcteur ` C(z) : C (z) C(z) = 1 + C (z).F (z).(1 z n )

4.7

Rgulateurs RST e

Ces correcteurs permettent de raliser un asservissement dun processus de e type P3. Dune structure plus complexe que la structure classique, ces rgulateurs sont aussi plus souples. Le calcul de ces correcteurs peut se e faire automatiquement par un logiciel. On prsente ici une mthode (un peu fastidieuse car aucune hypoth`se e e e nest faite sur le syst`me) de calcul de ce type de correcteur. e On adopte une dmarche en boucle ferme cest a dire que lon se xe la e e ` fonction de transfert a atteindre en BF. Notons ce mod`le : ` e H(z) = Bm (z) Am (z)

Dapr`s la structure RST de ce rgulateur, la fonction de transfert en BF e e vrie aussi (voir gure 9) : e H(z) = T (z).B(z) A(z).R(z) + B(z).S(z) avec G(z) = B(z) A(z)

Calculer le correcteur cest tablir les polynomes R(z), S(z) et T (z) en e fonction des polynmes A(z), B(z), Am (z) et Bm (z) qui sont respectivement o les dnominateurs et numrateurs du syst`me a asservir et du mod`le a ate e e ` e ` teindre en BF.

21

4.7.1

Dcomposition de G(z) e

B(z) contient des zros stables (de module < 1) et des zros instables. Ce e e polynme peut donc se scinder en deux parties, lune contenant les zros o e stables : Bs (z) = z m + am1 z m1 + . . . et lautre contenant les zros instables : e Bi (z) = K(z z0 )(z z1 ) . . . On peut aussi inclure dans cette derni`re partie les zros dont la norme est e e trop proche de 1 B(z) = Bi (z).Bs (z) 4.7.2 Le choix du mod`le ` obtenir en BF H(z) e a

Comme aucun correcteur ne peut supprimer des retards intrins`ques au e syst`me, ces derniers doivent se retrouver dans le mod`le H(z). Cela se e e traduit par : deg(Am ) deg(Bm ) deg(A) deg(B) Puisquon sait que lon ne doit pas compenser les zros instables du e syst`me, ces derniers se retrouveront forcment dans la fonction de tranfert e e en BF. Bm (z) = Bi (z).Bm (z) 4.7.3 Proprits de S, R et T e e

R(z) cest le dnominateur du correcteur. Il doit tre de degr susant e e e pour assurer la causalit, il compense la partie stable du numrateur e e du syst`me et il assure lerreur statique nulle (pour un chelon ou une e e rampe selon les conditions demandes) par la prsence dintgrateurs. e e e R(z) = (z 1)i .Bs(z) .R (z) T (z) assure lobtention du numrateur voulu (Bm (z)) : e T (z) = Bm (z).A0 (z) avec deg(A0 ) 2.deg(A)deg(Am )deg(Bs )+i1 S(z) doit vrier e deg(S) < deg(A)+i et (z1)i .A(z).R (z)+Bi (z).S(z) = A0 (z).Am (z)

En se xant A0 et le nombre dintgrateurs ncessaires, on peut calculer e e R, S et T . 22

Pour aller plus loin...

23