Articles

Zigbee

există trei clase de dispozitive Zigbee:

  • Zigbee coordonator (ZC): dispozitivul cel mai capabil, coordonatorul formează rădăcina arborelui de rețea și poate punte la alte rețele. Există exact un coordonator Zigbee în fiecare rețea, deoarece este dispozitivul care a pornit inițial rețeaua (specificația Zigbee LightLink permite, de asemenea, funcționarea fără un coordonator Zigbee, făcându-l mai utilizabil pentru produsele de acasă de pe raft). Stochează informații despre rețea, inclusiv acționând ca centru de încredere și depozit pentru cheile de securitate.
  • Zigbee router (ZR): pe lângă rularea unei funcții de aplicație, un router poate acționa ca un router intermediar, transmitând date de pe alte dispozitive.
  • Zigbee end device( ZED): conține suficientă funcționalitate pentru a vorbi cu nodul părinte (fie coordonatorul, fie un router); nu poate transmite date de la alte dispozitive. Această relație permite nodului să doarmă o cantitate semnificativă de timp, oferind astfel o durată lungă de viață a bateriei. Un ZED necesită cea mai mică cantitate de memorie și, prin urmare, poate fi mai puțin costisitor de fabricat decât un ZR sau ZC.

protocoalele Zigbee actuale acceptă rețele activate de baliză și non-baliză. În rețelele care nu sunt activate de beacon, se utilizează un mecanism de acces al canalului CSMA/CA neslotted. În acest tip de rețea, routerele Zigbee au de obicei receptoarele active continuu, necesitând o putere suplimentară. Cu toate acestea, acest lucru permite rețele eterogene în care unele dispozitive primesc continuu, în timp ce altele transmit atunci când este necesar. Exemplul tipic al unei rețele eterogene este un comutator de lumină fără fir: Nodul Zigbee de la lampă poate primi în mod constant, deoarece este alimentat în mod fiabil de sursa de alimentare a lămpii, în timp ce un întrerupător de lumină alimentat de la baterie ar rămâne adormit până când comutatorul este aruncat. În acest caz, comutatorul se trezește, trimite o comandă lămpii, primește o confirmare și revine la somn. Într-o astfel de rețea, nodul lamp va fi cel puțin un router Zigbee, dacă nu coordonatorul Zigbee; nodul de comutare este de obicei un dispozitiv final Zigbee. În rețelele activate de beacon, routerele Zigbee transmit balize periodice pentru a-și confirma prezența la alte noduri de rețea. Nodurile pot dormi între balize, prelungind astfel durata de viață a bateriei. Intervalele de baliză depind de rata de date; acestea pot varia de la 15,36 milisecunde la 251,65824 secunde la 250 kbit/s, de la 24 milisecunde la 393,216 secunde la 40 kbit/s și de la 48 milisecunde la 786,432 secunde la 20 kbit/s. intervalele lungi de baliză necesită o sincronizare precisă, care poate fi costisitoare de implementat în produsele cu costuri reduse.

în general, protocoalele Zigbee minimizează timpul în care radioul este pornit, astfel încât să reducă consumul de energie. În rețelele beaconing, nodurile trebuie să fie active doar în timp ce se transmite un beacon. În rețelele care nu sunt activate de baliză, consumul de energie este decisiv asimetric: unele dispozitive sunt întotdeauna active, în timp ce altele își petrec cea mai mare parte a timpului dormind.

cu excepția Smart Energy Profile 2.0, dispozitivele Zigbee trebuie să se conformeze standardului IEEE 802.15.4-2003 Wireless Wireless Personal Area Network (LR-WPAN). Standardul specifică straturile de protocol inferioare—stratul fizic (PHY) și porțiunea de control al accesului media a stratului de legătură de date. Modul de bază de acces canal este carrier-sense acces multiplu cu evitarea coliziunilor (CSMA/CA). Adică, nodurile comunică într-un mod oarecum analog cu modul în care oamenii conversează: un nod verifică pe scurt pentru a vedea că alte noduri nu vorbesc înainte de a începe. CSMA/CA nu este utilizat în trei excepții notabile:

  • Confirmări de mesaje
  • balizele sunt trimise pe un program de sincronizare fixă.
  • dispozitivele din rețelele activate de baliză care au cerințe de latență redusă, în timp real, pot utiliza, de asemenea, intervale de timp garantate.

network layerEdit

principalele funcții ale stratului de rețea sunt de a permite utilizarea corectă a substratului MAC și de a oferi o interfață adecvată pentru utilizarea de către următorul strat superior, și anume stratul de aplicație. Capacitățile și structura sa sunt cele asociate de obicei unor astfel de straturi de rețea, inclusiv rutarea. Funcția stratului de rețea este exact așa cum sună; se ocupă de funcții de rețea, cum ar fi conectarea, deconectarea și configurarea rețelelor. Acesta va adăuga o rețea, va aloca adrese și va adăuga și elimina anumite dispozitive. Acest strat folosește topologii de stele, ochiuri și arbori. Aceasta adaugă o interfață la stratul de aplicație.

pe de o parte, entitatea de date creează și gestionează unitățile de date ale stratului de rețea din sarcina utilă a stratului de aplicație și efectuează rutarea conform topologiei curente. Pe de altă parte, există controlul stratului, care este utilizat pentru a gestiona configurația noilor dispozitive și pentru a stabili noi rețele: poate determina dacă un dispozitiv vecin aparține rețelei și descoperă noi vecini și routere. Controlul poate detecta, de asemenea, prezența unui receptor, care permite comunicarea directă și sincronizarea MAC.

protocolul de rutare utilizat de stratul de rețea este AODV. În AODV, pentru a găsi dispozitivul de destinație, AODV transmite o cerere de rută tuturor vecinilor săi. Vecinii transmit apoi cererea către vecinii lor și mai departe până când se ajunge la destinație. Odată ce se ajunge la destinație, acesta trimite răspunsul său traseu prin transmisie unicast urmând calea cel mai mic cost înapoi la sursă. Odată ce sursa primește răspunsul, își va actualiza tabelul de rutare pentru adresa de destinație a următorului salt în cale și costul căii.

Application layerEdit

stratul de aplicație este stratul cel mai înalt nivel definit de specificație și este interfața eficientă a sistemului Zigbee pentru utilizatorii săi finali. Acesta cuprinde majoritatea componentelor adăugate de specificația Zigbee: atât ZDO, cât și procedurile sale de gestionare, împreună cu obiectele de aplicație definite de producător, sunt considerate parte a acestui strat. Acest strat leagă tabele, trimite mesaje între dispozitive legate, gestionează adrese de grup, reasamblează pachete și transportă, de asemenea, date. Acesta este responsabil pentru furnizarea de servicii pentru profilurile dispozitivului Zigbee.

Componentsedit

ZDO (Zigbee device object), un protocol din stiva de protocol Zigbee, este responsabil pentru gestionarea generală a dispozitivului, cheile de securitate și politicile. Este responsabil pentru definirea rolului unui dispozitiv fie ca coordonator, fie ca dispozitiv final, așa cum s-a menționat mai sus, dar și pentru descoperirea de noi dispozitive (one-hop) în rețea și identificarea serviciilor oferite. Apoi, poate continua să stabilească legături sigure cu dispozitive externe și să răspundă în consecință cererilor obligatorii.

sub-stratul de suport al aplicației (APS) este cealaltă componentă standard principală a stratului și, ca atare, oferă o interfață și servicii de control bine definite. Funcționează ca o punte între stratul de rețea și celelalte elemente ale stratului de aplicație: păstrează tabele de legare actualizate sub forma unei baze de date, care poate fi utilizată pentru a găsi dispozitive adecvate în funcție de serviciile necesare și de cele oferite de diferitele dispozitive. Ca uniune între ambele straturi specificate, ea rutează, de asemenea, mesaje pe straturile stivei de protocol.

Communication modelsEdit

Zigbee high-level communication model

o aplicație poate consta în obiecte de comunicare care cooperează pentru a îndeplini sarcinile dorite. Obiectivul Zigbee este de a distribui munca între multe dispozitive diferite care se află în nodurile Zigbee individuale care la rândul lor formează o rețea (lucrarea menționată va fi de obicei în mare parte locală pentru fiecare dispozitiv, de exemplu, controlul fiecărui aparat de uz casnic).

colecția de obiecte care formează rețeaua comunică folosind facilitățile oferite de APS, supravegheate de interfețele ZDO. Serviciul de date al stratului de aplicație urmează o structură tipică cerere-confirmare / indicație-răspuns. Într-un singur dispozitiv, pot exista până la 240 de obiecte de aplicație, numerotate în intervalul 1-240. 0 este rezervat pentru interfața de date ZDO și 255 pentru difuzare; intervalul 241-254 nu este utilizat în prezent, dar poate fi în viitor.

două servicii sunt disponibile pentru utilizarea obiectelor aplicației (în Zigbee 1.0):

  • serviciul pereche cheie-valoare (KVP) este destinat configurării. Acesta permite descrierea, cererea și modificarea atributului obiect printr-o interfață simplă bazată pe obținerea/set și primitivele de evenimente, unele permițând o cerere de răspuns. Configurația utilizează XML comprimat (XML complet poate fi folosit) pentru a oferi o soluție adaptabilă și elegantă.
  • serviciul de mesaje este conceput pentru a oferi o abordare generală a tratamentului informațiilor, evitând necesitatea de a adapta protocoalele aplicației și potențialele cheltuieli generale suportate de KVP. Permite transmiterea sarcinilor utile arbitrare pe cadre APS.

adresarea este, de asemenea, parte a stratului de aplicație. Un nod de rețea constă dintr-un transmițător radio conform 802.15.4 și una sau mai multe descrieri ale dispozitivului (practic colecții de atribute care pot fi chestionate sau setate sau care pot fi monitorizate prin evenimente). Transmițătorul este baza pentru adresare, iar dispozitivele dintr-un nod sunt specificate de un identificator de punct final în intervalul 1-240.

comunicare și device discoveryEdit

pentru ca aplicațiile să comunice, dispozitivele lor care cuprind trebuie să utilizeze un protocol de aplicație comun (tipuri de mesaje, formate și așa mai departe); aceste seturi de convenții sunt grupate în profiluri. Mai mult, legarea este decisă prin potrivirea identificatorilor de cluster de intrare și ieșire, unici în contextul unui profil dat și asociați unui flux de date de intrare sau ieșire într-un dispozitiv. Tabelele de legare conțin perechi sursă și destinație.

în funcție de informațiile disponibile, descoperirea dispozitivului poate urma diferite metode. Când adresa de rețea este cunoscută, adresa IEEE poate fi solicitată utilizând comunicarea unicast. Când nu este, petițiile sunt difuzate (adresa IEEE face parte din sarcina utilă de răspuns). Dispozitivele finale vor răspunde pur și simplu cu adresa solicitată, în timp ce un coordonator de rețea sau un router va trimite, de asemenea, adresele tuturor dispozitivelor asociate cu acesta.

acest protocol extins de descoperire permite dispozitivelor externe să afle despre dispozitivele dintr-o rețea și serviciile pe care le oferă, ce puncte finale pot raporta atunci când sunt interogate de dispozitivul de descoperire (care le-a obținut anterior adresele). De asemenea, pot fi utilizate servicii de potrivire.

utilizarea identificatorilor de cluster impune legarea entităților complementare folosind tabelele de legare, care sunt menținute de coordonatorii Zigbee, deoarece tabelul trebuie să fie întotdeauna disponibil într-o rețea, iar coordonatorii sunt cel mai probabil să aibă o sursă de alimentare permanentă. Copiile de rezervă, gestionate de straturi de nivel superior, pot fi necesare de unele aplicații. Legarea necesită o legătură de comunicare stabilită; după ce există, se decide dacă se adaugă un nou nod la rețea, în conformitate cu politicile de aplicare și de securitate.

comunicarea se poate întâmpla imediat după asociere. Adresarea directă utilizează atât adresa radio, cât și identificatorul punctului final, în timp ce adresarea indirectă utilizează fiecare câmp relevant (adresă, punct final, cluster și atribut) și necesită trimiterea acestora către coordonatorul rețelei, care menține asociații și traduce cererile de comunicare. Adresarea indirectă este deosebit de utilă pentru a menține unele dispozitive foarte simple și pentru a minimiza nevoia lor de stocare. Pe lângă aceste două metode, este disponibilă difuzarea către toate punctele finale dintr-un dispozitiv, iar adresarea de grup este utilizată pentru a comunica cu grupuri de puncte finale aparținând unui set de dispozitive.