Hoy les traigo un sistema de regadío automático, solamente tenemos que conectar un relé al ping número 12 para poder activar y desactivar nuestra bomba de agua, en este proyecto no necesitaremos el reloj RTC ya que nuestro arduino hará de reloj, lo malo es que cuando arduino pierda la tensión al volver empezara de la fecha estipulada.
Tendremos que descargar las siguientes librerías TimeAlarms y colocarla en la carpeta de librerías de arduino.
Código
/*
CREADO POR SERGIO 2016
SERVERCANARY.SYTES.NET
*/
#include <Time.h>
#include <TimeAlarms.h>
void setup()
{
pinMode(12, OUTPUT);
Serial.begin(9600);
setTime(20,59,50,28,11,16); // Establece la fecha a Lunes 20:59:50am 28 11 2016
// crear la alarma
Alarm.alarmRepeat(21,0,0, MorningAlarm); // 9:00am Todos los dias
Alarm.alarmRepeat(21,5,0,EveningAlarm); // 9:05pm Todos los dias
}
void loop(){
digitalClockDisplay();
Alarm.delay(1000); // Espera 1 segundo
}
// funciones de la alarma:
void MorningAlarm(){
Serial.println("- Regadio Encendido -");
digitalWrite(12, HIGH);
}
void EveningAlarm(){
Serial.println("- Regadio Apagado -");
digitalWrite(12, LOW);
}
void digitalClockDisplay()
{
// digital clock display of the time
Serial.print(hour());
printDigits(minute());
printDigits(second());
Serial.println();
}
void printDigits(int digits)
{
Serial.print(":");
if(digits < 10)
Serial.print('0');
Serial.print(digits);
}