Introducción
En esta página te enseñaremos a leer el sensor LM35 con Raspberry Pi Pico usando el lenguaje de programación MicroPython.
El sensor LM35DZ es un sensor de temperatura analógico muy popular y nos sirve de maravilla para explorar el funcionamiento del convertidor analógico a digital (ADC) de nuestra Raspberry Pi Pico.
Para sacarle el máximo provecho a tu microcontrolador no dejes de visitar nuestra página de tutoriales para Raspberry Pi Pico donde podrás encontrar muchos ejemplos y ejercicios de nivel básico.
Material
- Raspberry Pi Pico o Raspberry Pi Pico 2
- Sensor de temperatura LM35DZ
- Alambre para protoboard
- Protoboard de 400 puntos
Diagrama de conexión para sensor de temperatura LM35 con Raspberry Pi Pico
Para conectar el LM35DZ con Raspberry Pi Pico realizaremos las siguientes conexiones:
- VBUS al pin +VS del sensor LM35
- GP26 | ADC0 | I2C1 SDA al pin Vout del sensor LM35DZ
- GND al pin GND del sensor LM35
Las conexiones se ven de la siguiente forma en el protoboard:

Código para leer sensor LM35DZ con Raspberry Pi Pico
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | # GEEK FACTORY - Dale vuelo a tus proyectos # https://www.geekfactory.mx # # Ejemplo para leer un sensor de temperatura LM35DZ utilizando una # Raspberry Pi Pico y MicroPython. # import machine import time # Objeto para acceder al ADC donde está conectado el LM35DZ pin_adc = machine.ADC(0) def lm35_read_temperature(sensor_adc, vref = 3300, samples = 10): """ Función para leer un sensor de temperatura LM35DZ. :param sensor_adc: Objeto machine.ADC asociado al sensor. :param vref: Voltaje de referencia del ADC en milivolts. :param samples: Número de muestras para promediar. :return: Temperatura medida en grados centígrados. """ total = 0 SAMPLE_WAIT_TIME = 20 # Tomar varias mediciones del ADC for _ in range(samples): total += sensor_adc.read_u16() time.sleep_ms(SAMPLE_WAIT_TIME) # Calcular el promedio de las lecturas readings_average = total / samples # Convertir la lectura promedio a milivolts voltage_mv = (readings_average * vref) / 65535 # El LM35 entrega 10 mV por cada grado centígrado return voltage_mv / 10.0 # Ciclo principal del programa while True: # Llamar a la función para leer el sensor temperature = lm35_read_temperature(pin_adc) # Imprimir a la terminal print(f"Temperatura leida por LM35DZ: {temperature:.1f}") # Esperar un segundo entre lecturas para no saturar la pantalla time.sleep(1) |
Enlaces y lecturas recomendadas
Conclusión
- El sensor LM35 y su variante LM35DZ son componentes muy populares. En este tutorial pudimos ponerlos en marcha con la tarjeta de desarrollo Raspberry Pi Pico y el microcontrolador RP2040.
- Con el programa que realizamos podemos utilizar este sensor con tarjetas compatibles con MicroPython como la gama de tarjetas ESP32 y ESP8266.
- Aprendimos a conectar un sensor de temperatura analógico con la Raspberry Pi Pico.
- Realizamos una aplicación práctica del convertidor analógico a digital (ADC)
- Este programa sirve como práctica de algunas estructuras de control del lenguaje de programación Python, como las funciones, ciclos y condiciones.
- La medición de temperatura es un componente esencial de muchas aplicaciones, este código y diagrama quedan en nuestro arsenal para implementar proyectos más complejos.








