Ce jeudi 26 avril 2012 avait lieu la présentation du robot de l'ENSIM à l'ENSIM même. En contact avec cette équipe depuis novembre, je me suis permis de passer les voir avec Oleg afin de faire quelques essais sur table grandeur nature. Ce fut l'occasion d'échanger sur la fabrication d'un robot en Lego puisque leur robot secondaire est un robot à base Lego !
Cet échange m'a permis de valider qu'au minimum Oleg sait marquer 8 pts en poussant le lingot puis la premiere bouteille. C'est tout ce que j'avais programmé pour cet échange mais Oleg a pu faire ce parcours à chaque fois en 14 secondes ce qui lui laissera encore 76 secondes pour atteindre les 20 pts que je vise pour objectif ! En tout cas il y a un point très clair c'est qu'une fois les batteries rechargées, le robot va plus vite et est beaucoup plus précis !
Du côté de l'ENSIM, leur robot principal est un robot volontairement simple où l'objectif était de réaliser une base roulante qui sera réutilisable les années suivantes. Pour le moment c'est très réussi. J'ai particulièrement aimé leur programmation sous téléphone androïd et les quelques pièces blanches réalisées à l'imprimante 3D !
Leur robot secondaire est un robot Lego qui a actuellement pour objectif de pousser les bouteilles. L'Ensim rencontre les mêmes difficultées que celles que j'avais rencontré avec la mécanique et la programmation Lego, j'ai pu leur expliquer les solutions que j'avais trouvé et celles que j'avais mis en place sur Oleg.
Nous nous reverrons le samedi 5 mai au même endroit, j'espère que d'ici là la pince sera terminée !
vendredi 27 avril 2012
dimanche 22 avril 2012
Eviter les recifs (ou n'importe quel autre objet)
Il y a quelques semaines, j'avais posté un message concernant le fait de détecter et d'éviter l'adversaire, depuis le robot a beaucoup évolué mais le programme reste bien fonctionnel. Ainsi actuellement le robot arrête d'avancer lorsqu'il détecte un objet devant lui (ou recule s'il est trop près) à partir du capteur ultra son.
Cet équipement est obligatoire pour l'homologation et reste très pratique pour éviter les chocs entre robots. Cependant tout équipement similaire ne permet pas de détecter à coup sûr tout robot adverse ou tout objet en travers du chemin. De plus cette année, il y a des elements de jeu (les pièces en l'occurence) qui risquent de poser problème à beaucoup d'équipes. Comme vous pouvez le constater sur la vidéo ci-dessous (Précoupe du Trégor) la loi de Murphy nous rappelle que chaque pièce est un piège, l'épaisseur de 1mm et la forme circulaire fait qu'il peuvent se coincer à peu près partout : sous le robot, entre le robot et le totem ou n'importe quel autre objet...
Le risque principal est donc que le robot continue d'avancer alors qu'une pièce l'en empêche. Il faut donc que le robot se rende compte qu'il n'avance plus avant de pouvoir réagir. Dans mon cas, la présence de roues codeuses, indépendantes des roues motrices, me permet de capter cela : lorsque les roues codeuses ne tournent plus (ou tournent en sens inverse) alors que la consigne est d'avancer, le robot doit reculer un peu avant de reprendre son déplacement. Bien entendu cela ne veut pas dire que la pièce se décoincera toute seule mais c'est un début !
Cet équipement est obligatoire pour l'homologation et reste très pratique pour éviter les chocs entre robots. Cependant tout équipement similaire ne permet pas de détecter à coup sûr tout robot adverse ou tout objet en travers du chemin. De plus cette année, il y a des elements de jeu (les pièces en l'occurence) qui risquent de poser problème à beaucoup d'équipes. Comme vous pouvez le constater sur la vidéo ci-dessous (Précoupe du Trégor) la loi de Murphy nous rappelle que chaque pièce est un piège, l'épaisseur de 1mm et la forme circulaire fait qu'il peuvent se coincer à peu près partout : sous le robot, entre le robot et le totem ou n'importe quel autre objet...
Vidéo de la précoupe du Trégor (31 mars 2012)
Evitement de deux objets
dimanche 15 avril 2012
Pince pour les objets dans les totems
Voici la pince qui sera positionnée à l'arrière du robot principal.
Cette pince a pour rôle d'attraper le lingot du premier étage et les deux pièces au dessus.
L'ensemble des mouvements est piloté par un seul servo-moteur, le dernier disponible puisque les deux autres actionneurs sont les moteurs pour le déplacement.
Cette assemblage s'intègre à l'arrière du robot comme sur la photo ci-dessous.
Cette pince a pour rôle d'attraper le lingot du premier étage et les deux pièces au dessus.
Pince totalement ouverte :
Les bras sont à l'interieur du robot
Pince semi-ouverte :
Les bras sont à 90° du cap du robot
Pince fermée :
Les bras sont refermés sur les objets
L'ensemble des mouvements est piloté par un seul servo-moteur, le dernier disponible puisque les deux autres actionneurs sont les moteurs pour le déplacement.
Cette assemblage s'intègre à l'arrière du robot comme sur la photo ci-dessous.
Integration de la pince sur la face arrière du robot
Parmis les prototypes de pince que j'avais conçu il y a quelques semaines, j'avais réalisé une pince qui pouvait, en plus du lingot et des deux pièces du dessus, prendre les deux pièces au bas du totem. Après plusieurs simulations de trajets / stratégie, j'ai décidé de laisser vide la partie située sous la pince à l'arrière du robot. Cela diminuera grandement la (mal)chance qu'une pièce empêche au robot de se plaquer contre le totem et cela pourrait même, en marche arrière, récupérer les pièces et lingots posés au sol !
Avant cela, il va falloir encore quelques heures de travail avant que cela soit intégrer mécaniquement et que cela fonctionne ...
jeudi 12 avril 2012
" ... ça roule ! "
Oui ça roule ! Et ça roule bien même !
Après avoir remis à jour tous les programmes suite à la mise à jour du firmware,
Après avoir modifier la mécanique du module déplacement,
Je me suis rendu compte que le robot se décalait au fur et à mesure de ces déplacements.
Pourtant le robot avait constament un bon cap et en ligne droite il parcourait toujours la bonne distance.
Finalement, après maintes essais, je me suis rendu compte que l'entraxe des roues folles ne correspondait pas à l'entraxe des roues motrices.
Je vous passe tous les essais et calculs effectués mais désormais le robot me communiquera la position du centre des roues motrices. Encore mieux lorsque je demanderais au robot de se déplacer jusqu'à une cible, c'est bien l'entraxe des roues motrices qui atteindra la cible !
Sans plus attendre voici une petite vidéo des performances du robot en terme de déplacement :
- 1 mètre parcouru en 3,7 secondes
- s'approche à moins de 10 mm de la cible avant de passer à la suivante
- erreur de moins de 5 mm au bout de 5 m parcourus
Prochaine phase :
- Montage mécanique de la pince
- Evitement total de l'obstacle
Après avoir remis à jour tous les programmes suite à la mise à jour du firmware,
Après avoir modifier la mécanique du module déplacement,
Je me suis rendu compte que le robot se décalait au fur et à mesure de ces déplacements.
Pourtant le robot avait constament un bon cap et en ligne droite il parcourait toujours la bonne distance.
Finalement, après maintes essais, je me suis rendu compte que l'entraxe des roues folles ne correspondait pas à l'entraxe des roues motrices.
Je vous passe tous les essais et calculs effectués mais désormais le robot me communiquera la position du centre des roues motrices. Encore mieux lorsque je demanderais au robot de se déplacer jusqu'à une cible, c'est bien l'entraxe des roues motrices qui atteindra la cible !
Sans plus attendre voici une petite vidéo des performances du robot en terme de déplacement :
- 1 mètre parcouru en 3,7 secondes
- s'approche à moins de 10 mm de la cible avant de passer à la suivante
- erreur de moins de 5 mm au bout de 5 m parcourus
Prochaine phase :
- Montage mécanique de la pince
- Evitement total de l'obstacle
Inscription à :
Articles (Atom)