Projet Eurobot
description
Transcript of Projet Eurobot
Projet EurobotGroupe Systèmes Embarqués
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
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
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
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
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.
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
Introduction
8
Processus de développement :
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)
Système de calculThomas CAPALDI
10
Système de Calcul
11
FPGA• Cellules logiques élémentaires librement
assemblables
• Connexion de manière définitive ou réversible
Système de Calcul
12
Avantages du système FPGA
• Schémas Logique• Programmation en VHDL• Processeur Soft-Core• système d’exploitationMultitâches
Système de Calcul
13
Vue Globale de notre processeur soft-core
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
Mouvoir le robotJean-Charles BADOCHE
15
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)
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
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
Mouvoir le robot
19
Asservissement de la trajectoire
• Position (X et Y)• Angle (par rapport à X)• Vitesse odométrique roues droites et gauche
Mouvoir le robot
20
Tourner sur soi-même• Les roues tournent en sens inverse• Angle proche de l’angle de consigne
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
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
Mouvoir le robot
23
Aller à un point donné
• Avantages: on n’arrête pas le robot
• Inconvénient: détour
Solution: rotation
Saisir les paletsThomas CAPALDI
24
Saisir les palets
25
Stratégie pour l’approche:
Saisir les palets
26
Stratégie pour l’approche:
Saisir les palets
27
Stratégie pour l’approche:
Saisir les palets
28
Stratégie pour l’approche:
Saisir les palets
29
Stratégie pour l’approche:
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
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
Dépose des paletsJean-Charles BERTRAND
32
Dépose des palets
33
• Règlement– Points– Limitation
• Stratégie
• Contraintes– Temps d’exécution– Constructions existantes
• 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
Description de l’algorithme:
– Arrêter le robot– Orienter– Placer/Chercher une place– Approcher– Actionner / Dépose– Actionner / Repartir
Dépose des palets
35
Dépose des palets
36
OdométrieMaxime LE CADRE
37
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
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
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
Odométrie
41
Géométrie et équations
DéplacementΔYc = ΔY
Odométrie
42
Géométrie et équations
Angle de rotation
Odométrie
43
Géométrie et équations
Roue droite
Roue gauche
Odométrie
44
Localisation dans le repère
Coordonnés sur X
Coordonnés sur Y
BalisesJean-Charles BADOCHE
45
Les balises
46
Cahier des charges• Taille maximale de 80x80x160mm• Autonomie
Recalage de l’odométrie + collision
Les balises
47
Solution retenue• 2 balises sur distributeurs• 1 sur le bord
• 1 balise sur le robot adverse
Les balises
48
Solution retenue
?!
?!
?!t = 0 sect = ε sec t = X sec
?!
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
Les balises
50
Triangulation
Les balises
51
Triangulation
Les balises
52
Triangulation
Les balises
53
Triangulation• Connaître la position du distributeur inconnu
Les balises
54
Conclusion
55
Conclusion
• Le résultat
• Les enseignements
– Techniques
– Gestion de projet
– Humains
• Le travail qui reste faire56
Conclusion
Démonstration
57
•Questions?
58