Za pomocą ADS1115 z Raspberry Pi

Using the ADS1115 with the Raspberry Pi

ADS1115 jest 16-bitowy konwerter analogowo-cyfrowy (ADC) To pozwala na czytanie Raspberry Pi sygnały analogowe od czujników, potencjometrów i innych urządzeń analogowych. Ten przewodnik poprowadzi Cię przez konfigurowanie Moduł ADS1115 Z Raspberry Pi do odczytu danych czujnika analogowego za pomocą Pythona.


Czego będziesz potrzebować

  1. Raspberry Pi (Każdy model z obsługą I2C, np. PI 3, PI 4)
  2. Moduł ADS1115 ADC
  3. Czujnik analogowy (np. Potencjometr, czujnik temperatury, czujnik wilgoci gleby itp.)
  4. Druty chleba i skoczków
  5. Zainstalowany Python na Raspberry Pi

Krok 1: Zrozumienie ADS1115

. Raspberry Pi nie ma analogowych pinów wejściowych, więc ADS1115 służy do konwersji Sygnały analogowe do cyfrowego. ADS1115 zapewnia:

  • 4 analogowe kanały wejściowe (A0, A1, A2, A3)
  • 16-bitowa rozdzielczość dla wysokiej precyzji
  • Interfejs komunikacyjny I2C
  • Programowalny wzmacniacz wzmocnienia (PGA) dla regulowanej wrażliwości

Krok 2: Okablowanie ADS1115 do Raspberry Pi

. ADS1115 komunikuje się przez I2C, więc łączymy go z pinami I2C Raspberry Pi.

Znajomości

PIN ADS1115 Pin Raspberry Pi
VCC 3,3 V (pin 1) lub 5 V (pin 2)
GND Uziemienie (pin 6)
SDA SDA (pin 3, GPIO2)
Scl SCL (pin 5, GPIO3)
A0-A3 (wejścia analogowe) Podłącz do wyjścia czujnika

Krok 3: Włącz I2C na Raspberry Pi

  1. Otwórz narzędzie konfiguracyjne Raspberry Pi:
    sudo raspi-config
    
  2. Przejść do Opcje interfejsu> i2c i włącz to.
  3. Uruchom ponownie Raspberry Pi:
    sudo reboot
    
  4. Sprawdź, czy ADS1115 jest wykrywany W autobusie I2C:
    sudo i2cdetect -y 1
    
    . ADS1115 powinien pojawić się pod adresem 0x48.

Krok 4: Zainstaluj wymagane biblioteki

  1. Zaktualizuj listę pakietów Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. Zainstaluj wymagane Narzędzia I2C i biblioteki Pythona:
    sudo apt install -y python3-smbus python3-pip
    pip3 install adafruit-circuitpython-ads1x15
    

Krok 5: Odczyt danych analogowych z ADS1115

Kod Pythona do odczytu danych czujnika z 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...")

Krok 6: Zastosowania ADS1115 z Raspberry Pi

  1. Czytanie czujników analogowych - Temperatura, światło, wilgotność lub czujniki gazu.
  2. Monitorowanie napięcia akumulatora - Zmierz napięcia bezpiecznie z wysoką rozdzielczością.
  3. Monitorowanie wilgoci gleby - Użyj dla Inteligentne systemy nawadniające.
  4. Odczyty potencjometru - Użyj jako Kontroler wejściowy użytkownika do projektów.

Rozwiązywanie problemów

  1. ADS1115 nie wykryte (i2cdetect nie pokazuje 0x48)

    • Upewnij się SDA/SCL PINS są prawidłowo podłączone.
    • Sprawdź to I2C jest włączony używając sudo raspi-config.
  2. Niedokładne odczyty

    • Używać Ustawienia PGA W kodzie Python w celu dostosowania zakresu napięcia.
    • Upewnij się stabilny zasilacz do modułu ADS1115.
  3. Wiele modułów ADS1115

    • Zmodyfikuj Adres I2C za pomocą PIN ADDR Aby uniknąć konfliktów.

Wniosek

. Moduł ADS1115 umożliwia Raspberry Pi odczyt dane czujnika analogowego z wysoką precyzją. Czy budujesz Monitorowanie środowiska, wykrywanie baterii lub aplikacje IoT, ten przewodnik stanowi prosty sposób na zintegrowanie analogowe dane wejściowe do twoich projektów! 🚀

Zostaw komentarz

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.