5.9 KiB
Medir la temperatura - Raspberry Pi
En esta parte de la lección, agregarás un sensor de temperatura a tu Raspberry Pi.
Hardware
El sensor que usarás es un sensor de humedad y temperatura DHT11, que combina 2 sensores en un solo paquete. Este sensor es bastante popular, con varios modelos comerciales que combinan temperatura, humedad y, a veces, presión atmosférica. El componente del sensor de temperatura es un termistor de coeficiente de temperatura negativo (NTC), un tipo de termistor cuya resistencia disminuye a medida que aumenta la temperatura.
Este es un sensor digital, por lo que tiene un ADC integrado que genera una señal digital con los datos de temperatura y humedad que el microcontrolador puede leer.
Conectar el sensor de temperatura
El sensor de temperatura Grove se puede conectar a la Raspberry Pi.
Tarea
Conecta el sensor de temperatura.
-
Inserta un extremo de un cable Grove en el conector del sensor de humedad y temperatura. Solo encajará de una manera.
-
Con la Raspberry Pi apagada, conecta el otro extremo del cable Grove al conector digital marcado como D5 en el Grove Base Hat conectado a la Pi. Este conector es el segundo desde la izquierda, en la fila de conectores junto a los pines GPIO.
Programar el sensor de temperatura
Ahora se puede programar el dispositivo para usar el sensor de temperatura conectado.
Tarea
Programa el dispositivo.
-
Enciende la Raspberry Pi y espera a que inicie.
-
Abre VS Code, ya sea directamente en la Pi o conectándote a través de la extensión Remote SSH.
⚠️ Puedes consultar las instrucciones para configurar y abrir VS Code en la lección 1 si es necesario.
-
Desde el terminal, crea una nueva carpeta en el directorio de inicio del usuario
pi
llamadatemperature-sensor
. Crea un archivo en esta carpeta llamadoapp.py
:mkdir temperature-sensor cd temperature-sensor touch app.py
-
Abre esta carpeta en VS Code.
-
Para usar el sensor de temperatura y humedad, es necesario instalar un paquete adicional de Pip. Desde el terminal en VS Code, ejecuta el siguiente comando para instalar este paquete en la Pi:
pip3 install seeed-python-dht
-
Agrega el siguiente código al archivo
app.py
para importar las bibliotecas necesarias:import time from seeed_dht import DHT
La instrucción
from seeed_dht import DHT
importa la claseDHT
para interactuar con un sensor de temperatura Grove desde el móduloseeed_dht
. -
Agrega el siguiente código después del anterior para crear una instancia de la clase que gestiona el sensor de temperatura:
sensor = DHT("11", 5)
Esto declara una instancia de la clase
DHT
que gestiona el sensor de Humedad y Temperatura Digital. El primer parámetro indica que el sensor utilizado es el DHT11 (la biblioteca que estás usando admite otras variantes de este sensor). El segundo parámetro indica que el sensor está conectado al puerto digitalD5
en el Grove Base Hat.✅ Recuerda, todos los conectores tienen números de pines únicos. Los pines 0, 2, 4 y 6 son pines analógicos, mientras que los pines 5, 16, 18, 22, 24 y 26 son pines digitales.
-
Agrega un bucle infinito después del código anterior para consultar el valor del sensor de temperatura y mostrarlo en la consola:
while True: _, temp = sensor.read() print(f'Temperature {temp}°C')
La llamada a
sensor.read()
devuelve una tupla con la humedad y la temperatura. Solo necesitas el valor de la temperatura, por lo que se ignora la humedad. El valor de la temperatura se imprime en la consola. -
Agrega una pequeña pausa de diez segundos al final del
loop
, ya que no es necesario verificar los niveles de temperatura continuamente. Una pausa reduce el consumo de energía del dispositivo.time.sleep(10)
-
Desde el terminal de VS Code, ejecuta lo siguiente para ejecutar tu aplicación en Python:
python3 app.py
Deberías ver los valores de temperatura en la consola. Usa algo para calentar el sensor, como presionar tu pulgar sobre él o usar un ventilador, para observar cómo cambian los valores:
pi@raspberrypi:~/temperature-sensor $ python3 app.py Temperature 26°C Temperature 26°C Temperature 28°C Temperature 30°C Temperature 32°C
💁 Puedes encontrar este código en la carpeta code-temperature/pi.
😀 ¡Tu programa del sensor de temperatura fue un éxito!
Descargo de responsabilidad:
Este documento ha sido traducido utilizando el servicio de traducción automática Co-op Translator. Aunque nos esforzamos por garantizar la precisión, tenga en cuenta que las traducciones automatizadas pueden contener errores o imprecisiones. El documento original en su idioma nativo debe considerarse como la fuente autorizada. Para información crítica, se recomienda una traducción profesional realizada por humanos. No nos hacemos responsables de malentendidos o interpretaciones erróneas que puedan surgir del uso de esta traducción.