Arduino Nano ESP32 - Voiture
L'une des choses les plus cool à essayer lorsque vous commencez avec l'Arduino Nano ESP32 est de fabriquer une voiture robot. Dans ce guide, nous apprendrons à utiliser l'Arduino Nano ESP32 pour construire une voiture robot et la contrôler avec une télécommande IR. Pour contrôler la voiture robot via le Web (Wifi), consultez le tutoriel Arduino Nano ESP32 contrôle la voiture via le Web.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos de la voiture robot
Dans le contexte de l'Arduino Nano ESP32, la voiture robot est souvent appelée de différentes manières, telles que voiture robot, voiture RC, voiture télécommandée, voiture intelligente ou voiture DIY. Elle peut être contrôlée à distance sans aucun fil. Vous pouvez utiliser soit une télécommande spéciale qui utilise une lumière infrarouge, soit une application pour smartphone via Bluetooth ou WiFi. La voiture robot peut aller à gauche ou à droite et également avancer ou reculer.
Une voiture 2WD (Deux Roues Motrices) pour Arduino Nano ESP32 est un petit véhicule robotique que vous pouvez construire et contrôler à l'aide d'une carte Arduino Nano ESP32. Elle se compose généralement des composants suivants :
- Châssis : La base ou le cadre de la voiture, où tous les autres composants sont montés.
- Roues : Les deux roues qui assurent la locomotion de la voiture. Elles sont attachées à deux moteurs à courant continu.
- Moteurs : Deux moteurs à courant continu sont utilisés pour entraîner les deux roues.
- Contrôleur de moteur : Le contrôleur de moteur est un composant essentiel qui fait l'interface entre l'Arduino Nano ESP32 et les moteurs. Il reçoit les signaux de l'Arduino Nano ESP32 et fournit la puissance et le contrôle nécessaires aux moteurs.
- Carte Arduino Nano ESP32 : Le cerveau de la voiture. Elle lit les entrées des capteurs et les commandes de l'utilisateur et contrôle les moteurs en conséquence.
- Source d'alimentation : La voiture 2WD nécessite une source d'alimentation, généralement des batteries et un porte-batterie, pour alimenter les moteurs et la carte Arduino Nano ESP32.
- Récepteur sans fil : un module infrarouge, Bluetooth ou WiFi pour la communication sans fil avec une télécommande ou un smartphone.
- Composants optionnels : Selon la complexité de votre projet, vous pouvez ajouter divers composants optionnels comme des capteurs (par exemple, des capteurs ultrasoniques pour l'évitement d'obstacles, des capteurs de suivi de ligne), et plus encore.
Dans ce tutoriel, pour simplifier, nous utiliserons :
- Kit de voiture 2WD (incluant châssis, roues, moteurs, porte-piles)
- Pilote de moteur L298N
- Kit infrarouge IR (incluant télécommande IR et récepteur IR)
Consultez la liste du matériel en haut de cette page.
Comment ça fonctionne
- Arduino Nano ESP32 se connecte aux moteurs à courant continu de la voiture robot via le module pilote de moteur L298N.
- Arduino Nano ESP32 se connecte à un récepteur IR.
- La batterie alimente l'ESP32, les moteurs à courant continu, le pilote de moteur et le récepteur IR.
- Les utilisateurs appuient sur les touches HAUT/BAS/GAUCHE/DROITE/OK de la télécommande IR.
- Arduino Nano ESP32 reçoit les commandes HAUT/BAS/GAUCHE/DROITE/OK via le récepteur IR.
- Arduino Nano ESP32 contrôle la voiture pour se déplacer en AVANT/ARRIÈRE/GAUCHE/DROITE/STOP en contrôlant le moteur à courant continu via le pilote de moteur.
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Il nécessite généralement deux sources d'énergie :
- Un pour le moteur (indirectement via le module L298N).
- Un autre pour la carte Arduino Nano ESP32, le module L298N et le récepteur IR.
Cependant, il existe une méthode pour simplifier cela en utilisant une seule source d'alimentation pour tout. Vous pouvez y parvenir en utilisant quatre piles de 1.5V (totalisant 6V). Voici comment vous pouvez le faire :
- Connectez les batteries au module L298N comme indiqué sur le schéma.
- Retirez les deux cavaliers qui relient les broches ENA et ENB aux 5 volts sur le module L298N.
- Placez un cavalier étiqueté 5VEN, qui est marqué d'un cercle jaune sur le schéma.
- Connectez la broche 12V sur la borne à vis du module L298N à la broche Vin sur la carte Arduino Nano ESP32. Cela alimente directement l'Arduino Nano ESP32 depuis les batteries (6V).
Code Arduino Nano ESP32
Étapes rapides
- Si c'est la première fois que vous utilisez Arduino Nano ESP32, consultez comment configurer l'environnement pour Arduino Nano ESP32 sur Arduino IDE.
- Installez la bibliothèque DIYables_IRcontroller sur Arduino IDE en suivant cette instruction
- Réalisez le câblage comme le montre le schéma ci-dessus.
- Déconnectez le fil du Vin sur le ESP32 car nous alimenterons Arduino Nano ESP32 via un câble USB lors du téléchargement du code.
- Retournez la voiture à l'envers pour que les roues soient en haut.
- Connectez la carte Arduino Nano ESP32 à votre PC via un câble USB
- Ouvrez Arduino IDE sur votre PC.
- Sélectionnez la bonne carte Arduino Nano ESP32 (par exemple Arduino Nano ESP32) et le port COM.
- Copiez le code fourni et ouvrez-le dans Arduino IDE.
- Cliquez sur le bouton Televerser dans Arduino IDE pour transférer le code à Arduino Nano ESP32.
- Utilisez la télécommande IR pour faire avancer, reculer, tourner à gauche, à droite ou arrêter la voiture.
- Vérifiez si les roues se déplacent correctement selon vos commandes.
- Si les roues se déplacent dans le mauvais sens, inversez les fils du moteur à courant continu sur le module L298N.
- Vous pouvez également voir les résultats sur le moniteur série dans Arduino IDE.
- Si tout se passe bien, débranchez le câble USB de l'ESP32, puis rebranchez le fil sur la broche Vin 5V. Cela alimentera l'Arduino Nano ESP32 depuis la batterie.
- Remettez la voiture dans sa position normale avec les roues sur le sol.
- Amusez-vous à contrôler la voiture !
Explication du code
Vous pouvez trouver l'explication dans la ligne de commentaires du code Arduino ci-dessus.
Vous pouvez en apprendre davantage sur le code en consultant les tutoriels suivants :
- Arduino Nano ESP32 - DC motor tutorial
Vous pouvez étendre ce projet en :
- Ajout de capteurs d'évitement d'obstacles pour arrêter immédiatement la voiture en cas de détection d'un obstacle.
- Ajout d'une fonction pour contrôler la vitesse de la voiture (voir le tutoriel Arduino Nano ESP32 - Moteur CC). Le code fourni permet de contrôler la voiture à pleine vitesse.