"""Fazer o LED vermelho piscar quando a temperatura ultrapassar 40 °C, indicando uma condição crítica no sistema.
Objetivo: diferenciar visualmente alerta comum e alerta crítico.
Aplicação: sinalização local para superaquecimento em equipamentos ou ambientes monitorados."""
from machine import Pin, PWM
from time import sleep
import dht
sensor = dht.DHT22(Pin(15))
led_verde = Pin(18, Pin.OUT)
led_amarelo = Pin(19, Pin.OUT)
led_vermelho = Pin(21, Pin.OUT)
def desligar_leds():
led_verde.value(0)
led_amarelo.value(0)
led_vermelho.value(0)
print()
print("SISTEMA DE MONITORAMENTO CLIMÁTICO")
print()
while True:
try:
sensor.measure()
temperatura = float(input("Digite a temperatura: "))
#temperatura = sensor.temperature()
umidade = sensor.humidity()
desligar_leds()
# print("Ambiente:", ambiente)
print("Temperatura: {:.1f} °C".format(temperatura))
print("Umidade: {:.1f} %".format(umidade))
if temperatura > 40:
print("Situação: TEMPERATURA CRÍTICA!")
print("ALERTA: temperatura acima de 40°C!")
for i in range(5):
led_vermelho.value(1)
sleep(0.5)
led_vermelho.value(0)
sleep(0.5)
elif temperatura < 28:
led_verde.value(1)
print("Situação: NORMAL")
elif temperatura <= 40 :
led_amarelo.value(1)
print("Situação: ATENÇÃO")
else:
led_vermelho.value(1)
print("Situação: TEMPERATURA ELEVADA")
if umidade < 30:
print("ALERTA: umidade muito baixa!")
elif umidade > 80:
print("ALERTA: umidade muito alta!")
print()
except OSError as erro:
print("Erro na leitura do DHT22:", erro)
sleep(5)