Itu ADS1115 adalah a 16-bit analog-to-digital converter (ADC) yang memungkinkan Raspberry Pi membaca sinyal analog dari sensor, potensiometer, dan perangkat analog lainnya. Panduan ini akan memandu Anda dengan menyiapkan ADS1115 Modul ADC Dengan Raspberry Pi untuk membaca data sensor analog menggunakan Python.
Apa yang Anda Butuhkan
- Raspberry Pi (Model apa pun dengan dukungan I2C, mis., Pi 3, pi 4)
- ADS1115 Modul ADC
- Sensor analog (mis., Potensiometer, sensor suhu, sensor kelembaban tanah, dll.)
- Papan tempat memotong papan dan kabel jumper
- Python terpasang di raspberry pi
Langkah 1: Memahami ADS1115
Itu Raspberry Pi tidak memiliki pin input analog, jadi ADS1115 digunakan untuk mengonversi sinyal analog untuk digital. ADS1115 menyediakan:
- 4 saluran input analog (A0, A1, A2, A3)
- Resolusi 16-bit untuk presisi tinggi
- Antarmuka komunikasi I2C
- Penguat penguatan yang dapat diprogram (PGA) untuk sensitivitas yang dapat disesuaikan
Langkah 2: Pengkabelan ADS1115 ke Raspberry Pi
Itu ADS1115 berkomunikasi melalui I2C, jadi kami menghubungkannya ke pin i2c Raspberry Pi.
Koneksi
ADS1115 Pin | Raspberry Pi Pin |
---|---|
Vcc | 3.3V (pin 1) atau 5V (pin 2) |
Gnd | Ground (pin 6) |
SDA | SDA (Pin 3, GPIO2) |
Scl | SCL (pin 5, gpio3) |
A0-A3 (input analog) | Hubungkan ke Output Sensor |
Langkah 3: Aktifkan I2C di Raspberry Pi
- Buka alat konfigurasi Raspberry Pi:
sudo raspi-config
- Navigasikan ke Opsi Antarmuka> I2C dan mengaktifkannya.
- Reboot Raspberry Pi:
sudo reboot
- Pastikan itu ADS1115 terdeteksi di bus I2C:
Itu ADS1115 akan muncul di alamatsudo i2cdetect -y 1
0x48
.
Langkah 4: Instal perpustakaan yang diperlukan
- Perbarui Daftar Paket Raspberry Pi Anda:
sudo apt update && sudo apt upgrade -y
- Instal yang diperlukan Alat I2C dan perpustakaan Python:
sudo apt install -y python3-smbus python3-pip pip3 install adafruit-circuitpython-ads1x15
Langkah 5: Membaca Data Analog dari ADS1115
Kode Python untuk membaca data sensor dari ADS1115
import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn
# Initialize I2C and ADS1115 ADC
i2c = busio.I2C(board.SCL, board.SDA)
ads = ADS.ADS1115(i2c)
# Select Analog Input Channel (A0)
channel = AnalogIn(ads, ADS.P0)
try:
while True:
print(f"Raw Value: {channel.value}, Voltage: {channel.voltage:.2f}V")
time.sleep(1)
except KeyboardInterrupt:
print("Exiting...")
Langkah 6: Aplikasi ADS1115 dengan Raspberry Pi
- Membaca sensor analog - Suhu, cahaya, kelembaban, atau sensor gas.
- Pemantauan tegangan baterai - Ukur tegangan dengan aman dengan resolusi tinggi.
- Pemantauan Kelembaban Tanah - Gunakan untuk Sistem Irigasi Cerdas.
- Bacaan potensiometer - Gunakan sebagai Pengontrol Input Pengguna untuk proyek.
Pemecahan masalah
-
ADS1115 tidak terdeteksi (
i2cdetect
tidak menunjukkan0x48
)- Pastikan Pin SDA/SCL terhubung dengan benar.
- Pastikan itu I2C diaktifkan menggunakan
sudo raspi-config
.
-
Bacaan yang tidak akurat
- Menggunakan Pengaturan PGA dalam kode Python untuk menyesuaikan rentang tegangan.
- Pastikan a catu daya yang stabil ke modul ADS1115.
-
Beberapa modul ADS1115
- Ubah Alamat I2C menggunakan Pin addr untuk menghindari konflik.
Kesimpulan
Itu ADS1115 Modul ADC memungkinkan raspberry pi untuk Baca data sensor analog dengan presisi tinggi. Apakah Anda sedang membangun Pemantauan lingkungan, penginderaan baterai, atau aplikasi IoT, panduan ini memberikan cara sederhana untuk mengintegrasikan input analog ke dalam proyek Anda! 🚀