Indholdsfortegnelse:

Lav en datalogger med Raspberry Pi: 3 trin (med billeder)
Lav en datalogger med Raspberry Pi: 3 trin (med billeder)

Video: Lav en datalogger med Raspberry Pi: 3 trin (med billeder)

Video: Lav en datalogger med Raspberry Pi: 3 trin (med billeder)
Video: НАСТОЯЩЕЕ ГРУЗИНСКОЕ ЧАХОХБИЛИ ИЗ КУРИЦЫ!!! КАК ПРИГОТОВИТЬ? РЕЦЕПТ ПРОСТОЙ 2024, Juli
Anonim
Lav en datalogger med Raspberry Pi
Lav en datalogger med Raspberry Pi

Denne simple datalogger tager regelmæssige lysmålinger med en analog LDR (fotoresistor) og gemmer dem i en tekstfil på din Raspberry Pi. Denne datalogger måler og registrerer lysniveauet hvert 60. sekund, så du kan overvåge, hvordan lysstyrken ændres over en længere periode.

Hvis vi vil bruge analoge sensorer med Raspberry Pi, skal vi være i stand til at måle sensorens modstand. I modsætning til Arduino er Raspberry Pi's GPIO -ben ikke i stand til at måle modstand og kan kun mærke, hvis spændingen, der leveres til dem, er over en bestemt spænding (ca. 2 volt). For at overvinde dette problem kan du bruge en analog til digital konverter (ADC), eller du kan bruge en relativt billig kondensator i stedet.

Trin 1: Hvad du får brug for

Hvad du får brug for
Hvad du får brug for
Hvad du får brug for
Hvad du får brug for
Hvad du får brug for
Hvad du får brug for
Hvad du får brug for
Hvad du får brug for

- En RaspberryPi med Raspbian allerede installeret. Du skal også have adgang til Pi ved hjælp af en skærm, mus og tastatur eller via fjernskrivebord. Du kan bruge enhver model af Raspberry Pi. Hvis du har en af Pi Zero -modellerne, vil du måske lodde nogle headerpinde til GPIO -porten.

- En lysafhængig modstand (også kendt som en LDR eller fotoresistor)

- En 1 uF keramisk kondensator

- Et loddefrit prototypebrødbræt

- Nogle tråde fra mand til kvinde

Trin 2: Byg dit kredsløb

Byg dit kredsløb
Byg dit kredsløb
Byg dit kredsløb
Byg dit kredsløb

Byg ovenstående kredsløb på dit brødbræt, og sørg for, at ingen af komponenternes ledninger rører. Den lysafhængige modstand og den keramiske kondensator har ingen polaritet, hvilket betyder, at en negativ og positiv strøm kan forbindes til begge bly. Derfor behøver du ikke bekymre dig om, hvordan disse komponenter er blevet forbundet i dit kredsløb.

Når du har kontrolleret dit kredsløb, skal du omhyggeligt tilslutte jumperkablerne til din Raspberry Pi's GPIO -ben ved at følge ovenstående diagram.

Trin 3: Opret et Python -script for at læse og logge dine data

Opret et Python -script til at læse og logge dine data
Opret et Python -script til at læse og logge dine data

Åbn IDLE på din Raspberry Pi (Menu> Programmering> Python 2 (IDLE)), og åbn et nyt projekt (Fil> Ny fil). Indtast derefter følgende:

importer RPi. GPIO som GPIO

importtid import datetime loginterval = 60 #log interval i sekunder savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 #1uf adj = 2.130620985

def måler modstand (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) starttid = time.time () sluttid = time.time () mens (GPIO.input (mpin) == GPIO. LOW): sluttid = time.time () returner sluttid-starttid def-skriftlinje (txt, fn): f = open (fn, 'a') f.write (txt+'\ n') f.close () i = 0 t = 0, mens True: stime = time.time () for et i område (1, 11): res = (målermodstand (SensorPin, TriggerPin)/cap)*adj i = i+1 t = t+res hvis a == 10: t = t/i print (t) skrivelinje (str (datetime.datetime.now ())+","+str (t), gem filnavn) i = 0 t = 0 mens stime+loginterval> time.time (): #vent indtil logtime har gået tid. sov (0,0001)

Gem dit projekt som datalogger.py (Fil> Gem som) i mappen Dokumenter.

Åbn nu Terminal (Menu> Tilbehør> Terminal), og skriv følgende kommando:

python datalogger.py

Scriptet opretter en tekstfil med navnet "lightlevels.txt" og opdaterer det hvert 60. sekund. Du kan ændre dette filnavn på linje 6. Du kan også justere, hvor ofte dataloggeren opdateres ved at ændre linje 5.

Anbefalede: