import machine
import time
import dht
# Configuração dos equipamentos:
# Colocamos o sensor de temperatura do DHT22 no pino 15
dht_sensor = dht.DHT22(machine.Pin(15))
#colocamos o Relay no pino 4
relay = machine.Pin(4, machine.Pin.OUT)
#Colocamos os leds nos pinos 16,17,18
led_green = machine.Pin(16, machine.Pin.OUT)
led_yellow = machine.Pin(17, machine.Pin.OUT)
led_red = machine.Pin(18, machine.Pin.OUT)
# Temperatura limite para ligar o ventilador
TEMP_LIMITE = 30
#Função para alternar o led acesso de acordo com a temperatura
def atualizar_leds(temp):
if temp < 25:
led_green.on()
led_yellow.off()
led_red.off()
elif 25 <= temp < 30:
led_green.off()
led_yellow.on()
led_red.off()
else:
led_green.off()
led_yellow.off()
led_red.on()
while True:
try:
#Capturar as ações do ambiente
dht_sensor.measure()
#Armazenar a temperatura dentro de uma variável
temperatura = dht_sensor.temperature()
print('Temperatura: {}°C '.format(temperatura))
# Atualiza os LEDs conforme faixa de temperatura
atualizar_leds(temperatura)
# Aciona o ventilador (relé) se ultrapassar o limite
if temperatura >= TEMP_LIMITE:
relay.on() # Liga o ventilador
else:
relay.off() # Desliga o ventilador
print('Estado do relé:', 'Ligado' if relay.value() == 1 else 'Desligado')
except OSError as e:
print('Erro na leitura do sensor:', e)
time.sleep(2)