Arduino - BLE
Dans ce tutoriel, nous allons apprendre :
- Comment utiliser la technologie Bluetooth Low Energy (BLE) avec Arduino
- Comment envoyer des données depuis Arduino vers une application smartphone via BLE
- Comment recevoir des données sur Arduino depuis une application smartphone via BLE
- Comment contrôler Arduino depuis une application smartphone via BLE.
La portée de ce tutoriel :
- Échange de données entre un Arduino et une application pour smartphone via BLE. La communication entre deux Arduinos via BLE sera abordée dans un autre tutoriel.
- Utilisation du module Bluetooth Low Energy HM-10, très populaire.
- Démonstration de l'application Bluetooth Serial Monitor sur Android, mais toute application Android/iOS peut être utilisée.
- Contrôle de divers dispositifs connectés à l'Arduino via l'application pour smartphone, avec des exemples incluant une LED et un moteur servo.
Il est important de noter que ce tutoriel couvre spécifiquement le Bluetooth Low Energy (BLE, Bluetooth 4.0). Si vous recherchez des informations sur le Bluetooth classique (Bluetooth 2.0), veuillez consulter un tutoriel similaire Arduino - Bluetooth.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du module Bluetooth HM-10
Le HM-10 est un module BLE série qui fonctionne comme un convertisseur de série à Bluetooth Low Energy. Il effectue les actions suivantes :
- Reçoit des données de la broche RX série et les transmet à un appareil appairé tel qu'un smartphone via BLE
- Reçoit des données de BLE (de l'appareil appairé) et les envoie à la broche TX série.
Plus précisément, lors de l'utilisation d'un Arduino pour communiquer avec une application smartphone (Android/iOS), ce qui suit se produit :
- L'Arduino se connecte au module Bluetooth HM-10 via les broches Serial/SoftwareSerial.
- Le module Bluetooth HM-10 est appairé avec une application smartphone.
- L'Arduino envoie des données à l'application smartphone en les envoyant au Serial/SoftwareSerial.
- L'Arduino reçoit des données de l'application smartphone en les lisant depuis le Serial/SoftwareSerial.
- Aucun code BLE supplémentaire n'est requis sur l'Arduino.
Brochage
Le module HM-10 BLE possède 6 broches :
- Broche BKR : pour contrôler le comportement du module. Ignorez cette broche si vous êtes débutant.
- Broche RX : Broche de données série, connectez cette broche à la broche TX de l'Arduino. Les données reçues de cette broche seront envoyées au Bluetooth.
- Broche TX : Broche de données série, connectez cette broche à la broche RX de l'Arduino. Les données reçues via BLE seront envoyées à cette broche sous forme de données série.
- Broche GND : broche d'alimentation, connectez cette broche à la GND de la source d'alimentation.
- Broche VCC : broche d'alimentation, connectez cette broche à 3,3V de la tension d'alimentation.
- Broche STATE : Indique les états de fonctionnement :
- Clignote en mode veille - impulsion répétée de 500 ms ;
- Allumé en état de connexion - niveau haut.
- Nous n'avons besoin d'utiliser que 4 broches : VCC, GND, RX, TX
- Certains fabricants produisent le HM-10 avec seulement quatre broches.
※ NOTE THAT:
À propos de l'application Moniteur Série Bluetooth
L'application Bluetooth Serial Monitor est une application mobile qui imite l'apparence du Serial Monitor dans l'IDE Arduino. Elle permet de communiquer avec une carte Arduino via Bluetooth sans nécessiter de code supplémentaire dans le sketch Arduino. Pour l'utiliser, suivez ces étapes :
- Connectez l'Arduino à un module Bluetooth HM-10
- Téléchargez et installez l'application Bluetooth Serial Monitor sur votre smartphone
- Ouvrez l'application et connectez-la au module Bluetooth HM-10
Avec ces étapes complétées, vous pouvez maintenant envoyer et recevoir des données depuis l'Arduino comme si vous utilisiez le moniteur série dans l'IDE Arduino, sans avoir besoin de modifier votre code Arduino existant ou d'ajouter un code spécifique pour le Bluetooth.
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
La table de câblage
Arduino Pins | HM-10 Bluetooth Pins |
---|---|
RX (Pin 0) | TX |
TX (Pin 1) | RX |
5V | VCC |
GND | GND |
BKR (NOT connected) | |
STATE (NOT connected) |
※ NOTE THAT:
Le code Arduino peut utiliser d'autres broches en remplaçant l'objet Serial par une alternative telle que Serial1, Serial2 ou SoftwareSerial (si disponible).
Comment programmer pour le Bluetooth
Aucun code Bluetooth spécialisé n'est nécessaire, seul le code série est requis.
Arduino envoie des données vers l'application Bluetooth sur Smartphone
Pour transmettre des données d'une carte Arduino à une application Bluetooth sur un smartphone, le code Arduino suivant peut être utilisé. Cet exemple montre l'envoi du message « Arduino ici, donne-moi des ordres ! » de l'Arduino à l'application smartphone toutes les secondes.
Étapes rapides
Pour utiliser le code et connecter une carte Arduino à un smartphone via BLE, suivez ces étapes :
- Installez l'application Moniteur Série Bluetooth sur votre smartphone.
- Connectez le module Bluetooth HM-10 à la carte Arduino selon le schéma de câblage fourni.
- Ouvrez l'IDE Arduino, copiez le code fourni ci-dessus et téléchargez-le sur la carte Arduino. Si vous ne parvenez pas à télécharger le code, déconnectez les broches TX et RX du module Bluetooth, téléchargez le code, puis reconnectez les broches RX/TX.
- Ouvrez le Moniteur Série sur l’IDE Arduino.
- Sur votre smartphone, ouvrez l'application Moniteur Série Bluetooth et sélectionnez le mode BLE.
- Associez le smartphone au module Bluetooth HM-10.
- Observez le résultat sur l'application Android.
- Observez le résultat sur le moniteur série de l'IDE Arduino.
Si vous suivez les étapes et exécutez le code, vous observerez que les données affichées sur le moniteur série de l'IDE Arduino et sur l'application Android seront identiques.
Application Bluetooth envoie des données à Arduino
Le code ci-dessous effectue les actions suivantes :
- Envoyez des données de l'application Bluetooth à la carte Arduino
- La carte Arduino lira les données entrantes puis enverra une réponse au dispositif Bluetooth.
Étapes rapides
Voici les étapes pour utiliser le code avec Arduino et une application Android :
- Ouvrez l'IDE Arduino et collez le code fourni ci-dessus.
- Cliquez sur le bouton Upload pour charger le code sur la carte Arduino.
- Ouvrez le Moniteur Série dans l'IDE Arduino.
- Ouvrez l'application Android et associez-la au module Bluetooth HM-10 en suivant les instructions fournies dans un exemple précédent.
- Une fois connecté, tapez "LED ON" ou "LED OFF" dans l'application Android et appuyez sur le bouton "ENVOYER".
- La carte Arduino recevra les données, imprimera une réponse sur le port série. Ces données seront envoyées à l'application Bluetooth.
- Vérifiez le résultat sur l'application Android.
- Vérifiez le résultat sur le moniteur série de l'IDE Arduino.
Lorsque vous aurez complété les étapes ci-dessus, vous remarquerez que les informations affichées sur le moniteur série de l'IDE Arduino et sur l'application Android seront les mêmes.
Code Arduino - Contrôler une LED avec une application smartphone via BLE
Le code d'exemple Arduino suivant utilise les commandes "ON" et "OFF" reçues via l'application Bluetooth Serial Monitor pour allumer/éteindre une LED intégrée.
Vous pouvez voir les instructions plus en détail dans le tutoriel Arduino contrôle LED via Bluetooth/BLE.
Code Arduino - Contrôler un moteur Servo avec une application pour smartphone via BLE
Le code Arduino suivant reçoit une valeur d'angle de l'application Bluetooth Serial Monitor pour contrôler l'angle d'un moteur servo.
Vous pouvez voir les instructions plus en détail dans le tutoriel Arduino contrôle un moteur servo via Bluetooth/BLE.
Si l'application Bluetooth Serial Monitor vous est utile, veuillez lui donner une note de 5 étoiles sur Play Store. Merci !