#MONITOREO DE CONDICIONES AMBIENTALES CON RASPBERRY PI Lot
from machine import ADC, Pin
import time
import math
#Configuración de pines
ntc = ADC(Pin(28)) #NTC en GP28 (ADC)
ldr = ADC(Pin(27)) #LDR en GP27 (ADC)
led = Pin(15, Pin.OUT) #LED en GP15
#Definición de umbrales
TEMP_UMBRAL = 30 # Temperatura definida en 30°C
LUZ_UMBRAL = 30000 # Luz definida en 30.000 lux
#Bucle utilizado para el monitoreo
while True:
#Lectura del NTC
valor_adc_ntc = ntc.read_u16()
voltaje_ntc = valor_adc_ntc * 3.3 / 65535 # Conversión de Valor NTC a voltaje
resistencia_ntc = 10000 * (3.3 / voltaje_ntc - 1) # Cálculo de la resistencia del NTC
#Calculo de temperatura
temperatura_c = 1 / (1 / (25 + 273.15) + (1 / 3950) * math.log(resistencia_ntc / 10000)) - 273.15
#Lectura del LDR
valor_adc_ldr = ldr.read_u16()
#Mostrar lecturas
print("Temperatura: {:.2f} °C, Luz: {}".format(temperatura_c, valor_adc_ldr))
#Control del LED (Encendido de alerta si se superan los umbrales)
if temperatura_c > TEMP_UMBRAL or valor_adc_ldr > LUZ_UMBRAL:
led.on() #Alerta Activa
else:
led.off() #Alerta Inactiva
time.sleep(1) # Espera antes de la siguiente lectura
LDR
NTC