Introduction à la commande par ordinateur

14
tech’Nice-Sophia, Départements SI et MAM s optionnel de 4 ème année : Commande par Ordinateur. Commande par ordinateur Question étudiée dans ce cours : comment un ordinateur embarqué peut-il prendre les commandes d’un processus physique ? Les notions abordées : 1. processus physique : entrées, sorties, équations, temps continu 2. Système asservi : capteurs, actionneurs, loi de contre réaction 3. Discrétisation : échantillonnage, blocage, temps discret 4. Loi de commande : boucle ouverte, retour d’état, commande optimale 5. Performance : rapidité, précision, stabilité, consommation La page du cours http://cours.polytech.unice.fr/intcom contient tous les documents utilisés, et l’application LunarLander

description

Introduction à la commande par ordinateur. Question étudiée dans ce cours : comment un ordinateur embarqué peut-il prendre les commandes d’un processus physique ? Les notions abordées : processus physique : entrées, sorties, équations, temps continu - PowerPoint PPT Presentation

Transcript of Introduction à la commande par ordinateur

Page 1: Introduction à la commande par ordinateur

Polytech’Nice-Sophia, Départements SI et MAMCours optionnel de 4ème année : Commande par Ordinateur.

Commande par ordinateur

Question étudiée dans ce cours : comment un ordinateur embarqué peut-il prendre les commandes d’un processus physique ?

Les notions abordées :1. processus physique : entrées, sorties, équations, temps continu

2. Système asservi : capteurs, actionneurs, loi de contre réaction

3. Discrétisation : échantillonnage, blocage, temps discret

4. Loi de commande : boucle ouverte, retour d’état, commande optimale

5. Performance : rapidité, précision, stabilité, consommation

La page du cours http://cours.polytech.unice.fr/intcom contient tous les documents utilisés, et l’application LunarLander

Page 2: Introduction à la commande par ordinateur

Contenu du cours, animation Lunar Lander, projet, TD

• Le cours des six premières semaines aborde la commande « déterministe » où entrées, sorties et équations sont connues avec certitude.

• Les six semaines suivantes, Joël Le Roux ajoute la notion de bruit d’observa-tion, i.e. les informations des capteurs sont entachées d’incertitudes.

• L’animation Lunar Lander (en Flash, ActionScript) illustre le cours en simulant l’alunissage en pilotage manuel ou automatisé sous forme de jeu.

• Le projet demandé en groupes de deux élèves durant les séances de TD : simuler les équations d’un processus linéaire commandé par un ordinateur. Technologie utilisée au choix, html5, Processing, java, python, … Android ?

• La séance de TD de cette semaine :– Utiliser Scilab pour les calculs de discrétisation, loi de commande, … vus ici

– Charger Lunar Lander sur la page du cours, pour un test détaillé en TD

Page 3: Introduction à la commande par ordinateur

Le régulateur à boules de James Watt

pointeau

Les boules s’écartent quand la vitesse croît

On règle la « tringlerie » pour maintenir la vitesse autour de la consigne c

tringlerie

Le régulateur à boules de Watt schématisé ci-contre est l’un des multiples mécanismes ingénieux développés au 18 ème siècle durant la révolution industrielle. Il s’agit de stabiliser la vitesse de rotation du moteur à vapeur, en régulant la pression de la vapeur dans la chaudière. Sinon, ce processus est instable. C’est donc une application du principe de contre réaction, et Watt est présenté par les anglo-saxons comme le père des automatismes (d’après le livre déjà cité de Faurre et Robin).

Page 4: Introduction à la commande par ordinateur

Illustration des concepts du cours sur un exemple simple

S

h(t), hauteur

d(t), débit

f(t), débit de fuite

robinet

Processus physique : remplissage d’une cuve avec fuiteEntrées sorties : d(t) entrée, f(t) perturbation, h(t) sortieCapteur : la règleActionneur : le robinetÉquation : la variation du volume V=S*h dans la cuve est la différence d-f

• t, le temps, varie continûment

• Prenons S=1 m2, et f=0 litre par seconde

• Limites du modèle

)()( tftddt

dhS

dt

dV

fdhS

0)0( 0 hh

?)0(

1)0(

th

td

tththh 0)(1

cond. init.

MAX

MAX

hth

dtd

)(0

)(0

hMAX

Page 5: Introduction à la commande par ordinateur

Capteur, actionneur, loi de commande, contre-réaction

Actionneur : électrovanneCommande a(t) : entrée électrique qui commande l’ouverture de l’électrovanne et donc le débit d(t)Capteur : convertit hauteur h(t) en tension r(t)On peut maintenant automatiser le processusOn fait pour simplifier : a(t)=d(t) et r(t)=h(t)

cuve

a(t)r(t)

h

d(t)capteur

actionneur

• Soit hc, la hauteur de liquide souhaitée, ou consigne, ou encore référence :

– Loi de commande par tout ou rien (non linéaire) :

– Loi de commande linéaire :

)(

))(()(

hhkd

thhktd

c

c

0)()(

)()(

tdhth

dtdhth

c

MAXc

d(t) est la commandek est le gain de contre réactionhc-h est l’erreur d’asservissementh(t) est le retour

Boucle de rétroaction, feedback

Page 6: Introduction à la commande par ordinateur

Horloge d’échantillonnage, échantillonnage de l’entrée, blocage de la sortie

Commande par ordinateur implique :1. Rythmée par une période d’échantillonnage Te,

2. blocage d’ordre zéro (BoZ) de l’entrée de commande d,

3. échantillonnage de la sortie h(t)Te

Te

d(t)

d0 d1 d2

t

th1

h2

2Te

h(t)

hn=h(nTe)échantillonnage

entre t= nTe et t= (n+1)Te,d(t)=d(nTe) constante,Blocage d’ordre zéro

On passe en temps discret, les signaux changent ou sont mesurés aux instants nTe

0

0

d3…

Page 7: Introduction à la commande par ordinateur

Discrétisation du processus commandé par ordinateur

• Discrétiser, c’est calculer la relation récurrente entre la commande dn et la condition initiale hn à l’instant nTe et la sortie hn+1à l’instant (n+1)Te

• Pour cela, on tient compte du bloqueur d’ordre zéro, en intégrant l’équation différentielle différencielle du processus à entrée constante

• Par exemple entre t=0 et t=Te,

• On généralise entre nTe et (n+1)Te :

?)()(,0

)0(,)0(,01

0

00e

e

ThhdtdTt

ddhht

e

ee

Tdhh

dThTh

dh

001

0

0

)0()(

ennn Tdhh 1

Page 8: Introduction à la commande par ordinateur

Équation du système bouclé constitué du processus discrétisé plus la loi de commande programmé :

• Loi de commande programmée:

• Équation du système bouclé

• a est la racine unique du polynôme caractéristique du système bouclé (pôle, ou encore valeur propre) :

• Pour un système en temps discret, la stabilité EBSB s’obtient si tous les pôles sont de module inférieur à un

• Test du retour à l’équilibre :

)( nnn hckd

kTa

avec

cahah

kcThkTh

hckThh

hckd

dThh

e

nnn

nenen

nnenn

nnn

nenn

1

:

)1(

)1(

)(

)(

1

1

1

1

ar

0,0 ncn

00 h

?0nh

ne

nnnn kThaharh )1(00

?1

10lim

a

assihnn

Page 9: Introduction à la commande par ordinateur

Réponse à un échelon du système bouclé

• C’est un test de performance qui permet de mesurer la précision, la rapidité, le degré de stabilité du système bouclé selon la valeur de k

• Conditions du test :

• Réponse à un échelon du système bouclé (ou réponse indicielle) :

• La valeur de a est essentielle, – |a|>1, h tend vers l’infini avec n, instabilité– |a|<1, h tend vers 1 quand n tend vers l’infini– Plus |a| est petit, et plus la convergence est rapide– a=0, réponse pile en une période d’échantillonnage

• a est la racine du polynôme caractéristique associé à l’équation

?

,0,1,00

n

n

h

nch

0,1)1(1 nakTh nnen

nnn cahah )1(1

Page 10: Introduction à la commande par ordinateur

Choix de la valeur de a pour fixer un temps de réponse

• Dans le cas où

• La réponse indicielle obtenue est semblable à la réponse indicielle d’un processus en temps continu du premier ordre

• Or, le temps de réponse à 5% du processus du premier ordre vaut car

• D’où le calcul de a puis de k pour imposer un temps de réponse tr :

• C’est la technique du placement de pôles (qu’on reverra dans la suite)

10 a

0,1)1(1 nakTh nnen

0,1)( / teth t

3rt 95.011)3( 3/3 eeh

///)ln( )ln( ee TenTtann eaa

Teeea

etT

rr Takeatt re /13/ /3

Page 11: Introduction à la commande par ordinateur

Énergie de commande et écart quadratique

• On évalue l’énergie de la commande du processus entre t= 0 et t= HTe par :

• Énergie consommée par la commande durant la réponse indicielle

• Écart quadratique somme des carrés des écarts à la valeur finale visée

• La commande optimale linéaire quadratique à horizon fini calculer le gain k qui minimise un compromis entre l’énergie de commande et de l’écart quadratique

• H est l’horizon de la commande (HTe est la durée de la commande)

1

0

2

2

1 H

n nH dE

nnnnn akhkhckd )1()(

1

0

2

2

1lim

H

n nH dE

2

22)1(222

1

1

2)...1(

2

1

a

akaakE

HH

H

)1(2 2

2

a

kE

1

0

1

0

221

0

2

2

1)1(

2

1)(

2

1 H

n

H

n

nn

H

n nnH ahhcQ

Page 12: Introduction à la commande par ordinateur

Commande en boucle ouverte (c’est-à-dire sans contre -réaction)

• Problème : quelle succession de commandes l’ordinateur doit-il appliquer pour rejoindre le niveau hH dans la cuve partant du niveau h0 donc en H périodes d’échantillonnage, H est l’horizon de la commande

• Une infinité de solution (dans ce cas), qui vérifient toutes

• On pourra les comparer selon l’énergie de commande consommée, ou selon la commande maximum nécessaire, est elle supérieure à dMAX ou pas ?

1

10

100112

001

0

...H

n neH

eee

e

dThh

dTdThdThh

dThh

h

e

HH

n n T

hhd 01

1

Page 13: Introduction à la commande par ordinateur

Commande par ordinateur de processus plus complexes

• L’exemple précédent est simple :

– Une seule entrée : d

– Une seule sortie : h

– Une équation différentielle du premier degré

• L’exemple du Lunar Lander utilisé dans la suite du cours est complexe :

– Deux entrées : ax et ay, poussées verticale et horizontale des réacteurs

– Quatre sorties : • x et y, position du vaisseau par rapport à l’origine du repère, point d’alunissage

• vx et vy, vitesses horizontale et verticale du vaisseau LunarLander en phase d’approche

– Une équation différentielle de degré 4

• Dans la suite, on utilisera le formalisme matriciel de la représentation d’état et pour les calculs, on utilisera Scilab

Page 14: Introduction à la commande par ordinateur

On dispose d’une illustration des notions du cours avec l’animation Lunar Lander qui simule l’alunissage d’un module lunaire en 2D

Animation pédagogique tirée du site http://phet.colorado.edu/ et enrichie de plusieurs lois de commandes, Lunar Lander implémente :• des équations tirées de la relation fondamentale de la dynamique•Un modèle discrétisé à la période d’échantillonnage Te= 40 ms• un tableau de bord avec l’état des capteurs et actionneurs, ...•Plusieurs lois de commandes, ‘m’ manuel, ‘e’ pour retour d’état, •des paramètres de commande transmis par Scilab dans des fichiers texte• … on demande une analyse détaillée des fonctionnalités dans le premier td