Petit bot 2.0 avec un esp32

Auteur avatarNadialb | Dernière modification 15/06/2026 par Nadialb

Petit bot 2.0 avec un esp32 IMG 9877.JPG

Introduction

==== Construction d'un petit robot à deux roues motrices piloté depuis un smartphone via le WiFi, sans aucune application à installer. Une carte ESP32 crée son propre réseau et héberge une page de contrôle avec un joystick tactile. ====

Étape 1 - Préparation du materiel

4 cables dupont M-M

4 cables dupont M-F

Étape 2 - Câblage des deux servomoteurs

Chaque servomoteur possède 3 fils qu'il faut relier à la carte ESP32 :

  • Fil orange = signal (l'ordre de mouvement envoyé par l'ESP32)
  • Fil rouge = alimentation (+)
  • Fil marron (ou noir) = masse (-)

Branchements :

  • Servo gauche : fil orange sur la broche GPIO 18
  • Servo droit : fil orange sur la broche GPIO 19
  • Les deux fils rouges sur la broche 3V3 (ou sur le 5V / batterie externe pour plus de puissance)
  • Les deux fils marrons sur une broche GND

Consigne clé de l'animateur : La masse (GND) doit être commune entre l'ESP32 et l'alimentation des servos. Sans masse commune, les moteurs ont un comportement erratique.

Étape 3 - Installation du programme (flashage)

Une carte neuve est « vide ». On lui installe une seule fois son programme, comme on installe le système d'un téléphone.

  • Débrancher les servomoteurs de l'ESP32 avant de flasher : ils peuvent créer des interférences et faire échouer l'opération. On ne garde que le câble USB.
  • Ouvrir la page de flashage dans Chrome ou Edge (l'outil ESP Web Tools).
  • Brancher l'ESP32 à l'ordinateur, cliquer sur « FLASHER LE ROBOT ».
  • Sélectionner le port qui apparaît.

Consigne clé de l'animateur : Si le flashage ne démarre pas, maintenir le bouton BOOT de la carte enfoncé pendant le lancement de la connexion, puis le relâcher quand l'effacement (« Erasing ») commence. L'opération dure 1 à 2 minutes : ne pas débrancher la carte pendant ce temps.

Étape 4 - Montage sur le châssis

Fixer les deux servos de chaque côté du châssis (adhésif double-face ou colle chaude), emboîter une roue sur chaque palonnier. Ajouter une roue folle (ou un simple patin qui glisse) à l'avant ou à l'arrière pour l'équilibre. Loger la carte ESP32 et la batterie sur le châssis.

Consigne clé de l'animateur : Vérifier que les roues tournent librement et ne frottent pas contre le châssis. Les deux servos sont montés en miroir : c'est normal qu'ils semblent « à l'envers » l'un par rapport à l'autre.

Étape 5 - Connexion WiFi et pilotage

Alimenter le robot. Au démarrage, les moteurs restent silencieux et immobiles (c'est voulu).

  • Sur le smartphone : ouvrir les réglages WiFi et se connecter au réseau « ESP32-Robot ».
  • Mot de passe : robot123
  • Ouvrir le navigateur à l'adresse : http://192.168.4.1/
  • La page de contrôle s'affiche avec un joystick virtuel (repères AVANT / ARRIÈRE / GAUCHE / DROITE). Glisser le rond pour déplacer le robot, relâcher pour l'arrêter (le joystick revient au centre tout seul).

Consigne clé de l'animateur : Aucun routeur ni connexion Internet n'est nécessaire : c'est l'ESP32 lui-même qui fabrique le réseau WiFi.

Comment ça marche ?

Observations : que voit-on ?

Au repos, le robot est immobile et silencieux. Quand on glisse le doigt sur le joystick de la page web, les roues se mettent à tourner dans le sens correspondant et le robot se déplace presque instantanément. Dès qu'on relâche, il s'arrête.

Mise en garde : qu'est-ce qui pourrait faire rater l'expérience ?

  • La masse non commune : si le GND des servos n'est pas relié au GND de l'ESP32, les moteurs ont un comportement aléatoire.
  • L'alimentation trop faible : alimentés par la broche 3V3, les servos manquent de puissance ; en mouvement ils peuvent priver la carte de courant et faire disparaître le WiFi. Une alimentation externe règle le problème.
  • Les servos branchés pendant le flashage : interférences, échec du téléversement. Toujours les débrancher pour flasher.
  • Le cache du navigateur : si la page de contrôle semble « ancienne » ou buguée, la recharger en navigation privée.
  • Un servo qui tourne seul à l'arrêt : c'est le réglage neutre du SG90 360°.

Explications

Pour bouger, le robot a besoin de trois ingrédients : de la mécanique (les roues et les servos), de l'électronique (la carte et l'alimentation) et de la programmation (le code installé sur l'ESP32). La carte envoie à chaque servomoteur un signal électrique sur son fil orange. Ce signal est une suite d'impulsions très régulières (modulation de largeur d'impulsion, ou PWM) : c'est la durée de chaque impulsion qui dit au servo dans quel sens et à quelle vitesse tourner. En commandant indépendamment la roue gauche et la roue droite, on obtient toutes les directions : les deux en avant = tout droit ; une plus vite que l'autre = virage ; sens opposés = rotation sur place. C'est le principe de la conduite différentielle (le même que sur un char ou une pelleteuse).

Plus d'explications

L'ESP32 fait deux métiers en même temps. D'une part il crée un point d'accès WiFi (un réseau « ESP32-Robot » avec une adresse fixe, 192.168.4.1) et joue le rôle de petit serveur web : quand le téléphone demande la page, l'ESP32 lui envoie le code HTML et JavaScript de la manette. D'autre part, quand on bouge le joystick, le navigateur renvoie discrètement les coordonnées (x, y) à l'ESP32, qui les traduit en commandes pour les deux servos. Les servos SG90 « 360° » sont des servos à rotation continue : la valeur envoyée ne fixe pas une position mais une vitesse de rotation. Le point neutre (arrêt) n'est jamais exactement identique d'un servo à l'autre, d'où le réglage par un petit potentiomètre interne, ou la coupure du signal à l'arrêt (ce que fait le programme pour rester silencieux).

Applications : dans la vie de tous les jours

La conduite différentielle se retrouve dans les robots aspirateurs, les engins de chantier à chenilles et de nombreux robots mobiles. Le principe d'un objet qui crée son propre WiFi et s'auto-pilote depuis un navigateur est celui des objets connectés (domotique, imprimantes, box de configuration d'appareils).

Éléments pédagogiques

Objectifs pédagogiques

  • Câbler un circuit électronique en respectant la polarité et la masse commune.
  • Comprendre le rôle des trois fils d'un servomoteur (signal, +, -).
  • Découvrir qu'un objet peut être programmé puis piloté à distance.
  • Aborder la notion de réseau WiFi, d'adresse et de page web embarquée.
  • Comprendre la conduite différentielle (gauche/droite → direction).
  • Adopter une démarche de diagnostic de panne.

Pistes pour animer l'expérience

  • Décorer et personnaliser le robot (yeux mobiles, carrosserie carton, thème libre) pour se l'approprier.
  • Faire varier le code : changer le nom du réseau WiFi, le mot de passe, ou la vitesse des moteurs.
  • Organiser un parcours d'obstacles ou une petite course entre robots.
  • Faire formuler des hypothèses : « pourquoi le robot ne va pas droit ? », puis tester les réglages.
  • Ouvrir sur la question des objets connectés et de leurs usages.


Dernière modification 15/06/2026 par user:Nadialb.

Commentaires

Draft