Zigbee de La Theorie A La Pratique Creation Dun Reseau Zigbee Avec Transmission de Donnees
Zigbee de La Theorie A La Pratique Creation Dun Reseau Zigbee Avec Transmission de Donnees
Zigbee de La Theorie A La Pratique Creation Dun Reseau Zigbee Avec Transmission de Donnees
Résumé : Les technologies de l’informatique sont de nos jours enfouies profondément (ubiquitaire)
dans le tissu de notre société à un point tel que nous ne pouvons éviter de passer chaque jour devant
un très grand nombre de machines informatiques de toutes natures. Il ne faut pas penser simplement
à l’outil informatique posé sur votre bureau, ou dans votre poche qui vous permet de téléphoner. Vous
pourriez imaginer par exemple, sans vous projeter dans un film de science-fiction que ces machines
informatiques vous ouvrent des portes, vous reconnaissent pour vous guider en toute sécurité vers
votre destination, vous aident et vous surveillent si vous êtes à mobilité réduite et âgés, surveillent en
continu une forêt pour prévenir rapidement d’un début d’incendie, etc.
Pour de multiples raisons, ces machines sont très souvent amenées à collaborer. Pour cela, elles
communiquent via des réseaux câblés ou sans fil. La mise en œuvre de tels réseaux peut être très
compliquée, notamment parce qu’elle impose de connaître parfaitement la structure du réseau et les
protocoles associés à la communication.
Cet article vous présente une solution concrète de communication sans fil basée sur la technologie
ZigBee, qui pour de multiples raisons s’adapte très bien au domaine de l’électronique embarquée,
notamment par sa facilité de mise en œuvre, son optimalité en termes de consommation et de coût.
Autour d’un scénario simple de fonctionnement, nous illustrerons nos propos avec une présentation
des outils matériels et logiciels permettant d’appréhender la mise en place du réseau de capteurs et la
vérification de son fonctionnement.
1. Introduction sur les communications sans fil la mesure où beaucoup de réponses à vos questions
et ZigBee pourront être trouvées dans les documents que vous
trouverez cités.
Dans la course à la miniaturisation et en relation
avec des considérations de développement durable,
des technologies informatiques s’adaptent et se
2. Informations de base sur la technologie
créent.
ZigBee/IEEE 802.15.4
Dans le domaine des communications sans fil,
ZigBee désigne une technologie pour la
aujourd’hui plus particulièrement centré sur la
communication sans fil robuste de type WPAN
communication entre machines informatiques
(Wireless Personal Areal Network). Ses
complexes et en téléphonie, le standard de
caractéristiques en font une technologie à part qui
communication ZigBee apporte une nouvelle
vient compléter et non pas remplacer les offres des
dimension des technologies de communication.
standards de communication bien connus tels que le
Force est de constater que la grande majorité des
WLAN (Wireless Local Area Network) WiFi et le
évolutions tendent à décupler les capacités de débit
WPAN Bluetooth.
des machines informatiques sans réellement
prendre en considération, à leur base, des aspects - La pile de protocolaire
comme la consommation énergétique, le facteur ZigBee regroupe un ensemble de protocoles de
d’échelle, la simplicité de mise en œuvre des hauts niveaux (
protocoles et des réseaux, etc. Figure 1) utilisés sur une structure matérielle,
communiquant sans fil, de petite taille, très
Il est de coutume de commencer par une
économe en énergie. ZigBee appartenant plus
introduction sur les spécifications du standard et de
particulièrement à la famille des réseaux personnels
la norme. Nous ne dérogerons pas à cette règle dans
sans fil désignée en anglais par l’acronyme LP-
WPAN (Low Power - WPAN), est basé sur le imposent une très faible consommation, et se
standard IEEE 802.15.41. Les spécifications de ce suffisent d’un très faible débit de données et une
standard sont accessibles sur le Web et sont portée de quelques dizaines de mètres (jusqu’à
régulièrement mises à jour depuis 2005, sur le site 100m). Ces équipements peuvent être opérationnels
Internet de l’IEEE [2]. La majorité des ressources dans une maison ou dans l’industrie. Afin de rendre
que vous retrouvez sur le Web sont des émanations inter-opérationels les équipements des différents
de ces documents ; il ne faut donc pas hésiter à fournisseurs, plusieurs normes se sont développées
s’emparer de ces documents précieux. autour de ZigBee : WirelessHART, ISA100.11a,
6LoWPAN, SynchroRF, RF4CE [1]. Nous ne
développons pas ces normes dans cet article.
Couche application
- Basse consommation ! mais comment ?
Alliance
Le mécanisme permettant d’économiser l’énergie
Couche de gestion réseau ZigBee
des modules communicants est basé principalement
sur leur mise en sommeil lorsque aucune activité
Couche d’accès au médium - d’émission, de réception ou d’écoute radio n’est
MAC requise. L’activité de sommeil est ainsi
Spécifications prépondérante. Les modules communicants appelés
IEEE 802.15.4 dans notre jargon « nœuds » se réveillent
Couche physique
occasionnellement afin de vérifier si aucun message
n’a été enregistré pour eux par le coordinateur du
réseau ; nous reviendrons plus loin sur les fonctions
Figure 1 : Pile protocolaire ZigBee de ce coordinateur de réseau. Les composants
électroniques développés par les industriels sont
également optimisés afin de consommer le moins
- La couche physique supporte la gestion des possible. Il n’est pas difficile de vérifier cela en
fréquences d’émission et de réception, le débit consultant les fiches techniques des composants
des données envoyées ou reçues, le type de dédiés à cette norme (microcontrôleur, émetteur-
modulation et le codage numérique des récepteur, capteurs, etc). La consommation est
informations. également optimisée au niveau de la
- La couche d’accès au médium ou MAC communication entre les nœuds du réseau ; nous
(Medium Access Control) s’appuie sur les citerons pour exemple les techniques de routage 2
ressources de la couche physique. C’est la qui élaborent des stratégies sur la recherche et
couche principale pour les aspects logiciels l’utilisation de chemins pour la communication.
qui définit la façon dont un nœud du réseau Ces informations pourront, par exemple, être
pourra dialoguer (transmettre ou recevoir). trouvées dans la première partie (état de l’art) de
Ces mécanismes sont tous détaillés dans la thèses de doctorat que vous trouverez sur le Web ;
spécification du standard IEEE 802.15.4 [3]. elles sont en général simplifiées et très abordables
[11].
- La couche réseau assure principalement les
règles d’établissement d’un réseau, - Quelques données techniques sur le
l’association et l’interconnexion de tous les protocole sans-fil ZigBee/IEEE 802.15.4
nœuds dans le réseau, le transfert des Nous ne nous étendrons pas dans ce paragraphe ;
informations entre les entités de ce réseau via vous retrouverez toutes les informations utiles dans
une route, ainsi que la structure des messages les spécifications du standard IEEE 802.15.4 [3]
(trames) qui seront échangés. ainsi que dans une version simplifié en langue
- La couche application utilise les couches française [4].
inférieures pour une application Le standard IEEE 802.15.4 initial peut utiliser 3
communicante donnée. Elle donne entre autres bandes de fréquences différentes et propose 27
une signification aux informations échangées canaux de communication. (Figure 2). Vous
dans le réseau. remarquerez que le débit n’est en rien comparable à
celui du WiFi ou Bluetooth (en particulier dans la
- Les domaines d’application
version 4). ZigBee/IEEE 802.15.4 dédié aux
ZigBee est aujourd’hui utilisé dans de nombreux réseaux de capteurs sans fil n’est amené à
équipements, très généralement embarqués, qui
2
Routage : procédé qui consiste à trouver un
1
À titre de comparaison, la norme WiFi bien chemin de communication dans un réseau entre un
connue est basée sur le standard IEEE 802.11, nœud émetteur et un nœud récepteur (couche
nuancée par les suffixes a, b, g, n, et bientôt ac. réseau).
transmettre que de petites quantités de données (ie. - Illustration d’un réseau maillé simplifié
quelques octets), liées notamment à des grandeurs
Pour comprendre à quoi correspond un réseau
physiques acquises (température, pression, lumière,
maillé, vous pouvez imaginer un immeuble
etc.).
comportant 5 étages (Figure 4).
A l’inverse, ce standard peut supporter un très
- Le coordinateur (en rouge) est placé au
grand nombre de machines interconnectées (plus de
3ième étage, ce qui lui permet
65000) dans le même réseau, ce qui est loin d’être
théoriquement d’être à portée radio de
le cas de WiFi et Bluetooth.
presque tous les autres nœuds terminaux.
- Au 4ième étage, nous avons un routeur (en
Bande de Débit Nombre de bleu) qui permet d’étendre le réseau vers le
fréquences possible canaux 5ième étage. Le nœud terminal du 5ième
étage est donc joignable depuis le
2,4 GHz 250 Kbits/s 16 coordinateur via le routeur.
915 MHz 40 Kbits/s 10 - Par contre, nous n’avons aucun routeur sur
le second étage ; la distance étant trop
868 MHz 20Kbits/s 1
grande, le nœud terminal du 1er étage ne
Figure 2 : IEEE 802.15.4 dans la bande radio ISM peut pas être joint par le coordinateur.
Le visuel pour l’initialisation de l’application Tera - Suivi de l’activité des nœuds sur le
Terminal diffère un peu. Les paramètres sont réseau ZigBee
toutefois identiques (Figure 12).
a) Faites un RESET de chacune de vos cartes
connectées sur vos ordinateurs et vous
verrez apparaître pour chacune des
fenêtres Hyperterminal l’un des contenus
illustré sur les figures Figure 15 et Figure
16. Attention ! Le coordinateur doit bien
sûr être démarré le premier comme
présenté au chapitre précédent, avant le
nœud routeur et le nœud terminal.
Figure 16b : Écho de l'exécution des nœuds sur l'écran Figure 17a : Requête pour l'envoi de données du nœud
de l'Hyperterminal – Température terminal vers le coordinateur
b) Appuyez sur le bouton-poussoir PB4 pour
que toutes les cartes fassent partie du
même groupe. Si vous ne voyez pas
apparaître le menu sur un des terminaux,
cela signifie que l’association a échoué.
Appuyez de nouveau sur le bouton-
poussoir PB4 pour résoudre le problème.
c) En choisissant l’option 7, sur l’écran du
coordinateur, vous obtenez les
informations d’adresse de tous les nœuds
associés au réseau qu’il a créé.
d) Le choix 2 sur l’écran du nœud terminal
permet de demander des données d’un
autre nœud. Vous entrerez l’adresse du
coordinateur et la quantité de données
attendue. Ainsi, le nœud terminal recevra
un message du coordinateur incluant la
quantité de données (length), l’adresse et Figure 17b : Requête pour l'envoi de données du nœud
le buffer de données (arbitraire dans terminal vers le coordinateur
- Outil d’analyse du réseau sans fil
ZigBee Désignation Couleur
Entête trame MAC Blanc
ZENA est un logiciel qui permet l’analyse de toutes Trame MAC de commande et balise Rouge
les communications respectant la norme ZigBee Entête trame NWK (réseau) Beige
disposant des couches physique et MAC 802.15.4 Trame de commandes NWK Fushia
standards. Il peut être considéré comme un espion Entête trame APS (application) Jaune
Payload APS Bleu clair
(SPY ou sniffer) sur le réseau étant donné qu’il ne
Entête trame sécurité et données cryptées Bleu
fait que lire les trames et qu’il ne participe pas aux Inconnu ou invalide Brun olive
communications. Il est comparable à des outils bien
connus pour Ethernet et WiFi tels que wireshark Figure 20 : Code des couleurs pour les trames affichées
par exemple. par ZENA
Il est nécessaire d’installer le logiciel ZENA (Figure Vous suivrez les étapes suivantes pour
18) avant de pouvoir utiliser la carte. Cette
l’initialisation et l’utilisation du logiciel ZENA.
application est disponible sur le CD du kit a) Lancez le logiciel ZENA (Notre version
PICDEMZ et peut également se télécharger sur v3.0)
Internet. Pensez également à télécharger son guide b) Sélectionner le canal de communication
d’utilisation nommé en anglais (ZENA™ Network approprié
Analyzer User's Guide) c) Sélectionnez dans le menu « ZigBee 2006
Tools >> Network traffic monitor ». Vous
Main ouvrirez automatiquement le sniffer de
Packet
Menu
Sniffer paquets.
d) Vous pouvez visualiser l’organisation de
réseau avec tous les nœuds présents. Pour
ZigBeeTM
2006 Tools
cela sélectionnez le menu « ZigBee 2006
Tools >> Network traffic monitor >>
View >> Configuration display ». Si à
Figure 18 : Outil d'analyse des communications sans fil l’ouverture aucune activité n’a eu lieu,
respectant la norme ZigBee vous n’avez qu’un élément inconnu
Vous trouverez sur la Figure 19 un exemple de affiché. Dans le cas contraire, l’affichage
capture de trames de la carte ZENA. Cette intègre toutes les connexions existantes
illustration est composée de 11 trames qui ont été dans le réseau. Vous trouverez un exemple
lues sur le réseau. Pour chaque trame, vous d’organisation simple obtenu à partir des
disposez de plusieurs informations organisées avec trames reçues par le sniffer de paquets sur
des couleurs différentes. Le code vous est donné la Figure 21. N’hésitez pas à utiliser le
dans le tableau de la Figure 20. Toutes les trames guide d’utilisation pour avoir des
sont marquées d’un numéro et d’un temps. informations complémentaires sur le
fonctionnement de l’outil ZENA.
4
Afin d’obtenir ce type de capture, prendre soin de e) Afin de démarrer l’acquisition, vous
lancer cette dernière lorsque le réseau est construit devez cliquer sur le bouton « Start » ou
et stabilisé. Vous risquez sinon de visualiser les sélectionner le menu « Operation >>
trames d’association utilisées lors de la création du Start sniffing/Playback » (Figure 22).
réseau. Ce type d’analyse est également intéressant
mais plus complexe dans un premier temps que
l’analyse des trames liées au simple transport
d’information applicatives.
nœud terminal sollicité pour l’envoi des données
sur la température, puis les données qui seront
affichées sur l’écran de l’Hyperterminal du
coordinateur.
Data
Trame requête du coordinateur requested
5. Conclusion
L’utilisation de la technologie ZigBee/IEEE
Coordinator
802.15.4 telle qu’elle est présentée dans cet article
s’adresse à toutes les personnes désirant découvrir
Router cette technologie de communication sans fil. La
diversité des produits supportant la norme, la
simplicité de mise en oeuvre et l’encombrement
réduit en font un outil privilégié pour des
End device B problématiques embarquées.
Les 2 étudiants de niveau Bac+2 ayant travaillés sur
ce projet n’avaient pour commencer que peu ou pas
End device A
de connaissance sur les technologies de
communication sans fil. La création d’un réseau
Figure 23 : Topologie du réseau mise en oeuvre avec des communications simples entre les nœuds
ne leur a pas posé de problème. La documentation
est abondante, notamment en langue anglaise.
Les trames échangées lors de la requête de demande Le problème de la communication peut être abordé
de données du coordinateur au nœud terminal sont avec plusieurs niveaux de difficulté : de simple
illustrées sur la Figure 24. utilisateur à utilisateur expérimenté. Le premier
Les 3 plus longues trames sont celles qui nous fournit à la carte de transmission les données qui
intéressent. Dans l’ordre d’apparition, nous avons : seront envoyées en respectant le standard.
L’utilisateur plus expérimenté pourra lui-même
- la trame de requête de données envoyée par le formater ses trames (payload) et y inclure tout ce
coordinateur au nœud terminal, qui lui semble utile pour son application. Ce dernier
- la trame pour l’acquittement de la requête du niveau nécessite un minimum de connaissances de
coordinateur envoyée par le nœud terminal la programmation en langage évolué (langage C).
pour indiquer qu’il a bien reçu la demande Les étudiants ont abordé ce deuxième niveau avec
d’envoi de données. Il prend le temps l’acquisition de la température sur la carte mère et
nécessaire pour répondre, la création de leur propre trame. Il est même ensuite
- enfin, la trame réponse du nœud terminal. possible de passer à une analyse encore plus
Celle-ci contient notamment les données que détaillée du réseau ZigBee, en particulier en
le coordinateur lui a demandé, en l’occurrence visualisant et analysant les trames échangées lors de
la valeur de la température au voisinage du la construction du réseau, étape par étape, ou le
capteur du nœud terminal. retrait d’un nœud suite à une panne ou un
Dans ces trames, nous retrouvons plus éloignement radio, mais ceci est une « autre
particulièrement les adresses du coordinateur et du histoire » !
La transposition de cette démarche sur une autre [3] IEEE 802.15.4TM – 2011, IEEE Standard for
plateforme n’est pas insurmontable. N’hésitez pas à local and metropolitan area networks – Part
utiliser les kits de découverte des différents 15.4 : Low-Rate Wireless Personnal Area
constructeurs. Nous pouvons par exemple citer les Networks (LR-WPANs) -
produits proposés par la société CLEODE [10], en http://standards.ieee.org/getieee802/download/
particulier le kit orienté pédagogie EduBee. Ce kit 802.15.4-2011.pdf
complet dispose d’une clé USB coordinateur [4] Cyril ZARADER, « Le protocole sans-fil
(UBee), d’une prise de courant ZBee pilotable par ZigBee/IEEE 802.15.4 et ses applications »,
radio et permettant également des remontées de REE N°10, pp91-98, Revue de l'Electricité et
consommation énergétique, d’une télécommande de l'Electronique, novembre 2004.
ZRC à 5 boutons poussoirs, remontant également la [5] Logiciel MPLAB IDE – lien pour le
température de la pièce, et comme le kit utilisé dans téléchargement : http://www.microchip.com
cet article, d’un espion PacketSniffer associé ici à [6] Modules XBEE et logiciels associés :
une clé USB équipée d’un CI CC2531 de Texas http://www.matlog.com/wireless/modules-
Instrument. zigbee-et-802154/
[7] Modules ARDUINO : http://www.arduino.cc/
[8] Modules Mbed de NXP :
6. Sources bibliographiques http://mbed.org/nxp/lpc1768/
[9] Derrick P. LATTIBEAUDIERE, MICROCHIP
[1] Adrien VAN DEN BOSSCHE, Thierry VAL,
Inc., « AN132 – MICROCHIP ZigBee-2006
Eric CAMPO, « La technologie sans fil
Residential Stack Protocol », 2008.
802.15.4 : son héritage protocolaire et ses
[10] Kit d’évaluation ZigBee domotique et
applications », Techniques de l'Ingénieur,
pédagogique de la société CLEODE :
France - Novembre 2011 http://www.cleode.fr
[2] Groupe de travail IEEE TG4 : [11] Thèse : Jackson FRANCOMME, « Propositions
http://www.ieee802.org/15/pub/TG4.html
pour un protocole déterministe de contrôle
d'accès et de routage avec économie d'énergie
dans les réseaux ZigBee », Université de
Toulouse, Juin 2008.