Criando um termometro com o Arduino

Olá pessoal, na postagem de hoje (a última do ano) vamos ver como criar um termômetro com o Arduino, para isso vamos precisar de um sensor de temperatura LM35 que você encontra facilmente em lojas de componentes eletrônicos.
Primeiro passo - O Hardware: Basicamente o que vamos fazer aqui é conectar o pino 1 do LM35 no Positivo (+5V) e o terceiro pino no Negativo (GND), enquanto o pino do meio vai conectado na porta A1 do Arduino, conforme o esquema:
E após isso, conectar o Display LCD na placa Arduino. Agora, vamos para o próximo passo:
Segundo passo - O Software: Nessa parte vamos desenvolver o código responsável por fazer a leitura do sinal do LM35, converter em temperatura e mostrar no Display LCD. Vamos ao código.
Primeiro declaramos tudo o que será utilizado:
Nesse caso, declaramos o pino do Arduino onde é conectado o pino de sinal do LM35, depois inicializamos o valorLido como 0 (zero) e o valor de temperatura já convertido. O próximo passo é incluir a biblioteca e posteriormente definir os pinos que serão utilizados na comunicação. 
Definido todas essas informações é hora de desenvolver o programa em si:
Dentro do void setup() linpamos a tela do LCD, caso esse possua alguma informação (logo após um reset por exemplo) e inicializamos a tela como tendo 16 caracteres de largura e 2 caracteres de altura.
Dentro do void loop() o código limpa a tela novamente e será feita a limpeza toda as vezes que o código estiver rodando, o sinal do LM35 é lido pela entrada analógica e na linha seguinte é convertido em ºC.
Depois o cursor é posicionado na linha 0 e coluna 0 onde é escrito "Temp atual:" Na próxima linha o cursor é posicionado na coluna 2 onde escreve o valor da temperatura e o "C" logo na sequência. E assim o código fica executando até que a alimentação de energia seja cortada. 
Para terminar, um foto do termometro em funcionamento:
É, está quente aqui sim :(
Por hoje é isso pessoal, até a próxima postagem e um Feliz Ano Novo para vocês.

Fontes:
- Datasheet LM35;
- Arduino AnalogRead();
- Arduino LiquidCrystal();

0 comentários: