Arduino Nano - Voiture

Ce tutoriel vous explique comment construire une voiture télécommandée par IR en utilisant un Arduino Nano et une télécommande IR.

Voiture télécommandée IR

Préparation du matériel

1×Arduino Nano
1×USB A to Mini-B USB cable
1×RC Car
1×L298N Motor Driver Module
1×IR Remote Controller Kit
1×CR2025 Battery (for IR Remote controller)
1×1.5V AA Battery (for Arduino Nano and Car)
1×Jumper Wires
1×(Recommended) Screw Terminal Adapter for Arduino Nano

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos de la voiture robotique

Dans le monde de l'Arduino Nano, la voiture robot est communément appelée voiture RC, voiture télécommandée, voiture intelligente, ou voiture DIY. Cette création astucieuse peut être contrôlée à distance en utilisant soit une télécommande IR, soit une application smartphone via Bluetooth/WiFi. Elle peut effectuer des virages serrés à gauche ou à droite et avancer ou reculer facilement.

Un véhicule 2WD (Deux Roues Motrices) pour Arduino Nano est une petite voiture robot que vous pouvez assembler et faire fonctionner à l'aide d'une carte Arduino Nano. Il se compose généralement des parties essentielles suivantes :

  • Châssis : C'est comme le corps de la voiture, où vous attachez tous les autres composants.
  • Roues : Ce sont les deux roues qui font avancer la voiture. Elles sont connectées à deux moteurs CC.
  • Moteurs : Deux moteurs à courant continu sont utilisés pour entraîner les deux roues.
  • Contrôleur de moteur : La carte contrôleur de moteur est un composant crucial qui connecte l'Arduino Nano aux moteurs. Elle reçoit les signaux de l'Arduino Nano et fournit puissance et contrôle aux moteurs.
  • Carte Arduino Nano : C'est 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 fournir de l'énergie aux moteurs et à la carte Arduino Nano.
  • Récepteur sans fil : Il s'agit d'un module infrarouge, Bluetooth ou WiFi qui permet la communication sans fil avec une télécommande ou un smartphone.
  • Composants optionnels : Selon le niveau de complexité souhaité pour votre projet, vous pouvez ajouter diverses pièces optionnelles comme des capteurs (par exemple, des capteurs ultrasoniques pour éviter les obstacles ou des capteurs de suivi de ligne), et plus encore.

Dans ce tutoriel, pour simplifier, nous utiliserons :

  • Kit de voiture 2 roues motrices (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 marche

Voiture Arduino Nano 2WD, comment ça fonctionne
  • Arduino Nano se connecte aux moteurs à courant continu de la voiture robot via le module de commande de moteur L298N.
  • Arduino Nano se connecte à un récepteur IR.
  • La batterie alimente Arduino Nano, 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 reçoit les commandes HAUT/BAS/GAUCHE/DROITE/OK par le biais du récepteur IR.
  • Arduino Nano contrôle la voiture pour avancer/reculer/aller à gauche/à droite/s'arrêter en contrôlant le moteur à courant continu via le pilote de moteur.

Diagramme de câblage

Schéma de câblage de voiture Arduino Nano 2WD

This image is created using Fritzing. Click to enlarge image

Habituellement, nous avons besoin de deux sources d'énergie :

  • Un pour le moteur (indirectement via le module L298N).
  • Un autre pour la carte Arduino Nano, le module L298N et le récepteur IR.

Cependant, il existe une façon de simplifier cela et d'utiliser une seule source d'énergie pour tout. Vous pouvez y parvenir en utilisant quatre piles de 1,5V (pour un total de 6V). Voici comment :

  • Connectez les batteries au module L298N en suivant le schéma ci-dessus.
  • Retirez les trois cavaliers sur le module L298N.

Code Arduino Nano

/* * Ce code Arduino Nano a été développé par newbiely.fr * Ce code Arduino Nano est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/arduino-nano/arduino-nano-car */ #include <DIYables_IRcontroller.h> // DIYables_IRcontroller library #define IR_RECEIVER_PIN 13 // The Arduino Nano pin connected to IR receiver #define ENA_PIN 7 // The Arduino Nano pin connected to the ENA pin L298N #define IN1_PIN 6 // The Arduino Nano pin connected to the IN1 pin L298N #define IN2_PIN 5 // The Arduino Nano pin connected to the IN2 pin L298N #define IN3_PIN 4 // The Arduino Nano pin connected to the IN3 pin L298N #define IN4_PIN 3 // The Arduino Nano pin connected to the IN4 pin L298N #define ENB_PIN 2 // The Arduino Nano pin connected to the ENB pin L298N DIYables_IRcontroller_17 irController(IR_RECEIVER_PIN, 200); // debounce time is 200ms void setup() { Serial.begin(9600); irController.begin(); pinMode(ENA_PIN, OUTPUT); pinMode(IN1_PIN, OUTPUT); pinMode(IN2_PIN, OUTPUT); pinMode(IN3_PIN, OUTPUT); pinMode(IN4_PIN, OUTPUT); pinMode(ENB_PIN, OUTPUT); digitalWrite(ENA_PIN, HIGH); // set full speed digitalWrite(ENB_PIN, HIGH); // set full speed } void loop() { Key17 key = irController.getKey(); if (key != Key17::NONE) { switch (key) { case Key17::KEY_UP: Serial.println("MOVING FORWARD"); CAR_moveForward(); break; case Key17::KEY_DOWN: Serial.println("MOVING BACKWARD"); CAR_moveBackward(); break; case Key17::KEY_LEFT: Serial.println("TURNING LEFT"); CAR_turnLeft(); break; case Key17::KEY_RIGHT: Serial.println("TURNING RIGHT"); CAR_turnRight(); break; case Key17::KEY_OK: Serial.println("STOP"); CAR_stop(); break; default: Serial.println("WARNING: unused key:"); break; } } } void CAR_moveForward() { digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, LOW); digitalWrite(IN3_PIN, HIGH); digitalWrite(IN4_PIN, LOW); } void CAR_moveBackward() { digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, HIGH); digitalWrite(IN3_PIN, LOW); digitalWrite(IN4_PIN, HIGH); } void CAR_turnLeft() { digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, LOW); digitalWrite(IN3_PIN, LOW); digitalWrite(IN4_PIN, LOW); } void CAR_turnRight() { digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, LOW); digitalWrite(IN3_PIN, HIGH); digitalWrite(IN4_PIN, LOW); } void CAR_stop() { digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, LOW); digitalWrite(IN3_PIN, LOW); digitalWrite(IN4_PIN, LOW); }

Étapes rapides

  • 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 de la broche Vin sur l'Arduino Nano car nous alimenterons l'Arduino Nano via le câble USB lors du téléchargement du code.
  • Retournez la voiture à l'envers de sorte que les roues soient en haut.
  • Connectez l'Arduino Nano à votre ordinateur à l'aide du câble USB.
  • Copiez le code fourni et ouvrez-le dans l'Arduino IDE.
  • Cliquez sur le bouton Upload dans l'Arduino IDE pour transférer le code à l'Arduino Nano.
  • 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 l'Arduino IDE.
COM6
Send
MOVING FORWARD MOVING BACKWARD TURNING LEFT TURNING RIGHT STOP
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Si tout fonctionne correctement, débranchez le câble USB de l'Arduino Nano, et reconnectez le fil à la broche Vin pour alimenter l'Arduino Nano 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 :

Vous pouvez étendre ce projet en :

  • Ajout de capteurs d'évitement d'obstacles pour arrêter immédiatement la voiture si un obstacle est détecté.
  • Ajout d'une fonction pour contrôler la vitesse de la voiture (voir le tutoriel Arduino Nano - Moteur CC). Le code fourni contrôle la voiture à pleine vitesse.

Vidéo

Tutoriels connexes

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!