Une voiture télécommandée est un jouet ou un modèle réduit de voiture qui peut être contrôlé à distance via une télécommande. Elles sont généralement alimentées par des piles et peuvent être utilisées à l’intérieur ou à l’extérieur.
Les voitures télécommandées sont souvent utilisées comme jouets par les enfants et les adultes, mais elles peuvent également être utilisées pour des projets de robotique et de modélisme. Elles peuvent être équipées de différents capteurs et de microcontrôleurs, tels qu’une carte Arduino, pour ajouter des fonctionnalités telles que la détection d’obstacles ou la possibilité de suivre une ligne.
Pour commander une voiture équipée d’Arduino par l’ordinateur via Bluetooth, vous pouvez suivre les étapes suivantes :
Matériel requis :
Étape 1: Connexion du module Bluetooth HC-05 ou HC-06 à l’Arduino Connectez le module Bluetooth à l’Arduino en utilisant les broches RX et TX (ou soft serial si votre Arduino n’a pas de ports série disponibles). Assurez-vous de bien alimenter le module en 5V ou 3,3V selon le modèle.
Étape 2: Connexion du pont en H et des moteurs à l’Arduino Connectez le pont en H aux deux moteurs et à l’Arduino. Utilisez les broches PWM pour contrôler la vitesse des moteurs et les broches directionnelles pour contrôler la direction.
Étape 3: Assemblage de la voiture Assemblez les moteurs, le pont en H et l’Arduino sur le châssis de la voiture.
Étape 4: Programmation de l’Arduino Programmez l’Arduino pour recevoir les commandes via Bluetooth et contrôler les moteurs en conséquence. Vous pouvez utiliser un programme simple qui écoute les commandes de l’ordinateur et les convertit en signaux pour le pont en H.
Étape 5: Établissement de la connexion Bluetooth Connectez votre ordinateur au module Bluetooth en utilisant un logiciel de terminal Bluetooth ou une application appropriée. Vous pouvez alors envoyer des commandes à l’Arduino pour contrôler la voiture.
Dans ce projet on va réaliser une voiture équipée d’une carte Arduino et d’un module bluetooth hc-06 et commandée par l’ordinateur via bluetooth.
L’utilisateur commande la voiture par les touches de direction du clavier (avant, droite, gauche et arrière).
carte Arduino
Une carte Arduino est une carte de développement électronique basée sur un microcontrôleur. Elle est conçue pour être facilement utilisable par les développeurs et les hobbyistes pour créer des projets électroniques.
Les cartes Arduino sont principalement utilisées pour contrôler des appareils électroniques en utilisant du code informatique, mais elles peuvent également être utilisées pour traiter et afficher des données. Elles sont souvent utilisées dans des projets de robotique, de domotique, de domaine de l’Internet des objets (IoT) et dans de nombreux autres domaines de l’électronique de loisir et professionnelle.
Module Bluetooth hc-06
Le module HC-06 est un module Bluetooth qui fournit des capacités de communication sans fil aux appareils. Il est couramment utilisé dans des projets de bricolage et peut être facilement intégré dans des systèmes à base de microcontrôleurs.
Le module HC-06 utilise la technologie Bluetooth classique (Bluetooth 2.0) et dispose d’une portée de communication d’environ 10 mètres en champ libre. Il est compatible avec une variété d’appareils, notamment les smartphones, les tablettes et les ordinateurs portables.
Le module est généralement alimenté par une tension de 3,3 V ou 5 V et dispose de broches pour la communication série avec un microcontrôleur. Il peut être configuré à l’aide de commandes AT pour ajuster divers paramètres, tels que la vitesse de transmission et le nom d’appareil.
Le HC-06 est facile à utiliser et offre une solution simple pour ajouter des fonctionnalités Bluetooth à un projet électronique.
Le module HC-06 peut être facilement intégré à un projet Arduino pour permettre une communication sans fil avec d’autres appareils Bluetooth. En ce qui concerne l’utilisation du HC-06 avec un véhicule, il peut être utilisé pour contrôler les fonctions de la voiture, telles que les lumières, la climatisation, les serrures de porte, etc., à partir d’un appareil mobile équipé de Bluetooth.
Pour utiliser le module HC-06 avec Arduino, vous devez connecter les broches TX et RX du module à des broches numériques de l’Arduino. Vous pouvez utiliser la bibliothèque SoftwareSerial pour communiquer avec le module HC-06 via les broches numériques.
Une fois que le module est connecté à Arduino, vous pouvez utiliser le code pour envoyer et recevoir des données sans fil via Bluetooth. Vous pouvez également utiliser des applications mobiles pour contrôler votre projet Arduino via Bluetooth.
Module L298N
Le module L298N est un contrôleur de moteur pas à pas ou à courant continu qui permet de contrôler la vitesse et la direction des moteurs. Il est couramment utilisé dans les projets électroniques pour contrôler les mouvements des robots, des véhicules et d’autres appareils motorisés.
Le module L298N contient deux ponts en H, qui permettent de contrôler la direction de rotation des moteurs en inversant la polarité de l’alimentation électrique. Il dispose également de deux sorties PWM (modulation de largeur d’impulsion) pour contrôler la vitesse des moteurs.
Le module L298N peut être alimenté par une tension allant de 5V à 35V et peut fournir jusqu’à 2A de courant par canal. Il peut également être utilisé pour contrôler des moteurs pas à pas en générant des impulsions de commande à travers les broches appropriées.
Le module L298N est généralement facile à utiliser et peut être connecté à un microcontrôleur tel qu’un Arduino en utilisant des broches numériques pour contrôler la direction et la vitesse des moteurs. Il est également souvent livré avec des bornes à vis pour faciliter le raccordement des fils électriques.
Le module L298N peut être utilisé avec Arduino pour contrôler les moteurs dans un projet de véhicule. Par exemple, vous pouvez utiliser le module L298N pour contrôler les moteurs d’un robot ou d’un petit véhicule à deux roues.
Pour utiliser le module L298N avec Arduino, vous devez connecter les broches IN1, IN2, IN3 et IN4 du module à des broches numériques de l’Arduino. Vous devez également connecter les bornes d’alimentation du module à une source d’alimentation externe, telle qu’une batterie, et connecter les bornes de sortie aux moteurs.
Une fois que le module L298N est connecté à Arduino, vous pouvez utiliser le code pour contrôler la direction et la vitesse des moteurs. Par exemple, vous pouvez utiliser la fonction analogWrite() pour générer un signal PWM pour contrôler la vitesse des moteurs, et utiliser les broches IN1, IN2, IN3 et IN4 pour contrôler la direction des moteurs en inversant la polarité.
En ce qui concerne l’utilisation du module L298N avec un véhicule, vous pouvez utiliser Arduino pour contrôler les moteurs du véhicule en utilisant les broches IN1, IN2, IN3 et IN4 pour contrôler la direction et la vitesse des moteurs. Vous pouvez également utiliser des capteurs pour détecter les mouvements du véhicule et envoyer ces données à un ordinateur ou à un appareil mobile via une connexion sans fil pour une analyse plus poussée.
deux batteries de 9V
Une batterie 9V est une source d’alimentation couramment utilisée dans les appareils électroniques tels que les jouets, les détecteurs de fumée, les horloges et les petits projets électroniques. Elle contient six cellules de batterie sèche connectées en série pour fournir une tension nominale de 9 volts.
Les fils de connexion sont des fils électriques utilisés pour connecter des composants électroniques. Il existe deux types de fils de connexion: les fils de connexion mâle-mâle et les fils de connexion mâle-femelle. Les fils de connexion mâle-mâle sont utilisés pour connecter des composants qui ont tous deux des broches mâles, tandis que les fils de connexion mâle-femelle sont utilisés pour connecter des composants avec une broche mâle et une broche femelle.
Les fils de connexion sont généralement fabriqués en cuivre ou en alliage de cuivre et sont revêtus d’un isolant en plastique pour protéger les fils électriques et empêcher les courts-circuits. Ils sont disponibles dans une variété de couleurs pour aider à identifier et organiser les différents fils dans un circuit.
Un kit robot voiture à deux roues est un ensemble de pièces et de composants qui permet de construire un robot mobile à deux roues. Ces kits sont généralement destinés aux débutants en robotique et sont conçus pour être faciles à utiliser et à assembler.
Les kits robot voiture à deux roues comprennent généralement un châssis de robot, des roues et des moteurs pour propulser le robot, ainsi qu’un contrôleur de moteur et un microcontrôleur pour commander le robot. Ils peuvent également inclure des capteurs et des modules de communication pour permettre au robot de naviguer et de détecter son environnement.
Pour utiliser un kit robot voiture à deux roues, il faut d’abord assembler le robot en suivant les instructions du manuel. Une fois le robot assemblé, vous pouvez le programmer pour qu’il effectue différentes tâches, comme suivre une ligne, éviter des obstacles ou se déplacer vers un emplacement précis.
Les kits robot voiture à deux roues sont une excellente introduction à la robotique et peuvent être utilisés pour enseigner la programmation et la robotique de manière interactive et ludique. Ils sont également idéaux pour les projets de loisirs et pour la création de robots de compétition.
Le kit robot utilisé dans ce projet est composé de :
Voici le programme qui permet de connecter la carte Arduino au module bluetooth HC-06 et de recevoir un message contenant le sens de direction de la voiture.
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 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
// connect motor controller pins to Arduino digital pins // motor one #include <SoftwareSerial.h> SoftwareSerial hc06(8,9); String cmd=""; int enA = 2; int in1 = 3; int in2 = 4; // motor two int enB = 7; int in3 = 5; int in4 = 6; void setup() { //Initialize Serial Monitor Serial.begin(9600); hc06.begin(9600); // set all the motor control pins to outputs pinMode(enA, OUTPUT); pinMode(enB, OUTPUT); pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); pinMode(in3, OUTPUT); pinMode(in4, OUTPUT); analogWrite(enA, 255); analogWrite(enB, 255); } void loop() { while(hc06.available()>0){ cmd+=(char)hc06.read(); } //control speed //Select function with cmd if(cmd!=""){ Serial.print("Command recieved : "); Serial.println(cmd); // We expect ON or OFF from bluetooth if(cmd=="avant"){ digitalWrite(in1, HIGH); //faire avancer la voiture digitalWrite(in2, LOW); digitalWrite(in3, HIGH); digitalWrite(in4, LOW);} if(cmd=="arriere"){ digitalWrite(in1, LOW); //faire reculer la voiture digitalWrite(in2, HIGH); digitalWrite(in3, LOW); digitalWrite(in4, HIGH);} if(cmd=="droite"){ digitalWrite(in1,HIGH ); faire tourner la voiture a droite digitalWrite(in2, LOW); digitalWrite(in3, LOW); digitalWrite(in4, LOW);} if(cmd=="gauche"){ digitalWrite(in1, LOW); //faire tourner la voiture a gauche digitalWrite(in2, LOW); digitalWrite(in3, HIGH); digitalWrite(in4, LOW);} if(cmd=="stop"){ digitalWrite(in1, LOW); // Arreter la voiture digitalWrite(in2, LOW); digitalWrite(in3, LOW); digitalWrite(in4, LOW);} cmd=""; //reset cmd } delay(100); } |
Voici le programme qui permet à l’ordinateur de connecter et envoyer des données au module bluetooth HC-06.
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 |
import serial import time from pynput import keyboard evenement="" print("Start") port="COM20" #This will be different for various devices and on windows it will probably be a COM port. bluetooth=serial.Serial(port, 9600)#Start communications with the bluetooth unit print("Connected") bluetooth.flushInput() #This gives the bluetooth a little kick result = str(0) def on_key_release(key): global result #print('released %s' % key) #result ='released %s' % key+'\n' if result !='stop': #or result == str(2)+'\n' or result == str(3)+'\n' or result == str(4)+'\n': result = 'stop' print(result) result_bytes = result.encode('utf_8') bluetooth.write(result_bytes) def on_key_pressed(key): global result #print('pressed %s' % key) result1 ='%s' % key if result == 'stop': if result1=='Key.up' : result = 'avant' print(result) if result1=='Key.down' : result = 'arriere' print(result) if result1=='Key.left' : result = 'gauche' print(result) if result1=='Key.right' : result = 'droite' print(result) result_bytes = result.encode('utf_8') bluetooth.write(result_bytes) with keyboard.Listener(on_release = on_key_release,on_press=on_key_pressed) as listener: listener.join() |
ayoub sahnoun 14-01-2222
Salem. how can I run python on my pc please?