Arduino - Bomba con sensor de agua

En este tutorial aprenderemos a usar un Arduino para activar una bomba para drenar agua cuando sea detectada por un sensor de agua. En otras palabras, descubriremos cómo crear un sistema de drenaje automático utilizando un Arduino, un sensor de agua y una bomba.

Acerca del sensor de agua y de la bomba

Si no conoces el sensor de agua y la bomba (pinout, cómo funcionan, cómo programar...), aprende sobre ellos en los siguientes tutoriales:

Cómo funciona el sistema de drenaje automático

Arduino lee periódicamente el valor del sensor de agua, luego:

  • Si el valor es mayor que un umbral predefinido, Arduino enciende el relé para activar la bomba.
  • De lo contrario, Arduino apaga la bomba.

Diagrama de Cableado

Diagrama de cableado para bomba controlada por sensor de agua para Arduino

This image is created using Fritzing. Click to enlarge image

Código de Arduino

/* * Este código de Arduino fue desarrollado por es.newbiely.com * Este código de Arduino se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino/arduino-water-sensor-pump */ #define RELAY_PIN A0 // The Arduino pin that connects to the relay to control the pump #define POWER_PIN 7 // The Arduino pin that provides the power to the water sensor #define SIGNAL_PIN A5 // The Arduino pin that reads the value from the water sensor #define THRESHOLD 300 // The threshold for water detectiion void setup() { Serial.begin(9600); pinMode(RELAY_PIN, OUTPUT); // configure D2 pin as an OUTPUT pinMode(POWER_PIN, OUTPUT); // configure D7 pin as an OUTPUT digitalWrite(POWER_PIN, LOW); // turn the water sensor OFF digitalWrite(RELAY_PIN, LOW); // turn the pump OFF } void loop() { digitalWrite(POWER_PIN, HIGH); // turn the water sensor's power ON delay(10); // wait 10 milliseconds int value = analogRead(SIGNAL_PIN); // read the analog value from sensor digitalWrite(POWER_PIN, LOW); // turn the water sensor's power OFF if (value > THRESHOLD) { Serial.print("The water is detected"); digitalWrite(RELAY_PIN, HIGH); // turn the pump ON } else { digitalWrite(RELAY_PIN, LOW); // turn the pump OFF } delay(1000); // pause for 1 sec to avoid reading sensors frequently to prolong the sensor lifetime }

Pasos R\u00e1pidos

  • Conecta Arduino al PC mediante un cable USB
  • Abre el IDE de Arduino y selecciona la placa y el puerto correctos
  • Copia el código anterior y ábrelo con el IDE de Arduino
  • Haz clic en el botón Subir del IDE de Arduino para cargar el código al Arduino
Subir código al IDE de Arduino
  • Coloca el sensor de agua dentro del agua
  • Consulta el estado de la bomba

Explicación del código

¡Lee la explicación línea por línea en los comentarios del código fuente!

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!