Un sistema de riego automático con Arduino UNO, sensor de humedad, motobomba, relé, pantalla LCD y alimentación portátil. Esta versión de la web fue mejorada para la exposición con una estética más cinematográfica, interacción real y una simulación automática del funcionamiento.
El nombre y la imagen representan el cuidado de las plantas, el ahorro del agua y el uso de tecnología para resolver problemas reales.
Puedes mover el sensor manualmente o activar el modo demo para que el sistema simule una exposición real: la humedad sube y baja, Arduino toma decisiones, la LCD cambia y la motobomba se enciende automáticamente cuando la tierra está seca.
El sistema solo riega cuando detecta sequedad, evitando desperdicios y promoviendo el uso responsable del agua.
Integra electrónica, programación, sostenibilidad y resolución de problemas en un solo proyecto práctico.
Puede adaptarse a huertas, jardines, semilleros o cultivos pequeños, siendo útil más allá del aula.
Diseñar y presentar un sistema de riego automático que ayude al cuidado de las plantas mediante sensores, programación y uso responsable del agua.
Convertirse en un prototipo escolar mejorable para huertas, jardines y cultivos pequeños, incorporando en el futuro energía solar e internet de las cosas.
Automatizar el riego de una planta a partir de la medición de humedad del suelo, activando la motobomba solo cuando se detecta sequedad.
Aquí se resume la conexión del prototipo con una vista visual del Arduino y una lista exacta de los pines. La protoboard se usa como distribuidor de 5V y GND.
Se mantiene la imagen del Arduino real del proyecto para que, durante la exposición, se relacione lo que se ve en el plano con el montaje físico.
Detecta si la tierra está seca o húmeda.
Procesa la lectura y ejecuta la lógica.
Actúa como interruptor controlado.
Muestra humedad, estado y riego.
Este código usa la librería LiquidCrystal_PCF8574, que fue la que permitió mostrar correctamente caracteres en la pantalla LCD del montaje.
#include <Wire.h>
#include <LiquidCrystal_PCF8574.h>
LiquidCrystal_PCF8574 lcd(0x27);
const int sensorHumedad = A0;
const int releBomba = 7;
const int botonManual = 2;
int limiteSeco = 550;
unsigned long intervaloEntreRiegos = 30000; // Exposición: 30 segundos
unsigned long intervaloLectura = 2000;
unsigned long duracionRiego = 3000;
unsigned long tiempoAnteriorLectura = 0;
unsigned long tiempoUltimoRiego = 0;
bool primerRiegoAutomatico = true;
void setup() {
Serial.begin(9600);
Wire.begin();
pinMode(releBomba, OUTPUT);
pinMode(botonManual, INPUT_PULLUP);
digitalWrite(releBomba, HIGH);
lcd.begin(16, 2);
lcd.setBacklight(255);
lcd.display();
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("SISTEMA RIEGO");
lcd.setCursor(0, 1);
lcd.print("INICIANDO...");
delay(2000);
lcd.clear();
}
void loop() {
unsigned long tiempoActual = millis();
if (digitalRead(botonManual) == LOW) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("RIEGO MANUAL");
lcd.setCursor(0, 1);
lcd.print("BOMBA ACTIVA");
regar();
tiempoUltimoRiego = tiempoActual;
primerRiegoAutomatico = false;
delay(1000);
}
if (tiempoActual - tiempoAnteriorLectura >= intervaloLectura) {
tiempoAnteriorLectura = tiempoActual;
int humedad = analogRead(sensorHumedad);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("HUMEDAD:");
lcd.print(humedad);
if (humedad > limiteSeco) {
lcd.setCursor(0, 1);
lcd.print("ESTADO: SECO");
if (primerRiegoAutomatico || tiempoActual - tiempoUltimoRiego >= intervaloEntreRiegos) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("TIERRA SECA");
lcd.setCursor(0, 1);
lcd.print("REGANDO...");
regar();
tiempoUltimoRiego = tiempoActual;
primerRiegoAutomatico = false;
}
} else {
lcd.setCursor(0, 1);
lcd.print("ESTADO: HUMEDA");
}
}
}
void regar() {
digitalWrite(releBomba, LOW);
delay(duracionRiego);
digitalWrite(releBomba, HIGH);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("RIEGO");
lcd.setCursor(0, 1);
lcd.print("FINALIZADO");
delay(1200);
}
El proyecto funciona con un power bank conectado por USB al Arduino. Esto lo hace portátil, seguro y práctico para presentar en una feria o exposición.
Como mejora futura, puede usarse un panel solar USB de 5V para recargar el power bank y hacerlo más sostenible.