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)
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 !
25 janvier 2023
Voici nos essais qui datent de début janvier, avant que nous installions proprement la carte électronique. Ce qui est fonctionnel :
La première vidéo nous a permis de mesurer les effets de l’accélération sur l’erreur de position.
Voici nos résultats :
Ce qui nous incite à privilégier les accélérations lente en début de match et tenter une trajectoire vraiment rapide en fin de match si nécessaire.
Aller-retours avec accélération contrôlée (720p - 12,3 Mo).
La petite oscillation en fin de mouvement est certainement due à une courroie détendue.
Mais là, ce ne sont que des aller-retours. Or, un robot holonome, ça permet de faire des trajectoires plutôt cool, comme une translation circulaire, que voici :
Trajectroire circulaire avec accélération contrôlée (720p - 3,3 Mo).
Mots clés : Essais, Vidéo, Robot holonome, 2023
29 novembre 2022
Ce week-end, nous avons changé le châssis en medium 3 mm (cassé) par un châssis en contre plaqué de 5 mm. En démontant les moteurs nous en avons profité pour installer les codeurs à l’arrière des moteurs. En effet, nos moteurs sont équipés d’un axe arrière dédié à la fixation d’un codeur.
C’est sur cet axe arrière que nous fixons notre codeur en kit.
Pour ceux qui ne connaissent pas trop le fonctionnement de la roue codeuse, il s’agit d’une petite diode qui va éclairer un disque strié. Un récepteur va détecter la variation de lumière due aux stries et ainsi compter le passage des stries. En ajoutant un léger décalage avec un second capteur, il est possible de déterminer le sens de rotation du disque. Quelques informations supplémentaire par ici.
Voici notre disque en détail, c’est quand même une jolie pièce !
Une fois l’ensemble tout remonté, nous revérifions que la lecture des codeurs et le pilotage des moteurs fonctionnent bien. Une petite surprise nous attendait sur le moteur 3, un court-circuit maintenait la broche PWM à la masse...
Bref, le robot était presque prêt à faire ses premiers tours de roue. Dernière étape avant un déplacement sommaire, l’asservissement des moteurs.
Voici notre démarche pour régler notre asservissement. Notez qu’il s’agit d’un processus itératif et que nous nous arrêtons dès que le résultat nous semble correct. Nous ne sommes pas allés chercher l’optimisation !
Pour nos essais, nous fixons une consigne à 500 mm/s et un gain P arbitraire.
L’oscillation montre un gain trop fort. Nous le divisons par 2.
Observons la valeur finale, de 350 à 400 mm/s. Nous ajoutons un intégrateur pour améliorer la précision de l’asservissement.
Nous sommes plus près de 500 mm/s, mais ça oscille énormément. Nous divisons par 10 le gain de l’intégrateur.
Le début semble encore bien oscillant. Nous savons que la période de calcul influe grandement sur la stabilité d’un système. Nous la diminuons de 5 millisecondes à 1 milliseconde. Les résultats sont flagrants.
La montée brusque suivie de l’atteinte de la valeur finale par une montée bien plus lente laisse supposer que notre gain proportionnel (P) est trop faible par rapport à notre gain d’intégration (I). Ayant gagné en stabilité en réduisant le pas de calcul, nous pouvons augmenter le gain P (en le doublant).
En conclusion, nous noterons que nous obtenons des résultats très corrects sans peaufiner les gains. Nos principaux ajustements ont été de multiplier ou diviser par 2, 5 ou 10 les gains.
Mots clés : Essais, Photo, Robot holonome, 2023
22 mai 2022
À J-3 des homologations, les journées ont été chargées.
La lecture des résistances carrés de fouille a été ajoutée à la stratégie générale. Nous avons un algorithme assez sympa dont nous sommes fiers. Le robot arrête de s’acharner sur les carrés de fouilles quand il lui reste juste assez de temps pour aller déposer la statuette (et rentrer à la case départ).
Une partie du dimanche a été consacrée à l’évitement de l’adversaire. Après analyse, nous avions 2 à 3 trajectoires sur lesquelles rencontrer un adversaire était très probable. Le but étant de ne pas bloquer le robot et perdre la majorité de nos points à cause d’un robot adverse planté. Pour ces trajectoires nous avons défini des solutions de replis qui se déclenchent en fonction du temps restant.
En voulant valider cette stratégie, nous découvrons la piètre fiabilité de notre détection. Surpris car nous utilisions un système similaire à celui des années précédentes, nous avions désactivé une fonction de maintient de la présence de l’obstacle. Nous considérons maintenant que la voie est libre si les capteurs annoncent 5 valeurs consécutives sans obstacles et les résultats sont flagrants !
Mise à jour de notre Todo List :
Concernant la dépose de la réplique, nous ne faisons pas entièrement confiance à notre table de test et nous nous préparons à ajuster une trajectoire en fonction des résultats sur les tables officielles.
Mots clés : Coupe, Essais, Eurobot 2022