IL ADS1115 è un Convertitore da analogico a digitale a 16 bit (ADC) Ciò consente a Raspberry Pi di leggere Segnali analogici da sensori, potenziometri e altri dispositivi analogici. Questa guida ti guiderà attraverso la configurazione del Modulo ADC ADS1115 Con Raspberry Pi per leggere i dati del sensore analogico utilizzando Python.
Cosa avrai bisogno
- Raspberry Pi (Qualsiasi modello con supporto I2C, ad esempio PI 3, PI 4)
- Modulo ADC ADS1115
- Sensore analogico (ad es. Potenziometro, sensore di temperatura, sensore di umidità del suolo, ecc.)
- Breadboard e fili jumper
- Python installato Sul Raspberry Pi
Passaggio 1: Comprensione degli ADS1115
IL Raspberry Pi manca di pin di ingresso analogici, così il ADS1115 viene utilizzato per convertire Segnali analogici al digitale. L'ADS1115 fornisce:
- 4 canali di ingresso analogici (A0, A1, A2, A3)
- Risoluzione a 16 bit per alta precisione
- Interfaccia di comunicazione I2C
- Amplificatore di guadagno programmabile (PGA) per sensibilità regolabile
Passaggio 2: Cablaggio degli ADS1115 a Raspberry Pi
IL ADS1115 comunica tramite I2C, quindi lo colleghiamo ai pin i2c di Raspberry Pi.
Connessioni
PIN ADS1115 | Pin di lampone |
---|---|
VCC | 3.3V (pin 1) o 5V (pin 2) |
GND | Terra (pin 6) |
SDA | SDA (PIN 3, GPIO2) |
SCL | SCL (PIN 5, GPIO3) |
A0-A3 (ingressi analogici) | Connettiti all'uscita del sensore |
Passaggio 3: abilita i2c su Raspberry Pi
- Apri lo strumento di configurazione Raspberry Pi:
sudo raspi-config
- Navigare a Opzioni di interfaccia> i2c e abilitarlo.
- Riavvia il Raspberry Pi:
sudo reboot
- Verificare che il Viene rilevato ADS1115 Sull'autobus I2C:
IL ADS1115 dovrebbe apparire all'indirizzosudo i2cdetect -y 1
0x48
.
Passaggio 4: installa le librerie richieste
- Aggiorna l'elenco dei pacchetti di Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- Installare il richiesto Strumenti i2c e biblioteche Python:
sudo apt install -y python3-smbus python3-pip pip3 install adafruit-circuitpython-ads1x15
Passaggio 5: leggere i dati analogici dagli ADS1115
Codice Python per leggere i dati dei sensori da 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...")
Passaggio 6: applicazioni di ADS1115 con Raspberry Pi
- Leggere sensori analogici - Temperatura, luce, umidità o sensori di gas.
- Monitoraggio della tensione della batteria - Misurare le tensioni in modo sicuro con alta risoluzione.
- Monitoraggio dell'umidità del suolo - Usa per Sistemi di irrigazione intelligenti.
- Letture potenziometriche - Usa come a controller di input utente per progetti.
Risoluzione dei problemi
-
ADS1115 non rilevato (
i2cdetect
non mostra0x48
)- Assicurarsi il Pin SDA/SCL sono correttamente cablati.
- Verifica che I2C è abilitato usando
sudo raspi-config
.
-
Letture imprecise
- Utilizzo Impostazioni PGA Nel codice Python per regolare l'intervallo di tensione.
- Assicurarsi a Alimentazione stabile al modulo ADS1115.
-
Moduli multipli ADS1115
- Modificare il Indirizzo i2c usando il PIN ADDR per evitare conflitti.
Conclusione
IL Modulo ADC ADS1115 Abilita il Raspberry Pi di Leggi i dati del sensore analogico con alta precisione. Sia che tu stia costruendo Monitoraggio ambientale, rilevamento della batteria o applicazioni IoT, questa guida fornisce un modo semplice per integrarsi Ingni analogici nei tuoi progetti! 🚀