<< The Fribotte Homepage >>
Un club de passionnés en robotique participant à la coupe de France E=M6.
[Accueil] [Qui sommes-nous ?] [Robots] [Coupe e=m6] [BD Technique] [Forum] [Reportages] [Liens] [WiKiFri]

Fribotte



Les grandes lignes de Cnossos
A quoi il ressemblera


Cnossos doit forcément être un petit robot pour évoluer sans problème dans le labyrinthe et ses cases de 40*40cm.

Ici la taille est déterminée par celle des moteurs (prétés comme l'an dernier) avec encodeurs. Ces moteurs ont un renvois d'angle intégré au réducteur (roue et vis sans fin) ce qui facilite pas mal leur mise en place dans le robot.

Ensuite les roues sont faites à partie de CD, de grand diamètre pour aller vite.

Il y a 4 CDs empilés. Les deux du centre sont entourés d'une bande de caoutchouc (grip pour les raquettes de tennis), et les deux CD extérieurs se plaquent autour pour que la bande ne bouge pas.

Il est prévu de mettre une sorte de 1/2 oeuf au dessus pour améliorer le look. Mais les contraintes des composants à mettre dedans étant ce qu'elles sont, l'opération risque d'être délicate...

Cnossos sera équipé de deux PIC 18F252. Le 1er (maître) servira à contrôler le robot, les capteurs, faire les calculs de position, l'asservissement de position, etc ... pas mal de trigo en perspective. Le 2ème (esclave) est une émanation directe du PID sur PIC (V3 ici). Il va se charger de l'asservissement rapide des deux moteurs en PID. La communication entre les deux PIC se fera en utilisant le bus SPI.

Cnossos aura 4 capteurs sharp de distance pour connaître la position des murs, de 10 à 80cm. Il n'aura pas d'autres capteurs (si on excepte bien sur les compte-tours sur les moteurs et l'interrupteur de départ).

 

Stratégie


Le programme de Cnossos est prévu en deux parties :

  1. Une première partie où il va chercher où il se trouve dans le labyrinthe.

    Pour cela, il va avancer case par case, tourner de +-90deg (ou 180), jusqu'à ce qu'il soit sûr, en se servant des infos des 4 sharps, de l'endroit où il se trouve dans le labyrinthe. Cette phase va utiliser le PID sur PIC en mode trapézoidal : le PIC maître va envoyer une seule consigne de position au PIC esclave, pour l'avance d'une case ou pour la rotation.

  2. Dès que le robot sait où il se trouve, on passe à la 2ème phase.

    Cette fois-ci, le robot va foncionner en asservissement de position (PIC1) géré par des changements de consigne de vitesse à la volée (sur le PIC2). Le robot devra atteindre le milieu de chaque case pour aller vers la sortie, mais avec une certaine imprécision, permettant de lisser automatiquement les virages. Je m'inspire ici des travaux déjà réalisés sur Coredemp (robot Coupe INT 1998). Il faudra juste prévoir un passage vers le centre pour tirer la balle de ping-pong ...

    Dans cette phase, le robot essaiera d'atteindre 1m/s.

    Mais ce n'est pas tout. Le robot ne poura pas se fier uniquement à son odométrie pour savoir où il se trouve. En effet, les erreurs seront certainement trop importantes pour éviter de se prendre un mur d'ici la sortie. Du coup, le robot va calculer sa position thérorique dans le labyrinthe et la comparer avec les mesures des capteurs, effectuées en plein mouvement et à angle quelconque ! Les différences permettront au robot de corriger sa trajectoire (du moins je l'espère!). Il faudra que les sharps soient assez précis pour ça ...

 


La mécanique

 

La mécanique avance petit à petit. Elle n'est pas très compliquée et les moteurs simplifient beaucoup les choses. Néanmoins, plus elle sera soignée et plus le robot sera précis. Et il y a aussi le problème du tir de la balle à régler.

Contrairement à Haku (robot Fribotte Hispabot 2003), ici les contraintes de dimmension du règlement sont quasi négligeables !


Chassis


Le chassis se base sur les moteurs. Une plaque en allu est rajoutée dessus. Un mat (non encore fixé) en plastique servira de support aux capteurs sharps dans les 4 directions (les boitier des sharps étant conducteur, ils vaut mieux les isoler complètement).

A l'avant on voit le patin en téflon, choisi pour son très faible frottement.

La fixation des roues est ici provisoire.

 

Le tir de la balle de ping pong


Le seul problème un peu compliqué en méca vient du tir à faire avec la balle de ping pong. Pour cela, il faut quelque chose de fiable qui réalise à peu près toujours la même chose.

J'ai commencé à tester le principe d'une lamelle souple en plastique qui est déformée par un petit servo. Le relachement de la lamelle envoit la balle.

 

Comment tout ça est fixé sur le robot ?


Ce système est mis là où il reste de la place, c'est à dire à l'arrière du robot.

Ca donne une bonne idée de ce à quoi devrait ressembler le robot au final.

A noter les plaques en bas dans lesquelles vont se mettre les batteries.

Pour l'instant le tir de la balle (fait en tournant le servo à la main) ne part pas très droit et est un poil trop fort... des tests supplémentaires sont à prévoir !

Voici néanmoins une vidéo qui montre le principe du tir.


 


L'électronique
Les batteries

 

Les moteurs fonctionnant en 24V, j'avais besoin d'un sacré nombre d'éléments NI/CA et Ni/MH en 1.2V pour les alimenter...

Du coup je suis parti sur une autre solution : le lithium-ion.

Je tiens ici a remercier T-bot qui m'a pas mal aidé pour arriver à maitriser ces nouvelles bêtes pour moi !

Si le test s'avère concluant, je ferai une page dédiée pour expliquer comment les utiliser.

Voici quelques images :

La station de charge

La station de décharge (pour tester)

Ils sont pas lourd

L'accus 10.8V, 1500 mAh au final

Il faudra deux accus 10.8V en série. Pourquoi 2 accus de 3 éléments et pas un de 6 ? C'est parce que mon alim stabilisée ne me permet pas d'avoir une tension suffisante pour les recharger 6 par 6 !

 

La carte

 

Pour Cnossos, une nouvelle carte a été développée.

Elle comprend 2 PIC reliés en SPI, un régulateur 5V à découplage (et pas linéaire, rapport à la tension d'entrée trop grande), la puissance avec un L298, 6 leds CMS (merci Lionel !) en tout (3 par PIC) et des connecteurs pour les moteurs, les encodeurs, les batteries, les 4 sharps, le servo moteur, le bouton de départ et un afficheur LCD ou une liaison série.

 

La dernière image montre la plaque d'allu du chassis avec un des sharp, la carte et l'afficheur LCD.

 

Voici le fichier protel de la carte en question : carteCnossos.zip

Merci Lionel pour l'aide sur la carte !

 

Le programme

Le programme a été commencé...

Evidemment ici il y a deux PIC. Il faut donc deux programmes :)

Celui du PIC esclave reprends le PID sur PIC V2. Mais il y apporte des modifications et des améliorations.

Celui du PIC maître va être compliqué par la trigo, mais on n'en est pas encore là.

J'ai tout d'abord codé et testé la communication SPI entre les deux PIC. Puis j'ai vérifié que le pic esclave asservissait correctement les moteurs suivant les consignes du PIC maître.

On voit ici le test en question, qui s'est révélé positif ! Les deux moteurs tournant à l'unisson à vitesse constante et faible.

Maintenant il reste pas mal de boulot. Je vais déjà rajouter le mode trapézoidal sur le PIC esclave. Puis il faudra commencer à tester et calibrer les capteurs avec le PIC maître dès qu'ils seront convenablement placés...

Ca s'annonce bien, mais les soirées vont être courte d'ici fin avril ;-)

Julien - pour les Fribottes

 


Complétez cette page, posez vos questions et remarques ici : WiKiFri

Page http://fribotte.free.fr/bdtech/cnossos/robot_cnossos1.html modifiée le 13/09/2004.
Copyright fribotte@free.fr, libre de droit pour toute utilisation non commerciale.
Reproduction autorisée par simple mail