hola a todos, hace un tiempo que estoy trabajando en un proyecto para un indoor, e avanzado bastante con muchas pruebas y errores pero e logrado que funcione
sin mas vueltas, tengo un problema con parte del temporizador de la luz, el problema es que no se como hacer para que sepa si se encuentra en la franja horaria de encendido o apagado (no se si entienden lo que quiero hacer ):o
en otras palabras quiero que se pregunte si es hora de prender o apagar y que se pregunte si esta en la franja horaria de prender o apagar
espero que entiendan mi planteo dejo el c贸digo para que lo vean y si quieren aportar mejoras ser谩n bienvenidas y probadas.
Ese c贸digo funcionar谩 solo cuando pases por la hora y minutos indicados pero basta con que la luz este cortada y tu sistema arranque 1 minuto despu茅s y no har谩 los cambios.
De modo que contempla esa situaci贸n con esto
convierte hora y minuto a minutos
Luego asigna la variable correspondiente pero seran enteros
int minOn, minOff, minActual,
// donde corresponda sigue esto
minOn = on_H*60+on_M;聽 // esto calcula en minutos tu hora ON
minOff = off_H*60+off_M;聽 // esto calcula en minutos tu hora O
minActual = now.hour()*60 + now.minute();
//------------- Temporizador Luz relay3 -----------------------------
聽 if((minActual >= minOn && minActual <= minOff){
聽 聽 聽 digitalWrite(relay3,HIGH); //enciende luz
聽 }
聽 else {
聽 聽 digitalWrite(relay3,LOW); //apaga luz
聽 }
el 煤nico detalle que esto lo har谩 cada vz que pase por estas opciones de modo que ser铆a bueno que de algun modo se haga solo una vez en cada caso.
En lo personal no me gustan que las cosas se hagan repetidamente. De todos modos si un pin esta en HIGH y lo vuelves a poner en HIGH que ocurre... nada. Idem con LOW.
Comparto lo del flag.