Tortoise
(une tortue framboise)

If you don't speak french it is always fun to have a page translated by a machine

La mécanique -- L'électronique -- L'alimentation

Les autre bricolages à but non lucratif de F2D

Cette page décrit une tentative de construire une tortue Logo robot avec le cahier des charges suivant:

Les trois premiers points sont plus ou moins atteints, comme le montre la video ci-dessous.

Le dernier point semble à la réflexion incompatible avec le second, puisque mes pièces de récupération proviennent essentiellement de matériel massacré par mes gamines.

La mécanique

Une tortue logo, c'est essentiellement deux moteurs, pour les roues gauches et droites. Dans mes mathoms, j'ai un certain nombre de moteurs pas-à-pas récupérés dans des imprimantes (googlez ou wikipediez "moteur pas à pas" ou "stepper motor" si vous ne savez pas ce que c'est). Il en faut deux identiques, mais c'est souvent le cas dans les imprimantes à jet d'encre. Si l'imprimante est assez vieille, vous pourrez aussi récupérer l'électronique de puissance nécessaire (voir ci-dessous) -- sur les imprimantes récentes les composants sont trop petits. Je crois que mes moteurs viennent d'une Canon S400 mais je ne suis pas certain.

Les roues sont deux CDrom. Je les ai collées (au pistolet à colle) sur des engrenages (une centaine de dents) dont je ne souviens plus d'ou ils sortent. Les pignons correspondants sont collés sur les moteurs, cela donne une démultiplication suffisante car les moteurs PaP ont pas mal de couple. L'axe des roues est juste une tige du bon diamètre. Le tout est collé sur des planchettes de bois.

Pour économiser une roue j'ai placé le centre de gravité de la tortoise sous l'axe des roues. En fait, les deux moteurs, et les deux packs de batteries sont sous complètement sous l'axe, seul le Pi est au dessus. Ainsi, la bestiole est pendue à ses deux roues. En plus cela lui donne cette démarche chaloupée sympathique quand elle roule.

L'électronique

Le Pi a plein de broches qui peuvent commander des trucs et des machins. On trouve donc sur le Ternet tout plein de conseils pour brancher des moteurs sur un Pi: suivez les. Il faut au moins un transistor de puissance, et surtout il faut protéger les GPIO du Pi des retours de courant des bobines. Il y a une solution en une puce pour commander 8 bobines (ou 8 moteurs à courant continu), nommée ULN 2803. Je l'ai découverte en googlant les puces près des connecteurs des moteurs sur les cartes de mes cadavres d'imprimantes. J'ai ainsi laborieusement scié un ULN 2803, et deux ULN 2003 (son petit frère), de leur circuit imprimé. Ensuite, j'ai découvert avec amertume que cette puce coutait moins de 1 euro chez Conrad ou Selectronic.

Comme le montrent les photos ci-dessus, l'électronique se borne à souder les fils qui viennent des GPIO d'un côté du ULN 2803, et les fils qui vont au moteur de l'autre coté. Cablage exact par exemple selon ce lien pour un moteur bipolaire, ou selon ce lien pour un unipolaire comme moi. Et googlez "stepper motor uln2803" quand ces liens seront cassés.

Quels GPIO? Ben, on s'en fiche, le soft s'adaptera. J'ai utilisé les broches numérotées 22,18,7,11,15,13,12,16 pour les moteurs. Ainsi je me garde la possibilité de brancher de l'I2C par exemple (des capteurs, un désintégrateur laser).

Cela a marché du premier coup. Le connecteur GPIO vient d'un vieux cable de disque dur d'ordinateur, il était trop large alors je l'ai coupé + percé. Il parait que les cables des lecteurs de disquette ont les connecteurs de la bonne taille, mais je n'en ai pas trouvé dans mes mathoms.

Et ne pas oublier au moins une petite led qui clignote. On n'a jamais vu un robot sans au moins une petite led qui clignote.

L'alimentation

Eh ben ce fut le plus dur. Il vaut mieux séparer l'alimentation du pi de celle des moteurs, pour que l'alim du cerveau ne souffre pas de chute de tension dans les montées.

Pour les moteurs pas de problème, j'ai entassé 6 accus NiMH, en découpant des connecteurs dans une de ces plaques d'inox qui servent de blindage dans les appareils électroniques.

Pour le pi, j'ai récupéré chsais pas ou un 7805, un régulateur 5V. C'est de la techno du moyen age (déjà utilisé dans le ZX 81, et sans doute avant, mais avant je ne démontais pas les ordinateurs), il suce 10mA à vide et réclame au moins 7V en entrée. Bref, alimenté par 6 accus NiMH le Pi bootait une fois sur 4 (faut dire que les accus aussi sont vieux).

Alors j'ai éventré un pack de batterie de portable vieux de 5 ou 6 ans à peine, et j'y ai pris deux cellules LiIon, qui font entre 3.6 et 4.2V quand elles sont chargées. Avec deux de ces cellules en série devant mon 7805, cela marche bien. A part qu'il se dissipe sans doute plus d'énergie dans le régulateur que dans l'ordinateur régulé, mais bon.

Du coup j'ai aussi mis 3 de ces cellules en série pour la propulsion: 12V au lieu de 6, cela a plus de pêche.

Les cellules au lithium, faut les charger poliment sinon elles vous explosent à la figure (parait-il). J'avais bricolé, dans les temps héroiques ou c'était rare, un chargeur pour ces trucs, il marche toujours (la tension à laquelle il faut couper la charge est montée de 3.4V à 4V, donc il faut croire que les cellules Tadiran de jadis n'étaient pas comme les Lithium-Ion de nos jours). Moins cher que le mien, c'est celui-ci.

Pour faire de petites fiches faciles à brancher et débrancher, le plus économique est d'acheter des supports de circuits "tulipe" et de les découper.

Le logiciel (c'est du python)

Des exemples de codes d'accès aux GPIO

Les drivers de base pour les moteurs pas à pas d'une tortue: tortue.py

Une couche de pseudo-logo (en français): logo.py

Un exemple de programme: autolaunch.py

Ce dernier script est lancé au boot en insérant /usr/bin/python /home/pi/autolaunch.py à la fin du script /etc/rc.local.

Yapuka

Reste (en vrac)