Isi kandungan:

Membuat Data Logger Dengan Raspberry Pi: 3 Langkah (dengan Gambar)
Membuat Data Logger Dengan Raspberry Pi: 3 Langkah (dengan Gambar)

Video: Membuat Data Logger Dengan Raspberry Pi: 3 Langkah (dengan Gambar)

Video: Membuat Data Logger Dengan Raspberry Pi: 3 Langkah (dengan Gambar)
Video: Raspberry Pi 3 Data Logger | Part 1 of 2 | CSV 2024, Julai
Anonim
Membuat Data Logger Dengan Raspberry Pi
Membuat Data Logger Dengan Raspberry Pi

Pencatat data ringkas ini melakukan pengukuran cahaya biasa dengan LDR analog (Photoresistor) dan menyimpannya dalam fail teks pada Raspberry Pi anda. Pencatat data ini akan mengukur dan mencatat tahap cahaya setiap 60 saat, membolehkan anda memantau bagaimana kecerahan berubah dalam jangka masa yang lama.

Sekiranya kita ingin menggunakan sensor analog dengan Raspberry Pi, kita perlu dapat mengukur rintangan sensor. Tidak seperti Arduino, pin GPIO Raspberry Pi tidak dapat mengukur rintangan dan hanya dapat dirasakan jika voltan yang dibekalkan kepada mereka melebihi voltan tertentu (kira-kira 2 volt). Untuk mengatasi masalah ini, anda boleh menggunakan Analogue to Digital Converter (ADC), atau sebagai gantinya anda boleh menggunakan kapasitor yang agak murah.

Langkah 1: Apa yang Anda Perlu

Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu

- RaspberryPi dengan Raspbian sudah dipasang. Anda juga perlu dapat mengakses Pi menggunakan Monitor, Tetikus dan Papan Kekunci atau melalui Desktop Jauh. Anda boleh menggunakan mana-mana model Raspberry Pi. Sekiranya anda mempunyai salah satu model Pi Zero, anda mungkin ingin menyisipkan beberapa pin header ke port GPIO.

- Perintang Bergantung Cahaya (Juga dikenali sebagai LDR atau Photoresistor)

- Kapasitor Seramik 1 uF

- Papan Roti Prototaip Solderless

- Beberapa wayar pelompat Lelaki ke Wanita

Langkah 2: Bina Litar Anda

Bina Litar Anda
Bina Litar Anda
Bina Litar Anda
Bina Litar Anda

Bina litar di atas di papan roti anda dan pastikan tiada komponen komponen yang menyentuh. Perintang Bergantung Cahaya dan Kapasitor Seramik tidak mempunyai kekutuban yang bermaksud bahawa arus negatif dan positif dapat disambungkan ke salah satu plumbum. Oleh itu, anda tidak perlu risau dengan cara mana komponen ini disambungkan di litar anda.

Setelah anda memeriksa litar anda, sambungkan kabel pelompat dengan hati-hati ke pin GPIO Raspberry Pi anda dengan mengikuti rajah di atas.

Langkah 3: Buat Skrip Python untuk Membaca dan Log Data Anda

Buat Skrip Python untuk Membaca dan Log Data Anda
Buat Skrip Python untuk Membaca dan Log Data Anda

Buka IDLE pada Raspberry Pi anda (Menu> Pengaturcaraan> Python 2 (IDLE)) dan buka projek baru (Fail> Fail Baru). Kemudian taipkan perkara berikut:

import RPi. GPIO sebagai GPIO

import time import datetime loginterval = 60 #log interval in seconds savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 # 1uf adj = 2.130620985

def pengukur jarak (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 () manakala (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () kembali garis panduan def endtime-starttime (txt, fn): f = open (fn, 'a') f.write (txt + '\ n') f.close () i = 0 t = 0 sementara True: stime = time.time () untuk julat (1, 11): res = (pengukur jarak (SensorPin, TriggerPin) / cap) * adj i = i + 1 t = t + res jika a == 10: t = t / i print (t) writeline (str (datetime.datetime.now ()) + "," + str (t), savefilename) i = 0 t = 0 sementara stime + loginterval> time.time (): # tunggu sehingga waktu log telah masa berlalu. tidur (0.0001)

Simpan projek anda sebagai datalogger.py (Fail> Simpan Sebagai) dalam folder Dokumen anda.

Sekarang buka Terminal (Menu> Aksesori> Terminal) dan ketik arahan berikut:

python datalogger.py

Skrip akan membuat fail teks bernama "lightlevels.txt" dan memperbaruinya setiap 60 saat. Anda boleh menukar nama fail ini pada baris 6. Anda juga dapat menyesuaikan seberapa kerap kemas kini datalogger dengan menukar baris 5.

Disyorkan: