Nota

¡Hola! Bienvenido a la Comunidad de Entusiastas de SunFounder para Raspberry Pi, Arduino y ESP32 en Facebook. Sumérgete en el mundo de Raspberry Pi, Arduino y ESP32 junto a otros apasionados.

¿Por qué unirse?

  • Soporte de expertos: Resuelve problemas postventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo.

  • Aprende y comparte: Intercambia consejos y tutoriales para mejorar tus habilidades.

  • Preestrenos exclusivos: Obtén acceso anticipado a anuncios de nuevos productos y adelantos.

  • Descuentos especiales: Disfruta de descuentos exclusivos en nuestros productos más recientes.

  • Promociones y sorteos festivos: Participa en sorteos y promociones de temporada.

👉 ¿Listo para explorar y crear con nosotros? Haz clic en [Aquí] y únete hoy mismo.

2.6 Tanque de Agua Inteligente

En este proyecto, usaremos un módulo sensor de nivel de agua y un servomotor para simular un tanque de agua inteligente. El sensor de nivel de agua se fija dentro del tanque para medir el nivel de agua, y cuando el nivel está por debajo de un umbral, la válvula controlada por el servo se abrirá para dejar entrar agua.

Componentes Necesarios

Para este proyecto, necesitamos los siguientes componentes.

Un kit completo es conveniente, aquí tienes el enlace:

Nombre

COMPONENTES EN ESTE KIT

ENLACE

Kit Kepler

450+

Kepler Ultimate Kit

También puedes comprarlos por separado en los enlaces a continuación.

SN

COMPONENTE

CANTIDAD

ENLACE

1

Conociendo el Pico W

1

COMPRAR

2

Cable Micro USB

1

3

Protoboard

1

COMPRAR

4

Cables de Puente (Jumpers)

Varios

COMPRAR

5

Servo

1

COMPRAR

6

Módulo Sensor de Nivel de Agua

1

Conexión

pin_adc

Pico W tiene tres pines GPIO que pueden usar entrada analógica: GP26, GP27, GP28. Es decir, los canales analógicos 0, 1 y 2. Además, hay un cuarto canal analógico, que está conectado al sensor de temperatura integrado y no se explicará aquí.

water_tank0

  • La conexión S del sensor de nivel de agua se conecta a GP26 (A0), el pin + a VBUS, y el pin - a GND.

  • El cable naranja (señal) del servomotor se conecta a GP15, el cable rojo (alimentación) a VBUS, y el cable marrón (tierra) a GND.

Código

Nota

  • Puedes referirte a la imagen a continuación para escribir el código arrastrando y soltando.

  • Importa 2.6_water_tank.png desde la ruta kepler-kit-main\piper. Para obtener tutoriales detallados, consulta Importar el Código.

water_tank

Después de conectar el Pico W, haz clic en el botón Start y el código comenzará a ejecutarse. Cuando el nivel de agua es menor a 1/3 del sensor de nivel de agua, el servo gira a 180 grados simulando la apertura de la entrada de agua; cuando el nivel de agua es mayor a 1/3 del sensor, el servo gira a 0 grados para simular el cierre de la entrada.

¿Cómo Funciona?

water_tank1

Configura la velocidad de rotación del pin15 (servo) al 15%.

  • [servo pin() set speed to ()%]: Se usa para ajustar la velocidad de rotación del pin del servo, el rango es de 0%~100%.

water_tank2

Lee el valor del pin A0 y lo almacena en la variable [water_level].

  • [set (water_level) to]: Se usa para definir el valor de la variable; debes crear la variable desde la paleta Variables.

  • [read voltage from pin ()]: Se usa para leer el voltaje de los pines analógicos (A0~A2), el rango es de 0 ~ 3.3V.

water_tank3

Define el umbral de voltaje en 1. Cuando el voltaje del sensor de nivel de agua es inferior a 1, deja que el servo gire a la posición de 180°; de lo contrario, gira a la posición de 0°.

  • [servo pin () set angle to ()]: Configura el ángulo del pin del servo, el rango es de 0 ~ 180°.