Sommario:

RSSI a distanza con moduli RF (Xbees): 4 passaggi
RSSI a distanza con moduli RF (Xbees): 4 passaggi

Video: RSSI a distanza con moduli RF (Xbees): 4 passaggi

Video: RSSI a distanza con moduli RF (Xbees): 4 passaggi
Video: Zigbee based secure access with stepper motor Rs.5500/- 2024, Dicembre
Anonim
RSSI a distanza con moduli RF (Xbees)
RSSI a distanza con moduli RF (Xbees)

Gli Xbee sono piccoli moduli a radiofrequenza che possono essere utili per inviare informazioni avanti e indietro e per altri usi più specifici. Per questo progetto, li sto usando per ottenere i valori RSSI (Received Signal Strength Indicator) per stimare la distanza tra i due moduli Xbee. Volevo condividere il mio lavoro su questo progetto perché ho visto pochissimi tutorial completi su come ottenere RSSI con Xbees. Ho scoperto che un modo semplice per leggere i valori RSSI di un Xbee e interpretarli è un Arduino. Per questo tutorial, avrai bisogno di una piccola conoscenza di Arduino, per poter caricare il codice dato e modificarlo se necessario. Il monitor seriale integrato su Arduino può mostrare i valori RSSI e quindi, se desideri andare oltre, puoi collegare uno schermo LED o LCD per interpretarli senza un computer.

Questo tutorial specifico utilizza un modulo Xbee3 "trasmettitore" che è programmato in Micropython e un xbee3 "ricevitore" che è collegato a un Arduino Uno tramite uno shield Xbee. È anche possibile inviare pacchetti collegandoli entrambi al proprio Arduino Uno, che è trattato nel tutorial online di qualcun altro qui. I moduli Xbee3 sono necessari perché sono gli unici moduli Xbee che eseguono Micropython e sono uno dei pochi Xbee ad offrire il protocollo 802.15.4, che include i valori RSSI nei pacchetti inviati.

Forniture

  • XBee3 (x2)
  • Antenna u. FL (x2)
  • Arduino Uno: lo shield Xbee è progettato per questo modello
  • Cavo di connessione tra Arduino Uno e una porta USB del computer (da USB A a USB B)
  • Scudo XBee (x1)
  • Adattatore da XBee a USB (x1)

Nota: potrebbe essere utile avere due adattatori in modo che entrambi gli Xbee possano essere configurati contemporaneamente, ed è anche utile per il debug perché è possibile inviare pacchetti anche tramite XCTU.

Per renderlo un sistema autonomo (opzionale):

  • Alimentatore portatile che non si spegne quando c'è un basso assorbimento di corrente o dalla batteria al connettore USB
  • Da batteria a connettore arduino e batteria da 9V

Passaggio 1: configurazione dell'hardware

Configurazione hardware
Configurazione hardware
Configurazione hardware
Configurazione hardware

La configurazione fisica è piuttosto semplice. Salda alcuni pin del connettore allo shield Xbee (lungo il fondo all'esterno, dove ci sono i fori) e poi spingilo in posizione sopra l'Arduino. LA DIREZIONE CONTA - Allineare ogni Xbee con la traccia PCB bianca sopra lo schermo ("ricevitore") o l'adattatore ("trasmettitore"). Per collegare le antenne u. FL ti consiglio questa guida di Sparkfun.

Passaggio 2: configurazione

Configurazione
Configurazione
Configurazione
Configurazione
Configurazione
Configurazione

La configurazione del computer può essere un po' più complicata. Innanzitutto, scarica XCTU. Questo programma viene utilizzato per configurare Xbees. La documentazione di Xbee3 è una risorsa inestimabile per XCTU e configurazione. Quindi eseguire i seguenti passaggi con ciascun Xbee collegato al computer sull'adattatore (il LED PWR sull'adattatore dovrebbe accendersi).

In XCTU, fai clic su "Scopri moduli radio…" (l'icona è un Xbee con una lente di ingrandimento nell'angolo in alto a sinistra) e fai clic su Avanti e poi su Fine. Quindi attendi che Xbee appaia nella ricerca, fai clic su di esso e fai clic su "Aggiungi dispositivi selezionati". Fare clic sull'Xbee che appare sul lato sinistro dello schermo e attendere il caricamento delle impostazioni, prima di fare clic su "Aggiorna firmware". Segui la prima immagine sopra e imposta la versione del firmware su 802.15.4 e la versione più recente. Quindi configura Xbee "trasmetti" in modo che corrisponda alle impostazioni "trasmetti" nella seconda immagine e fai lo stesso per Xbee "ricevi". Dovrai anche mettere il "ricevi" Xbee in modalità API 2, per interfacciarti con Arduino (questo è molto facile da cercare su Google se hai difficoltà a trovarlo).

Passaggio 3: codice

Per Arduino, sarà necessario scaricare il primo file allegato sul "ricevitore" Xbee. Dovrai anche scaricare la libreria Xbee-Arduino, che si trova qui. Arduino è un linguaggio semplice e ben documentato, quindi se ci sono problemi che incontri, il sito web di Arduino è tuo amico.

Il codice Micropython è il secondo file allegato. Segui questo Instructable per scaricare il codice sul "trasmettitore" Xbee.

Passaggio 4: provalo

Ora che tutti i pezzi necessari sono a posto, puoi finalmente inviare i pacchetti. Assicurati che il "trasmettitore" Xbee abbia il codice in esecuzione e quindi collegalo a una fonte di alimentazione (anche tenerlo collegato al computer funziona bene). Per il "ricevitore" Xbee, tieni prima l'Arduino collegato al computer e, una volta scaricato il codice, apri il monitor seriale. Il monitor seriale dovrebbe quindi mostrare i valori (da 20 a 70 all'incirca).

Dai miei test, ho scoperto che in ampi spazi aperti i valori RSSI sono correlati a distanze fino a 15 piedi e in spazi più piccoli fino a 5 piedi. Ciò è dovuto al multipathing, un problema comune quando si tratta di segnali a radiofrequenza. Spero che questo tutorial sia stato utile e grazie per la lettura.

Fonti: altro RSSI istruibile, RSSI con due arduino/xbees e documentazione Xbee e Arduino

Consigliato: