Tartalomjegyzék:

Adatnapló készítése a Raspberry Pi -vel: 3 lépés (képekkel)
Adatnapló készítése a Raspberry Pi -vel: 3 lépés (képekkel)

Videó: Adatnapló készítése a Raspberry Pi -vel: 3 lépés (képekkel)

Videó: Adatnapló készítése a Raspberry Pi -vel: 3 lépés (képekkel)
Videó: Начало работы с QLC+ Управление цветомузыкой с компьютера. Как управлять светом. 2024, Július
Anonim
Adatnapló készítése a Raspberry Pi -vel
Adatnapló készítése a Raspberry Pi -vel

Ez az egyszerű adatgyűjtő rendszeres fényméréseket végez analóg LDR (fotorezisztor) segítségével, és szöveges fájlban tárolja a Raspberry Pi készüléken. Ez az adatgyűjtő 60 másodpercenként méri és rögzíti a fényszintet, lehetővé téve, hogy nyomon követhesse, hogyan változik a fényerő egy hosszú idő alatt.

Ha analóg érzékelőket akarunk használni a Raspberry Pi -vel, akkor meg kell tudnunk mérni az érzékelő ellenállását. Az Arduino -val ellentétben a Raspberry Pi GPIO csapjai nem képesek ellenállást mérni, és csak akkor érzékelik, ha a hozzájuk tartozó feszültség meghalad egy bizonyos feszültséget (körülbelül 2 volt). A probléma megoldásához használhat analóg -digitális átalakítót (ADC), vagy használhat egy viszonylag olcsó kondenzátort.

1. lépés: Amire szüksége lesz

Amire szüksége lesz
Amire szüksége lesz
Amire szüksége lesz
Amire szüksége lesz
Amire szüksége lesz
Amire szüksége lesz
Amire szüksége lesz
Amire szüksége lesz

- Egy RaspberryPi, amelyen már telepítve van a Raspbian. A Pi -hez monitor, egér és billentyűzet vagy távoli asztal segítségével is hozzá kell férnie. A Raspberry Pi bármelyik modelljét használhatja. Ha rendelkezik a Pi Zero modellek valamelyikével, érdemes forrasztania néhány fejlécet a GPIO porthoz.

- Fényfüggő ellenállás (más néven LDR vagy fotorezisztor)

- 1 uF kerámia kondenzátor

- Forrasztás nélküli prototípus -kenyérlap

- Néhány férfi -női áthidaló vezeték

2. lépés: Építse fel az áramkört

Építsd meg az áramkört
Építsd meg az áramkört
Építsd meg az áramkört
Építsd meg az áramkört

Építse fel a fenti áramkört a kenyértáblájára, ügyelve arra, hogy az alkatrészek egyik vezetéke ne érjen hozzá. A fényfüggő ellenállásnak és a kerámia kondenzátornak nincs polaritása, ami azt jelenti, hogy negatív és pozitív áram csatlakoztatható bármelyik vezetékhez. Ezért nem kell aggódnia amiatt, hogy ezeket az alkatrészeket hogyan kötötték össze az áramkörben.

Miután ellenőrizte az áramkört, óvatosan csatlakoztassa a jumper kábeleket a Raspberry Pi GPIO csapjaihoz a fenti ábra szerint.

Lépés: Hozzon létre egy Python -szkriptet az adatok olvasásához és naplózásához

Hozzon létre egy Python -szkriptet az adatok olvasásához és naplózásához
Hozzon létre egy Python -szkriptet az adatok olvasásához és naplózásához

Nyissa meg az IDLE -t a Raspberry Pi -n (Menü> Programozás> Python 2 (IDLE)), és nyisson meg egy új projektet (Fájl> Új fájl). Ezután írja be a következőt:

importálja az RPi. GPIO -t GPIO -ként

importálási idő importálási idő loginterval = 60 #log intervallum másodpercben savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 #1uf adj = 2.130620985

def mérési ellenállás (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 () míg (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, míg True: stime = time.time () a (1, 11) tartományban: res = (mért ellenállás (SensorPin, TriggerPin)/cap)*adj i = i+1 t = t+res, ha a == 10: t = t/i print (t) writeline (str (datetime.datetime.now ())+","+str (t), savefilename) i = 0 t = 0, míg stime+loginterval> time.time (): #várjon a logtime eltelt idő. alvás (0,0001)

Mentse el projektjét datalogger.py néven (Fájl> Mentés másként) a Dokumentumok mappába.

Most nyissa meg a Terminált (Menü> Kellékek> Terminál), és írja be a következő parancsot:

python datalogger.py

A szkript létrehoz egy "lightlevels.txt" nevű szöveges fájlt, és 60 másodpercenként frissíti. Ezt a fájlnevet a 6. sorban módosíthatja. Azt is beállíthatja, hogy az adatgyűjtő milyen gyakran frissüljön az 5. sor megváltoztatásával.

Ajánlott: