Lendo e enviando dados LDR para o firebase utilizando ESP8266 NodeMCU

LDR

Este artigo tem como objetivo principal o envio de dados de um sensor LDR para a plataforma Firebase utilizando a placa de desenvolvimento ESP8266 NodeMCU.

 

O LDR é um resistor cuja resistência varia conforme a intensidade da luz que incide sobre ele. À medida que a intensidade da luz aumenta, a sua resistência diminui.

 

LDR 5mm.
Figura 1: LDR 5mm.

 

A NodeMCU é uma placa de desenvolvimento que combina o chip ESP8266, uma interface USB-serial e um regulador de tensão 3,3 V. A programação pode ser feita usando linguagem LUA ou a IDE do Arduino, utilizando a comunicação via cabo micro-usb.

 

ESP8266 NodeMCU.
Figura 2: ESP8266 NodeMCU.

 

O Firebase é a plataforma de desenvolvimento mobile e web desenvolvida pela Firebase, Inc. e posteriormente adquirida pela Google. Através da combinação entre o módulo e a plataforma que serão utilizadas, é possível fazer uma série de aplicações de Internet das Coisas.

 

Nesse tutorial utilizaremos o Arduino IDE para programar a NodeMCU. Caso você não tenha a IDE instalada em seu computador, é só seguir os passos neste artigo do Fábio Souza.

 

Passo 1 - Configuração da IDE do Arduino para o ESP- 01

 

Veja como instalar a ESP8266 no artigo Crie seu primeiro projeto usando o módulo ESP-01 e FirebaseSelecione a ESP8266 NodeMCU em Ferramenta -> Placa.

 

Menu de placas pós instalação.
Figura 3: Menu de placas pós instalação.

 

Para usuário Windows, lembre-se de verificar o driver da sua placa. Existem 2 variações de NodeMCU com o CH340 e com CP2102, faça o download e instale de acordo com sua placa.

 

Passo 2 - Montagem do circuito

 

Esquema da montagem do projeto.
Figura 4: Esquema da montagem do projeto.

 

Passo 3 - Código para ler o LDR

 

 

Envie para a placa o código para ESP8266 NodeMCU, coloque uma fonte de luz próximo ao LDR e veja a variação no Serial Monitor clicando no ícone, da Figura 5, no canto superior direito.

 

Ícone para visualização da porta serial.
Figura 5: Ícone para visualização da porta serial.

 

Passo 4 - Configuração do Firebase

 

Veja como configurar o firebase no artigo: Crie seu primeiro projeto usando o módulo ESP-01 e Firebase.

 

Passo 5 - Configurando a IDE Arduino para uso do Firebase

 

Baixe a biblioteca firebase-arduino em github.com/FirebaseExtended/firebase-arduino.

 

Agora para adicionar a biblioteca. Clique em Skecth > Incluir Biblioteca > Adicionar biblioteca .ZIP.

 

Menu para adicionar uma nova biblioteca .ZIP.
Figura 6: Menu para adicionar uma nova biblioteca .ZIP.

 

Instale biblioteca arduinojson. Vá em Sketch > Gerenciar biblioteca e pesquise arduinojson. Selecione a versão 5.13.1 e clique em instalar.

 

Passo 6 - Enviando dado do LDR para o Firebase

 

Envie o código para ESP8266 NodeMCU.

 

Abra seu Firebase e veja os dados enviados.

 

Real Time Database Firebase.
Figura 7: Real Time Database Firebase.

 

Passo 7 - Criando uma aplicação web para mostrar o valor

 

Crie o arquivo index.html, copie, depois cole esse código, salve e execute.

 

Para o código funcionar vá ao Firebase > Project Overview > Clique no ícone:

 

Ícone para início da compilação.
Figura 8: Ícone para início da compilação.
Adicionar o Firebase a aplicação Web.
Figura 9: Adicionar o Firebase a aplicação Web.

 

Copie sua varconfig e substitua no código html.

 

Tela para mostrar o valor do Firebase.
Figura 10: Tela para mostrar o valor do Firebase.

 

Pronto, nesse artigo você aprendeu a enviar dados para o Firebase usando a ESP8266 NodeMCU e mostrar esse dado numa aplicação web. Uma dica que eu deixo é a leitura do artigo: Crie seu primeiro projeto usando o módulo ESP-01 e Firebase, lá você vai aprender como ler dados do Firebase e acender um led, lembre-se na hora de gravar a placa mudar para a NodeMCU.

 

 

Saiba mais

 

Monitore seus próprios Tweets usando Thinger, NodeMCU e IFTTT

Conectando-se ao DeviceHub com NodeMCU e MQTT

Exibindo valores de temperatura e umidade no app MQTT Dash com o sensor DHT11

NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Guilherme Robert Silveira Santos
Membro MinasUp, Estudante 6° período de BC&t - UFVJM, Técnico em Informática, Colaborador #CPMG2 e #CPBR11, Palestrante LatinoWare 2014/2015/2018, Palestrante #CPRO e #CPMG3, Palestrante FISL16/17, Palestrante FLAHWL 2015, Palestrante Arduino Day Janaúba 2015/2016, Palestrante FINIT 2017, Curador IoT Day Janaúba 2016/2017, Curador Arduino Day Janaúba 2017/2018, Curador Scratch Day 2017, Curador MinasUp Game JAM 2017/2018.

Deixe um comentário

avatar
 
  Notificações  
Notificar