Mon site perso : Guy SINNIG

Mon premier robot

jeudi 24 octobre 2013, par Guy SINNIG

Je vais essayer de décrire ma démarche et les étapes de la réalisation, de mémoire (cela remonte à fin 2010 début 2011 tout de même !).

Motorisation

J’ai commencé par m’occuper de la motorisation.
J’ai "emprunté" des roues de Lego de 42,5mm de diamètre à mon fils.
J’ai acheté deux kits de transmission : moteur à courant continu et ensemble d’engrenages qui permettent d’obtenir différents rapports de réduction de vitesse.

http://www.conrad.fr/ce/fr/product/240788/Kit-de-transmission-variable-Modelcraft

En partant de la vitesse de déplacement approximative que je cherche à obtenir, soit environ 30cm par seconde, c’est à dire 18m/mn.
Connaissant la vitesse nominale du moteur à courant continu : 15000 tr/mn lorsqu’il est alimenté en 5V.
Il est facile de calculer grossièrement le rapport de réduction de vitesse : soit rapport de réduction = (vitesse moteur x périmètre de la roue) / vitesse du mobile.
On obtient donc un rapport approximatif de 15000 x 0,134 / 18 = 112
J’ai alors choisi un rapport de 125.

Il y a deux moteurs à courant continu avec leur réducteur à l’arrière, et une roulette pivotant librement à l’avant, les moteurs sont calés pour que la plate-forme soit à peu près horizontale.

Vue du dessous

Aujourd’hui j’aurai plutôt choisi ceci : http://www.arobose.com/shop/moteurs-servos-robot/161-double-bloc-moteur-engrenage.html

Pour la commande des deux moteurs à courant continu, j’utilise un L298N, il s’agit d’un double pont en H.

JPEG - 16.1 ko
L298

Circuit L298

Remarque : Il existe un shield arduino tout fait, c’est encore plus simple à mettre en œuvre.

PNG - 179.7 ko
Shield L298

La partie motorisation est directement alimentée par 4 piles AA.

Capteurs

Dans un premier temps j’ai monté deux micro-switchs sur un "pare-choc", ainsi lorsque le mobile touchait un obstacle, il changeait de direction.

Pare-choc avant

Puis j’ai rajouté un capteur infra-rouge de type SHARP GP2Y0A02YK, qui permet de détecter les obstacles à distance. Le capteur fourni une tension analogique fonction de la distance. Il faut donc le connecter sur une entrée analogique.
L’angle de détection étant assez faible, j’ai monté le capteur sur un servomoteur qui balaye l’avant du mobile.
Pour connaître la position de l’obstacle, j’ai découpé la plage de balayage en plusieurs secteurs, je fais partir le mobile dans la direction opposée à l’obstacle.

Secteurs balayage servomoteur

J’ai également rajouté un bouton poussoir à l’arrière pour faire démarrer le mobile.

arduino

C’est un arduino Uno qui pilote tout cela.
En entrée numérique il y a :
- les 2 micro-switchs montés à l’avant sur le pare-choc
- le bouton poussoir de démarrage

En entrée analogique il y a :
- le capteur de distance IR SHARP GP2Y0A02YK

En sortie il y a :
- 4 bornes pour le circuit L298 (sens des moteurs)
- la commande de l’angle de rotation du servomoteur

Vue de dessus

alimentation

Les moteurs, servomoteurs et capteurs sont alimentés avec 4 piles AA.
Ce qui fait soit 6V si on met des piles, soit 4,8V si on met des batteries rechargeables.

L’arduino est alimenté séparément avec une pile de 9V, car 6V c’est un peu juste pour le régulateur 5V de l’arduino et 4,8V est très insuffisant.
Un interrupteur double, fixé à l’arrière permet de couper simultanément les deux alimentations.

Répondre à cet article

SPIP | squelette | | Plan du site | Suivre la vie du site RSS 2.0