Termometro Com Arduino
Termometro Com Arduino
ARDUINO UNO R3
O pino Vout deve ser ligado em uma das entradas analógicas do Arduino
(A0~A5).
Temperatura ambiente
Temperatura máxima
Temperatura mínima
O contraste pode ser controlado por um trimpot, mas neste projeto foi inserido
um resistor de 10 ohms do pino 3 do display ao terra.
COMO FUNCIONA:
Funcionamento normal
void setup(){
Serial.begin(9600); // inicia a comunicação serial
lcd.begin(16,2); // identifica o tipo de display – 16 colunas, 2 linhas
lcd.print("TempAmbiente: ");
lcd.createChar(1,a); // ao array “a” é atribuído o valor 1. O array “a” é o que
desenha o símbolo do grau
lcd.setCursor(6,1); //posicionamento do cursor, coluna 6 linha 1
lcd.write(1); // escreve o símbolo do grau
lcd.setCursor(15,0);
lcd.write(1);
lcd.setCursor(15,1);
lcd.write(1);
}
void loop(){
for(i=0;i<=7;i++) //loop que faz a leitura 8 vezes (0 a 7); se for efetuada a
leitura 7 vezes (0 a 6), por exemplo, a linha ficará assim: for(i=0;i<=6;i++)
{
samples[i] = (5.0 * analogRead(lm35) * 100.0) / 1024.0;
tempc = tempc + samples[i]; // incrementa o valor da variável tempc à cada
leitura
delay(100);
}
tempc=tempc/8.0; // divide a variável tempc por 8, para melhorar a precisão
na leitura
tempf=(tempc * 9)/5 + 32; // converte a temperatura para Fahrenheit
armazenando em tempf
essa linha poderá ser também escrita assim: tempf=(tempc*1.8) + 32;
if (tempc>maxtemp){maxtemp=tempc;} // armazena a temperatura máxima em
tempc
if (tempc<mintemp){mintemp=tempc;} // armazena a temperatura mínima em
tempc
lcd.setCursor(13,0);
lcd.print(tempc,DEC);
lcd.setCursor(0,1);
lcd.print("Min:");
lcd.setCursor(4,1);
lcd.print(mintemp,DEC);
lcd.setCursor(9,1);
lcd.print("Max:");
lcd.setCursor(13,1);
lcd.print(maxtemp,DEC);
----------------------------------------------------
A figura a seguir orienta a numeração das linhas e colunas do display.
Muita atenção para a identificação das linhas 1 e 2, que devem ser identificadas
como 0 e 1 e também com relação às colunas 1 a 16, que devem ser identificadas
como 0 a 15. Exceção deve ser feita quanto a identificação dos pinos, que deve
obedecer a ordem de 1 a 16.
É possível monitorar também as atividades do circuito através do Serial Monitor: