Nota
¡Hola, bienvenido a la comunidad de entusiastas de Raspberry Pi, Arduino y ESP32 de SunFounder en Facebook! Profundiza en Raspberry Pi, Arduino y ESP32 con otros entusiastas.
¿Por qué unirse?
Soporte Experto: Resuelve problemas post-venta y desafíos técnicos con la ayuda de nuestra comunidad y equipo.
Aprende y Comparte: Intercambia consejos y tutoriales para mejorar tus habilidades.
Avances Exclusivos: Obtén acceso anticipado a anuncios de nuevos productos y avances.
Descuentos Especiales: Disfruta de descuentos exclusivos en nuestros productos más nuevos.
Promociones Festivas y Sorteos: Participa en sorteos y promociones de temporada.
👉 ¿Listo para explorar y crear con nosotros? Haz clic en [aquí] y únete hoy mismo!
Lección 25: Módulo Sensor de Nivel de Agua
En esta lección, aprenderás a usar el Raspberry Pi Pico W para medir niveles de agua con un sensor de nivel de agua. Aprenderás cómo conectar el sensor a la placa, leer su salida analógica utilizando MicroPython e interpretar estas lecturas para determinar los niveles de agua. Esta sesión práctica tiene como objetivo desarrollar tus habilidades en integración de sensores y adquisición de datos con el Raspberry Pi Pico W.
Componentes Requeridos
En este proyecto, necesitamos los siguientes componentes.
Es muy conveniente comprar un kit completo, aquí tienes el enlace:
Nombre |
ARTÍCULOS EN ESTE KIT |
ENLACE |
|---|---|---|
Kit Sensor Universal Maker |
94 |
También puedes comprarlos por separado desde los siguientes enlaces.
Introducción del componente |
Enlace de compra |
|---|---|
Raspberry Pi Pico W |
- |
- |
|
Conexión
Código
import machine
import utime
# Inicializar un objeto ADC en el pin GPIO 26.
# Este se utiliza típicamente para leer señales analógicas.
water_level_sensor = machine.ADC(26)
# Leer continuamente y mostrar los datos del sensor.
while True:
value = water_level_sensor.read_u16() # Leer y convertir el valor analógico a un entero de 16 bits
print("AO:", value) # Mostrar el valor analógico
utime.sleep_ms(200) # Esperar 200 milisegundos antes de la siguiente lectura
Análisis del Código
Importación de Bibliotecas
Aquí importamos las bibliotecas necesarias:
machinepara las interacciones con el hardware yutimepara las funciones relacionadas con el tiempo.import machine import utime
Inicialización del Sensor de Nivel de Agua
Se crea un objeto ADC en el pin GPIO 26 para leer las señales analógicas del sensor de nivel de agua. El ADC es crucial para convertir las señales analógicas del sensor a un formato digital que el microcontrolador pueda procesar.
# Inicializar un objeto ADC en el pin GPIO 26. water_level_sensor = machine.ADC(26)
Lectura y Visualización de los Datos del Sensor
El bucle
while Truepermite la lectura continua de los datos del sensor. El métodoread_u16convierte la señal analógica a un entero de 16 bits. El valor se muestra y el bucle se pausa durante 200 milisegundos utilizandoutime.sleep_ms(200)para evitar lecturas rápidas consecutivas.while True: value = water_level_sensor.read_u16() # Leer y convertir el valor analógico a un entero de 16 bits print("AO:", value) # Mostrar el valor analógico utime.sleep_ms(200) # Esperar 200 milisegundos antes de la siguiente lectura