Cuprins:

Realizarea unui Data Logger cu Raspberry Pi: 3 pași (cu imagini)
Realizarea unui Data Logger cu Raspberry Pi: 3 pași (cu imagini)

Video: Realizarea unui Data Logger cu Raspberry Pi: 3 pași (cu imagini)

Video: Realizarea unui Data Logger cu Raspberry Pi: 3 pași (cu imagini)
Video: Voice Recognition Raspberry PI and Arduino UART communication 2024, Septembrie
Anonim
Realizarea unui Data Logger cu Raspberry Pi
Realizarea unui Data Logger cu Raspberry Pi

Acest simplu înregistrator de date ia măsurători regulate de lumină cu un LDR analog (Photoresistor) și le stochează într-un fișier text pe Raspberry Pi. Acest data logger va măsura și înregistra nivelul de lumină la fiecare 60 de secunde, permițându-vă să monitorizați cum se schimbă luminozitatea pe o perioadă de timp.

Dacă dorim să folosim senzori analogici cu Raspberry Pi, ar trebui să putem măsura rezistența senzorului. Spre deosebire de Arduino, pinii GPIO ai Raspberry Pi nu pot măsura rezistența și pot simți doar dacă tensiunea furnizată acestora este peste o anumită tensiune (aproximativ 2 volți). Pentru a depăși această problemă, ați putea folosi un convertor analogic la digital (ADC) sau ați putea folosi în schimb un condensator relativ ieftin.

Pasul 1: De ce veți avea nevoie

Ce vei avea nevoie
Ce vei avea nevoie
Ce vei avea nevoie
Ce vei avea nevoie
Ce vei avea nevoie
Ce vei avea nevoie
Ce vei avea nevoie
Ce vei avea nevoie

- Un RaspberryPi cu Raspbian deja instalat. De asemenea, va trebui să puteți accesa Pi utilizând un monitor, mouse și tastatură sau prin Desktop la distanță. Puteți utiliza orice model de Raspberry Pi. Dacă aveți unul dintre modelele Pi Zero, poate doriți să lipiți niște pini de antet pe portul GPIO.

- Un rezistor dependent de lumină (cunoscut și sub numele de LDR sau fotorezistor)

- Un condensator ceramic de 1 uF

- O placă de pâine fără sudură

- Unele fire jumper de la bărbat la femeie

Pasul 2: Construiește-ți circuitul

Construiește-ți circuitul
Construiește-ți circuitul
Construiește-ți circuitul
Construiește-ți circuitul

Construiți circuitul de mai sus pe placa dvs. de asigurare, asigurându-vă că niciunul dintre cablurile componentelor nu se atinge. Rezistorul dependent de lumină și condensatorul ceramic nu au polaritate, ceea ce înseamnă că un curent negativ și pozitiv poate fi conectat la oricare dintre cabluri. Prin urmare, nu trebuie să vă faceți griji cu privire la modul în care aceste componente au fost conectate în circuitul dvs.

După ce ați verificat circuitul, conectați cu grijă cablurile jumper la pinii GPIO ai Raspberry Pi urmând diagrama de mai sus.

Pasul 3: Creați un script Python pentru a vă citi și înregistra datele

Creați un script Python pentru a vă citi și înregistra datele
Creați un script Python pentru a vă citi și înregistra datele

Deschideți IDLE pe Raspberry Pi (Meniu> Programare> Python 2 (IDLE)) și deschideți un proiect nou (Fișier> Fișier nou). Apoi tastați următoarele:

importați RPi. GPIO ca GPIO

import timp import datetime loginterval = 60 #log interval în secunde savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 # 1uf adj = 2.130620985

rezistență măsurătoare def (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 () returnează sfârșitul de timp-ora de început def scris scris (txt, fn): f = deschis (fn, 'a') f.write (txt + '\ n') f.close () i = 0 t = 0 în timp ce True: stime = time.time () pentru un interval (1, 11): res = (măsurarea rezistenței (SensorPin, TriggerPin) / cap) * adj i = i + 1 t = t + res if a == 10: t = t / i print (t) writeline (str (datetime.datetime.now ()) + "," + str (t), savefilename) i = 0 t = 0 în timp ce stime + loginterval> time.time (): # așteptați până când logtime are a trecut timpul.sleep (0.0001)

Salvați proiectul ca datalogger.py (Fișier> Salvare ca) în folderul Documente.

Acum deschideți Terminal (Meniu> Accesorii> Terminal) și tastați următoarea comandă:

python datalogger.py

Scriptul va crea un fișier text numit „lightlevels.txt” și îl va actualiza la fiecare 60 de secunde. Puteți modifica acest nume de fișier pe linia 6. Puteți, de asemenea, să ajustați frecvența cu care actualizatorul datalogger se schimbă în linia 5.

Recomandat: