(1968 mots dans ce texte ) - lu : 3828 Fois
Pour imprimer, cliquez sur l'icône ci-dessus
Dans ma grande niaiserie, j’imaginais que les modules RF XBEE étaient comme les RF-433Mhz…
J'ai vite déchanté!
Pour mémoire, les modules RF-433 Mhz (et aussi les RF-315 Mhz) sont simples à mettre en œuvre :
On les raccorde ; on charge la librairie RCSwitch sur Arduino et on utilise les fonctions Serial.available, Serial.read et Serial.write, etc… et le tour est joué.
Avec les modules XBEE on peut faire beaucoup plus de choses, ne serait-ce qu’en matière de topologie réseaux :
- Liaison point à point (pair);
- Liaison Etoile (star);
- Liaison Maillée (mesh);
- Etc…
Cela suffit pour compliquer considérablement la découverte et la mise en œuvre de ces modules.
Voici quelques pistes issues de mes premières "expérimentations".
- Quelle que soit la topologie construite (pair, star, etc...) il faut un coordinator et un seul.
- Le logiciel X-CTU : Un outil incontournable.
Son installation (uniquement sous windows et Mac-OS X) commence par un téléchargement d’une vingtaine de minutes.
Attention, l’interface graphique a changé comparativement à ce que l'on trouve sur les forums. Très déroutant au début !
Il permet de découvrir la configuration de livraison des modules, de paramétrer ces modules dans diverses configurations, de tester via sa console le fonctionnement en "live".
Au lieu de celà, pensant que la configuration livrée permettait une utilisation immédiate, comme ce fût le cas avec les modules RF-433, je me suis embarqué immédiatement (mal m'en a pris...) dans des essais entre Arduino et Raspberry qui ont duré des jours et des jours.
Jusqu'à ce que je grandisse...
Las de galérer (j'ai même longtemps pensé que l'un des deux modules était en panns), je suis reparti de zéro. En fait, ces premiers test m'ont aidé à découvrir les fonctionalités essentielles du logiciel. Outre le paramétrage des liaisons radio (vitesse, type de réseau, la nature et l'affectation des modules : coordinator, router et end-device) j'ai découvert les outils permettant un test du projet avant le déploiement. De sorte que, si par la suite les liaisons sont inopérantes, on est au moins sûr d'une chose: ce n'est pas à cause de la qualité de la liaison radio.
Le matériel:
Dans la configuration définitive, je dois mettre en oeuvre:
Pour ce premier test j'ai du acquérir un second dongle USB, pour des raisons de praticité.
Passons maintenant à la réalisation du premier test.
Objectif : avant toute chose, faire communiquer les deux modules en émission/réception locale entre les ports USB de deux PC. Le logiciel adéquat (XCTU) est installé sur chaque PC
Tentative de communication entre les deux modules a l’aide des utilitaires proposés par XCTU dans son mode « console».
Module 1 (serial #8485) coordinator sur module usb A (Ordinateur Portable, Win7)
Module 2 (serial #8481) router sur module mini usb A (Station PC, WinXP)
Pour chacun des 2 modules:
1) reset complet
a- Load default firmware settings
b- Write radio settings (obligatoire sinon, pas de mise à jour effective)
2) Update firmware:
a– Coordinator :
b– Router:
Eléments significatifs du paramétrage “standard”
Seul le Node Identifier NI a été documenté ;
les autres paramètres d’origine ont été laissés en l’état.
Module #8485 Coordinator :
Pan ID : Il est conseillé de modifier cette valeur afin d’éviter l’interférence avec d’autres réseaux XBEE du voisinage. Ce sera pour plus tard, et seulement si nécessaire.
MY : Valeur attribuée (réservée ?) au coordinator. Elle ne peut être modifiée.
NI : Seule valeur documentée afin de repérer plus facilement le module.
DL : FFFF = Broadcast à tous. Normal, c’est le coordinator !
Module #8481 Router :
MY : Valeur attribuée au router. Non modifiable.
NI : Seule valeur documentée afin de repérer plus facilement le module.
DL : 0 = c’est le MY du coordinator!
NB : les paramètres de transmission série n’ont volontairement pas été modifiés car ce n’était pas nécessaire dans le cadre d’un premier test.
TEST 1 - PROCEDURE :
Le dongle USB « coordinator » est branché sur le portable ;
Le dongle USB « router » est branché sur le PC
XCTU est démarré. Sélectionner le module XBEE à connecter au PC :
Cliquer sur le module trouvé afin de charger ses paramètres :
Puis passer en mode « console »
Le test peut démarrer :
De chaque côté : un clic sur l’icône « Ouverture de la connexion série avec le module radio ».
Les deux modules sont prêts à dialoguer :
Note : c’est l’opération que j’oublie souvent de réaliser, ce qui donne :
Envoi de messages croisés entre les deux machines:
La manière la plus simple et la plus parlante de réaliser ce premier test consiste a écrire un court message, par exemple :
- Allo ? sur le PC
- J’écoute ! sur le portable
Puis à faire en sorte qu’ils soient émis en permanence sur leurs machines respectives. Ainsi, on peut vérifier aussi la bonne transmission en déplaçant le portable. Malin, non ?
On sélectionne « loop infinity » puis on clique sur la croix verte :
On saisit un message sans oublier le CRLF (Return) à la fin.
La méthode est identique sur les deux machines. Il n’y a que le message qui diffère :
Et on valide.
Il reste à cliquer sur le message puis sur « démarrer la séquence »:
Le message apparaît en bleu sur la console émettrice et en rouge sur la console réceptrice.
Lançons maintenant le message sur l’autre machine :
Conclusion :
Cette étape préparatoire est indispensable pour qualifier le fonctionnement de la liaison radio entre deux modules. En particulier, le chargement des paramètres par défaut puis la mise-à-jour du firmware.
J'ai perdu beaucoup de temps en sautant cette première étape!
Maintenant, le résultat est satisfaisant. La transmission fonctionne simultanément.
Il reste à déplacer le portable pour contrôler les distances de transmission ainsi que l'incidence des obstacles.
Autre série de tests à effectuer :
- Intervertir les modules.
- varier la transmission de 2400 bds à 56000 bds
- Vérifier la différence entre un module « à antenne externe » et un autre « à antenne PCB »
Dernier point: XBEE n'est pas le seul à exploiter la bande de fréquence des 2.4 Ghz:
Par exemple, certaines radio-commandes de modèles réduits émettent dans cette bande.
J'ai testé mon four à micro-ondes à pleine puissance: Ouf, tout va bien !
Retour à la sous-rubrique :
Autres publications de la sous-rubrique :