El ADS1115 es un Convertidor analógico a digital de 16 bits (ADC) que permite que la Raspberry Pi lea señales analógicas de sensores, potenciómetros y otros dispositivos analógicos. Esta guía lo guiará a través de la configuración del Módulo ADC ADS1115 con la Raspberry Pi para leer datos de sensor analógico usando Python.
Lo que necesitarás
- Frambuesa pi (Cualquier modelo con soporte I2C, por ejemplo, PI 3, PI 4)
- Módulo ADC ADS1115
- Sensor analógico (por ejemplo, potenciómetro, sensor de temperatura, sensor de humedad del suelo, etc.)
- Cables de placa y jersey
- Python instalado en la frambuesa pi
Paso 1: Comprender el ADS1115
El Raspberry Pi carece de pasadores de entrada analógica, entonces el ADS1115 se usa para convertir Señales analógicas a digital. El ADS1115 proporciona:
- 4 canales de entrada analógica (A0, A1, A2, A3)
- Resolución de 16 bits para alta precisión
- Interfaz de comunicación I2C
- Amplificador de ganancia programable (PGA) para sensibilidad ajustable
Paso 2: Cableado el ADS1115 al Raspberry Pi
El ADS1115 se comunica a través de I2C, así que lo conectamos a los pines I2C de Raspberry Pi.
Conexión
Ads1115 pin | Pin de frambuesa Pi |
---|---|
VCC | 3.3V (pin 1) o 5V (pin 2) |
Gnd | Tierra (pin 6) |
SDA | SDA (pin 3, GPIO2) |
SCL | SCL (pin 5, GPIO3) |
A0-A3 (entradas analógicas) | Conectarse a la salida del sensor |
Paso 3: Habilitar I2C en la Raspberry Pi
- Abra la herramienta de configuración de Raspberry Pi:
sudo raspi-config
- Navegar por Opciones de interfaz> I2C y habilitarlo.
- Reinicie la Raspberry Pi:
sudo reboot
- Verificar que el Se detecta ADS1115 En el autobús I2C:
El ADS1115 debe aparecer en la direcciónsudo i2cdetect -y 1
0x48
.
Paso 4: Instale las bibliotecas requeridas
- Actualice la lista de paquetes de su Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- Instale el requerido Herramientas I2C y bibliotecas de Python:
sudo apt install -y python3-smbus python3-pip pip3 install adafruit-circuitpython-ads1x15
Paso 5: Leer datos analógicos del ADS1115
Código de Python para leer los datos del sensor de 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...")
Paso 6: Aplicaciones de ADS1115 con Raspberry Pi
- Lectura de sensores analógicos - Temperatura, luz, humedad o sensores de gas.
- Monitoreo de voltaje de la batería - Mida los voltajes de forma segura con alta resolución.
- Monitoreo de humedad del suelo - Usar para sistemas de riego inteligentes.
- Lecturas de potenciómetro - Usar como un Controlador de entrada de usuario para proyectos.
Solución de problemas
-
ADS1115 no detectado (
i2cdetect
no se muestra0x48
)- Asegurar el Pines SDA/SCL están conectados correctamente.
- Verifique que I2C está habilitado usando
sudo raspi-config
.
-
Lecturas inexactas
- Usar Configuración de PGA en el código de Python para ajustar el rango de voltaje.
- Asegurar un fuente de alimentación estable al módulo ADS1115.
-
Múltiples módulos ADS1115
- Modificar el Dirección I2C usando el Alfiler para evitar conflictos.
Conclusión
El Módulo ADC ADS1115 habilita la frambuesa Pi leer datos de sensor analógico con alta precisión. Ya sea que estés construyendo Monitoreo ambiental, detección de baterías o aplicaciones IoT, esta guía proporciona una forma simple de integrar Entradas analógicas en sus proyectos! 🚀