Sommario:
- Passaggio 1: cosa ti servirà
- Passaggio 2: costruisci il tuo circuito
- Passaggio 3: crea uno script Python per leggere e registrare i tuoi dati
Video: Realizzare un Data Logger con il Raspberry Pi: 3 Passaggi (con Immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Questo semplice data logger effettua misurazioni della luce regolari con un LDR (fotoresistenza) analogico e le memorizza in un file di testo sul tuo Raspberry Pi. Questo data logger misurerà e registrerà il livello di luce ogni 60 secondi, consentendoti di monitorare come la luminosità cambia per un periodo di tempo.
Se vogliamo utilizzare sensori analogici con il Raspberry Pi, dovremmo essere in grado di misurare la resistenza del sensore. A differenza dell'Arduino, i pin GPIO del Raspberry Pi non sono in grado di misurare la resistenza e possono rilevare solo se la tensione fornita loro è superiore a una certa tensione (circa 2 volt). Per ovviare a questo problema, potresti usare un convertitore analogico-digitale (ADC), oppure potresti usare un condensatore relativamente economico.
Passaggio 1: cosa ti servirà
- Un RaspberryPi con Raspbian già installato. Dovrai anche essere in grado di accedere al Pi utilizzando un monitor, un mouse e una tastiera o tramite Desktop remoto. Puoi usare qualsiasi modello di Raspberry Pi. Se hai uno dei modelli Pi Zero, potresti voler saldare alcuni pin di intestazione alla porta GPIO.
- Un resistore dipendente dalla luce (noto anche come LDR o fotoresistenza)
- Un condensatore ceramico da 1 uF
- Un tagliere di prototipazione senza saldatura
- Alcuni ponticelli maschio-femmina
Passaggio 2: costruisci il tuo circuito
Costruisci il circuito sopra sulla tua breadboard assicurandoti che nessuno dei cavi dei componenti si tocchi. Il resistore dipendente dalla luce e il condensatore ceramico non hanno polarità, il che significa che è possibile collegare una corrente negativa e positiva a entrambi i cavi. Pertanto non è necessario preoccuparsi del modo in cui questi componenti sono stati collegati nel circuito.
Dopo aver controllato il circuito, collega con attenzione i cavi jumper ai pin GPIO del tuo Raspberry Pi seguendo lo schema sopra.
Passaggio 3: crea uno script Python per leggere e registrare i tuoi dati
Apri IDLE sul tuo Raspberry Pi (Menu > Programmazione > Python 2 (IDLE)) e apri un nuovo progetto (File > Nuovo file). Quindi digitare quanto segue:
importa RPi. GPIO come GPIO
import time import datetime loginterval=60 #log intervallo in secondi savefilename="lightlevels.txt" SensorPin=17 TriggerPin=27
GPIO.setmode(GPIO. BCM)
cap=0.000001 #1uf adj=2.130620985
def misuraresistenza(mpin, tpin):
GPIO.setup(mpin, GPIO. OUT) GPIO.setup(tpin, GPIO. OUT) GPIO.output(mpin, False) GPIO.output(tpin, False) time.sleep(0.2) GPIO.setup(mpin, GPIO. IN) time.sleep(0.2) GPIO.output(tpin, True) starttime=time.time() endtime=time.time() while (GPIO.input(mpin) == GPIO. LOW): endtime=time.time () return endtime-starttime def writeline(txt, fn): f = open(fn, 'a') f.write(txt+'\n') f.close() i=0 t=0 while True: stime= time.time() per a in range(1, 11): res=(measureresistance(SensorPin, TriggerPin)/cap)*adj i=i+1 t=t+res if a==10: t=t/i print(t) writeline(str(datetime.datetime.now())+", "+str(t), savefilename) i=0 t=0 while sti+loginterval>time.time(): #wait fino a quando il logtime ha tempo passato.sonno(0.0001)
Salva il tuo progetto come datalogger.py (File > Salva con nome) nella cartella Documenti.
Ora apri Terminale (Menu> Accessori> Terminale) e digita il seguente comando:
python datalogger.py
Lo script creerà un file di testo denominato "lightlevels.txt" e lo aggiornerà ogni 60 secondi. È possibile modificare questo nome file sulla riga 6. È inoltre possibile regolare la frequenza con cui il registratore dati si aggiorna modificando la riga 5.
Consigliato:
Come creare un registratore di dati in tempo reale di umidità e temperatura con Arduino UNO e SD-Card - Simulazione del data logger DHT11 in Proteus: 5 passaggi
Come creare un registratore di dati in tempo reale di umidità e temperatura con Arduino UNO e SD-Card | Simulazione DHT11 Data-logger in Proteus: Introduzione: ciao, sono Liono Maker, ecco il link YouTube. Stiamo realizzando un progetto creativo con Arduino e lavoriamo su sistemi embedded.Data-Logger: Un data logger (anche data-logger o data recorder) è un dispositivo elettronico che registra i dati nel tempo w
Scopri come realizzare un monitor portatile alimentato a batteria in grado di alimentare anche un Raspberry Pi: 8 passaggi (con immagini)
Scopri come realizzare un monitor portatile alimentato a batteria che possa anche alimentare un Raspberry Pi: hai mai desiderato codificare Python o avere un'uscita display per il tuo robot Raspberry Pi, in movimento, o avevo bisogno di un display secondario portatile per il tuo laptop o fotocamera? In questo progetto, costruiremo un monitor portatile alimentato a batteria e
Come Realizzare un Data Logger per Temperatura, PH e Ossigeno Disciolto: 11 Passaggi (Illustrato)
Come realizzare un registratore di dati per la temperatura, il pH e l'ossigeno disciolto: Obiettivi: Realizzare un registratore di dati per ≤ $ 500. Memorizza i dati per temperatura, pH e DO con un timestamp e utilizzando la comunicazione I2C. Perché I2C (Circuito Inter-Integrato)? Si possono impilare tanti sensori sulla stessa linea dato che ognuno di loro ha
Come realizzare un video a schermo diviso in quattro passaggi: 4 passaggi (con immagini)
Come realizzare un video a schermo diviso in quattro passaggi: spesso vediamo una stessa persona in una scena due volte in uno spettacolo televisivo. E per quanto ne sappiamo, l'attore non ha un fratello gemello. Abbiamo anche visto che due video di canto vengono messi su uno schermo per confrontare le loro abilità canore. Questo è il potere di sp
Realizzare immagini senza interruzioni solo orizzontalmente o verticalmente (per "The GIMP") .: 11 passaggi (con immagini)
Rendere le immagini senza cuciture solo orizzontalmente o verticalmente (per "The GIMP").: Se provi il plug-in "Rendi senza cuciture" in GIMP, renderà l'immagine perfetta sia orizzontalmente che verticalmente allo stesso tempo. Non ti permetterà di renderlo senza soluzione di continuità in una sola dimensione. Questo istruibile ti aiuterà a fare ima