Utilizando o sensor de temperatura LM35 com Arduino UNO
Já pensou ser capaz de realizar projetos, que de forma automática, efetue a leitura da temperatura de um determinado ambiente, e através de um display ter a possibilidade de exibir estes dados de temperatura em tempo real?
A princípio pode parecer algo bem complicado, mas dispondo um Arduino Uno e um sensor de temperatura LM35 a tarefa se torna bem menos complicada do que se possa imaginar.
O objetivo deste artigo é demonstrar as características principais do sensor de temperatura LM35 e como podemos realizar a integração com o Arduino Uno, de forma a obter projetos práticos envolvendo a leitura e o controle da temperatura de um determinado ambiente.
Sensor de temperatura LM35
O sensor LM35 é um sensor de temperatura de precisão, com uma tensão de saída analógica linearmente proporcional a temperatura em graus Celsius (°C).
O sensor possui 3 terminais usados para medir a temperatura ambiente variando de -55 °C a 150 °C. Ele não requer nenhuma calibração ou ajuste externo para fornecer precisões típicas de ± ¼ °C em temperatura ambiente e ± ¾ °C em uma faixa de temperatura de -55 °C a 150 °C.
A sensibilidade do LM35 é de 10 mV/grau Celsius. À medida que a temperatura aumenta, a tensão de saída também aumenta. Isso significa por exemplo que 250 mV representaria 25°C.
O LM35 fornece uma saída de temperatura que é mais precisa do que a saída de um termistor. Por seu baixo custo e ótima precisão, se tornou muito conhecido entre estudantes e profissionais da área da eletrônica, sendo inclusive utilizado em diversos projetos para controle de temperatura.
Pinagem do sensor de temperatura LM35
Princípio de Funcionamento LM35 (Entendendo o Fator de Escala Linear LM35)
Para entender o princípio de funcionamento do sensor de temperatura LM35, precisamos entender o fator de escala linear. Por característica do LM35, cada 10 milivolts (mV) na saída equivale a um grau Celsius. Isso significa que com o aumento na tensão de saída do sensor a cada 10 milivolts, o valor da temperatura aumenta em um.
Por exemplo, se o sensor estiver produzindo 100 milivolts no seu pino de saída, a temperatura equivalente será de 10 graus Celsius. O mesmo vale para a leitura de temperatura negativa. Se o sensor estiver produzindo -100 milivolts, a temperatura será de -10 graus Celsius.
O LM35 pode ser usado em duas configurações de circuito. Ambos produzem resultados diferentes. Na primeira configuração, você poderá somente medir a temperatura positiva de 2 graus Celsius a 150 graus Celsius. Nesta primeira configuração, simplesmente alimentamos o lm35 e conectamos a saída diretamente a conversores A/D (analógico para digital).
Na segunda configuração, podemos utilizar todos os recursos do sensor e medir toda a faixa de temperatura de -55 graus centígrados a 150 graus centígrados.
Características principais do LM35
- Calibrado diretamente em Celsius
- Saída proporcional em °C
- Fator de escala linear + 10 mV/°C
- Opera de 4 V a 30 V
- Dreno de corrente inferior a 60 ?A
- Saída de baixa impedância, 0,1 ? para carga de 1 mA
- Baixo custo
- Precisão 0,5°C (a 25°C)
- Faixa de temperatura do LM35 (-55°C a 150°C)
- Autoaquecimento baixo, 0,08°C em ar parado
- Não Linearidade Somente ±¼°C Típico
- Adequado para aplicações remotas
Aplicações LM35
- Medição de temperatura em um ambiente específico
- Monitoramento de temperatura da bateria
- Fornecimento de um circuito/componente para desligamento térmico
- Medição de temperatura para aplicações HVAC
Como utilizar o sensor de temperatura LM35 com o Arduino Uno
Considerando a utilização do sensor LM35 integrado com o Arduino Uno, podemos desenvolver projetos de controle de temperatura com um custo relativamente baixo.
A seguir, iremos demonstrar através da elaboração de um circuito como realizar esta integração entre o Arduino e o sensor de temperatura LM35 de forma prática. O objetivo do circuito será medir a temperatura de um determinado ambiente e exibir as informações em um display de LCD. A configuração que utilizaremos para o LM35 irá considerar apenas temperaturas positivas compreendidas entre +2°C a +150°C conforme a especificação do LM35. Para a leitura de temperaturas negativas e positivas (-55°C a +150°C) é necessário utilizar outra configuração para o LM35.
Materiais para montagem
Passos para a montagem do circuito
A montagem do circuito deve ser feita conforme imagem a seguir. Observe atentamente a posição correta dos terminais do sensor de temperatura LM35 e do display de LCD.
Resumo das Conexões entre os componentes |
|
|
|
VSS (Display) |
Pino direito do potenciômetro |
|
|
VDD (Display) |
Pino 5V (Arduino) |
|
|
V0 (Display) |
Pino central do potenciômetro |
|
|
RS (Display) |
PINO 12 (Arduino) |
|
|
RW (Display) |
PINO GND (Arduino) |
|
|
E (Display) |
PINO 11 (Arduino) |
|
|
D0 (Display) |
- |
|
|
D1 (Display) |
- |
|
|
D2 (Display) |
- |
|
|
D3 (Display) |
- |
|
|
D4(Display) |
PINO 5 (Arduino) |
|
|
D5 (Display) |
PINO 4 (Arduino) |
|
|
D6 (Display) |
PINO 3 (Arduino) |
|
|
D7 (Display) |
PINO 2 (Arduino) |
|
|
A OU 15 (Display) |
Passa pelo resistor e vai para o 5V (Arduino) |
|
|
K OU 16 (Display) |
PINO GND (Arduino) |
|
|
Pino 5V (Arduino) |
Pino esquerdo do potenciômetro |
|
|
Pino 5V (Arduino) |
Pino VCC (LM35) |
|
|
Pino GND (Arduino) |
Pino GND (LM35) |
|
|
Pino analógico A0 (Arduino) |
Pino central OUT (LM35) |
|
|
Programação do Arduino
Inicialmente abra a IDE do Arduino para iniciar a programação. Em seguida digite o respectivo código conforme a imagem a seguir:
Após digitar o código, basta fazer o upload no Arduino Uno. O processo para fazer o upload do código no Arduino Uno é bem simples:
- Conecte o seu Arduino Uno utilizando o cabo USB.
- Vá em Ferramentas ? Placa ? Arduino Uno para selecionar sua placa no menu Arduino.
- Em seguida escolha a porta serial correta para sua placa vá em ferramentas ? Porta serial ? COMx (Escolha a porta serial ao qual o seu Arduino estiver conectado).
- Por fim, basta clicar no botão Carregar.
Se não houver nenhum erro de digitação ou configuração, o código será gravado no Arduino. Caso contrário verifique se o código foi digitado corretamente e se as configurações estão corretas.
Após o código ser carregado com sucesso, o display irá exibir automaticamente a temperatura medida pelo sensor LM35. Se houver a necessidade regule o contraste do display conforme desejado, bastando girar o potenciômetro de ajuste de contraste.
Explicação do código
Primeiramente incluimos a biblioteca referente ao display de LCD (
No void setup () Iniamos o display de LCD de 16 colunas e 2 linhas e apagamos qualquer informação antiga do display.
Já no void loop () a variável “leitura” recebe o valor lido do pino analógico A0 (valor de 0 a 1023). Em seguida a variável “tensao_mV” recebe o resultado da variável “leitura” * (5000/1024), esta fórmula converte o número ADC de 0-1023 para milivolts (de 0-5000mV). Por fim a variável “temperatura” recebe o resultado da variável “tensão_mV”/10 (converte os milivolts em graus Celsius).
Ainda no void loop, posicionamos o cursor do display na coluna 3 e linha 0 para exibir a mensagem “STA RONTEK”, em seguida posicionamos o cursor do display na coluna 5 e linha 1 para exibir as informações da variável “temperatura” que é o valor da propria temperatura em graus Celsius. As informações de temperatura serão atualizadas a cada 500ms (delay).