#sensor de temperatura LM35
from machine import Pin, ADC
from machine import I2C
import utime
from pico_i2c_lcd import I2cLcd
i2c = I2C(id=0,scl=Pin(1),sda=Pin(0),freq=400000)
lcd = I2cLcd(i2c, 0x27, 2, 16)
# Configuracion del Pin ADC
Sensor_LM35 = ADC(2) #gp28 Entrada del sensor LM35.
Temp_Min = 37 # °C # Temperatura maxima de referencia
#para encender el led del relay
SetPoint = ADC(1)
Pot= ADC(1) #ADC(Pin(27)) Potenciometro fija la temperatura maxima de medición
#SetPoint = ADC(1); gp27 Entrada voltaje de ajuste del setpoint de temperatura (Pot 5 ó 10 kOhm).
SetPoint1 = ADC(0)
Pot= ADC(0) #ADC(Pin(26)) Potenciometro fija la temperatura maxima de medición
#SetPoint = ADC(1); gp27 Entrada voltaje de ajuste del setpoint de temperatura (Pot 5 ó 10 kOhm).
# Calculo de la temperatura con sensor LM35 y Potenciometro para seleccionar la Temp. Max
Conv = 3.3 / 65535
Conv1=80/3300 #Conv1=100/3300
# Configurando LEDs Relevador
LED = Pin(15, Pin.OUT)
Relay = Pin(16, Pin.OUT)
LED.value(0)
Relay.value(0)
# ciclo principal del programa del Sensor LM35
while True:
ValorPot=ADC.read_u16(SetPoint)
TempSP=(Conv * ValorPot)*1000
SetTemp=0 + TempSP*Conv1
ValorPot1=ADC1.read_u16(SetPoint)
TempSP1=(Conv * ValorPot1)*1000
SetTemp1=0 + TempSP1*Conv1
#Temp_Max=int(SetTemp)
#Valor_ADC = Sensor_LM35.read_u16() # Leer el valor del Pin ADC(2) en 16 Bits
#Temp= Valor_ADC
#Volt = (Valor_ADC * Conv)*1000 # Convierte el Valor ADC a Voltaje (Volts)
#TempMed = (Volt)/10 # Convierte el Voltaje a Temperatura(Celcius)
#TempMedS=int(TempMed)
print("Temp_Max: "+str(SetTemp)+"°C") #Imprime la temperatura
print("sensorLM35: "+str(SetTemp1)+"°C") #Imprime la temperatura
#print("Temp_Med: "+str(TempMedS)+"°C") #Imprime la temperatura
utime.sleep(1)
lcd.move_to(0,0)
lcd.putstr('T.Max=')
lcd.move_to(6,0)
lcd.putstr(str(SetTemp)+"°C")
lcd.move_to(0,1)
lcd.putstr('T.Med=')
lcd.move_to(6,1)
lcd.putstr(str(SetTemp1)+"°C")
#lcd.putstr(str(TempMedS)+"°C")
utime.sleep(1)
if Temp_Min <= SetTemp1 <= SetTemp:
Relay.value(1)
LED.value(1)
else:
Relay.value(0)
LED.value(0)
utime.sleep(1)
Sensor LM35
Pot Tem_Max