Sisällysluettelo:

Dataloggerin tekeminen Raspberry Pi: llä: 3 vaihetta (kuvilla)
Dataloggerin tekeminen Raspberry Pi: llä: 3 vaihetta (kuvilla)

Video: Dataloggerin tekeminen Raspberry Pi: llä: 3 vaihetta (kuvilla)

Video: Dataloggerin tekeminen Raspberry Pi: llä: 3 vaihetta (kuvilla)
Video: Автомобильный кемпинг на горе - тент для палатки и грузовика 2024, Marraskuu
Anonim
Tiedonkerääjän tekeminen Raspberry Pi: n kanssa
Tiedonkerääjän tekeminen Raspberry Pi: n kanssa

Tämä yksinkertainen dataloggeri ottaa säännöllisiä valomittauksia analogisella LDR: llä (Photoresistor) ja tallentaa ne Raspberry Pi -laitteesi tekstitiedostoon. Tämä dataloggeri mittaa ja tallentaa valon tason 60 sekunnin välein, jolloin voit seurata, kuinka kirkkaus muuttuu pitkän ajan kuluessa.

Jos haluamme käyttää analogisia antureita Raspberry Pi: n kanssa, meidän on kyettävä mittaamaan anturin vastus. Toisin kuin Arduino, Raspberry Pi: n GPIO -nastat eivät pysty mittaamaan vastusta ja voivat havaita vain, jos niille syötetty jännite on tietyn jännitteen yläpuolella (noin 2 volttia). Voit ratkaista tämän ongelman käyttämällä analogista digitaalimuunninta (ADC) tai sen sijaan suhteellisen halpaa kondensaattoria.

Vaihe 1: Mitä tarvitset

Mitä tarvitset
Mitä tarvitset
Mitä tarvitset
Mitä tarvitset
Mitä tarvitset
Mitä tarvitset
Mitä tarvitset
Mitä tarvitset

- RaspberryPi, johon on jo asennettu Raspbian. Sinun on myös voitava käyttää Pi: tä näytön, hiiren ja näppäimistön avulla tai etätyöpöydän kautta. Voit käyttää mitä tahansa Raspberry Pi -mallia. Jos sinulla on jokin Pi Zero -malleista, saatat haluta juottaa joitakin otsikkotappeja GPIO -porttiin.

- Valosta riippuvainen vastus (tunnetaan myös nimellä LDR tai valoresistori)

- 1 uF keraaminen kondensaattori

- Solderless Prototyping Breadboard

- Jotkut uros -naarasliitännät

Vaihe 2: Rakenna piiri

Rakenna piiri
Rakenna piiri
Rakenna piiri
Rakenna piiri

Rakenna yllä oleva piiri leipälevyllesi varmistaen, että mikään komponenttijohdoista ei kosketa. Valosta riippuvalla vastuksella ja keraamisella kondensaattorilla ei ole napaisuutta, mikä tarkoittaa, että negatiivinen ja positiivinen virta voidaan kytkeä kumpaankin johtimeen. Siksi sinun ei tarvitse huolehtia siitä, millä tavalla nämä komponentit on kytketty piiriin.

Kun olet tarkistanut piirisi, liitä hyppyjohdot varovasti Raspberry Pi: n GPIO -nastoihin yllä olevan kaavion mukaisesti.

Vaihe 3: Luo Python -skripti tietojen lukemiseen ja kirjaamiseen

Luo Python -skripti tietojen lukemiseen ja kirjaamiseen
Luo Python -skripti tietojen lukemiseen ja kirjaamiseen

Avaa IDLE Raspberry Pi -laitteessa (Valikko> Ohjelmointi> Python 2 (IDLE)) ja avaa uusi projekti (Tiedosto> Uusi tiedosto). Kirjoita sitten seuraava:

tuoda RPi. GPIO GPIO: ksi

tuonti aika tuonti päivämäärä loginterval = 60 #login aikaväli sekunneissa savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 #1uf adj = 2.130620985

def mittaresistanssi (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 () kun (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () return endtime-starttime def writeline (txt, fn): f = open (fn, 'a') f.write (txt+'\ n') f.close () i = 0 t = 0 kun True: stime = time.time () a: lle alueella (1, 11): res = (mittaresistanssi (SensorPin, TriggerPin)/cap)*adj i = i+1 t = t+res, jos a == 10: t = t/i print (t) writeline (str (datetime.datetime.now ())+","+str (t), savefilename) i = 0 t = 0 kun stime+loginterval> time.time (): #odota, kunnes logtime on kulunut aika. uni (0,0001)

Tallenna projekti tiedostona kansioon datalogger.py (Tiedosto> Tallenna nimellä).

Avaa nyt Pääte (Valikko> Lisävarusteet> Pääte) ja kirjoita seuraava komento:

python datalogger.py

Skripti luo tekstitiedoston nimeltä "lightlevels.txt" ja päivittää sen 60 sekunnin välein. Voit muuttaa tämän tiedostonimen rivillä 6. Voit myös säätää dataloggerin päivitysten tiheyttä vaihtamalla riviä 5.

Suositeltava: