Använda ADS1115 med Raspberry Pi

Using the ADS1115 with the Raspberry Pi

De ADS1115 är en 16-bitars analog-till-digital omvandlare (ADC) som gör att Raspberry Pi kan läsa analoga signaler från sensorer, potentiometrar och andra analoga enheter. Den här guiden kommer att leda dig genom att ställa in ADS1115 ADC -modul med Raspberry Pi för att läsa analoga sensordata med Python.


Vad du behöver

  1. Hallon (Varje modell med I2C -stöd, t.ex. PI 3, PI 4)
  2. ADS1115 ADC -modul
  3. Analog sensor (t.ex. potentiometer, temperatursensor, jordfuktighetssensor, etc.)
  4. Breadboard och jumpertrådar
  5. Python installerad på Raspberry Pi

Steg 1: Förstå ADS1115

De Raspberry Pi saknar analoga ingångsstift, så ADS1115 används för att konvertera analoga signaler till digital. ADS1115 tillhandahåller:

  • 4 Analoga ingångskanaler (A0, A1, A2, A3)
  • 16-bitarsupplösning för hög precision
  • I2C -kommunikationsgränssnitt
  • Programmerbar förstärkningsförstärkare (PGA) för justerbar känslighet

Steg 2: Kopplar ADS1115 till Raspberry Pi

De ADS1115 kommunicerar via i2c, så vi ansluter den till Raspberry Pi's i2C -stift.

Anslutningar

ADS1115 -stift Hallon pi
Vcc 3.3V (stift 1) eller 5V (stift 2)
Gard Mark (stift 6)
SDA SDA (stift 3, GPIO2)
SCL SCL (stift 5, GPIO3)
A0-A3 (analoga ingångar) Anslut till sensorutgången

Steg 3: Aktivera i2c på Raspberry Pi

  1. Öppna Raspberry PI -konfigurationsverktyget:
    sudo raspi-config
    
  2. Navigera till Gränssnittsalternativ> i2c och aktivera det.
  3. Starta om Raspberry Pi:
    sudo reboot
    
  4. Verifiera att ADS1115 upptäcks på i2c -bussen:
    sudo i2cdetect -y 1
    
    De ADS1115 ska visas på adressen 0x48.

Steg 4: Installera obligatoriska bibliotek

  1. Uppdatera din Raspberry Pis paketlista:
    sudo apt update && sudo apt upgrade -y
    
  2. Installera det nödvändiga I2C -verktyg och pythonbibliotek:
    sudo apt install -y python3-smbus python3-pip
    pip3 install adafruit-circuitpython-ads1x15
    

Steg 5: Att läsa analoga data från ADS1115

Python -kod för att läsa sensordata från 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...")

Steg 6: Tillämpningar av ADS1115 med Raspberry Pi

  1. Läsande analoga sensorer - Temperatur, ljus, luftfuktighet eller gassensorer.
  2. Batterispänningsövervakning - Mät spänningar säkert med hög upplösning.
  3. Jordfuktighetsövervakning - Användning för smart bevattningssystem.
  4. Potentiometeravläsningar - Använd som en användarinmatningskontroller för projekt.

Felsökning

  1. ADS1115 inte upptäckt (i2cdetect visar inte 0x48)

    • Se till SDA/SCL -stift är korrekt kopplade.
    • Verifiera att I2c är aktiverad användning sudo raspi-config.
  2. Felaktiga avläsningar

    • Använda PGA -inställningar i Python -koden för att justera spänningsområdet.
    • Se till stabil strömförsörjning till ADS1115 -modulen.
  3. Flera ADS1115 -moduler

    • Modifiera den I2C -adress med hjälp av ADDR -stift för att undvika konflikter.

Slutsats

De ADS1115 ADC -modul gör det möjligt för Raspberry Pi att Läs analoga sensordata med hög precision. Oavsett om du bygger Miljöövervakning, batteriavkänning eller IoT -applikationer, den här guiden ger ett enkelt sätt att integrera analoga ingångar i dina projekt! 🚀

Lämna en kommentar

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.