Arduino est une plateforme de développement matériel open source qui permet aux développeurs de créer des projets électroniques en utilisant un microcontrôleur et une variété de capteurs et d’autres composants électroniques. Bluetooth est une technologie de communication sans fil qui permet aux appareils de communiquer entre eux à une courte distance en utilisant des ondes radio.
Il est possible d’utiliser Arduino et Bluetooth ensemble pour créer des projets qui communiquent avec d’autres appareils via Bluetooth. Par exemple, vous pouvez utiliser un module Bluetooth avec Arduino pour créer un système de commande à distance, un système de suivi de localisation, un système de contrôle de l’éclairage ou tout autre type de projet qui nécessite la communication sans fil.
Pour utiliser Bluetooth avec Arduino, vous avez besoin d’un module Bluetooth compatible avec Arduino et d’une connexion Bluetooth sur l’appareil que vous souhaitez utiliser pour communiquer avec le projet Arduino. Vous pouvez utiliser des bibliothèques logicielles spécialisées pour simplifier l’intégration de Bluetooth dans votre projet Arduino et éviter de devoir écrire du code complexe pour la communication Bluetooth.
Dans ce tutoriel, on va réaliser un système permettant d’allumer et éteindre des LEDs (par bluetooth) en utilisant la carte Arduino et un smartphone.
C’est pour cela, on va créer deux programmes: une application mobile avec App Inventor pour le smartphone et un programme pour la carte Arduino.
carte Arduino UNO
L’Arduino UNO est une carte de développement microcontrôleur populaire utilisée pour créer des projets électroniques interactifs. Elle est basée sur le microcontrôleur ATmega328 et dispose de 14 broches d’entrée/sortie, de 6 entrées analogiques, de 2 ports série et d’un port USB pour la communication et l’alimentation.
module Bluetooth HC-06
Le module Bluetooth HC-06 est un module de communication sans fil utilisé pour ajouter des fonctionnalités Bluetooth à un projet électronique. Il est généralement utilisé avec des plateformes de développement comme Arduino ou Raspberry Pi et peut être facilement intégré dans un circuit grâce à ses connecteurs de broches.
Afficheur LCD I2 160A
Un afficheur LCD I2 160A est un type d’afficheur à cristaux liquides (LCD) qui utilise le bus de données I2C pour se connecter à un microcontrôleur ou à un autre dispositif de traitement de données. Il peut afficher des caractères et des graphiques sur un écran de petite taille et est souvent utilisé dans les projets électroniques pour afficher des informations ou des données.
des LEDs
Une LED, ou diode électroluminescente, est un type de dispositif à semi-conducteur qui convertit l’électricité en lumière. Les LEDs sont petites, efficaces et durables, et elles sont largement utilisées dans une variété d’applications, notamment l’éclairage, les affichages et les indicateurs.
plaque d’essai
Une plaque d’essai est un support en plastique ou en métal utilisé pour tester des circuits électroniques de manière sécurisée et pratique. Elle est composée de lignes et de colonnes de trous qui permettent de connecter des fils de connexion et des composants électroniques de manière ordonnée.
des fils de connexion
Les fils de connexion sont essentiels pour relier les composants électroniques dans un circuit électronique, y compris une carte Arduino. Il existe différents types de fils de connexion en fonction de leur application, comme les fils à gaine thermorétractable, les fils à cosse et les fils tressés.
Pour réaliser le montage on peut connecter:
Voici le programme qui permet de connecter la carte Arduino au smartphone et de recevoir un message contenant l’ordre d’allumer ou éteindre les LEDs.
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 |
#include <SoftwareSerial.h> #include <LiquidCrystal_I2C.h> // En cas de non fonctionnement, mettez la ligne 8 en // commentaire et retirez le commentaire à la ligne 9. LiquidCrystal_I2C lcd(0x27, 20, 4); // ligne 8 SoftwareSerial hc06(2,3); String message=""; void setup(){ pinMode(btnPin,INPUT_PULLUP); pinMode(bouton, INPUT); // le bouton est une entrée lcd.init(); // initialisation de l’afficheur //Initialize Serial Monitor //Initialize Bluetooth Serial Port hc06.begin(9600); pinMode(4,OUTPUT); //règle la borne numérique numéro 4 de la carte Arduino en mode sortie pinMode(5,OUTPUT); //règle la borne numérique numéro 5 de la carte Arduino en mode sortie pinMode(6,OUTPUT); //règle la borne numérique numéro 6 de la carte Arduino en mode sortie } void loop(){ lcd.backlight(); // active le rétro-éclairage lcd.setCursor(0, 0); // se positionner à la première ligne //Write data from HC06 to Serial Monitor if (hc06.available()){ //Serial.write(hc06.read()); //lcd.clear(); message+=char(hc06.read()); lcd.clear(); lcd.print(message); // afficher le message dans l'afficheur LCD }else{ if (message=="allumer_rouge") { digitalWrite(4,HIGH); //la LED rouge s’allume } if (message=="eteindre_rouge") { digitalWrite(4,LOW); //la LED rouge s’éteint } if (message=="allumer_jaune") { digitalWrite(5,HIGH); //la LED jaune s’allume } if (message=="eteindre_jaune") { digitalWrite(5,LOW); //la LED jaune s’éteint } if (message=="allumer_verte") { digitalWrite(6,HIGH); //la LED verte s’allume } if (message=="eteindre_verte") { digitalWrite(6,LOW); //la LED verte s’éteint } message=""; } } |
On va créer une application mobile nommée ‘allumer_leds_arduino’ avec App Inventor qui permet d’allumer des LEDs.
On vous propose donc de réaliser le design de l’application, avec le visuel suivant:
Pour programmer l’application, App Inventor nous propose d’utiliser L’espace Blocs qui permet de créer un programme sous forme de schéma bloc. Très simple d’utilisation mais nécessitant un peu de logique de programmation.
Voici le programme de l’application réalisée dans l’espace Blocs de l’App Inventor:
Monica Tatoukila 31-08-2323
J'ai adoré c'est très intéressant j'avoue que votre fichier est vraiment riche merci beaucoup 🙏
luigi 11-01-2323
j ai un probleme il y a une erreurArduino : 1.8.19 (Windows 10), Carte : "Arduino Uno" C:\Users\canta\AppData\Local\Temp\arduino_modified_sketch_97441\sketch_jan11a.ino: In function 'void setup()': sketch_jan11a:9:9: error: 'btnPin' was not declared in this scope pinMode(btnPin,INPUT_PULLUP); ^~~~~~ C:\Users\canta\AppData\Local\Temp\arduino_modified_sketch_97441\sketch_jan11a.ino:9:9: note: suggested alternative: 'stdin' pinMode(btnPin,INPUT_PULLUP); ^~~~~~ stdin sketch_jan11a:10:9: error: 'bouton' was not declared in this scope pinMode(bouton, INPUT); // ^~~~~~ C:\Users\canta\AppData\Local\Temp\arduino_modified_sketch_97441\sketch_jan11a.ino:10:9: note: suggested alternative: 'utoa' pinMode(bouton, INPUT); // ^~~~~~ utoa exit status 1 'btnPin' was not declared in this scope Ce rapport pourrait être plus détaillé avec l'option "Afficher les résultats détaillés de la compilation" activée dans Fichier -> Préférences. pouvez vous m aide ? merci
Luigi 11-01-2323
bonjour pouvez vous m aider j ai un probleme en televersant le programme dans l arduino uno. merci. message erreuir C:\Users\luigi\AppData\Local\Temp\.arduinoIDE-unsaved2023011-7216-1e1b12h.7tutl\sketch_jan11a\sketch_jan11a.ino:2:10: fatal error: LiquidCrystal_I2C.h: No such file or directory #include ^~~~~~~~~~~~~~~~~~~~~ compilation terminated. exit status 1 Compilation error: LiquidCrystal_I2C.h: No such file or directory
Azerty 17-09-2222
Cool sa marche super bien et c’est gratuit
Ahmed 08-01-2222
Il y a un problème au niveau de téléchargement pour cette application
Med Ali 08-01-2222
J'ai résolu le problème Merci pour votre remarque
Aziz 03-05-2121
Hambdoula la tess mrc c projet bac gratuit