Construisez votre propre voiture télécommandée avec Arduino et Bluetooth : Le Guide Complet

Estimated read time 8 min read


Introduction :

Les voitures télécommandées ont toujours captivé l’imagination des passionnés de la technologie et des amateurs de bricolage. Ces petits véhicules offrent une fenêtre fascinante sur le monde de la robotique et de l’automatisation. Dans cet article, nous allons explorer la création d’une voiture télécommandée par Bluetooth en utilisant Arduino, un microcontrôleur polyvalent qui ouvre un monde de possibilités pour les créateurs. Vous découvrirez comment connecter les composants, téléverser du code et contrôler votre voiture à distance, tout en acquérant des compétences précieuses en électronique et en programmation. Préparez-vous à plonger dans l’univers passionnant de la conception et de la construction de votre propre véhicule téléguidé.

Matériel requis :

  1. Arduino (par exemple, Arduino Uno)
  2. L298N Dual H-Bridge Motor Driver
  3. Module Bluetooth HC-05
  4. Châssis de voiture avec des moteurs à courant continu et des roues
  5. Alimentation externe (pile ou batterie)
  6. Câbles de raccordement (fils jumper)
  7. Téléphone ou tablette avec une application Bluetooth (par exemple, « Arduino Bluetooth RC Car » sur Android)

Étape 1 : Assemblage du matériel

  1. Connectez l’alimentation externe :
    • Branchez la borne positive (+) de votre alimentation externe (pile ou batterie) sur le bornier « + » du L298N.
    • Connectez la borne négative (-) de votre alimentation externe sur le bornier « – » du L298N.
  2. Branchez les moteurs au L298N :
    • Connectez les fils des moteurs au bornier « OUT1 » et « OUT2 » du L298N pour un moteur, et au bornier « OUT3 » et « OUT4 » pour l’autre moteur.
    • Assurez-vous que les fils des moteurs sont correctement connectés à ces borniers.
  3. Connectez les broches de contrôle des moteurs au L298N :
    • Connectez la broche « ENA » du L298N à une broche PWM de votre Arduino (par exemple, D9).
    • Connectez la broche « ENB » du L298N à une autre broche PWM de votre Arduino (par exemple, D10).
  4. Connectez les broches de commande des moteurs au L298N :
    • Connectez la broche « IN1 » du L298N à une broche numérique de l’Arduino (par exemple, D4).
    • Connectez la broche « IN2 » du L298N à une autre broche numérique de l’Arduino (par exemple, D5).
    • Connectez la broche « IN3 » du L298N à une autre broche numérique de l’Arduino (par exemple, D6).
    • Connectez la broche « IN4 » du L298N à une autre broche numérique de l’Arduino (par exemple, D7).
  5. Connectez la masse (GND) :
    • Connectez la masse (GND) de l’Arduino à la masse (GND) du L298N.
    • Assurez-vous que toutes les masses sont correctement reliées pour éviter des problèmes de référence.
  6. Connectez le module Bluetooth HC-05 :
    • Connectez la broche TX du module Bluetooth HC-05 à la broche RX de l’Arduino (par exemple, D2).
    • Connectez la broche RX du module Bluetooth HC-05 à la broche TX de l’Arduino (par exemple, D3).
  7. Alimentez le module Bluetooth HC-05 :
    • Assurez-vous de bien connecter la tension d’alimentation du module Bluetooth HC-05 (3,3 V) au L298N ou à une autre source d’alimentation 3,3 V.

Étape 2 : Télécharger la bibliothèque Bluetooth

  • Ouvrez l’IDE Arduino sur votre ordinateur.
  • Allez dans « Sketch » -> « Include Library » -> « Manage Libraries ».
  • Recherchez « Bluetooth » et installez la bibliothèque « BluetoothHC05 » de « Junichi Yokoyama ».

Étape 3 : Écrire le code Arduino

Voici un exemple de code pour contrôler la voiture à distance à l’aide du module Bluetooth. Assurez-vous d’adapter ce code à votre propre configuration matérielle :

#include <BluetoothHC05.h>

BluetoothHC05 bluetooth(2, 3); // Définissez les broches RX et TX du module Bluetooth

// Définissez les broches pour le contrôle des moteurs
const int Moteur_A_IN1 = 4;
const int Moteur_A_IN2 = 5;
const int Moteur_A_Enable = 6;
const int Moteur_B_IN1 = 7;
const int Moteur_B_IN2 = 8;
const int Moteur_B_Enable = 9;

// Vitesse des moteurs (ajustez selon vos besoins)
const int Vitesse_Moteur_A = 255; // 0 (arrêt) à 255 (pleine vitesse)
const int Vitesse_Moteur_B = 255; // 0 (arrêt) à 255 (pleine vitesse)

void setup() {
  // Configurez les broches de commande des moteurs en sortie
  pinMode(Moteur_A_IN1, OUTPUT);
  pinMode(Moteur_A_IN2, OUTPUT);
  pinMode(Moteur_A_Enable, OUTPUT);
  pinMode(Moteur_B_IN1, OUTPUT);
  pinMode(Moteur_B_IN2, OUTPUT);
  pinMode(Moteur_B_Enable, OUTPUT);

  // Initialisez la communication Bluetooth
  bluetooth.begin(9600);
}

void loop() {
  if (bluetooth.available()) {
    char command = bluetooth.read();
    stop(); // Arrêtez la voiture par défaut

    // Contrôlez la voiture en fonction de la commande Bluetooth reçue
    if (command == 'F') { // Avancer
      forward();
    } else if (command == 'B') { // Reculer
      backward();
    } else if (command == 'L') { // Tourner à gauche
      left();
    } else if (command == 'R') { // Tourner à droite
      right();
    }
  }
}

// Fonction pour avancer
void forward() {
  // Faites tourner les deux moteurs en marche avant
  digitalWrite(Moteur_A_IN1, HIGH);
  digitalWrite(Moteur_A_IN2, LOW);
  digitalWrite(Moteur_B_IN1, HIGH);
  digitalWrite(Moteur_B_IN2, LOW);

  // Contrôlez la vitesse des moteurs
  analogWrite(Moteur_A_Enable, Vitesse_Moteur_A);
  analogWrite(Moteur_B_Enable, Vitesse_Moteur_B);
}

// Fonction pour reculer
void backward() {
  // Faites tourner les deux moteurs en marche arrière
  digitalWrite(Moteur_A_IN1, LOW);
  digitalWrite(Moteur_A_IN2, HIGH);
  digitalWrite(Moteur_B_IN1, LOW);
  digitalWrite(Moteur_B_IN2, HIGH);

  // Contrôlez la vitesse des moteurs
  analogWrite(Moteur_A_Enable, Vitesse_Moteur_A);
  analogWrite(Moteur_B_Enable, Vitesse_Moteur_B);
}

// Fonction pour tourner à gauche
void left() {
  // Arrêtez le moteur gauche (Moteur A)
  digitalWrite(Moteur_A_IN1, LOW);
  digitalWrite(Moteur_A_IN2, LOW);

  // Faites tourner le moteur droit en marche avant (Moteur B)
  digitalWrite(Moteur_B_IN1, HIGH);
  digitalWrite(Moteur_B_IN2, LOW);

  // Contrôlez la vitesse des moteurs
  analogWrite(Moteur_A_Enable, Vitesse_Moteur_A);
  analogWrite(Moteur_B_Enable, Vitesse_Moteur_B);
}

// Fonction pour tourner à droite
void right() {
  // Arrêtez le moteur droit (Moteur B)
  digitalWrite(Moteur_B_IN1, LOW);
  digitalWrite(Moteur_B_IN2, LOW);

  // Faites tourner le moteur gauche en marche avant (Moteur A)
  digitalWrite(Moteur_A_IN1, HIGH);
  digitalWrite(Moteur_A_IN2, LOW);

  // Contrôlez la vitesse des moteurs
  analogWrite(Moteur_A_Enable, Vitesse_Moteur_A);
  analogWrite(Moteur_B_Enable, Vitesse_Moteur_B);
}

// Fonction pour arrêter la voiture
void stop() {
  // Arrêtez les deux moteurs
  digitalWrite(Moteur_A_IN1, LOW);
  digitalWrite(Moteur_A_IN2, LOW);
  digitalWrite(Moteur_B_IN1, LOW);
  digitalWrite(Moteur_B_IN2, LOW);

  // Arrêtez les moteurs en désactivant les sorties de vitesse
  analogWrite(Moteur_A_Enable, 0);
  analogWrite(Moteur_B_Enable, 0);
}

Assurez-vous d’avoir défini correctement les broches (Moteur_A_IN1, Moteur_A_IN2, Moteur_B_IN1, Moteur_B_IN2, Moteur_A_Enable, Moteur_B_Enable) et la vitesse (Vitesse_Moteur_A, Vitesse_Moteur_B) en fonction de votre configuration matérielle spécifique. Ces fonctions permettront à votre voiture de se déplacer vers l’avant, vers l’arrière, à gauche ou à droite en activant les moteurs appropriés. Vous pouvez adapter ces fonctions en fonction de la logique de votre contrôleur de moteur et de vos broches matérielles.

Une fois que vous avez correctement branché tous les composants selon les étapes ci-dessus, vous pouvez charger le code sur votre Arduino. Voici comment faire :

  1. Assurez-vous que votre Arduino est connecté à votre ordinateur via le câble USB.
  2. Ouvrez l’environnement de développement Arduino (IDE) sur votre ordinateur.
  3. Copiez le code que je vous ai fourni dans l’IDE Arduino.
  4. Sélectionnez le type de carte Arduino que vous utilisez (par exemple, « Arduino Uno ») dans le menu « Outils ».
  5. Sélectionnez le port série auquel est connecté votre Arduino dans le menu « Outils » (sous « Port »).
  6. Cliquez sur le bouton « Téléverser » (icône de flèche vers la droite) dans l’IDE Arduino. Cela transférera le code sur votre Arduino.
  7. Attendez que le processus de téléchargement soit terminé, et vous devriez voir le message « Téléversement terminé » dans la fenêtre de l’IDE.
  8. Déconnectez l’Arduino de l’ordinateur et assurez-vous qu’il est alimenté par l’alimentation externe que vous avez connectée précédemment.
  9. Connectez le module Bluetooth HC-05 à votre Arduino en veillant à bien respecter les connexions TX et RX.
  10. Allumez votre application Bluetooth sur votre téléphone ou tablette et associez-le au module Bluetooth HC-05.
  11. Lancez l’application Bluetooth de contrôle de la voiture, et vous devriez être en mesure de contrôler votre voiture à l’aide de votre appareil mobile.

Cela devrait vous permettre de contrôler votre voiture télécommandée à l’aide du module Bluetooth HC-05 et de votre Arduino. Vous pouvez utiliser l’application Bluetooth pour envoyer des commandes de direction (avant, arrière, gauche, droite) à votre voiture. Assurez-vous que votre alimentation externe est suffisamment puissante pour alimenter les moteurs de la voiture.

Conclusion :

En construisant votre propre voiture télécommandée avec Arduino et un module Bluetooth, vous avez franchi un pas de plus dans le monde de la robotique et de l’automatisation. Ce projet est une excellente introduction à l’électronique et à la programmation, offrant des opportunités d’apprentissage infinies. En plus de l’amusement que vous aurez à piloter votre voiture depuis votre téléphone ou votre tablette, vous aurez acquis des compétences pratiques qui peuvent être appliquées dans de nombreux autres projets. Alors que vous continuez à explorer le vaste domaine de la technologie, n’oubliez pas que votre imagination est la seule limite à ce que vous pouvez réaliser avec Arduino et votre créativité. Que votre voiture télécommandée soit le début de nombreuses aventures à venir !

You May Also Like

More From Author