Pour le grand public, le terme « Bluetooth » évoque souvent un casque audio ou un haut-parleur. Si ces deux appareils utilisent en effet la technologie Bluetooth, les passionnés d'électronique savent cependant que cette méthode de communication à courte distance, loin de se limiter à l'écoute de votre podcast favori, offre une multitude d'applications.
Le Bluetooth peut transmettre des informations de multiples façons intéressantes et inventives. Une de nos méthodes préférées consiste à associer un robot basé sur une carte Arduino, ou tout autre dispositif, à un smartphone de contrôle.
Lisez les indications ci-dessous pour commencer à vous servir de la technologie Bluetooth pour votre prochain projet robotique Arduino.
Comment fonctionne une communication Arduino vers Arduino via Bluetooth ?
En utilisant les signaux série du Bluetooth, votre téléphone contrôle l'Arduino aussi efficacement que si les deux appareils étaient reliés par une connexion matérielle. Dans ce cas, certaines applications comme Bluetooth Terminal et ArduinoRC permettent de convertir facilement votre téléphone en dispositif d'interface.
Et ce n'est pas tout. Avec la configuration appropriée, vous pouvez permettre à deux cartes Arduino de communiquer sans recourir au moindre ordinateur ou téléphone. La communication Arduino vers Arduino est légèrement plus complexe à faire fonctionner correctement, mais elle ouvre d'innombrables possibilités de contrôle.
Étape 1 : Élaborer les circuits

Ce projet nécessite de fabriquer une paire de cartes expérimentales identiques, tel qu'indiqué dans le diagramme Fritzing ci-dessus. Chacune d'elles utilise une Arduino Nano pour transmettre des données via un module Bluetooth HC-05. La carte appariée reçoit les données et y répond en faisant clignoter le voyant DEL intégré. Bien qu'il soit possible d'envoyer un signal d'une Arduino à une autre via l'interface série d'un ordinateur, l'entrée par bouton fait office de touche de raccourci pour transmettre un caractère sans fil.
Voici les éléments nécessaires à la construction de vos circuits :
- (2) cartes Arduino Nano
- (2) cartes expérimentales
- (2) module Bluetooth HC-05
- (2) boutons poussoirs
- (2) résistances de 1 kilohm
- (2) résistances de 2 kilohms
- (2) résistances de 20 kilohms
- Câbles de connexion
- (2) câbles mini-USB
Remarque : Vous pouvez remplacer un grand nombre de composants selon vos préférences. Par exemple, les cartes Arduino Uno sont aussi performantes que les Nano. Par ailleurs, vous pouvez constater sur le schéma du circuit que nous avons placé un diviseur de tension sur la broche RX du module HC-05. Comme les modules HC-05 fonctionnent en 3,3 V, nous avons choisi cette solution pour prévenir tout risque de surtension au niveau de la broche.
Apparier les modules

Fig. 2 : L'ouverture d'une deuxième instance de l'IDE Arduino vous permet d'utiliser deux cartes distinctes simultanément.
Lorsque vous avez terminé d'installer votre circuit, vous devez configurer les deux modules Bluetooth afin qu'ils communiquent entre eux. Voici les prochaines étapes à suivre :
-
Transférez le code HC-05_AT_MODE_01 qui se trouve ici à l'une des cartes Arduino. Activez ensuite le mode AT du module Bluetooth HC-05 en mettant ce dernier sous tension tout en maintenant enfoncé le bouton de la carte.
-
Les voyants DEL intégrés clignotent lentement au démarrage du module. Ouvrez un moniteur série dans l'IDE Arduino, puis tapez « AT ». Si tout fonctionne correctement, le terminal répond en affichant « OK ».
-
Entrez « AT+ROLE=1 » pour configurer le module HC-05 en tant que maître. Puis, entrez « AT+CMODE=1 » pour lui permettre de s'associer à une adresse quelconque (module).
-
Réinitialisez l'appareil. Le module HC-05, qui fonctionne désormais comme maître, s'associe à l'autre HC-05, qui est normalement fourni prédéfini comme module esclave.
Si vous devez convertir un maître en esclave, communiquez avec lui par interface série tel qu'indiqué ci-dessus et entrez « AT+ROLE=0 ». Il est également possible d'utiliser un module HC-06, qui fonctionne uniquement en mode esclave. Utilisez le code associé de l'étape 1 pour plus d'informations. Vous pouvez également relier les deux modules en suivant les instructions avancées ci-dessous.
Lorsque deux cartes Arduino sont utilisées de cette manière, il peut s'avérer extrêmement utile de charger deux instances de l'IDE Arduino (à partir d'un raccourci, sans utiliser file/new (fichier/nouveau) ou file/open (fichier/ouvrir) dans l'IDE). Cette méthode, qui permet de charger des programmes et de surveiller des ports série en même temps, facilite considérablement la programmation et la résolution des problèmes.
Charger un programme et tester

Fig. 3 : La pression sur un bouton allume le voyant d'une autre Arduino Nano. Des notes adhésives indiquent le port série utilisé pour distinguer les cartes lors de la programmation.
Lorsque vous avez connecté votre HC-05/Arduino, chargez le logiciel qui se trouve ici sur chaque Arduino et effectuez les étapes suivantes :
- Ouvrez un moniteur série pour chaque instance de l'IDE, puis essayez d'entrer « O » et « F » (sensible à la casse).
- La carte opposée doit répondre en allumant et éteignant son voyant DEL intégré. Appuyez sur le bouton. Le caractère « B » est transmis à la carte opposée et le voyant DEL clignote brièvement.
- Vous pouvez également taper « B » sur le moniteur série pour tester cette fonctionnalité.
- Lorsque vous avez constaté le bon fonctionnement du système, déconnectez chaque assemblage et branchez-les sur les côtés opposés de la salle, en faisant clignoter les voyants d'un côté à l'autre.
À présent que les deux cartes Arduino sont connectées, le moment est venu de faire preuve de créativité. Vous vous servez peut-être d'un téléphone connecté via Bluetooth pour contrôler votre robot alors que vous préféreriez utiliser un clavier physique ? Vous aimeriez peut-être concevoir une interface informatique personnalisée commandée à distance ? La technologie Bluetooth peut ajouter une nouvelle dimension portable à vos projets robotiques.

