ARDUINO: Sperimentare le trasmissioni LoRa

Il GULLi ha fatto diverse esperienze con Arduino e diversi sensori di temperatura, pressione, umidità, etc… ma il lavoro non è mai completo se questi dati non vengono trasmessi per essere usati e condivisi. I moduli RFM95W offrono una interessante soluzione per trasmettere i dati della nostra applicazione con Arduino fino a diversi chilometri di distanza seppur utilizzando una bassa potenza.

I moduli implementano la tecnologia di comunicazione radio LoRa (Long Range) e lavorano alla frequenza di 868 Mhz (Europa) in una zona della banda radio che non necessita di licenze.

Per la sperimentazione sono stati usati i moduli ricetrasmettitori RFM95W disponibili on-line su diversi siti. L’uso dei moduli sulle classiche schede di prototipazione rapida purtroppo non è stata immediata per la differenza di passo fra i pin (2 mm – 2.5 mm). È stata quindi necessaria la realizzazione di una scheda di adattamento cablata con molta pazienza. 

È stato quindi possibile realizzare il prototipo di una scheda funzionante come trasmettitore ed una come ricevitore. I moduli RF nei primi test sono controllati da due Arduino Nano come indicato negli schemi su arduino.cc. Il software è disponibile su GitHub ed in particolare sono stati usati gli esempi LoraSender e LoraReceiver.

Ogni modulo è stato collegato a delle semplici antenne a stilo verticale già usate per comunicazioni cellulari (le bande sono simili), ma ne possono essere realizzate altre, con diversi ingombri e con efficienze diverse.

Il modulo ricevitore è stato equipaggiato con un display LCD che, in questo test, mostrava la potenza del segnale ricevuto espresso in dBm (dB riferiti a 1 mW).

I due moduli sono stati alimentati tramite la porta USB di Arduino da delle batterie aggiuntive per cellulari o altri dispositivi. L’obiettivo del progetto è anche quello di avere delle unità autonome, anche con batterie ricaricabili da piccoli pannelli solari.

Il primo test sul banco

Il modulo ricevente vicino a quello trasmittente indicava un segnale di -25 dBm. E’ un valore relativamente basso, ma come si vede nelle foto il setup è eccezionalmente semplice. Il valore può essere sicuramente migliorato.

Il test in ambiente chiuso

È stato quindi trasportato il trasmettitore all’interno della struttura del palazzo ed il ricevitore continuava a ricevere pacchetti anche con segnali di -100/-110 dBm.

Prossimi test

All’aperto in ambiente aperto e quindi in ambito cittadino.

Crediti

Credito e ringraziamento ad Alessio per il lavoro di realizzazione, per la presentazione dei primi test ai Soci del Gruppo Utenti Linux di Livorno e per avere partecipato alle discussioni e ai test online e dal vivo.

Per ulteriori informazioni: info@linux.livorno.it

Pubblicato in Vari

Modulo rfm95w LoRa

Dopo l’idea di un progetto condiviso per una centralina di rilevamento dati con trasmissione a radiofrequenza basata su tecnologia LoRa (ne parleremo nei prossimi articoli), ho acquistato due dispositivi per trasmissione e ricezione radio, da utilizzare con Arduino/Raspberry. Riscontro subito un problema per la prototipazione rapida: il passo della pinatura da 2mm al posto del tradizionale 2.54mm

questo mi impedisce di disporli sulle tradizionali breadboard e passare da un cablaggio all’altro e studiare il sistema. Una soluzione potrebbe essere quella di costruire un adattatore con una scheda millefori

Attenzione: usare la millefori con piazzole su singola faccia per evitare falsi contatti e cortocircuiti.

Occorrenti: saldatore, stagno, cavetti rigidi, pinheaders, ma soprattutto una buona vista!!

Decodifica di protocollo con l’oscilloscopio (RS232)

Usiamo un oscilloscopio per studiare le linee seriali di Arduino.

La sonda dell’oscilloscopio deve essere collegata con il morsetto a coccodrillo su GND e il puntale di misura sul pin 0 (RX0) per registrare il canale di comunicazione che va dal PC all’Arduino.

Protocollo RS232

Per questo test non è necessario alcuno sketch, è sufficiente usare il monitor seriale o un programma di comunicazione come miniterm, minicom, cu, o perfino screen, opportunamente configurati.

Usando il programma scelto, inviare una stringa all’Arduino.

Leggi tutto Decodifica di protocollo con l’oscilloscopio (RS232)