Sisukord:

Andmelogija tegemine Raspberry Pi abil: 3 sammu (piltidega)
Andmelogija tegemine Raspberry Pi abil: 3 sammu (piltidega)

Video: Andmelogija tegemine Raspberry Pi abil: 3 sammu (piltidega)

Video: Andmelogija tegemine Raspberry Pi abil: 3 sammu (piltidega)
Video: Как использовать Bixby 2024, November
Anonim
Andmeregistri tegemine Raspberry Pi abil
Andmeregistri tegemine Raspberry Pi abil

See lihtne andmelogija mõõdab regulaarselt valgust analoog -LDR -iga (fototakisti) ja salvestab need teie Raspberry Pi -sse tekstifaili. See andmekoguja mõõdab ja salvestab valguse taset iga 60 sekundi järel, võimaldades teil jälgida, kuidas heledus teatud aja jooksul muutub.

Kui tahame Raspberry Pi -ga kasutada analoogandureid, peaksime suutma mõõta anduri takistust. Erinevalt Arduinost ei suuda Raspberry Pi GPIO tihvtid takistust mõõta ja saavad aru vaid siis, kui neile tarnitav pinge on üle teatud pinge (ligikaudu 2 volti). Selle probleemi lahendamiseks võite kasutada analoog -digitaalmuundurit (ADC) või selle asemel suhteliselt odavat kondensaatorit.

Samm: mida vajate

Mida vajate
Mida vajate
Mida vajate
Mida vajate
Mida vajate
Mida vajate
Mida vajate
Mida vajate

- RaspberryPi, millele on juba installitud Raspbian. Samuti peab teil olema juurdepääs Pi -le monitori, hiire ja klaviatuuri või kaugtöölaua kaudu. Võite kasutada mis tahes Raspberry Pi mudelit. Kui teil on üks Pi Zero mudelitest, võiksite GPIO -porti joota mõned päisepoldid.

- Valgusõltuv takisti (tuntud ka kui LDR või fototakisti)

- 1 uF keraamiline kondensaator

- jooteta prototüüpimise leivaplaat

- Mõned isaste ja naiste hüppajate juhtmed

Samm: ehitage oma vooluring

Ehitage oma vooluring
Ehitage oma vooluring
Ehitage oma vooluring
Ehitage oma vooluring

Ehitage ülaltoodud vooluring oma leivaplaadile, veendudes, et ükski komponendi juhe ei puutu kokku. Valgusõltuv takisti ja keraamiline kondensaator ei oma polaarsust, mis tähendab, et negatiivse ja positiivse voolu saab ühendada kummagi juhtmega. Seetõttu ei pea te muretsema selle pärast, kuidas need komponendid on teie vooluahelasse ühendatud.

Kui olete oma vooluringi kontrollinud, ühendage hüppajakaablid ettevaatlikult oma Raspberry Pi GPIO tihvtidega, järgides ülaltoodud skeemi.

Samm: looge oma andmete lugemiseks ja logimiseks Pythoni skript

Looge oma andmete lugemiseks ja logimiseks Pythoni skript
Looge oma andmete lugemiseks ja logimiseks Pythoni skript

Avage oma Raspberry Pi -s IDLE (menüü> Programmeerimine> Python 2 (IDLE)) ja avage uus projekt (fail> uus fail). Seejärel tippige järgmine tekst:

RPi. GPIO importimine GPIO -na

importimise aeg impordi kuupäev ja aeg loginterval = 60 #logi intervall sekundites savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 #1uf adj = 2.130620985

def mõõdetakistus (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.putput (tpin, True) starttime = time.time () endtime = time.time () samas (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () return endtime-starttime def writeeline (txt, fn): f = avatud (fn, 'a') f.write (txt+'\ n') f.close () i = 0 t = 0, samas True: stime = time.time () a vahemikus (1, 11): res = (meetresistance (SensorPin, TriggerPin)/cap)*adj i = i+1 t = t+res, kui a == 10: t = t/i print (t) writeline (str (datetime.datetime.now ())+","+str (t), salvesta failinimi) i = 0 t = 0 samas kui stime+loginterval> time.time (): #oota, kuni logtime on möödunud aeg. uni (0,0001)

Salvestage oma projekt kausta Dokumendid nimega datalogger.py (Fail> Salvesta nimega).

Nüüd avage Terminal (Menüü> Tarvikud> Terminal) ja tippige järgmine käsk:

python datalogger.py

Skript loob tekstifaili nimega "lightlevels.txt" ja värskendab seda iga 60 sekundi järel. Seda failinime saate muuta 6. real. Samuti saate 5. rea muutmisega reguleerida, kui sageli andmete koguja värskendab.

Soovitan: