projet eurobot
DESCRIPTION
Projet Eurobot. Groupe Systèmes Embarqués. Plan. Introduction Système de calcul Mouvoir le robot Saisir les palets Dépose des palets Repérage en relatif : l’odométrie Repérage en absolue : les balises Conclusion. Introduction. Le Concours Eurobot : - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/1.jpg)
Projet EurobotGroupe Systèmes Embarqués
![Page 2: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/2.jpg)
1) Introduction2) Système de calcul3) Mouvoir le robot4) Saisir les palets5) Dépose des palets6) Repérage en relatif : l’odométrie7) Repérage en absolue : les balises8) Conclusion
Plan
2
![Page 3: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/3.jpg)
Introduction
3
Le Concours Eurobot :• Du 20 au 24 mai 2009 à la Ferté-Bernard• Thème : Les Temples d’Atlantide• Empiler le plus de palets et linteaux • Durée d’une manche : 90 secondes• Un robot adverse par manche
![Page 4: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/4.jpg)
Introduction
4
L’aire de jeu :Distributeur (10 palets)
2,10 m Support Balise
Bordurede 7 cm
Placements fixes (4 palets)
3 m Placements aléatoires(8 palets)
Départ
Départ PaletΦ = 70H = 30
Linteau 200x70x30
![Page 5: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/5.jpg)
Introduction
5
Comptage des points :• Palet à plat et sur zone de construction• Comptage des points suivant la zone d’empilement
A partir de 1 pour un palet situé sur le sol A partir de 2 pour un palet situé à 3 cm du sol A partir de 3 pour un palet situé à 6 cm du sol ...
• Points des linteaux multiplié par 3• Pénalités en cas d’agressivité ou destruction
![Page 6: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/6.jpg)
Introduction
6
Stratégie de jeu :• Récolter 4 palets à la fois dans les distributeurs• Les stocker déjà empilés dans le robot• Poser sur la zone centrale Total de 18 points par cycle (3+4+5+6),2 fois pendant les 90 secondes de la manche.
![Page 7: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/7.jpg)
Introduction
7
Homologation :• Hauteur maximale de 35 cm• Essais pratiques d’homologation :
Quitter sa zone de départMarquer un point sans adversaireEviter un obstacle Limitation du nombre d’éléments emportésArrêt automatique au bout de 90 secondes
![Page 8: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/8.jpg)
Introduction
8
Processus de développement :
![Page 9: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/9.jpg)
Introduction
9
Répartition du travail:Groupe MQ• Pierre DAVY
(mouvements)• Patrick FAMEY
(capteurs, tapis roulant)• Alexandre HUNAULT
(étages de puissance )• Christophe LOCHIN
(servomoteurs, châssis)
Groupe SE• Jean Charles BADOCHE
(balises, asservissement)• Jean Charles BERTRAND
(dépose des palet)• Thomas CAPALDI
(approche du distributeur)• Maxime LE CADRE
(repérage par odométrie)
![Page 10: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/10.jpg)
Système de calculThomas CAPALDI
10
![Page 11: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/11.jpg)
Système de Calcul
11
FPGA• Cellules logiques élémentaires librement
assemblables
• Connexion de manière définitive ou réversible
![Page 12: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/12.jpg)
Système de Calcul
12
Avantages du système FPGA
• Schémas Logique• Programmation en VHDL• Processeur Soft-Core• système d’exploitationMultitâches
![Page 13: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/13.jpg)
Système de Calcul
13
Vue Globale de notre processeur soft-core
![Page 14: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/14.jpg)
Système de Calcul
14
• Prêt de l’école• Stockage de lignes de
code• CAN adaptable• Nombre de broches• Port PS2• Nombre de cellules
Logique
Carte UP3 de ALTERA
![Page 15: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/15.jpg)
Mouvoir le robotJean-Charles BADOCHE
15
![Page 16: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/16.jpg)
Mouvoir le robot
16
Cahier des charges• Avancer tout droit à différentes vitesses• Tourner sur soi-même • Se mouvoir d’un point A à un point B
(Combinaison de ses deux actions basiques)
![Page 17: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/17.jpg)
Mouvoir le robot
17
• Moteurs courant continu MLI
VCCclk INPUT
VCCv alue[7..0] INPUT
pwmOUTPUT
up counterclock
q[7..0]
counter1
inst
unsigned compare
dataa[7..0]datab[7..0]
alb
comparator
inst1
![Page 18: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/18.jpg)
Mouvoir le robot
18
Deux tâches distinctes
• Donne les ordres de mouvement à T2
• Lance les fonctions du distributeur et de largage
• Gestion des collisions
Séquençage des actions (T1)
• Avancer• Tourner• Aller à une position
Gérer la commande des moteurs (T2)
Passage des consignes par messagebox
![Page 19: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/19.jpg)
Mouvoir le robot
19
Asservissement de la trajectoire
• Position (X et Y)• Angle (par rapport à X)• Vitesse odométrique roues droites et gauche
![Page 20: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/20.jpg)
Mouvoir le robot
20
Tourner sur soi-même• Les roues tournent en sens inverse• Angle proche de l’angle de consigne
![Page 21: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/21.jpg)
Mouvoir le robot
21
Avancer tout droit• On fixe l’angle de consigne
• On accélère une roue et décélère l’autre (V)
• On asservit la vitesse (VV)erreur
![Page 22: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/22.jpg)
Mouvoir le robot
22
Aller à un point donné• On calcul l’angle entre la position actuelle et la position cible
• On asservit l’angle
• On corrige pour avoir la vitesse
![Page 23: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/23.jpg)
Mouvoir le robot
23
Aller à un point donné
• Avantages: on n’arrête pas le robot
• Inconvénient: détour
Solution: rotation
![Page 24: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/24.jpg)
Saisir les paletsThomas CAPALDI
24
![Page 25: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/25.jpg)
Saisir les palets
25
Stratégie pour l’approche:
![Page 26: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/26.jpg)
Saisir les palets
26
Stratégie pour l’approche:
![Page 27: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/27.jpg)
Saisir les palets
27
Stratégie pour l’approche:
![Page 28: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/28.jpg)
Saisir les palets
28
Stratégie pour l’approche:
![Page 29: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/29.jpg)
Saisir les palets
29
Stratégie pour l’approche:
![Page 30: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/30.jpg)
Saisir les palets
30
Capteurs: Télémètre infrarougeAvantages:• Sensibilité élevés • Simplicité du montageInconvénients:• Temps de traitement• Vieillissement des caractéristiques• Sensibilité thermique
![Page 31: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/31.jpg)
Matériel utilisé:• Capteurs télémétrique• CANy = -131,65x5 + 980,14x4 - 2892,1x3 + 4231,8x2 - 3080,7x + 905,37
Saisir les palets
0.8 1 1.2 1.4 1.6 1.8 2 2.20
2
4
6
8
10
12
14
16
18
Distance en fonction du voltage
Polynomial (Distance en fonction du voltage)
31
![Page 32: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/32.jpg)
Dépose des paletsJean-Charles BERTRAND
32
![Page 33: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/33.jpg)
Dépose des palets
33
• Règlement– Points– Limitation
• Stratégie
• Contraintes– Temps d’exécution– Constructions existantes
![Page 34: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/34.jpg)
• Servomoteur pour la porte
• MCC pour le plateau– Commande en temps du signal– Rapport de PWM fixé
• CAN et Télémètre
pwm_serv oOUTPUTclkvalue[7..0]
pw m
pw m
inst51
input const[7..0]
CONSTANTSELECT
inst8
10kHz
open_door
Dépose des palets
34
![Page 35: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/35.jpg)
Description de l’algorithme:
– Arrêter le robot– Orienter– Placer/Chercher une place– Approcher– Actionner / Dépose– Actionner / Repartir
Dépose des palets
35
![Page 36: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/36.jpg)
Dépose des palets
36
![Page 37: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/37.jpg)
OdométrieMaxime LE CADRE
37
![Page 38: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/38.jpg)
Odométrie
38
Cahier des charges• Positionnement du robot• Position de départ connue• Incrémentation des coordonnées
Solutions envisagées Centrale inertielle, Encodeurs, Mesure courant
![Page 39: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/39.jpg)
Odométrie
39
Solution retenue : Capteur souris optique• Capteur CCD + LED + Lentille• Déterminer le relief observé
• Résolution : 800 dpi => Pixel 30,4 µm• Rafraichissement : 9600 images par secondes
• Branchée sur Port PS/2 via USB
![Page 40: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/40.jpg)
Odométrie
40
Pilote Quartus codé en VHDL
clock_48Mhz
reset
left_button
right_button
mouse_cursor_row[9..0]
mouse_cursor_column[9..0]
mouse_data
mouse_clk
MOUSE
RIGHT21
SYSTEM_CLK
mouse_row[9..0]
mouse_column[9..0]
mouse_reset VCCmouse_dataBIDIR
VCCmouse_clkBIDIR
![Page 41: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/41.jpg)
Odométrie
41
Géométrie et équations
DéplacementΔYc = ΔY
![Page 42: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/42.jpg)
Odométrie
42
Géométrie et équations
Angle de rotation
![Page 43: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/43.jpg)
Odométrie
43
Géométrie et équations
Roue droite
Roue gauche
![Page 44: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/44.jpg)
Odométrie
44
Localisation dans le repère
Coordonnés sur X
Coordonnés sur Y
![Page 45: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/45.jpg)
BalisesJean-Charles BADOCHE
45
![Page 46: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/46.jpg)
Les balises
46
Cahier des charges• Taille maximale de 80x80x160mm• Autonomie
Recalage de l’odométrie + collision
![Page 47: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/47.jpg)
Les balises
47
Solution retenue• 2 balises sur distributeurs• 1 sur le bord
• 1 balise sur le robot adverse
![Page 48: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/48.jpg)
Les balises
48
Solution retenue
?!
?!
?!t = 0 sect = ε sec t = X sec
?!
![Page 49: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/49.jpg)
Les balises
49
Triangulation
Triangulation
Distance à la balise 1
Temps chronométré
balise 1
Distance à la balise 2
Temps chronométré
balise 2
Distance à la balise 3
Temps chronométré
balise 3
![Page 50: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/50.jpg)
Les balises
50
Triangulation
![Page 51: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/51.jpg)
Les balises
51
Triangulation
![Page 52: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/52.jpg)
Les balises
52
Triangulation
![Page 53: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/53.jpg)
Les balises
53
Triangulation• Connaître la position du distributeur inconnu
![Page 54: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/54.jpg)
Les balises
54
![Page 55: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/55.jpg)
Conclusion
55
![Page 56: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/56.jpg)
Conclusion
• Le résultat
• Les enseignements
– Techniques
– Gestion de projet
– Humains
• Le travail qui reste faire56
![Page 57: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/57.jpg)
Conclusion
Démonstration
57
![Page 58: Projet Eurobot](https://reader035.vdocuments.net/reader035/viewer/2022062411/568166de550346895ddb0c2c/html5/thumbnails/58.jpg)
•Questions?
58