Beruflich Dokumente
Kultur Dokumente
Travaux Pratiques
Edouard Laroche
Wael Bachta
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008
Généralités
1 Lieu
Les TP ont lieu dans la salle d’automatique de l’ENSPS, située salle C003 du pôle API
(sous-sol au bâtiment C). En entrant par l’accès principal du pôle API, dirigez vous vers la
gauche afin de rejoindre le bâtiment C. Après avoir passé un couloir, vous pouvez atteindre le
niveau zéro du bâtiment en empruntant l’ascensseur situé en face du distributeuyr de boissons
ou en empruntant l’escalier situé à proximité. L’accès au pôle API se fait à partir la ligne A
du tram, direction Illkirch-Luxenbuhl, arrêt Campus d’Illkirch. Un plan d’accès est disponible
à l’adresse : http ://lsiit/localisation.php ?plan=1
2 Préparation
Il est impératif de préparer chaque séance de travaux pratiques. On estime entre 2 et 4
heures le temps nécessaire pour préparer un TP. En préparation au premier TP, il est fortement
conseillé de s’auto-former sur Matlab-Simulink en utilisant la salle en accès libre de l’IPST.
Une feuille de préparation est placée à la fin de chaque énoncé et vous permet de rassembler
les éléments importants de la préparation. Cette feuille pourra être jointe au compte-rendu de
TP.
2.1 Rotation
Groupes 1 à 3 Groupes 4 à 6 Groupes 7 à 9
s1 Tp1 Tp2 Tp3
s2 Tp2 Tp3 Tp1
s3 Tp3 Tp1 Tp2
2
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008
5 Évaluation
L’évaluation des TP inclut :
– la préparation,
– le travail réalisé lors de la séance,
– la qualité du compte-rendu.
En principe, deux étudiants d’un même binôme ont la même note. Cependant, si un désé-
quilibre important apparaı̂t dans le travail fourni, des notes différentes pourront être attribuées.
En particulier, les retards importants, les départs anticipés de la salle de TP ou les absences
injustifiées pénaliseront l’étudiant concerné.
3
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008
7.1 Identification
L’étape d’identification consiste à obtenir un modèle du procédé considéré. Elle n’est pas
absolument nécessaire à la correction des systèmes (auto-réglage, réglage à partir de dia-
grammes harmoniques) mais elle est souvent utile pour amener une meilleure compréhension
des problèmes pratiques rencontrés. Pour simplifier, l’identification consiste à obtenir une fonc-
tion de transfert modèle à partir de la mesure de son comportement entrée - sortie. Pour cela,
plusieurs méthodes peuvent être envisagées :
– On dispose d’un modèle physique partiel qui permet de connaı̂tre la forme de la fonction
K
de transfert. exemple : G(s) = transfert approché pour un moteur à courant
s(s + a)
continu de petite taille et à faible vitesse entre tension d’induit et position de l’arbre.
L’identification vise alors à déterminer au mieux la valeur des paramètres inconnus. Cela
peut être fait par exemple en relevant le diagramme de Bode du système (voir TP2) ou
sa réponse indicielle.
– On dispose d’un modèle physique d’une partie du système seulement. Par exemple, Q on sait
Ke−τ s m (s − zi )
que le système contient un retard, mais son ordre est inconnu : G(s) = Qn i=1 .
i=1 (s − pi )
On cherchera alors, à partir de la réponse indicielle ou de la réponse harmonique (dia-
gramme de Bode) à trouver un modèle aussi simple que possible mais approchant cor-
rectement le comportement physique réel (voir TP3).
– On ne dispose d’aucune information sur le système qui est considéré comme une boı̂te
noire. On essaie alors d’obtenir des mesures entrées - sortie en balayant toute la dynamique
de fonctionnement du système à l’aide de SBPA (séquences binaires pseudo-aléatoires)
4
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008
7.2 Analyse
L’analyse consiste à étudier les caractéristiques du système, soit à partir d’un modèle (obtenu
par identification), soit directement à partir de mesures (réponse indicielle, diagrammes de
Bode) et à les confronter aux besoins c’est-à-dire au cahier des charges.
7.3 Correction
En pratique la correction sera généralement décomposée en 3 étapes :
– la synthèse d’un correcteur à partir du modèle obtenu lors de l’étape d’identification ou
directement à partir de mesures entrée - sortie. Pour cela on utilisera principalement le
lieu d’Evans et les diagrammes de Bode
– la simulation de l’effet du correcteur sur le modèle. Pour cela on utilisera Simulinkqui est
un outil de simulation. Cette étape est très importante car elle permet d’estimer l’effet
de la correction en prenant en compte des aspects qui peuvent difficilement être intégrés
dans l’étape de synthèse : non-linéarité telles que saturation, effet de perturbations et de
bruits, robustesse (en modifiant légèrement le modèle), etc. Si la simulation ne donne pas
les résultats attendus, il faut retourner à l’étape de synthèse.
– l’implémentation de la correction. Vous disposerez pour cela de blocs électroniques per-
mettant de réaliser des fonctions de transfert électroniques sur lesquels vous devrez régler
les paramètres choisis.
5
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 1
1 Objectif
En Automatique, on utilise différentes représentations des systèmes linéaires : on considère
parfois leur réponse fréquentielle, leur réponse temporelle, ou encore la carte des zéros et des
pôles.
L’objectif de la première partie de ce TP est de bien comprendre les correspondances entres ces
différentes représentations. Dans un deuxième temps, on effectuera une synthèse d’asservisse-
ment en considérant le lieu des pôles en boucle fermée (lieu d’Evans).
L’ensemble du TP est effectué en simulation sous Matlab.
2 Préparation
L’ensemble de ce TP peut être effectué en autonomie dans la salle informatique en accès
libre de l’IPST. L’utilisation des outils Matlab et Simulink est relativement aisée. Vous pouvez
utiliser l’aide mémoire placé à la fin de ce fascicule. Vous pouvez également utiliser les fas-
cicules disponibles aux adresses http ://eavr.u-strasbg.fr/˜laroche/student/Math/Matlab.pdf et
http ://eavr.u-strasbg.fr/˜bernard/education/fip 1a/matlab fip1a.pdf.
Chaque étudiant qui ne maı̂trise pas l’utilisation de Matlab/Simulinkpour l’au-
tomatique doit prendre le temps de s’autoformer avant la séance de TP. Pour l’ensem-
ble des étudiants, il vous est fortemnt conseillé de travailler l’ensemble du TP avant la séance,
ce qui vous permettra, lors de la séance de TP, de compléter les points qui seraient demeurés
obsurs. Les étudiants qui auront réalisé l’ensemble du TP seront autorisés à quitter la séance.
Dans tous les cas, il est impératif d’effectuer les deux premières parties avant la séance de TP.
3 Manipulation
3.1 Relation entre valeurs des pôles et des zéros, réponse fréquentielle
et réponse indicielle
Cette partie ne devrait pas vous prendre plus d’une heure
Pour chacune des fonctions de transfert données, le travail consiste à :
– simuler sous Matlab/Simulink la réponse à un échelon de différentes fonctions de transfert
linéaires ;
– visualiser leurs cartes de pôles et zéros (fonction pzmap) leur réponse indicielle (fonction
step) et leur réponse fréquentielle (fonctions nyquist et bode) ;
– répondre aux questions de l’énoncé.
La boı̂te à outils Control de Matlab permet de manipuler des objets symboliques représentant
des fonctions de transfert linéaires continues ou échantillonnées (notion de LTIMODEL). La
commande tf permet de créer un système continu ou discret en donnant les coefficients des
6
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 1
polynômes au numérateur et au dénominateur. Utiliser l’aide en ligne (help tf) pour plus
d’informations.
Liste des fonctions de transferts continues à simuler avec Simulink :
1 1 1 1 1
1. , , , , . Quel critère ont les pôles d’un système stable ? Com-
1 + s 1 + 0, 1s s 1 − 10s 1 − s
ment reconnaı̂t-on un intégrateur sur la carte des pôles et des zéros ? Quelle est sa réponse
indicielle ? Est-il stable ?
1 1 1
2. , , . Comment se situent les pôles rapides par rapport aux pôles
1 + s 1 + 0, 1s 1 + 0, 01s
lents ? Entre deux systèmes de bandes passantes différentes, quel est le plus lent ?
1
3. , en prenant d’abord ω0 constant et ξ variable, puis l’inverse. Où sont les
s s2
1 + 2ξ + 2
ω0 ω0
pôles d’un système du second ordre sur-amorti (ξ > 1) ? Même question pour un système
sous amorti (ξ < 1). Quesqu’ont en commun les paires de pôles ayant même ω0 ? Le même
ξ ? Quel est l’intérêt de l’abaque tracé par la fonction sgrid ?
5. Expliquer la notion de pôle dominant. Dans une paire de pôles complexes conjugués,
lequel domine ?
7
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 1
10
20
-6
−10
Ampl. (dB)
−20
−30
−40
−50
−1 0 1
10 10 10
w(rad/s)
−50
phase (deg)
−100
−150
−200
−1 0 1
10 10 10
w(rad/s)
8
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 1
9
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 2
Ve ω θ
kv 1
+ τs)
(1+ s
Vω
g
Vθ
β
2 Préparation
2.1 Identification du système
Les gains get β étant connus, il nous faut identifier le transfert entre Ve et Vω , supposé être
un premier ordre.
10
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 2
11
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 2
γf Frottement total =
Frottement sec +
Frottement visqueux
ω
Vp
Ve - ω θ Vθ
Vref + kv 1
K β
+ + τs)
(1+ s
-
12
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 2
K représente un gain réglable. Vp est une perturbation externe sur la tension de commande
du moteur, modélisant les actions extérieures comme un couple de charge.
Vθ Vθ
1. Calculer les fonctions de transfert et en boucle fermée sous la forme canonique
Vref Vp
K0
s2 s
. Donnez les expressions de K0 , ω0 et ξ en fonction des paramètres du
2
ω0
+ 2ξ ω 0
+ 1
modèle.
2. Donner l’erreur statique du système vis-à-vis de la consigne.
3. Donner l’erreur statique vis-à-vis de la perturbation.
4. Quelle est l’influence de K sur le comportement en boucle fermée ?
5. Déterminez l’expression de K permettant d’imposer l’amortissement à une valeur donnée.
Vθd + +
Ve ω θ
kv 1
K2
(1 + τs) s
- - Boucle
interne
Vω
K1 g
Vθ
β
13
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 2
3 Manipulation
La maquette utilisée dans ce TP est un banc expérimental H.M.C. composé d’un moteur
à courant continu de capteurs de position et de vitesse. Les correcteurs seront réalisés sur un
simulateur analogique de fonctions de transfert Opale I.
14
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 2
15
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 3
P
80W
15W V
-5,6V 5,6V
π
Vc ε V P θ1 + θ
+ Etage de Echangeur Tube de
Correcteur
puissance de chaleur + plastique
-
Vr
Pont de
sonde
Wheatstone
16
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 3
1.3 Régulateur
On utilisera différents types de correcteur. La maquette didactique comporte un régulateur
proportionnel dont nous donnons ici une description. Il règler la puissance P fournie à la
résistance chauffante, proportionnellement à l’écart ε (ε = Vc − Vr ). Le signal d’erreur ε est
appliqué à l’entrée d’un amplificateur dont le gain Ka peut être ajusté de 0, 5 à 20, à l’aide du
potentiomètre marqué “proportional band”. La tension résultante Ka ε, après limitation à une
valeur comprise entre −5, 6 et +5, 6 V , pilote un étage qui commande la puissance P dissipée
par effet Joule, suivant une loi linéaire :
P = Kt Ka ε + 47, 5
avec a < b.
2 Préparation
Lors du TP, on cherchera à établir le modèle du système en boucle ouverte en analysant
la réponse indicielle. Le but de la préparation est de prévoir l’allure des signaux et des dia-
grammes en supposant connue la structure du modèle. De plus, on présente ici une méthode
d’identification pratique (la méthode de Strejc) qui sera utilisée dans le TP. Enfin, un exercice
simple permet de revoir comparativement les correcteurs P, PI et PID.
2.1 Identification
On envisage deux méthode d’identification destinées à obtenir un modèle de synthèse qui
sera utilisé par la suite pour la synthèse du correcteur.
17
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 3
18
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 3
2.3.5 Comparaison
Comparez les temps de réponse du système asservi avec les différents correcteurs.
3 Manipulation
3.1 Identification
3.1.1 Conditions
– La mesure est effectuée en boucle ouverte : on déconnecte les bornes X et Y et on observe,
en Y , la réponse ∆Vr à une variation ∆Vc de la consigne.
19
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 3
3.1.4 Méthode 2
1. Alimentez le système avec une entrée sinusoı̈dale. Observez que le déphasage entre n’entrée
et la sortie varie en fonction de la fréquence.
2. Faite varier la fréquence jusqu’à obtenir un déphasage de la mesure de -135? par rapport à
la commande. Relevez la fréquence et les amplitudes des signaux. Déduisez-en la fréquence
et le gain du système à cette fréquence.
3. A partir de la méthode proposée en préparation, déterminez les paramètres K et b du
système.
4. Diminuez la fréquence jusqu’à obtenir un fonctionnement quasi-statique. Relevez les am-
plitudes des signaux. Déduisez-en le gain statique et la valeur numérique du paramètre
a.
20
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 3
3.2 Asservissement
Pour chacun des correcteur envasagés dans la préparation, on appliquera la même méthode.
21
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 TP 3
Feuille de préparation
Réponse indicielle.
Exercice : pour identifier la fonction de transfert d’un système linéaire, on applique un échelon
unitaire à l’entrée à l’instant t = 0. La réponse indicielle mesurée est représentée ci-dessous.
En utilisant la méthode de Strejc, proposer un modèle pour la fonction de transfert G(s) de ce
système.
2.5
1.5
0.5
0
0 2 4 6 8 10 12
temps en secondes
22
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 Aide mémoire
1.1 Lancement
Sous windows : double cliquez sur l’icône Matlab6.5 sur le bureau. Matlab ouvre alors
plusieurs fenêtres (ou une fenêtre contenant plusieurs sous-fenêtres). Les deux plus importantes
sont la fenêtre de commande (“Command Window”) et la fenêtre de l’éditeur de script.
Sous linux : Ouvrez un terminal en cliquant sur l’icône de la barre d’outil représentant deux
ordinateurs connectés. Tapez nedit & dans le terminal. Une nouvelle fenêtre apparaı̂t : ce sera
votre éditeur de texte. Tapez matlab5 dans le terminal. Matlab démarre et le terminal devient
la fenêtre de commande repérable au prompt >>.
2 Généralités
Matlab est un logiciel de calcul matriciel. Il peut être utilisé simplement comme une cal-
culatrice pour tous les calculs scalaires et dispose de nombreuses fonctions de calcul matriciel
(déterminant, inverse, etc.). En automatique, en plus des fonctions de base de calcul, vous
utiliserez des fonctions appartenant à la boı̂te à outils “Control Toolbox” et à la boı̂te à outil
“Simulink”.
Il existe 2 principales façon d’utiliser Matlab :
– en ligne de commande : l’utilisateur tape des commandes dans la fenêtre de commande
(command Window pour matlab 6.5 sous Windows). Celles-ci sont directement executées
par matlab. Une commande se termine par un retour chariot (entrée). Il est possible
d’exécuter plusieurs commandes successivement en les écrivant sur la même ligne et en
les séparant par le caractère ‘;. Lorsqu’une commande se termine par le caractère ; elle
est muette : le résultat n’est pas affiché à l’écran. Le caractère % indique des commentaires.
Tout ce qui se trouve après ce caractère sur la même ligne n’est pas interpreté par Matlab.
Exemples :
23
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 Aide mémoire
>> a+b
ans =
3
>> c = a + b; d = c + 1;
>> d % permet d’afficher le contenu de la variable d
d =
4
Les variables créées sont stockées dans l’espace de travail (workspace) et peuvent être
réutilisées à tout moment.
En ligne de commande, les commandes tapées précédemment peuvent être rappelées en
utilisant les flèches vers le haut et vers le bas.
– par l’intermédiaire de scripts ou de fonctions. Les commandes sont écrites dans un fichier
texte de la même façon qu’en ligne de commande. Le fichier doit être sauvegardé avec
une extension .m pour signifier qu’il s’agit d’un script Matlab. Pour exécuter ce script il
suffit de taper son nom (sans l’extension .m) dans la fenêtre de commande. Toutes les
commandes du script sont alors exécutées successivement.
Exemples :
Fichier exemple.m *****************************************
a = 2 % Affectation de 2 à la variable a
b=1; % Affectation de 1 à la variable b sans affichage
a+b
c = a + b; d = c + 1;
d % permet d’afficher le contenu de la variable d
******************************************
>> exemple
a =
2
ans =
3
d =
4
Les variables créées dans un script sont stockées dans le workspace lors de l’exécution du
script. Elles peuvent donc ensuite être utilisées en ligne de commande.
Afin de garder simplement une trace de vos travaux, il est conseillé de travailler à l’aide
de scripts.
Matlab dispose d’une aide en ligne permettant d’obtenir les détails d’utilisation d’une com-
mande : paramètres d’entrée, arguments de sortie, etc. Par exemple pour obtenir des informa-
24
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 Aide mémoire
25
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 Aide mémoire
Trace le diagramme de Nyquist. Attention, les éventuels cercles à l’infini ne sont pas
représentés. Il faut donc analyser la fonction de transfert pour pouvoir déterminer avec
certitude la stabilité d’une boucle fermée.
– Lieu des racines :
>> rltool(G)
Trace le lieu des racines de G(s), avec retour unitaire. Les pôles et zéros du système
G(s) sont représentés par des croix et o bleus. La position des pôles de la boucle fermée
est représentée par des carrés rouges. En cliquant sur ces carrés, il est possible de les
déplacer le long du lieu d’Evans. Le gain affiché en haut de la fenêtre est alors modifié
simultanément.
rltool est un utilitaire permettant de régler un correcteur par la méthode du lieu des
racines. Une fois le lieu des racines de G(s) tracé, l’utilisateur a de nombreux outils.
Il est ainsi possible d’ajouter des pôles et des zéros sur la carte des pôles et zéros. Ces zéros
et pôles sont affectés au correcteur. Ils peuvent être déplacés par des “cliqué - glissé”.
Pour éditer le correcteur, cliquer sur le bloc C (ou K selon la version) rouge dans le schéma
bloc représenté en haut à droite.
On peut afficher les abaques d’iso-amortissement et d’iso-pulsation sur la carte des pôles
soit en cliquant “grid on” (version Linux), soit en cliquant avec le bouton droit de la
souris et en choisissant afficher la grille.
– file → import : permet d’affecter des fonctions de transfert aux différents éléments
du modèle. Ces fonctions de transfert doivent avoir été définies dans le workspace.
Attention, les blocs de gain doivent être entrés sous la forme de fonction de transfert
(par exemple, pour H = 5, il faut entrer :
>> H = tf(5, 1))
– file → export : permet d’exporter un bloc vers le workspace (par exemple le cor-
recteur)
– Analysis → response to step command : trace la réponse indicielle du système en
boucle fermée pour le gain donné.
– Clic droit dans la fenêtre rltool : permet de définir des contraintes pour le système
bouclé : dépassement, temps d’établissement, etc. Attention : ces contraintes ne sont
valables que si le système en BF est équivalent à un système du 2ème ordre.
– Marges de phase :
>> margin(G)
4 Utilisation de Simulink
Simulink est une interface graphique permettant de représenter les systèmes sous forme de
schémas bloc. Pour lancer simulink, tapez :
>> simulink
dans la fenêtre de commande.
L’utilisation de Simulink est assez intuitive. Elle consiste à sélectionner des blocs représentant
des fonctions de transfert, des gains, etc. et à les glisser sur le schéma de simulation. Les blocs
sont reliés entre eux par des traits orientés tracés à l’aide de la souris.
26
Master Ingénierie et Technologie 1ère année
Commande des Machines, 2007-2008 Aide mémoire
>> K = 5
27