Go Down

Topic: ayuda activar relays y desactivar con hrario (Read 886 times) previous topic - next topic

7orres

Hola que tal aclaro que no se nada de arduino ,actualmente tengo un arduino mega2560 y una placa acon 8 relay .
lo que quiero hacer es que se active  el relay 1,2,3 a las 9 AM y se apague alas10AM y se sctive de nuevo alas 7PM y se desactive alas 9PM

y los relays 5,6,7 y 8 activarlos con un boton o interruptor manualmente y estos queden encendidon por 10,15 minutos o el tiempo conveniente estos ultimos son para controlar las luces de mi casa.
este es parte de un codigo de un companero en esta pagina,

#include <Wire.h>   
#include "RTClib.h" 
#include <OneWire.h> 
RTC_DS1307 RTC; // Crea el objeto RTC

void setup () 
{
Serial.begin(9600); // Establece la velocidad de datos del puerto serie
Wire.begin(); // Establece la velocidad de datos del bus I2C
RTC.begin();// Establece la velocidad de datos del RTC
//RTC.adjust(DateTime(__DATE__, __TIME__)); Solo lo habilitamos la primera vez para poner en hora el reloj
}

void loop () {
  int minute;
  int hour;
  int tiempo;
DateTime now = RTC.now(); // Obtiene la fecha y hora del RTC
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(' ');
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
Serial.print("Dia de la semana: ");
Serial.println(now.dayOfWeek(), DEC);

tiempo=(now.hour()*60)+now.minute(); // Para que sea un numero entero lo medimos en minutos

if (tiempo < 60) 
  { 
   tiempo=tiempo+1440; // para cuando sean las 12 de la noche (00 horas)
  } 
Serial.println();
Serial.print("Tiempo: ");
Serial.println(tiempo);
delay(1000); // La informaciĆ³n se actualiza cada 1 seg.
Luces (tiempo);

}


void Luces(int tiempo) 

///////////tiempos de progamacion////////// 
int PotLED; 
int InicioAmanecerLED=608; //10;00
int FinAmanecerLED=670; //11:00 // 
int InicioAnochecerLED=1110; //18:30// 
int FinAnochecerLED=1170; //7:30 PM// 
int MaxLED=255;  //Maximo que vamos a encender los LED sobre 255 

es te es para dimear automaticamente cada dia por ahora no quiero dimear pues estoy actualizando mi lampara led  casera y tengo  solo 4 leds conectados directamente  a mi fuente de 12v y por ahora se me hace mas conveniente dejar eso asi  y controlarlo con relevadores ,
y la otra funcion que quiero que hagan los demas relevadores es mantener encendida una luz durante 10 ,15 o el tiempo que  ponga para que se apague ,de ese ocodigo la verdad no tengo ni idea  esero que alguien me heche la mano se que es facil pero aun no entiendo la programacion de arduin
gracias
     

Go Up