- Architettura ZigBee:
- Trasmissione dati in ZigBee
- Nozioni di base sulla rete per router Xbee e coordinatore
- Topologia di rete diversa in ZigBee
- Firmware Xbee
- Comandi XBee AT:
Generalmente molte persone si confondono con due termini XBee e ZigBee, la maggior parte di loro lo usa in modo intercambiabile. Ma in realtà non è così; ZigBee è il protocollo standard per la rete wireless. Sebbene XBee sia un prodotto che supporta vari protocolli di comunicazione wireless, inclusi ZigBee, Wi-Fi (modulo Wi-Fly), 802.15.4, modulo 868 MHz ecc. Qui ci concentriamo principalmente sul modulo RF Xbee / Xbee-PRO ZB che consiste del firmware ZigBee.
Basti pensare a una calcolatrice nel computer, dove vengono eseguiti calcoli complessi con un'interfaccia user friendly. Il compito sarebbe stato molto difficile e noioso se fosse stato disponibile solo l'hardware. Quindi, al livello più alto, la disponibilità del software semplifica il processo di risoluzione dei problemi. L'intero processo è diviso in livelli del software dall'hardware effettivo che viene chiamato dai livelli superiori.
Usiamo anche il concetto di strati nella nostra vita quotidiana. Ad esempio, inviare corriere / lettera a casa di un amico, inviare e-mail da un punto del mondo a un altro. Allo stesso modo, la maggior parte dei protocolli di rete moderni utilizza persino un concetto di livelli per separare diversi componenti software in moduli indipendenti che possono essere assemblati in modi diversi. Potrebbe essere necessario sporcarsi le mani per ottenere una comprensione approfondita dell'architettura Xbee, ma renderemo le cose molto semplici per te.
Cominciamo con alcuni termini di base come instradamento, prevenzione delle collisioni e riconoscimento. Per capire il primo termine basta andare con il suo nome, "percorso" che significa tracciare o identificare il percorso. In rete, instradamento significa fornire la direzione ai dati dal nodo di origine al nodo di destinazione. Quando due nodi nella rete tentano di trasmettere simultaneamente, crea una situazione chiamata collisione. Quindi, generalmente con la tecnica di accesso multiplo Carrier Sense con prevenzione delle collisioni (CSMA / CA) per evitare le collisioni, puoi saperne di più su CSMA utilizzando questo link. Fondamentalmente in esso i nodi parlano allo stesso modo della conversazione umana; controllano brevemente che nessuno stia parlando prima di iniziare a inviare dati.
Ogni volta che il ricevitore riceve con successo i dati trasmessi, riconosce il trasmettitore. Non si deve permettere al flusso di dati di sopraffare la radio del ricevitore. Qualsiasi radio ricevente ha una velocità limitata alla quale può elaborare i dati in arrivo e una quantità limitata di memoria in cui memorizzare i dati in arrivo.
Architettura ZigBee:
Ci sono quattro principali livelli disponibili nello stack ZigBee che sono il livello fisico, il livello di accesso ai supporti, il livello di rete e il livello dell'applicazione.
Il livello applicazione definisce vari oggetti di indirizzamento inclusi profili, cluster ed endpoint. Puoi vedere gli strati dello stack ZigBee nella figura sopra.
Livello di rete: aggiunge funzionalità di routing che consentono ai pacchetti di dati RF di attraversare più dispositivi (più "salti") per instradare i dati dall'origine alla destinazione (peer to peer).
Il livello MAC gestisce le transazioni di dati RF tra dispositivi vicini (punto a punto). Il MAC include servizi come i tentativi di trasmissione e la gestione dei riconoscimenti e le tecniche di prevenzione delle collisioni.
Livello fisico: definisce come i dispositivi sono collegati per creare una rete; definisce la potenza di uscita, il numero di canali e la velocità di trasmissione. La maggior parte delle applicazioni ZigBee operano sulla banda ISM a 2,4 GHz a una velocità di trasmissione dati di 250 kbps.
La maggior parte delle famiglie XBee dispone di linee di controllo del flusso, I / O, A / D e indicatori incorporate che possono essere configurate utilizzando i comandi appropriati. I campioni analogici vengono restituiti come valori a 10 bit. La lettura analogica viene scalata in modo tale che 0x0000 rappresenta 0 V e 0x3FF = 1,2 V. (Gli ingressi analogici sul modulo non possono superare 1.2V)
Per convertire la lettura A / D in mV, procedi come segue:
AD (mV) = (lettura A / D * 1200mV) / 1023
Trasmissione dati in ZigBee
È possibile chiamare una rete come combinazione di software e hardware in grado di inviare dati da una posizione a un'altra. L'hardware è responsabile del trasporto dei segnali da un punto della rete a un altro. Il software è costituito da set di istruzioni che consentono di funzionare come previsto.
Generalmente la trasmissione dei dati tramite pacchetti ZigBee può avvenire in due modi: unicast e broadcast.
Trasmissione broadcast:
In parole semplici Broadcast significa l'informazione / programma trasmesso dalla radio o dalla TV. In altre parole, le trasmissioni broadcast vengono inviate a molti oa tutti i dispositivi nella rete. Le trasmissioni broadcast con il protocollo ZigBee vengono propagate nell'intera rete in modo che tutti i nodi ricevano la trasmissione. A tale scopo, il coordinatore e tutti i router che ricevono una trasmissione broadcast ritrasmetteranno il pacchetto tre volte.
Trasmissione unicast:
Le trasmissioni unicast in ZigBee instradano i dati da un dispositivo sorgente a un altro dispositivo di destinazione. Il dispositivo di destinazione potrebbe essere un vicino immediato del dispositivo di origine o potrebbe avere diversi salti nel mezzo. Un esempio è mostrato di seguito nella figura che spiega il meccanismo per riconoscere l'affidabilità del collegamento bidirezionale.
Nozioni di base sulla rete per router Xbee e coordinatore
Per raggiungere la casa del tuo amico, di cosa hai bisogno? Hai solo bisogno del suo indirizzo. Allo stesso modo, per inviare i dati da un modulo Xbee a un altro, è necessario il suo indirizzo univoco. Proprio come con le persone, Xbee ha anche diversi indirizzi, ognuno dei quali ha un ruolo particolare nel networking. Esistono due tipi di indirizzi Indirizzo statico (indirizzo a 64 bit) e indirizzo dinamico (indirizzo a 16 bit).
Indirizzi:
L'indirizzo a 64 bit è universalmente unico; è fissato all'interno del modulo Xbee dal produttore. Nessun'altra radio ZigBee al mondo avrà lo stesso indirizzo statico, sul retro di ogni modulo xbee è possibile vedere questo indirizzo come mostrato di seguito, e in particolare la parte superiore dell'indirizzo "0013A200" è la stessa per ogni modulo xbee.
Un dispositivo riceve un indirizzo a 16 bit che dovrebbe essere univoco localmente, quando si unisce a una rete ZigBee. L'indirizzo a 16 bit 0x0000 è riservato al coordinatore. Tutti gli altri dispositivi ricevono un indirizzo generato in modo casuale dal router o dal dispositivo coordinatore che consente l'unione. L'indirizzo a 16 bit può cambiare quando si scopre che due dispositivi hanno lo stesso indirizzo a 16 bit o un dispositivo lascia la rete e successivamente si unisce (può ricevere un indirizzo diverso).
Identificatore di nodo:
È sempre più facile per il nostro cervello ricordare le stringhe invece del numero. Quindi, ogni modulo Xbee in una rete può essere assegnato con un identificatore di nodo. L'identificatore del nodo è un insieme di caratteri, cioè stringhe che possono essere un modo più amichevole per gli umani di indirizzare un nodo in una rete.
Reti di area personale:
Le reti sviluppate da questi moduli Xbee sono chiamate reti personali o PAN. Ogni rete è definita con un identificatore PAN univoco (ID PAN). Questo identificatore è comune a tutti i dispositivi della stessa rete. ZigBee supporta PAN ID sia a 64 bit che a 16 bit. Entrambi gli indirizzi PAN vengono utilizzati per identificare una rete in modo univoco. I dispositivi sulla stessa rete ZigBee devono condividere gli stessi ID PAN a 64 bit e 16 bit. Se più reti ZigBee operano nel raggio di portata l'una dall'altra, ciascuna dovrebbe avere ID PAN univoci.
Il PAN ID a 16 bit viene utilizzato per indirizzare il livello MAC in tutte le trasmissioni di dati RF tra i dispositivi in una rete. Tuttavia, a causa dello spazio di indirizzamento limitato del PAN ID a 16 bit (65.535 possibilità), potrebbe esserci la possibilità che più reti ZigBee (all'interno dell'intervallo tra loro) possano avere lo stesso ID PAN a 16 bit. Per risolvere questi conflitti, ZigBee Alliance ha creato un PAN ID a 64 bit. ZigBee definisce tre diversi tipi di dispositivi: coordinatore, router e dispositivo finale.
Un coordinatore è sempre richiesto in ogni rete per la ricarica della configurazione della rete. Quindi, non può mai dormire. È anche responsabile della selezione di un canale e di un ID PAN (sia a 64 bit che a 16 bit) per avviare la rete. Può consentire a router e dispositivi finali di connettersi alla rete. Può aiutare a instradare i dati in una rete.
Possono esserci più router in una rete. Un router può ricevere segnali da altri router / EP (End Point). Inoltre non può mai dormire. Deve unirsi a un PAN Zigbee prima di poter trasmettere, ricevere o instradare i dati. Dopo l'adesione, può consentire a router e dispositivi finali di connettersi alla rete. Dopo l'adesione, può anche aiutare a instradare i dati. Può bufferizzare i pacchetti di dati RF per i dispositivi terminali dormienti.
Possono esserci anche più punti finali. Può andare in modalità di sospensione per risparmiare energia. Deve unirsi a un PAN ZigBee prima di poter trasmettere o ricevere dati e non può nemmeno consentire ai dispositivi di connettersi alla rete. Dipende dal genitore per la trasmissione / ricezione dei dati.
Poiché il dispositivo finale può entrare in modalità di sospensione, il dispositivo genitore deve memorizzare nel buffer o trattenere i pacchetti di dati in arrivo fino a quando il dispositivo finale si riattiva e riceve i pacchetti di dati.
Topologia di rete diversa in ZigBee
La topologia di rete si riferisce al modo in cui la rete è stata progettata. Qui, la topologia è la rappresentazione geometrica della relazione di tutti i collegamenti e dei dispositivi di collegamento (coordinatore, router e dispositivi finali) tra loro.
Qui abbiamo quattro mesh di topologia di base, stella, ibrida e albero.
Nella topologia mesh, ogni nodo è connesso tra loro e si aspetta il dispositivo finale perché i dispositivi finali non possono comunicare direttamente. Per abilitare la comunicazione semplice tra due radio ZB, è necessario configurarne una con il firmware del coordinatore e una con il firmware del router o dell'endpoint. Il vantaggio principale della rete Mesh è che se uno dei collegamenti diventa inutilizzabile, non inabilita l'intero sistema.
In una topologia a stella, ogni dispositivo ha una connessione punto a punto dedicata a un controllore centrale (coordinatore). Tutti i dispositivi non sono direttamente collegati tra loro. A differenza di una topologia mesh, nella topologia a stella un dispositivo non può inviare nulla direttamente a un altro dispositivo. Il coordinatore o l'hub è lì per lo scambio: se un dispositivo desidera inviare dati a un altro, invia i dati al coordinatore, che invia ulteriormente i dati al dispositivo di destinazione.
Le reti ibride sono quelle reti che contengono due o più tipi di standard di comunicazione. Qui, la rete ibrida è una combinazione di rete a stella e ad albero, pochi dispositivi finali sono collegati direttamente al nodo coordinatore e altri dispositivi finali necessitano dell'aiuto del nodo padre per ricevere i dati.
Nella rete ad albero, i router costituiscono la spina dorsale e i dispositivi finali generalmente raggruppati attorno a ciascun router. Non è molto diverso da una configurazione mesh tranne per il fatto che i router non sono interconnessi, è possibile visualizzare queste reti utilizzando la figura mostrata sopra.
Firmware Xbee
Il modulo programmabile XBee è dotato di un processore applicativo a scala libera. Questo processore dell'applicazione viene fornito con un boot loader in dotazione. Questo firmware XBee ZV è basato sullo stack ZigBee-PRO Embernet 3.xx, i moduli XBee-Znet 2.5 possono essere aggiornati a questa funzionalità. È possibile controllare il firmware utilizzando il comando ATVR di cui parleremo più avanti nel capitolo. I numeri di versione di XBee avranno 4 cifre significative. È inoltre possibile visualizzare un numero di versione utilizzando il comando ATVR. La risposta restituisce 3 o 4 numeri. Tutti i numeri sono esadecimali e possono avere un intervallo da 0-0xF. Una versione viene segnalata come "ABCD". Le cifre ABC sono il numero di versione principale e D è il numero di revisione dalla versione principale. L'API discussa nel capitolo 4 ei comandi AT sono quasi gli stessi per Znet 2.5 e firmware ZB.
Nelle telecomunicazioni, l'intero comando Hayes è un linguaggio specifico comandi sviluppato per il modem Hayes Smart Modem, 1981 erano una serie di brevi parole per controllare il modem rendendo semplice la comunicazione e l'impostazione di un modem a quei tempi.
XBee funziona anche in modalità di comando e ha attivato AT Commands che sta per ATTENZIONE, questi comandi possono essere inviati a XBee tramite i terminali XBee e le radio XBee configurate AT hanno due modalità di comunicazione
Trasparente: la radio passa solo le informazioni che riceve all'indirizzo radio più remoto su cui è stata configurata. I dati inviati tramite la porta seriale vengono ricevuti da XBee così come sono.
Comando: questa modalità viene utilizzata per parlare con la radio e configurare alcune modalità preconfigurate, mentre comunichiamo con i moduli in questa modalità e cambiamo configurazione.
Puoi digitare +++ e attendere un secondo senza premere altri pulsanti, il messaggio OK dovrebbe quindi apparire come l'immagine del terminale appena in alto. Con OK, l'XBee ci dice che ha trascorso in modalità COMANDO ed è pronto a ricevere messaggi di configurazione.
Comandi XBee AT:
AT (TEST): Questo è il comando di test per verificare se il modulo risponde con un OK in quanto la risposta conferma lo stesso.
ATDH: indirizzo di destinazione alto. Per configurare i 32 bit superiori dell'indirizzo di destinazione a 64 bit, DL e DH combinati forniscono un indirizzo di destinazione a 64 bit.
ATDL: indirizzo di destinazione basso. Questo di nuovo per configurare i 32 bit inferiori dell'indirizzo di destinazione a 64 bit.
ATID: questo comando cambia l'ID PAN (Pers L'ID è di 4 byte esadecimali e può variare da 0000 a FFFF
ATWR: scrivi. Scrivere i valori dei parametri nella memoria non volatile in modo che le modifiche dei parametri persistano anche durante i successivi ripristini.
Nota: una volta emesso WR, nessun carattere aggiuntivo deve essere inviato al modulo fino al
Dopo aver ricevuto la risposta "OK \ r".
ATRE (Restore Defaults): ripristina le impostazioni di fabbrica del modulo, è molto utile se il modulo non risponde.
Se vuoi saperne di più sui moduli ZigBee, ecco la grande risorsa di Digi.