#include "Arduino.h"
#include "SoftwareSerial.h"
SoftwareSerial ConsoleOut(8, 9);
const float BETA = 3950;
int ledr = 13;
int ledv = 12;
int ledt = 11;
int buzzer = A1;
void setupSensors() {
pinMode(ledr, OUTPUT);
pinMode(ledv, OUTPUT);
pinMode(ledt, OUTPUT);
pinMode(buzzer, OUTPUT);
Serial.begin(9600);
}
void setup() {
setupSensors(); // Configura los sensores y actuadores
}
void loop() {
int valor = analogRead(A0);
Serial.print("Valor leído: ");
Serial.println(valor);
float grados = 1 / (log(1 / (1024. / valor - 1)) / BETA + 1.0 / 298.15) - 273.15;
Serial.print("Temperatura: ");
Serial.print(grados);
Serial.print(" ºC");
if (grados >= 30 && grados < 50) {
// Temperatura caliente
digitalWrite(ledr, HIGH);
digitalWrite(ledv, LOW);
digitalWrite(ledt, LOW);
Serial.println(" // ⚠️ ALERTA [Temperatura Caliente]");
tone(buzzer, 450, 500);
} else if (grados >= 20 && grados < 30) {
// Temperatura templada
digitalWrite(ledr, LOW);
digitalWrite(ledv, HIGH);
digitalWrite(ledt, LOW);
Serial.println(" // COOL [Temperatura Templada]");
noTone(buzzer);
} else if (grados < 20) {
// Temperatura muy fría
digitalWrite(ledr, LOW);
digitalWrite(ledv, LOW);
digitalWrite(ledt, HIGH);
Serial.println(" // FRÍO [Temperatura Muy Fría]");
noTone(buzzer);
}
delay(5000);
if (valor > 0) {
digitalWrite(ledt, LOW);
delay(250);
digitalWrite(ledt, HIGH);
} else {
digitalWrite(ledt, LOW);
Serial.println("ERROR [La información no es correcta]");
}
}
Loading
esp-01
esp-01