Mais um projecto, desta vez é uma estação de temperatura, está-mos já na segunda versão.
Esta segunda versão sofreu algumas alterações, agora estamos a usar 2 sensores de temperatura para assim obter mais precisão, fizemos também algumas alterações no código... Abaixo deixo-vos com o video do funcionamento do projecto, material utilizado, algumas imagens e esquemático para a ligação ao arduino e é claro o código para o arduino.
Espero que gostem :D
Video:
Material utilizado:
-Um lcd 16*2
-2 sensores de temperatura Lm35
-Um arduino
-Uma breadboard
-Fio(quantidade variada
Imagens:
Imagem do projeto |
Mais uma imagem do projeto |
Código:
//biblioteca do lcd
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
//Declaração de sensores e variáveis para o armazenamento de valores
int SENSOR1 = A0;
int SENSOR2 = A1;
float D1 = 0;
float T1 = 0;
float D2 = 0;
float T2 = 0;
float media = 0;
void setup() {
Serial.begin(9600);
lcd.begin(16, 2); //LCD 16x2
lcd.setCursor(0,0);
lcd.print("Estacao de Temp.");
lcd.setCursor(0,1);
lcd.print("Versao 1.0");
delay(3000);
lcd.clear();
}
void loop() {
// Cálculos para a conversão da temperatura
D1 = analogRead(SENSOR1);
T1 = (D1 * 500)/1024;
D2 = analogRead(SENSOR2);
T2 = (D2 * 500)/1024;
media=(T1+T2)/2;
delay(1000); // atualização dos dados a cada 1 segundo
lcd.setCursor(0,0);//mudar para a linha de cima
lcd.print("Sensor1 Sensor2");
lcd.setCursor(0,1);
lcd.print(T1);
lcd.print("C");
lcd.print(" ");
lcd.print(T2);
lcd.print("C");
delay(5000);
lcd.clear();// apagar tudo que está escrito no lcd
lcd.setCursor(0,0);
lcd.print("Temp. Media");
lcd.setCursor(0,1);
lcd.print(media);
lcd.print("C");
delay(3000);
lcd.clear();
}
Cumprimentos Rui Marinho !
Boas...... Esta programaçao so da para o lcd 16x2 ou da para outros
ResponderExcluirOnde diz lcd.begin(16.2); podeo tamanho que o seu tenha como por ex:lcd.begin(16.4);
Excluir