TERMOSTATO P/ AQUÁRIO – C/ PIC 12F675 E DS18B20 (REF275)

Mais uma opção para controlar a temperatura de seu aquário…

Esta montagem permite o controle da temperatura de um aquário através da utilização de uma resistência aquecedora própria para aquários. Veja o esquema abaixo:

tiny_termo_aquario_ds18b20

Como sensor foi usado o componente DS18B20 fabricado pela Maxim. Este usa apenas um pino do PIC para enviar a temperatura, usando o protocolo 1-wire.
Para ajustar a temperatura desejada, usamos um interruptor (pino 4 do PIC). Ao apertar irá começar a decrementar, mas se soltarmos este interruptor por mais de 1 segundo, apertando de novo começará a incrementar, sendo mostrado na segunda linha do LCD.
Na primeira linha teremos o valor da temperatura da água, obtida pela leitura do sensor colocado dentro do aquário.
O sensor é o DS18B20, encapsulado em uma proveta de vidro pequena, com vedação feita com silicone próprio para aquários. Poderá adquirir este sensor pronto em vendas pela internet.
A resistência de aquecimento também deverá ser adquirida em lojas de materiais para aquários e deverá ser para a tensão de trabalho da rede local. Existem vários modelos conforme o tamanho do aquário.
A faixa de regulagem foi limitada de 14,5 a 40,0°C, pois a maioria dos peixes vivem em temperaturas entre 28 a 30 graus centígrados.
Caso a montagem seja usado apenas como termômetro,não haverá marcação de temperaturas negativas, pois a temperatura mínima está limitada a 0°C e a máxima em 99,9°C. Isto foi feito no programa C, para economizar espaço de memória e permitir que todo o programa seja colocado em apenas 1Kbyte de flash do PIC 12F675.
A alimentação poderá ser obtida de uma fonte CC de 9 a 12 volts, ou usar estas usadas em carregadores de celular de 5 volts ou fonte convencional com transformador + diodos + capacitores.
Para os testes desta montagem, foi usada a montagem “SIMULANDO UM SENSOR DE TEMPERATURA DS18B20 PARA FINS DE DESENVOLVIMENTO E TESTES (REF144)”, pegando os arquivos da pasta mais recente, de 20/03/2017.
Obs. Esta montagem é experimental, sendo de caráter didático, montada apenas em placa experimental (do tipo “Breadboard”), sujeita a “bugs” ainda não detectados. Está sendo fornecido os arquivos para que cada hobista possa alterar o programa segundo suas necessidades.

Segue pasta zipada com os arquivos desta montagem:

Tiny_Termo_Aquario

Manuais:
PIC 12F675
DS18B20 datasheet

Curiosidades:
A arte de preparar um expresso
A impressionante audição da traça-da-cera
Quem projetou primeiro?
Como ter uma saúde melhor
Quase dá para comer!
“Sua ligação foi completada” — Como?

Outros assuntos:
O casamento é apenas um compromisso formal?
Faz diferença ter boas maneiras?
Os desafios de uma família com enteados
Recuperar a confiança no casamento

Vídeos:
O que é o Reino de Deus?
Como enfrentar o bullying sem partir para a briga
Quem é o Autor da Bíblia?
Será que é amor ou paixão?
Tenha mais paciência
Fale a verdade
Eu me cansei das religiões

Até o próximo artigo!

10 comments on “TERMOSTATO P/ AQUÁRIO – C/ PIC 12F675 E DS18B20 (REF275)

  1. Ola Claudio!
    Gravei o novo arquivo que você me enviou e funcionou perfeitamente, como montei o termostato juntamente com o projeto do simulador de ds18b20 consegui varrer toda a faixa de temperatura ,fico muito agradecido pela sua ajuda , estou aprendendo muito com seus projetos e aproveitando para aprender um pouco mais de programação em c.
    Fico muito agradeço pela sua atenção e poder compartilhar seus conhecimentos!
    Atenciosamente
    Marcos

  2. Olá , Claudio !
    Vou verificar o arquivo sim obrigado, e aproveitando oportunidade gostaria de tirar uma dúvida na parte do código de comparação de temperaturas , porque você soma o valor 95
    na variável de temperatura ,não consegui entender esta parte ?

    Atenciosamente

    Marcos

    1. Olá Marcos!
      O valor 95 é um centro entre o valor positivo e o negativo ( podemos chama-lo de talvez ‘zero virtual’). Poderia ser outro valor mas na hora escolhi este valor , que resulta: 95 + 150 °C = 245 e 95 – 55°C= 40. Ambos resultados ficam confortavelmente dentro de 0 a 255. Poderia ser de 55 a 105.
      Acredito que deva existir lógica de comparação mais simples, mas na ocasião que fiz o programa não me veio a mente outras soluções.
      Eu até tentei montar uma explicação nos comentários mais fácil, mas sinceramente não consegui traduzir em palavras o funcionamento destas comparações. Para mim já foi um quebra-cabeça fazer funcionar! Mas fico feliz que tenha conseguido fazer funcionar sua montagem. Parabéns pela sua persistência!

      Cláudio

      1. Ola Claudio !
        Obrigado pela explicação agora consegui entender o código completo só falando com o pai da criança mesmo !!
        Aprendi muito com o estudo deste código aumentou meus conhecimentos em programação em c.
        Desde ja te agradeço pela sua atenção e por ser tao prestativo.
        Atenciosamente
        Marcos

  3. Claudio Larios,
    Primeiramente gostaria de parabenizá-lo pelo excelente Blog, onde você tem compartilhado seu conhecimento com todos que apreciam estas tecnologias .
    Gostaria de poder obter uma ajuda ,se (possível) em relação a um projeto que foi postado a um certo tempo (termostato digital com pic16f628a com ds 18b20), onde montei o mesmo juntamente com o simulador ds18b20 e funcionou corretamente ,mas ao programar na faixa entre (-1°C a -11°C) o rele aciona na faixa positiva de temperatura sendo que nas demais faixas ele opera normalmente.
    Agradeceria muito se pode-se me ajudar na solução do problema
    Atenciosamente,
    Marcos Antonio

    1. Olá Marcos!
      Poderia, por favor, indicar qual é o artigo específico, se possível, o número referencial ou a data do artigo? Existem vários artigos parecidos, mas com versão com lcd e também com 7 seguimentos, e isto dificulta saber qual é o que você está utilizando.
      Fico no aguardo.

      Cláudio

          1. Olá Marcos!
            Postei uma nova pasta com os arquivos atualizados do artigo ref143 (Termostato). Por favor, verifique se está tudo ok agora.
            Cláudio

Comments are closed.

Back To Top