float BETA = 3950; //Iniciamos la variable BETA con el valor del termistor para que luego la equación funcione correctamente
int Led_Verde = 12; //Establecemos el PIN 5 de la placa al led verde
int Led_Transparente = 13; //Establecemos el PIN 7 de la placa al led rojo
void setup()
{
Serial.begin(9600); //Establecemos la comunicación serie para poder sacar mensajes por la consola
pinMode (Led_Verde, OUTPUT); //Establecemos el led en modo de salida (Output)
pinMode (Led_Transparente, OUTPUT); //Establecemos el led en modo de salida (Output)
}
void loop()
{
int sensorDeTemperatura = analogRead(A0); // //Establecemos el PIN A0 de la placa al sensor de temperatura NTC
float temperaturaEnCelsius = 1 / (log(1 / (1023. / sensorDeTemperatura - 1))/BETA + 1.0/298.15) - 273.15; //Pasamos el valor decimal del sensor NTC a grados Celsius
float temperaturaRedondeada = round(temperaturaEnCelsius * 10) / 10.0; //Redondeamos la temperatura en Celsius a un único decimal
if(sensorDeTemperatura > -25)
{
digitalWrite(Led_Transparente, HIGH); //Led verde encendido
}
if(temperaturaRedondeada <= 30)
{
Serial.print("Temperatura: ✅ -> "); //Mensaje por consola de temperatura correcta
Serial.print(temperaturaRedondeada, 1); //Mensaje por consola de temperatura correcta
Serial.println(" °C"); //Mensaje por consola de temperatura correcta
digitalWrite(Led_Verde, HIGH); //Led verde encendido
}
if(temperaturaRedondeada > 30) //En caso de que la temperatura sea superior a 30 y inferior a 60, se encenderá el led amarillo
{
Serial.print("Temperatura: ⚠️ -> "); //Mensaje por consola de temperatura peligrosa
Serial.print(temperaturaRedondeada, 1); //Mensaje por consola de temperatura peligrosa
Serial.println(" °C"); //Mensaje por consola de temperatura peligrosa
digitalWrite(Led_Verde, LOW); //Led verde apagado
}
delay(1000); //1 segundo de espera
}