Como Ler Temperatura com DS18B20 no Raspberry Pi 2
Bem-vindo! Este guia mostra como conectar um sensor digital de temperatura DS18B20 a um Raspberry Pi 2 e ler a temperatura ambiente com precisão.
O que Você Vai Precisar
- Sensor DS18B20 à prova d'água (compre online)
- Resistor pull-up de 4,7 kΩ (amarelo-violeta-vermelho-dourado)
- Jumpers
- Raspberry Pi 2 (qualquer modelo com GPIO)
Passo 1 – Fiação do Sensor
O DS18B20 usa interface 1-Wire. Conecte da seguinte forma:
- Fio vermelho (VDD) → trilho 3,3 V no Pi
- Fio preto (GND) → trilho terra no Pi
- Fio amarelo (DQ) → GPIO 4 (pino físico 7)
Coloque o resistor de 4,7 kΩ entre a linha de 3,3 V e a linha DQ para atuar como pull-up. A extremidade "3,3 V" do resistor deve tocar o lado vermelho (VDD).
Passo 2 – Habilite a Interface 1-Wire
1. Edite o arquivo de configuração de boot:
sudo nano /boot/config.txt
2. Adicione ou descomente a linha:
dtoverlay=w1-gpio
3. Salve e saia, então reinicie:
sudo reboot
Passo 3 – Carregue Módulos do Kernel
Após o Pi reiniciar, carregue os drivers 1-Wire:
sudo modprobe w1-gpio sudo modprobe w1_therm
Passo 4 – Verifique se o Sensor foi Detectado
Verifique a árvore de dispositivos para o ID do sensor:
ls -l /sys/bus/w1/devices/
Você deve ver uma pasta começando com 28-, ex: 28-000006dfa76c.
Passo 5 – Leia a Temperatura
Cada sensor expõe seus dados através de w1_slave. Visualize com:
cat /sys/bus/w1/devices/28-000006dfa76c/w1_slave
A saída contém duas linhas; a segunda linha termina com t=XXXXX, onde XXXXX é a temperatura em milésimos de grau Celsius. Por exemplo, t=23450 equivale a 23,450 °C.
Opcional – Parse o Valor com Script
Aqui está um snippet rápido em Python para converter a leitura bruta em °C:
#!/usr/bin/env python3 import time, glob sensor = glob.glob('/sys/bus/w1/devices/28-*/w1_slave')[0] while True: with open(sensor, 'r') as f: lines = f.readlines() if lines[0].strip().endswith('YES'): temp_raw = lines[1].split('t=')[1] temp_c = float(temp_raw) / 1000.0 print(f"Temperature: {temp_c:.3f} °C") else: print("Reading error") time.sleep(2)
Salve como temp_read.py, torne executável e execute para obter atualizações de temperatura ao vivo.
Seguindo estes passos, você terá um monitor de temperatura confiável rodando no seu Raspberry Pi 2.
Para insights mais profundos, veja o guia DS18B20 da Adafruit.
Processo de manufatura
- Sistema Integrado de Controle de Acesso com QR, RFID e Verificação de Temperatura
- Construa um Registrador de Temperatura com Raspberry Pi e Sensor I2C de $5
- Perfilamento de Temperatura Preciso no Raspberry Pi com Python, SQLite e LabVIEW
- Conecte Múltiplos Sensores DS18B20 1-Wire ao Raspberry Pi para Monitoramento Preciso de Temperatura
- Monitor de Temperatura e Umidade em Rede com Raspberry Pi – Guia DIY de Configuração
- Monitoramento Profissional de Temperatura com Raspberry Pi e DS18B20
- Medição de Temperatura no Raspberry Pi com Sensores Maxim 1‑Wire e Bridge I2C DS2482
- Construa um Sensor de Temperatura Remoto com Raspberry Pi e Python – Guia Passo a Passo
- Monitoramento Contínuo de Temperatura e Umidade no Raspberry Pi com EzTemp
- Monitoramento Preciso de Temperatura em Closet de Servidores com Raspberry Pi