Systeme d'Alarme Avec La Technologie Zigbee

Embed Size (px)

Citation preview

  • AU : 2008-2009

    Universit de Sousse

    Ecole Nationale dIngnieurs 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 laidede la technologie ZigBee

    Ralis par :

    Anis BDIRI Mourad ATTIA

    Soutenu le 17 juin 2009 devant le jury

    Prsident : M. Taha BEN SALAH, ENISoMembre du jury : Mme. Imen MARRAKCHI, ENISoEncadreur : M. Mohamed Lassaad AMMARI, ENISoEncadreur : M. Abdel Aziz HAMDI, ENISo

    ATTIA & BDIRI, 2009

  • iRsum

    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

    Ddicaces

    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,

    Je voudrais ddier ce mmoire comme simple symbole de gratitude et de reconnaissance.

    A toute ma famille, frres, s?urs et leurs enfants et mari, je voudrais dire simplement mercipour vos encouragements et suivis.

    A tout mes amis.

    Je voudrais dire merci normment.

    A mes chers encadreurs et toute personne qui ma inculp le moindre savoir,

    Je voudrais dire que grce vous tous, je suis arriv prsenter ce mmoire

    Mourad Attia

  • vDdicaces

    A ma chre mre

    A mon cher pre

    Pour tous les sacrifices quils ont consentis pour mon ducation, pour leur soutient quilsmont 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 monamour et mon respect que jaurai toujours pour eux

    A mon frre et ma s?ur

    Je 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

    Je 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 tableauxTableau 1 : Comparaison entre les FFD et les RFD .................................................................6

    Tableau 2 : Comparaison entre les diffrentes technologies sans fils ..................................... 15

  • xListe 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 n?uds .................................................... 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 : N?ud 1 du rseau ............................................................................................... 31

    Figure 26 : Organigramme de fonctionnement du n?ud 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 : N?ud 2 du rseau ............................................................................................... 36

    Figure 31 : Organigramme de fonctionnement du n?ud 2 ..................................................... 37

  • 1Chapitre 1 : Introduction gnrale

    Les rseaux industriels jouent un rle trs important dans les applications de contrle et desupervision. En parallle, les rseaux domotiques sont de plus en plus prsents dans lesfoyers. Pour ces deux types de rseaux, les trames de donnes sont de petites tailles. Lesapplications industrielles de supervision et celles domotiques ne ncessitent pas une largebande de transmission.

    Depuis quelques annes, les rseaux classiques cbls sont en train de cder place aux rseauxsans fil peu consommateurs d'nergie, fiables et porte restreinte ou moyenne. Cettetendance conomique permet de se passer du coteux cblage qui rduit la flexibilit desrseaux.

    Les technologies sans fil courte et moyenne porte attirent l'attention grce leur capacitde supporter de multiples applications et leur efficacit. Ces technologies sont adoptes pourles applications domotiques, les applications dautomatisation industrielle et pour les rseauxde 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 faibleconsommation d'nergie.

    On se propose, travers ce projet de fin d'tudes, qui s'inscrit dans le cadre d'une entente departenariat entre l'cole Nationale d'Ingnieurs de Sousse et la socit ARABCOM, dematriser le principe de fonctionnement ZigBee et de concevoir une application se basant surcette technologie. L'application implmente consiste en un systme d'alarme usagesindustriel et domestique. Le savoir-faire que lon peut acqurir par ltude et lemploi de lanorme 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 etdont les principales activits sont ltude, la fabrication et linstallation de matriel deradiocommunication. Elle prend aussi en charge les tches de sonorisation, de tldistributionainsi que la fabrication de quelques dispositifs de commande et dalimentation lectrique. Elleassure notamment la maintenance des appareils lectroniques. Son organigramme est prsentpar la figure 1.

  • 2Figure 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 lanorme, etc.).

    Ralisation dune application pratique (conception et dveloppement dun systmedalarme laide de la technologie ZigBee).

    Ce rapport comporte trois chapitres. Le premier chapitre permet de prsenter la normeZigBee. Le deuxime chapitre est une description du kit utiliser. Le troisime chapitre dcritl'application et les diffrentes tapes de travail relatives sa mise en marche.

    Direction Gnrale

    Equipe demesure etdessais

    Equipedinstallation

    Equipedemballage et

    stockage

    Equipedimplantation

    descomposants

    Bureaudtudes

  • 3Chapitre 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 hautniveau faible consommation dnergie, base sur le standard IEEE 802.15.4 des rseauxpersonnels 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 AreaNetwork) 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 rseauxWPAN sont domins par les UWB (Ultra Wide Band radio technology), utilises pour lessystmes 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 troisclasses de WPAN classifis selon le dbit de transfert de donnes, le niveau de consommationdnergie et leurs performances. Les WPAN haut dbit, utilisant la technologie UWB, sont ddis aux applications multimedia orientes flots de donnes. Les WPAN moyen dbit (IEEE 802.15.1/Bluetooth) touchent les applications du domaineradio 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 n?uddu rseau constitue une partie de la chane de transmission, reoit les messages, dcide si lemessage est usage local, et le retransmet aux autres n?uds sinon.

  • 4Lusage courant du ZigBee se manifeste dans les rseaux de capteurs. Par exemple dans unenvironnement industriel plusieurs n?uds ZigBee peuvent tre installs rapidement pourfournir une connexion sans fil de plusieurs capteurs ncessaires pour les systmes dalarme etde prvention dincendies.

    2.1.2 Le protocole ZigBee

    Les rseaux dordinateurs sont toujours simplifis par lusage du model OSI. Il est composde 7 couches. Chaque couche est responsable deffectuer un ensemble de tches biendtermines. Les tches qui concernent une couche donne peuvent tre implmentesindpendamment des autres couches. Cela permet que les solutions offertes par une couchepuissent tre mis jour sans affecter les autres couches.La figure 3 ci dessous montre les 7 couches du model OSI :

    ApplicationPrsentation

    SessionTransportRseauLiaison

    Physique

    Figure 3 : Les sept couches du model OSI

    Le protocole ZigBee peut tre vu comme trois couches spares, chacune a ses fonctionsspcifiques. Ces spcifications sont montres dans la figure 4.

    Couche Application

    Contrler lapplication qui tourne dans les quipements ZigBeePar exemple : capture de temprature

    Couche de la pile ZigBee

    Les protocoles qui vrifient le routage des donnes la bonne destination toute en assurantla scurit de transmission

    Le standard IEEE 802.15.4

    La sous-couche MAC (Medium Access Control) : responsable de ladressage (o les donnesvont 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

  • 52.1.3 Le standard IEEE 802.15.4

    Le standard IEEE 802.15.4 pour les communications sans fils a t dvelopp par la brancheamricaine de linstitue IEEE (Institute of Electrical and Electronics Engineers) responsabledes technologies de communication.Parmi les standards, nous citons la norme IEEE 802.11 qui couvre les communications sansfils LAN (Local Area Network) et qui concerne les communications haut dbit, tandis que lestandard 802.15.4 concerne les applications bas dbit o une simple connexion et une faibleconsommation 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 de915 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 MHzchacune, numrotes de 11 26.Autres responsabilits pour la sous-couche PHY inclue la dtection de transmission pour lesnouveaux n?uds et lvaluation de la qualit des liaisons avec les autres n?uds.

    La sous-couche MAC

    La spcification de la sous-couche MAC, dfinit comment les frquences radios du standard802.15.4 oprent dans la mme zone et gre les mthodes de multiplexage. Elle utilise latechnique CSMA-CA (Carrier Sensing Multiple Access with Collision Avoidance) pour contrlersi un n?ud est autoris dmettre ou non afin dviter les collisions. (Une collision apparat sideux n?uds 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 tatde marche afin de faciliter la gestion et le routage dans un rseau. Les quipements FFD sontcapables de communiquer avec les RFD et les autres FFD, tandis que les RFD sont capablesseulement de communiquer avec les FFD.

  • 62.2 Le rseau ZigBee

    Comme on a vu prcdemment, la sous-couche MAC du standard IEEE 802.15.4 dfinit deuxtypes dquipements, les FFD et les RFD. Le tableau 1 relve les principales diffrences entreces diffrents quipements :

    FFD RFDOn peut le trouver dans nimporte quelletopologie

    On le trouve gnralement dans la topologietoile

    Peut tre le coordinateur du rseau Ne peut pas servir comme coordinateur durseau

    Capable de communiquer avec lesquipements RFD et FFD

    Capable de communiquer seulement avec lesquipements 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 ROMcest 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 coordinateurdu rseau, se mettre en veille pour de longues priodes afin de rduire le niveau deconsommation dnergie. (cest pourquoi ils sont aliments gnralement par desbatteries).

    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 typesdquipements 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 lescanaux de transmission, assigner les adresses et ajouter des n?uds dans le rseau. On peuttrouver seulement un seul coordinateur dans un rseau ZigBee. Il est gnralement alimentpar lnergie lectrique et est localis dans une position fixe. Donc pour accder au rseau, ilest indispensable de passer par le coordinateur. Si ce dernier est mis hors tension, lesnouveaux n?uds ne peuvent pas joindre le rseau mais les n?uds qui ont dj une adressereste toujours fonctionnels.

    Routeur

    Le routeur est un quipement FFD, responsable du routage des paquets entre les diffrents??uds. Il peut tre aussi utilis pour tendre la porte du rseau. Il est toujours mis en marchepour pouvoir maintenir le routage dans le rseau. Et puisquil est toujours aliment, il doit tre

  • 7localis dans une position fixe. Il peut tre aussi utilis pour accder au rseau si et seulementsi le coordinateur lui permet davoir cette fonctionnalit.

    Terminal

    Les terminaux sont utiliss pour communiquer avec le monde extrieur qui ne peut tre quedes 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 batterieset 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 ilspeuvent 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 plusieursquipements terminaux. Tous les terminaux ne communiquent quavec le coordinateur. Ainsi,si un n?ud terminal veut transmettre des donnes un autre n?ud terminal, il le transmet travers le coordinateur. En fait, cette topologie nest pas fiable car en cas o le coordinateurtombe en panne tout le rseau devient non fonctionnel. La figure 5 reprsente un exemple decette 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 n?udsterminaux. Comme lindique la figure 6 le routeur peut tre aussi connect soit des autresrouteurs soit des n?uds terminaux en plus du coordinateur.Le routeur permet ainsi de :

    - Augmenter le nombre des n?uds qui peuvent joindre le rseau.- Etendre la porte du rseau, pour que les n?uds qui sont loigns du coordinateur

    puissent le joindre.

    Coordinateur

    Terminal

  • 8Comme pour la topologie en toile, les n?uds terminaux ne peuvent pas communiquer entreeux. Ainsi les messages peuvent tre transmis soit travers le coordinateur soit travers lesrouteurs. En effet, il existe plusieurs chemins possibles entre source et destination et cest aurouteur 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 n?uds terminaux restent toujoursincapables de communiquer directement entre eux. Tandis que les FFD peuvent communiquerdirectement 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

  • 92.2.3 Rseau accs multiples

    Les trois topologies prsentes prcdemment permettent aux n?uds ZigBee une galepriorit daccs au rseau. Cest pour cela ces rseaux sont dits accs multiples. Il existedeux mcanismes daccs beacon et non-beacon .

    Accs Beacon

    Un n?ud dans un rseau accs beacon peut transmettre et recevoir des donnesseulement dans le laps de temps dsign pour lui. Cela permet de grer les communications etsurtout de rduire les collisions.Le coordinateur gnre priodiquement une super trame, dite trame beacon . Tous les??uds dans le rseau sont demands de synchroniser leurs horloges cette trame.Gnralement, dans un rseau accs beacon les n?uds terminaux se rveillent justeavant que cette trame soit gnre. Ils assurent le transfert des donnes puis se mettent enveille de nouveau jusqu la prochaine super trame. Dans ce mode, le coordinateur peut trealiment par une batterie et les n?uds terminaux peuvent se mettre en veille afin de rduire laconsommation du rseau.

    Accs Non-Beacon

    Les n?uds dans un rseau accs non-beacon sont capables de transmettre nimportequel instant o le canal radio est libre. Cela permet de crer un environnement ouvert pourtous o les collisions peuvent se produire rgulirement quand deux ou plusieurs noeudstransmettent en mme temps. Pour ce mode, le coordinateur et les routeurs doivent tretoujours 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 lesautres quipements tout en fixant le ou les canaux ncessaires pour la communication. Pourtablir notre propre rseau, ce dernier doit avoir un PAN ID (Personal Area NetworkIDentifier). 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 lerseau. On parle ainsi de routeurs et de n?uds terminaux. En fait, les routeurs et lecoordinateur sont les seuls qui permettent aux autres quipements de joindre le rseau. Laprocdure de connexion se fait comme suit :

    Le nouveau n?ud scanne tous les canaux disponibles et cherche les rseaux qui sont porte.

    Si le n?ud dtecte la fois un routeur et un coordinateur du mme rseau, il choisitgnralement celui qui lui transmet le signal le plus puissant. Il essaye ensuite de seconnecter ce dernier tout en envoyant une demande de connexion au rseau.

    Si la configuration du rseau permet ce n?ud de joindre le rseau, le coordinateur oule routeur qui transmet le signal le plus puissant permet dattribuer ce n?ud uneadresse pour quil puisse communiquer dans le rseau.

    Le coordinateur est configur de faon avoir le maximum de n?uds par parents.Prcisment, il permet davoir un nombre maximum de n?uds possibles par routeur.

  • 10

    Le coordinateur peut aussi tre configur pour fixer le nombre maximal de sauts possiblesdans le rseau (ce sont les sauts partir du coordinateur jusquau plus loin n?ud dans lerseau).Ces limites peuvent empcher un n?ud de joindre le rseau si ses parents ont t dj associsavec leur nombre maximal de n?uds possibles. Sinon, le n?ud doit parcourir le rseau tout enrespectant le nombre maximal de sauts possibles pour se connecter un routeur ou aucoordinateur sil est porte. Un tel n?ud est appel orphelin.Les quipements du rseau peuvent sauvegarder les informations des n?uds voisins dans untableau appel neighbour table .Un quipement dans le rseau peut tre dsassoci quand il envoie une demande pour lequitter.

    2.2.5 L?adressage dans un rseau ZigBee

    Le kit ZigBee de MatrixMultimedia, que nous allons prsenter dans le chapitre suivant, utilisela version 2 du module XBEE ZigBee qui est configur pour associer jusqu sept n?uds fils.

    Chaque n?ud dans le rseau ZigBee peut avoir jusqu trois types dadresses possibles, uneadresse MAC, adresse rseau et un nom.

    Les adresses MAC

    Chaque n?ud 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 peutlutiliser pour scuriser un tel rseau contre les communication non dsires tout en scannantles adresses MAC des n?uds qui veulent joindre le rseau et tout en rfrant au liste desadresses MAC permises pour se connecter. Le coordinateur peut accepter comme il peutrejeter un n?ud de joindre le rseau.

    Les adresses du rseau :

    Cest une adresse compose de 16 bits qui permet didentifier un n?ud dans le rseau. Cenest pas unique comme ladresse MAC car on peut trouver la mme adresse dans un autrerseau. Cette adresse est appele aussi ladresse courte, attribue par le n?ud parent (routeurou coordinateur) quand un quipement vient de joindre le rseau. Le coordinateur prendtoujours ladresse 0x0000.Dans certains cas, ladresse dun n?ud dans le rseau peut changer. Par exemple, dans le casdun n?ud mobile, ou dans le cas o le n?ud parent (on parle ici du routeur) est dconnect.Cest pourquoi, de prfrence on procde un adressage dynamique des n?uds pourmaintenir leur connexion dans le rseau.

    Adressage par nom

    A chaque n?ud, on peut assigner un nom sous la forme dune chane de caractres qui peutavoir jusqu vingt caractres ASCII. Ce type dadressage est utile dans le cas de crationdun rseau dynamique, qui est capable de scanner ou de chercher des n?uds particuliers. Onpeut appeler les n?uds qui incluent des capteurs par des noms qui commencent par CP.Quand le coordinateur ajoute des n?uds additionnels, il peut scanner les noms des n?uds et

  • 11

    sil trouve des noms qui commencent par CP, il saura ces n?uds 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 dejoindre le rseau. Une fois la connexion a t tablite, on lui attribut une adresse de 16 bits luipermettant 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 celuiqui possde ladresse de lentte du message qui laccepte, les autres le rejettent. Dans ce cas,le n?ud destination doit transmettre un accus de rception sous forme dun message de type Unicast au n?ud 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 n?uds actifs dans le rseau reoivent et analysent les messages. Etchaque n?ud qui reoit le message doit le transmettre en mode Broadcast pour tendre saporte. Ce mode de transmission est gnralement utilis dans le cas o un quipement essayede 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 n?uds doiventparticiper dans la transmission. Cela augmente les retards de transmission surtout dans le casdes rseaux tendus. Cest pourquoi, le nombre des Broadcast doit tre le minimumpossible. En effet, les messages transmis en ce mode ne sont pas suivis par un accus derception.

    Les messages en mode Unicast prennent beaucoup moins de temps que les messagestransmis en mode Broadcast , en effet seulement le n?ud source et le n?ud destinationsont concerns par la transmission et dans le pire des cas on trouve un ou plusieurs n?udsintermdiaires. Un autre avantage de ce mode de transmission est laccus de rception quinous 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 mcanismequi permet un n?ud de localiser un deuxime n?ud et lui envoyer les donnes.Dans les rseaux en toile, la tche nest pas complexe car tous les n?uds terminauxcommuniquent directement travers le coordinateur central. Pour les autres topologies, celademande 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 arbresoit le routage dynamique.Pour les petits et statiques rseaux, le routage en arbre est le meilleur. Sil y a un risque quun??ud cesse de fonctionner ou quon a des donnes critiques transmettre, le routage en arbredemeure 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 typede 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 despaquets. La premire dcision que la source doit faire est de choisir dans quel sens, vers lehaut ou vers le bas, faut-il envoyer les paquets. La rponse peut tre trouve tout enexaminant la structure dadressage.

    Quand un n?ud reoit un paquet, il vrifie si cest lui la destination ou lun de sesdescendants. Si cest le cas, il accepte le paquet sinon il le renvoie au n?ud appropri.

    Le problme avec cette technique est que le chemin pris par les paquets peut tre trs long carpour ce type de routage on suit la structure du rseau, tandis quil se peut quil y ait un cheminplus court.Lefficacit du routage peut tre amliore quand le rseau ZigBee permet aux routeurs dechercher des chemins raccourcis entre la source et la destination. On parle ainsi du routagedynamique.

  • 13

    Routage dynamique

    La procdure utilise gnralement le mode de transmission Broadcast . Le n?ud source nesait pas o il va transmettre le message ou le paquet donc il procde au mode Broadcast pour que tous les n?uds proches reoivent le message. Lidal est dutiliser ce modeseulement 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 Ondemand Distance Vector algorithm). La procdure commence quand un n?ud source envoi unpaquet de demande de voie de communication en mode Broadcast . Ce paquet contient desinformations comme ladresse de la destination dsire, ladresse de la source (pour que le??ud metteur peut recevoir les informations voulus comme accus) et un identificateur dedemande de voie appel Route Request ID qui sert aux n?uds rcepteurs de connatre sicette demande a t traite ou non avant.Quand un n?ud reoit cette demande, elle utilise le Route Request ID pour vrifier sil areu ou non cette demande avant. Si oui, il procde un rejet de ce paquet sinon il incrmentele compteur des sauts (qui mesure le nombre de sauts pris par le paquet pour arriver ce??ud) puis il le retransmet en mode Broadcast .Et comme la demande circule dun n?ud un autre, on enregistre automatiquement le cheminparcouru ds la source, car chaque n?ud, quand il reoit le paquet, il enregistre ladresse du??ud voisin qui lui a envoy ce paquet.

    Tous les routeurs ventuellement peuvent recevoir la demande puisquelle est transmise enmode Broadcast . Ils envoient donc une rponse au n?ud source. Et comme la rponseparcourt le rseau en retour, chaque routeur rencontr peut tablir un tableau de routage quicontient le bon chemin vers le n?ud destination.

    2.2.8 Mode veille

    Les n?uds terminaux utilisent le mode veille pour rduire leur consommation en nergie.Ceci permet daugmenter la dure de vie de batteries utilises par ces n?uds.

    La version 2 du module XBEE peut tre utilise sous deux formes du mode veille (dfini parle constructeur) :

    - Cyclic sleep- Pin sleep

    Cyclic sleep

    Ce mode utilise la mthode de veille cyclique pour rduire la consommation en nergie.Ainsi, le n?ud entre en mode veille pour un temps bien dtermin et se rveille aprs pour untemps fix. Cette procdure stablit cycliquement. Pendant la dure de veille du n?ud, sesparents enregistrent les messages transmis pour lui. Quand le n?ud se rveille, il transmet unedemande ses parents dans laquelle il vrifie sil y a des messages transmis pour lui pour lesrecevoir.

    Cette opration est contrle par un timer qui se met zro chaque fois que le n?udentre en mode veille. Les parents du n?ud qui se met en veille acceptent tous les messagesadresss ce n?ud et les enregistrent dans un buffer jusqu ce que le n?ud se rveille.

  • 14

    Ces messages sont appels ainsi des messages indirects . Les parents ne peuventenregistrer quun seul message indirect chaque fois le n?ud 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 n?udparent peut conclure quil y a un problme concernant le n?ud terminal. Ce problme peuttre enregistr puis utilis pour signaler quun n?ud a chou de se rveiller.

    Nous signalons que les n?uds parents ne peuvent pas enregistrs des messages transmis enmode 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 vientde transmettre ou de recevoir puis entre en mode veille. Quand il est en veille le module nerpond plus toutes activits relies au rseau, et quand on veut le rveiller on applique surson pin sleep enable un 0 logique.

    Quand on utilise ce mode de veille, les paquets destins pour le n?ud qui est en veille vonttre sauvegards pour une priode bien dtermin. Cest pourquoi le n?ud 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 pourprvenir toute intrusion indsirable des pirates ou des rseaux ZigBee voisins. Ces mesuresincluent :

    - Les listes de contrle daccs. Ainsi, seulement les n?uds dfinis comme amis peuvent joindre le rseau. Le coordinateur contient un tableau dadresses MAC desquipements qui peuvent joindre le rseau.

    - Les timer des messages sont remis zro. En fait, les messages qui dpassent lesdlais de transmission sont rejets pour prvenir toute nouvelle tentative dattaque aurseau.

    - Un cryptage AES 128 bits. Un algorithme de cryptage AES 128 bits implment sur lemodule XBEE assure la scurit des transmissions. Si le cryptage est permis, lecoordinateur pourra utiliser une cl de cryptage AES 128 bits et seul les quipementsqui ont la mme cl pourront communiquer dans le rseau. Cest pourquoi les routeurset les n?uds terminaux doivent tre configurs ds le dbut avec la bonne cl decryptage. Il existe une autre option mais qui est peu scurise. On procde commesuit : quand un n?ud veut joindre le rseau et si son adresse MAC se trouve dans letableau 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 n?uds- 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 n?ud ou quipement- Peut supporter jusqu 8 n?uds 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 debande (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 n?uds 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 tlcommandeou 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 laconsommation est un critre de slection. Ainsi, la domotique et les nombreux capteursquelle implmente apprcie particulirement cette technologie et dont la configuration durseau maille se fait automatiquement en fonction de lajout ou de la suppression de n?uds.On retrouve aussi ZigBee dans les contrles industriels, les applications mdicales, lesdtecteurs de fume et dintrusion

    Les n?uds terminaux sont conus pour fonctionner plusieurs mois (jusqu dix ans pour lesmoins 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 depriphriques.

    Pour concevoir notre application, nous avons men une tude comparative entre les diffrentskits existants sur le march afin de choisir le plus adquat. Notre choix ctait fix sur le kitEasy Zigbee Pack de Matrix Multimedia pour ses qualits de ces E-blocks, permettant delui 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 laffichagedes 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 lesordinateurs 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 MatrixMultimedia qui permet le transfert du fichier hexadcimale (.hex) au microcontrleur duMulti-programmateur- Le logiciel Flowcode Professionnel V3 de dveloppement de programme pour lesmicrocontrleurs.

    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 laparticularit davoir la possibilit dimplanter 4 diffrents types de microcontrleurs (14pattes, 18 pattes, 28 pattes, 40 pattes) tout en ayant la possibilit davoir une expansion debus. Les ports du microcontrleur sont en nombre de 5 relis avec des blocs travers desports 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 lesswitcher 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 caractristiquessuivantes :

    - Port A possde 6 pins configurables en tant quentr ou sortie. Cinq dentre eux peuvent treutiliss 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 ensrie (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 entresanalogiques.Ces caractristiques seront prises en compte lors de la ralisation de lapplication et du choixdes 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 LEDconfigurables 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 mmenature) 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 dansnimporte quel port du Multi programmateur selon la configuration choisie travers sonconnecteur DB9 mle. Elle possde aussi un second connecteur DB9 femelle lui permettantdassocier 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 (16caractres, 2-lignes alphanumriques) des donnes ou des messages provenant des autrespriphriques travers son port DB9 qui assure la fois sa connexion la masse et sacommunication.En plus, grce aux ports (J3, J4) de la carte, un choix de configuration est possible entreDefault et Patch, permettant de choisir la manire selon laquelle on veut brancher les pins duconnecteur 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 capteurde luminosit LDR (Light Sensor Resistor), et une rsistance variable (potentiomtre) pourmuler le fonctionnement dun capteur analogique. On peut aussi lui connecter des capteursanalogiques ou numriques appropris (relatif lapplication souhaite). Grce aux portsexternes (J3, J4) de la carte, un choix de configuration est possible entre J5 position par dfautet J6 position du patch. Cette dernire permettra de choisir la manire selon laquelle on veutbrancher les pins du connecteur DB9 et les pins relatifs aux capteurs de la carte, travers unraccordement 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 boardprsent 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 laconfiguration du rseau et selon lui se paramtre tout les n?uds en connexion, tout lesinformations passent par lui.

  • 21

    - Le routeur / End Device :Le routeur, est llment qui assure la liaison entre le End Device et le coordinateur ou unautre routeur. Il amplifie le signal entre ses deux composants pour assurer la puissancencessaire la communication.Le End Device, cest llment extrme du rseau il ne peut communiquer quavec lerouteur ou le coordinateur et ne pouvant pas transmettre un signal direct un deuxime EndDevice.

    Figure 14 : E-Block Zigbee board [3]

    Ayant un connecteur de type DB9 pour la connexion au multi-programmateur, la carte estaussi dote dun module XBEE (professionnel-2007) version 2 lui assurant une compatibilitavec les diffrents modules des versions antrieures (Voir Annexe).

    Possdant une antenne planaire, le module XBEEV2 PRO une porte de 100 mtres. Il estcontrl par un ensemble de commandes ASCII connues sous le nom de AT commandes. Pardfaut 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 chanede 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

    Figure 15 : Modle dune AT commande

    Le mode de commande est termin si un temps darrt par dfaut de dix secondes ou enenvoyant la commande de sortie ATCN.Le paramtre hexadcimal optionnel ce module V2 XBEE, existant dans la structure de laAT commande prsente ladresse du n?ud vers laquelle on va envoyer la commande. Siaucun n?ud de destination nest prdfini toutes les donnes sont transfres comme unmessage dmission tous les n?uds.

    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 offATKY AES Encryption Key

    3.3 Logicielles fournits

    - PICmicro Parallel Programmer (PPP V3) :

    Cest un logiciel programmateur des Pic dvelopp par Matrix Multimedia permettant lafois la configuration de la frquence de fonctionnement, la tension minimale de travail, laconfiguration du programme flash et lenvoi du fichier hexadcimale (.hex) aumicrocontrleur situ au Multi-programmateur travers un port USB. Un pic situ dans lemulti programmateur (identifi par le nom ppp) intercepte linformation du port USB et letransmet 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 programmespeuvent contrler des priphriques externes connects au microcontrleur comme des diodesLED, 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 travailprincipale dans laquelle s'affiche lorganigramme, plusieurs barres d'outils qui permettentd'ajouter des icnes et des composants lapplication, trois fentres spcifiques pour montrerl'tat du microcontrleur ainsi que des composants attachs et enfin deux fentres quimontrent 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 n?udsterminaux. Le coordinateur est responsable de la cration dun rseau ZigBee. En effet ilpermet aux autres quipements de joindre le rseau. Dans ce cas, le coordinateur a deux??uds fils, configurs comme des n?uds terminaux. Chaque n?ud comporte deuxcapteurs dont un capteur de temprature et un capteur PIR (Passive InfraRed) dtecteur demouvement plus un afficheur LCD pour laffichage des informations locales collectes desdeux capteurs. En outre, le n?ud 1 comporte un ensemble dinterrupteur utilis commeclavier pour la saisie du code dactivation et de dsactivation de lalarme. Pour activerlalarme, il suffit dentrer le code 1234 et pour la dsactiver on tape le code 4321. Lecoordinateur comporte un afficheur LCD et un quipement de signalisation de dclenchementde lalarme (buzzer). Lafficheur affiche les informations collectes des n?uds 1 et 2.Laffichage comporte les tempratures locales mesures et les tats des capteurs PIRdtecteurs de mouvement pour les zones 1 et 2. En cas de dpassement de seuil detemprature dans lune des zones ou les deux, lalarme se dclenche pour signaler quil y a unincendie dans lune des zones. Lalarme peut tre aussi dclenche au cas o il y a uneintrusion dtecte par les capteurs PIR dans les deux zones. Enfin, pour augmenter la scuritde notre application on a eu recourt a loption de cryptage de donnes, qualit support par lemodule XBee 2. En effet tout transfert de donnes sera crypt laide dun cryptage AESayant une cl de 128 bits. Cette approche a t utilise pour se prserver de toutes possibilitsde piratage du rseau par un n?ud extrieur.

    Figure 17 : Systme dalarme

    Coordinateur

    TerminalPIR2

    temprature2

    Afficheur2LCD

    N?ud 2 (zone2)

    ZigBee ZigBeePIR1

    temprature1

    switcheur

    Afficheur1LCD

    ??ud 1 (zone1) Afficheur3LCD

    Coordinateur

    Signalisation dalarme

    Centrale de supervision

    switcheur

    Symboles

  • 25

    4.1.2 Dcomposition du systmeLe systme est compos du coordinateur, du n?ud 1 et n?ud 2.

    Coordinateur

    Le coordinateur reprsent par la figure 18 est compos de :

    - Un afficheur LCD branch dans le port D du microcontrleur (PIC16F877A). Il permetdafficher les informations reus des n?uds 1 et 2 et ltat du systme dalarme.

    - Un module ZigBee branch dans le port C du microcontrleur permettant de leconnecter avec aux n?uds 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 encas de dclenchement de lalarme.

    Figure 18 : Coordinateur du rseau

    Port E

    Port B

    PIC 16F877A

    Port DPort 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 aufonctionnement 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 desinformations

    Dbut

    Initialisation durseau

    Connexions auxdeux n?uds

    Tant que 1

    Calcul de parit

    SiParit correcte

    ?Oui

    Non

    Affichage desinformations reus

    des deux zones

    Traitement desinformations 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 n?uds :

    Notre systme est constitu de deux n?uds seulement. Le coordinateur procde donc chaquefois un envoi de demande de connexion (envoi de 0). Une fois un n?ud est connect, ilenvoie une rponse gale 1 si le n?ud 1 est connect ou une rponse gale 2 si le??ud 2 est connect. Le compteur des n?uds connects est incrment chaque fois quun??ud se connecte, une foi les deux n?uds sont connects, la procdure de connexion dcritedans la figure 20 sachve.

    Figure 20 : Organigramme de connexion aux deux n?uds

    Connexions auxdeux n?uds

    Fin tant que

    Non

    Sirponse = 1

    ? N?ud 1 est connect

    ??uds connects++

    Oui

    Attente de rponsedes n?uds

    Tant que (n?uds connects < 2)

    Envoi de 0

    Envoi de 0

    Non

    Sirponse = 2

    ? ??ud 2 estconnect

    ??uds connects++

    Oui

  • 28

    Rception des informations :

    Lorganigramme de rception des informations des deux n?uds 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 52 100 0 128 (2+100+0+128)

    / 4 = 57

    Octet 1 Octet 2 Octet 3 Octet 4 Octet 51 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 reuesdu n?ud 1

    2 si les informations sont reuesdu n?ud 2

    Octet 1 = 1 ou 2

    Octet 2 = valeur de temprature de lazone 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 desinformations

    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 tramedinformation reue est correcte ou non. En effet, le calcul se fait comme suit :Parit = (octet1+ octet2+ octet3+ octet4) / 4La 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 lcranLCD 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

    NonOui

    Non

    Dclencherlalarme

    SiSystme dalarme

    est activ?

    Oui

    Si(Commande &

    Commande 3) ou (&Commande 4)

    ?

    SiCommande &Commande 2

    ?

    Oui

    Non

    SiCommande &Commande 1

    ?

    Oui

    Non

    Dsactiver lesystme dalarme

    Activer le systmedalarme

    Traitement desinformations reus

  • 30

    Les commandes :

    La prise des dcisions faite par le coordinateur est la consquence du traitement de loctet 4de la trame dinformation reue des deux n?uds 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)

    ??ud 1

    Tel que lillustre la figure 25, le n?ud1 est compos de :

    - Un afficheur LCD branch dans le port D du microcontrleur (PIC16F877A) pourafficher 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 lazone 1. Le capteur de temprature est remplac dans notre cas par un potentiomtrepour faire varier la temprature manuellement. On procde ici une conversionanalogique numrique puisque le signal reu du capteur est analogique.

    - Un module ZigBee branch dans le port C du microcontrleur pour pouvoir envoyerles 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 commeclavier pour entrer le code dactivation ou de dsactivation de lalarme. Un code de1234 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 commecapteur PIR pour dtecter sil y a intrusion ou non dans la zone 1.

    Figure 25 : ??ud 1 du rseau

    Port B

    Port E

    Port D

    Port A

    Port C

    PIC 16F877A

  • 32

    Organigramme de fonctionnement du n?ud 1

    Lorganigramme prsent dans la figure 26 dcrit le fonctionnement global du n?ud 1 :

    Figure 26 : Organigramme de fonctionnement du n?ud 1

    Dbut

    Tant que 1

    Echantillonnagede temprature

    Enregistrement delchantillon

    Saisie du code

    Non

    Si Temprature > seuil

    ? Commande = Commande ou commande 4

    AffichageLCD

    Oui

    Non

    Si PIR = 1 ?

    Commande = Commande ou commande 3

    AffichageLCD

    Oui

    Calcul de parit

    1 s

    Fin tant que

    Fin

    Initialisation du??ud 1

    Connexion aucoordinateur

    Envoi dune tramedinformation

  • 33

    Initialisation du n?ud 1 :

    Cette tape consiste configurer le n?ud 1 avec les paramtres ncessaires au fonctionnementdu rseau (tout en respectant la configuration du coordinateur fix prcdemment). Les phasesde 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 n?ud puisse se connecter au rseau, il envoie une demande de connexion et attendque le coordinateur lui rponde par un 0. Si cest le cas, la connexion est russie et le n?udprocde un envoi de 1 au coordinateur pour que ce dernier puisse conclure sur la russitede la procdure de connexion. La procdure de connexion est dcrite par la figure 27.

    Figure 27 : Organigramme de connexion au coordinateur

    Connexion aucoordinateur

    Attente de rponsedu coordinateur

    Fin tant que

    Non

    SiRponse = 0

    ?Connexion au rseau

    russite

    Envoi de 1

    Oui

    Tant queRponse < > 0

    Demande deconnexion

  • 34

    Saisie code :

    Lactivation du systme dalarme se fait par lintermdiaire dun bloc dinterrupteurs. Eneffet, pour activer ou dsactiver le systme, il suffit dappuyer sur le SW0 (switcheur 0) et lemaintenir jusqu ce quun message apparaisse demandant dentrer le code. Si le code entrest 1234, le n?ud doit envoyer une commande dactivation du systme dalarme(commande 2) au coordinateur. Si le code entr est 4321, le n?ud doit envoyer unecommande de dsactivation du systme dalarme (commande 1). La procdure de saisie decode 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 unchantillonnage chaque trois secondes pour pouvoir le convertir en numrique. Le signal ainsiconverti pourra tre enregistr dans loctet 2 de la trame dinformation envoyer avant dtretrait par le microcontrleur.

    Traitement faire par le microcontrleur :

    Les donnes issues des capteurs doivent tre traites par le microcontrleur pour pouvoirenvoyer les bonnes commandes au coordinateur. Selon les commandes reues, ce dernier doitprendre les bonnes dcisions. Les traitements faire sont :

    Non

    Non

    SiSW0 = 1

    ?

    Oui

    Entrer code

    Non

    SiCode = 1234

    ?Commande = commande ou

    commande 2

    Oui

    SiCode = 4321

    ?

    Oui

    Commande = commande oucommande 1

    Rception desinformations

  • 35

    - Si la temprature dpasse le seuil fix, loctet 4 de la trame dinformation envoyerdoit 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 commandecorrespondante (commande 3) et on procde simultanment un affichage localprventif sur un cran LCD.

    Calcul de Parit :

    On procde un calcul de parit pour pouvoir contrler les donnes transmises et juger deleur concordance la rception. En effet, le calcul se fait comme suit :Parit = (octet1+ octet2+ octet3+ octet4) / 4La 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 sontenvoyes du n?ud 1

    2 si les informations sontenvoyes du n?ud 2

    Envoi dune tramedinformation

    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 lazone 1 ou 2

  • 36

    ??ud 2

    La figure 30 schmatise les diffrents lments du n?ud 2 qui est compos de :

    - Un afficheur LCD branch dans le port B du microcontrleur (PIC16F877A) pourafficher 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 lazone 2. Le capteur de temprature est remplac, dans notre cas, par un potentiomtrepour faire varier la temprature manuellement. On procde ici une conversionanalogique numrique puisque le signal reu du capteur est analogique.

    - Un module ZigBee branch dans le port C du microcontrleur pour pouvoir envoyerles 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 commecapteur PIR pour dtecter sil y a intrusion ou non dans la zone 2.

    Figure 30 : ??ud 2 du rseau

    Organigramme de fonctionnement du n?ud 2

    Le n?ud 2, prsente globalement le mme fonctionnement que le premier n?ud. Toutefois, laseule diffrence consiste en limpossibilit dactiver et de dsactiver le systme dalarme laide de ce n?ud. De plus, lchantillon de temprature est pris aux 2 secondes au lieu duneseconde, comme ctait le cas pour le premier noeud.

    La figure 31 illustre le fonctionnement du n?ud 2.

    Port A

    Port E

    PIC 16F877A

    Port BPort C

  • 37

    Figure 31 : Organigramme de fonctionnement du n?ud 2

    Calcul de parit

    Dbut

    Initialisation du??ud 2

    Connexion aucoordinateur

    Echantillonnagede temprature

    Enregistrement delchantillon

    Non

    Si Temprature > seuil

    ? Commande = Commande ou commande 4

    AffichageLCD

    Oui

    Non

    Si PIR = 1 ?

    Commande = Commande ou commande 3

    AffichageLCD

    Oui

    2s

    Fin tant que

    Fin

    Envoi dune tramedinformation

    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 filpeu couteux et faible consommation d'nergie sont nombreuses. Cette tendance a favorisl'introduction de la norme ZigBee. Il s'agit d'un protocole qui permet la transmission dedonnes faible dbit et sur une porte rduite. Le protocole ZigBee bas sur la norme IEEE802.15.4 reprsente donc une solution adquate pour de nombreuses applications domotiqueset industrielles.

    Notre projet de fin d'tudes, ralis au sein de l'entreprise ARABCOM, vise matriser lanorme 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 utilisest le Easy Zigbee Pack de Matrix Multimedia.

    Le premier chapitre de ce rapport est une revue de la littrature qui dcrit la norme ZigBee depoint de vue thorique, technique et pratique. Dans le deuxime chapitre, nous avons prsentle kit Easy Zigbee Pack et ses principaux modules. Le troisime chapitre est ddi audveloppement de l'application et la discussion des diffrentes tapes suivies pour laralisation du systme d'alarme. Nous avons aussi prsent, dans ce chapitre, les diffrentsorganigrammes Flowcode proposs.

    Ce projet tait une occasion pour se familiariser avec le protocole Zigbee et le kit EasyZigbee Pack. Comme perspectives de ce travail, nous comptons procder loptimisation dusystme, la conception de lensemble des cartes pour des circuits personnaliss afin davoirdes blocs optimiss et mobiles. La mise en ?uvre des diffrents blocs de notre applicationdans un ensemble de circuits imprims adapts aux capteurs et aux priphriques associsfavorisera 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, ,janvier 2008

    [3] Matrix multimedia, Zigbee board datasheet, E-blocks? Zigbee board,

    [4] Bart Huyskens, John Dobson, Steve Tandy, An Introduction to MicrocontoleurProgramming,

    Articles de priodiques lectroniques

    [5] Anne-Francoise Pele, ZigBee, la norme de communication sans fil basse consommation,EE Times Europe Disponible sur : 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

    AnnexesE-blocks? Zigbee board

    Document code: EB051-30-1

    Zigbee board datasheetEB051-00-1

    Contents1. About this document.................................................................................................................................................................. 22. General information................................................................................................................................................................... 33. Board layout .............................................................................................................................................................................. 54. Testing this product ................................................................................................................................................................... 65. Circuit description ..................................................................................................................................................................... 7

    Copyright Matrix Multimedia Limited 2008

  • 42

    E-blocks? Zigbee board

    Document code: EB051-30-1

    1. About this documentThis 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 copyrightPIC and PICmicro are registered trademarks of Arizona Microchip Inc.E-blocks is a trademark of Matrix Multimedia Limited.

    2. Other sources of informationThere are various other documents and sources that you may find useful:

    Getting started with E-Blocks.pdf EB355This describes the E-blocks system and how it can be used to develop complete systems for learning electronics and forPICmicro programming.

    3. DisclaimerThe information in this document is correct at the time of going to press. Matrix Multimedia reserves the right tochange specifications from time to time. This product is for development purposes only and should not be used forany life-critical application.

    4. Technical supportIf you have any problems operating this product then please refer to the testing section of this document first. You willfind the latest software updates, FAQs and other information on our web site: www.matrixmultimedia.comIf you still have problems please email us at: [email protected].

    Copyright Matrix Multimedia Limited 2008

  • 43

    E-blocks? Zigbee board

    Document code: EB051-30-1

    2. General information

    1. DescriptionProvides 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 meshnetworking, simple addressing structures, route detection, route repair, guaranteed delivery and low power operationmodes.

    The EB051 Zigbee E-Blocks are fully compliant with both the Zigbee pro (07) and ZNET (08) Zigbee standards. Theboards can be used create a network of dynamic moveable Zigbee nodes, or to interface with an existing Zigbeenetwork.

    Zigbee provides a transparent layer for sending and receiving data from the network. Therefore once the module hasbeen configured and assigned to the correct address then sending and receiving data is as simple as sending andreceiving 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 OperationThe Zigbee boards use a V2 XBEE module to interface to the Zigbee network. These modules are compliant withthe 2007 Zigbee Pro / ZNET standard.

    The V2 XBEE modules come in two varieties. One is configured to be the Zigbee network coordinator (EB051C) andthe other is configured to be either a router node or an end device node (EB051R). The variety of the module ismarked 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 canconsist of either other Router nodes or End device nodes. If an End device node is configured to sleep then the parentdevice associated for that node will be responsible for buffering any incoming data. Therefore if you are usingsleeping 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-blocks? Zigbee 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 beused. AT commands are strings of ASCII data that are sent over the RS232 bus. For more information on the ATcommands used by the XBEE module please refer to the V2 XBEE datasheet.

    Example AT commandATID 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-blocks? Zigbee board

    Document code: EB051-30-1

    Board layout

    EB051-74-1.cdr

    1) 9 Way D-type Plug2) Patch system3) Rx and Tx UART routing selection4) CTS, RTS and SLEEP routing selection5) Input supply voltage select6) Input supply voltage screw terminals7) 3.3V regulator8) Voltage level shifter9) Status LED10) XBEE Zigbee module11) Coordinator / Router / End device marking.

    Copyright Matrix Multimedia Limited 2008

  • 46

    E-blocks? Zigbee board

    Document code: EB051-30-1

    3. Testing this productThe following program will test the circuit boards communication with the XBEE module. For further tests to test theXBEE modules RF operation you will require at least 1 EB051C and 1 or more EB051R Zigbee boards. The test filecan be downloaded from www.matrixmultimedia.com.

    1. System SetupMulti-programmer board (EB006) with:

    B006 Options ettingPower supply External, 14VPICmicro device 16F877ASW1 (Fast/Slow) Dont careSW2 (RC/Xtal) XtalXtal frequency 19.6608MHzPort APort B LCD board EB005Port C Zigbee board EB051Port DPort ETest 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 Multiprogrammer3 Connect wire from +V of LCD board to +V of Multiprogrammer4 Program the a PIC16F877A with the test program Zigbee.hex

    5 Insert the Zigbee board into Port C of the Multiprogrammer6 Insert the XBEE module into the socket on the Zigbee board7 Connect power to the Zigbee board via the +V screw terminals8 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-blocks? Zigbee board

    Document code: EB051-30-1

    4. Circuit description1. 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 Zigbeemodule.

    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