fix funcionamiento, condiciones on y off
This commit is contained in:
parent
1e5d3db97c
commit
ad5b8fb1bf
@ -9,8 +9,8 @@ unsigned long intervalo_loop=5000;
|
|||||||
unsigned long previoMillisTermo=0;
|
unsigned long previoMillisTermo=0;
|
||||||
unsigned long previoMillisLoop=0;
|
unsigned long previoMillisLoop=0;
|
||||||
unsigned long actualMillis;
|
unsigned long actualMillis;
|
||||||
byte horaON = 5;
|
byte horaON=5;
|
||||||
byte horaOFF = 7;
|
byte horaOFF=7;
|
||||||
byte horaON2=16;
|
byte horaON2=16;
|
||||||
byte horaOFF2=18;
|
byte horaOFF2=18;
|
||||||
byte cont=0;
|
byte cont=0;
|
||||||
@ -19,86 +19,84 @@ bool espera;
|
|||||||
bool start;
|
bool start;
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
myservo_X.attach(9);
|
myservo_X.attach(9);
|
||||||
reloj.begin();
|
reloj.begin();
|
||||||
start=1;
|
start=1;
|
||||||
estado_termo = 0;
|
estado_termo=0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
//reloj.adjust(DateTime(__DATE__, __TIME__));
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
if(start) {
|
if(start) {
|
||||||
myservo_X.write(30);
|
myservo_X.write(30);
|
||||||
start=0;
|
start=0;
|
||||||
fecha = reloj.now();
|
fecha=reloj.now();
|
||||||
}
|
}
|
||||||
actualMillis = millis();
|
actualMillis = millis();
|
||||||
if ((unsigned long)(actualMillis - previoMillisLoop) >= intervalo_loop) {
|
if ((unsigned long)(actualMillis - previoMillisLoop) >= intervalo_loop) {
|
||||||
fecha = reloj.now();
|
fecha = reloj.now();
|
||||||
if(((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
|
if((((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
|
||||||
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2)) &&
|
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2))) && (estado_termo==0)) {
|
||||||
(estado_termo == 0)) {
|
termoON();
|
||||||
termoON();
|
} else if((((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
|
||||||
} else if(((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
|
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2))) && (estado_termo==1)) {
|
||||||
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2)) &&
|
termoOFF();
|
||||||
(estado_termo == 1)) {
|
}
|
||||||
termoOFF();
|
previoMillisLoop = millis();
|
||||||
}
|
}
|
||||||
previoMillisLoop = millis();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Secuencias de encendido y apagado de Caldera
|
// Secuencias de encendido y apagado de Caldera
|
||||||
void termoON() {
|
void termoON() {
|
||||||
myservo_X.write(120);
|
myservo_X.write(120);
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont = 0;
|
cont=0;
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
do{
|
do{
|
||||||
actualMillis = millis();
|
actualMillis=millis();
|
||||||
if(espera == 0) {
|
if(espera==0) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(110);
|
myservo_X.write(110);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 1;
|
espera=1;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(espera == 1) {
|
if(espera==1) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(120);
|
myservo_X.write(120);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (cont < 4);
|
} while(cont<4);
|
||||||
estado_termo = 1;
|
estado_termo=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void termoOFF() {
|
void termoOFF() {
|
||||||
myservo_X.write(45);
|
myservo_X.write(45);
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont = 0;
|
cont=0;
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
do{
|
do{
|
||||||
actualMillis = millis();
|
actualMillis=millis();
|
||||||
if(espera == 0) {
|
if(espera==0) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(62);
|
myservo_X.write(62);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 1;
|
espera=1;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(espera == 1) {
|
if(espera==1) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(45);
|
myservo_X.write(45);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (cont < 4);
|
} while (cont<4);
|
||||||
estado_termo = 0;
|
estado_termo=0;
|
||||||
}
|
}
|
||||||
|
@ -9,9 +9,9 @@ unsigned long intervalo_loop=5000;
|
|||||||
unsigned long previoMillisTermo=0;
|
unsigned long previoMillisTermo=0;
|
||||||
unsigned long previoMillisLoop=0;
|
unsigned long previoMillisLoop=0;
|
||||||
unsigned long actualMillis;
|
unsigned long actualMillis;
|
||||||
byte horaON = 5;
|
byte horaON=5;
|
||||||
byte horaOFF = 7;
|
byte horaOFF=7;
|
||||||
byte horaON2=14;
|
byte horaON2=16;
|
||||||
byte horaOFF2=18;
|
byte horaOFF2=18;
|
||||||
byte cont=0;
|
byte cont=0;
|
||||||
bool estado_termo;
|
bool estado_termo;
|
||||||
@ -19,103 +19,102 @@ bool espera;
|
|||||||
bool start;
|
bool start;
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
myservo_X.attach(9);
|
Serial.begin(9600);
|
||||||
Serial.begin(9600);
|
myservo_X.attach(9);
|
||||||
reloj.begin();
|
reloj.begin();
|
||||||
start=1;
|
start=1;
|
||||||
estado_termo = 0;
|
estado_termo=0;
|
||||||
//reloj.adjust(DateTime(__DATE__, __TIME__));
|
DateTime dt(2021, 7, 5, 5, 32, 0);
|
||||||
//DateTime dt(2021, 7, 5, 17, 32, 0);
|
reloj.adjust(dt);
|
||||||
//reloj.adjust(dt);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//reloj.adjust(DateTime(__DATE__, __TIME__));
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
if(start) {
|
if(start) {
|
||||||
myservo_X.write(30);
|
Serial.println("Inicio");
|
||||||
start=0;
|
myservo_X.write(30);
|
||||||
fecha = reloj.now();
|
start=0;
|
||||||
printFecha();
|
fecha=reloj.now();
|
||||||
}
|
}
|
||||||
actualMillis = millis();
|
actualMillis = millis();
|
||||||
if ((unsigned long)(actualMillis - previoMillisLoop) >= intervalo_loop) {
|
if ((unsigned long)(actualMillis - previoMillisLoop) >= intervalo_loop) {
|
||||||
fecha = reloj.now();
|
fecha = reloj.now();
|
||||||
if(((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
|
if((((fecha.hour() >= horaON) && (fecha.hour() < horaOFF)) ||
|
||||||
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2)) &&
|
((fecha.hour() >= horaON2) && (fecha.hour() < horaOFF2))) && (estado_termo==0)) {
|
||||||
(estado_termo == 0)) {
|
Serial.print("pre ON : ");
|
||||||
Serial.print("Cond. ON pre Encendido, estado_termo: ");
|
Serial.println((String)estado_termo);
|
||||||
Serial.println((String)estado_termo);
|
termoON();
|
||||||
termoON();
|
Serial.print("post ON : ");
|
||||||
Serial.print("Cond. ON post Encendido, estado_termo: ");
|
Serial.println((String)estado_termo);
|
||||||
Serial.println((String)estado_termo);
|
} else if((((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
|
||||||
} else if(((fecha.hour() < horaON) || (fecha.hour() >= horaOFF)) &&
|
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2))) && (estado_termo==1)) {
|
||||||
((fecha.hour() < horaON2) || (fecha.hour() >= horaOFF2)) &&
|
Serial.print("pre OFF : ");
|
||||||
(estado_termo == 1)) {
|
Serial.println((String)estado_termo);
|
||||||
Serial.print("Cond. OFF pre Apagado, estado_termo: ");
|
termoOFF();
|
||||||
Serial.println((String)estado_termo);
|
Serial.print("post OFF : ");
|
||||||
termoOFF();
|
Serial.println((String)estado_termo);
|
||||||
Serial.print("Cond. OFF post Apagado, estado_termo: ");
|
}
|
||||||
Serial.println((String)estado_termo);
|
previoMillisLoop = millis();
|
||||||
}
|
}
|
||||||
previoMillisLoop = millis();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Secuencias de encendido y apagado de Caldera
|
// Secuencias de encendido y apagado de Caldera
|
||||||
void termoON() {
|
void termoON() {
|
||||||
myservo_X.write(120);
|
myservo_X.write(120);
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont = 0;
|
cont=0;
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
do{
|
do{
|
||||||
actualMillis = millis();
|
actualMillis=millis();
|
||||||
if(espera == 0) {
|
if(espera==0) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(110);
|
myservo_X.write(110);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 1;
|
espera=1;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(espera == 1) {
|
if(espera==1) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(120);
|
myservo_X.write(120);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (cont < 4);
|
} while(cont<4);
|
||||||
estado_termo = 1;
|
estado_termo=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void termoOFF() {
|
void termoOFF() {
|
||||||
myservo_X.write(45);
|
myservo_X.write(45);
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont = 0;
|
cont=0;
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
do{
|
do{
|
||||||
actualMillis = millis();
|
actualMillis=millis();
|
||||||
if(espera == 0) {
|
if(espera==0) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(62);
|
myservo_X.write(62);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 1;
|
espera=1;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(espera == 1) {
|
if(espera==1) {
|
||||||
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
if ((unsigned long)(actualMillis - previoMillisTermo) >= 500) {
|
||||||
myservo_X.write(45);
|
myservo_X.write(45);
|
||||||
previoMillisTermo = millis();
|
previoMillisTermo=millis();
|
||||||
espera = 0;
|
espera=0;
|
||||||
cont++;
|
cont++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (cont < 4);
|
} while (cont<4);
|
||||||
estado_termo = 0;
|
estado_termo=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//En caso de ser necesario mostrar hora, este codigo añade un 0 a los valores menores a 10
|
//En caso de ser necesario mostrar hora, este codigo añade un 0 a los valores menores a 10
|
||||||
String getHora(char var) {
|
String getHora(char var) {
|
||||||
switch (var) {
|
switch (var) {
|
||||||
|
Loading…
Reference in New Issue
Block a user