Ce robot suiveur de ligne est vendu en kit, à assembler et à câbler soi-même : une base roulante à deux roues motrices et roulette avant, deux modules capteurs optiques infrarouges TCRT5000, une carte Arduino Uno R3 avec son câble USB, un module de commande de moteurs L298N, une plaque d’essai, un support de piles, la visserie du châssis et les fils de liaison. Rien n’est monté et rien n’est câblé à la réception : le lot arrive en pièces, comme sur la photo.
L’objectif est simple à énoncer et forme un vrai projet : le robot suit une bande sombre collée sur un sol clair. Les deux capteurs placés sous l’avant lisent la surface en continu, la carte compare leurs deux états et corrige la trajectoire en ralentissant une roue plutôt que l’autre. C’est le projet d’initiation le plus complet de la robotique d’amateurs — capteurs, électronique de puissance, moteurs et programme y sont réunis — et il ne demande aucune soudure sur les modules. Aucune notice ni vidéo n’accompagne le lot : cette fiche en tient lieu.
Ce que contient le lot
| La base roulante | Châssis à deux roues motrices et une roulette avant, avec ses supports de moteurs et sa visserie. C’est le châssis deux roues de la boutique, également vendu seul. |
|---|---|
| Les deux moteurs | Deux motoréducteurs à courant continu à boîtier plastique, un par côté, avec leurs roues à jante jaune et leur pneu caoutchouc cranté. |
| La carte de commande | Une carte Arduino Uno R3 et son câble USB : c’est elle qui lit les capteurs et qui pilote les moteurs. |
| L’étage de puissance | Un module L298N — deux ponts en H sur un même circuit, avec son dissipateur : un seul module suffit pour les deux moteurs du châssis. |
| Les capteurs de ligne | Deux modules capteurs optiques infrarouges TCRT5000, avec leur comparateur et leur potentiomètre de réglage. Ils se vissent sous l’avant du châssis, à quelques millimètres du sol. |
| La plaque d’essai | Une plaque d’essai de 170 points, pour préparer et vérifier le câblage sans souder avant de le reporter sur le châssis. |
| Le support de piles | Un support de 4 piles AA, à logements, avec ses deux fils d’alimentation. Il est vide à la réception : les piles ne sont pas fournies. |
| Les fils de liaison | Dix fils Dupont mâle-mâle et dix fils mâle-femelle, pour relier la carte, le module de puissance et les capteurs. |
| La documentation | Aucune. Ni notice de montage, ni vidéo. Les sections qui suivent décrivent l’assemblage, le câblage et le programme. |
Caractéristiques techniques
| Type de produit | Kit de robot mobile à assembler — suiveur de ligne à deux capteurs |
|---|---|
| Base roulante | Deux roues motrices entraînées par des motoréducteurs, une roulette libre à l’avant. Aucune direction mécanique : le cap se change en faisant tourner les deux roues à des vitesses différentes |
| Capteurs de ligne | Deux modules à capteur à réflexion TCRT5000 : une LED infrarouge de 950 nm et un phototransistor placés côte à côte, plus un comparateur LM393 et un potentiomètre multitours de réglage du seuil |
| Sorties des capteurs | Une sortie numérique qui bascule selon le seuil réglé, et une sortie analogique proportionnelle à la lumière réfléchie, sur les deux modules fournis |
| Distance de travail des capteurs | Quelques millimètres, jusqu’à environ 15 mm selon la surface : le contraste est le meilleur entre 5 et 10 mm |
| Alimentation des capteurs | 3,3 V à 5 V continu, prélevés sur la carte |
| Carte de commande | Arduino Uno R3, ATmega328P, 14 entrées-sorties numériques dont 6 sorties de modulation de largeur d’impulsion, 6 entrées analogiques, alimentation et programmation par USB |
| Commande des moteurs | Module L298N : deux ponts en H indépendants, 2 A par pont, diodes de roue libre en place, dissipateur. Entrée moteur acceptée de 5 V à 35 V malgré la sérigraphie 12V du bornier |
| Alimentation du robot | Un support de 4 piles AA pour les moteurs, soit environ 6 V en piles alcalines. La carte est alimentée de son côté, par USB ou par sa propre source, et les deux masses doivent être reliées |
| Piles | Non fournies |
| Programmation | IDE Arduino, langage C, aucune bibliothèque à installer |
| Montage | Assemblage vissé et connexions à broches, sans soudure sur les modules. Les deux fils de chaque moteur sont soit déjà fixés sur leurs plots, soit à souder, selon le lot : à vérifier à la réception |
| Documentation | Aucune dans le lot |
Comment le robot voit la ligne
Le module n’analyse pas une image : il éclaire. Sa diode infrarouge émet en permanence vers le sol et son phototransistor mesure la quantité de lumière renvoyée. Une surface claire renvoie beaucoup, une surface sombre absorbe presque tout. Le comparateur du module compare cette quantité à un seuil réglé par le potentiomètre et bascule sa sortie numérique : c’est ce basculement, un niveau haut ou bas, que la carte lit.
Trois conséquences pratiques découlent de ce principe, et elles expliquent la plupart des échecs de mise au point :
- Le capteur mesure une réflexion, pas une couleur. Un ruban noir brillant peut renvoyer davantage de lumière infrarouge qu’un carton blanc mat. C’est ce que renvoie réellement la surface, à la distance de montage, qui compte — et c’est pour cela que le seuil se règle sur place, jamais à l’atelier.
- La hauteur de montage décide de tout. À cinq millimètres la marge entre le noir et le clair est large ; à deux centimètres elle devient mince et la détection saute. Les deux capteurs doivent en plus être à la même hauteur et parallèles à la platine, sinon l’un d’eux déclenche avant l’autre.
- La lumière ambiante s’ajoute au signal. Un éclairage direct, et surtout un soleil rasant sur la piste, injecte de l’infrarouge dans la mesure. Une piste montée à l’ombre ou sous une lumière diffuse se suit beaucoup mieux.
Assembler le kit dans le bon ordre
L’ordre compte : chaque étape se vérifie avant que la suivante ne la rende difficile à atteindre.
| 1. La mécanique | Monter les deux supports de moteurs sur la platine, puis les moteurs, puis les roues. Enfoncer chaque roue bien droite sur l’axe à méplat : une roue posée de biais contraint les engrenages plastiques du réducteur, qui cassent en premier. |
|---|---|
| 2. La roulette avant | La fixer sous l’avant, en réglant sa hauteur avec ses entretoises : posé sur une table, le châssis doit reposer sur ses trois appuis sans que la roulette porte seule le poids, ni qu’elle reste en l’air. |
| 3. Le support de piles | Le visser sur la platine et laisser ses deux fils accessibles. Piles retirées à ce stade. |
| 4. Les capteurs | Les visser sous l’avant de la platine, tête vers le sol, à environ cinq millimètres, écartés d’un peu plus que la largeur de la bande à suivre. |
| 5. La carte et le module | Visser la carte et le module de puissance en les gardant à l’écart des roues, pour qu’aucun fil ne soit happé en roulant. Repérer le moteur de gauche et celui de droite avant de les câbler. |
| 6. Le câblage | Préparer les liaisons sur la plaque d’essai, les vérifier, puis les reporter sur le châssis. Reprendre ensuite chaque vis de la visserie : une vis desserrée suffit à faire dériver la trajectoire. |
Mini-projet : le suiveur de ligne, de bout en bout
Objectif : le robot suit une bande adhésive noire d’environ vingt millimètres collée sur un sol clair. Tant que la ligne est entre les deux capteurs, les deux roues tournent à la même vitesse et le robot avance droit. Dès qu’un capteur la voit, la roue de ce côté ralentit : le robot se remet dans l’axe sans jamais s’arrêter. Le programme commence par une phase d’affichage des capteurs, qui sert à régler les potentiomètres.
Ce qu’il faut
- Tout le contenu du kit : base roulante, deux moteurs, carte Arduino Uno R3, module L298N, deux modules TCRT5000, plaque d’essai, fils de liaison.
- Quatre piles AA pour le support fourni, et un câble USB pour alimenter la carte pendant la mise au point.
- Une bande adhésive noire mate d’environ deux centimètres de large, et un sol clair pour la coller.
Le câblage
Module L298N, borne 12V | Le fil rouge du support de piles, soit environ 6 V |
|---|---|
Module L298N, borne GND | Le fil noir du support de piles, et une broche GND de la carte : les deux masses sont communes |
Module L298N, vis 5V | Broche 5V de la carte, cavalier du régulateur retiré — l’alimentation des moteurs étant inférieure à 7 V, le régulateur du module ne peut pas fabriquer le 5 V de sa propre logique |
Module ENA | Broche D9, cavalier retiré : sortie de modulation pour la vitesse du moteur gauche |
Module IN1 et IN2 | Broches D8 et D7 : sens de rotation du moteur gauche |
Module ENB | Broche D6, cavalier retiré : vitesse du moteur droit |
Module IN3 et IN4 | Broches D5 et D4 : sens de rotation du moteur droit |
Module OUT1 et OUT2 | Les deux fils du moteur gauche |
Module OUT3 et OUT4 | Les deux fils du moteur droit |
| Capteur gauche | Sortie numérique D0 sur la broche D2 de la carte, alimentation sur 5V et GND |
| Capteur droit | Sortie numérique D0 sur la broche D3 de la carte, alimentation sur 5V et GND |
Un moteur qui tourne à l’envers alors que le programme demande l’avance s’inverse en permutant ses deux fils sur sa borne de sortie : aucun sens n’est imposé à un moteur à courant continu, et c’est la seule reprise à faire, moteur par moteur, roues levées.
Le programme
À téléverser par USB depuis l’IDE Arduino. Au démarrage, le robot affiche l’état de ses deux capteurs pendant environ cinq secondes dans le moniteur série : c’est le moment de le poser au-dessus de la piste, de passer du sol clair à la bande noire et de tourner chaque potentiomètre jusqu’à voir le niveau basculer.
/*
* Robot suiveur de ligne : programme du kit complet
* Carte : Arduino Uno R3 - Module de puissance : L298N
* Capteurs : deux modules TCRT5000, sortie numerique
*
* Cablage : capteur gauche D2, capteur droit D3
* ENA D9, IN1 D8, IN2 D7 pour le moteur gauche
* ENB D6, IN3 D5, IN4 D4 pour le moteur droit
* les deux capteurs sont alimentes en 5V et GND
*
* Composants, brochage et fiche complete : www.marocproduits.com
*/
const byte CAPTEUR_G = 2;
const byte CAPTEUR_D = 3;
const byte ENA = 9;
const byte IN1 = 8;
const byte IN2 = 7;
const byte ENB = 6;
const byte IN3 = 5;
const byte IN4 = 4;
const int VITESSE = 140; // vitesse de croisiere, de 0 a 255
const int ECART = 60; // ecart applique a la roue du cote ou la ligne est vue
const int PLANCHER = 60; // en dessous, le moteur ne demarre plus
// Le module fourni rend un niveau bas sous la bande noire, qui reflechit peu.
// A confirmer au moniteur serie : selon le reglage du potentiometre certains
// modules basculent dans l autre sens.
const byte NOIR = LOW;
// Les deux roues avancent, chacune a sa vitesse. La fonction constrain
// empeche une consigne de descendre sous le seuil de demarrage des moteurs.
void rouler(int vitesseG, int vitesseD) {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENA, constrain(vitesseG, PLANCHER, 255));
analogWrite(ENB, constrain(vitesseD, PLANCHER, 255));
}
void arreter() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
analogWrite(ENA, 0);
analogWrite(ENB, 0);
}
// Affiche l etat des deux capteurs pendant environ cinq secondes : poser le
// robot a plat, passer du sol clair a la bande noire, regler les potentiometres.
void calibrer() {
Serial.println("Calibration : poser le robot au-dessus de la piste et tourner les potentiometres");
for (int i = 0; i != 200; i++) {
Serial.print("capteur gauche ");
Serial.print(digitalRead(CAPTEUR_G));
Serial.print(" capteur droit ");
Serial.println(digitalRead(CAPTEUR_D));
delay(25);
}
Serial.println("Calibration terminee");
}
void setup() {
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(ENA, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(ENB, OUTPUT);
pinMode(CAPTEUR_G, INPUT);
pinMode(CAPTEUR_D, INPUT);
Serial.begin(9600);
arreter();
calibrer();
delay(2000); // le temps de reposer le robot sur la piste
}
void loop() {
bool noirG = (digitalRead(CAPTEUR_G) == NOIR);
bool noirD = (digitalRead(CAPTEUR_D) == NOIR);
if (noirG) {
if (noirD) {
rouler(PLANCHER, PLANCHER); // les deux capteurs sur la ligne : on ralentit
} else {
rouler(VITESSE - ECART, VITESSE + ECART); // la ligne a devie vers la gauche
}
} else if (noirD) {
rouler(VITESSE + ECART, VITESSE - ECART); // la ligne a devie vers la droite
} else {
rouler(VITESSE, VITESSE); // aucun capteur sur la ligne : tout droit
}
}Ce que fait le programme
- Il ne fait jamais varier la vitesse absolue, seulement l’écart entre les deux roues : la correction garde les deux moteurs en marche, donc le robot reste en mouvement, décrit un arc et se replace au lieu de s’arrêter ou de pivoter par à-coups.
- La fonction
constrainimpose un plancher de vitesse. Un moteur à courant continu alimenté sous environ un quart de sa tension ne démarre plus : il reste bloqué en bourdonnant, et le robot s’immobilise au lieu de corriger. - Quand les deux capteurs voient le noir en même temps, la ligne est plus large que l’écartement des capteurs ou il s’agit d’un croisement : le programme ralentit et continue droit, ce qui laisse le temps de traverser l’intersection.
- Quand aucun capteur ne voit la ligne — un sol clair sans bande, un trou dans la piste — le robot repart droit. Le plus souvent il retrouve la ligne en quelques centimètres ; sinon, c’est le réglage du seuil ou l’écartement des capteurs qu’il faut revoir.
La mise au point, dans cet ordre
- Régler les deux potentiomètres. Robot posé au-dessus de la piste, moniteur série ouvert à 9600 bauds, alimenter le montage. Passer chaque capteur du sol clair à la bande noire et tourner son potentiomètre jusqu’à ce que le niveau affiché bascule franchement dans les deux cas. Régler les deux capteurs sur la même surface, l’un après l’autre.
- Vérifier les sens de rotation, roues levées. Si un moteur tourne à l’envers pour un ordre d’avance, permuter ses deux fils sur sa borne de sortie du module. C’est le contrôle à faire avant de poser le robot au sol, jamais après.
- Faire aller les deux roues à la même vitesse. Tracer une ligne droite de deux mètres et lancer le robot : s’il tire d’un côté, baisser la vitesse du côté qui va le plus vite, par pas de cinq, jusqu’à ce que l’écart tienne dans la largeur du châssis sur deux mètres.
- Régler la hauteur et l’écartement des capteurs. Environ cinq millimètres au-dessus du sol, parallèles à la platine. Trop rapprochés, les deux voient la ligne en même temps et le robot zigzague ; trop écartés, il perd la piste à chaque virage. Un peu plus que la largeur de la bande est le bon écartement de départ.
- Baisser la vitesse si le robot quitte la piste. Un suiveur trop rapide dépasse la correction avant que les moteurs n’aient répondu : la vitesse, et l’écart
ECART, sont les deux réglages à réduire en premier.
Variante : suivre en mesurant la lumière réfléchie
Les deux modules fournis exposent aussi une sortie analogique, proportionnelle à la lumière renvoyée. Elle permet une correction continue plutôt que deux états : au lieu de ralentir une roue d’un écart fixe dès que le capteur bascule, on module la vitesse en fonction de l’écart mesuré. Le changement tient à la lecture — analogRead au lieu de digitalRead — et à deux mesures de référence à faire une fois pour toutes sur le sol clair et sur la bande noire. Le suivi y gagne en douceur sur les pistes larges ou floues, au prix d’un réglage plus long.
Deux évolutions naturelles du même robot, sans changer ni le châssis ni le câblage des moteurs :
- Éviter les obstacles — un capteur à ultrasons HC-SR04 fixé à l’avant mesure la distance et suspend la marche quand un obstacle se présente : le robot suit la ligne et s’arrête de lui-même. À moins de préférer partir directement d’un robot dont c’est la fonction : le robot éviteur d’obstacles de la boutique.
- Mesurer la vitesse réelle — un capteur de vitesse infrarouge placé sur une roue percée ou un disque cranté compte les tours. Le programme connaît alors la vitesse réelle de chaque roue, ce qui permet d’asservir le robot à une vitesse plutôt qu’à une consigne de tension, sans dérive quand les piles faiblissent.
Questions fréquentes
Le robot est-il monté et câblé à la réception ?
Non. Le kit arrive en pièces, comme sur la photo : châssis à assembler, moteurs à visser, cartes et capteurs à câbler. Tout se monte à la vis et se relie par broches, sans soudure sur les modules. C’est ce qui en fait un projet et non un jouet prêt à l’emploi.
Faut-il souder quelque chose ?
Rien sur les modules : carte, module de puissance et capteurs se relient avec les fils Dupont fournis. Le seul point à vérifier à la réception est celui des moteurs, dont les deux fils sont soit déjà fixés sur leurs plots, soit livrés séparés et à souder selon le lot. Un fer à souder 40 W suffit largement pour cette reprise.
Les piles sont-elles fournies ?
Non : le lot contient le support de quatre piles AA, vide. Prévoir quatre piles AA — environ 6 V, ce qui convient à ce montage — et réserver l’alimentation USB de la carte pendant la mise au point, avant de passer au fonctionnement autonome.
Le robot peut-il suivre une ligne en plein jour ?
Oui, à condition d’éviter un éclairage direct sur la piste. Le capteur mesure de l’infrarouge, et une lumière forte, surtout un soleil rasant, s’ajoute à son signal et décale le seuil réglé. Une piste à l’ombre, sous une lumière diffuse, se suit sans problème ; en extérieur, refaire la calibration des potentiomètres sur place, aux conditions réelles.
Le robot tourne en rond ou part à l’envers, que vérifier ?
Presque toujours deux causes : les deux moteurs sont reliés à l’envers l’un par rapport à l’autre — donc le robot tourne au lieu d’avancer — ou les deux fils d’un moteur sont inversés sur leur borne. Reprendre le contrôle des sens, roues levées, moteur par moteur. Si le robot avance bien mais quitte la piste à chaque virage, le problème est ailleurs : vitesse trop élevée, capteurs trop hauts ou trop écartés.
Le kit est-il livré avec une notice ou une vidéo de montage ?
Non, et c’est annoncé : aucun document n’accompagne le lot. L’assemblage, le câblage, le programme et la mise au point sont décrits en entier sur cette page, dans l’ordre où il faut les faire.
À combiner avec
- Moteur à courant continu avec roue : le train roulant est la pièce qui souffre en premier sur ce type de châssis. Un moteur d’avance remplace en quelques minutes celui dont les engrenages ont lâché, sans changer le reste du montage.
- Module Bluetooth série HC-05 : branché sur les broches du port série de la carte, il remplace le moniteur série par une application de terminal sur téléphone. Le robot se met alors en marche, se met en pause et se rappelle à la main sans être rattrapé. Débrancher le module avant chaque téléversement.
- Kit robot 4WD IR Bluetooth multi-fonctions : une mécanique à quatre roues motrices, avec sa carte et ses capteurs, pour qui veut un robot à la fois suiveur de ligne et pilotable depuis un téléphone.
- Les autres bases roulantes, capteurs et cartes de cette famille se trouvent dans robot.










Avis
Il n’y a pas encore d’avis.