Kazalo:

Izdelava zapisovalnika podatkov z Raspberry Pi: 3 koraki (s slikami)
Izdelava zapisovalnika podatkov z Raspberry Pi: 3 koraki (s slikami)

Video: Izdelava zapisovalnika podatkov z Raspberry Pi: 3 koraki (s slikami)

Video: Izdelava zapisovalnika podatkov z Raspberry Pi: 3 koraki (s slikami)
Video: 30 глупых вопросов Product Manager [Карьера в IT] 2024, November
Anonim
Izdelava zapisovalnika podatkov z Raspberry Pi
Izdelava zapisovalnika podatkov z Raspberry Pi

Ta preprost zapisovalnik podatkov redno izvaja meritve svetlobe z analognim LDR (fotorezistorjem) in jih shranjuje v besedilno datoteko na vašem Raspberry Pi. Ta zapisovalnik podatkov bo meril in snemal raven svetlobe vsakih 60 sekund, kar vam omogoča spremljanje spreminjanja svetlosti v daljšem časovnem obdobju.

Če želimo z Raspberry Pi uporabljati analogne senzorje, bi morali biti sposobni izmeriti upor senzorja. Za razliko od Arduina, GPIO zatiči Raspberry Pi ne morejo izmeriti upora in jih lahko zaznajo le, če je napetost, ki se jim dovaja, nad določeno napetostjo (približno 2 volta). Če želite odpraviti to težavo, lahko uporabite analogno -digitalni pretvornik (ADC) ali namesto tega relativno poceni kondenzator.

Korak: Kaj boste potrebovali

Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali

- RaspberryPi z že nameščenim Raspbian. Do Pi boste morali dostopati tudi z monitorjem, miško in tipkovnico ali prek oddaljenega namizja. Uporabite lahko kateri koli model Raspberry Pi. Če imate enega od modelov Pi Zero, boste morda želeli spajkati nekaj zatičev glave na vrata GPIO.

- Od svetlobe odvisen upor (znan tudi kot LDR ali fotorezistor)

- Keramični kondenzator 1 uF

- Brezplačna prototipna plošča

- Nekaj moških in ženskih mostičkov

2. korak: Zgradite svoje vezje

Zgradite svoje vezje
Zgradite svoje vezje
Zgradite svoje vezje
Zgradite svoje vezje

Zgradite zgornji tokokrog na svoji plošči in se prepričajte, da se nobena komponenta ne dotika. Svetlobno odvisen upor in keramični kondenzator nimata polarnosti, kar pomeni, da je na oba kabla mogoče priključiti negativni in pozitivni tok. Zato vam ni treba skrbeti, na kakšen način so bile te komponente povezane v vaše vezje.

Ko preverite svoje vezje, previdno priključite mostične kable na GPIO zatiče Raspberry Pi, tako da sledite zgornjemu diagramu.

3. korak: Ustvarite skript Python za branje in beleženje vaših podatkov

Ustvarite skript Python za branje in beleženje vaših podatkov
Ustvarite skript Python za branje in beleženje vaših podatkov

Odprite IDLE na svojem Raspberry Pi (Meni> Programiranje> Python 2 (IDLE)) in odprite nov projekt (Datoteka> Nova datoteka). Nato vnesite naslednje:

uvozite RPi. GPIO kot GPIO

čas uvoza datum datuma prijave loginterval = 60 #log interval v sekundah savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

Način nastavitve GPIO (GPIO. BCM)

cap = 0,000001 #1uf adj = 2,130620985

def meritev upora (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 () medtem ko (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () vrne 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 () za a v območju (1, 11): res = (izmerite upor (SensorPin, TriggerPin)/cap)*adj i = i+1 t = t+res, če je a == 10: t = t/i print (t) writeline (str (datetime.datetime.now ())+","+str (t), savefilename) i = 0 t = 0 while stime+loginterval> time.time (): #počakajte, da se pretekel čas. spanje (0,0001)

Shranite svoj projekt kot datalogger.py (Datoteka> Shrani kot) v mapo Dokumenti.

Zdaj odprite Terminal (Menu> Accessories> Terminal) in vnesite naslednji ukaz:

python datalogger.py

Skript bo ustvaril besedilno datoteko z imenom "lightlevels.txt" in jo posodobil vsakih 60 sekund. To ime datoteke lahko spremenite v vrstici 6. Prav tako lahko spremenite, kako pogosto se zapisovalnik podatkov posodobi, tako da spremenite vrstico 5.

Priporočena: