Faça seu próprio controlador de temperatura com um Arduino

Levante o pão perfeito, prepare uma bela cerveja e crie pintos felizes com um controlador de temperatura Arduino. Se você mora em um clima menos confiável como a Inglaterra, as instruções que lhe dizem para manter algo em uma determinada temperatura não são particularmente úteis - não temos ar-condicionados e elevar o termostato para toda a casa não é prático para apenas fazendo um pedaço de pão.

Levante o pão perfeito, prepare uma bela cerveja e crie pintos felizes com um controlador de temperatura Arduino.  Se você mora em um clima menos confiável como a Inglaterra, as instruções que lhe dizem para manter algo em uma determinada temperatura não são particularmente úteis - não temos ar-condicionados e elevar o termostato para toda a casa não é prático para apenas fazendo um pedaço de pão.
Propaganda

Levante o pão perfeito, prepare uma bela cerveja e crie pintos felizes com um controlador de temperatura Arduino. Se você mora em um clima menos confiável como a Inglaterra, as instruções que lhe dizem para manter algo em uma determinada temperatura não são particularmente úteis - não temos ar-condicionados e elevar o termostato para toda a casa não é prático para apenas fazendo um pedaço de pão. Mesmo mantidos no interior, os pintos podem morrer se a temperatura cair durante a noite; e fazê-los eclodir em primeiro lugar tem uma faixa de temperatura ainda mais estrita. Mas eu preciso do meu pão, e os filhotes precisam de incubação - então, em vez de comprar equipamentos caros, podemos montar um controlador de temperatura competente com um Arduíno e pedaços domésticos.

O mesmo também vale para manter os itens frescos - pode ser um desperdício usar um refrigerador inteiro só para fazer iogurte - mas com um controlador de temperatura, o princípio é o mesmo. Em vez de ativar um elemento de aquecimento, você estará ativando o plug em um mini-frigorífico ou outro elemento de resfriamento, como um Peltier (cooler termoelétrico) - e, claro, a lógica será invertida.

O que você precisa

Este é um projeto do Arduino - se você nunca trabalhou com o Arduino antes, nosso guia para iniciantes é um ótimo lugar para começar.

  • Arduino
  • Sensor de temperatura - Estou usando um TMP36, um dispositivo de pacote único barato que vem com o kit para iniciantes Oomlout (Reino Unido) / Sparkfun (EUA).
  • Relé ou interruptores de ficha RC
  • Terminais de parafuso
  • Caixa para prender o calor
  • Elemento de aquecimento ou lâmpada incandescente e acessório (ou ambos)

O último item foi deixado deliberadamente vago. Se você tiver uma lâmpada incandescente (do tipo que esquenta, não uma lâmpada economizadora de energia) ou uma lâmpada quente para lesões esportivas, provavelmente é a mais fácil de configurar. Estou usando uma faixa de aquecimento - basicamente uma faixa de borracha que esquenta quando a eletricidade é passada, usada em garrafões e barris para etapas iniciais de fermentação em vinho ou cerveja - tecnicamente, isso pode ser um risco de incêndio quando não está enrolado em algo, então por favor não faça isso, só estou usando para testar . Você também pode comprar almofadas de aquecimento para o mesmo propósito.

Por razões de segurança, eu estou usando esses plugues RC para alternar dispositivos AC, com um controlador cortado detalhadamente neste artigo de automação residencial Aparelhos de controle de um Arduino: O Início de Dispositivos de Controle de Automação Doméstica de um Arduino: O Início da Automação Residencial Na época, eu mostrei a você algumas maneiras de fazer com que seus projetos do Arduino fossem controlados por meio do SiriProxy, dos itens falantes do OS X e de alguns scripts do Automator, ou até mesmo um chip de hardware de reconhecimento de voz dedicado. Eu ... Leia mais. É sem fio, então em nenhum momento eu preciso tocar nos fios ao vivo.

Sensores de Temperatura

Vamos começar ligando e testando o sensor. [Diagrama de Adafruit]

adafruit-tmp36

Com o lado plano voltado para você e as pernas para baixo, o sensor de temperatura TMP36 está conectado + sinal, GND nessa ordem. O + vai para a saída 3.3 V do Arduino; você também precisa de outra linha indo de +3, 3 V para o pino AREF - isso diz ao Arduino para usar 3, 3 V para referência de entrada analógica em vez de 5 V. Conecte o pino de sinal do sensor a A1. Em tentativas anteriores, usei o TMP36 diretamente na linha de 5 V; ele funciona, infelizmente, quando emparelhado com um relé, houve uma queda de energia sempre que o relé foi ativado, resultando em leituras altamente flutuantes.

Eu usei um cabo de rede antigo como cabo de sinal - muito útil ter ao redor, uma vez que existem 8 fios dentro. O cabo é bastante fino, portanto, certifique-se de fortalecer a outra extremidade com solda, onde ele será parafusado em um bloco de terminais.

tmp36-cabeamento de sensores

A fórmula no código pressupõe que você esteja usando o sensor tMP36; você deve conseguir encontrar uma amostra de código para outros sensores. Este código de exemplo é da Adafruit - carregue-o e abra o console Serial para examinar a saída.

teste tmp36

Compare com um termômetro, se possível. Leituras não está certo?

  • Verifique se a tensão que está sendo fornecida é na verdade de 3, 3 V
  • O AREF está conectado a 3, 3 V também?

Adicionando no Switch Logic

Para controlar o elemento de aquecimento, estou usando esses soquetes de plugue RC da Maplin e desmontei o controlador. Apenas o terra e o pino de controle precisam ser conectados. Eu modifiquei o código para incluir as bibliotecas relevantes que você pode baixar aqui.

rc-switches

Neste ponto, também removerei todas as referências a Farenheit e continuarei trabalhando apenas com Celsius. Eu então defini uma temperatura desejada para manter e adicionei em uma estrutura de controle simples da seguinte forma:

if(temperatureC< desiredTempC){ mySwitch.switchOn(1, 1); Serial.println("Heater ON"); } else{ Serial.println("Heater OFF"); mySwitch.switchOff(1, 1); } 

Não há nada de complexo aqui que você não entenderá - apenas comparando a leitura da temperatura atual com a desejada, e ligando a chave se ela estiver mais baixa; caso contrário, desligue-o.

O código completo pode ser encontrado aqui, embora você precise ajustar isso se estiver usando um relé (não é difícil). Aqui está o diagrama de fiação completo que usei:

fiação

Juntando Tudo

Tape o sensor dentro da caixa que você está usando e coloque o elemento de aquecimento onde for apropriado. Defina a temperatura desejada e ligue tudo. Se você manter seu PC conectado por enquanto, poderá usar o console Serial para observar as alterações à medida que sua caixa esquenta.

temperatura-controlador-caixa

Mais trabalho

  • Para diminuir o impacto de qualquer flutuação de temperatura, você pode tentar suavizar os resultados. Crie uma matriz para armazenar 10 leituras e calcular uma média em cada loop.
  • Para evitar a ativação e desativação rápidas do elemento de aquecimento, crie uma variável para armazenar uma contagem regressiva. Cada vez que você ativar ou desativar, registre a hora atual na contagem regressiva e, em seguida, antes de alternar o estado novamente, verifique se X tempo decorrido desde a última alteração de estado.
  • Para um projeto sem computador, conecte uma pequena tela LCD para exibir a temperatura atual e permita que você veja a temperatura atual e a desejada.

Colocando-o no teste

Finalmente, o que seria este projeto sem um pequeno teste? Preparei um lote de massa pronta na máquina de pão e dividi-a em dois pães. O que estava fermentado dentro da caixa era ligeiramente maior, mas a temperatura do ar ambiente hoje é de cerca de 26 graus Celsius - isso seria muito mais útil no inverno. Independentemente disso, é melhor eu ir fazer uma sopa para acompanhar este lindo pão.

teste de pão

Então, o que você faria que requer uma temperatura constante?

Crédito da imagem: Ian Watkins / flickr

In this article