Travaux Pratiques M´ecatronique
ENSPS 1A
Lego Mindstorms Tribot : Suivi de piste
On souhaite maintenant utiliser nos connaissances pour r´ealiser une tˆache asservie simple : le
parcours d’une piste.
Consignes : Identiques au TP1 et donc appeler un enseignant pour les points de
validation.
0 Finir le TP1 : Odom´etrie (1h00 max)
1 Asservissement sur une trajectoire : parcours d’une piste
Afin de suivre la piste, ˆetre capable d’imposer une commande en vitesse lin´eaire vet angulaire
ωau robot mobile est n´ecessaire. On se propose de mettre en place cette commande.
v
−ω
v
: vitesse angulaire
ω
v: vitesse linéaire
Figure 1 – Pilotage en vitesse lin´eaire et angulaire.
1.1 Calibration de la vitesse angulaire des roues
On cherche `a d´eterminer approximativement Cret Cl, les coefficients reliant la consigne de
vitesse aux moteurs Uret Ul(en % entiers, 100 < < 100) `a la vitesse angulaire des roues, tels
que :
˙ϕr
˙ϕlrad/s
=Cr0
0ClUr
Ul%
(1)
Afin de calculer ces coefficients :
Utiliser une consigne constante de vitesse de 40%.
Au sol, relever la valeur de la vitesse `a l’´ecran avec l’odom´etrie.
1.2 Commande en vitesse op´erationnelle : vet w
1. Calculer l’expression num´erique de M1en fonction des C{r,l}identifi´es, du rayon et demi-
entraxe de votre robot mobile.
Pour information, on obtenait approximativement avec le lego mod`ele NXT :
Ur
Ul=M1v
ω, M1=256 14
256 14(2)
L.Cuvillon 1
2. Copier votre code pr´ec´edent sous Exo4.c et remplacer le code d’´evitement d’obstacles de la
ache principale par la commande en vitesse op´erationnelle du lego :
(a) D´efinir une variable pour la vitesse lin´eaire v(en m.s1) et une variable w= 0 rad.s1.
(b) Avec votre matrice M1, impl´ementer le calcul de Uret Ulpour ces vitesses.
(c) Une consigne de vitesse lin´eaire/angulaire trop grande peut conduire par le calcul pr´ec´edent
`a des consignes U{r,l}sup´erieures `a 100% ou inf´erieures `a -100% de la charge de la batte-
rie. Le syst`eme ne comprendra pas ces valeurs. Donc saturer les commandes U{r,l}apr`es
calcul entre 100 et 100 pour rester dans la plage de fonctionnement normal du moteur
(on fait au mieux) : Si Ur<100 alors ...
3. Valider votre commande en vitesse du Lego Tribot. Pour cela, tester d’abord avec une vitesse
lin´eaire seule de 6 cm/s, puis avec une vitesse angulaire seule, puis une combinaison des 2.
Point de validation 6
1.3 Parcours de la piste
v
v
−ω
ω: vitesse angulaire
κ: gain
=(%Réfléchie−%Réfléchie_Gris)*k*vω
vCapteur lumière réfléchie
v: vitesse linéaire (v=0.15 m/s constant)
loi de commande:
Figure 2 – Principe du suivi de la piste.
Le parcours est constitu´e d’une piste pr´esentant un d´egrad´e de gris : du blanc vers le noir. La
trajectoire `a suivre est le gris m´edian situ´e en milieu de piste.
Le capteur photosensible est utilis´e pour mesurer le niveau de gris et donc la distance d(en % de
luminosit´e) par rapport au gris m´edian (figure 2). On peut d´eterminer en fonction du niveau de
gris si on est `a droite ou `a gauche de la trajectoire. La suivi consiste `a avancer `a vitesse lin´eaire
constante et adapter la vitesse angulaire en fonction de la distance par rapport `a la trajectoire.
1. Calibrage du capteur photosensible
(a) Positionner le capteur `a l’avant du Lego (au milieu si possible), tel que le capteur soit
situ´e `a environ 7-8mm au dessus du sol.
(b) Utiliser l’utilitaire Port View pour mesurer la valeur renvoy´ee par le capteur en % pour
le gris m´edian qui sera notre consigne constante (voir aussi le noir et le blanc). 1
2. Impl´ementation de la loi de commande proportionnelle de la figure 2.
(a) Modifier la tˆache principale pour r´ealiser l’asservissement.
(b) D´efinir v, une consigne de vitesse constante et calculer alors wen fonction de v(toujours
exprim´e en m.s1), de ket de d, la distance alg´ebrique par rapport `a la trajectoire
exprim´ee en % de luminosit´e. On souhaite parcourir la piste dans le sens horaire !
3. Exp´erimentation
(a) Tester l’asservissement avec une consigne de vitesse lin´eaire raisonnable. Adapter le gain
kpour r´eussir le parcours de la piste.
(b) Essayer d’augmenter la consigne vpour acc´el´erer le robot (et faire la course). Point de validation 7
1. on pourra aussi choisir la consigne comme le niveau de gris mesur´e au d´emarrage du programme pour plus de
flexibilit´e.
L.Cuvillon 2
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!