fbpx

Monitorando Temperatura e Umidade pelo Celular Utilizando a plataforma Blynk

Olá pessoal!

No post de hoje vamos ensinar a vocês como monitorar temperatura e umidade por meio de um aplicativo criado no Blynk. Caso você não conheça esta plataforma de desenvolvimento de aplicativos leia o artigo Conhecendo a Plataforma Blynk.

A proposta desta prática é criar um sistema de hardware composto pela placa microcontroladora NODEMCU ESP8266 e pelo DHT11, sensor capaz de medir a temperatura e umidade de um ambiente. Desta forma, o sensor enviará as informações de temperatura e umidade para a NODEMCU que, por meio de uma conexão Wi-Fi, enviará estas informações ao Blynk.


MATERIAIS NECESSÁRIOS


1 x NODEMCU ESP8266;
1 x Sensor DHT11;
1 x Protoboard;
Fios de jumper.


ESQUEMÁTICO DE LIGAÇÃO DOS COMPONENTES


Verifique se a sua placa NODEMCU ESP8266 encontra-se descontada do seu computador. Em seguida, monte atentamente o circuito da Figura 1.

Figura 1: Circuito elétrico para projeto Monitorando Temperatura e Umidade pelo Celular Utilizando a Plataforma Blynk.


Ao montar seu circuito observe os seguintes pontos:
• O sensor DHT11 possui 4 terminais. O primeiro (VCC) é o terminal de alimentação, que conforme datasheet do fabricante pode ser entre 3 V e 5,5 V. O segundo (DATA) é o pino de comunicação de dados, será através dele que o valor da temperatura e umidade serão comunicados. O terceiro (NC) é um pino vazio. Por fim, o último (GND) é o terminal de terra do sensor;
• O pino 1 do sensor DHT11 será ligado a alimentação de 3,3 V da placa NODEMCU ESP8266, o pino 2 deve ser conectado à porta digital 2, o pino 3 não será utilizado e o pino 4 deve ser conectado ao GND (terra).


CONSTRUINDO O APLICATIVO NO BLYNK


Conforme mencionado anteriormente, o aplicativo para monitoramento da temperatura e umidade será construído utilizando a plataforma Blynk. Para saber mais o Blynk e como instalá-lo clique aqui.
Para dar início à construção do aplicativo, abra o Blynk App em seu celular e selecione a opção “+ New Project”, conforme a Figura 2.

Figura 2: Clique em “+ New Project” para criar um novo projeto no Blynk App.


Em seguida, na tela Create New Project configuraremos o projeto conforme a Figura 3. Neste caso, atribuímos “Clima” como nome do projeto, selecionamos como dispositivo a placa NODEMCU e o tipo de conexão via Wi-Fi. Tendo feita as configurações, clique em “Create”.

Observação: Você também pode construir essa aplicação com outro microcontrolador ou outro tipo de comunicação. Para isso, configure o projeto conforme especificações da sua placa.

Figura 3: Configuração do projeto no Blynk App.


Em seguida, você receberá uma mensagem informando que o Auth Token do projeto foi enviado ao seu e-mail de cadastro. Clique em OK para fechar esta mensagem. Na tela de projeto incluiremos os Widgets necessários para construção do aplicativo, conforme a Figura 4.

Figura 4: Widgets do projeto Clima no Blynk App.


Para incluir os widgets do projeto clique no símbolo + , localizado na barra superior da tela de projetos do Blynk App. Os Widgets a serem inclusos são do tipo Image Gallery e Gauge.

Utilizaremos o Widgets Image Gallery para exibir a nossa logo na aplicação, mas você pode incluir qualquer outra imagem. Para exibir as informações referentes a temperatura e umidade lida pelo sensor DHT11 vamos usar os Widgets do tipo Gauge, ideal para exibição visual de valores numéricos.

Após a inclusão dos Widgets, vamos configurar cada um deles para a nossa aplicação. Para entrar no modo de configuração dos Widgets dê um clique leve sobre o mesmo, mas se deseja mover ou redimensionar clique e segure.

Iniciaremos a configuração do Image Gallery. A Figura 5 ilustra a página de configuração desse Widget. Para incluir a imagem desejada clique em “+ Add Image URL”.

Figura 5: Configuração do Widget Image Gallery no Blynk App.


Em seguida, será exibida a tela da Figura 6. A partir de então, você precisa apenas informar a URL da imagem desejada no campo URL. Em nosso exemplo, utilizamos como imagem a logo do Blog Robótica, que encontra-se disponível na URL: http://www.blogdarobotica.com/wp-content/uploads/2020/04/logo_blog_da_robotica-scaled.jpg.

Figura 6: Adicionando imagem a partir da URL no Blynk App.


Em seguida, vamos configurar os Gauges responsáveis por receber as informações de temperatura e umidade, conforme a Figura 7.

Figura 7: Configuração dos Gauges para exibir umidade e temperatura.


Para receber as informações de umidade e temperatura, vamos utilizar os pinos virtuais V5 e V6. O pino virtual é uma maneira de transmissão de dados entre o hardware e o Blynk App, e são comumente utilizados para fazer interface com outras bibliotecas e implementar lógica de programação personalizada. Os pinos virtuais não possuem representação física e não devem ser confundidos com os pinos GPIO físicos da NODEMCU ESP8266.

Em seguida, definimos a faixa de valores a ser exibido pelos Gauges Umidade e Temperatura, que deve ser de 0 a 100. Em label vamos definir a formatação dos dados recebidos. Utilizamos a opção /pin.#/ para que o Gauge exiba o valor com 1 digito decimal apenas. Em seguida, incluímos as unidades de medida: a umidade será medida em porcentagem (%) e a temperatura em graus Celsius (ºC).

Você pode alterar as cores do Gauge clicando em Text, na opção Design.


ELABORANDO O CÓDIGO


Nesta aplicação utilizaremos um código exemplo disponibilizado no site de exemplos da Plataforma Blynk. Na barra lateral, configuraremos a placa para NODEMCU, o tipo de conexão para ESP8266 WiFi, incluiremos o Auth Token e selecionamos o exemplos DHT11. Logo após, copiamos o código para o Arduino IDE.

Figura 8: Exemplo DHT11 no Blynk.


Você também pode copiar o código abaixo:

#include <ESP8266WiFi.h> //Biblioteca para uso do WiFi do ESP8266
#include <BlynkSimpleEsp8266.h> //Biblioteca para uso do ESP8266 no Blynk
#include <DHT.h> //Biblioteca do DHT11

char auth[] = "YourAuthToken"; //Auth token do projeto
char ssid[] = "YourNetworkName"; //Nome da rede Wi-Fi
char pass[] = "YourPassword"; //Senha da rede Wi-Fi

#define DHTPIN 2          // Define o pino digital que o DHT11 está conectado
#define DHTTYPE DHT11     // DHT 11
DHT dht(DHTPIN, DHTTYPE); //Inicializando o objeto dht do tipo DHT passando como parâmetro o pino (DHTPIN) e o tipo do sensor (DHTTYPE)
BlynkTimer timer; //Inicializando o objeto timer do tipo BlynkTimer

//Função de leitura do sensor
void sendSensor(){
  float h = dht.readHumidity(); //Realiza a leitura da umidade e armazena na variável h
  float t = dht.readTemperature(); //Realiza a leitura da temperatura e armazena na variável t

  if (isnan(h) || isnan(t)) { //Verifica se houve falha na leitura do sensor
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  Blynk.virtualWrite(V5, h); //Escreve no pino virtual V5 o valor de h (umidade)
  Blynk.virtualWrite(V6, t); //Escreve no pino virtual v6 o valor de t (temperatura)
}

void setup(){
  Serial.begin(9600); //Inicialização da comunicação serial

  Blynk.begin(auth, ssid, pass); //Inicializa o blynk passando como parâmetro o auth token, o nome da rede Wi-Fi e a senha
  dht.begin(); //Inicializa o sensor

  timer.setInterval(1000L, sendSensor); //Função sendSensor sendo chamada a cada segundo
}

void loop(){
  Blynk.run(); //Chama a função Blynk.run()
  timer.run(); //Chama a função timer.run()
}



Observe que no código incluímos algumas bibliotecas que podem ser baixadas através dos seguintes links:

Biblioteca Blynk

Biblioteca DHT11

Biblioteca Adafruit Unified Sensor Lib

Outra etapa necessária para o funcionamento correto do código é a inclusão do nome e da senha da rede Wi-Fi que a NODEMCU deve se conectar. Desta forma, preencha estas informações no código, mantendo as aspas duplas (“ ”).

Em seguida, vamos realizar o upload do código para a placa NODEMCU ESP8266.

Após a transferência do código, abra o aplicativo criado no Blynk App e clique no ícone “Play” para iniciar a comunicação entre o aplicativo e a placa NODEMCU ESP8266.

Ao final, o aplicativo para monitorar a temperatura e a umidade funcionará conforme mostrado no vídeo 1.

Vídeo 1: Monitorando a temperatura e a umidade pelo celular usando a plataforma Blynk.


Espero que tenham gostado deste tutorial. Em caso de dúvidas deixe seu comentário abaixo.

Att.,
Carol Correia Viana

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.