Utilizarea ADS1115 cu Raspberry Pi

Using the ADS1115 with the Raspberry Pi

The ADS1115 este o Convertor Analog-Digital pe 16 biți (ADC) acest lucru permite Raspberry Pi să citească semnale analogice de la senzori, potențiometre și alte dispozitive analogice. Acest ghid vă va ghida prin stabilirea ADS1115 modulul ADC cu Raspberry Pi pentru a citi datele senzorilor analogici folosind Python.


Ce Veți avea nevoie

  1. Pi Raspberry (orice model cu suport I2C, de exemplu Pi 3, Pi 4)
  2. ADS1115 Modulul ADC
  3. Senzor analogic (de exemplu, potențiometru, senzor de temperatură, senzor de umiditate a solului etc.)
  4. Firuri de Breadboard și Jumper
  5. Python instalat pe Raspberry Pi

Pasul 1: Înțelegerea ADS1115

Raspberry Pi nu are pini de intrare analogici, astfel încât ADS1115 este utilizat pentru a converti semnalele analogice în digitale. ADS1115 oferă:

  • 4 canale de intrare analogică (A0, A1, A2, A3)
  • rezoluție de 16 biți pentru precizie ridicată
  • interfață de comunicare I2C
  • amplificator de câștig programabil (PGA) pentru sensibilitate reglabilă

Pasul 2: Cablarea ADS1115 la Raspberry Pi

ADS1115 comunică prin I2C, așa că îl conectăm la pinii I2C ai Raspberry Pi.

Conexiuni

Pinul ADS1115 Pinul Raspberry Pi
VCC 3.3V (Pin 1) sau 5V (Pin 2)
GND Pământ (Pin 6)
SDA SDA (Pin 3, GPIO2)
SCL SCL (Pin 5, GPIO3)
A0-A3 (intrări analogice) Conectați-vă la ieșirea senzorului

Pasul 3: Activați I2C pe Raspberry Pi

  1. Deschideți instrumentul de configurare Raspberry Pi:
    sudo raspi-config
    
  2. Navigați la Opțiuni de interfață > I2C și activați-l.
  3. Reporniți Raspberry Pi:
    sudo reboot
    
  4. Verificați dacă ADS1115 este detectat pe magistrala I2C:
    sudo i2cdetect -y 1
    
    Raportul ADS1115 ar trebui să apară la adresa 0x48.

Pasul 4: Instalați bibliotecile necesare

  1. Actualizați lista de pachete a Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. Instalați Instrumente I2C și biblioteci Python:
    sudo apt install -y python3-smbus python3-pip
    pip3 install adafruit-circuitpython-ads1x15
    

Pasul 5: Citirea datelor analogice din ADS1115

Cod Python pentru a citi datele senzorului din 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...")

Pasul 6: Aplicații ale ADS1115 cu Raspberry Pi

  1. Citirea senzorilor analogici - Senzori de temperatură, lumină, umiditate sau gaze.
  2. Monitorizarea tensiunii bateriei - Măsurați tensiunile în siguranță cu rezoluție ridicată.
  3. Monitorizarea umidității solului - Utilizați pentru sisteme inteligente de irigare.
  4. Citiri de potențiometru - Utilizați ca controler de intrare utilizator pentru proiecte.

Depanare

  1. ADS1115 nu este detectat (i2cdetect nu afișează 0x48)

    • Asigurați-vă că pinii SDA/SCL sunt conectați corect.
    • Verificați dacă I2C este activat utilizând sudo raspi-config.
  2. Citiri inexacte

    • Utilizați Setări PGA în codul Python pentru a ajusta intervalul de tensiune.
    • Asigurați-vă că un alimentare stabilă către modulul ADS1115.
  3. Module multiple ADS1115

    • Modifica Adresa I2C folosind pin ADDR pentru a evita conflictele.

Concluzie

The ADS1115 modulul ADC permite Raspberry Pi să citiți datele senzorilor analogi cu mare precizie. Indiferent dacă construiți monitorizarea mediului, detectarea bateriilor sau aplicațiile IoT, acest ghid oferă o modalitate simplă de integrare intrări analogice în proiectele dvs! 🚀

Lasă un comentariu

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.