Vamos programar com o Arduino – Projeto: Sensor de Temperatura

Ao longo destes primeiros três tutoriais da rubrica “Vamos programar com o Arduino” foram abordados alguns conceitos básicos necessários para o leitor desenvolver pequenos projectos.

Na rúbrica de hoje iremos mostrar um pequeno projecto que abrange todo o conteúdo abordado nos tutoriais anteriores.

Parar colocarmos os nossos conhecimentos em prática iremos fazer um pequeno projecto com o objectivo de sabermos a temperatura e a humidade de uma determinada divisão da nossa casa.

Para tal, vai ser necessário o seguinte hardware:

  • Um Arduino (modelo à escolha);
  • 1 resistência de 10K Ω;
  • Uma BreadBoard (Placa de testes);
  • Fios (6 no máximo);
  • Sensor DHT22;

Como podemos observar nos componentes utilizados, para o projecto de hoje iremos usar o sensor DHT22, a escolha deste sensor deve-se ao facto de ser um sensor razoavelmente barato e com uma boa precisão de medição.

Montagem do cenário

Antes de começarmos com a programação, vamos primeiro proceder à parte da montagem do hardware. Aqui ficam dois esquemas de ligação para auxiliar na montagem.

arduino_04

arduino_05

Após a montagem do hardware podemos proceder a sua programação.

Programação…

Antes de se começar a construir código, iremos precisar de uma biblioteca para podermos trabalhar com o sensor DHT22. Neste tutorial, foi utilizada uma biblioteca personalizada, que não se encontra nos repositórios do Arduino, portanto no fim deste artigo estará disponível para download a biblioteca utilizada. Há que ter a atenção se for utilizada uma biblioteca diferente o código poderá não funcionar correctamente.

#include <dht.h>
 
int Sensor = 2;  //Pino onde está ligado o sensor DHT22    
DHT dht(Sensor, DHT22); //Esta instrução indica qual à biblioteca qual o modelo do sensor utilizado
float temperatura; // Variável que nos irá mostrar a temperatura 
float humidade; // Variável que nos irá mostrar a humidade
 
 
void setup() {
 
	Serial.begin(9600);// Sincronizar a porta serial a 9600 bits por segundo
	pinMode(Sensor, INPUT); // Definir o nosso sensor como INPUT
	dht.begin();// Esta instrução é necessária, para que o nosso sensor possa estar pronto para ser utilizado
}
 
void loop() {
 
	temperatura = dht.readTemperature(); // Esta instrução permite que o sensor guarde a leitura da temperatura na variável
	humidade = dht.readHumidity(); // Esta instrução permite que o sensor guarde a leitura da humidade na variável
	delay(2000); // Para o programa durante 2000 milissegundos;
 
// Escreve para a porta serial a temperatura e a humidade:
	Serial.print("Temperatura: ");
	Serial.print(temperatura);
	Serial.print("c Humidade: ");
	Serial.print(humidade);
	Serial.println("%");
}

Como podemos observar no programa acima representado existem dois parâmetros um pouco desconhecidos.

O primeiro paramento é Serial.begin(9600). Esta instrução é necessária sempre que temos comunicação serial, permite ajustar os bits de transmissão em segundos enviados ou recebidos pela porta serial. Mais à frente nesta rubrica iremos abordar a porta Serial e o seu modo de funcionamento onde será explicado em pormenor estas informações.

O outro parâmetro desconhecido é a função delay(). Esta função tem como objectivo parar o nosso programa por um determinado período de tempo, esse tempo é indicado como um parâmetro de entrada na função em milissegundos. Esta função por vezes não se torna a ideal a ser utilizada, pois quando queremos que o Arduino faça várias tarefas ao mesmo tempo, esta não se torna a ideal. Uma das alternativas é usar a função millis() ou mesmo até Interrupções(Interrupts), mas para este tipo de projectos ficamos pela função delay().

Após termos efectuado todas as ligações do hardware e elaborado o nosso programa, resta verificar o nosso output. Como foi indicado mais acima neste tutorial a nossa temperatura e humidade está a ser enviada para a nossa porta serial. Para tal no Arduino IDE, iremos abrir o monitor da nossa porta serial para podermos observar a nossa informação.

arduino_06

E assim concluímos o nosso primeiro projecto no Arduino . O que acharam deste projecto? No futuro, que tipo de projectos gostariam que fossem apresentados?

Download

Download: Bibliotecas

Por Claudio Catarino para Pplware.comFonte do Artigo

Share

Também pode gostar de...

Deixar uma resposta

%d bloggers like this: