Pplware

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:

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.

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

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.

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?

Exit mobile version