fix funcionamiento, condiciones on y off

This commit is contained in:
jp.av.dev 2021-07-07 16:01:19 -04:00
parent 1e5d3db97c
commit ad5b8fb1bf
2 changed files with 158 additions and 161 deletions

View File

@ -23,8 +23,8 @@ void setup() {
reloj.begin();
start=1;
estado_termo=0;
}
//reloj.adjust(DateTime(__DATE__, __TIME__));
void loop() {
if(start) {
@ -35,13 +35,11 @@ void loop() {
actualMillis = millis();
if ((unsigned long)(actualMillis - previoMillisLoop) >= intervalo_loop) {
fecha = reloj.now();
if(((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2)) &&
(estado_termo == 0)) {
if((((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2))) && (estado_termo==0)) {
termoON();
} else if(((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2)) &&
(estado_termo == 1)) {
} else if((((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2))) && (estado_termo==1)) {
termoOFF();
}
previoMillisLoop = millis();

View File

@ -11,7 +11,7 @@ unsigned long previoMillisLoop=0;
unsigned long actualMillis;
byte horaON=5;
byte horaOFF=7;
byte horaON2=14;
byte horaON2=16;
byte horaOFF2=18;
byte cont=0;
bool estado_termo;
@ -19,42 +19,40 @@ bool espera;
bool start;
void setup() {
myservo_X.attach(9);
Serial.begin(9600);
myservo_X.attach(9);
reloj.begin();
start=1;
estado_termo=0;
//reloj.adjust(DateTime(__DATE__, __TIME__));
//DateTime dt(2021, 7, 5, 17, 32, 0);
//reloj.adjust(dt);
DateTime dt(2021, 7, 5, 5, 32, 0);
reloj.adjust(dt);
}
//reloj.adjust(DateTime(__DATE__, __TIME__));
void loop() {
if(start) {
Serial.println("Inicio");
myservo_X.write(30);
start=0;
fecha=reloj.now();
printFecha();
}
actualMillis = millis();
if ((unsigned long)(actualMillis - previoMillisLoop) >= intervalo_loop) {
fecha = reloj.now();
if(((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2)) &&
(estado_termo == 0)) {
Serial.print("Cond. ON pre Encendido, estado_termo: ");
if((((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2))) && (estado_termo==0)) {
Serial.print("pre ON : ");
Serial.println((String)estado_termo);
termoON();
Serial.print("Cond. ON post Encendido, estado_termo: ");
Serial.print("post ON : ");
Serial.println((String)estado_termo);
} else if(((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2)) &&
(estado_termo == 1)) {
Serial.print("Cond. OFF pre Apagado, estado_termo: ");
} else if((((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2))) && (estado_termo==1)) {
Serial.print("pre OFF : ");
Serial.println((String)estado_termo);
termoOFF();
Serial.print("Cond. OFF post Apagado, estado_termo: ");
Serial.print("post OFF : ");
Serial.println((String)estado_termo);
}
previoMillisLoop = millis();
@ -116,6 +114,7 @@ void termoOFF() {
estado_termo=0;
}
//En caso de ser necesario mostrar hora, este codigo añade un 0 a los valores menores a 10
String getHora(char var) {
switch (var) {