Ici nous vous informerons des dernières nouvelles concernant l'avancement de nos projets et autres !
Bonne lecture !
14 mai 2024
Et voilà, c’est terminé... Après 4 jours de défis intenses, de stress et de rencontres sympathiques nous voici de retour chez nous. Mais que s’est-il passé durant ces quatre jours ? Et pourquoi ?
Pour répondre à ces questions, nous allons reprendre l’histoire au 23 avril.
Bien que nous ne l’ayons pas publié, nous avions également réalisé des essais pour attraper les plantes. Ces plantes sont des éléments assez sensibles, il est facile de les coucher. Elles ont aussi la fâcheuse manie de se regrouper lorsque le robot se rapproche (il les pousse). Une fois regroupées, il n’est plus possible de les attraper avec la pince à 3 doigts. Le robot en prend 2 ou même trois et ça devient le bazar.
Nous fixons alors un petit doigt sous le châssis pour saisir la plante, la reculer et l’isoler de ses congénères. Cette solution améliore grandement la saisie des plantes.
Nous avons donc une saisie des pots qui marche et une saisie de plante qui n’est pas affreuse.
Nous faisons quelques démonstrations devant des amis, il parait maintenant flagrant que le robot n’attrape correctement une plante qu’une fois sur 3 ou 4. Pire, s’il n’attrape pas la plante, il part doucement dans le décor. Nous profitons d’un après-midi pour identifier les défaillances et gérer ces cas plus proprement.
Nous avons maintenant un robot qui rentre à une zone de dépose dans quasiment tous les cas, avec ou sans plantes...
Nous rajoutons les bordures au terrain - regardez la vidéo précédente, vous verrez que les pots ne sont pas bloqués par la bordure. Ceci nous oblige à retravailler un peu la séquence de prise des pots. Notre mécanique est loin d’être parfaitement symétrique, nous réglons alors la distance de prise des pots pour chaque bras.
De plus, nous avions un système de calage automatique du robot : nous le posions sur le terrain dans une orientation approximative et il se mettait tout seul en position grâce à son capteur. Nos essais nous ont montré que ce système n’était pas assez répétable. Le robot pouvait se décaler jusqu’à 2 centimètres - rédhibitoire pour attraper les pots !
Petite mésaventure, un fil du câble d’un servomoteur se détache du servomoteur : démontage sur servomoteur, ouverture du boîtier, re-soudage du fil, remontage et noyage du tout dans le pistocolle...
Et voilà, il ne nous reste plus qu’un week-end avant la coupe et nous sommes loin d’enchaîner les essais pour fignoler la stratégie.
Notre code se compose d’une vingtaine de cas de test, qui nous ont permis de travailler jusqu’à présent. Maintenant, nous devons absolument commencer le code principal, tenant compte de la "couleur" du robot - qui influe sur sa position de départ - et de la tirette - qui conditionne le départ du robot. Des "détails" qui peuvent réserver leurs surprises.
Mais avant, nous avons un dernier mouvement à programmer. Le robot est conçu pour pouvoir lâcher ses pots, tourner sur lui-même et les re-saisir. Du moins c’était notre ambition initiale. Quelques essais montrent que ce ne sera pas possible exactement comme ceci. Lorsque le robot lâche un pot, celui-ci s’éloigne du robot. Les bras sont alors trop courts pour récupérer les pots sans déplacer le robot. Vu la situation, nous travaillons sur un échange entre les deux pots avants (potentiellement remplis d’une plante) avec les pots arrières.
Dans l’après-midi, nous organisons une séance PAMI. Avec de l’aide, nous découpons les dernières pièces des PAMI, soudons les câbles, assemblons les petites bêtes. Mais la tâche est un peu plus ardue que prévu, la carte électronique ne se monte qu’en force et il faut dessouder une broche du microcontrôleur à cause d’un problème de conception de la même carte.
Nous finissons la journée avec des PAMI montés mais pas testés...
Nous enchaînons les essais et le comportement du robot se dégrade, essai après essai. Il n’arrive plus à lâcher les pots, les servomoteurs n’ont plus la force de décoller les aimants des pots. Puis même à vide, les doigts ne bougent plus. Les servomoteurs des doigts, ceux qui font avancer et reculer les aimants se mettent à "croustiller". Nous remplaçons nos servomoteurs à pignons en plastique par des servomoteurs avec des pignons métalliques.
Puis l’un servomoteur à pignons métalliques refuse de bouger, ou a la tremblotte à certains moments. Nous vérifions les branchements plusieurs fois, ce qui semble améliorer la situation. Avant qu’elle n’empire à nouveau.
Nous contrôlons alors la mécanique des doigts et, effectivement, certains doigts forcent plus que d’autres. Nous corrigeons ceci en ajustant la forme du fils de fer qui guide l’aimant tenu par le servomoteur. Et la situation s’améliore...
Autre problème, le translateur, ce bloc qui tient la pince et son ascenseur, qui lui permet de se positionner au-dessus des pots, ne va plus au bout de sa course. Là, il nous faudra qu’une heure ou deux pour comprendre que nous devons re-lubrifier les axes régulièrement. Les axes sont en carbone (baguettes de cerf-volants ) et le translateur en bois. Nous les avions lubrifiées avec du PTFE en bombe. C’est efficace, mais pas très pérenne. Nos gardons quand même cette solution et notant bien de prendre le lubrifiant avec nous. (Il faudra que nous soyons à la compétition pour réaliser que nous ne secouions pas assez la bombe et que nous ne projetions que des traces de PTFE sur les axes du translateur...)
Maintenant, il faut vraiment écrire un bout de code pour l’homologation, prenant en compte la tirette et la couleur de départ du robot ! Mais avant, nous réalisons un ou deux tests et nous cassons un morceau de bras !
La réparation sera heureusement rapide !
Nous continuons nos essais et rapidement nous avons le robot qui se "plante", moteurs arrêtés, le reste semblant fonctionnel. Nous avions déjà vu ce phénomène mais nous l’avions négligé. Après avoir vérifié la tension de la batterie, nous branchons le PC sur le robot et découvrons avec stupeur que le robot est en train de redémarrer. En réalisant ce branchement, nous frôlons le régulateur de tension qui nous parait excessivement chaud par rapport à la puissance consommée estimée. Après avoir inspecté la carte et ses branchements dans tous les sens, nous modifions deux choses sur le robot :
En fin de journée, nous avons un code qui permet au robot d’attraper les pots, chercher des plantes dans une zone de plante, rentrer à une zone de dépose et déposer ses pots (potentiellement garnis de plantes).
Le code est fiable dans le sens où le robot réalise ces actions sans partir dans le décor. Mais il est loin d’attraper systématiquement une plante !
C’est également le moment de s’assurer que l’affichage du score marche bien... Et c’est un échec. Le code de la gestion de l’écran et celui de la lecture du capteur à l’avant, qui détecte les plantes, semblent entrer en conflit. Vu notre avancement, nous remettons un code qui gère le score, affichons "25 points" sur l’écran e-ink, et rebasculons sur le code qui ne gère que le capteur. Le robot affichera 25 points du début à la fin de la compétition.
Fiabilisation du code ? Avancée sur la stratégie ? Que nenni !
Nous chargeons la voiture le matin et voyageons l’après-midi ! Nous avons seulement un peu de temps le soir, qui sera consacré à l’asservissement des moteurs du premier PAMI.
Mots clés : 2024, Coupe, Essais, Mécanique, Mini robot (PAMI)
5 mai 2024
Voici le poster de cette année :
Côté avancement sur le robot, c’est mitigé :
Les PAMIs ont bien avancé, mais un seul a été testé...
Donc en gros, c’est tendu !!
Mots clés : 2024, Poster, Mini robot (PAMI)
23 avril 2024
Voilà un mois que nous n’avons rien publié et nous voilà à 2 semaines de la compétition... Mais qu’avons-nous fait ?
Rappelons que ce capteur mesure 64 distances à chaque acquisition, répartis sur une grille de 8x8.
Ce capteur nous a bien occupé et les résultats sont au niveau des attentes. Le robot détecte les bordures et se recale. Il trouve même sa position de départ tout seul !
L’identification de la bordure se fait en prenant 8 points horizontaux. Nous utilisons une régression linéaire et les caractéristiques de la droite trouvée nous ont vite donné satisfaction. Ce qui nous a embêté, c’est le rejet des valeurs perturbées par la présence d’un pot devant la bordure. Pour cela, nous utilisions un critère, nommé qualité de prédiction par Wikipédia. Ce critère, pour estimer que les points forment une droite, est proche de 1 si les points forment une droite, proche de 0 dans le cas contraire. Or dans notre cas, face à une bordure, le critère variait en fonction de l’angle du robot avec la bordure. Ci-dessous, nos données expérimentales :
L’explication détaillée mériterait un article, mais en gros, le critère que nous utilisions évaluait le rapport entre la variation en Y des points théoriques par rapport à la variation en Y des points réels. Quand l’angle entre la bordure et le robot est proche de 0, la variation des points théoriques devient très faible alors que la variation des points réels reste constant à cause des erreurs de mesures.
Nous avons bidouillé notre propre critère en se basant sur les écarts en les Y réels et les Y théoriques.
Le capteur permet aussi au robot de trouver les plantes, avec une logique simple, ciblant le point le plus proche.
Le robot a attrapé ses premiers pots. Un moment touchant pour nous, car le spectacle semble à la hauteur de nos espérances.
Nous vous avions présenté la conception de la carte électronique des PAMIs, voici la conception mécanique !
Et le premier PAMI partiellement monté :
C’est maintenant une course contre la montre :
Mots clés : 2024, Capteur, Vidéo, Mini robot (PAMI), Programmation
23 mars 2024
... mais ce n’est plus un grappin.
Après nos essais non-concluants, nous nous sommes remis au travail. Nous avons coupé les doigts du grappin, percer des trous pour pouvoir fixer différents types de doigts. Finalement, notre seconde itération s’avérera concluante.
Nous avons fixé nos cartes électronique et raccordé la quasi-totalité de capteurs et actionneurs. Il ne manque que la tirette, le bouton de sélection de la couleur de l’équipe et le petit écran qui indique le score.
Ce qui nous a permis de reprendre le programme de l’an dernier et ses nombreux tests unitaires. Le début ne s’est pas fait sans mal :
❌Recompilation du code en mode test : pas de mode test
❌make clean puis recompilation en mode test : pas de mode test
❌rm -r build/* puis recompilation en mode test : mode test OK (c’est le cache du cmake qui posait soucis), mais pas de retour des codeurs
❌ Oh, le code de test n’initialise pas le module codeur : le code tourne, mais les codeurs sont à 0 en permanence
✅ Ah, oui, après relecture du plan de la carte, les codeurs ne sont pas alimentés par l’USB. On attrape l’arrêt d’urgent de l’an dernier, le connecteur pour la batterie, la batterie et Oh ! Les données arrivent !
✅ Quoi ? Pas de graphique teleplot pour nos codeurs : ça c’est corrigé !
La suite se déroule beaucoup mieux :
✅ Lecture des codeurs
✅ Pilotage des moteurs
✅ Asservissement des moteurs
✅ Lecture du gyroscope
✅ Localisation par codeur + gyroscope
Nous fixons l’arrêt d’urgence (à cause du souci rencontré plus haut), le gyroscope et le capteur de détection des plantes (VL53L8).
L’arrêt d’urgence se base sur notre système habituel, une sorte de tringlerie en bois qui active un interrupteur à levier.
Le gyroscope est situé à un endroit accessible, afin de facilement pouvoir y accéder en cas de soucis (notamment l’enfermer dans une cage en aluminium).
Et notre capteur est situé au milieu du robot, à hauteur des plantes qu’il doit identifier.
Nous avons réglé les positions des 6 bras avec leurs aimants et rajouter sur la carte servomoteur, le code pour communiquer en I2C.
Le gros point restant est le traitement du capteur VL53L8 et la stratégie !
Mots clés : 2024, Mécanique, Programmation, Photo
2 mars 2024
S’il est important de célébrer nos succès, il faut parfois célébrer nos échecs. Après tout, n’est-ce pas d’eux que nous apprenons le plus ?
Alors, nous partageons avec vous notre conclusion, le grappin, pour attraper les plantes ne fonctionne pas. Ou alors pas de manière suffisamment fiable pour être utilisé à coupe.
La preuve en image :
Que faire maintenant ? Nous avons analysé le problème et trouvé deux causes :
Nous vous présenterons prochainement nos améliorations. Nous utiliserons bien une pince 3 doigts pour attraper les plantes, mais ce ne sera pas un grappin !
page précédente 1 2 3 page suivante