Le moteur à courant continu avec roue est l’entraînement le plus simple d’un petit robot roulant : un moteur à balais, un réducteur à engrenages logé dans un boîtier jaune, et une roue à pneu caoutchouc qui vient s’emmancher sur l’axe de sortie. C’est la pièce qui fait avancer les voitures suiveuses de ligne, les robots éviteurs d’obstacles et les maquettes télécommandées.
Deux fils suffisent à le faire tourner. Le réducteur transforme la rotation rapide du moteur en une rotation lente et coupleuse, celle qu’il faut à une roue pour démarrer sans patiner. Deux conséquences en découlent, et elles structurent tout le montage : un moteur de ce type consomme bien plus de courant qu’une sortie de microcontrôleur n’en fournit, et c’est le sens du courant qui décide du sens de rotation.
Ce que contient le lot
| Le moteur réducteur | Petit moteur à balais — corps métallique et capuchon arrière noir — monté sur un réducteur à engrenages plastiques en boîtier jaune. L’axe de sortie dépasse d’un seul côté du boîtier. |
|---|---|
| La roue | Jante en plastique jaune et pneu en caoutchouc cranté. Elle est fournie séparée de l’axe : on l’emmanche dessus, et le méplat de l’axe l’entraîne sans la laisser patiner. |
| Les connexions | Deux plots d’alimentation à l’arrière du moteur. Aucun détrompeur : le sens de rotation dépend uniquement de l’ordre des deux fils. |
| Ce qui n’est pas fourni | Ni vis de fixation, ni support : le boîtier se fixe par un support adapté à ce format, et les deux fils d’alimentation sont à souder ou à raccorder sur les plots. |
Caractéristiques techniques
| Type | Moteur à courant continu à balais, avec réducteur à engrenages dans un boîtier plastique jaune — le format le plus répandu de la robotique d’initiation |
|---|---|
| Alimentation | 3 à 6 V continus — c’est la plage de cette famille de moteurs, et la vitesse augmente avec la tension appliquée |
| Connexion | Deux fils, aucune polarité imposée : permuter les deux inverse le sens de rotation |
| Réducteur | Engrenages plastiques en boîtier fermé, sans marquage ; plusieurs rapports de réduction existent dans ce même format de boîtier — voir plus bas comment mesurer le vôtre |
| Axe de sortie | Sort d’un seul côté du boîtier, avec un méplat d’entraînement |
| Roue fournie | Jante plastique jaune et pneu caoutchouc cranté, emmanchée sur l’axe de sortie |
| Capteur intégré | Aucun : ni codeur, ni fin de course, ni retour de position. Le moteur tourne tant qu’il est alimenté, et rien ne dit à la carte à quelle vitesse |
| Commande | Pont en H obligatoire pour inverser le sens et régler la vitesse — la carte fournit le signal, le module fournit le courant |
| Fixation | Par un support de moteur TT, qui reprend la forme du boîtier et rapporte les trous de vissage sur un châssis |
Pourquoi ce moteur ne se branche pas directement sur la carte
Une sortie de microcontrôleur fournit quelques dizaines de milliampères. Un moteur de ce type en appelle plusieurs centaines en service normal, et bien davantage au démarrage ou lorsque la roue est retenue. Brancher le moteur sur une broche revient donc à faire passer le courant du moteur par le silicium de la carte : la sortie ne résiste pas, et la carte redémarre en boucle.
Entre la carte et le moteur, il faut un étage de puissance — un pont en H. Il remplit deux fonctions : inverser le sens du courant dans le moteur, donc le sens de rotation, et hacher la tension d’alimentation pour doser la vitesse. Le shield moteur L293D en est la version la plus directe à monter : deux ponts en H, quatre moteurs à courant continu, des bornes à vis pour les fils, et un format qui se pose directement sur l’Arduino.
Deux précautions accompagnent toujours ce branchement. D’abord, les masses du module et de la carte doivent être reliées, sinon le module ne reçoit aucun ordre exploitable. Ensuite, l’alimentation des moteurs ne doit pas venir du port USB ni de la sortie 5 V de la carte : au démarrage, la tension s’effondre et la carte se réinitialise. Un pack de piles dédié aux moteurs règle le problème.
Montage sur un châssis
Le boîtier du réducteur n’est pas prévu pour être vissé directement : il se glisse dans un support de moteur TT, une équerre en aluminium qui reprend sa forme et rapporte deux trous de fixation sur la platine du robot. Le support se visse ensuite sur le châssis avec des vis M3 de 10 mm et leurs écrous, qui conviennent à un châssis imprimé en 3D comme à une platine percée.
La roue, elle, s’emmanche à fond sur l’axe de sortie : elle doit s’arrêter en butée, bien droite. Une roue enfoncée de biais force sur les engrenages plastiques du réducteur, et c’est la pièce qui casse en premier. Ne pas frapper sur la roue pour la mettre en place : la pousser à la main suffit.
Pour un robot à deux roues motrices, deux moteurs et une roue libre pivotante placée à l’avant ou à l’arrière donnent la base la plus simple qui tienne l’équilibre. Un robot à quatre roues se contente de quatre moteurs, sans roue libre, mais consomme deux fois plus de courant.
Quelle vitesse, et comment la mesurer
Le boîtier jaune ne porte aucun marquage, et c’est une même enveloppe qui sert à plusieurs rapports de réduction. Les catalogues annoncent, selon la variante, de l’ordre de 80 à 200 tours par minute à vide sous 6 V : l’écart va du simple au triple, et rien sur la pièce ne permet de trancher à l’œil. La mesure vaut donc mieux que l’étiquette, et elle prend deux minutes :
| 1. Marquer la roue | Un trait de feutre sur le pneu, du bord extérieur vers la jante : il rend la rotation visible. |
|---|---|
| 2. Alimenter sous la tension d’usage | Le moteur branché sur son pack, sous la tension à laquelle le robot travaillera — 6 V, par exemple. |
| 3. Compter dix secondes | Compter les tours de la roue pendant dix secondes, puis multiplier par six : on obtient des tours par minute. |
| 4. Convertir en vitesse | Multiplier le nombre de tours par minute par la circonférence de la roue, puis diviser par soixante : le résultat est une vitesse en unités de longueur par seconde. |
Deux moteurs du même boîtier ne tournent jamais exactement à la même vitesse, et deux moteurs du même lot non plus. Un robot qui doit aller droit demande donc soit un réglage de vitesse séparé pour chaque côté, soit une mesure de la rotation réelle : un capteur de vitesse à fourche infrarouge placé à cheval sur un disque percé, monté sur l’axe, compte les tours et permet de corriger l’écart.
Mini-projet : faire rouler le moteur, en rampe puis en marche arrière
Objectif : démarrer le moteur progressivement jusqu’à pleine vitesse, s’arrêter, puis repartir en sens inverse. Le montage ne demande aucune soudure si le module et le pack sont à bornes, et le programme tient dans une quinzaine de lignes utiles.
Ce qu’il faut
| Le cerveau | Arduino Uno R3 et son câble USB |
|---|---|
| L’étage de puissance | Module L298N — deux ponts en H, bornes à vis pour les moteurs et alimentation jusqu’à 35 V |
| Le moteur | Le moteur de cette page, avec sa roue emmanchée — ou rien du tout si vous voulez seulement entendre le moteur tourner |
| L’énergie | Support de piles 4xAA 6 V et quatre piles : l’alimentation des moteurs, séparée de celle de la carte |
| Les liaisons | Six fils Dupont pour le côté logique et la masse, deux fils pour le moteur |
Le câblage
Module 12V | Le + du support de piles 6 V |
|---|---|
Module GND | Le 0 V du support de piles et une broche GND de l’Arduino : les deux masses sont communes |
Module 5V | Broche 5V de l’Arduino, cavalier du régulateur retiré : l’alimentation des moteurs étant inférieure à 7 V, la logique du module est alimentée par la carte |
Module ENA | Broche D9 — c’est la sortie PWM qui règle la vitesse |
Module IN1 | Broche D8 |
Module IN2 | Broche D7 |
Module OUT1 et OUT2 | Les deux fils du moteur, visés dans les bornes. Les intervertir inverse le sens de rotation |
Le moteur ne touche jamais la carte : les deux fils vont sur les bornes de sortie du module, et rien d’autre. Les broches IN1 et IN2 décident du sens, la broche ENA de la vitesse.
Le programme
À téléverser dans l’IDE Arduino :
/*
* Moteur DC avec roue et module L298N : rampe d'acceleration, arret, marche arriere
* Carte : Arduino Uno R3
* Cablage : ENA sur D9 (PWM), IN1 sur D8, IN2 sur D7, alimentation moteur 6 V sur 12V
* Le moteur ne recoit jamais d'ordre direct de la carte : le module L298N fait
* l'etage de puissance, la carte ne fournit que le signal.
*
* Composants, brochage et fiche complete : www.marocproduits.com
*/
const byte BROCHE_VITESSE = 9; // ENA, sortie PWM
const byte BROCHE_SENS_A = 8; // IN1
const byte BROCHE_SENS_B = 7; // IN2
void setup() {
pinMode(BROCHE_VITESSE, OUTPUT);
pinMode(BROCHE_SENS_A, OUTPUT);
pinMode(BROCHE_SENS_B, OUTPUT);
Serial.begin(9600);
Serial.println("Moteur DC avec roue : demonstration");
}
/* Regle le sens et la vitesse. sens vaut 1 pour avancer, 0 pour reculer. */
void tourner(int sens, int vitesse) {
if (sens == 1) {
digitalWrite(BROCHE_SENS_A, HIGH);
digitalWrite(BROCHE_SENS_B, LOW);
} else {
digitalWrite(BROCHE_SENS_A, LOW);
digitalWrite(BROCHE_SENS_B, HIGH);
}
analogWrite(BROCHE_VITESSE, vitesse);
}
/* Met la sortie PWM a zero : le module ne delivre plus de courant au moteur. */
void arreter() {
analogWrite(BROCHE_VITESSE, 0);
}
void loop() {
int vitesse = 0;
Serial.println("Avancer en montant la vitesse par paliers");
while (vitesse != 255) {
vitesse = min(vitesse + 5, 255);
tourner(1, vitesse);
delay(40);
}
delay(1500);
Serial.println("Arret");
arreter();
delay(800);
Serial.println("Reculer a vitesse moyenne");
tourner(0, 170);
delay(1500);
Serial.println("Arret final");
arreter();
delay(1000);
}Comment ça marche
- La broche
ENAne fournit pas de courant au moteur : elle fixe le rapport cyclique du pont en H. Une valeur de 255 laisse passer toute la tension, une valeur de 128 la moitié, et le moteur reçoit une tension moyenne d’autant plus faible qu’il tourne lentement. - Les broches
IN1etIN2croisent ou décroisent le courant dans les deux branches du pont. Inverser les deux niveaux inverse le sens de rotation ; c’est le seul mécanisme en jeu, et c’est aussi ce qui se passe lorsqu’on permute les deux fils du moteur. - La rampe du début — cinq unités de PWM toutes les 40 millisecondes — évite l’à-coup de démarrage. Un moteur lancé d’un coup à pleine vitesse fait patiner sa roue et consomme une pointe de courant inutile.
- La mise à zéro de la sortie PWM arrête le moteur sans le freiner : la roue continue sur son élan. Pour un arrêt net, il faudrait un moteur avec frein ou une commande de pont qui court-circuite l’enroulement.
- Le module chute de 1 à 2 V entre son alimentation et le moteur. Un pack de 6 V délivre donc au moteur une tension réelle un peu plus faible, ce qui est sans conséquence ici — mais explique qu’un moteur « 6 V » alimenté par le module tourne un peu moins vite qu’en direct sur le pack.
Les erreurs qui coûtent un moteur
| Brancher le moteur sur une broche de la carte | La sortie ne tient pas le courant du moteur, et la carte redémarre dès la mise sous tension. Toujours passer par un pont en H. |
|---|---|
| Alimenter les moteurs depuis le port USB | C’est l’erreur la plus fréquente : la tension s’effondre au démarrage et la carte redémarre en boucle. Un pack de piles dédié aux moteurs, masse commune avec la carte. |
| Oublier de relier les deux masses | Le module n’interprète aucun des signaux envoyés par la carte : le moteur reste immobile alors que le programme tourne. |
| Retenir la roue sous tension | Roue bloquée, le courant atteint son maximum et le moteur chauffe très vite. Un moteur bloqué longtemps finit par griller son bobinage. |
| Enfoncer la roue de travers, ou frapper dessus | Les engrenages du réducteur sont en plastique : une poussée de biais casse une dent. La roue s’emmanche bien droite et à la main. |
| Dépasser la plage de tension | Au-delà de 6 V, le moteur tourne plus vite, mais chauffe davantage et ses balais s’usent beaucoup plus vite — la durée de vie chute avant que la vitesse ne serve. |
Questions fréquentes
Dans quel sens tourne-t-il ?
Aucun sens ne lui est imposé : un moteur à courant continu s’inverse en permutant ses deux fils, que ce soit au niveau des bornes du moteur ou des broches IN1 et IN2 du module. Il n’y a donc pas d’erreur de branchement possible, seulement un sens à corriger d’un échange de fils.
Faut-il un module par moteur ?
Non. Un module L298N commande deux moteurs à courant continu, un shield L293D en commande quatre : le nombre de moteurs du robot décide du nombre de modules, et deux roues motrices tiennent sur un seul module. Ce qui compte, c’est de réserver à chaque côté du robot deux broches de sens et une broche de vitesse, pour pouvoir corriger le cap.
Peut-on le faire tourner sans microcontrôleur ?
Oui. Un simple inverseur à deux positions alimente le moteur dans un sens ou dans l’autre, et un montage à transistor permet de le commander depuis une sortie de carte. Ce que l’on ne peut pas faire sans pont en H, c’est inverser le sens par la commande elle-même — il faut alors un relais inverseur ou un inverseur mécanique.
Combien de roues motrices pour un robot ?
Deux roues motrices et une roue libre constituent la base la plus économique : le robot tient sur trois points et tourne sur place en faisant tourner ses deux moteurs en sens opposés. Le second moteur se trouve seul dans le catalogue, sans sa roue, ce qui permet de compléter un montage déjà commencé : moteur réducteur DC.
Ce moteur peut-il porter une charge ?
Le réducteur lui donne le couple nécessaire pour démarrer une roue, pas pour tirer un poids. Sur un sol lisse, un petit robot de maquette roulant avance sans difficulté ; sur un tapis épais ou dans une pente marquée, la roue patine et le moteur force. Dans ce cas, on allège le montage et on réduit la vitesse plutôt que d’augmenter la tension.
À combiner avec
Une roue de rechange évite de redémonter le train avant lorsqu’une roue prend du jeu ou perd son pneu, et elle permet de passer un robot de deux à quatre roues motrices. Si vous partez de zéro, une voiture robotique à deux roues fournit la platine, les roues et les moteurs déjà assortis, sur laquelle ce moteur sert ensuite de remplacement ou de second train.










