Un robot voiture à deux roues commandé par un Arduino et un smartphone via un module Bluetooth HC-06 utilise les modules L298D pour la commande des moteurs et App Inventor pour créer l'application de contrôle.
1- Connexion Bluetooth :
a) Allumer le robot.
b) Connecter le smartphone au module HC-06
c) Lancer l'application App Inventor et connecter l'appareil Bluetooth.
2- Contrôle du Robot :
Utiliser les boutons de l'application pour envoyer des commandes.
Les commandes sont reçues par le HC-06, transmises à l’Arduino, qui contrôle les moteurs via le L298D.
Arduino UNO :
Le cerveau du robot.
HC-06 :
Module Bluetooth pour communication sans fil avec le smartphone.
L298D :
Contrôleur de moteur pour piloter les moteurs à courant continu.
Kit robot voitures de 2 roues
Moteurs DC (2 moteurs pour les roues).
Châssis : Structure du robot avec deux roues motrices et une roue folle.
Batterie :
Alimentation pour les moteurs et l'Arduino (par exemple, 6V ou 12V en fonction des moteurs).
Smartphone :
Utilisé pour contrôler le robot via une application créée dans MIT App Inventor.
Câblage et connecteurs :
Des fils électriques et des connecteurs seront nécessaires pour relier les différents composants entre eux et à la carte Arduino UNO.
VCC : Connecté au 5V de l'Arduino.
GND : Connecté au GND de l'Arduino.
TXD : Connecté au D2 de l'Arduino
RXD : Connecté au D3 de l'Arduino.
IN1, IN2 : Connectés à deux broches numériques de l'Arduino (par exemple, D2 et D3) pour le moteur gauche.
IN3, IN4 : Connectés à deux broches numériques de l'Arduino (par exemple, D4 et D5) pour le moteur droit.
ENA, ENB : Connectés à des broches PWM (par exemple, D6 et D9) pour contrôler la vitesse.
OUT1, OUT2 : Connectés aux bornes du moteur gauche.
OUT3, OUT4 : Connectés aux bornes du moteur droit.
VCC : Connecté à une alimentation (par exemple, 12V).
GND : Connecté à la masse commune (Arduino, batterie, L298D).
Voici un exemple de code pour lire les commandes du module HC-06 et contrôler les moteurs via le L298D :
Vous devez utiliser la bibliothèque AFMotor pour commander le module L293D.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
#include <SoftwareSerial.h> #include <AFMotor.h> AF_DCMotor motor1(3); AF_DCMotor motor2(4); SoftwareSerial hc06(2,3); String cmd=""; void setup(){ motor1.setSpeed(150); motor2.setSpeed(150); //Initialize Serial Monitor Serial.begin(9600); //Initialize Bluetooth Serial Port hc06.begin(9600); } void loop(){ //Read data from HC06 while(hc06.available()>0){ cmd+=(char)hc06.read(); } //Select function with cmd if(cmd!=""){ Serial.print("Command recieved : "); Serial.println(cmd); // We expect ON or OFF from bluetooth if(cmd=="avant"){ motor1.run(FORWARD); // faire avancer la voiture motor2.run(FORWARD); } if(cmd=="arriere"){ motor1.run(BACKWARD);// faire reculer la voiture motor2.run(BACKWARD); } if(cmd=="gauche"){ motor1.run(FORWARD); // faire tourner la voiture à gauche } if(cmd=="droite"){ motor2.run(FORWARD); // faire tourner la voiture à droite } if(cmd=="stop"){ motor1.run(RELEASE); // arrêter la voiture motor2.run(RELEASE); } cmd=""; //reset cmd } delay(100); } |
MIT App Inventor permet de créer une application pour contrôler le robot via des commandes Bluetooth.
Créer une Interface Graphique :
Ajouter des boutons pour les directions : Avancer, Reculer, Gauche, Droite, et Stop.
Ajouter un composant Bluetooth pour établir une connexion avec le HC-06.
On vous propose donc de réaliser le design de l’application, avec le visuel suivant:
Dans la partie bloc (programme) de l'App Inventor :
- À partir d'Android 12, les autorisations Bluetooth ont été renforcées pour améliorer la sécurité et la protection des données des utilisateurs. C'est pour cela on doit déclarer les autorisations dont votre application a besoin dans le fichier AndroidManifest.xml. Pour Bluetooth, vous devrez inclure les autorisations ACCESS_FINE_LOCATION, BLUETOOTH_SCAN, et éventuellement BLUETOOTH_CONNECT, en fonction des fonctionnalités que vous utilisez.
Blocs de connexion Bluetooth :
Créez un événement quand choisir_arduino.Click
pour que, lorsqu'on appuie sur le bouton, l'application recherche et se connecte au module Bluetooth.
Blocs pour envoyer les commandes à la carte Arduino:
La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.
Zaouiet Kontech-Jemmel-Monastir-Tunisie
+216 92 886 231
medaliprof@gmail.com
Site robotique réalisé par Mohamed Ali-Prof Info