Arduino Lab 04 – Leitura de temperatura com o sensor MCP9700 Componentes deste Lab Neste Lab discutiremos a integração do sensor de temperatura MCP9700 aos dispositivos já abordados no Lab 03, que são o Display de TFT 1,44, Arduino Nano V3.0 e o módulo RTC. Sensor de Temperatura MCP9700 Sensores de temperatura, aliados a outros dispositivos, nos permitem realizar o monitoramento de diversas aplicações em que este dado seja importante. No caso deste Lab iremos, inicialmente, apenas coletar os valores provindos da conversão A/D e exibir no display de os mesmos. A imagem abaixo ilustra o sensor em seu encapsulamento 3-Pin TO-92. Imagem Sensor de Temperatura encapsulado Uma proteção construída com um tudo termo contrátil e um revestimento interno de silicone para proteção da junção feita junto ao cabo de conexão pode também ser observado na imagem acima. Este encapsulamento favorece o uso do sensor em aplicações de medição de temperatura em líquidos onde o mesmo pode ser completamente imerso no sem nenhum risco de danos ao sensor ou ao microcontrolador. Características O sensor de temperatura MCP9700, fabricado pela empresa Microchip, possui como principais características, retiradas do datasheet do fabricante, resumidas abaixo: Tamanho reduzido; Tres opções de encapsulamento disponíveis: SC70-5, SOT-23-5, TO-92-3 Faixa de medição de temperatura: -40°C a +125°C (Temperatura extendida) -40°C a +150°C (Alta temperatura) Precisão: ±4°C (max), 0°C a +70°C (MCP9700) Relação Tensão/Temperatura: 0 mV/°C (Valores típicos) (MCP9700) Faixa de tensão de operação: Vdd = 2,3V a 5,5V (MCP9700) Corrente de operação tipica: 6 μA O sensor O sensor aplicado neste Lab é do tipo Linear Active Thermistor (LAT) ou, em uma tradução livre, Termistor Ativo Linear. Possui um baixo custo, consumo e uma razoável precisão que, dependendo da aplicação, pode satisfazer os requisitos do projeto. Diferentemente de sensores resistivos (Como termistores), sensores LAT não necessitam um circuito adicional para condicionamento do sinal. Segundo o fabricante, estes sensores são imunes aos efeitos de capacitâncias parasitas. Esta característica permite uma flexibilidade na fabricação das Placas de Circuito Impresso no que diz respeito a localização remota do ponto de aquisição, no nosso caso, o Arduino Nano. Funcionamento do Sensor linear Ativo Sensores com princípio de funcionamento LAT usam um diodo interno para medir a temperatura. Devido as características elétricas internas destes diodos, os mesmos possuem um coeficiente de temperatura que altera seu valor de tensão em função das mudanças relativas à temperatura ambiente. No nosso caso, as mudanças de tensão seguem a proporção de 10mV/°C (Valores típicos). Para um ambiente em 0°C, a tensão de saída típica é de 500mV. Mais informações podem ser consultadas no datasheet do fabricante. Imagem Curva do Sensor Interligação dos dispositivos O sensor de temperatura exige apenas um pino de dados do microcontrolador. Pode trabalhar nas tensões de 3V3 a 5V. No caso deste projeto, estamos alimentando o sensor em 5V já que a tensão de alimentação do protótipo é feita utilizando a USB do PC e a referência interna do ADC do Arduino é neste valor. O RTC e o Display são alimentados em 3V3. Um cuidado adicional foi tomado quanto ao nível de tensão de troca de dados entre o Display e o Arduino e um conversor de nível foi instalado. Esquema de ligação O esquema de ligação se encontra detalhado na figura abaixo. Lembrando que um conversor de nível entre o Arduino e o display deve ser usado. Esquema de ligação Teste e montagem A figura referente a montagem deste protótipo em uma protoboard se encontra abaixo. Nela observamos os três componentes utilizados no Lab 03 com o acréscimo do sensor de temperatura e do conversor de nível para adequar os níveis de tensão para o Display. Imagem Detalhe conversor e sensor Algoritmo Um algoritmo simples que, basicamente, faz a aquisição dos valores de temperatura e envia ao display, assim como é indicado na imagem abaixo, foi preparado para o Arduino e também se encontra abaixo. Imagem Display [crayon-594033b4836b9030216012/] Este código foi implementado utilizando a biblioteca básica para interação com o controlador do display (Controlador ILI9163C) escrita e disponibilizada pela Adafruit Industries. Uma imagem da montagem final e teste utilizando uma protoboard é ilustrado na imagem abaixo. Imagem Montagem Final Conclusão Este trabalho foi apenas um complemento do Arduino Lab 03 onde acrescentamos o sensor de temperatura e mudamos alguns detalhes na interface apresentada no Display de LCD. Em um Lab posterior iremos implementar a medição de temperatura com sensores do tipo NTC e Termopares J e K que são amplamente utilizados em aplicações industriais.