A maioria dos sensores de temperatura entrega uma tensão que você precisa converter, calibrar e torcer para dar certo. O DS18B20 não: ele entrega o número já em graus Celsius, digital, pronto.

E faz mais: você pode pendurar vários sensores no mesmo fio e ler todos separadamente, porque cada um tem um endereço de fábrica único.

Neste guia você vai entender o protocolo 1-Wire, o resistor que todo mundo esquece e como montar uma rede de sensores.

💡 Salve este guia: o resistor de 4,7 kΩ é a causa número 1 de leitura −127 °C.

🌡️ O que é e por que é digital

O DS18B20 tem, dentro do encapsulamento TO-92, um sensor de temperatura, um conversor analógico-digital e uma pequena memória. Ele mede, converte e guarda o valor — o Arduino só pede o número pronto.

Isso muda tudo em relação a um NTC: sem divisor de tensão, sem tabela de conversão, sem erro por variação de alimentação. E o valor não se degrada com o comprimento do cabo.

CaracterísticaValor
Faixa de medição−55 °C a +125 °C
Precisão±0,5 °C entre −10 °C e +85 °C
Resolução9 a 12 bits (0,5 °C a 0,0625 °C)
Alimentação3,0 V a 5,5 V
Comunicação1-Wire (um fio de dados)

🔗 O protocolo 1-Wire

O nome já entrega: a comunicação inteira acontece em um único fio de dados, além do GND e do VCC. Esse fio é bidirecional — o Arduino manda o comando e o sensor responde pelo mesmo caminho.

Para isso funcionar, o fio precisa ficar em nível alto quando ninguém está falando. Quem garante isso é o resistor de pull-up.

⛔ Sem o resistor de 4,7 kΩ entre o pino de dados e o VCC, nada funciona. O sintoma clássico é a leitura travada em −127 °C. Muita gente perde horas antes de lembrar dele.

🔢 O endereço único de 64 bits

Cada DS18B20 sai de fábrica com um número de série de 64 bits gravado, diferente de todos os outros do mundo. É isso que permite pendurar vários no mesmo fio.

  1. O Arduino faz uma varredura e descobre todos os endereços presentes no barramento.
  2. Para ler um sensor específico, ele chama pelo endereço.
  3. Só aquele sensor responde; os outros ficam calados.
  4. Repete para cada endereço da lista.
🔎 Dica de montagem: anote qual endereço corresponde a qual posição física antes de instalar. Depois de tudo montado na parede, descobrir quem é quem dá trabalho.

💧 A versão à prova d'água

Além do TO-92 nu, existe a versão em cápsula de aço inox com cabo. É o mesmo chip, protegido — e é o que resolve os casos que mais aparecem: medir água de aquário, temperatura de piscina, líquido em processo, temperatura externa.

TO-92 (nu)
  • Mais barato
  • Vai direto na placa
  • Sem proteção
  • Ambiente seco e interno
Cápsula de aço + cabo
  • Selado, submersível
  • Cabo de 1 m ou mais
  • Aguenta líquido e tempo
  • Externo, aquário, caldeira

🧮 Exemplo prático: rede de 4 sensores

📖 Monitorando quatro ambientes

1) Ligação: os 4 sensores em paralelo — todos os VCC juntos, todos os GND juntos, todos os dados no mesmo pino.

2) Pull-up: um único resistor de 4,7 kΩ para toda a rede (não é um por sensor).

3) Varredura: o código lista os 4 endereços na inicialização.

4) Leitura: percorre a lista e lê um por um.

5) Cabo longo: acima de ~10 m, use par trançado e considere baixar o pull-up para 2,2 kΩ.

4 sensores · 1 pino do Arduino · 1 resistor de 4,7 kΩ

⏱️ Resolução x tempo de conversão

ResoluçãoPrecisão do passoTempo de leitura
9 bits0,5 °C~94 ms
10 bits0,25 °C~188 ms
11 bits0,125 °C~375 ms
12 bits0,0625 °C~750 ms

O padrão é 12 bits. Se o seu projeto precisa de leituras rápidas e 0,5 °C basta, baixar para 9 bits acelera bastante.

🎯 Onde usar

  • Aquário, chocadeira e estufa.
  • Monitoramento de temperatura ambiente em vários cômodos.
  • Controle de caldeira e aquecedor solar.
  • Registro de temperatura em processo industrial simples.

🛠️ Problemas comuns

SintomaCausa provávelSolução
Lê −127 °CSem pull-up ou fio soltoResistor de 4,7 kΩ entre dados e VCC
Lê 85 °C fixoValor padrão: não houve conversãoAguarde o tempo de conversão antes de ler
Só encontra 1 sensorEndereços não varridosFaça a varredura do barramento
Instável em cabo longoReflexão no barramentoPar trançado e pull-up menor (2,2 kΩ)
Leitura oscilandoAlimentação ruidosaCapacitor de 100 nF junto ao sensor
Não respondePinos trocadosConfira: GND, dados e VCC (o do meio é o dado)
🛒 Na Mamute tem o DS18B20 nas duas versões e o kit de resistores com o 4,7 kΩ que ele exige.

🚀 Conclusão

O DS18B20 é o sensor de temperatura mais confortável de usar: entrega grau Celsius pronto, aceita cabo longo e permite vários sensores num pino só.

Só não esqueça do resistor de 4,7 kΩ. Ele é a diferença entre um projeto que funciona de primeira e uma tarde inteira lendo −127.

Vai medir a temperatura de quê? Conta aí! 🦣⚡

Mamute Eletrônica · Componentes, Módulos e Robótica · Rua Vitória, 125 — Santa Efigênia/SP · mamuteeletronica.com.br

Para montar o que você acabou de ler

A versão TO-92 é para placa, e o resistor de 4,7 kΩ do pull-up sai do kit.