master’istr’)’1ère’année ...ekladata.com/j3yj7xxak8rrhvt7q3__1hfnm94/fascicule2014.pdf ·...

24
MASTER ISTR 1ère Année 20112012

Upload: lekhue

Post on 12-Sep-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

MASTER ISTR -­‐ 1ère Année 2011-­‐2012

Page 2: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es
Page 3: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Systemes Lineaires Invariants1ere partie

2

Page 4: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

MASTER ISTR - 1ere Annee 2012-2013

SYNTHESE D’UN ASSERVISSEMENT DE POSITIONPAR RETOURS D’ETAT ET TACHYMETRIQUE

IMPLEMENTATION AVEC MATLAB/SIMULINK ETRTW TARGET

I Introduction

Cette manipulation se propose de realiser un asservissement de position en mettant en oeuvre lestechniques d’espace d’etat continu. Le procede utilise est la platine ”asservissement de position”, dejapresentee dans les textes des manipulations de licence EEA (3e annee) dont le schema de principe estrappele Figure 1.

Figure 1: Elements de la platine ”asservissement de position”

Les valeurs numeriques des coefficients connus sont

Ke = 10 V.tr−1 Ks = 10 V.tr−1 Kg = 0.105 V.s.tr−1.

Avant d’arriver en seance, vous devez imperativement :

• avoir obtenu les modeles lineaires dans l’espace d’etat,

• avoir realise toute l’etude theorique de l’analyse et de la commande (Choisir par defaut Km =7 et Tm =0.3 pour votre preparation theorique).

Sans ces realisations, il est illusoire de traiter le sujet.

1

Page 5: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

• Les fonctionnalites de MATLAB et de MATLAB-SIMULINK seront exploitees au mieux lorsde la seance de Travaux Pratiques pour valider la theorie ainsi que pour toutes les simulations.

• Les tests experimentaux sur le procede reel se feront en fin de seance: toutes les parties theoriquesseront completees et les tests en simulation MATLAB-SIMULINK seront realises et approuvespar les enseignants. Pour obtenir ces tests experimentaux (c’est-a-dire commander en tempsreel le procede via MATLAB-SIMULINK), on utilisera 1 PC assiste d’une carte entree-sortie(DAQ6024E) et d’un boıtier de raccordement (PC, procede). Dans cette manipulation, nouschercherons a n’utiliser qu’un PC pour effectuer la commande du procede en temps reel, par uncalculateur. Ainsi, aucun materiel supplementaire ne sera necessaire (GBF, oscilloscope, platinesdediees a base d’amplificateurs operationnels. . . ), comme le montre la Figure 2.

Figure 2: Asservissement de position par calculateur

II Etude preliminaire du procede

II.1 Representation et analyse de l’ensemble moteur, reducteur, potentiometre,generatrice tachymetrique

On considere le systeme en boucle ouverte d’entree vm(t) et de sortie θs(t), que l’on designe parSvm→θs .

1. Ecrire la representation d’etat de ce systeme, lorsque son vecteur d’etat est defini par :

x(t) =(x1(t), x2(t))T =(vs(t), vg(t))

T.

2. Determiner ses etats d’equilibre lorsque vm(t) est constante, et les caracteriser du point de vuede la stabilite.

Etablir les proprietes de commandabilite et d’observabilite de Svm→θs .

Interpreter physiquement les resultats de cette analyse.

2

Page 6: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

3. Justifier que ce systeme admet des representations compagnes de commande et d’observation.Determiner ces representations canoniques, ainsi que les changements de base qui les lient a larepresentation initiale.

On considere le systeme Svm→vg compris entre les signaux vm(t) et vg(t).

4. Ecrire la representation d’etat de ce systeme en conservant la definition du vecteur d’etat choisieen II.1.1.

5. Verifier que les proprietes de stabilite et de commandabilite du systeme Svm→vg sont identiquesa celles de Svm→θs , mais que le vecteur d’etat x(t) n’est pas observable a partir de vg(t).

Determiner quel mode est concerne par cette perte d’observabilite. Pourquoi ce resultat etait-ilprevisible ?

II.2 Identification des coefficients Km et Tm

6. Determiner experimentalement le gain en vitesse Km et la constante de temps mecanique Tm dumoteur a courant continu en indiquant le principe de la mesure ainsi que son mode operatoire .

III Mise en place d’un retour d’etat

L’asservissement de position est realise selon la loi de commande par retour d’etatvm(t) =NKeθr(t)−KTx(t) =Nvr(t)−KTx(t), avec K =(k1, k2)

T.

1. Deduire de l’expression de la matrice dynamique du systeme asservi les parametres de la com-mande proposee permettant d’agir sur ses poles.

Etablir l’expression du gain statique de l’asservissement lorsqu’il est asymptotiquement stable ;en deduire qu’il peut etre modifie par action sur N .

2. Justifier la possibilite d’annuler l’erreur de position de l’asservissement et de placer ses poles enp1, p2 =−2.4± 5.5j par un choix judicieux des parametres N et K.

Calculer K a partir de la representation d’etat du systeme Svm→θs , puis a partir de sa formecompagne de commande etablie en II.1.3.

Calculer N .

Comparer le schema de commande obtenu a la correction par contre-reaction tachymetriquepresentee Figure 4 et dont la synthese est proposee dans la section IV.2 : sachant que les gainsN et K sont realises par des amplificateurs analogiques, lequel des deux asservissements est leplus robuste du point de vue des performances en precision ?

3. Pour N= 1, Etablir la representation d’etat de l’asservissement a partir de la representationd’etat canonique compagne de commande du systeme Svm→θs etablie en II.1.3.

Conclure quant a la commandabilite du vecteur d’etat de l’asservissement par action sur laconsigne.

En deduire les zeros de l’asservissement pour N= 1 et pour N quelconque.

3

Page 7: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

IV Synthese d’un asservissement de position avec correction pro-portionnelle et retour tachymetrique

IV.1 Correction proportionnelle

On considere l’asservissement de position dont la grandeur de commande est definie par la relationvm(t) =k′1(vr(t)− vs(t)) =k′1Ke(θr(t)− Ks

Keθs(t)), avec k′1 > 0 et, ici, Ke = Ks. Cet asservissement est

presente Figure 3.

Figure 3: Asservissement de position avec correction proportionnelle

1. Ecrire la representation d’etat de l’asservissement.

Montrer qu’il peut etre entierement represente par une fonction de transfert. Donner l’expressionde celle-ci.

2. Determiner les expressions analytiques du gain statique, des zeros et des poles de l’asservissement.En deduire l’amortissement et la pulsation propre non amortie de ses poles dominants.

3. Calculer l’erreur de position de l’asservissement ainsi que son erreur de traınage en reponse a unechelon de vitesse.

4. Tracer le lieu sur lequel les poles de l’asservissement peuvent etre places par action sur k′1 > 0.

IV.2 Mise en place d’une contre-reaction tachymetrique

On ajoute une correction tachymetrique dans le schema precedent, conformement a la Figure 4.

5. Ecrire la fonction de transfert de la boucle interne de vitesse sous la forme K01+τp . Deduire des

calculs analytiques effectues dans la section precedente les nouvelles expressions du gain statique,des zeros et des poles de l’asservissement en fonction des gains k′1, k′2.

6. Dessiner les lieux des poles de l’asservissement lorsque k′1 est fixe a une valeur positive et k′2varie de 0 a +∞, selon que les poles en l’absence de contre-reaction tachymetrique sont reels oubien complexes conjugues.

En deduire les effets des gains k′1 et k′2 sur les performances temporelles du systeme asservi.

Indiquer intuitivement dans quelles zones du plan complexe la commande proposee – ou les gainsk′1 et k′2 sont supposes positifs – permet de placer les poles du systeme asservi.

4

Page 8: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Figure 4: Asservissement de position avec contre-reaction tachymetrique

7. Calculer les gains k′1 et k′2 tels que la reponse indicielle de l’asservissement presente un depassementde 25 % ainsi qu’un temps de reponse de l’ordre de 1.25 s.

8. Calculer l’erreur de position de l’asservissement. Le type de commande mis en oeuvre permet-ilde satisfaire une specification supplementaire sur l’erreur de traınage ?

V Prototypage sur le procede: implementation des lois de com-mande avec MATLAB-SIMULINK et RTW TARGET

Dans cette partie, on se propose de verifier les performances du systeme asservi de maniere experimentale,l’ensemble etant code dans l’environnement MATLAB-SIMULINK. Pour commander en temps reelle systeme, il faut utiliser la boıte a outils RTW TARGET.

5. Definir dans l’environnement de travail, une periode d’echantillonnage Te pour effectuer l’acquisitionet l’envoi des donnees du moteur. Justifier votre choix.

6. Pour la loi de commande par retour d’etat, effectuer le schema-bloc de l’asservissement, a partirdu fichier copie du serveur (vous devez le copier/coller du repertoire COMMUN (a partir de l’iconeposte de travail, puis connecter un lecteur reseau) dans un de vos repertoires de travail, dans laracine (Z:)).

7. Compiler et executer votre schema-bloc de l’asservissement (La demarche est decrite en An-nexe). Observer et mesurer les performances de systeme asservi (caracteristiques dynamiques,erreurs. . . ).

8. Comparer ces resultats reels aux resultats en simulation ainsi qu’a la theorie. Interpreter.

9. Pour toutes les autres lois de commande, suivre la demarche precedemment decrite. Observeret mesurer les performances de systeme asservi (caracteristiques dynamiques, erreurs. . . ). Com-parer ces resultats reels aux resultats en simulation ainsi qu’a la theorie. Interpreter.

VI Introduction to SIMULINK and Real-Time Workshop (Annexe)

SIMULINK is a powerful GUI simulation environment for the evaluation, prototyping and designof control systems using the MATLAB environment. Real-Time Workshop is an extension to the

5

Page 9: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

SIMULINK environment that allows you to compile executable code to run on embedded systemsdirectly from SIMULINK GUI code.

The ensemble of programs consists of four principal components:

• SIMULINK: SIMULINK is an interactive tool for modelling, simulating, and analyzing dynamicsystems. It enables you to build graphical block diagrams, evaluate system performance, andrefine your designs.

• Real-Time Workshop (RTW): Real-Time Workshop generates optimized, portable, and cus-tomizable ANSI C code from Simulink models. It automatically builds programs that execute inreal time or as stand-alone non real-time simulations. Generated code can run on PC hardware,DSPs or on micro-controllers on bare-board environments, and with commercial or proprietaryreal-time operating systems. The resulting code accelerates simulations on a wide variety ofreal-time rapid prototyping targets.

• Real-Time Window Target (RTWT): Real-Time Windows Target enables you to run Simulinkand Stateflow models in real time on your PC. You can create and control a real-time executionthrough Simulink. You generate C code, compile it, and start real-time execution on MicrosoftWindows while interfacing to real hardware using PC I/O boards. Other Windows applicationscontinue to run during operation and can use all CPU cycles not needed by the real-time task.

• I/O board: Signals are passed between the real world and RTWT in real-time mode via a PCbased data acquisition board. RT-Workshop supports a wide range of data acquisition boards.The laboratory is equipped with the DAQ6024E Devices.

VI.1 Creating a Simulink model with DAQ6024E device

i) Start SIMULINK either by typingsimulink3at the MATLAB command prompt or by double clicking on the appropriate icon.ii) Choosing components:At the Simulink Library Browser window, from File menu, choose Open and the file identif.mdl.Your workspace window titled identif.mdl will appear.iii) Connect componentsiv) Save modificationsv) Before running a RTWT model, it is necessary to compile and link the model.- Build model: Select Tools menu, Real-Time Workshop, Build Model.The build function invokes the c-compiler and the log of the compile process is output to the MATLABcommand window.If there are errors they are displayed in an error dialogue box.- Link Code: To link the code to the SIMULINK process choose external at the drop down menu inthe SIMULINK window.Choose Simulation, Connect to Target.- Run Experiment: Select Simulation, Start real-time code. It will run for the time specified in theSimulation, Simulation parameters, Solver, Start time/Stop-time parameters.vi) Modifying parameters during a real-time experiment: When running a real-time model it is possibleto change some parameters online without rebuilding the model.

6

Page 10: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Regulation d’un pendule inverse

1 But de la manipulation

Dans cette manipulation on se propose de realiser un asservissement permettant la regulation du penduleinverse representee par la Figure 1a en position haute comme le montre la Figure 1b. On utilisera pour celales techniques d’espace d’etat a temps continu. Cette manipulation est constituee de quatre grandes etapes :modelisation, analyse, regulation et implementation.

(a) Composants du pendule (b) Pendule regule en po-sition haute

Figure 1 – Le pendule (a) et la regulation du pendule en position haute (b)

Les objectifs du TP sont les suivants :– Savoir etablir un modele linearise autour d’un point d’equilibre.– Savoir etablir les proprietes structurelle d’un systeme lineaire.– Savoir synthetiser une commande par retour d’etat.– Savoir faire la simulation de modeles lineaires et non lineaires.– Savoir utiliser les differentes commandes MATLAB pour etudier un systeme.– Savoir utiliser Matlab et sa toolbox simulink.

Avant d’arriver en seance, vous devez imperativement :

1. avoir obtenu le modele lineaire dans l’espace d’etat.

2. avoir realise toute l’etude theorique de l’analyse et de la commande.

– Les fonctionnalites de MATLAB et de SIMULINK seront exploitees au mieux lors de la seance de TravauxPratiques. Les principales fonctions utilisees font partie de la CONTROL-TOOLBOX, pensez a utiliserl’aide de matlab et la fonction help.

– Les tests experimentaux sur le procede reel se feront en fin de seance : toutes les parties theoriques serontcompletees et les tests en simulation MATLAB-SIMULINK seront realises et valides par les enseignants.

Manip - 1

Page 11: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

2 Presentation du pendule inverse

Le pendule inverse de l’entreprise QUANSER est compose d’un moteur SVR02, qui entraine un bras disposanta son extremitee un pendule (tige) lie l’un a l’autre par une liaison pivot. Ce systeme possede deux capteurs(une roue codeuse chacune, voir N˚9 de Table 1) qui nous renseignent sur l’angle du pendule par rapport aubras et sur l’angle du bras par rapport au bati. Les differents elements du pendule sont decrits par la Figure 2.

Figure 2 – Composants du pendule

N˚ Composant1 SRV022 Vis3 Bras4 Logement d’arbre5 Arbre6 Raccord7 Pendule8 Connecteur de l’encodeur9 Encodeur

Table 1 – Nomenclature des composants de la maquette

3 Modelisation

La Figure 3 donne une representation schematique du pendule. Le bras est relie au moteur, qui entraine larotation du bras et donc du pendule. Il a une longueur Lr et un moment d’inertie Jr. Nous noterons son angleθ.

Le pendule, quant a lui, est fixe au bout du bras. Il a une longueur Lp. Son moment d’inertie au centre demasse est note Jp. On note l’angle que fait l’axe du pendule avec l’axe verticale α(en radian).

Manip - 2

Page 12: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Tous les calculs de la modelisation se feront en prenant pour origine, la position haute du pendule. Pour lesdescriptions et les valeurs numeriques des constantes se reporter a la Table 2.

z0

y0

x0

Pendule

Bras rotatif

α

θ

Lp

2

Lr

Figure 3 – Schema du pendule rotatif

Les equations du mouvement, determinees a l’aide de la mecanique Lagrangienne, sont donnees par deuxequations differentielles suivantes :

(mpL

2r +

1

4mpL

2p −

1

4mpL

2pcos(α)

2+ Jr

)θ −

(1

2mpLpLrcos(α)

)α+

(1

2mpL

2psin(α)

cos(α))θα+

(1

2mpLpLrsin(α)

)α2 =

ηgKgηmkt(Vm −Kgkmθ)

Rm−Br θ (1)

−1

2mpLpLrcos(α)θ +

(Jp +

1

4mpL

2p

)α− 1

4mpL

2pcos(α)sin(α)θ2 − 1

2mpLpgsin(α) = −Bpα (2)

3.1 Etude succinte du modele non lineaire

Dans un premier temps, nous allons etudier le modele non lineaire represente par les deux equations dumouvement (1) et (2).

1. Proposez les variables d’etat. Combien d’etats choisissez-vous ?

2. Determiner les points d’equilibre en fonction de Vm une tension constante. Combien y-en-a-t-il ? Pourquoi ?Montrer qu’il n’existe pas de point d’equilibre lorsque la tension appliquee au moteur est non nulle.

3. Les valeurs des points d’equilibre vous semblent-elles en accord avec le dispositif reel ?

4. En utilisant le simulateur non lineaire propose, simuler le dispositif non lineaire aux points d’equilibre. Quese passe-t-il ?

5. En utilisant le simulateur non lineaire propose, simuler pour des conditions initiales α = +10, θ = 0, α =0, θ = 0 et α = −10, θ = 0, α = 0, θ = 0. Obtenons les memes valeurs finales ?

Manip - 3

Page 13: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Symbole Description ValeurVm Tension envoye au moteurRm Resistance du moteur 2.60ΩLm Inductance du moteur 0.18mHkt Gain couple moteur/courant 7.68.10−3N.m/Akm Gain f.e.m 7.68.10−3V/(rad/s)Kg Rapport de vitesse 70ηm Rendement du moteur 0.69ηg Rendement du reducteur 0.90mp Masse du pendule 0.127KgLp Longueur du pendule 0.337mJp Moment d’inertie du pendule au centre de masse 0.0012Kg/m2

Bp Coefficient de frottement visqueux du pendule 0.0024Kg/m2

mr Masse du bras 0.257KgLr Longueur du bras, du pivot a l’extremite 0.216mJr Moment d’inertie du bras au centre de masse 9.98.10−4

Br Coefficient de frottement visqueux du bras 0.0024Kg/m2

Table 2 – Liste des donnees specifiques au systeme

3.2 Linearisation et obtention d’un modele lineaire

Nous choisissons comme variable d’etat

x(t) =

θ(t)α(t)

θ(t)α(t)

1. Lineariser le systeme non lineaire autour du point d’equilibre xe =

(0 0 0 0

)T. On pourra a cet effet

utiliser une decomposition en serie de Taylor arretee a l’ordre 1 :

f(z) = f(z0) +n∑i=1

∂f

∂zi

∣∣∣∣z0

(zi − zi0)

Montrer que l’on obtient pour le modele linearise en position haute le quadruplet (Ahaut, Bhaut, Chaut, Dhaut)(Vous pourrez faire les calculs numeriquement pour plus de simplicite) :

Ahaut =1

Jt

0 0 Jt 00 0 0 Jt

01

4m2pL

2pLrg

(Jp +

1

4mpL

2p

)(−Br −Kgkmγ) −1

2mpLpLrBp

01

2mpLpg

(Jr +mpL

2r

) (1

2mpLpLr

)(Br −Kgkmγ) −

(Jr +mpL

2r

)Bp

Bhaut =1

Jt

00(

Jp +1

4mpL

2p

1

2mpLpLrγ

Chaut =

(1 0 0 00 1 0 0

)

Manip - 4

Page 14: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Avec γ =ηgKgηmkt

Rmet Jt = JpmpL

2r + JrJp +

1

4JrmpL

2p

2. Definir le systeme lineaire sous Matlab a l’aide de la commande ss(A,B,C,D).

3. Simuler la reponse a des conditions initiales et comparer avec le simulateur non lineaire. Discuter de lavalidite du modele linearise.

4 Analyses temporelle et structurelle du modele linearise

1. Analyser la stabilite asymptotique du point d’equilibre haut. (eig).

2. Calculer la matrice de commandabilite. Donner son rang. (ctrb, rank).

3. Calculer la matrice d’observabilite. Donner son rang. (obsv, rank).

4. Conclure sur la commandabilite et l’observabilite du modele linearise.

5. Facultatif. Determiner la fonction de transfert du modele linearise. Donner les ordres des fonctions detransfert. Est-ce logique ?

5 Regulation du modele linearise

On rappelle que l’on ne dispose pas des mesures de vitesse. Dans le cadre du TP de SLI1, ces donnees serontsupposees deja reconstuites afin de pouvoir faire un retour d’etat.

1. Proposer un schema de loi de commande permettant de placer les valeurs propres du systeme boucle en[−108 −0.3 −4.3 + 2.2i −4.3− 2.2i

]T. Justifiez le choix des valeurs propres.

2. Simuler la reponse aux conditions initiales sur le modele linearise. (on pourra prendre des conditionsinitiales proches du point d’equilibre)

3. Simuler la reponse aux conditions initiales sur le modele non lineaire en utilisant le simulateur non lineairepropose. Comparer avec le modele lineaire.

4. Que se passe-t-il si nous choisissons des conditions initiales trop eloignees du point d’equilibre ?

5. En utilisant le reconstructeur d’etat propose, verifier en simulation que le systeme en boucle fermee estbien stabilise.

6 Implantation de la loi de commande sur le dispositif reel

La derniere section nous a permis de simuler et donc de valider le choix d’un retour d’etat stabilisant pourla position haute du pendule. Nous pouvons desormais implanter le retour d’etat sur le dispositif reel. Le fichiertmaintient − pendule − en − haut.mdl est un fichier analogue au fichier Simulink que vous avez utilise pour lasimulation. Par contre, le bloc espace d’etat est remplace par un bloc dont les entrees et les sorties sont cellesd’une carte E/S pilotant le pendule inverse reel. Ainsi, en compilant ce fichier, Une toolbox de Matlab generea partir du modele un code execute en temps reel par le PC et dialoguera avec le systeme reel au travers de lacarte. Nous allons A FAIRE AVEC L’ ENSEIGNANT.

1. Ouvrir le fichier tmaintient − pendule − en − haut.mdl, entrer les valeurs du retour d’etat dans la boiteprevue a cet effet.

2. Compiler le fichier, connecter et laisser l’interrupteur sur 0, monter le pendule a la main et switcher lacommande.

3. Que constatez vous sur l’angle θ ?

Manip - 5

Page 15: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

7 Approche robuste : commande integrale

Supposons que les perturbations affectant le systeme en boucle fermee puissent etre vu comme une pertur-bation constante agissant sur la sortie θ. On considere le dispositif de commande de la Figure (4).

−+0 1

p

θε(t)−Ki

θε(t)

−+ Modele lineariseV m θ(t)

K

Figure 4 – Retour d’etat avec commande integrale

1. Ecrire la representation d’etat de ce systeme en considerant le nouveau vecteur d’etat :

xint(t) =[θ(t) α(t) θ(t) α(t) θε(t)

]T2. Le retour d’etat considere sur la Figure 4 conduit a la loi de commande Vm = −Kintxint avec Kint =[

K Ki

]3. Calculer le retour d’etat Kint en placant les valeurs propres du systeme boucle avec integrateur en[−108 −4.3 + 2.25i −4.3− 2.25i −0.4 + 0.35i −0.4− 0.35i

]TA FAIRE AVEC L’ ENSEIGNANT.

4. Realiser l’implementation sur le dispositif reel.

5. Que constatez vous ?

8 Montee du pendule

On se propose maintenant de partir du point d’equilibre bas pour arriver au point d’equilibre haut.

1. Sachant que les equation non lineaires ont pour origine le point d’equilibre haut. Comment feriez vous pourobtenir un modele linearise au point d’equilibre bas.

2. Proposer une loi de commande permettant de realiser cette application (Aucun calcul n’est demande).

Remerciements : Une grande partie de ce TP a ete realise par des etudiants du M1 ISTR 2012/2013,Messieurs Gelas, Maitre, Miral, suite a un TER sur le meme sujet. Merci a eux pour leur contribution efficace

9 Annexe : determination des equations du mouvement

Les equations du mouvement, determinees a l’aide de la mecanique Lagrangienne. Une des grandes forces dela description lagrangienne est de pouvoir faire abstraction des contraintes d’un systeme, qu’il s’agisse de l’angleforme par un pendule ou de l’abscisse d’un mobile, toutes les coordonnees sont traitees sur un pied d’egalite :on parle de coordonnees generalisees (appelee aussi degres de libertes). Ici nous avons deux coordonneesgeneralisees l’angle du bras et l’angle du pendule :

q(t) =[θ(t) α(t)

]T

Manip - 6

Page 16: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Le centre de la description lagrangienne de la mecanique est une quantite, appelee lagrangien . Il s’agitd’une energie, definie par :

L(q, q) = T (q, q)− V (q),

ou T l’energie cinetique totale du systeme (qui fait intervenir les vitesses) et V l’energie potentielle totale(qui fait intervenir les positions).

On peut maintenant obtenir alors un jeu d’equations differentielles appelees equations d’Euler-Lagrange.Pour un systeme possedant n degres de liberte spatiale, donc decrit par n coordonnees generalisees, il y a nequations d’Euler-Lagrange. Le procede possedant deux degres de liberte, on a donc deux equations :

d

dt

(∂L

∂θ

)− ∂L

∂θ= Q1,

d

dt

(∂L

∂α

)− ∂L

∂α= Q2,

ou Q1, Q2 sont les forces generalisees (forces et couples) externes au systeme ou ne derivant pas d’un po-tentiel. Ici, pour les forces qui concernent le bras (Q1), il y a des frottements visqueux et le couple resultant dumoteur a courant continu. Pour le pendule (Q2), il y a seulement des frottements visqueux qui sont pris en compte.

C’est ici qu’apparaissent les avantages de cette description : peu importe le systeme de coordonnees ou lacomplexite du systeme, ce sont toujours ces memes equations qui le regissent. On arrive ainsi toujours a etablirles equations du mouvement.

Finalement, apres des calculs on obtient un jeu de deux equations differentielles qui decrivent le mouvementdu procede :

(mpL

2r +

1

4mpL

2p −

1

4mpL

2pcos(α)

2+ Jr

)θ −

(1

2mpLpLrcos(α)

)α+

(1

2mpL

2psin(α)

cos(α))θα+

(1

2mpLpLrsin(α)

)α2 =

ηgKgηmkt(Vm −Kgkmθ)

Rm−Br θ

−1

2mpLpLrcos(α)θ +

(Jp +

1

4mpL

2p

)α− 1

4mpL

2pcos(α)sin(α)θ2 − 1

2mpLpgsin(α) = −Bpα

Manip - 7

Page 17: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Systemes Lineaires Invariants2nde partie

3

Page 18: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

MASTER ISTR - 1ère Annee 2011-2012ETUDE SIMULÉE de la COMMANDE PAR RETOURDE SORTIED'UN SYSTÈME DE BACS D'EAUI Objet de la manipulationLe but de ette manipulation est de réaliser un asservissement de niveau par retour de sortie. Eneet, le ve teur d'état du pro édé hydraulique n'est pas entièrement a essible par la mesure. On sepropose ainsi de mettre en oeuvre l'estimation de l'état par un observateur.II Présentation du systèmeLe pro édé est le même que elui qui a été utilisé dans le TP du module I4 intitulé "Modélisa-tion, analyse et ommande d'une distribution hydraulique à trois ba s d'eau". Nous redonnons i i les ara téristiques essentielles de la manipulation.II.1 Le pro édéLe système représenté sur la gure 1 est omposé de trois ba s ylindriques en plexiglas de se tionS. Ces trois ba s sont disposés en série (de gau he à droite, on trouve les ba s 1, 3 et 2) et sont reliéspar des tuyaux d'é oulement de se tion Sn. Le dernier ba 2 se vide par un ylindre, également dese tion Sn, dans le réservoir situé sous les ba s. Deux pompes de débit Q1(t) et Q2(t) permettent deremplir respe tivement les ba s 1 et 2 ave l'eau ré upérée dans le réservoir, le système fon tionnanten ir uit fermé.Les valeurs données par le onstru teur sont S = 0, 0154m2 et Sn = 5.10−5m2. Les pompes obéissentà la relation suivanteVqi(t) = kQi(t) + b, i = 1, 2 ave k = 1, 6.105 et b = −9, 2592où Vqi et Qi(t) représentent respe tivement la tension appliquée à la pompe i et le débit orrespondant.Les pompes sont alimentées par une tension omprise entre [−10V, 10V ]. Ainsi le débit maximal délivréepar une pompe est 12.10−5m3/s lorsque la tension appliquée est de +10V . Les apteurs de niveaud'eau sont supposés linéaires autour du point de fon tionnement. Leur ara téristique est modélisé parl'équation suivante :

Hi = kiVhi(t) + bi

Hi est exprimé en mètres.1

Page 19: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

Figure 1 Pro édé trois ba sII.2 Le modèle linéariséNous onsidérons le pro édé a tionné par la seule pompe n°1. Son débit Q1 est ompris entre[0, Qmax] suivant sa tension d'alimentation ; le débit Q2(t) délivré par la pompe 2 sera nul tout au longde la manipulation. Ainsi, les diérentes hauteurs H1(t), H2(t) et H3(t) respe tent par onséquent la ondition H1(t) ≥ H2(t) ≥ H3(t). La seule mesure disponible lors de ette manipulation est la mesurede la hauteur d'eau H1.A l'instar du TP "Modélisation, analyse et ommande d'une distribution hydraulique à trois ba sd'eau", nous allons travailler sur un modèle aux faibles variations autour d'un point d'équilibre H0 etd'un débit Q10 à e point d'équilibre de telle sorte que :

Q1(t) = q1(t) +Q10

H1(t) = h1(t) +H10

H2(t) = h2(t) +H20

H3(t) = h3(t) +H30ave H0 = [H10 H20 H30]

T = [0, 27474 0, 1368 0, 0299]T

Q10 = 3, 5.10−5Les variations de hauteurs h1, h2 et h3 vérient la ondition suivante :h1(t) ≥ h2(t) ≥ h3(t). En rappelant que la sortie mesurée est la hauteur d'eau H1(t), e qui permet d'obtenir la variation

2

Page 20: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

de hauteur d'eau h1(t), le modèle d'état linéarisé autour du point d'équilibre du pro édé est donné par

h(t) =

−1

SR13

1

SR130

1

SR13−

1

S

(

1

R13+ 1

R32

)

1

SR32

0 1

SR32−

1

S

(

1

R32+ 1

R20

)

h(t) +

1

S

0

0

q1(t)

y(t) = [1 0 0]h(t)ave h(t) = [h1(t) h2(t) h3(t)]. De manière onventionnelle, les matri es dynamique, de ommande etd'observation seront notées A, B, C.III Analyse et Cal ul d'une loi de ommande par retour d'état1. Le modèle linéarisé est-il ommandable ? Justiez votre réponseOn onsidère pour ette étape de synthèse de la loi de ommande que l'ensemble des états estmesuré. La loi de ommande devra répondre aux spé i ations du ahier des harges suivant : le temps de réponse tr de la sortie doit respe ter tr ≤ 90 s, l'erreur doit être nulle en régime permanent, le système doit rester dans le adre d'une étude linéaire, 'est-à-dire que la vanne ne doit passaturer : 0 ≤ Q1(t) ≤ Qmax.La loi de ommande hoisie est un retour d'état lassique représenté sur la gure 2+

-PSfrag repla ements N

K

w(t) [m q1(t) [m3/sh(t) [m

h1(t) [mModèle linéaireFigure 2 Retour d'état1. En rappelant que le ahier des harges est identique à elui pres rit dans le TP du module I4, al ulez les valeurs des gains K et N permettant de remplir l'ensemble des onditions.Donner les tra és de q1(t) et de h1(t) ainsi que le s héma blo .IV Implantation de la loi de ommandeNous onsidérons maintenant que seul l'a ès à la mesure de h1 est possible. La mise en pla e d'unestimateur du ve teur d'état est don né essaire. 3

Page 21: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

+

_PSfrag repla ements

N

K

w(t) [m q1(t) [m3/sh(t) [m

h1(t) [mModèle linéaireObservateurFigure 3 Retour d'étatIV.1 Cal ul d'un observateur minimal identité1. Le modèle linéarisé est-il observable ? Justiez votre réponse2. Cal uler un observateur minimal identité admettant un temps de réponse 5 fois plus rapide quele système bou lé par le retour d'état al ulé pré édemment.3. Insérer dans votre s héma Simulink l'observateur sous la forme d'un blo State-Spa e.4. Vérier, en bou le ouverte, que les états estimés onvergent vers les états réels du système linéarisélorsque les hauteurs initiales sont non nulles. Evaluer la vitesse de onvergen e.5. Réaliser le bou lage déterminer dans le paragraphe pré édent en utilisant les états estimés ( f.gure 3).6. Evaluer l'inuen e des onditions initiales de l'état de l'observateur sur les ara téristiques dy-namiques de la bou le fermée (temps de réponse, dépassement...). Déduire une règle générale surl'inuen e de l'observateur sur le omportement entrée/sortie de l'asservissement.7. Donner les 3 ourbes suivantes : S héma Simulink de l'asservissement par retour de sortie ; Evolution de l'erreur d'estimation ; Evolution de la onsigne et de la sortie mesuréeIV.2 Bruit sur la sortie mesuréeLa mesure délivrée par le apteur de niveau du ba 1 est perturbée par un bruit sinusoïdal ; lasortie mesurée est alors y(t) = Ch(t)+v(t) où v(t) est une sinusoïde d'amplitude 1 mm et de pulsation

10 rad/s−1 ;1. Que onstate-t-on sur la sortie du système et sur les états estimés pour le s héma pour le s hémade ommande pré édent ?2. Cal uler un nouvel observateur de dynamique uniquement 2 fois plus rapide que le systèmebou lé par le retour d'état. Quel eet e hangement a-t-il sur la sortie du système et sur sesétats estimés ?3. Expliquez le phénomène observé lors des deux dernières questions en vous basant sur une analysefréquentielle des observateurs. 4

Page 22: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

SYNTHESE D’UN ASSERVISSEMENT

DE POSITION PAR RETOUR D’ETAT

CONTINU AVEC OBSERVATEUR

I But de la manipulation

Cette manipulation se propose de realiser un asservissement de position en mettant en oeuvreles techniques d’espace d’etat continu. Le procede utilise est la platine ”asservissement deposition”, deja presentee dans les textes des manipulations de licence EEA ainsi que dumodule Automatique Systeme Lineaire Invariant I et dont le schema de principe est rappeleFigure 1.

θr(t) θs(t)vr(t) vm(t) θm(t) θm(t)

vs(t)vg(t)

Ke

Kg Ks

Km

1+Tmp1

p1

9

Figure 1 – Schematisation de la platine ”Asservissement de position ”

Les valeurs numeriques des coefficients connus sont

Ke = 10V.tr−1 Ks = 10V.tr−1 Kg = 0.105V.s.tr−1.

II Identification et analyse du procede

1. Determiner experimentalement le gain en vitesseKm et la constante de temps mecaniqueTm du moteur a courant continu en indiquant le principe de la mesure ainsi que sonmode operatoire .

On considere le systeme en boucle ouverte d’entree vm(t) et de sortie θs(t), que l’on designepar Svm→θs .

Asservissement de position – 1

Page 23: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

2. Ecrire la representation d’etat de ce systeme, lorsque son vecteur d’etat est defini parx(t) =(x1(t), x2(t))

T =(vs(t), vg(t))T.

3. Rappeler les proprietes de commandabilite et d’observabilite de Svm→θs .

Interpreter physiquement les resultats de cette analyse.

III Mise en place d’un retour d’etat

2. Rappeler la justification de la possibilite d’annuler l’erreur de position de l’asservisse-ment par un choix judicieux d’un gain de retour d’etat K et de pre-compensation N

3. Calculer les gainsK etN permettant de placer les poles du systeme asservi en p1, p2 =−2.4± 5.5jet d’annuler l’erreur statique.

4. Donner la representation d’etat de la boucle fermee Svr→θs .

IV Compensation par retour d’etat avec observateur

On envisage maintenant les cas ou l’une des composantes du vecteur d’etat est inaccessibleou bien trop bruitee pour etre utilisee dans la commande, et on examine le probleme de sonestimation.Cette section concerne la mise en place d’un observateur de l’etat x2(t) = vg(t) du systeme

Svm→θs. Le retour d’etat propose dans la section III est effectue sur x(t) =(x1(t), x2(t))T, ou

x2(t) est l’estime de x2(t) genere a partir de la seule connaissance de l’entree vm(t) et de latension de sortie vs(t)= Ksθs(t).

2. Expliquer pourquoi vg(t) ne peut pas raisonnablement etre reconstituee par filtrage devs(t) a l’aide d’un circuit (pseudo-)derivateur.

3. A partir de la representation d’etat du systeme Svm→vs compris entre vm(t) et vs(t) etde vecteur d’etat x(t) =(x1(t), x2(t))

T =(vs(t), vg(t))T, etablir les equations d’un obser-

vateur identite permettant de reconstituer vg(t).

4. Calculer les gains de l’observateur de maniere a modifier ses poles pour que l’observateursoit 2 fois, 4 fois et 8 fois plus rapide que la dynamique de la boucle fermee.

5. Construire sous Simulink le schema-bloc de asservissement. Les systemes sous formed’etat seront represente par de bloc State-Space de la libraire Continuous de Simulink.Ces bloc presente l’avantage de permettre la specification de conditions initiales.

Visualiser sur Simulink les effets du choix des poles de l’observateur sur la vitesse deconvergence de l’estimation pour un etat initial du moteur non nul a savoir θs(0) =

π2

et θm(0) = 0).

V Prototypage sur le procede : implementation des lois de

commande avec Matlab-Simulink et RTW TARGET

Dans cette partie, on se propose de verifier les performances du systeme asservi de maniereexperimentale. Afin de mettre en place la commande en temps reel de la manipulation, nousexploiterons l’environnement Matlab-Simulink et le moteur temps reel fourni par la boitea outils Real-Time Workshop. La mise en place de cette demarche est explique en annexe.

Asservissement de position – 2

Page 24: MASTER’ISTR’)’1ère’Année ...ekladata.com/J3Yj7XXak8rrhvt7Q3__1hfNm94/fascicule2014.pdf · Le proc ed e utilis e est la platine "asservissement de ... Les fonctionnalit es

6. Mettre place la lois de commande par retour d’etat et par reconstruction du signalvg(t). L’observateur choisi sera celui qui a permis de converger le plus vite vers l’etatdu systeme lors des essais effectue dans la section IV.

7. Comparer les resultats obtenus avec ceux issus de la simulation. Quel est l’origine deces observations.

8. Proposer et mettez en place une solution permettant de ne pas degrader les performancesinitialement constatees lors des simulations.

I Creer et compiler un modele Simulink pour le prototypage

du banc moteur

1. Copier dans votre espace personnel le fichier identif_ni.mdl stocke dans le repertoire ? ?/ ? ?/ ? ?et l’ouvrir depuis Simulink.

2. Construire le schema bloc d’asservissement en considerant le bloc ? ?bleu ? ? comme etantle moteur. Ce bloc est, en fait, compose de sous blocs d’emulation des entrees et sortiesde la carte d’acquisition DAQ6024E de National Instrument.

3. Declarer dans Matlab la periode d’echantillonnage du processus temps reel : Te=.05.

4. Compiler le modele obtenu apres l’avoir sauvegarde. A cet effet, vous selectionnerez lafonction Build du menu Tools/Real-Time workshop.En cas d’erreurs, une boite de dialogue s’ouvrira.

5. Demarrer le processus temps reel en chargeant le code compile sur la carte d’acquisition :

(a) Choisir External dans le menu deroulant de la barre d’outils de la fenetre dumodele.

(b) Connecter le modele a la cible en cliquant Connect to target dans le menu Simu-lation.

6. Lancer l’experimentation avec la fonction Start real-time code du menu Simulation. Letemps d’experimentation est specifie par les parametres de simulation Start-time/Stop-time

7. REMARQUE : a chaque modification du schema le modele Simulink doit etre recom-pile. Cependant certains parametres des blocs peuvent etre modifie sans avoir a executerune nouvelle compilation.

Asservissement de position – 3