Portail des Équipes

Coupe de France de Robotique - Eurobot

Sommaire

VDA 2020

Bonjour à toutes et à tous !
J’espère que vous avez eu le temps de voir la Vidéo Des Arts proposée par le BDA et que vous avez apprécié la contribution de Galiléo !
Si certains n’ont pas eu le temps de la visionner, vous pouvez directement aller voir notre partie ici : https://www.youtube.com/watch?v=OeHPCotrTjQ

Comme indiqué dans la vidéo, nous avons également réalisé une vidéo montrant la construction du robot. Vous pouvez y admirer notre talentueux -et absolument sous payé- président façonner le robot pièce par pièce jusqu’à obtenir ce que vous avez pu voir dans la vidéo.Cette vidéo est disponible ici : https://www.youtube.com/watch?v=qMk_Ew1-NcA

N’hésitez pas à nous faire des retours sur ces vidéos et à aller la vidéo complète proposée par le BDA, elle vaut le coup !
Bonne journée à tous !
Le bureau Galiléo 2019-2020.

Préparation de la stratégie du robot sur simulateur

Dans cette article, nous allons aborder le développement du code de “stratégie” au sein du club Robot ESEO. Nous allons tout d’abord présenter notre simulateur, appelé Toolkit, avant de décrire plus en détail la méthodologie de développement des différentes machines à états implémentant la stratégie de nos robots.

1- Présentation de notre simulateur: la Toolkit

La Toolkit est un outil indispensable au développement de la stratégie de nos robots. Il s’agit d’un simulateur multi-plateformes (Windows et Linux) codé sous Qt qui permet de faire de la simulation hardware-in-the-loop. La carte électronique principale du robot, appelé fond de panier, est directement connectée au PC sur lequel s’exécute le simulateur via deux liaisons RS232. Sur cette carte électronique viennent se plugger trois STM32: une gérant la stratégie, une gérant les actionneurs, et une gérant la propulsion du robot. Les entrées/sorties de ces cartes ne sont donc pas reliées aux capteurs et actionneurs physiques du robot mais redirigées vers le simulateur.

Fond de panier avec 3 STM32

La Toolkit offre différentes fonctionnalités permettant d’accélérer et de faciliter le développement de la stratégie du robot. Différents terminaux série permettent d’afficher toutes les infos renvoyées par le fond de panier. Parmi ces informations, appelées logs, on trouve les messages CAN envoyés entre les différentes STM32 dont les ordres de déplacements et les ordres actionneurs ainsi que leurs acquittements. Les logs contiennent aussi les informations relatives aux changements d’états des machines à états (sans doute l’info la plus importante), le temps de match, les éléments actuellement stockés dans le robot, les éléments restants sur le terrain, et les flags échangés avec l’autre robot.

Une vue de l’aire de jeu en 2D permet de visualiser les déplacements (virtuels) de nos robots afin d’analyser leurs trajectoires. Il est également possible de simuler les robots adverses afin de voir les choix adoptés par nos robots lorsqu’ils rencontrent un robot adverse. Une fenêtre permet également de changer la valeurs des switchs du robots pour tester des stratégies alternatives, changer la couleur du robot, ou encore simuler des pannes d’actionneurs. À chaque fois, l’objectif est d’analyser les choix du robot (choix de trajectoires, changement de l’action à réaliser etc.) pour voir s’ils sont pertinents.

Vue de l’aire de jeu sur la Toolkit

2- Notre méthodologie de développement de la stratégie

Le développement de la stratégie du robot se fait en deux étapes: une première étape sur simulateur pour mettre au point notre code, et une seconde étape sur robot réel afin de peaufiner les enchaînements des actions et faire certaines optimisations.

Le développement sur simulateur est primordial car il permet de développer la majorité de la stratégie sans avoir les robots réels. Le codage sur simulateur se fait en général en deux étapes. (1) On commence par implémenter une machine à état pour chaque action, appelée dans notre club une “subaction”. L’objectif est de développer le squelette de la machine à états avec les déplacements du robot et les ordres actionneurs. À chaque itération, le code est programmé sur la carte stratégie du fond de panier et la Toolkit est utilisée pour valider le comportement du robot. Cette première étape permet de faire une validation unitaire de chaque subaction. (2) Une fois que les différentes subactions ont été implémentées, l’objectif est de les intégrer les unes avec les autres pour enchaîner différentes actions. Toutes ces subactions sont alors gérées par un algorithme de haut-niveau (dans notre jargon la “high level”) qui permet de choisir la subaction la plus adaptée à réaliser à un instant t du match en prenant en compte la priorité des subactions restantes, le temps de match restant, les éléments stockés dans le robot, et l’action en cours de réalisation par l’autre robot. La Toolkit permet alors de simuler des matchs complets, de tester des stratégies alternatives ou encore de voir comment nos robots se comportent quand un robot adverse vient les embêter. Il devient aisé de tester un grand nombre de matchs dans plein de configurations différentes ce qui serait beaucoup, beaucoup, beaucoup plus long sur un robot réel.

Analyse des match logs sur la Toolkit

Une fois le développement sur simulateur réalisé et que la mécanique du robot est opérationnelle, il est alors possible de tester des matchs en conditions réelles. Ces tests sont utiles pour d’une part faire des corrections de trajectoires, vérifier le bon fonctionnement des actionneurs et éprouver la répétabilité du code et de la mécanique de nos robots. Là encore la Toolkit est d’une grande utilité car elle permet de récupérer en temps réel ou a posteriori les logs du match. Au club robot de l’ESEO, il n’est pas rare d’entendre un codeur demander “Tu peux dépiler le match log stp !” afin de récupérer les logs du match précédent que le robot a stocké sur sa carte SD. À ce stade de développement, il est fréquent que les matchs soient filmés (parfois même en slow motion) pour analyser les moindre faits et gestes de nos robots réels. Cela permet de réaliser des optimisations et de gagner quelques centaines de millisecondes sur chaque subaction. Des compromis entre répétabilité, rapidité et simplicité doivent alors être trouvés afin de remplir au mieux chacun de ces trois critères.

La Toolkit est donc un élément primordial pour le développement de la stratégie de nos robots !!

Valentin.B

Coupe Auvergne-Rhône-Alpes de Robotique 2020

La Coupe Auvergne-Rhône-Alpes de Robotique 2020 aura lieu cette année le SAMEDI 18 AVRIL à TELECOM SAINT-ETIENNE !

Déroulement de la journée

La matinée sera dédiée à l’accueil des équipes et à leur homologation !

Nous partagerons tous ensemble un repas : espérons qu’il fasse beau !

L’après-midi sera dédié aux matchs : d’abord les phases qualificatives puis les phases finales !
Lors des phases qualificatives, seul le score compte. Lors des phases finales, l’équipe au plus haut score continue, l’autre est dirigée en petite finale.

Besoin d’informations sur la CARAR 2020 ? Envoie un petit message ! 😀

UN ROBOT à DEUX BALLES

Il a été conçu comme support de formation sur l' asservissement d' un robot "Coupe de France".

  Dans le cadre de la formation organisée par P.S. Hauts de France, il fallait qu' il soit assemblé et programmé sur un W.E. en restant d' un faible coût. J' avais moins de 300 € pour 5 robots et 10 stagiaires. Son prix de revient tout compris, sauf les moteurs fournis par P.S., est < 60 €.



  Vous trouverez plus d' informations sur la page UN ROBOT "Coupe de France" à BAS COÛT


Un point particulier est à signaler.
Nous utilisons sur ce robot, comme sur tous nos nouveaux développements, un  microcontrôleur CYPRESS PSoc 5LP sur une carte CY8CKIT-059. Elle présente des qualités particuliérement adaptées à nos projets:
  • Faible encombrement
  • Faible coût
  • Très faciles à programmer avec un environnement  convivial (gratuit et partiellement graphique)
  • D' une grande puissance et flexibilité, avec l' association sur une même puce d' un ARM32 Cortex M3, de blocs analogiques(Aop, filtres, OTA, CNA...) et sutout de l' équivalent d' un FPGA fournissant des blocs logiques, par exemple les décodeurs en quadrature.

Nous sommes toujours à la recherche d' équipier(e)s  pour la Coupe à La Roche sur Yon.

      Bernard Gérardy
      CYBERNETIQUE en NORD

    Facebook      Twitter




      Conseils pour la pose du vinyle

      Poser un vinyle n’est pas simple. Il peut y avoir des imprécisions à l’impression et à la pose. Voici quelques conseils issus d’une discussion Twitter avec quelques équipes et de notre propre expérience.

      Merci à Barbatronic des Karibous et à Goldorak pour les photos, à Laurent qui a motivé cet article et à Alexandre pour ses conseils avisés à la réalisation de notre propre version du vinyle.

      Prendre le Vinyle original ou le modifier

      Pour faciliter les tests, certains équipes comme PM-ROBOTIX, modifient légèrement le vinyle afin d’y ajouter un quadrillage avec des coordonnées. Si c’est le cas, il faut prendre soin des points suivants :

      • Le document officiel ne fait pas 3000mm x 2000mm. Une marge de 1mm existe tout autour. Il fait donc 3002mm x 2002mm,
      • Le quadrillage doit être vérifié de manière très précise. Les plans de la table permettent de s’assurer que celui-ci est centré correctement. Par exemple, voir l’image à droite : les éléments comme les ports (#CDR2020) tombent sur des mesures rondes, donc il est facile de voir si le quadrillage est aligné ou non. Dans cet exemple, ce n’est pas bon.
      • Le vinyle de PM-ROBOTIX est disponible ici.

      Comment est livré le vinyle ?

      Si les recommandations sur le site https://www.coupederobotique.fr sont respectées, le vinyle est livré roulé et en 3 morceaux faisant chacun un peu plus d’un mètre sur deux mètres.

      La raison pour laquelle ils font plus d’un mètre est que cela permet de réaliser une finition parfaite lorsque les vinyle sont cote à cote (voir plus bas).

      Entreposer le vinyle avant la pose

      Comme beaucoup de matériaux, il ne faut pas l’utiliser immédiatement le jour de la livraison mais l’entreposer quelques heures dans la pièce où il sera utilisé.

      Il faut :

      • qu’il soit à la température de la pièce,
      • le dérouler et le mettre à plat. Ne pas le conserver roulé,
      • éviter de le “croquer” (plier) car cela sera source de problèmes lors de la pose.

      Pose du vinyle

      En général, il faut être trois personnes. Plus, c’est inutile. Moins, c’est prendre le risque d’avoir des bulles à la fin de la pose.

      Le centrage

      Certaines équipes utilisent le repérage au sol pour positionner leurs robots. Ceci sous entend que le vinyle a été parfaitement imprimé et posé ; mais on sait, de part notre expérience, que c’est rarement le cas.

      Il faut aussi avoir à l’esprit que ce qui comptera à la coupe pour le calcul des points est le placement des éléments et des robots par rapport au vinyle. Pour la #CDR2020 par exemple, les bouées représentées par des gobelets devront se trouver sur une ligne épaisse de 3cm seulement autour de l’aire de départ. Il est donc important dans ce cas de se baser sur l’aire de départ pour centrer le vinyle.

      Dans notre cas, nous avons toujours constaté une rétractation du vinyle de 1 ou 2mm sur la longueur des 2 mètres et nous n’avons jamais posé le vinyle en partant exactement du bord de la table. C’est le cas pour beaucoup d’autres équipes également.

      Pour commencer, il faut donc, sans le coller, poser le vinyle et mesurer l’emplacement de l’aire de départ en largeur et en longueur et repérer exactement l’endroit où il faudra commencer à coller le vinyle.

      Le nettoyage

      Très important : toute impureté qui se trouve entre la surface de la table et le vinyle apparaîtra après collage. Il est important de bien s’assurer que toutes les poussières sont retirées et que tous les produits ont séchés avant de commencer la pose.

      Le collage

      Plusieurs techniques doivent exister mais il semble que celle que nous utilisons soit aussi celle la plus utilisée par les équipes.

      Pour commencer, on pose d’abord les deux éléments à l’extrémité de la table et contenant les aires de départ avant de poser le vinyle du centre.

      En cas de problème, le vinyle se décolle et se recolle. Il faut juste veiller en le décollant à ne pas titrer plus d’un coté que de l’autre car ceci le déformera et sera source de bulles pour la suite.

      Les étapes sont les suivantes:

      • Décoller une bande de 15cm +- sur la longueur d’un mètre et replier la feuille blanche en écrasant le pli correctement afin de ne pas avoir de bosse (sur la photo, le pli n’est pas suffisamment écrasé et cela forme une bosse),
      • Poser la bande le long de la bordure en tenant compte du centrage effectué avant mais surtout : ne pas poser un coin et tordre le vinyle pour arriver droit à l’autre coin. Si on fait cela, il y aura des bulles qui seront de plus en plus impossibles à enlever au fur et à mesure qu’on avancera dans le collage,
      • Une fois cette bande de 15cm collée, comme le pli est écrasé en dessous, il est facile de voir si la grande longueur de 2 mètre suivra correctement la bordure de coté. Si c’est le cas, on termine le collage ; sinon, on décolle le vinyle et on recommence,
      • Pour avancer, les trois personnes se répartissent les rôles.
      1. une personne se charge de coller le vinyle avec la paume de sa main. Certaines équipes utilisent une raclette mais ce n’est pas notre cas. Le geste de la main est de faire des aller retours sans cesse sur la longueur d’un mètre en avançant progressivement.
      2. Le seconde personne retire petit à petit la feuille blanche qui se trouve en dessous au même rythme que celui qui colle avance.
      3. La troisième personne maintient le vinyle en hauteur pour faciliter le travail de la seconde mais surtout, pour éviter que le vinyle “croque” (plie) durant l’opération.
      • Une autre méthode consiste à utiliser une règle métallique pour éviter que le vinyle plie au fur et à mesure qu’on avance comme sur l’image à droite.

      Attention, dès que la personne qui colle sent qu’une imputé s’est glissée entre le vinyle et la table, on arrête d’avancer, on décolle le vinyle de manière droite jusqu’à l’impureté et on retire cette dernière avec la pointe d’une lame de cutter.

      Si une bulle apparaît, elle peut disparaître d’un coup de paume de main ou de raclette mais si ce n’est pas le cas, il faut décoller le vinyle jusqu’à la bulle puis reprendre.

      Si au bout d’une trentaine de centimètres de plus en plus de bulles apparaissent, c’est que le vinyle n’était pas aligné correctement au départ le long de la bordure sur la longueur d’un mètre. Le problème va s’amplifier. Dans ce cas, voici ce que nous avons fait pour avoir au final une finition quand même parfaite :

      • Décollage de tout le vinyle mais en prenant soin de garder une bande de 10 cm à coller à +- 50cm du bord de la table en mettant un reste de feuille blanche sur les 40cm restant. Sur la distance de 2m, il y a donc 40cm (où il y avait des bulles) qui sont sous une feuille blanche de récupération, 10cm prêt à être collé et 150cms sous la feuille blanche.
      • On colle la bande de 10cm (il faut s’arranger pour prendre un endroit du vinyle qu’on est capable de centrer).
      • On colle ensuite les 40cm qui posaient problème.
      • On poursuit termine le collage

      La finition

      Lorsque les trois bandes ont été posées, celle du centre se superpose sur les deux bandes de coté sur une largeur de 1cm. Il faut passer une lame de cutter au centre et enlever les deux lanières d’un demi centimètre de chaque coté pour avoir une finition parfaite. Pour ce faire, nos recommandations sont les suivantes :

      • Utiliser une lame de cutter neuve ! En effet, l’idéal dans cette manœuvre est de ne passer qu’une seule fois la lame. Plus la lame doit passer et plus le risque de se retrouver avec des fines lignes de vinyle manquantes est important.
      • Utilisez un guide.
      • Visez le centre des 1cm ! N’essayez pas d’aller un peu plus sur le coté pour éviter d’avoir à retirer trop sur la partie du dessous. L’épaisseur de 0,5cm permet aussi de tirer le lanière sans que celle-ci ne casse pendant l’opération.
      Utilisez un guide
      Utilisez une nouvelle lame de cutter
      Retirez délicatement la bande du dessus
      Retirez délicatement la bande du dessous

      Le résultat

      SIMULATION d' une STRATEGIE


      Simulation d' une stratégie pour notre petit robot "Simplet". Elle est réalisée avec les outils graphiques de Labview.