Termômetro externo com tendência, temperatura máxima e mínima
Componentes e suprimentos
![]() |
| × | 1 | |||
| × | 1 | ||||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 2 | |||
![]() |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
Sobre este projeto
Introdução
Fiz este termômetro para me divertir, mas também para obter alguma experiência com a escrita do software Arduino e com o uso de um display LCD. Enquanto trabalhava nisso, decidi adicionar algumas funcionalidades. Temperatura máxima medida, temperatura mínima e uma seta para cima ou para baixo no display mostrando a tendência da temperatura. Um botão de pressão é usado para redefinir a temperatura mínima e máxima exibida para a temperatura atual.
Como construir
Construí-lo é bastante simples. Conecte os componentes conforme mostrado na programação. A saída de 5 V do Arduino Uno deve ser ligada a todas as conexões de + 5 V (setas). Também interconecte todos os pinos de aterramento. O termômetro é alimentado por uma fonte de alimentação externa de 12 V DC conectada ao Arduino. Baixe o sketch e carregue-o no seu Arduino e pronto.
O que você precisa:
- Arduino Uno
- Visor LCD 1602A
- Fonte de alimentação 12 V DC
- B + B Thermo Technik TS-NTC-103 (10kΩ)
- resistor de filme metálico 10kΩ, tolerância de 0,1%
- potmeter 10kΩ linear
- Resistor 820 Ω (tolerância não é importante, 10%, 5% ou melhor serve)
- Resistor 10 kΩ (tolerância não importante)
- Capacitor 0,1 uF (=100nF) 16V (2 peças)
- Elco 470 uF 16V
- botão (normalmente desligado)
- Gabinete se você quiser construí-lo
O sensor, um NTC de alta precisão
O NTC que utilizo é um sensor de temperatura de precisão da B + B Thermo Technik de 10 kΩ. Este sensor tem uma tolerância de resistência a 25 ° C de ± 0,5%. Os sensores de temperatura NTC da série TS-NTC têm uma ampla faixa de medição de -60 ... +150 ° C e, portanto, são adequados para aplicações onde até agora, resistores de platina caros estavam sendo usados. Tanto a resistência básica quanto o valor B estão dentro de uma tolerância de ± 0,5%, de forma que o componente pode ser usado em muitas aplicações sem calibração de temperatura e também pode ser substituído sem reajuste. Portanto, por meio de medição de resistência simples, uma precisão de ± 0,12 K a 25 ° C pode ser alcançada desta forma. Na faixa de temperatura de -60 ... + 85 ° C, o erro máximo é de cerca de ± 0,5K. Você pode usar qualquer outro NTC de alta precisão, mas então terá que alterar os coeficientes de Steinhart-Hart no esboço para se ajustar a esse NTC (consulte a aproximação de Steinhart-Hart).
Obviamente, para medições de temperatura de alta precisão, o outro resistor do divisor de tensão, em série com o NTC, também precisa ser do tipo de baixa tolerância. Usei um resistor de filme metálico de 10kΩ, tolerância 0,1%, 0,6W, coeficiente de temperatura 25 ppm. Qualquer outro resistor com tolerância de 0,5% ou menos serve.
Cabo NTC captando ruído
O NTC é colocado fora da casa. No meu caso com alguns metros de cabo. Para evitar a interferência de outro equipamento eletricamente 'ruidoso' na casa, coloquei um capacitor de desacoplamento de 0,1 uF da entrada analógica de temperatura do Arduino Uno (pino 14) para o terra. O osciloscópio ainda mostrou algum ruído no pino 14 depois disso. O ruído foi causado pelo relógio do display LCD de 1602. Ele desapareceu depois que um capacitor de desacoplamento de 0,1 uF foi colocado entre o VDD e o pino Vss do display LCD. Este capacitor deve ser soldado diretamente na placa do PC LCD com os fios o mais curtos possível (1 cm no máximo).
O osciloscópio mostrou que o sinal no pino 14 estava limpo depois disso. Para evitar ruído e ondulação da fonte chaveada coloquei um elco de 470 uF entre 5V e gnd do Arduino
Colocação do NTC
Para evitar medições de temperatura incorretas, o NTC e seu gabinete nunca podem estar expostos ao sol. Por isso, deve ser colocado à sombra, de preferência no lado norte da casa (no lado sul se você estiver no hemisfério sul) ou mesmo longe de casa. Não é apertado contra a parede, mas pelo menos alguns mm fora da parede, pois a parede pode estar alguns graus mais quente do que o ar externo. E de preferência uma parede sem aquecimento atrás dela, como a parede da garagem.


Sobre o software.
A biblioteca LiquidCrystal está incluída para os comandos de 1602 LCD. Várias constantes e variáveis são declaradas. Por favor, leia os comentários no esboço para mais informações. A, B e C são os coeficientes de Steinhart - Hart para o NTC que uso. Para outros NTCs, você deve alterar esses coeficientes. O intervalo inteiro na linha 17 define o tempo entre duas medições sucessivas, que é de 3 segundos. Para obter um progresso uniforme da medição de temperatura, uma média de execução é calculada a partir de 30 medições sucessivas (numReadings na linha 22). Portanto, a temperatura mostrada é sempre a média da temperatura dos últimos 90 segundos. Para o cálculo da média em execução, uma matriz é usada:leituras [numReadings] ou, neste caso, leituras [30] na linha 21. Cada leitura é um número inteiro entre 0 e 1023.
Aproximação de Steinhart-Hart
Um NTC (Coeficiente de temperatura negativo) é um resistor com uma resistência dependente da temperatura. A resistência diminui com o aumento da temperatura. Infelizmente, a relação entre resistência e temperatura não é linear. Mas a curva R-T pode ser aproximada por uma fórmula. Na prática, são usadas duas fórmulas de aproximação. A chamada fórmula Beta e a fórmula Steinhart-Hart. Como o último fornece a melhor aproximação, é o que utilizo. Freqüentemente, o fabricante nos fornece valores para ambas as aproximações. No entanto, o TS-NTC-103 pode ser usado em uma ampla faixa de temperatura de -60 ... + 150 graus Celsius. Uma vez que o estamos usando em um intervalo muito menor de aprox. -10 ... + 30 graus Celsius obtemos uma melhor aproximação se calcularmos nós mesmos os coeficientes especialmente para este intervalo. Usei três pares de resistência-temperatura das especificações do fabricante em nossa faixa de trabalho (-10, 0 e +20 graus Celsius). É simples calcular os coeficientes com a calculadora online da Stanford Reasearch Systems. No diagrama abaixo você vê os dados (pontos vermelhos) a aproximação do modelo Beta e a aproximação de Steinhart-Hart. No canto inferior direito você vê que com um valor de resistor de 10k, a temperatura aproximada é 25.0035 graus Celsius com a aproximação de Steinhart-Hart, o que é muito bom, e 25,7716 graus Celsius com aproximação de Beta, que é substancialmente menos bom (o NTC é 10k a 25 graus Celsius)

Link para NTCcalculator
Código
Arduino
A versão 1.4 resolve um problema de convenção na declaração de função PrintPG () que estava causando um erro do compilador no editor off-line, mas sem problemas no editor da web versão 1.3 inclui histerese para a seta de tendênciaEsquemas
Processo de manufatura
- Controle de acesso com QR, RFID e verificação de temperatura
- Meça temperaturas com um sensor DS18B20 de 1 fio e Raspberry Pi
- Ler a temperatura com DS18B20 | Raspberry Pi 2
- Medindo a temperatura com RASPBERRY PI
- Sensor de temperatura Python e Raspberry Pi
- Temperatura e umidade fáceis no Raspberry Pi
- Monitorando a temperatura com Raspberry Pi
- DIY:Monitoramento e regulação de temperatura para HomeBrew
- Raspberry Pi monitorando a temperatura ambiente com saída de imagem Gnuplot e capacidade de alerta por e-mail
- Temperatura do Raspberry Pi e sensor de luz