Arduino – Medindo a Temperatura com o Sensor DS18B20

Arduino – Medindo a Temperatura com o Sensor DS18B20

Powered by Rock Convert

Nesta prática você vai aprender a utilizar o Sensor de Temperatura DS18B20 do tipo sonda em conjunto com o Arduino e mostrar em um Display LCD 16X2 o valor de temperatura obtido.

sensor_de_temperatura_ds18b20O Sensor de Temperatura DS18B20 do tipo sonda é um item comumente utilizado em projetos que envolva medir temperatura ambiente ou de recipientes com líquido. Este sensor possui alta precisão em suas medições e é revestido com material impermeável, tendo sua ponta encapsulada em aço inoxidável.

Abaixo está a lista dos itens necessários para esta prática, e mais informações sobre cada um deles:

Arduino Uno  R3 com Cabo USB A/B
Cabo Jumper
Display LCD 16×2
Protoboard

Resistor de 4,7K
Sensor de Temperatura DS18B20 – Prova D’água do Tipo Sonda

Na imagem abaixo podemos observar a identificação dos fios do Sensor de Temperatura DS18B20:

identificação dos fios do sensor ds18b20

Abaixo está o esquema de ligação para esta prática:

esquema de ligação do sensor ds18b20 com o display lcd

Um detalhe importante para o funcionamento desta prática é a ligação do resistor de 4,7K (Pull Up) junto ao fio de dados do Sensor de Temperatura DS18B20. O resistor de Pull Up garante que a leitura do sensor no pino digital não irá ficar flutuando e vai se manter estabilizada. Sem a utilização deste resistor, o sensor não funcionará corretamente.

Feito o esquema de ligação, será necessário instalar três biblioteca na IDE do Arduino para em seguida carregar o código na placa.

Faça o download da biblioteca OneWireDallas e LiquidCrystal para em seguida instalar ambas na IDE do Arduino.

Se você não sabe como fazer a instalação de bibliotecas na IDE, acesse o link abaixo e em seguida retorne para continuar:

Arduino – Importando bibliotecas para a IDE

O código para testes está abaixo, basta copiar o mesmo, colar na IDE, salvar e carregar:

No vídeo abaixo você pode ver o resultado final desta prática:

Pra quem necessita de um sensor de temperatura com alta precisão, o DS18B20 é uma ótima opção.

Gostou desta prática? Então deixa seu comentário, dúvida ou sugestão aí embaixo!

Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop

Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.

Obrigada e até a próxima!

Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.



Postagem anterior:
Próxima postagem:
Postagem feita por

Colaboradora do Blog MasterWalker Shop, graduada em Engenharia da Computação pela UNIPAC. Sou apaixonada por tecnologia, fã de super-heróis e um bom rock.

Existem 21 comentários para esta postagem
  1. Flavio às 11:34

    Parabens funcionou perfeitamente com o meu adquirido com vcs!!

    Queria acender um led verde quando a temperatura for inferior a 0 graus! Não estou conseguindo! Pode me ajudar?

    • Euler Oliveira às 12:57

      Olá Fávio.

      Que bom que o tutorial foi útil pra você.

      Para acender um LED sempre que a temperatura for menor que 0ºC, basta utilizar o trecho de código abaixo dentro do void loop:

      Lembre-se de declarar a variável pinoLed no inicio do seu código e atribuir um pino digital pra ele.

      Abraço.

    • João Paulo às 17:39

      Fiz do jeito como está aí no código, porém não pegou nem nada. Não apareceu nada na tela. O que poderia ser. O sensor tá pegando. Já fiz o teste. As conexões também. A lcd, comprei um nova. Ajude – me

    • Euler Oliveira às 06:52

      Olá Mateus.

      O código abaixo compila, mas não cheguei a testar na prática. Acredito que funcione para o que precisa.

      Fiz apenas para usar 1 canal do módulo relé. Para utilizar os outros 7 canais, basta fazer as declarações de pinos e replicar as condições ‘if’ dentro do código. Além disso, fiz o código considerando que vai utilizar o contato NC (normalmente fechado) do módulo relé.

      Basta ler os comentários para entender o que cada linha está fazendo e qual pino digital foi definido para uso de um dos canais do módulo relé. Na linha 24 você pode fazer a mudança do valor de temperatura para o valor que for melhor para seu caso:

  2. Golbery às 18:55

    Ola tudo bem….

    Montei aqui e deu tudo certo, apareceu a leitura no lcd, porem esta acusando somente negativo, você teria uma noção do que possa ter feito de errado. (Usei exaltamento o mesmo código)

  3. Edvandro às 22:28

    Olá, tem como utilizar varios sensores por exemplo 4 unidades DS18B20 para medir temperaturas de ambientes diferentes e mostrar em um unico LCD? Sei que posso usar todos em uma porta mas creio que mede a media de todos juntos…

    • Euler Oliveira às 15:07

      Olá Edvandro.

      Se deseja apresentar os valores de temperatura em um único display, o ideal é usar um display maior (20X4, por exemplo), pois no 16X2 não vai caber todas as informações.

  4. Wellington às 10:03

    Bom dia,
    Consegui ligar o sensor de temperatura, só que estou utilizando um cooler para resfriar o ambiente então eu seto 30º e aqueço o sensor até atingir a temperatura e nisto já liga o cooler. Mas seto a temperatura mínima 28º para que o cooler desliga, mas quando atinge a temperatura 29,9° já desliga o cooler. Poderia me ajudar!
    Grato

  5. Bruno às 17:11

    Boa tarde.

    Estou tentando acionar rele pela internet porém não vai de jeito nenhum, consigo acionar um led mas um rele não! :@
    Sabe me dizer se é porque o USB não fornece corrente o suficiente para acionar o rele?

    • Euler Oliveira às 21:19

      Olá Bruno.

      Poderia fornecer o código que está utilizando e mostrar o esquema de ligação que seguiu?

      Com estas informações fica mais fácil tentar te auxiliar.

    • Euler Oliveira às 15:52

      Olá Júnior.

      Ainda não tenho nenhuma implementação utilizando dois DS18B20, logo, não consigo te dizer ao certo quais mudanças seriam necessárias.

  6. marcelo crovador às 18:52

    Eu quero esse projeto mais com uma com sensor de temperatura é uma saída com rele para ligar um motor ventilador com voltagem de 110v ou 220v. Como fazer esse projeto , vcs me ensinao como fazer?

  7. Keven Brito às 15:00

    Olá, gostaria de saber se para obter a leitura de vários DS18B20, colocando um sensor em cada porta do arduino, fazendo o lcd me mostrar cada temperatura individualmente, seria apenas ajustando o programa? Tipo setando cada porta de leitura, para que um por um seja mostrado no LCD. Saberiam me informar se isto é possível?

  8. davidson fellipe pena fellipe às 17:50

    ola muito bom o tópico, eu queria saber se teria como eu setar alguns valores de temperatura e criar uma condição, exemplo: a temperatura medida no sensor é de 25 graus, quero criar um condição de set, tipo se a temperatura estiver acima da temperatura de set por exemplo liga um ventilador ou se estiver abaixo liga por exemplo um led ou alguma outra coisa pra mostrar se está abaixo ou acima da temperatura de set. desde já agradeço muito

    • Euler Oliveira às 18:40

      Olá Davidson.

      Agradeço pelo comentário!

      Sim, você pode fazer isso sim. Basta fazer as condições para as temperaturas e nestas condições definir o que será acionado.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *