Eurobot 2016
Date: 2016-06-13
Cette année, l’équipe Galiléo a été sélectionnée pour participer à la coupe d’Europe de Robotique (Eurobot) qui s’est déroulée le weekend du 10 au 12 juin 2016 au Kremelin-Bicêtre (sud de Paris).
Le robot a été légèrement amélioré après la coupe de France de robotique (mai 2016) pour le fiabiliser.
Mécanique
Bloc de propulsion
Déplacements à 1m/s, accélérations à >1.5m/s²
- palliers en aluminium, flancs en PVC,
- moteurs Maxon RE35 (90W), réducteurs Dunker PLG52 (~1:20),
- poulies/courroies XL5 9.5mm,
- roulements 608Z (rollerblade), tiges rectifiées en inox (8mm),
- roues alu/joints toriques SES Lynxmotion
Odométrie
Précision à 0.25% (1cm de décalage sur un carré de 1m de côté)
- tige rectifiée en inox (8 ou 12mm),
- roulements de têtes de lecture de disques durs,
- supports de codeurs en aluminium usiné,
- encodeurs en quadrature Nemicon OEZ-1024 (4096 PPR en quadrature),
Base
Assemblage de plaques de PVC/Polycarbonate de 10mm usinées à la main (scie sauteuse, meuleuse et perceuse à colonne, précision ~2mm) et plaques d’aluminium de 5mm découpées/fraisées (précision 0.15mm), profilés d’aluminium de 25mm, 4 caster-balls suspendus
Actionneurs
- Lame ramasse-cubes actionnée par deux servomoteurs (TowerPro MG995 à pignons métalliques, 1.1Nm),
- Pousse-cubes actionné par un motoréducteur ~15W + endstops (ouverture en <1s),
- Ramasse-poissons (aimants de disque-durs + plaques de mylar/polycarbonate) actionné par un servo sans butée (multitours) + endstop,
- Parasol actionné par un servomoteur, 326
Évitement
Détection d’une balise cylindrique (ø 80mm * 80mm) retro-réflechissante à une distance réglable entre 150 et 1200mm, imitant un LIDAR.
- Tourelle à arbre creux actionnée par un moteur DC + réducteur à poulie (~100rpm)
- Fourche optique (1 PPR),
- Volant d’inertie en PVC,
- Capteur IR industriel (Dinel BA 9xx) alimenté par des piles 9V (alim + contrepoids)
- Transmission optique (LED, phototransistor à travers un arbre creux),
Électronique
- 3 Cartes de driver moteur à LMD18200 (24V, 3A),
- Une carte de protection d’alim (24V) + deux canaux buck (réglés à 6.5V et 5.5V),
- Une carte Arduino Mega (calculs de trajectoire et asservissement) + shield en veroboard (câblage codeurs et moteurs) + arduino Nano (odométrie),
- Une carte Arduino Mega (stratégie, commande d’actionneurs) + shield (connectique)
- Une carte Arduino Nano (évitement)
- Bus RS232 TTL en étoile sur la carte de stratégie
Software
Stratégie
Comme depuis au moins 2011, le programme gérant la stratégie est une machine d’états avec une liste de positions à atteindre (position, angle, vitesse, état des actionneurs, timeout). La différence cette année vient d’une visualisation codée avec processing, qui permet d’enregistrer les positions en déplaçant le robot sur la table.
Asservissement
Pour la première fois, l’asservissement en PID et la génération de trajectoires ont été remplacés par une gestion en logique floue en angle et position qui s’est montrée très fiable.
Résultats
Les robots ont été homologués après 4h de travail (réglages de l’évitement), mais beaucoup de travail a été nécessaire sur la stratégie, tout au long de la coupe.
- Match 1 : 49 points, 25ème place, défaite contre reSET (Russie)
- Match 2 : 81 points, 20ème place, victoire contre UXSC1 (Espagne)
- Match 3 : 0 points, 28ème place, match nul contre Green Birds (Allemagne)
- Match 4 : 37 points, 28ème place, défaite contre Team 007 (Roumanie)
- Match 5 : 56 points, 29ème place, défaite contre A-Robot (Russie)
Le 3ème match a montré une erreur sur la stratégie. Un point a été défini légèrement en dehors du terrain), qui a fait déraper le robot, puis déjanter une roue. Une fois le timeout dépassé, le robot s’est dirigé vers une autre position (à 1m/s), en déviant contre un obstacle du terrain, l’asservissement n’est pas capable de compenser lorsqu’une roue codeuse a dérapé. Il a été nécessaire d’actionner le bouton d’arrêt d’urgence pour protéger le robot et le terrain, d’où une annulation de tous nos points alors que le robot adverse n’avait pas démarré à cause d’un Schrödingbug.
Le côté du terrain où les robots jouent est déterminé aléatoirement, et est tombé du côté violet pour nos 5 matchs (homologuation côté vert), ce qui a ralenti notre action : l’actionneur utilisé pour les pêcher les poissons est du côté gauche du robot, ce qui oblige à rouler en marche arrière pour pêcher du côté violet.
Une chose est assez évidente, l’équipe Galiléo a un robot performant, mais qui a été prêt beaucoup trop tard. Il n’a pas été possible de faire assez de tests pour fiabiliser les actionneurs et la stratégie.
- ← Previous page
Xilence Icebox - Next page →
Chaîne audio Lo-Fi
Electronics Électronique puissance semiconducteur semiconductors power Hardware CPE INSA Xavier Bourgeois