Funciona si la temperatura es mayor a 38° como hacer que se inicie si la temperatura es menor a 38° gracias
#include "max6675.h"
const byte thermoDO = 7;
const byte thermoCS = 6;
const byte thermoCLK = 5;
MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
const byte vccPin = 4;
const byte gndPin = 3;
const byte relePinA = 10;
const byte relePinB = 9;
unsigned long start, presento, leoTemprelePinA;
unsigned long debounce; // agrege esta variable o centencia para que no se apagara al inicio al aplicarla en loop no me copila el codigo tal vez la estoy aplicando en el lugar equibocado
bool flag = false;
float temprelePinA;
float temprelePinB;
void setup() {
Serial.begin(9600);
pinMode(vccPin, OUTPUT);
digitalWrite(vccPin, HIGH);
pinMode(gndPin, OUTPUT);
digitalWrite(gndPin, LOW);
pinMode(relePinA, OUTPUT);
pinMode(relePinB, OUTPUT);
Serial.println("flama 4");
delay(600);
digitalWrite(relePinB, LOW);
}
void loop() {
if (millis() - leoTemprelePinA > 500UL) {
temprelePinA = thermocouple.readCelsius();
leoTemprelePinA = millis();
}
if (millis() - presento > 500UL) {
Serial.print("C = " + String(temprelePinA));
Serial.println();
presento = millis(); //inicia enciende la flama relePinA
}
if ( temprelePinA > 70.00) { if (millis() - start > 500UL){
if (flag) {
digitalWrite(relePinA, HIGH); // apaga la flama al alcanzar los 70° grados c
flag = false;
start = millis();
}
if (millis() - start > 500UL) {
}
}
flag = true;
void releB(); //void de releB (ventilador) debe apagar ventilador al regresar la temperatura a los 38°
if (millis() - leoTemprelePinA > 500UL) {
temprelePinA = thermocouple.readCelsius(); //lee la temperatura
leoTemprelePinA = millis();
}
if (millis() - leoTemprelePinA >500UL) { //lee cada 500 millis segundos
// flag = false;
// start = millis(); // si activo esta centencia nunca apaga el ventilador relePinB no se si exista una centencia contraria a start
}
if (millis() - start > 500UL){ // espera para apagar el releB// si aumento estos millis para dar tiempo a que la temperatura supere los 38° ya no funciona
if ( temprelePinA < 38.00){ // apaga el releB al regresar la temperatura a 38° // pero se apaga al inicio si es menor a 38°
if (flag){
digitalWrite(relePinB, HIGH);// al restablecer apaga al inicio si es menos a 38°
}
// else // si agreo este else ya no apaga nunca y es logico
{
// digitalWrite(relePinB, LOW); // esto no funciona aqui
flag = true;
}
} // segun e visto estos corchetes se deben cerrar en su lugar despues de cada centencia no se si esto tenga algo que ver
} // toda via falta mucho por aprender
}
}
re editando codigo max 6675