Vous êtes sur la page 1sur 58

AU : 2008-2009

Universit de Sousse
Ecole Nationale dI ngnieurs de Sousse
Mmoire de Projet de Fin d'tudes
Prsent en vue de lobtention du diplme d
Ingnieur en Gnie lectronique
Conception et dveloppement dun systme dalarme laide
de la technologie ZigBee
Ralis par :
Anis BDIRI Mourad ATTIA
Soutenu le 17 juin 2009 devant le jury
Prsident : M. Taha BEN SALAH, ENISo
Membre du jury : Mme. Imen MARRAKCHI, ENISo
Encadreur : M. Mohamed Lassaad AMMARI, ENISo
Encadreur : M. Abdel Aziz HAMDI, ENISo
ATTIA & BDIRI, 2009
i
Rsum
Notre projet de fin dtudes, en collaboration avec la socit ARABCOM, vise
concevoir et dvelopper un systme d'alarme sans fil en utilisant la technologie ZigBee. Le
dveloppement de l'application est fait par l'utilisation du kit Easy Zigbee Pack de Matrix
Multimedia.
Ce projet nous a permis de matriser la norme ZigBee et les mthodes de configuration
de ses diffrents modules. Ce premier exercice nous a offert la possibilit de puiser des
performances et potentialits de cette technologie pour dvelopper un systme d'alarme
scuris que l'on peut intgrer dans le milieu industriel et domotique.
Mots-cls :
Transmission sans fil, norme ZigBee, rseau, systme dalarme.
ii
Abstract
Our final project, in collaboration with the company ARABCOM aims to design and develop
a security system using wireless technology ZigBee. The development of the application is
made by using the Zigbee kit Easy Pack'' from Matrix Multimedia.
This project allowed us to control the ZigBee standard and the methods of configuring the
various modules. This first application has given us the opportunity to gain performance and
potential of this technology to develop a secure alarm system that can be integrated into the
industrial and home automation.
Keywords:
Wireless transmission, Zigbee, network, burglar and alarm system
iii
=--
=,-- '- ' ,-'' -= -'+-'' , _- ,'-''- - " -= , " --+, _'' ,,=-, ,---
'+= '-` '--' ---, = ',=,',-- _' " --,'' " . -= _'= ---=' ,=--'' ,,=-
" ='- --, ,' " ',-,-,-',- ,-'- - - .
- ' --- '-'= _,--'' - ',=,',-- " '' --, " -,''-', =-- -'-=, -'-=- . '-
--' .'=-'' '-' _- . ,`' ,--'' -'-'-`', -'-`' =,' ',=,',--'' -- ',- -''
.'=-'' _'--`' .-' -,- '--' '+= ,,=-' ='--'' '`' .,--'', ' '--' .
-' ~'--- -' _--'-- :
,'-` -`'--' ',=,',-- -, - -- '+= '--'
iv
Ddi caces
A mon cher Pre et ma chre mre,
Pour le grand amour quils mont donn et me donne encore.
Pour leurs sacrifices qui mont ouvert tous les chemins du succs.
Pour leur gnrosit et leur bienveillance,
J e voudrais ddier ce mmoire comme simple symbole de gratitude et de reconnaissance.
A toute ma famille, frres, sours et leurs enfants et mari, je voudrais dire simplement merci
pour vos encouragements et suivis.
A tout mes amis.
J e voudrais dire merci normment.
A mes chers encadreurs et toute personne qui ma inculp le moindre savoir,
J e voudrais dire que grce vous tous, je suis arriv prsenter ce mmoire
Mourad Attia
v
Ddi caces
A ma chre mre
A mon cher pre
Pour tous les sacrifices quils ont consentis pour mon ducation, pour leur soutient quils
mont apport et leurs grand amour tout au long de ces annes
Que ce travail soit lhumble marque de ma reconnaissance et la modeste preuve de mon
amour et mon respect que jaurai toujours pour eux
A mon frre et ma sour
J e garderais toujours le souvenir de leur bien vaillance mon gard et de leur soutien moral
Quils puissent trouver dans ce travail le tmoignage de lamour et de ma profonde affection
A tous mes amis et ceux qui me sont chers
J e ddie mon travail en signe de reconnaissance surtout mon ami Ahmed
Anis Bdiri
vi
Remerciements
Nous adressons nos remerciements dabord nos encadreurs Mr. Mohamed Lassaad
AMMARI et Mr. Abdel Aziz HAMDI pour leurs suivis, leurs aides et leurs conseils si
prcieux.
Nous tenons galement remercier Mr. Kamel CHARBIB pour sa collaboration,
ses aides et pour leffort quil a fournit durant toute ltape de limportation du kit de
dveloppement et Mr. Mohamed pour son soutient morale.
Nos remerciements sadressent aussi tous les enseignants de notre chre cole et
son administration, spcialement madame la directrice Najoua SOKRI BEN AMARA
Finalement nous remercions tous les membres de jury.
Chers messieurs et madame, veuillez accepter nos respects.
vii
Table des matires
Chapitre 1 : Introduction gnrale...................................................................................1
Chapitre 2 : Prsentation de la norme ZigBee .................................................................3
2.1 Dfinition de la norme ..............................................................................................3
2.1.1 Vue densemble..................................................................................................3
2.1.2 Le protocole ZigBee ...........................................................................................4
2.1.3 Le standard IEEE 802.15.4 .................................................................................5
2.2 Le rseau ZigBee ......................................................................................................6
2.2.1 Les quipements ZigBee ....................................................................................6
2.2.2 Les topologies du rseau ZigBee ........................................................................7
2.2.3 Rseau accs multiples ....................................................................................9
2.2.4 Cration dun rseau ZigBee .................................................................................9
2.2.5 Ladressage dans un rseau ZigBee .................................................................. 10
2.2.6 Modes de transmission ..................................................................................... 11
2.2.7 Routage des paquets ......................................................................................... 12
2.2.8 Mode veille ...................................................................................................... 13
2.2.9 Scurit du rseau ............................................................................................ 14
2.3 Comparaison avec les autres technologies sans fils .................................................. 14
2.4 Applications ZigBee ............................................................................................... 16
Chapitre 3 : Prsentation du kit de dveloppement ...................................................... 17
3.1 Justification du choix du kit .................................................................................... 17
3.2 Les Blocs du kit ...................................................................................................... 17
3.2.1 E-block USB Multiprogrammer........................................................................ 17
3.2.2 E-Block LED board .......................................................................................... 18
3.2.3 E-Block Switch board ...................................................................................... 19
3.2.4 E-Block LCD board ......................................................................................... 19
3.2.5 E-Block sensor interface ................................................................................... 20
3.2.6 E-block Zigbee board ....................................................................................... 20
3.3 Logicielles fournits ................................................................................................. 22
Chapitre 4 : Ralisation du systme d`alarme ............................................................... 24
4.1 Le systme dalarme ............................................................................................... 24
viii
4.1.1 Description du fonctionnement du systme ....................................................... 24
4.1.2 Dcomposition du systme ............................................................................... 25
Conclusion et perspectives .............................................................................................. 38
Bibliographie................................................................................................................... 39
Glossaire .......................................................................................................................... 40
Annexes ........................................................................................................................... 41
ix
Liste des tableaux
Tableau 1 : Comparaison entre les FFD et les RFD .................................................................6
Tableau 2 : Comparaison entre les diffrentes technologies sans fils ..................................... 15
x
Liste des figures
Figure 1 : Organigramme de la socit ....................................................................................2
Figure 2 : Comparaison entre les diffrents types de rseau ....................................................3
Figure 3 : Les sept couches du model OSI ..............................................................................4
Figure 4 : Les couches du protocole ZigBee ...........................................................................4
Figure 5 : Rseau en toile ......................................................................................................7
Figure 6 : Rseau en arbre ......................................................................................................8
Figure 7 : Rseau en maille .....................................................................................................8
Figure 8 : Scnario de transmission dans le mode Unicast ............................................... 11
Figure 9 : Diagramme du Bloc Multi programmateur............................................................ 18
Figure 10 : Diagramme du Bloc LED Board ......................................................................... 19
Figure 11 : Diagramme du Bloc SWITCH Board .................................................................. 19
Figure 12 : Diagramme du Bloc LCD Board ......................................................................... 20
Figure 13 : Diagramme du Bloc Sensor Interface ................................................................. 20
Figure 14 : E-Block Zigbee board ......................................................................................... 21
Figure 15 : Modle dune AT commande .............................................................................. 21
Figure 16 : Environnement de programmation Flowcode ...................................................... 22
Figure 17 : Systme dalarme ............................................................................................... 24
Figure 18 : Coordinateur du rseau ....................................................................................... 25
Figure 19 : Organigramme de fonctionnement du coordinateur ............................................. 26
Figure 20 : Organigramme de connexion aux deux nouds .................................................... 27
Figure 21 : Organigramme de rception des informations ..................................................... 28
Figure 22 : Trame dinformation reue par le coordinateur de la zone 1 ou de la zone 2 ........ 28
Figure 23 : Organigramme de traitement des informations reues ......................................... 29
Figure 24 : Loctet 4 de la trame dinformation ..................................................................... 30
Figure 25 : Noud 1 du rseau ............................................................................................... 31
Figure 26 : Organigramme de fonctionnement du noud 1 ..................................................... 32
Figure 27 : Organigramme de connexion au coordinateur ..................................................... 33
Figure 28 : Organigramme de saisie du code ......................................................................... 34
Figure 29 : Organigramme denvoi dune trame dinformation ............................................. 35
Figure 30 : Noud 2 du rseau ............................................................................................... 36
Figure 31 : Organigramme de fonctionnement du noud 2 ..................................................... 37
1
Chapitre 1 : Introduction gnrale
Les rseaux industriels jouent un rle trs important dans les applications de contrle et de
supervision. En parallle, les rseaux domotiques sont de plus en plus prsents dans les
foyers. Pour ces deux types de rseaux, les trames de donnes sont de petites tailles. Les
applications industrielles de supervision et celles domotiques ne ncessitent pas une large
bande de transmission.
Depuis quelques annes, les rseaux classiques cbls sont en train de cder place aux rseaux
sans fil peu consommateurs d'nergie, fiables et porte restreinte ou moyenne. Cette
tendance conomique permet de se passer du coteux cblage qui rduit la flexibilit des
rseaux.
Les technologies sans fil courte et moyenne porte attirent l'attention grce leur capacit
de supporter de multiples applications et leur efficacit. Ces technologies sont adoptes pour
les applications domotiques, les applications dautomatisation industrielle et pour les rseaux
de capteurs.
Parmi ces technologies sans fil utilises dans les applications industrielles et domotiques,
ZigBee est une solution qui perce grce sa performance, sa simplicit et sa faible
consommation d'nergie.
On se propose, travers ce projet de fin d'tudes, qui s'inscrit dans le cadre d'une entente de
partenariat entre l'cole Nationale d'Ingnieurs de Sousse et la socit ARABCOM, de
matriser le principe de fonctionnement ZigBee et de concevoir une application se basant sur
cette technologie. L'application implmente consiste en un systme d'alarme usages
industriel et domestique. Le savoir-faire que lon peut acqurir par ltude et lemploi de la
norme ZigBee nous permettra son utilisation dans une panoplie d'autres domaines.
Spcialise dans les domaines des tlcommunications et des maquettes didactiques,
ARABCOM est une socit responsabilit limite, cre en 1988, implante Sousse et
dont les principales activits sont ltude, la fabrication et linstallation de matriel de
radiocommunication. Elle prend aussi en charge les tches de sonorisation, de tldistribution
ainsi que la fabrication de quelques dispositifs de commande et dalimentation lectrique. Elle
assure notamment la maintenance des appareils lectroniques. Son organigramme est prsent
par la figure 1.
2
Figure 1 : Organigramme de la socit
Pour raliser l'tude et la conception de l'application, nous avons suivi les tapes ci-dessous :
tude bibliographique sur les qualits de la norme ZigBee (tudes comparatives entre
normes similaires, avantages, inconvnients, etc.).
Recherche dun kit pour le test et la vrification des caractristiques de la norme.
Test pratique du kit de dveloppement utiliser et des diffrents blocs associs
(initiation aux environnements de programmation associs, test des quipements,
configuration des blocs ZigBee et des mthodes de communication relatives la
norme, etc.).
Ralisation dune application pratique (conception et dveloppement dun systme
dalarme laide de la technologie ZigBee).
Ce rapport comporte trois chapitres. Le premier chapitre permet de prsenter la norme
ZigBee. Le deuxime chapitre est une description du kit utiliser. Le troisime chapitre dcrit
l'application et les diffrentes tapes de travail relatives sa mise en marche.
Direction Gnrale
Equipe de
mesure et
dessais
Equipe
dinstallation
Equipe
demballage et
stockage
Equipe
dimplantation
des
composants
Bureau
dtudes
3
Chapitre 2 : Prsentation de la norme ZigBee
2.1 Dfinition de la norme
2.1.1 Vue d`ensemble
ZigBee est le nom donn une suite spcifique de protocoles de communication radio haut
niveau faible consommation dnergie, base sur le standard IEEE 802.15.4 des rseaux
personnels sans fils WPAN (Wireless Personnel Area Network).
La figure 2 ci dessous compare les diffrents types de rseaux.
WPAN, WLAN (Wireless Local Area Network), WMAN (Wireless Metropolitan Area
Network) et WWAN (Wireless Wide Area Network).
Figure 2 : Comparaison entre les diffrents types de rseau [1]
Les rseaux WWAN sont domins par les technologies du radio cellulaire. Les rseaux
WPAN sont domins par les UWB (Ultra Wide Band radio technology), utilises pour les
systmes haut dbit de transfert et courte distance (10 mtres). Conus pour des systmes
faible consommation, faible cot et taille rduite. Le standard IEEE 802.15 a dfini trois
classes de WPAN classifis selon le dbit de transfert de donnes, le niveau de consommation
dnergie et leurs performances.
Les WPAN haut dbit, utilisant la technologie UWB, sont ddis aux applications multi
media orientes flots de donnes.
Les WPAN moyen dbit (IEEE 802.15.1/Bluetooth) touchent les applications du domaine
radio mobile.
Les WPAN bas dbit, (IEEE 802.15.4/ ZigBee), servent certaines applications industrielles,
domotiques et mdicales avec un cot minimal et un bas niveau de consommation dnergie.
Un rseau base de ZigBee relie plusieurs quipements lectroniques (noeuds). Chaque noud
du rseau constitue une partie de la chane de transmission, reoit les messages, dcide si le
message est usage local, et le retransmet aux autres nouds sinon.
4
Lusage courant du ZigBee se manifeste dans les rseaux de capteurs. Par exemple dans un
environnement industriel plusieurs nouds ZigBee peuvent tre installs rapidement pour
fournir une connexion sans fil de plusieurs capteurs ncessaires pour les systmes dalarme et
de prvention dincendies.
2.1.2 Le protocole ZigBee
Les rseaux dordinateurs sont toujours simplifis par lusage du model OSI. Il est compos
de 7 couches. Chaque couche est responsable deffectuer un ensemble de tches bien
dtermines. Les tches qui concernent une couche donne peuvent tre implmentes
indpendamment des autres couches. Cela permet que les solutions offertes par une couche
puissent tre mis jour sans affecter les autres couches.
La figure 3 ci dessous montre les 7 couches du model OSI :
Application
Prsentation
Session
Transport
Rseau
Liaison
Physique
Figure 3 : Les sept couches du model OSI
Le protocole ZigBee peut tre vu comme trois couches spares, chacune a ses fonctions
spcifiques. Ces spcifications sont montres dans la figure 4.
Couche Application
Contrler lapplication qui tourne dans les quipements ZigBee
Par exemple : capture de temprature
Couche de la pile ZigBee
Les protocoles qui vrifient le routage des donnes la bonne destination toute en assurant
la scurit de transmission
Le standard IEEE 802.15.4
La sous-couche MAC (Medium Access Control) : responsable de ladressage (o les donnes
vont tre transmises et do les donnes sont reues)
La sous-couche PHY (Physical layer) : responsable de la transmission radio
Figure 4 : Les couches du protocole ZigBee [1]
Application
Transfert des donnes
5
2.1.3 Le standard IEEE 802.15.4
Le standard IEEE 802.15.4 pour les communications sans fils a t dvelopp par la branche
amricaine de linstitue IEEE (Institute of Electrical and Electronics Engineers) responsable
des technologies de communication.
Parmi les standards, nous citons la norme IEEE 802.11 qui couvre les communications sans
fils LAN (Local Area Network) et qui concerne les communications haut dbit, tandis que le
standard 802.15.4 concerne les applications bas dbit o une simple connexion et une faible
consommation dnergie suffit. En effet le standard 802.15.4 dfinit deux sous-couches ; PHY
(Physical layer) et MAC (Medium Access Control).
La sous-couche PHY
La sous-couche PHY dfinit trois bandes RF non licencis ; cela inclue une bande qui opre
2.4 GHz avec un dbit de 250 Kbits/s, une bande pour le march des Etats Unies qui opre
915 MHz un dbit de 40 Kbits/s et une autre pour le march europen et le Japon qui opre
868 MHz un dbit de 20 Kbits/s.
La bande de 868 MHz offre un seul canal de communication (canal 0), tandis que la bande de
915 MHz offre dix canaux de communication (canal 1 - canal 10).
Pour la bande de 2.4 GHz, il y a seize canaux de communication, une largeur de 5 MHz
chacune, numrotes de 11 26.
Autres responsabilits pour la sous-couche PHY inclue la dtection de transmission pour les
nouveaux nouds et lvaluation de la qualit des liaisons avec les autres nouds.
La sous-couche MAC
La spcification de la sous-couche MAC, dfinit comment les frquences radios du standard
802.15.4 oprent dans la mme zone et gre les mthodes de multiplexage. Elle utilise la
technique CSMA-CA (Carrier Sensing Multiple Access with Collision Avoidance) pour contrler
si un noud est autoris dmettre ou non afin dviter les collisions. (Une collision apparat si
deux nouds mettent aux mme temps.)
Les types des quipements IEEE 802.15.4
Le standard dfinit deux types dquipements :
- Les FFD (Full Function Device) : Les quipements qui grent les fonctions de
routage, de coordination, de cration des rseaux et dautres fonctions de gestion.
- Les RFD (Reduced Function Device) : Les quipements qui interagissent directement
avec les capteurs et les processus de lapplication.
Les quipements FFD exigent souvent plus dnergie que les RFD pour tre toujours en tat
de marche afin de faciliter la gestion et le routage dans un rseau. Les quipements FFD sont
capables de communiquer avec les RFD et les autres FFD, tandis que les RFD sont capables
seulement de communiquer avec les FFD.
6
2.2 Le rseau ZigBee
Comme on a vu prcdemment, la sous-couche MAC du standard IEEE 802.15.4 dfinit deux
types dquipements, les FFD et les RFD. Le tableau 1 relve les principales diffrences entre
ces diffrents quipements :
FFD RFD
On peut le trouver dans nimporte quelle
topologie
On le trouve gnralement dans la topologie
toile
Peut tre le coordinateur du rseau Ne peut pas servir comme coordinateur du
rseau
Capable de communiquer avec les
quipements RFD et FFD
Capable de communiquer seulement avec les
quipements FFD
Doit tre toujours sous tension Aliment gnralement avec une batterie
Tableau 1: Comparaison entre les FFD et les RFD [1]
Les RFD ncessitent moins de ressources que les FFD au niveau RAM et ROM
cest pourquoi ils sont moins chers.
Les quipements RFD de ZigBee peuvent chercher les rseaux qui sont portes,
transfrer les donnes de leur application, demander des donnes du coordinateur
du rseau, se mettre en veille pour de longues priodes afin de rduire le niveau de
consommation dnergie. (cest pourquoi ils sont aliments gnralement par des
batteries).
Les FFD peuvent servir comme un coordinateur du rseau ou un routeur.
2.2.1 Les quipements ZigBee
Dans la couche rseau de la pile ZigBee, le software est capable de reconnatre trois types
dquipements ZigBee :
- Le coordinateur du rseau ZigBee
- Le routeur ZigBee
- Le terminal ZigBee
Coordinateur
Le coordinateur est un quipement FFD, responsable de crer le rseau ZigBee, assigner les
canaux de transmission, assigner les adresses et ajouter des nouds dans le rseau. On peut
trouver seulement un seul coordinateur dans un rseau ZigBee. Il est gnralement aliment
par lnergie lectrique et est localis dans une position fixe. Donc pour accder au rseau, il
est indispensable de passer par le coordinateur. Si ce dernier est mis hors tension, les
nouveaux nouds ne peuvent pas joindre le rseau mais les nouds qui ont dj une adresse
reste toujours fonctionnels.
Routeur
Le routeur est un quipement FFD, responsable du routage des paquets entre les diffrents
nouds. Il peut tre aussi utilis pour tendre la porte du rseau. Il est toujours mis en marche
pour pouvoir maintenir le routage dans le rseau. Et puisquil est toujours aliment, il doit tre
7
localis dans une position fixe. Il peut tre aussi utilis pour accder au rseau si et seulement
si le coordinateur lui permet davoir cette fonctionnalit.
Terminal
Les terminaux sont utiliss pour communiquer avec le monde extrieur qui ne peut tre que
des RFD. Par exemple, les terminaux peuvent tre connects des capteurs, des switcheurs,
des crans etc. Ils ne consomment pas beaucoup dnergie. Ils sont aliments par des batteries
et peuvent se mettre en veille pour rduire davantage leurs consommations dnergie. En fait,
les terminaux ne peuvent pas communiquer directement avec les autres terminaux. Mais ils
peuvent communiquer travers les routeurs ou le coordinateur du rseau.
2.2.2 Les topologies du rseau ZigBee
La couche rseau de la pile ZigBee peut reconnatre trois types de topologies :
- La topologie toile
- La topologie en arbre
- La topologie en maille
La topologie toile
Une topologie en toile est constitue par un seul coordinateur de rseau et un ou plusieurs
quipements terminaux. Tous les terminaux ne communiquent quavec le coordinateur. Ainsi,
si un noud terminal veut transmettre des donnes un autre noud terminal, il le transmet
travers le coordinateur. En fait, cette topologie nest pas fiable car en cas o le coordinateur
tombe en panne tout le rseau devient non fonctionnel. La figure 5 reprsente un exemple de
cette topologie.
Symboles
Figure 5 : Rseau en toile [4]
La topologie en arbre
Dans une topologie en arbre, le coordinateur est connect soit des routeurs soit des nouds
terminaux. Comme lindique la figure 6 le routeur peut tre aussi connect soit des autres
routeurs soit des nouds terminaux en plus du coordinateur.
Le routeur permet ainsi de :
- Augmenter le nombre des nouds qui peuvent joindre le rseau.
- Etendre la porte du rseau, pour que les nouds qui sont loigns du coordinateur
puissent le joindre.
Coordinateur
Terminal
8
Comme pour la topologie en toile, les nouds terminaux ne peuvent pas communiquer entre
eux. Ainsi les messages peuvent tre transmis soit travers le coordinateur soit travers les
routeurs. En effet, il existe plusieurs chemins possibles entre source et destination et cest au
routeur de choisir le chemin appropri.
Symboles
Figure 6 : Rseau en arbre [4]
La topologie en maille
La topologie en maille, prsent dans la figure 7 est une modification de la topologie en arbre.
En effet la communication est plus flexible mais les nouds terminaux restent toujours
incapables de communiquer directement entre eux. Tandis que les FFD peuvent communiquer
directement entre eux sans tre obligs de suivre la structure en arbre.
Les avantages de cette topologie sont :
- La latence des messages qui peut tre rduite.
- La fiabilit augmente laide des chemins alternatifs disponibles.
Symboles
Figure 7 : Rseau en maille [4]
Coordinateur
Routeur
Terminal
Coordinateur
Routeur
Terminal
9
2.2.3 Rseau accs multiples
Les trois topologies prsentes prcdemment permettent aux nouds ZigBee une gale
priorit daccs au rseau. Cest pour cela ces rseaux sont dits accs multiples. Il existe
deux mcanismes daccs beacon et non-beacon .
Accs Beacon
Un noud dans un rseau accs beacon peut transmettre et recevoir des donnes
seulement dans le laps de temps dsign pour lui. Cela permet de grer les communications et
surtout de rduire les collisions.
Le coordinateur gnre priodiquement une super trame, dite trame beacon . Tous les
nouds dans le rseau sont demands de synchroniser leurs horloges cette trame.
Gnralement, dans un rseau accs beacon les nouds terminaux se rveillent juste
avant que cette trame soit gnre. Ils assurent le transfert des donnes puis se mettent en
veille de nouveau jusqu la prochaine super trame. Dans ce mode, le coordinateur peut tre
aliment par une batterie et les nouds terminaux peuvent se mettre en veille afin de rduire la
consommation du rseau.
Accs Non-Beacon
Les nouds dans un rseau accs non-beacon sont capables de transmettre nimporte
quel instant o le canal radio est libre. Cela permet de crer un environnement ouvert pour
tous o les collisions peuvent se produire rgulirement quand deux ou plusieurs noeuds
transmettent en mme temps. Pour ce mode, le coordinateur et les routeurs doivent tre
toujours actif. Par consquent, il est recommand de maintenir ces quipements aliments.
2.2.4 Cration d`un rseau ZigBee
Pour crer un nouveau rseau ZigBee, il faut configurer le coordinateur qui va chercher les
autres quipements tout en fixant le ou les canaux ncessaires pour la communication. Pour
tablir notre propre rseau, ce dernier doit avoir un PAN ID (Personal Area Network
IDentifier). En Effet chaque rseau ZigBee doit avoir son propre identificateur (de type
PAN ID = 0x234).
Donc, pour changer dun rseau un autre, il faut changer didentificateur.
Aprs la configuration du coordinateur, tous les quipements ZigBee peuvent joindre le
rseau. On parle ainsi de routeurs et de nouds terminaux. En fait, les routeurs et le
coordinateur sont les seuls qui permettent aux autres quipements de joindre le rseau. La
procdure de connexion se fait comme suit :
Le nouveau noud scanne tous les canaux disponibles et cherche les rseaux qui sont
porte.
Si le noud dtecte la fois un routeur et un coordinateur du mme rseau, il choisit
gnralement celui qui lui transmet le signal le plus puissant. Il essaye ensuite de se
connecter ce dernier tout en envoyant une demande de connexion au rseau.
Si la configuration du rseau permet ce noud de joindre le rseau, le coordinateur ou
le routeur qui transmet le signal le plus puissant permet dattribuer ce noud une
adresse pour quil puisse communiquer dans le rseau.
Le coordinateur est configur de faon avoir le maximum de nouds par parents.
Prcisment, il permet davoir un nombre maximum de nouds possibles par routeur.
10
Le coordinateur peut aussi tre configur pour fixer le nombre maximal de sauts possibles
dans le rseau (ce sont les sauts partir du coordinateur jusquau plus loin noud dans le
rseau).
Ces limites peuvent empcher un noud de joindre le rseau si ses parents ont t dj associs
avec leur nombre maximal de nouds possibles. Sinon, le noud doit parcourir le rseau tout en
respectant le nombre maximal de sauts possibles pour se connecter un routeur ou au
coordinateur sil est porte. Un tel noud est appel orphelin.
Les quipements du rseau peuvent sauvegarder les informations des nouds voisins dans un
tableau appel neighbour table .
Un quipement dans le rseau peut tre dsassoci quand il envoie une demande pour le
quitter.
2.2.5 L`adressage dans un rseau ZigBee
Le kit ZigBee de MatrixMultimedia, que nous allons prsenter dans le chapitre suivant, utilise
la version 2 du module XBEE ZigBee qui est configur pour associer jusqu sept nouds fils.
Chaque noud dans le rseau ZigBee peut avoir jusqu trois types dadresses possibles, une
adresse MAC, adresse rseau et un nom.
Les adresses MAC
Chaque noud ZigBee a son unique adresse MAC compose de 64 bits assigne par lIEEE.
Cest une adresse physique, connue par ladresse IEEE ou ladresse tendue. En effet, on peut
lutiliser pour scuriser un tel rseau contre les communication non dsires tout en scannant
les adresses MAC des nouds qui veulent joindre le rseau et tout en rfrant au liste des
adresses MAC permises pour se connecter. Le coordinateur peut accepter comme il peut
rejeter un noud de joindre le rseau.
Les adresses du rseau :
Cest une adresse compose de 16 bits qui permet didentifier un noud dans le rseau. Ce
nest pas unique comme ladresse MAC car on peut trouver la mme adresse dans un autre
rseau. Cette adresse est appele aussi ladresse courte, attribue par le noud parent (routeur
ou coordinateur) quand un quipement vient de joindre le rseau. Le coordinateur prend
toujours ladresse 0x0000.
Dans certains cas, ladresse dun noud dans le rseau peut changer. Par exemple, dans le cas
dun noud mobile, ou dans le cas o le noud parent (on parle ici du routeur) est dconnect.
Cest pourquoi, de prfrence on procde un adressage dynamique des nouds pour
maintenir leur connexion dans le rseau.
Adressage par nom
A chaque noud, on peut assigner un nom sous la forme dune chane de caractres qui peut
avoir jusqu vingt caractres ASCII. Ce type dadressage est utile dans le cas de cration
dun rseau dynamique, qui est capable de scanner ou de chercher des nouds particuliers. On
peut appeler les nouds qui incluent des capteurs par des noms qui commencent par CP.
Quand le coordinateur ajoute des nouds additionnels, il peut scanner les noms des nouds et
11
sil trouve des noms qui commencent par CP, il saura ces nouds possdent des capteurs.
Cela permet de facilite la gestion du rseau.
2.2.6 Modes de transmission
Les quipements ZigBee utilisent leurs adresses MAC pour se communique afin de
joindre le rseau. Une fois la connexion a t tablite, on lui attribut une adresse de 16 bits lui
permettant de communiquer avec les autres quipements du rseau.
La norme 802.15.4 utilise deux modes de transmission ; le mode unicast et le mode
broadcast .
Mode Unicast
Dans ce mode, les messages sont transmis un seul quipement. En fait, cest seulement celui
qui possde ladresse de lentte du message qui laccepte, les autres le rejettent. Dans ce cas,
le noud destination doit transmettre un accus de rception sous forme dun message de type
Unicast au noud source pour confirmer la rception du premier message.
La figure 8 illustre un scnario qui peut dcrire la procdure du mode de transmission
Unicast :
Figure 8 : Scnario de transmission dans le mode Unicast [1]
Source
Destination
Source
Destination
Source
Destination
Message
Message
Accus
Accus
Source
Destination
Source
Destination
Source
Destination
Message
Message
Accus
Accus
12
Mode Broadcast
Dans ce mode, tous les nouds actifs dans le rseau reoivent et analysent les messages. Et
chaque noud qui reoit le message doit le transmettre en mode Broadcast pour tendre sa
porte. Ce mode de transmission est gnralement utilis dans le cas o un quipement essaye
de joindre un rseau ou dans le cas de routage des paquets. En fait, le mode Broadcast
cause beaucoup de perturbations pour le fonctionnement du rseau, car tous les nouds doivent
participer dans la transmission. Cela augmente les retards de transmission surtout dans le cas
des rseaux tendus. Cest pourquoi, le nombre des Broadcast doit tre le minimum
possible. En effet, les messages transmis en ce mode ne sont pas suivis par un accus de
rception.
Les messages en mode Unicast prennent beaucoup moins de temps que les messages
transmis en mode Broadcast , en effet seulement le noud source et le noud destination
sont concerns par la transmission et dans le pire des cas on trouve un ou plusieurs nouds
intermdiaires. Un autre avantage de ce mode de transmission est laccus de rception qui
nous permet de savoir si un message est transmit ou non la destination.
2.2.7 Routage des paquets
Pour quun message soit transmit dune source une destination, il faut avoir un mcanisme
qui permet un noud de localiser un deuxime noud et lui envoyer les donnes.
Dans les rseaux en toile, la tche nest pas complexe car tous les nouds terminaux
communiquent directement travers le coordinateur central. Pour les autres topologies, cela
demande plus de travail en ce qui concerne les routages des paquets.
Dans une topologie en arbre, il y a deux types de routage des paquets ; soit le routage en arbre
soit le routage dynamique.
Pour les petits et statiques rseaux, le routage en arbre est le meilleur. Sil y a un risque quun
noud cesse de fonctionner ou quon a des donnes critiques transmettre, le routage en arbre
demeure ainsi inefficace, dans ce cas on peut utiliser la procdure de routage dynamique.
Dans un rseau en maille, de prfrence on utilise le routage dynamique vu que pour ce type
de rseau on trouve plusieurs voies possibles entre source et destination.
Routage en arbre
Lide de cette mthode est dutiliser la structure du rseau en arbre pour le routage des
paquets. La premire dcision que la source doit faire est de choisir dans quel sens, vers le
haut ou vers le bas, faut-il envoyer les paquets. La rponse peut tre trouve tout en
examinant la structure dadressage.
Quand un noud reoit un paquet, il vrifie si cest lui la destination ou lun de ses
descendants. Si cest le cas, il accepte le paquet sinon il le renvoie au noud appropri.
Le problme avec cette technique est que le chemin pris par les paquets peut tre trs long car
pour ce type de routage on suit la structure du rseau, tandis quil se peut quil y ait un chemin
plus court.
Lefficacit du routage peut tre amliore quand le rseau ZigBee permet aux routeurs de
chercher des chemins raccourcis entre la source et la destination. On parle ainsi du routage
dynamique.
13
Routage dynamique
La procdure utilise gnralement le mode de transmission Broadcast . Le noud source ne
sait pas o il va transmettre le message ou le paquet donc il procde au mode Broadcast
pour que tous les nouds proches reoivent le message. Lidal est dutiliser ce mode
seulement si cest ncessaire afin de limiter les troubles dans le rseau.
La technique utilise par le routage dynamique est base sur lalgorithme AODV (Ad hoc On
demand Distance Vector algorithm). La procdure commence quand un noud source envoi un
paquet de demande de voie de communication en mode Broadcast . Ce paquet contient des
informations comme ladresse de la destination dsire, ladresse de la source (pour que le
noud metteur peut recevoir les informations voulus comme accus) et un identificateur de
demande de voie appel Route Request ID qui sert aux nouds rcepteurs de connatre si
cette demande a t traite ou non avant.
Quand un noud reoit cette demande, elle utilise le Route Request ID pour vrifier sil a
reu ou non cette demande avant. Si oui, il procde un rejet de ce paquet sinon il incrmente
le compteur des sauts (qui mesure le nombre de sauts pris par le paquet pour arriver ce
noud) puis il le retransmet en mode Broadcast .
Et comme la demande circule dun noud un autre, on enregistre automatiquement le chemin
parcouru ds la source, car chaque noud, quand il reoit le paquet, il enregistre ladresse du
noud voisin qui lui a envoy ce paquet.
Tous les routeurs ventuellement peuvent recevoir la demande puisquelle est transmise en
mode Broadcast . Ils envoient donc une rponse au noud source. Et comme la rponse
parcourt le rseau en retour, chaque routeur rencontr peut tablir un tableau de routage qui
contient le bon chemin vers le noud destination.
2.2.8 Mode veille
Les nouds terminaux utilisent le mode veille pour rduire leur consommation en nergie.
Ceci permet daugmenter la dure de vie de batteries utilises par ces nouds.
La version 2 du module XBEE peut tre utilise sous deux formes du mode veille (dfini par
le constructeur) :
- Cyclic sleep
- Pin sleep
Cyclic sleep
Ce mode utilise la mthode de veille cyclique pour rduire la consommation en nergie.
Ainsi, le noud entre en mode veille pour un temps bien dtermin et se rveille aprs pour un
temps fix. Cette procdure stablit cycliquement. Pendant la dure de veille du noud, ses
parents enregistrent les messages transmis pour lui. Quand le noud se rveille, il transmet une
demande ses parents dans laquelle il vrifie sil y a des messages transmis pour lui pour les
recevoir.
Cette opration est contrle par un timer qui se met zro chaque fois que le noud
entre en mode veille. Les parents du noud qui se met en veille acceptent tous les messages
adresss ce noud et les enregistrent dans un buffer jusqu ce que le noud se rveille.
14
Ces messages sont appels ainsi des messages indirects . Les parents ne peuvent
enregistrer quun seul message indirect chaque fois le noud entre en mode veille.
Aprs un certain temps appel timeout period tout message enregistr dans le buffer
doit tre effacs.
Quand un message na pas pu tre collect avant lcoulement du timeout period , le noud
parent peut conclure quil y a un problme concernant le noud terminal. Ce problme peut
tre enregistr puis utilis pour signaler quun noud a chou de se rveiller.
Nous signalons que les nouds parents ne peuvent pas enregistrs des messages transmis en
mode Broadcast .
Pin sleep
Ce mode met le module XBEE en veille et le rveille en changeant le voltage pour le pin
sleep enable . En effet, quand le pin prend un 1 logique, le module termine ce quil vient
de transmettre ou de recevoir puis entre en mode veille. Quand il est en veille le module ne
rpond plus toutes activits relies au rseau, et quand on veut le rveiller on applique sur
son pin sleep enable un 0 logique.
Quand on utilise ce mode de veille, les paquets destins pour le noud qui est en veille vont
tre sauvegards pour une priode bien dtermin. Cest pourquoi le noud doit se rveiller
des priodes rguliers pour vrifier sil y a des messages transmis pour lui.
2.2.9 Scurit du rseau
Les rseaux ZigBee sont bien scuriss. Ils contiennent plusieurs mesures de scurit pour
prvenir toute intrusion indsirable des pirates ou des rseaux ZigBee voisins. Ces mesures
incluent :
- Les listes de contrle daccs. Ainsi, seulement les nouds dfinis comme amis
peuvent joindre le rseau. Le coordinateur contient un tableau dadresses MAC des
quipements qui peuvent joindre le rseau.
- Les timer des messages sont remis zro. En fait, les messages qui dpassent les
dlais de transmission sont rejets pour prvenir toute nouvelle tentative dattaque au
rseau.
- Un cryptage AES 128 bits. Un algorithme de cryptage AES 128 bits implment sur le
module XBEE assure la scurit des transmissions. Si le cryptage est permis, le
coordinateur pourra utiliser une cl de cryptage AES 128 bits et seul les quipements
qui ont la mme cl pourront communiquer dans le rseau. Cest pourquoi les routeurs
et les nouds terminaux doivent tre configurs ds le dbut avec la bonne cl de
cryptage. Il existe une autre option mais qui est peu scurise. On procde comme
suit : quand un noud veut joindre le rseau et si son adresse MAC se trouve dans le
tableau des adresses permises on lui envoi ainsi la cl.
2.3 Comparaison avec les autres technologies sans fils
En comparant ZigBee avec les autres technologies sans fils :
15
ZigBee :
- Est adopt en dcembre 2004
- Est ddi pour les applications de contrle dans lindustrie o on na pas besoin dun
haut dbit de transfert des donnes
- Offre un dbit de 250 Kbits une frquence dopration de 2.4 GHz, 40 Kbits 915
MHz et 20 Kbits 868 MHz avec un port de 10 100 mtres.
- Son cot est peu prs la moiti du cot du Bluetooth
- Supporter jusqu 256 quipements ou nouds
- Consomme considrablement moins que le Bluetooth
Bluetooth :
- Est adopt en 1994
- Est conu pour les applications de son qui ncessite beaucoup plus au niveau de dbit
que les applications base de ZigBee
- Opre une frquence de 2.4 GHz aussi
- A une porte dans les alentours de 10 mtres
- Consomme entre 40 100 mW par noud ou quipement
- Peut supporter jusqu 8 nouds dans un mme rseau
Wi-Fi :
- Est adopt en 1998
- Trois fois plus chre que le Bluetooth
- Consomme peu prs cinq fois plus que le Bluetooth
- 802.11a opre la frquence de 5 GHz un dbit qui peut aller jusqu 54 Mbits/s
- 802.11b opre la frquence de 2.4 GHz un dbit qui peut aller jusqu 11 Mbits/s
- 802.11g opre la frquence de 2.4 GHz un dbit qui peut aller jusqu 54 Mbits/s
- 802.11n opre la frquence de 5 GHz un dbit qui peut aller jusqu 100 Mbits/s
Cette comparaison peut se rsumer dans le tableau 2 ci dessous :
ZigBee
(802.15.4)
Bluetooth
(802.15.1)
802.11a 802.11b 802.11g 802.11n
Dbit
(Mbits/s)
0.03 1-3 54 11 54 200
Porte
(m)
30 10 45 60 60 150
Consommation
(mW)
30 100 1500 750 1000 2000
Large de
bande (MHz)
0.3 1 20 22 20 40
Facteur (cot) 1 1.5 6 2.5 4.5 10
Tableau 2 : Comparaison entre les diffrentes technologies sans fils [5]
16
En fait, les raisons de choisir le ZigBee sont :
- Cot rduit
- Fiabilit leve
- Consommation rduite
- Scurit leve
- Capacits dauto correction
- Nombre lev de nouds possibles supports
- Facilit de manipulation
- Possibilits doptimisation dans le routage des paquets
2.4 Applications ZigBee
La technologie ZigBee offre des possibilits de ralisation des btiments intelligents , soit
domicilie soit au lieu de travail. Cela peut tre prprogramm, gr par une tlcommande
ou mme par un PDA (Personal Digital Assistant).
Un systme de contrle ZigBee peut offrir :
- Un contrle automatique des systmes dclairage
- Une souplesse dans le contrle de chauffage et de climatisation
- Des systmes de scurit fiable
- Un contrle automatique de lenvironnement
On retrouve donc la technologie ZigBee dans des environnements embarqus o la
consommation est un critre de slection. Ainsi, la domotique et les nombreux capteurs
quelle implmente apprcie particulirement cette technologie et dont la configuration du
rseau maille se fait automatiquement en fonction de lajout ou de la suppression de nouds.
On retrouve aussi ZigBee dans les contrles industriels, les applications mdicales, les
dtecteurs de fume et dintrusion
Les nouds terminaux sont conus pour fonctionner plusieurs mois (jusqu dix ans pour les
moins consommant) en autonomie complte grce une simple pile alcaline de 1,5V.
17
Chapitre 3 : Prsentation du kit de dveloppement (Easy
Zigbee pack)
3.1 Justification du choix du kit
On a montr prcdemment que pour pouvoir sinitier la norme Zigbee, on doit la tester
travers des programmes. Pour ce faire, nous devons avoir une multitude de configurations de
priphriques.
Pour concevoir notre application, nous avons men une tude comparative entre les diffrents
kits existants sur le march afin de choisir le plus adquat. Notre choix ctait fix sur le kit
Easy Zigbee Pack de Matrix Multimedia pour ses qualits de ces E-blocks, permettant de
lui associer diffrents blocs la fois. Cela permet dassurer une multitude dapplication.
Puisque notre application va ncessiter lutilisation de norme de communication sans fil
(norme Zigbee), nous aurons besoin des blocs assurant le transfert, lacquisition et laffichage
des donnes etc...
En plus le kit contient un logiciel nomm Flowcode qui prend en compte les diffrentes E-
blocks du kit et leur configuration logicielle, pour une programmation plus simple et rapide.
Lentreprise ARABCOM a pris en charge lachat du kit pour la ralisation de notre projet.
Les parties matrielles du kit sont constitues de :
- Trois blocs supports de microcontrleurs PICmicro nomms Multi programmateur
(Multiprogrammer) dots dun microcontrleur 16F88 et ayant une connexion vers les
ordinateurs grce un port USB.
- Des afficheurs LCD.
- Trois blocs Zigbee.
- Deux cartes de capteur.
- Trois microcontrleurs de types 16F877A.
Les parties logicielles comprennent :
- Programmateur PICmicro Parallel Programmer (PPP V3) dveloppe par Matrix
Multimedia qui permet le transfert du fichier hexadcimale (.hex) au microcontrleur du
Multi-programmateur
- Le logiciel Flowcode Professionnel V3 de dveloppement de programme pour les
microcontrleurs.
3.2 Les Blocs du kit
3.2.1 E-block USB Multiprogrammer
Le E-block USB Multiprogrammer prsent dans la figure 9 est le palier principal du kit,
puisquil est le composant qui contiendra le microcontrleur utilis pour lapplication. Il a la
particularit davoir la possibilit dimplanter 4 diffrents types de microcontrleurs (14
pattes, 18 pattes, 28 pattes, 40 pattes) tout en ayant la possibilit davoir une expansion de
bus. Les ports du microcontrleur sont en nombre de 5 relis avec des blocs travers des
ports DB9 femelles. Le choix de la frquence utilise est fix travers un ensemble de
18
switchers, tout en ayant la possibilit de choisir une horloge externe, cela travers les
switcher sw1 et sw2.
Le chargement du programme dans le microcontrleur se fait grce au logicielle PPPv3
(programmateur) fourni avec le kit traves un port USB.
Dans notre projet, nous allons utiliser le microcontrleur 16F877A, ayant les caractristiques
suivantes :
- Port A possde 6 pins configurables en tant quentr ou sortie. Cinq dentre eux peuvent tre
utiliss pour des entres analogiques.
- Port B ayant 8 pins configurables en tant quentr ou sortie. Un seul pin (RB0) ou un port
(RB4-RB7) dinterruption externe est possible.
- Port C ayant 8 pins configurables en tant quentre ou sortie. Il contient le USART
(Universal Synchronous-Asynchronous Receiver Transmitter) pour les communications en
srie (RC6 transmission, RC7 rception).
- Port D tant simple il possde 8 pins configurables en tant quentre ou sortie numrique.
- Port E contenant 3 pins configurables en tant quentre ou sortie numrique, ou entres
analogiques.
Ces caractristiques seront prises en compte lors de la ralisation de lapplication et du choix
des ports utiliser.
Figure 9 : Diagramme du Bloc Multi programmateur [3]
3.2.2 E-Block LED board
Comme la figure 10 le montre le E-Block LED board permet la connexion de 8 LED
configurables en tant quentre ou sortie, selon le besoin. Il possde deux connexions, un mle
(pour tre reli au Multi programmateur) et une femelle (reli un autre bloc de mme
nature) permettant dlargir le spectre dutilisation de ce bloc.
19
Figure 10 : Diagramme du Bloc LED Board [3]
3.2.3 E-Block Switch board
Le E-Block Switch board prsenter la figure11 permet la connexion de 8 interrupteurs dans
nimporte quel port du Multi programmateur selon la configuration choisie travers son
connecteur DB9 mle. Elle possde aussi un second connecteur DB9 femelle lui permettant
dassocier plus de blocs au mme port.
Figure 11 : Diagramme du Bloc SWITCH Board [3]
3.2.4 E-Block LCD board
Le E-Block LCD board prsent par la figure 12 permet laffichage en format 16x2 (16
caractres, 2-lignes alphanumriques) des donnes ou des messages provenant des autres
priphriques travers son port DB9 qui assure la fois sa connexion la masse et sa
communication.
En plus, grce aux ports (J3, J4) de la carte, un choix de configuration est possible entre
Default et Patch, permettant de choisir la manire selon laquelle on veut brancher les pins du
connecteur DB9 et les pins relatifs sa mise en marche et sa configuration.
Un variateur de contraste est prsent pour fixer lintensit de la luminosit de lcran.
20
Figure 12 : Diagramme du Bloc LCD Board [3]
3.2.5 E-Block sensor interface
Le E-Block sensor interface present la figure 13 a lavantage de contenir la fois un capteur
de luminosit LDR (Light Sensor Resistor), et une rsistance variable (potentiomtre) pour
muler le fonctionnement dun capteur analogique. On peut aussi lui connecter des capteurs
analogiques ou numriques appropris (relatif lapplication souhaite). Grce aux ports
externes (J3, J4) de la carte, un choix de configuration est possible entre J5 position par dfaut
et J6 position du patch. Cette dernire permettra de choisir la manire selon laquelle on veut
brancher les pins du connecteur DB9 et les pins relatifs aux capteurs de la carte, travers un
raccordement entre les pins P2 et P1.
Figure 13 : Diagramme du Bloc Sensor Interface [3]
3.2.6 E-block Zigbee board
Considr comme la carte la plus importante dans notre conception le E-block Zigbee board
prsent dans la figure14 prsente llment de communication entre les diffrents multi-
programmateurs. Elle peut est classifies selon deux types :
- Le coordinateur :
Il joue le rle de llment principal de la communication, puisquil soccupe de la
configuration du rseau et selon lui se paramtre tout les nouds en connexion, tout les
informations passent par lui.
21
- Le routeur / End Device :
Le routeur, est llment qui assure la liaison entre le End Device et le coordinateur ou un
autre routeur. Il amplifie le signal entre ses deux composants pour assurer la puissance
ncessaire la communication.
Le End Device, cest llment extrme du rseau il ne peut communiquer quavec le
routeur ou le coordinateur et ne pouvant pas transmettre un signal direct un deuxime End
Device.
Figure 14 : E-Block Zigbee board [3]
Ayant un connecteur de type DB9 pour la connexion au multi-programmateur, la carte est
aussi dote dun module XBEE (professionnel-2007) version 2 lui assurant une compatibilit
avec les diffrents modules des versions antrieures (Voir Annexe).
Possdant une antenne planaire, le module XBEEV2 PRO une porte de 100 mtres. Il est
contrl par un ensemble de commandes ASCII connues sous le nom de AT commandes. Par
dfaut une squence de commande compte :
- Trente pauses par milliseconde.
- Une AT commande.
- Une deuxime trentaine de pauses par milliseconde.
Si la squence de commande est correctement entre, alors le module fait retourner la chane
de caractre OK.
La figure 15 montre la structure typique des AT commandes
AT`` (prfixe) + Commande ASCII + Espace (optionnel) +Paramtre hexadcimal (optionnel) + Carry retour
ATDL 1F<CR>
Figure 15 : Modle dune AT commande
Le mode de commande est termin si un temps darrt par dfaut de dix secondes ou en
envoyant la commande de sortie ATCN.
Le paramtre hexadcimal optionnel ce module V2 XBEE, existant dans la structure de la
AT commande prsente ladresse du noud vers laquelle on va envoyer la commande. Si
aucun noud de destination nest prdfini toutes les donnes sont transfres comme un
message dmission tous les nouds.
Les principales AT commandes utilises en communication :
ATID XXXX Assigns the PAN ID XXXX.
ATNI XXXXXXXX Assigns the character based node address XXXXXXXX.
ATSC XXXX Assigns the RF channel XXXX to be scannned.
22
ATSD X Sets the RF channel scan duration to X.
ATRE Restores defaults into the non-volatile memory.
ATWR Writes current parameter set into non-volatile memory.
ATFR Performs software reset.
ATMY Reads the 16-bit address of the module.
ATNI Sets/Reads the ASCII node identifier.
ATDH Sets/Reads the high 32-bits of the destination nodes MAC address.
ATDL Sets/Reads the low 32-bits of the destination nodes MAC address.
ATDN Collects the 16-bit address for the destination nodes ASCII identifier.
ATDB Reads the signal strength of the last reception.
ATND Performs a node discovery broadcast.
ATSM Sets/Reads the sleep mode.
ATEE Switches the 128-bit encryption on or off
ATKY AES Encryption Key
3.3 Logicielles fournits
- PICmicro Parallel Programmer (PPP V3) :
Cest un logiciel programmateur des Pic dvelopp par Matrix Multimedia permettant la
fois la configuration de la frquence de fonctionnement, la tension minimale de travail, la
configuration du programme flash et lenvoi du fichier hexadcimale (.hex) au
microcontrleur situ au Multi-programmateur travers un port USB. Un pic situ dans le
multi programmateur (identifi par le nom ppp) intercepte linformation du port USB et le
transmet vers les pins RC6 pour la transmission et RC7 pour la rception.
- Flowcode V3.6 :
Le Flowcode permet de crer des applications pour des microcontrleurs. Ces programmes
peuvent contrler des priphriques externes connects au microcontrleur comme des diodes
LED, afficheur LCD, clavier numrique, interrupteur, etc
Figure 16 : Environnement de programmation Flowcode [3]
23
La figure 16 prsente l'environnement de Flowcode, qui est constituer dune aire de travail
principale dans laquelle s'affiche lorganigramme, plusieurs barres d'outils qui permettent
d'ajouter des icnes et des composants lapplication, trois fentres spcifiques pour montrer
l'tat du microcontrleur ainsi que des composants attachs et enfin deux fentres qui
montrent les variables et les appels de macros lors de la simulation de lapplication.
24
Chapitre 4 : Ralisation du systme dalarme
4.1 Le systme d`alarme
4.1.1 Description du fonctionnement du systme
Notre systme dalarme reprsent par la figure 17 comporte un coordinateur et deux nouds
terminaux. Le coordinateur est responsable de la cration dun rseau ZigBee. En effet il
permet aux autres quipements de joindre le rseau. Dans ce cas, le coordinateur a deux
nouds fils, configurs comme des nouds terminaux. Chaque noud comporte deux
capteurs dont un capteur de temprature et un capteur PIR (Passive InfraRed) dtecteur de
mouvement plus un afficheur LCD pour laffichage des informations locales collectes des
deux capteurs. En outre, le noud 1 comporte un ensemble dinterrupteur utilis comme
clavier pour la saisie du code dactivation et de dsactivation de lalarme. Pour activer
lalarme, il suffit dentrer le code 1234 et pour la dsactiver on tape le code 4321. Le
coordinateur comporte un afficheur LCD et un quipement de signalisation de dclenchement
de lalarme (buzzer). Lafficheur affiche les informations collectes des nouds 1 et 2.
Laffichage comporte les tempratures locales mesures et les tats des capteurs PIR
dtecteurs de mouvement pour les zones 1 et 2. En cas de dpassement de seuil de
temprature dans lune des zones ou les deux, lalarme se dclenche pour signaler quil y a un
incendie dans lune des zones. Lalarme peut tre aussi dclenche au cas o il y a une
intrusion dtecte par les capteurs PIR dans les deux zones. Enfin, pour augmenter la scurit
de notre application on a eu recourt a loption de cryptage de donnes, qualit support par le
module XBee 2. En effet tout transfert de donnes sera crypt laide dun cryptage AES
ayant une cl de 128 bits. Cette approche a t utilise pour se prserver de toutes possibilits
de piratage du rseau par un noud extrieur.
Figure 17 : Systme dalarme
Coordinateur
Terminal
PIR2
temprature2
Afficheur2
LCD
Noud 2 (zone2)
ZigBee
ZigBee
PIR1
temprature1
switcheur
Afficheur1
LCD
Noud 1 (zone1)
Afficheur3
LCD
Coordinateur
Signalisation
dalarme
Centrale de supervision
switcheur
Symboles
25
4.1.2 Dcomposition du systme
Le systme est compos du coordinateur, du noud 1 et noud 2.
Coordinateur
Le coordinateur reprsent par la figure 18 est compos de :
- Un afficheur LCD branch dans le port D du microcontrleur (PIC16F877A). Il permet
dafficher les informations reus des nouds 1 et 2 et ltat du systme dalarme.
- Un module ZigBee branch dans le port C du microcontrleur permettant de le
connecter avec aux nouds du rseau.
- Un bloc dinterrupteurs branch dans le port E du microcontrleur pour permettre
lutilisateur dintervenir et arrter lalarme en cas de dclenchement de cette dernire.
- Un buzzer est branch dans le port B du microcontrleur pour la signalisation en
cas de dclenchement de lalarme.
Figure 18 : Coordinateur du rseau
Port E
Port B
PIC 16F877A
Port D
Port C
26
Organigramme de fonctionnement du coordinateur
Lorganigramme prsent dans la figure 19 dcrit le fonctionnement global du coordinateur :
Figure 19 : Organigramme de fonctionnement du coordinateur
Initialisation du rseau :
Cette tape consiste configurer le coordinateur avec les paramtres ncessaires au
fonctionnement du rseau. Les tapes dinitialisation sont :
- Attribuer un identificateur du rseau (par exemple : PAN ID = 0x234)
- Donner un nom au coordinateur (par exemple : coord)
Rception des
informations
Dbut
Initialisation du
rseau
Connexions aux
deux nouds
Tant que 1
Calcul de parit
Si
Parit correcte
?
Oui
Non
Affichage des
informations reus
des deux zones
Traitement des
informations reus
Fin tant que
Fin
27
- Fixer le ou les canaux de transmission (canal = 1A)
- Dterminer la dure maximale de scan des canaux (3 secondes)
- Fixer le nombre maximal des sauts possibles (4 sauts)
- Activer le mode de cryptage de donnes AES en utilisant une cl de 128 bits
(Cl = FFAA55BBC3FFAA55BBC35BBC3FFAA5BC)
Connexions aux deux nouds :
Notre systme est constitu de deux nouds seulement. Le coordinateur procde donc chaque
fois un envoi de demande de connexion (envoi de 0). Une fois un noud est connect, il
envoie une rponse gale 1 si le noud 1 est connect ou une rponse gale 2 si le
noud 2 est connect. Le compteur des nouds connects est incrment chaque fois quun
noud se connecte, une foi les deux nouds sont connects, la procdure de connexion dcrite
dans la figure 20 sachve.
Figure 20 : Organigramme de connexion aux deux nouds
Connexions aux
deux nouds
Fin tant que
Non
Si
rponse = 1
?
Noud 1 est
connect
Nouds connects
++
Oui
Attente de rponse
des nouds
Tant que (nouds connects < 2)
Envoi de 0
Envoi de 0
Non
Si
rponse = 2
?
Noud 2 est
connect
Nouds connects
++
Oui
28
Rception des informations :
Lorganigramme de rception des informations des deux nouds est prsent la figure 21.
Figure 21 : Organigramme de rception des informations
La figure 22 illustre un exemple dapplication de la chaine de rception des informations.
(Partie entire)
Octet 1 Octet 2 Octet 3 Octet 4 Octet 5
1 50 1 10 (1+50+1+10) / 4
= 15
Octet 1 Octet 2 Octet 3 Octet 4 Octet 5
2 100 0 128 (2+100+0+128)
/ 4 = 57
Octet 1 Octet 2 Octet 3 Octet 4 Octet 5
1 100 1 192 (1+100+1+192)
/ 4 = 73
Figure 22 : Trame dinformation reue par le coordinateur de la zone 1 ou de la zone 2
1 si les informations sont reues
du noud 1
2 si les informations sont reues
du noud 2
Octet 1 = 1 ou 2
Octet 2 = valeur de temprature de la
zone 1 ou 2
Octet 3 = 0 ou 1 (tat du capteur PIR dans la zone choisie)
Octet 4 = valeur de commande (voir figure 23)
Octet 5 = valeur parit
(Parit = (octet1+octet2+octet3+octet4) / 4)
Rception des
informations
Rception octet 1
Rception octet 2
Rception octet 3
Rception octet 4
Rception octet 5
29
Calcul de Parit :
On procde un calcul de parit pour pouvoir contrler les donnes reues et juger si la trame
dinformation reue est correcte ou non. En effet, le calcul se fait comme suit :
Parit = (octet1+ octet2+ octet3+ octet4) / 4
La valeur de parit trouve est compare avec loctet5 de la trame dinformation reue.
Affichage des informations reues :
Si la parit est correcte, on procde ainsi laffichage des informations reues dans lcran
LCD attach au coordinateur.
Traitement des informations reus :
La figure 23 illustre lorganigramme de traitement des informations reus.
Figure 23 : Organigramme de traitement des informations reues
Non
Oui
Non
Dclencher
lalarme
Si
Systme dalarme
est activ
?
Oui
Si
(Commande &
Commande 3) ou (&
Commande 4)
?
Si
Commande &
Commande 2
?
Oui
Non
Si
Commande &
Commande 1
?
Oui
Non
Dsactiver le
systme dalarme
Activer le systme
dalarme
Traitement des
informations reus
30
Les commandes :
La prise des dcisions faite par le coordinateur est la consquence du traitement de loctet 4
de la trame dinformation reue des deux nouds 1 et 2 qui correspondent aux deux zones.
La configuration de loctet 4 est prsente la figure 24.
Octet 4: B7 B6 B5 B4 B3 B2 B1 B0
Commande: 1 1 1 1 X X X X
Activer lalarme
Dsactiver lalarme
PIR dclench
Temprature > seuil (fix)
Figure 24 : Loctet 4 de la trame dinformation
Donc pour prendre la bonne dcision il suffit de tester sur les variables de test suivantes
laide de loprateur ou :
Commande 1 = 0010 0000 Dsactiver lalarme
(0x20)
Commande 2 = 0001 0000 Activer lalarme
(0x10)
Commande 3 = 0100 0000 PIR dclench
(0x40)
Commande 4 = 1000 0000 Temprature > seuil (fix)
(0x80)
Noud 1
Tel que lillustre la figure 25, le noud1 est compos de :
- Un afficheur LCD branch dans le port D du microcontrleur (PIC16F877A) pour
afficher les informations locales dans la zone 1 (la temprature et ltat du capteur PIR)
et signaler sil y a un intrus ou un dpassement de temprature seuil.
- Un sensor block branch dans le port A utilis pour acqurir la temprature de la
zone 1. Le capteur de temprature est remplac dans notre cas par un potentiomtre
pour faire varier la temprature manuellement. On procde ici une conversion
analogique numrique puisque le signal reu du capteur est analogique.
- Un module ZigBee branch dans le port C du microcontrleur pour pouvoir envoyer
les informations de la zone 1 issues des capteurs de temprature et du capteur PIR.
31
- Un bloc dinterrupteur branch dans le port B du microcontrleur, utilis comme
clavier pour entrer le code dactivation ou de dsactivation de lalarme. Un code de
1234 permet lactivation de cette dernire et un code de 4321 permet de la dsactiver.
- Un bloc dinterrupteur branch dans le port E du microcontrleur et utilis comme
capteur PIR pour dtecter sil y a intrusion ou non dans la zone 1.
Figure 25 : Noud 1 du rseau
Port B
Port E
Port D
Port A
Port C
PIC 16F877A
32
Organigramme de fonctionnement du noud 1
Lorganigramme prsent dans la figure 26 dcrit le fonctionnement global du noud 1 :
Figure 26 : Organigramme de fonctionnement du noud 1
Dbut
Tant que
1
Echantillonnage
de temprature
Enregistrement de
lchantillon
Saisie du code
Non
Si Temprature
> seuil
?
Commande = Commande ou
commande 4
Affichage
LCD
Oui
Non
Si PIR = 1
?
Commande = Commande ou
commande 3
Affichage
LCD
Oui
Calcul de parit
1 s
Fin tant que
Fin
Initialisation du
noud 1
Connexion au
coordinateur
Envoi dune trame
dinformation
33
Initialisation du noud 1 :
Cette tape consiste configurer le noud 1 avec les paramtres ncessaires au fonctionnement
du rseau (tout en respectant la configuration du coordinateur fix prcdemment). Les phases
de cette tape sont les suivantes :
- Attribuer le mme identificateur du rseau (PAN ID = 0x234)
- Donner un nom au noeud (nom = noeud1)
- Fixer le ou les canaux de transmission (canal = 1A)
- Dterminer la dure maximale de scan des canaux (3 secondes)
- Fixer le nombre maximal des sauts possibles (4 sauts)
- Activer le mode de cryptage de donnes AES en utilisant une cl de 128 bits
(Cl = FFAA55BBC3FFAA55BBC35BBC3FFAA5BC)
Connexion au coordinateur :
Pour que le noud puisse se connecter au rseau, il envoie une demande de connexion et attend
que le coordinateur lui rponde par un 0. Si cest le cas, la connexion est russie et le noud
procde un envoi de 1 au coordinateur pour que ce dernier puisse conclure sur la russite
de la procdure de connexion. La procdure de connexion est dcrite par la figure 27.
Figure 27 : Organigramme de connexion au coordinateur
Connexion au
coordinateur
Attente de rponse
du coordinateur
Fin tant que
Non
Si
Rponse = 0
?
Connexion au rseau
russite
Envoi de 1
Oui
Tant que
Rponse < > 0
Demande de
connexion
34
Saisie code :
Lactivation du systme dalarme se fait par lintermdiaire dun bloc dinterrupteurs. En
effet, pour activer ou dsactiver le systme, il suffit dappuyer sur le SW0 (switcheur 0) et le
maintenir jusqu ce quun message apparaisse demandant dentrer le code. Si le code entr
est 1234, le noud doit envoyer une commande dactivation du systme dalarme
(commande 2) au coordinateur. Si le code entr est 4321, le noud doit envoyer une
commande de dsactivation du systme dalarme (commande 1). La procdure de saisie de
code peut tre illustre dans la figure 28.
Figure 28 : Organigramme de saisie du code
Echantillonnage et enregistrement des chantillons de temprature :
Puisque le signal dentr issu du capteur de temprature est analogique, on doit procder un
chantillonnage chaque trois secondes pour pouvoir le convertir en numrique. Le signal ainsi
converti pourra tre enregistr dans loctet 2 de la trame dinformation envoyer avant dtre
trait par le microcontrleur.
Traitement faire par le microcontrleur :
Les donnes issues des capteurs doivent tre traites par le microcontrleur pour pouvoir
envoyer les bonnes commandes au coordinateur. Selon les commandes reues, ce dernier doit
prendre les bonnes dcisions. Les traitements faire sont :
Non
Non
Si
SW0 = 1
?
Oui
Entrer code
Non
Si
Code = 1234
?
Commande = commande ou
commande 2
Oui
Si
Code = 4321
?
Oui
Commande = commande ou
commande 1
Rception des
informations
35
- Si la temprature dpasse le seuil fix, loctet 4 de la trame dinformation envoyer
doit prendre la commande correspondante (commande 4) et on procde simultanment
un affichage local prventif sur un cran LCD.
- Si le capteur PIR est dclench (PIR=1), loctet 4 doit prendre la commande
correspondante (commande 3) et on procde simultanment un affichage local
prventif sur un cran LCD.
Calcul de Parit :
On procde un calcul de parit pour pouvoir contrler les donnes transmises et juger de
leur concordance la rception. En effet, le calcul se fait comme suit :
Parit = (octet1+ octet2+ octet3+ octet4) / 4
La valeur de parit est enregistre dans loctet5 de la trame dinformation envoyer.
Envoi dune trame dinformation :
La figure 29 prsente lorganigramme denvoi dune trame dinformation.
Figure 29 : Organigramme denvoi dune trame dinformation
Octet 3 = 0 ou 1 (tat du capteur PIR dans la zone choisie)
Octet 4 = valeur de commande
Octet 5 = valeur parit
(Parit = (octet1+octet2+octet3+octet4) / 4)
1 si les informations sont
envoyes du noud 1
2 si les informations sont
envoyes du noud 2
Envoi dune trame
dinformation
Envoi octet 1
Envoi octet 2
Envoi octet 3
Envoi octet 4
Envoi octet 5
Octet 1 = 1 ou 2
Octet 2 = valeur de temprature de la
zone 1 ou 2
36
Noud 2
La figure 30 schmatise les diffrents lments du noud 2 qui est compos de :
- Un afficheur LCD branch dans le port B du microcontrleur (PIC16F877A) pour
afficher les informations locales dans la zone 2 (la temprature et ltat du capteur PIR)
et signaler sil y a un intrus ou un dpassement de temprature seuil.
- Un sensor block branch dans le port A utilis pour acqurir la temprature de la
zone 2. Le capteur de temprature est remplac, dans notre cas, par un potentiomtre
pour faire varier la temprature manuellement. On procde ici une conversion
analogique numrique puisque le signal reu du capteur est analogique.
- Un module ZigBee branch dans le port C du microcontrleur pour pouvoir envoyer
les informations de la zone 2 issues des capteurs de temprature et du capteur PIR.
- Un bloc dinterrupteurs branch dans le port E du microcontrleur et utilis comme
capteur PIR pour dtecter sil y a intrusion ou non dans la zone 2.
Figure 30 : Noud 2 du rseau
Organigramme de fonctionnement du noud 2
Le noud 2, prsente globalement le mme fonctionnement que le premier noud. Toutefois, la
seule diffrence consiste en limpossibilit dactiver et de dsactiver le systme dalarme
laide de ce noud. De plus, lchantillon de temprature est pris aux 2 secondes au lieu dune
seconde, comme ctait le cas pour le premier noeud.
La figure 31 illustre le fonctionnement du noud 2.
Port A
Port E
PIC 16F877A
Port B
Port C
37
Figure 31 : Organigramme de fonctionnement du noud 2
Calcul de parit
Dbut
Initialisation du
noud 2
Connexion au
coordinateur
Echantillonnage
de temprature
Enregistrement de
lchantillon
Non
Si Temprature
> seuil
?
Commande = Commande ou
commande 4
Affichage
LCD
Oui
Non
Si PIR = 1
?
Commande = Commande ou
commande 3
Affichage
LCD
Oui
2s
Fin tant que
Fin
Envoi dune trame
dinformation
Tant que
1
38
Conclusion et perspectives
De nos jours, les rseaux sans fil et leurs applications prennent de plus en plus d'importance.
Les applications domotiques et industrielles ncessitant la mise en place de rseaux sans fil
peu couteux et faible consommation d'nergie sont nombreuses. Cette tendance a favoris
l'introduction de la norme ZigBee. Il s'agit d'un protocole qui permet la transmission de
donnes faible dbit et sur une porte rduite. Le protocole ZigBee bas sur la norme IEEE
802.15.4 reprsente donc une solution adquate pour de nombreuses applications domotiques
et industrielles.
Notre projet de fin d'tudes, ralis au sein de l'entreprise ARABCOM, vise matriser la
norme Zigbee et dvelopper une application se basant sur cette nouvelle technologie.
L'application choisie consiste en un systme d'alarme sans fil. Le kit de dveloppement utilis
est le Easy Zigbee Pack de Matrix Multimedia.
Le premier chapitre de ce rapport est une revue de la littrature qui dcrit la norme ZigBee de
point de vue thorique, technique et pratique. Dans le deuxime chapitre, nous avons prsent
le kit Easy Zigbee Pack et ses principaux modules. Le troisime chapitre est ddi au
dveloppement de l'application et la discussion des diffrentes tapes suivies pour la
ralisation du systme d'alarme. Nous avons aussi prsent, dans ce chapitre, les diffrents
organigrammes Flowcode proposs.
Ce projet tait une occasion pour se familiariser avec le protocole Zigbee et le kit Easy
Zigbee Pack. Comme perspectives de ce travail, nous comptons procder loptimisation du
systme, la conception de lensemble des cartes pour des circuits personnaliss afin davoir
des blocs optimiss et mobiles. La mise en ouvre des diffrents blocs de notre application
dans un ensemble de circuits imprims adapts aux capteurs et aux priphriques associs
favorisera sa mise sur le march.
39
Bibliographie
Sites web consults
[1] Mike Kipness, Kathryn Cush, Paul Nikolich. IEEE 802 LAN/MAN Standards Committee
< http://www.ieee802.org > 03-April-2009
Ouvrages lectroniques
[2] Matrix multimedia, ZigBee Teachers Course Notes, <www.matrixmultimedia.com>,
janvier 2008
[3] Matrix multimedia, Zigbee board datasheet, E-blocks Zigbee board,
<www.matrixmultimedia.com/datasheets/XBEEV2.pdf>
[4] Bart Huyskens, John Dobson, Steve Tandy, An Introduction to Microcontoleur
Programming, <www.matrixmultimedia.com>
Articles de priodiques lectroniques
[5] Anne-Francoise Pele, ZigBee, la norme de communication sans fil basse consommation,
EE Times Europe Disponible sur : <www.eetimes.eu/france/206504013?pgno=2 > 02-14-
2008
40
Glossaire
AES Advanced Encryption Standard
AODV Ad hoc On demand Distance Vector algorithm
CSMA-CA Carrier Sensing Multiple Access with Collision Avoidance
FFD Full Function Device
IEEE Institute of Electrical and Electronics Engineers
LAN Local Area Network
LCD Liquid Crystal Display
MAC Medium Access Control
OSI Open System Interconnection
PAN ID Personal Area Network IDentifier
PDA Personal Digital Assistant
PHY PHYsical layer
PIR Passive InfraRed sensor
RAM Random Access Memory
RFD Reduced Function Device
ROM Read Only Memory
UWB Ultra Wide Band radio technology
Wi-Fi Wireless Fidelity (IEEE 802.11.x technologies)
WLAN Wireless Local Area Network
WMAN Wireless Metropolitan Areas
WPAN Wireless Personal Area Network
WWAN Wireless Wide Area Networks
41
Annexes
E-blocksZigbee board
Document code: EB051-30-1
Zigbee board datasheet
EB051-00-1
Contents
1. About this document.................................................................................................................................................................. 2
2. General information................................................................................................................................................................... 3
3. Board layout .............................................................................................................................................................................. 5
4. Testing this product ................................................................................................................................................................... 6
5. Circuit description ..................................................................................................................................................................... 7
Copyright Matrix Multimedia Limited 2008
42
E-blocksZigbee board
Document code: EB051-30-1
1. About this document
This document concerns the E-blocks Zigbee boards with codes EB051C and EB051R version 1.
The order code for the Zigbee Coordinator product is EB051C.
The order code for the Zigbee Router / End Device product is EB051R.
1. Trademarks and copyright
PIC and PICmicro are registered trademarks of Arizona Microchip Inc.
E-blocks is a trademark of Matrix Multimedia Limited.
2. Other sources of information
There are various other documents and sources that you may find useful:
Getting started with E-Blocks.pdf EB355
This describes the E-blocks system and how it can be used to develop complete systems for learning electronics and for
PICmicro programming.
3. Disclaimer
The information in this document is correct at the time of going to press. Matrix Multimedia reserves the right to
change specifications from time to time. This product is for development purposes only and should not be used for
any life-critical application.
4. Technical support
If you have any problems operating this product then please refer to the testing section of this document first. You will
find the latest software updates, FAQs and other information on our web site: www.matrixmultimedia.com
If you still have problems please email us at: support@matrixmultimedia.co.uk.
Copyright Matrix Multimedia Limited 2008
43
E-blocksZigbee board
Document code: EB051-30-1
2. General information
1. Description
Provides a Zigbee node interface that can connect to or create a Zigbee network.
EB051C Coordinator Zigbee node, used to start, configure the network and allow other nodes to join.
EB051R Router / End device node, used to connect and communicate to networks started by a EB051C.
Zigbee is a software-based protocol that sits on top of the 802.11 RF wireless devices standard similar to Bluetooth.
Unlike Bluetooth, Zigbee is capable of forming large networks of nodes and boasts advanced features such as mesh
networking, simple addressing structures, route detection, route repair, guaranteed delivery and low power operation
modes.
The EB051 Zigbee E-Blocks are fully compliant with both the Zigbee pro (07) and ZNET (08) Zigbee standards. The
boards can be used create a network of dynamic moveable Zigbee nodes, or to interface with an existing Zigbee
network.
Zigbee provides a transparent layer for sending and receiving data from the network. Therefore once the module has
been configured and assigned to the correct address then sending and receiving data is as simple as sending and
receiving RS232 bytes through the chips UART.
2. Features
Zigbee Wireless communications
Flowcode macros available
Compatible with global RF standards
Onboard Zigbee module
Status LED
Full 2007 Zigbee Pro / ZNET compliance
128-bit AES Encryption
Range of approx 100m per node
3. Zigbee Operation
The Zigbee boards use a V2 XBEE module to interface to the Zigbee network. These modules are compliant with
the 2007 Zigbee Pro / ZNET standard.
The V2 XBEE modules come in two varieties. One is configured to be the Zigbee network coordinator (EB051C) and
the other is configured to be either a router node or an end device node (EB051R). The variety of the module is
marked at the top right hand side of the Zigbee board.
Coordinator nodes are responsible for creating the Zigbee network and allowing other Zigbee nodes to join.
Only one coordinator node can exist on any single network.
Router nodes are responsible for routing signals to other routers or to end nodes.
End device nodes are responsible for collecting or depositing real world data to and from the Zigbee
network.
The Coordinator node and Router nodes are capable of handling up to eight children devices. The children devices can
consist of either other Router nodes or End device nodes. If an End device node is configured to sleep then the parent
device associated for that node will be responsible for buffering any incoming data. Therefore if you are using
sleeping End devices you must make sure to poll the parent for data every time the device comes out of sleep mode.
Copyright Matrix Multimedia Limited 2008
44
E-blocksZigbee board
Document code: EB051-30-1
4. 3.3V system compatibility
The board is compatible with 3.3V and 5V systems.
5. Communications
The XBEE modules are configured by means of using a TTL level RS232 bus to send and receive AT commands.
This protocol requires a start bit, eight data bits and a stop bit.
The baud rate for the XBEE modules is set to 9600, with no parity and flow control lines RTS and CTS that can be
used. AT commands are strings of ASCII data that are sent over the RS232 bus. For more information on the AT
commands used by the XBEE module please refer to the V2 XBEE datasheet.
Example AT command
ATID 234 - Assigns a personal area network identifier of 0x234 or 564 in decimal.
6. V2 XBEE Module
For further data regarding the XBEE module please visit the following link.
www.matrixmultimedia.com/datasheets/XBEEV2.pdf
Copyright Matrix Multimedia Limited 2008
45
E-blocksZigbee board
Document code: EB051-30-1
Board layout
EB051-74-1.cdr
1) 9 Way D-type Plug
2) Patch system
3) Rx and Tx UART routing selection
4) CTS, RTS and SLEEP routing selection
5) Input supply voltage select
6) Input supply voltage screw terminals
7) 3.3V regulator
8) Voltage level shifter
9) Status LED
10) XBEE Zigbee module
11) Coordinator / Router / End device marking.
Copyright Matrix Multimedia Limited 2008
46
E-blocksZigbee board
Document code: EB051-30-1
3. Testing this product
The following program will test the circuit boards communication with the XBEE module. For further tests to test the
XBEE modules RF operation you will require at least 1 EB051C and 1 or more EB051R Zigbee boards. The test file
can be downloaded from www.matrixmultimedia.com .
1. System Setup
Multi-programmer board (EB006) with:
B006 Options etting
Power supply External, 14V
PICmicro device 16F877A
SW1 (Fast/Slow) Dont care
SW2 (RC/Xtal) Xtal
Xtal frequency 19.6608MHz
Port A
Port B LCD board EB005
Port C Zigbee board EB051
Port D
Port E
Test program Zigbee.hex
1 Ensure that the Multiprogrammer is in correct configuration
- Fast mode (SW1 towards the center of the board)
- XTAL mode (SW2 towards the center of the board)
- Ensure that a 19.6608MHz crystal is inserted in the Multiprogrammer board
2 Insert the LCD board (EB-005-00-1) into Port B of the Multiprogrammer
3 Connect wire from +V of LCD board to +V of Multiprogrammer
4 Program the a PIC16F877A with the test program Zigbee.hex
5 Insert the Zigbee board into Port C of the Multiprogrammer
6 Insert the XBEE module into the socket on the Zigbee board
7 Connect power to the Zigbee board via the +V screw terminals
8 Make sure jumpers "C" and "1" are selected on the Zigbee board.
9 Press the reset button on the Multiprogrammer.
10 The word Testing should appear on the LCD screen.
11 The LED in position D1 should start flashing.
12 If the word OK appears on the LCD then testing is successful.
13 Otherwise if an error message is displayed or the LED is not flashing then the test has failed.
Copyright Matrix Multimedia Limited 2008
47
E-blocksZigbee board
Document code: EB051-30-1
4. Circuit description
1. Description
The circuit board consists of 5 digital I/O lines on a downstream 9-way D-type plug. This routes the transmit
(TX), receive (RX), clear to send (CTS), request to send (RTS) and sleep (SLEEP) lines to the XBEE Zigbee
module.
Example of jumper settings C and 1, configured for use with a PIC16F877A.
RX and TX jumper settings.
Jumper Setting A J umper Setting B Jumper Setting C Jumper Setting D
PIC 16F Devices PIC 16C Devices
PIC16F87 PIC16F627/A PIC16F73 PIC16C63 PATCH SYSTEM
PIC16F88 PIC16F628/B PIC16F737 PIC16CR63
PIC16F648A PIC16F74 PIC16C65/A/B
PIC16F746 PIC16RC65
PIC16F76 PIC16C66
PIC16F767 PIC16C73/A/B
PIC16F77 PIC16C74/A/B
PIC16F777 PIC16C745
PIC16870/1 PIC16C765
PIC16F873/A PIC16C77
PIC16F874/A PIC16C773
PIC16F876/A PIC16C774
PIC16F877/A
CTS, RTS and Sleep jumper settings.
t Copyright Matrix Multimedia Limited 2008