Obsah:

Vytvoření záznamníku dat s Raspberry Pi: 3 kroky (s obrázky)
Vytvoření záznamníku dat s Raspberry Pi: 3 kroky (s obrázky)

Video: Vytvoření záznamníku dat s Raspberry Pi: 3 kroky (s obrázky)

Video: Vytvoření záznamníku dat s Raspberry Pi: 3 kroky (s obrázky)
Video: [NOVINKA] Obvod digitálního záznamu a přehrávání zvuku s jednou integrovanou 2024, Listopad
Anonim
Vytvoření záznamníku dat s Raspberry Pi
Vytvoření záznamníku dat s Raspberry Pi

Tento jednoduchý záznamník dat provádí pravidelné měření světla pomocí analogového LDR (fotorezistor) a ukládá je do textového souboru na vašem Raspberry Pi. Tento datalogger bude měřit a zaznamenávat úroveň světla každých 60 sekund, což vám umožní sledovat, jak se jas v průběhu času mění.

Pokud chceme s Raspberry Pi používat analogové senzory, potřebovali bychom umět změřit odpor senzoru. Na rozdíl od Arduina nejsou GPIO piny Raspberry Pi schopny měřit odpor a mohou vnímat pouze tehdy, pokud je napětí, které je do nich přiváděno, vyšší než určité napětí (přibližně 2 volty). Chcete -li tento problém vyřešit, můžete použít převodník analogového signálu na digitální (ADC) nebo místo toho použít relativně levný kondenzátor.

Krok 1: Co budete potřebovat

Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat

- RaspberryPi s již nainstalovaným Raspbianem. Budete také muset mít přístup k Pi pomocí monitoru, myši a klávesnice nebo prostřednictvím vzdálené plochy. Můžete použít jakýkoli model Raspberry Pi. Pokud máte jeden z modelů Pi Zero, možná budete chtít připájet některé kolíkové kolíky k portu GPIO.

- Rezistor závislý na světle (také známý jako LDR nebo fotorezistor)

- Keramický kondenzátor 1 uF

- Bezpájecí prototypovací prkénko

- Některé propojovací vodiče mezi muži a ženami

Krok 2: Vybudujte si obvod

Vybudujte si svůj obvod
Vybudujte si svůj obvod
Vybudujte si svůj obvod
Vybudujte si svůj obvod

Vybudujte výše uvedený obvod na prkénku a ujistěte se, že se žádný z vodičů komponent nedotýká. Odpor závislý na světle a keramický kondenzátor nemají polaritu, což znamená, že k oběma vodičům lze připojit záporný a kladný proud. Proto si nemusíte dělat starosti s tím, jakým způsobem byly tyto komponenty ve vašem obvodu připojeny.

Jakmile zkontrolujete svůj obvod, opatrně připojte propojovací kabely k pinům GPIO vašeho Raspberry Pi podle výše uvedeného schématu.

Krok 3: Vytvořte skript Pythonu pro čtení a protokolování vašich dat

Vytvořte skript Pythonu pro čtení a protokolování vašich dat
Vytvořte skript Pythonu pro čtení a protokolování vašich dat

Otevřete IDLE na svém Raspberry Pi (Menu> Programování> Python 2 (IDLE)) a otevřete nový projekt (Soubor> Nový soubor). Potom zadejte následující:

importujte RPi. GPIO jako 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 měřitelná odolnost (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.write (txt+'\ n') f.close () i = 0 t = 0 while True: stime = time.time () pro a v rozsahu (1, 11): res = (měřicí 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ánek (0,0001)

Uložte svůj projekt jako datalogger.py (Soubor> Uložit jako) do složky Dokumenty.

Nyní otevřete Terminál (Nabídka> Příslušenství> Terminál) a zadejte následující příkaz:

python datalogger.py

Skript vytvoří textový soubor s názvem „lightlevels.txt“a aktualizuje jej každých 60 sekund. Tento název souboru můžete změnit na řádku 6. Změnou řádku 5 můžete také upravit, jak často se datalogger aktualizuje.

Doporučuje: