from machine import Pin
from time import sleep
from dht import DHT22
import urequests
import network
dht_sensor = DHT22(Pin(14))
# Configurar pines para el LED RGB (ajusta los números de pin según tu hardware)
red_led = Pin(19, Pin.OUT)
green_led = Pin(2, Pin.OUT)
blue_led = Pin(15, Pin.OUT)
def set_rgb_color(red, green, blue):
red_led.value(red)
green_led.value(green)
blue_led.value(blue)
#configurar wifi
def connect_wifi():
WEBAPP_URL = "https://script.google.com/macros/s/AKfycbwO9m7jJ6tJMbRxvzPeQ_GVmZPafcMjNyq-IUhTLaEKo8FutH_0L71kMZbBhv-XyjHLjA/exec"
def send_to_sheets(temp, hum):
data = {
"temp": temp,
"hum" : hum
}
try:
response = urequests.post(WEBAPP_URL, json=data)
print("Respuesta:", response.text)
response.close()
except Exception as e:
print ("error enciado datos")
sta_if = network.WLAN(network.sta_if)
sta_if.activate(True)
sta_if.connect("Wokwi-GUEST", "")
while not sta_if.isconnected():
print(".", end="")
sleep(0.5)
print("wifi OK IP:", sta_if.ifconfig()[0])
def update_temperature_light(temp):
if temp > 30:
set_rgb_color(1, 0, 0)
elif 10 <= temp <= 29:
set_rgb_color(0, 1, 0)
else:
set_rgb_color(0, 0, 1)
while True:
connect_wifi()
try:
dht_sensor.measure()
temp = dht_sensor.temperature()
hum = dht_sensor.humidity()
update_temperature_light(temp)
# Imprimir en consola
print(f"Temperatura: {temp:.1f}°C")
print(f"Humedad: {hum:.1f}%")
print("--" * 20)
send_to_sheets(temp, hum)
except Exception as e:
print("Error al leer el sensor:", e)
# Apagar todos los LEDs en caso de error
set_rgb_color(0, 0, 0)
sleep(2)