const float BETA = 3950; // el coeficiente beta del transmisor constante
int led0 = 12 ; //led rojo
int led1 = 4 ; //led verde
int led2 = 10 ; //led transparente
int buzzer = A2 ; //buzzer
void setup() { //la variable void setup se ejecuta solo al iniciar
Serial.begin(9600);//esta variable es la indicadora que conecta arduino con el ordenador a 9600 bits por sec
pinMode(led0, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(buzzer, OUTPUT);
}
void loop() { //la variable void loop hace que se repita en bucle
int analogValue = analogRead(A0);
float celsius = 1 / (log(1 / (1023. / analogValue - 1)) / BETA + 1.0 / 298.15) - 273.15;
//formula para pasar la temperatura de grados kelvin a grados celcius
Serial.print("Temperatura: "); //imprime en pantalla temperatura
Serial.print(celsius); //imprime en pantalla los numeros en celcius
Serial.println("℃");// imprime en la misma linea "ºC"
delay(1150);// lo imprime cada 1150 milisegundos
if ( celsius > 45) {
tone(buzzer,1024);//buzzer emite sonido de 750hz a la vez que el led esta encendido
digitalWrite(led0, HIGH); //led encendido
delay(50); //delay de 50 milisegundos
noTone(buzzer); //buzzer no emite sonido de a la vez que el led esta apagado
digitalWrite(led0, LOW); //led apagado
delay(50); //delay de 50 milisegundos
Serial.println ("⚠️🔥!!MAS DE 45ºC!!🔥⚠️"); //imprime por pantalla el siguiente texto
}
//la variable si, si la variable celcius supera los 30ºC que el diodo led parpadee y se imprima por pantalla un aviso
else {
Serial.println ("Temperatura ESTABLE");
digitalWrite(led1, HIGH);
digitalWrite(led0, LOW); //led apagado
} //la variable sino, si no supera los 30ºC el led esta apagado
if ( analogValue = analogRead(A0)) { //variable si, si no para que siempre que reciba informacion el NFC el led blanco parpadee
digitalWrite(led2, HIGH);//led encendido
delay(50); //delay de 50 milisegundos
digitalWrite(led2, LOW); //led apagado
}
else {
digitalWrite(led2, LOW);//led apagado
}
if (celsius < -24) {
Serial.println("¡¡¡Temperatura excesivamente BAJA!!!");
}
}