Le module de communication sans fil
Précédent  Utiliser une carte Arduino dans une station météo  Suivant

Le module de communication sans fil

Le module est directement fixé sur la platine Arduino soit via un module shield pour la carte Uno soit directement sur la carte leonardo DFRobot qui possède un connecteur XBee. Il s'agit d'un module Xbee pro série 1 avec un connecteur"UFL" qui permet de brancher une antenne via un fil de connection. La fréquence d'émission est de 2,4 GHz.

Module radio XBee® "XBP24-AUI-001"

Cette illustration est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 4.0 International.

Figure 5. Module radio XBee® "XBP24-AUI-001"


Une antenne extérieure est indipensable pour que la portée soit d'une centaine de mètres, car l'ensemble est enfermé dans une boîte en matière plastique. Un autre module Xbee est connecté sur l'ordinateur via un connecteur USB. Il permet au programme Python de communiquer avec la station météo.Ce dernier module possède une antenne intégrée et n'est pas enfermé donc ne nécessite pas d'antenne aditionnelle.

Il faut paramétrer le XBee avec le logiciel XCTU qui est gratuit. Le paramétrtage usine convient sauf pour la mise en veille. Pour que la mise en veille soit commandée par le logiciel il faut fixer le paramètre "SM SleepMode" à la valeur de "Pin Hybernate1":

XCTU : Copies d'écran de la page des paramètres du XBee

Cette illustration est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 4.0 International.

Figure 6. XCTU : Copies d'écran de la page des paramètres du XBee


Modification du paramètre SM SleepMode

Cette illustration est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 4.0 International.

Figure 7. Modification du paramètre SM SleepMode


Pour provoquer la mise en veille ou le réveil du XBee, le logiciel implanté dans l'Arduino place une des sorties logiques (la sortie 9 par exemple) à l'état "HIGH" (mise en veille) ou l'état "LOW" (réveil). Il faut réaliser une connection électrique avec un fil entre la sortie 9 de l'Arduino et la patte 9 du module Xbee. ATTENTION : le module XBee n'accepte pas de tension supérieure à 3,3 V, il faut donc que la borne 9 de l'arduino soit branchée sur un pont diviseur qui abaisse la tension de 4,8 V(état haut des sortie Arduino) à 3 V. Le Xbee grille à la longue si on applique la tension de 4,8 V sur une de ses pattes(votre serviteur en a fait l'amère expérience).

Pont diviseur de tension

Cette illustration est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 4.0 International.

Figure 8. Pont diviseur de tension

Ce pont diviseur sera câblé sur le circuit imprimé qui supporte la carte Arduino. Le fil de liaison entre la sortie du pont diviseur et la patte 9 du Xbee sera soudé sur la connexion du shield qui correspond à la patte 9.