- „ZigBee“ architektūra:
- Duomenų perdavimas „ZigBee“
- „Xbee“ maršrutizatorių tinklo pagrindai ir koordinatorius
- Skirtinga tinklo topologija „ZigBee“
- „Xbee“ programinė įranga
- „XBee AT“ komandos:
Paprastai daugelis žmonių painiojasi su dviem terminais „ XBee“ ir „ZigBee“, dauguma jų juos vartoja pakaitomis. Bet iš tikrųjų taip nėra; „ZigBee“ yra standartinis belaidžio tinklo protokolas. „ XBee“ yra produktas, palaikantis įvairius belaidžio ryšio protokolus, įskaitant „ZigBee“, „Wi-Fi“ („Wi-Fly“ modulį), 802.15.4, 868 MHz modulį ir kt. Čia mes daugiausia dėmesio skiriame „Xbee / Xbee-PRO ZB RF“ moduliui, kurį sudaro „ZigBee“ programinės įrangos.
Tiesiog pagalvokite apie skaičiuoklę kompiuteryje, kur sudėtingi skaičiavimai atliekami su patogia vartotojo sąsaja. Užduotis būtų buvusi labai sunki ir varginanti, jei būtų buvę tik aparatinė įranga. Taigi aukščiausiu lygiu prieinamumas programinei įrangai palengvina problemų sprendimo procesą. Visas procesas yra padalintas į programinės įrangos sluoksnius pagal tikrąją aparatinę įrangą, kurią vadina aukštesnieji lygiai.
Mes netgi naudojame sluoksnių sąvoką savo kasdieniame gyvenime. Pavyzdžiui, siunčiant kurjerį / laišką į draugo namus, siunčiant el. Laišką iš vieno pasaulio taško į kitą. Panašiai daugumoje šiuolaikinių tinklo protokolų netgi naudojama sluoksnių koncepcija, siekiant atskirti skirtingus programinės įrangos komponentus į nepriklausomus modulius, kuriuos galima surinkti įvairiais būdais. Gali tekti sutepti rankas, kad galėtumėte giliau suprasti „Xbee“ architektūrą, tačiau mes jums tai padarysime labai paprasti.
Pradėkime nuo kelių pagrindinių terminų, tokių kaip maršruto parinkimas, susidūrimo vengimas ir patvirtinimas. Norėdami suprasti pirmąjį terminą, tiesiog eikite jo pavadinimu, „maršrutu“, kuris reiškia sekti ar identifikuoti kelią. Tinklo srityje maršruto parinkimas reiškia duomenų krypties pateikimą nuo šaltinio mazgo iki paskirties mazgo. Kai du tinklo mazgai bando perduoti vienu metu, susidaro situacija, vadinama susidūrimu. Taigi, norint išvengti susidūrimo, paprastai „ Carrier Sense Multiple Access with Collision Avoidance“ (CSMA / CA) technika gali sužinoti daugiau apie CSMA naudodamiesi šia nuoroda. Iš esmės joje mazgai kalba taip pat, kaip ir žmonių pokalbiai; prieš pradėdami siųsti duomenis jie trumpai patikrina, ar niekas nekalba.
Kai tik imtuvas sėkmingai gauna perduotus duomenis, jis patvirtina siųstuvą. Negalima leisti, kad duomenų srautas užvaldytų imtuvo radiją. Bet kurio priimančio radijo greitis, kuriuo jis gali apdoroti gaunamus duomenis, yra ribotas, o atminties, kuriame saugomi gaunami duomenys, kiekis yra ribotas.
„ZigBee“ architektūra:
„ZigBee“ rietuvėje yra keturi pagrindiniai sluoksniai: fizinis, prieigos prie medijos, tinklo ir programų sluoksniai.
Programos sluoksnis apibrėžia įvairius adresavimo objektus, įskaitant profilius, grupes ir galinius taškus. Aukščiau pateiktame paveikslėlyje galite pamatyti „ZigBee“ kamino sluoksnius.
Tinklo sluoksnis: jis prideda maršruto parinktis, leidžiančias RF duomenų paketams pereiti kelis įrenginius (kelis „apynius“), kad duomenys būtų nukreipiami iš šaltinio į paskirties vietą (bendraamžis į kitą).
MAC sluoksnis valdo RF duomenų operacijas tarp kaimyninių įrenginių (taškas į tašką). MAC apima tokias paslaugas kaip pakartotinis perdavimo bandymas ir patvirtinimo valdymas bei susidūrimų išvengimo būdai.
Fizinis sluoksnis: jis apibrėžia, kaip prietaisai yra prijungti, kad būtų sukurtas tinklas; jis apibrėžia išėjimo galią, kanalų skaičių ir perdavimo greitį. Dauguma „ZigBee“ programų veikia 2,4 GHz ISM juostoje 250 kbps duomenų perdavimo sparta.
Daugelyje „XBee“ šeimų yra srauto valdymas, įvesties / išvesties, A / D ir indikatorių linijos, kurias galima sukonfigūruoti naudojant atitinkamas komandas. Analoginiai mėginiai grąžinami kaip 10 bitų vertės. Analoginis rodmuo keičiamas taip, kad 0x0000 reikštų 0V, o 0x3FF = 1,2V. (Modulio analoginiai įėjimai negali būti didesni nei 1,2 V)
Norėdami konvertuoti A / D rodmenį į mV, atlikite šiuos veiksmus:
AD (mV) = (A / D rodmuo * 1200 mV) / 1023
Duomenų perdavimas „ZigBee“
Galite skambinti į tinklą kaip programinės ir aparatinės įrangos derinį, kuris gali siųsti duomenis iš vienos vietos į kitą. Aparatūra yra atsakinga už signalų perdavimą iš vieno tinklo taško į kitą. Programinė įranga susideda iš instrukcijų rinkinių, kurie leidžia dirbti taip, kaip mes tikimės.
Paprastai duomenis „ZigBee“ paketais galima perduoti dviem būdais: vienraštis ir transliuojamas.
Transliacijos perdavimas:
Paprastais žodžiais „Broadcast“ reiškia radijo ar TV perduodamą informaciją / programą. Kitaip tariant, transliacijos siunčiamos į daugelį arba visus tinklo įrenginius. Transliacijos su „ ZigBee“ protokolu yra platinamos visame tinkle taip, kad visi mazgai gautų perdavimą. Norėdami tai pasiekti, koordinatorius ir visi maršrutizatoriai, kurie gauna transliaciją, tris kartus perduos paketą.
„Unicast“ perdavimas:
„Unicast“ perdavimas „ZigBee“ maršruto duomenyse iš vieno šaltinio įrenginio į kitą paskirties įrenginį. Paskirties įrenginys gali būti tiesioginis šaltinio įrenginio kaimynas, arba tarp jo gali būti keli apyniai. Pavyzdys pateiktas žemiau paveikslėlyje, paaiškinančiame dvikryptės jungties patikimumo atpažinimo mechanizmą.
„Xbee“ maršrutizatorių tinklo pagrindai ir koordinatorius
Ko jums reikia norint pasiekti draugo namus? Jums tiesiog reikia jo adreso. Panašiai, norint siųsti duomenis iš vieno „Xbee“ modulio į kitą, jums reikia jo unikalaus adreso. Kaip ir su žmonėmis, „Xbee“ turi net kelis adresus, kurių kiekvienas turi ypatingą vaidmenį kuriant tinklą. Yra dviejų tipų adresai: statinis adresas (64 bitų adresas) ir dinaminis adresas (16 bitų adresas).
Adresai:
64 bitų adresas yra unikalus visuotinai; „Xbee“ modulio viduje jį sutvirtina gamintojas. Joks kitas „ZigBee“ radijas žemėje neturės to paties statinio adreso, kiekvieno „xbee“ modulio gale galite pamatyti šį adresą, kaip parodyta žemiau, o ypač viršutinė adreso „0013A200“ dalis yra vienoda kiekvienam „xbee“ moduliui.
Prijungęs prie „ZigBee“ tinklo įrenginys gauna 16 bitų adresą, kuris turėtų būti unikalus vietoje. 16 bitų adresas 0x0000 skirtas koordinatoriui. Visi kiti įrenginiai atsitiktinai sugeneruotą adresą gauna iš maršrutizatoriaus arba koordinatoriaus įrenginio, leidžiančio prisijungti. 16 bitų adresas gali pasikeisti, kai nustatoma, kad du įrenginiai turi tą patį 16 bitų adresą, arba prietaisas palieka tinklą ir vėliau prisijungia (jis gali gauti kitą adresą).
Mazgo identifikatorius:
Mūsų smegenims visada lengviau prisiminti eilutes, o ne skaičių. Taigi kiekvienam tinklo „Xbee“ moduliui galima priskirti mazgo identifikatorių. Mazgo identifikatorius yra simbolių rinkinys, ty eilutės, kurios gali būti patogesnis žmonėms adresuoti tinkle esantį mazgą.
Asmeniniai tinklai:
Šių „Xbee“ modulių sukurtas tinklas vadinamas asmeniniais tinklais arba PAN. Kiekvienas tinklas yra apibrėžtas unikaliu PAN identifikatoriumi (PAN ID). Šis identifikatorius yra bendras tarp visų to paties tinklo įrenginių. „ZigBee“ palaiko ir 64 bitų, ir 16 bitų PAN ID. Abu PAN adresai naudojami unikaliam tinklo identifikavimui. Įrenginiai tame pačiame „ZigBee“ tinkle turi turėti tuos pačius 64 ir 16 bitų PAN ID. Jei vienas nuo kito veikia keli „ZigBee“ tinklai, kiekvienas turi turėti unikalius PAN ID.
16 bitų PAN ID yra naudojamas MAC sluoksniui adresuoti visuose radijo dažnių duomenų perdavimuose tarp tinklo įrenginių. Tačiau dėl ribotos 16 bitų PAN ID adresavimo vietos (65 535 galimybės) gali būti tikimybė, kad keli „ZigBee“ tinklai (vienas kito diapazone) gali turėti tą patį 16 bitų PAN ID. Norėdami išspręsti šiuos konfliktus, „ZigBee Alliance“ sukūrė 64 bitų PAN ID. „ZigBee“ apibrėžia tris skirtingus įrenginių tipus: koordinatorių, maršrutizatorių ir galutinį įrenginį.
Kiekvienam tinklui visada reikalingas vienas koordinatorius, kuris įkrauna tinklą. Taigi, jis niekada negali užmigti. Ji taip pat yra atsakinga už kanalo ir PAN ID (tiek 64 bitų, tiek 16 bitų) pasirinkimą tinklo paleidimui. Tai gali leisti maršrutizatoriams ir galutiniams įrenginiams prisijungti prie tinklo. Tai gali padėti nukreipti duomenis į tinklą.
Tinkle gali būti keli maršrutizatoriai. Vienas maršrutizatorius gali gauti signalus iš kitų maršrutizatorių / EP (galinių taškų). Taip pat niekada negali miegoti. Kad galėtų perduoti, priimti ar nukreipti duomenis, jis turi prisijungti prie „Zigbee PAN“. Po prisijungimo jis gali leisti maršrutizatoriams ir galutiniams įrenginiams prisijungti prie tinklo. Prisijungus, jis taip pat gali padėti nukreipti duomenis. Jis gali buferizuoti RF duomenų paketus, skirtus miego įrenginiams.
Galutiniai taškai taip pat gali būti keli. Taupant energiją, jis gali veikti miego režimu. Kad galėtų perduoti ar priimti duomenis, jis turi prisijungti prie „ZigBee PAN“ ir net negali leisti įrenginiams prisijungti prie tinklo. Duomenų perdavimas / priėmimas priklauso nuo tėvų.
Kadangi galutinis įrenginys gali veikti miego režimu, pagrindinis įrenginys turi buferį arba laikyti gaunamus duomenų paketus, kol galutinis įrenginys pabus ir gaus duomenų paketus.
Skirtinga tinklo topologija „ZigBee“
Tinklo topologija nurodo tinklo projektavimo būdą. Čia topologija yra visų nuorodų ir susiejimo įrenginių (koordinatoriaus, maršrutizatoriaus ir pabaigos įrenginių) tarpusavio ryšio geometrinis vaizdavimas.
Čia mes turime keturis pagrindinius topologinius tinklus, žvaigždę, hibridą ir medį.
Be Mesh topologija, kiekvienas mazgas yra sujungtas su kiekvienu kitu mazgu tikėtis galutinio prietaiso, nes galiniai įrenginiai negali bendrauti tiesiogiai. Norėdami įgalinti paprastą ryšį tarp dviejų „ZB“ radijo imtuvų, turėsite sukonfigūruoti vieną su koordinatoriaus programine aparatine įranga ir vieną su maršrutizatoriaus arba galinės programinės įrangos programine įranga. Pagrindinis „Mesh“ tinklo pranašumas yra tas, kad jei viena iš nuorodų tampa nebetinkama naudoti, ji neužtikrina visos sistemos.
Be star topologijos, kiekvienas prietaisas turi specialią taškas-taškas ryšį su centriniu kontrolierius (koordinatorius). Visi įrenginiai nėra tiesiogiai susieti vienas su kitu. Skirtingai nuo tinklo topologijos, žvaigždžių topologijoje vienas įrenginys nieko negali tiesiogiai siųsti į kitą įrenginį. Koordinatorius ar koncentratorius yra mainams: Jei vienas įrenginys nori siųsti duomenis kitam, jis siunčia duomenis koordinatoriui, kuris toliau siunčia duomenis į paskirties įrenginį.
Hibridinis tinklas yra tas tinklas, kuriame yra dviejų ar daugiau rūšių ryšio standartai. Čia hibridinis tinklas yra žvaigždžių ir medžių tinklo derinys, nedaug galinių įrenginių yra tiesiogiai prijungti prie koordinatoriaus mazgo, o kitiems galutiniams įrenginiams reikalinga pirminio mazgo pagalba duomenims gauti.
„ Tree“ tinkle maršrutizatoriai sudaro pagrindinius ir galutinius įrenginius, susidedančius iš esmės aplink kiekvieną maršrutizatorių. Tai nedaug skiriasi nuo tinklo konfigūracijos, išskyrus tai, kad maršrutizatoriai nėra sujungti, galite vizualizuoti šiuos tinklus naudodami aukščiau pateiktą paveikslą.
„Xbee“ programinė įranga
„XBee Programmable“ modulyje yra „Free scale“ procesorius. Šis programos procesorius yra tiekiamas įkrovos įkroviklis. Ši „XBee ZV“ programinė-aparatinė įranga yra pagrįsta „Embernet 3.xx ZigBee-PRO“ kaminu, „XBee-Znet 2.5“ modulius galima atnaujinti į šią funkciją. Programinę aparatinę įrangą galite patikrinti naudodami komandą ATVR, kurią aptarsime vėliau skyriuje. „XBee“ versijų numeriuose bus 4 reikšmingi skaitmenys. Versijos numerį taip pat galima pamatyti naudojant komandą ATVR. Atsakymas pateikia 3 arba 4 skaičius. Visi skaičiai yra šešioliktainiai ir gali būti nuo 0-0xF. Pranešama, kad versija yra „ABCD“. ABC skaitmenys yra pagrindinis leidimo numeris, o D - pagrindinio leidimo versijos numeris. 4 skyriuje aptarta API ir „Znet 2.5“ ir „ZB“ firmware beveik vienodos komandos.
Telekomunikacijų srityje visa „Hayes“ komanda yra konkrečiai kalbai skirtos komandos, sukurtos „Hayes“ modemui „Smart Modem“, 1981 m. Jie buvo trumpų žodžių serija, skirta valdyti modemą, kad komunikacija ir modemo nustatymas tais laikais būtų paprastas.
„XBee“ taip pat veikia komandų režimu ir išjungė AT komandas, kurios reiškia DĖMESIO. Šios komandos gali būti siunčiamos „XBee“ per terminalus. „XBee“ ir AT sukonfigūruoti „XBee“ radijo imtuvai turi du ryšio būdus.
Skaidrus: radijas perduoda gautą informaciją tik tolimojo radijo adresu, kuriam jis buvo sukonfigūruotas. Per nuoseklųjį prievadą siunčiamus duomenis „XBee“ gauna tokius, kokie yra.
Komanda: Šis režimas naudojamas kalbėti su radiju ir konfigūruoti kai kuriuos iš anksto sukonfigūruotus režimus, mes bendraujame su moduliais būdami šiame režime ir keičiame konfigūraciją.
Galite įvesti +++ ir palaukti sekundę nespaudžiant jokių kitų mygtukų, tada pranešimas „Gerai“ turėtų pasirodyti kaip terminalo vaizdas. Gerai, „XBee“ nurodo, kad praleido „COMMAND“ režimu ir yra pasirengęs gauti konfigūracijos pranešimus.
„XBee AT“ komandos:
AT (TEST): Tai yra bandymo komanda patikrinti, ar modulis atsako gerai, nes atsakymas patvirtina tą patį.
ATDH: didelis paskirties adresas. Norėdami sukonfigūruoti 64 bitų paskirties adreso viršutinius 32 bitus, DL ir DH kartu duoda jums 64 bitų paskirties adresą.
ATDL: žemas paskirties adresas. Tai dar kartą sukonfigūruojant apatinius 32 bitų 64 bitų paskirties adreso adresus.
ATID: ši komanda keičia PAN ID („Pers“ ID yra 4 baitai šešioliktainių ir gali svyruoti nuo 0000 iki FFFF
ATWR: rašykite. Parašykite parametrų reikšmes į nepastovią atmintį, kad parametrų modifikacijos išliktų atliekant vėlesnius nustatymus.
Pastaba: Išleidus WR, į modulį neturėtų būti siunčiami jokie papildomi simboliai
Gavę atsakymą „Gerai“.
ATRE (Restore Defaults): atkuria modulio gamyklinius nustatymus, yra labai naudinga, jei modulis nereaguoja.
Jei norite sužinoti daugiau apie „ZigBee“ modulius, čia yra puikus „Digi“ šaltinis.