Ang ADS1115 ay a 16-bit analog-to-digital converter (ADC) Pinapayagan nito ang Raspberry Pi na basahin Mga signal ng analog mula sa mga sensor, potentiometer, at iba pang mga aparato ng analog. Ang gabay na ito ay lalakad sa iyo sa pamamagitan ng pag -set up ng ADS1115 ADC Module kasama ang Raspberry Pi upang mabasa ang data ng sensor ng analog gamit ang Python.
Ano ang kakailanganin mo
- Raspberry Pi (Anumang modelo na may suporta sa I2C, hal., PI 3, PI 4)
- ADS1115 ADC Module
- Analog Sensor (hal., Potentiometer, sensor ng temperatura, sensor ng kahalumigmigan ng lupa, atbp.
- Mga wire ng tinapay at jumper
- Naka -install ang Python Sa Raspberry Pi
Hakbang 1: Pag -unawa sa ADS1115
Ang Ang Raspberry Pi ay kulang sa mga analog input pin, kaya ang ADS1115 ay ginagamit upang mag -convert Analog signal sa digital. Nagbibigay ang ADS1115:
- 4 Analog Input Channels (A0, A1, A2, A3)
- 16-bit na resolusyon para sa mataas na katumpakan
- I2C interface ng komunikasyon
- Programmable Gain amplifier (PGA) para sa adjustable sensitivity
Hakbang 2: Ang mga kable ng ADS1115 sa Raspberry Pi
Ang Nakikipag -usap ang ADS1115 sa pamamagitan ng I2C, kaya ikinonekta namin ito sa mga pin ng Raspberry Pi's I2C.
Mga koneksyon
ADS1115 Pin | Raspberry Pi Pin |
---|---|
VCC | 3.3v (pin 1) o 5V (pin 2) |
Gnd | Ground (pin 6) |
SDA | SDA (PIN 3, GPIO2) |
SCL | SCL (Pin 5, GPIO3) |
A0-A3 (analog input) | Kumonekta sa output ng sensor |
Hakbang 3: Paganahin ang I2C sa Raspberry Pi
- Buksan ang tool ng pagsasaayos ng Raspberry Pi:
sudo raspi-config
- Mag -navigate sa Mga pagpipilian sa interface> i2c at paganahin ito.
- I -reboot ang Raspberry Pi:
sudo reboot
- I -verify na ang Nakita ang ADS1115 sa bus ng I2C:
Ang Ang ADS1115 ay dapat lumitaw sa addresssudo i2cdetect -y 1
0x48
.
Hakbang 4: I -install ang mga kinakailangang aklatan
- I -update ang listahan ng package ng Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- I -install ang kinakailangan Mga tool ng I2C at Python Libraries:
sudo apt install -y python3-smbus python3-pip pip3 install adafruit-circuitpython-ads1x15
Hakbang 5: Pagbasa ng data ng analog mula sa ADS1115
Python code upang mabasa ang data ng sensor mula sa 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...")
Hakbang 6: Mga Aplikasyon ng ADS1115 na may Raspberry Pi
- Pagbasa ng mga sensor ng analog - temperatura, ilaw, kahalumigmigan, o mga sensor ng gas.
- Pagmamanman ng boltahe ng baterya - Sukatin ang mga boltahe nang ligtas na may mataas na resolusyon.
- Pagsubaybay sa kahalumigmigan ng lupa - Gumamit para sa Smart system ng patubig.
- Pagbasa ng Potentiometer - Gamitin bilang isang controller ng input ng gumagamit para sa mga proyekto.
Pag -aayos
-
Hindi napansin ang ADS1115 (
i2cdetect
hindi nagpapakita0x48
)- Tiyakin ang SDA/SCL pin ay wastong wired.
- I -verify na Pinagana ang I2C Paggamit
sudo raspi-config
.
-
Hindi tumpak na pagbabasa
- Gumamit Mga Setting ng PGA sa Python code upang ayusin ang saklaw ng boltahe.
- Tiyakin a matatag na supply ng kuryente sa module ng ADS1115.
-
Maramihang mga module ng ADS1115
- Baguhin ang I2C address Gamit ang Addr pin Upang maiwasan ang mga salungatan.
Konklusyon
Ang ADS1115 ADC Module nagbibigay -daan sa Raspberry Pi sa Basahin ang data ng analog sensor na may mataas na katumpakan. Kung nagtatayo ka man Pagmamanman sa kapaligiran, sensing ng baterya, o mga aplikasyon ng IoT, Ang gabay na ito ay nagbibigay ng isang simpleng paraan upang maisama Analog input sa iyong mga proyekto! 🚀