Sommario:

Stazione meteorologica solare Raspberry Pi: 7 passaggi (con immagini)
Stazione meteorologica solare Raspberry Pi: 7 passaggi (con immagini)

Video: Stazione meteorologica solare Raspberry Pi: 7 passaggi (con immagini)

Video: Stazione meteorologica solare Raspberry Pi: 7 passaggi (con immagini)
Video: Ricezione Autonoma dei Satelliti NOAA con Raspberry Pi - Luca Bennati IU2FRL 2024, Dicembre
Anonim
Stazione meteorologica solare Raspberry Pi
Stazione meteorologica solare Raspberry Pi
Stazione meteorologica solare Raspberry Pi
Stazione meteorologica solare Raspberry Pi
Stazione meteorologica solare Raspberry Pi
Stazione meteorologica solare Raspberry Pi
Stazione meteorologica solare Raspberry Pi
Stazione meteorologica solare Raspberry Pi

Spronato dal completamento dei miei due progetti precedenti, la fotocamera compatta e la console di gioco portatile, volevo trovare una nuova sfida. La progressione naturale è stata un sistema remoto esterno…

Volevo costruire una stazione meteorologica Raspberry Pi che fosse in grado di sostenersi fuori dalla rete e inviarmi i risultati tramite una connessione wireless, da qualsiasi luogo! Questo progetto ha davvero avuto le sue sfide, ma fortunatamente alimentare il Raspberry Pi è una delle sfide principali che è stata resa facile utilizzando il PiJuice come alimentatore con il suo supporto solare aggiuntivo (completo della nostra rivoluzionaria tecnologia PiAnywhere - il modo migliore per togli il tuo Pi dalla rete!).

Il mio pensiero iniziale era di utilizzare il fantastico modulo AirPi per prendere le letture. Questo, tuttavia, aveva due inconvenienti principali; richiede una connessione Internet diretta per caricare i risultati e deve essere collegato direttamente al GPIO sul Pi, il che significa che non può essere esposto all'aria senza esporre anche il Raspberry Pi (non è l'ideale se vogliamo che questa stazione meteorologica durare a lungo).

La soluzione… costruire il mio modulo di rilevamento! Usando gran parte dell'AirPi per l'ispirazione sono stato in grado di mettere insieme un prototipo molto semplice utilizzando alcuni sensori che avevo già; temperatura, umidità, livelli di luce e gas in generale. E la cosa grandiosa di questo è che è davvero facile aggiungere più sensori in qualsiasi momento.

Ho deciso di utilizzare un Raspberry Pi a+ principalmente per il suo basso consumo energetico. Per inviarmi i risultati ho utilizzato il modulo GPRS/GSM di EFCom Pro, che può inviare un SMS direttamente al mio cellulare con i risultati! Abbastanza pulito vero?

Sono lieto di qui di tutte le idee che hai per altri grandi progetti solari o portatili. Fatemelo sapere nei commenti e farò del mio meglio per creare un tutorial!

Passaggio 1: parti

Parti
Parti

1 x PiJuice + Pannello solare (completo della nostra rivoluzionaria tecnologia PiAnywhere - il modo migliore per togliere il tuo Pi dalla rete!)

1 x Raspberry Pi a+

1 modulo EFCom Pro GPRS/GSM

1 x carta SIM

1 x tagliere per pane

Protoboard

1 x MCP3008 ADC

1 x LDR

1 x LM35 (sensore di temperatura)

1 x DHT22 (sensore di umidità)

1 x sensore di qualità dell'aria generale TGS2600

1 x 2,2 KΩ resistore

1 x 22 KΩ resistore

1 x 10 KΩ resistore

10 x cavi jumper femmina - femmina

Assortimento di filo singolo calibro

1 x scatola di giunzione esterna singola

1 x doppia scatola di giunzione esterna

1 x connettore per cavo impermeabile

Passacavi semi ciechi da 2 x 20 mm

Passaggio 2: circuito di rilevamento

Circuito di rilevamento
Circuito di rilevamento
Circuito di rilevamento
Circuito di rilevamento
Circuito di rilevamento
Circuito di rilevamento

Ci sono diversi elementi in questo progetto, quindi è meglio fare tutto per gradi. Prima di tutto esaminerò come mettere insieme il circuito di rilevamento.

È una buona idea costruirlo prima su una breadboard, nel caso in cui si commettano errori, ho incluso uno schema elettrico e immagini passo passo, a cui fare riferimento.

  1. Il primo componente da collegare è questo convertitore analogico-digitale MCP3008. Questo può richiedere fino a 8 ingressi analogici e comunica con il Raspberry Pi tramite SPI. Con il chip rivolto verso l'alto e il semicerchio tagliato all'estremità più lontana da te, i pin a destra si collegano tutti al Raspberry Pi. Collegali come mostrato. Se desideri saperne di più su come funziona il chip, ecco un'ottima guida all'MCP3008 e al protocollo SPI.
  2. I pin a sinistra sono gli 8 ingressi analogici, numerati 0-7 dall'alto verso il basso. Useremo solo i primi 3 (CH0, CH1, CH2), per l'LDR, il sensore di gas generale (TGS2600) e il sensore di temperatura (LM35). Collegare prima l'LDR come mostrato nello schema. Un lato a terra e l'altro a 3,3 V tramite un resistore da 2,2 KΩ e CH0.
  3. Quindi, collegare il "sensore di gas generale". Questo sensore di gas viene utilizzato per il rilevamento di contaminanti dell'aria come idrogeno e monossido di carbonio. Non ho ancora capito come ottenere concentrazioni specifiche, quindi per ora il risultato di questo sensore è un livello percentuale di base, dove il 100% è completamente saturo. Con il sensore rivolto verso l'alto (pin sul lato inferiore), il pin direttamente a destra del piccolo affioramento è il pin 1 e quindi i numeri aumentano in senso orario attorno al pin. Quindi i pin 1 e 2 si collegano a 5V, il pin 3 si collega a CH1 ea massa tramite un resistore da 22KΩ e il pin4 si collega direttamente a terra.
  4. L'ultimo sensore analogico da collegare è il sensore di temperatura LM35. Questo ha 3 pin. Prendi il sensore in modo che il lato piatto sia più vicino a te, il pin più a sinistra si collega direttamente a 5V (non segnato nel diagramma, mio male!), Il pin centrale si collega a CH2 e il pin più a destra si collega direttamente a terra. Facile!
  5. L'ultimo componente da collegare è il sensore di umidità DHT22. Questo è un sensore digitale, quindi può essere collegato direttamente al Raspberry Pi. Prendi il sensore con la griglia rivolta verso di te e i quattro perni sul lato inferiore. I pin sono ordinati da 1 a sinistra. Collegare 1 a 3,3 V. Il pin 2 va a GPIO4 e 3,3 V tramite un resistore da 10 KΩ. Lasciare scollegato il pin 3 e il pin 4 va direttamente a massa.

Questo è tutto! Il circuito di prova è stato costruito. Spero di aggiungere più componenti quando avrò tempo. Mi piacerebbe davvero aggiungere un sensore di pressione, un sensore di velocità del vento e vorrei ottenere dati più intelligenti sulle concentrazioni di gas.

Passaggio 3: modulo GSM

Modulo GSM
Modulo GSM
Modulo GSM
Modulo GSM

Ora che i circuiti di rilevamento sono stati costruiti, deve esserci un modo per ricevere i risultati. È qui che entra in gioco il modulo GSM. Lo useremo per inviare i risultati tramite la rete cellulare in un SMS, una volta al giorno.

Il modulo GSM comunica con il Raspberry Pi via seriale tramite UART. Ecco alcune ottime informazioni sulla comunicazione seriale con il Raspberry Pi. Per prendere il controllo della porta seriale del Pi, dobbiamo prima fare un po' di configurazione.

Avvia il tuo Raspberry Pi con un'immagine Raspbian standard. Ora cambia il file "/boot/cmdline.txt" da:

"dwc_otg.lpm_enable=0 console=ttyAMA0, 115200 kgdboc=ttyAMA0, 115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait"

a:

"dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait"

rimuovendo la parte sottolineata del testo.

In secondo luogo, è necessario modificare il file "/etc/inittab", commentando la seconda riga nella sezione seguente:

#Spawnare un getty sulla linea seriale Raspberry PiT0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100"

In modo che si legga:

#Spawnare un getty sulla linea seriale Raspberry Pi#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

e riavviare il Pi. Ora la porta seriale dovrebbe essere libera con cui comunicare come desideri. È ora di cablare il modulo GSM. Dai un'occhiata allo schema del circuito nel passaggio precedente e alle immagini sopra per vedere come è fatto. Fondamentalmente, TX è connesso a RX e RX è connesso a TX. Sul Raspberry Pi TX e RX sono rispettivamente GPIO 14 e 15.

Ora, probabilmente vorrai controllare che il modulo funzioni, quindi proviamo a inviare un testo! Per questo è necessario scaricare Minicom. È un programma che ti permette di scrivere sulla porta seriale. Utilizzo:

"sudo apt-get install minicom"

Una volta installato minicom può essere aperto con il seguente comando:

"minicom -b 9600 -o -D /dev/ttyAMA0"

9600 è il baud rate e /dev/ttyAMA0 è il nome della porta seriale del Pi. Si aprirà un emulatore di terminale in cui tutto ciò che scrivi apparirà sulla porta seriale, cioè sarà inviato al modulo GSM.

Inserisci la tua scheda SIM ricaricata nel modulo GSM e premi il pulsante di accensione. Dopodiché dovrebbe accendersi un led blu. Il modulo GSM utilizza il set di comandi AT, ecco la documentazione se sei veramente interessato. Ora controlliamo che Raspberry Pi abbia rilevato il modulo con il seguente comando:

"A"

il modulo dovrebbe quindi rispondere con:

"OK"

Grande! Quindi dobbiamo configurare il modulo per inviare un SMS come testo anziché binario:

"AT+CMGF = 1"

ancora una volta la risposta dovrebbe essere "OK". Ora scriviamo il comando per inviare un SMS:

"AT+CMGS= "44************* "", sostituisci le stelle con il tuo numero.

Il modem risponde con ">" dopo di che puoi scrivere il tuo messaggio. Per inviare il messaggio premere. Questo è tutto, e con un po' di fortuna hai appena ricevuto un messaggio direttamente dal tuo Raspberry Pi.

Bene, ora che sappiamo che il modulo GSM funziona puoi chiudere minicom; non ne avremo bisogno per il resto del progetto.

Passaggio 4: scaricare il software ed eseguire il test

Scarica il software e prova a secco
Scarica il software e prova a secco
Scarica il software e prova a secco
Scarica il software e prova a secco

A questo punto tutto dovrebbe essere cablato e pronto per il test per un funzionamento a secco. Ho scritto un programma Python piuttosto semplice che prenderà le letture da ciascun sensore e poi invierà i risultati al tuo telefono cellulare. Puoi scaricare l'intero programma dalla pagina Github di PiJuice. Ora potrebbe anche essere un buon momento per testare con il modulo PiJuice. Si collega semplicemente al GPIO del Raspberry Pi, tutti i fili collegati al Pi vengono semplicemente collegati direttamente ai corrispondenti pin out sul PiJuice. Facile come Pi. Per scaricare il codice usa il comando:

git clone

Questo è impostato per inviare dati una volta al giorno. A scopo di test questo non è eccezionale, quindi potresti voler modificare il programma. Questo è fatto facilmente; basta aprire il file; "sudo nano weatherstation.py". Vicino alla parte superiore c'è una sezione "imposta ritardo". Commenta la riga "delay=86400" e decommenta "delay=5". Ora i risultati verranno inviati una volta ogni 5 secondi. Dovrai anche modificare il programma in modo che contenga il tuo numero di cellulare. Trova dove dice "+44**********" e sostituisci le stelle con il tuo numero.

Prima di eseguire il programma sarà sufficiente scaricare una libreria per la lettura del sensore di umidità DHT22:

git clone

E la libreria deve essere installata:

"cd Adafruit_Python_DHT"

"sudo apt-get update"

"sudo apt-get install build-essential python-dev"

"sudo python setup.py install"

Ottimo, ora puoi testare il programma.

"sudo python weatherstation.py"

Poiché il programma è in esecuzione, i risultati dovrebbero essere inviati al tuo cellulare ma anche stampati nel terminale ogni 5 secondi.

Passaggio 5: costruire il circuito

Costruisci il circuito
Costruisci il circuito
Costruisci il circuito
Costruisci il circuito
Costruisci il circuito
Costruisci il circuito

Ora che tutto funziona in pratica, è il momento di costruire la cosa reale. Le immagini mostrano l'idea generale di come l'intera unità si incastra. Sono presenti due unità abitative separate; uno per il circuito di rilevamento (che avrà dei fori per consentire la circolazione dell'aria all'interno) e uno per il Raspberry Pi, unità GPRS e PiJuice, (completamente a tenuta stagna) il pannello solare sarà cablato nell'unità di calcolo con una giunzione a tenuta stagna. Le due unità possono quindi essere facilmente staccate in modo che l'alloggiamento del sensore o l'alloggiamento del computer possano essere rimossi senza dover smontare l'intera unità. Questo è ottimo se vuoi aggiungere più sensori o se hai bisogno del tuo Raspberry Pi o PiJuice per un altro progetto.

Dovrai rompere la scheda prototipi per adattarla all'interno della più piccola delle due scatole di giunzione. Qui è alloggiato il circuito di rilevamento. Il circuito di rilevamento viene ora trasferito dalla breadboard alla scheda prototipi. Ora dovrai fare un po' di saldatura. Assicurati di essere a tuo agio con l'utilizzo di un saldatore in modo sicuro. Se non sei sicuro, chiedi l'aiuto di qualcuno che sia un saldatore competente.

Molte grazie a Patrick nel laboratorio qui, che mi ha salvato dal fare un vero pasticcio di questo circuito. È riuscito a metterlo insieme in pochi minuti! Se, come me, non sei il migliore a costruire circuiti e non hai un genio come Patrick pronto ad aiutarti, allora puoi sempre lasciare il circuito su una breadboard, purché si adatti alla tua scatola elettrica.

Passaggio 6: preparazione delle unità abitative

Preparazione delle unità abitative
Preparazione delle unità abitative
Preparazione delle unità abitative
Preparazione delle unità abitative
Preparazione delle unità abitative
Preparazione delle unità abitative

Questa parte è dove diventa davvero divertente. Potresti aver notato gli anelli su ogni scatola. Questi sono progettati per essere abbattuti in modo che le scatole possano diventare giunzioni per l'impianto elettrico. Li useremo per collegare l'unità di rilevamento e l'unità di calcolo, per il collegamento al pannello solare e anche come ventilazione per l'unità di rilevamento per consentire la circolazione dell'aria.

Per prima cosa fai un foro su ogni scatola per il collegamento tra i due, come mostrato nelle immagini. Eliminare i buchi può essere difficile da fare in modo ordinato, ma un bordo ruvido non ha importanza. Ho scoperto che il metodo migliore è usare un cacciavite per perforare prima l'anello dentellato attorno a ciascun foro, quindi staccarlo come un coperchio di latta di vernice. Il connettore del cavo impermeabile viene quindi utilizzato per collegare le due scatole.

Quindi dovrai fare un altro foro nell'alloggiamento del computer per il cavo del pannello solare. Questo foro viene quindi collegato con uno dei passacavi semi-ciechi. Prima di inserire l'anello di tenuta, praticare un foro per il passaggio del cavo. Questo deve essere il più piccolo possibile per mantenerlo a tenuta stagna, quindi spingere l'estremità del micro usb attraverso il foro (questa è l'estremità che si collega al PiJuice).

Infine, è necessario praticare un foro aggiuntivo nell'unità di rilevamento per consentire l'ingresso e l'uscita dell'aria. Ho deciso di puntare per tutto direttamente di fronte all'incrocio tra le due scatole. Potrebbe essere necessario aggiungere un secondo foro. Immagino che lo scopriremo dopo un po' di tempo usando la stazione meteorologica.

Passaggio 7: cablaggio e finitura della stazione meteorologica

Cablaggio e finitura della stazione meteorologica
Cablaggio e finitura della stazione meteorologica
Cablaggio e finitura della stazione meteorologica
Cablaggio e finitura della stazione meteorologica
Cablaggio e finitura della stazione meteorologica
Cablaggio e finitura della stazione meteorologica

Giusto, ci siamo quasi. La fase finale è collegare tutto.

A cominciare dall'unità di calcolo. In questa scatola abbiamo il Raspberry Pi, il PiJuice che si collega al Raspberry Pi GPIO e il modulo GSM che si collega al breakout GPIO sul PiJuice tramite cavi jumper da femmina a femmina. Bello e comodo! a questo punto probabilmente consiglierei di mettere una sorta di sigillante attorno al punto di ingresso per il cavo USB per il pannello solare. Una sorta di resina o supercolla probabilmente funzionerebbe.

Quindi passare all'unità di rilevamento. Nella foto, dall'alto verso il basso, i fili sono; grigio, bianco, viola e blu sono le linee dati SPI, il nero è la massa, l'arancione è 3,3 V, il rosso è 5 V e il verde è GPIO 4. Dovrai trovare i ponticelli per collegarti a questi e quindi alimentarli attraverso il cavo impermeabile connettore come si vede nelle fotografie. Quindi ogni filo può essere collegato al GPIO corrispondente e il connettore può essere stretto. In questa fase è facile vedere come il design potrebbe essere migliorato; l'LDR non sarà esposto a una grande quantità di luce (sebbene possa essere comunque utile conoscere i valori relativi e potrebbe essere utile fare un buco in più), penso che sarebbe meglio usare le stesse dimensioni dell'unità di calcolo scatola anche per l'unità di rilevamento, quindi sarebbe più facile inserire il circuito nella scatola e ci sarebbe spazio per giocare con disposizioni diverse.

L'ho messo in giardino adesso, come potete vedere nelle foto. Spero nei prossimi giorni di poter postare anche io qualche risultato! E come ho detto prima, se hai qualche idea per dei bei progetti, fammelo sapere!

Consigliato: