Obsah:

Vytvorenie záznamníka údajov s Raspberry Pi: 3 kroky (s obrázkami)
Vytvorenie záznamníka údajov s Raspberry Pi: 3 kroky (s obrázkami)

Video: Vytvorenie záznamníka údajov s Raspberry Pi: 3 kroky (s obrázkami)

Video: Vytvorenie záznamníka údajov s Raspberry Pi: 3 kroky (s obrázkami)
Video: How To Do Stable Diffusion LORA Training By Using Web UI On Different Models - Tested SD 1.5, SD 2.1 2024, Júl
Anonim
Vytvorenie záznamníka údajov s Raspberry Pi
Vytvorenie záznamníka údajov s Raspberry Pi

Tento jednoduchý záznamník údajov vykonáva pravidelné merania svetla pomocou analógového LDR (fotorezistor) a ukladá ich do textového súboru na vašom Raspberry Pi. Tento záznamník údajov bude merať a zaznamenávať úroveň svetla každých 60 sekúnd, čo vám umožní sledovať, ako sa jas v priebehu času mení.

Ak chceme s Raspberry Pi používať analógové snímače, museli by sme byť schopní zmerať odpor senzora. Na rozdiel od Arduina, GPIO piny Raspberry Pi nie sú schopné merať odpor a môžu cítiť iba vtedy, ak je napätie, ktoré je do nich dodávané, vyššie ako určité napätie (približne 2 volty). Na vyriešenie tohto problému môžete použiť analógovo -digitálny prevodník (ADC) alebo namiesto neho použiť relatívne lacný kondenzátor.

Krok 1: Čo budete potrebovať

Čo budete potrebovať
Čo budete potrebovať
Čo budete potrebovať
Čo budete potrebovať
Čo budete potrebovať
Čo budete potrebovať
Čo budete potrebovať
Čo budete potrebovať

- RaspberryPi s už nainštalovaným Raspbianom. Budete tiež musieť mať prístup k Pi pomocou monitora, myši a klávesnice alebo prostredníctvom vzdialenej pracovnej plochy. Môžete použiť akýkoľvek model Raspberry Pi. Ak máte jeden z modelov Pi Zero, možno budete chcieť spájať niektoré kolíkové kolíky do portu GPIO.

- Rezistor závislý na svetle (známy tiež ako LDR alebo fotorezistor)

- Keramický kondenzátor 1 uF

- Nepájkovateľná prototypová doska

- Niektoré prepojovacie vodiče medzi mužmi a ženami

Krok 2: Vybudujte si obvod

Vybudujte si svoj obvod
Vybudujte si svoj obvod
Vybudujte si svoj obvod
Vybudujte si svoj obvod

Vybudujte vyššie uvedený obvod na doske, pričom sa uistite, že sa žiadneho z káblov komponentov nedotýkajú. Odpor závislý na svetle a keramický kondenzátor nemajú polaritu, čo znamená, že k jednému vodiču je možné pripojiť negatívny a pozitívny prúd. Preto si nemusíte lámať hlavu nad tým, akým spôsobom boli tieto súčasti zapojené do vášho obvodu.

Akonáhle skontrolujete svoj obvod, opatrne zapojte prepojovacie káble k pinom GPIO vášho Raspberry Pi podľa vyššie uvedeného diagramu.

Krok 3: Vytvorte skript Python na čítanie a zaznamenávanie vašich údajov

Vytvorte skript Python na čítanie a zaznamenávanie vašich údajov
Vytvorte skript Python na čítanie a zaznamenávanie vašich údajov

Otvorte IDLE na svojom Raspberry Pi (Menu> Programovanie> Python 2 (IDLE)) a otvorte nový projekt (Súbor> Nový súbor). Potom zadajte nasledujúce:

importujte RPi. GPIO ako GPIO

čas importu import datetime loginterval = 60 #interval protokolu v sekundách savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

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

def merací odpor (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 writeeline (txt, fn): f = open (fn, 'a') f.rite (txt+'\ n') f.close () i = 0 t = 0 while True: stime = time.time () pre a v rozsahu (1, 11): res = (merací odpor (SensorPin, TriggerPin)/cap)*adj i = i+1 t = t+res if a == 10: t = t/i print (t) writeeline (str (datetime.datetime.now ())+","+str (t), savefilename) i = 0 t = 0 while stime+loginterval> time.time (): #wait until logtime has uplynul čas.spánok (0,0001)

Uložte svoj projekt ako datalogger.py (Súbor> Uložiť ako) do priečinka Dokumenty.

Teraz otvorte terminál (Menu> Príslušenstvo> Terminál) a zadajte nasledujúci príkaz:

python datalogger.py

Skript vytvorí textový súbor s názvom „lightlevels.txt“a aktualizuje ho každých 60 sekúnd. Tento názov súboru môžete zmeniť na riadku 6. Zmenou riadka 5 môžete tiež nastaviť, ako často sa má záznamník údajov aktualizovať.

Odporúča: