Daftar Isi:

Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi: 5 Langkah
Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi: 5 Langkah

Video: Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi: 5 Langkah

Video: Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi: 5 Langkah
Video: Cara Mengirim Data Sensor DHT22 ke ThingSpeak Server dengan Raspberry Pi 2024, November
Anonim
Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi
Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi

Dalam Instruksi ini Anda akan belajar cara membaca sensor cahaya dan suhu dengan raspberry pi dan konverter analog ke digital ADS1115 dan membuat grafiknya menggunakan matplotlib. Mari kita mulai dengan bahan-bahan yang dibutuhkan.

Perlengkapan

  1. Raspberry pi (siapa pun akan melakukannya, meskipun saya menggunakan 4)
  2. Kartu MicroSD dengan Raspbian terpasang (tutorial bagus:
  3. Monitor HDMI dan sumber daya
  4. Kabel mikro USB
  5. Adafruit ADS 1115 konverter analog ke digital:
  6. Kabel jumper
  7. sensor cahaya (LDR)
  8. sensor temperatur
  9. potensiometer x2 (nilai akan menjadi titik tengah kisaran resistansi sensor suhu dan cahaya Anda, yang akan kami ukur nanti)
  10. Papan tempat memotong roti

Langkah 1: Siapkan Raspberry Pi Anda

1. Ikuti tutorial ini untuk menyiapkan raspberry pi Anda:https://www.raspberrypi.org/help/noobs-setup/2/2. Aktifkan I2C: klik simbol raspberry pi di kiri atas. Buka preferensi> konfigurasi raspberry pi> antarmuka> dan centang kotak "aktifkan" di I2C. Kemudian klik OK.3. Sekarang buka jendela terminal. Pada jenis baris perintah:

sudo apt-get upgrade

sudo pip3 instal adafruit-circuitpython-ads1x15

sudo apt-get install python-matplotlib

Langkah 2: Ukur Sensor Cahaya dan Suhu Anda

Sekarang kita perlu mengukur resistansi sensor cahaya dan suhu. Ambil volt meter pada pengaturan pengukuran resistansi dan ukur di ujung sensor cahaya Anda dalam terang dan gelap. Catat nilainya. Sekarang ambil volt meter Anda di ujung sensor suhu Anda dalam panas dan dingin (saya menggunakan air). Catat nilainya. Kami akan menggunakannya nanti di sirkuit kami.

Langkah 3: Hubungkan Sirkuit Anda

Hubungkan Sirkuit Anda
Hubungkan Sirkuit Anda

1. Kumpulkan bahan-bahan yang tercantum dalam daftar persediaan. Untuk potensiometer, gunakan nilai rata-rata tertinggi dan terendah (terang dan gelap, panas dan dingin).

(tinggi-rendah) / 2

2. Ikuti diagram rangkaian di atas:

  1. Hubungkan SDA pada konverter analog ke digital ke SDA pada pi
  2. Hubungkan SCL pada konverter analog ke digital ke SCL pada pi
  3. Hubungkan VDD pada konverter analog ke digital ke 3.3v pada pi
  4. Hubungkan GND pada konverter analog ke digital ke ground pada pi
  5. Hubungkan sisa komponen sesuai dengan diagram sirkuit.

Langkah 4: Kode

1. Ketik terminal:

nano digital.py

2. Tempel kode yang saya miliki di bawah atau di Github ke editor teks yang seharusnya muncul.

impor matplotlib.pyplot sebagai plt

import numpy as np import board import busio import time import adafruit_ads1x15.ads1115 as ADS from adafruit_ads1x15.analog_in import AnalogIn i2c = busio. I2C(board. SCL, board. SDA) ads = ADS. ADS1115(i2c) x = 0 light = AnalogIn (iklan, ADS. P0) temp = AnalogIn(iklan, ADS. P1) X1 = X2 = Y1 = Y2 = plt.ylim(-50, 1000) plt.plot(X1, Y1, label = "light", color = '#0069af') plt.plot(X2, Y2, label = "Temp", color = '#ff8000') plt.xlabel('Time(minutes)') plt.ylabel(' Level') plt.title('Cahaya dan suhu seiring waktu') plt.legend() while True: x += 5 Y1.append(light.value/30) X1.append(x) Y2.append(temp.value /3) X2.append(x) plt.plot(X1, Y1, label = "light", color = '#0069af') plt.plot(X2, Y2, label = "Temp", color = '#ff8000') plt.jeda(300)

3. Sekarang tekan CTRL+X untuk keluar, tekan y untuk menyimpan, lalu tekan enter.

Jalankan program Anda dengan mengetik di terminal:

sudo python3 digital.py

4. Sesuaikan potensiometer sehingga grafik menunjukkan rentang nilai yang luas. Coba sorotkan cahaya ke sensor dan matikan lampu di ruangan untuk memastikan bahwa grafik menunjukkan rentang nilai yang luas.

Jika salah satu nilai turun ke bawah, coba turunkan pembagi yang sesuai (baris 29 dan 31).

Jika salah satu nilai berada di atas bagian atas, coba tingkatkan pembagi yang sesuai (baris 29 dan 31).

Langkah 5: Pemecahan Masalah

1. Periksa kembali semua koneksi terhadap diagram sirkuit

2. Deteksi I2C - Akan menunjukkan kepada Anda semua perangkat yang terhubung melalui i2c:

Ketik terminal:

sudo apt-get install i2c-tools

sudo i2cdetect - y 1

Direkomendasikan: