RECEBIMENTO DE DADOS VIA WIFI UTILIZANDO ESP8266
Se você abrir o seu navegador de internet, digitar placa de desenvolvimento e apertar enter, irão aparecer inúmeras opções. Cada uma
delas possui alguma característica que a torna diferente das demais. Por isso, escolher com qual delas você irá fazer o seu projeto se
tornou uma tarefa nada fácil.
É preciso parar e analisar se ela é ou não a ideal para a sua aplicação.
O intuito deste artigo é te convencer do enorme potencial da placa de desenvolvimento NodeMCU ESP8266 quando o assunto
é envio e recebimento de dados via wifi.
O microcontrolador ESP8266 foi criado pela empresa chinesa Espressif System em 2014. Na época do lançamento, o objetivo da
empresa era utilizar o chip somente em tablets e celulares.
Porém, assim que a Espressif criou o seu firmware, ele virou uma febre entre os amantes de eletrônica.
Placa de desenvolvimento NodeMCU ESP8266
A principal vantagem desta placa em relação a outros microcontroladores convencionais é já possuir um módulo wifi acoplado. Em
aplicações que requerem conexão a uma rede wifi, isto ajuda e muito!
Confira algumas outras especificações:
Wireless padrão 802.11 b/g/n
Antena embutida
Conector micro-usb
Modos de operação: STA/AP/STA+AP
Suporta 5 conexões TCP/IP
Número de portas GPIO: 11
GPIOs com funções de PWM, I2C e SPI
Tensão de operação: 4,5 à 9 V
Taxa de transferência: 110 à 460800 bps
Suporta upgrade remoto de firmware
Conversor analógico digital
Viu só! São muitas características interessantes.
Por este motivo, nós utilizamos esta placa de desenvolvimento no protótipo elétrico da equipe Cheetah E-Racing.
Lá, ela é usada na placa de telemetria traseira e é a responsável por receber e enviar nada menos que 14 dados diferentes! Estes
dados são enviados via wifi para o sistema supervisório, onde tanto o piloto quanto o restante poderão verificá-los.
Página 1 de 10
Página do sistema supervisório da equipe Cheetah E-Racing
Bom, você deve estar se perguntando o que vamos fazer. Vamos ao que interessa.
Nós faremos uma pequena aplicação de envio e recebimento de dados via wifi utilizando o ESP8266. Basicamente, nós seremos
capazes de acender e apagar um led através de um WEB Server.
Além disso, a todo momento, nós poderemos verificar em qual estado o led se encontra.
Ficou curioso? Continue lendo!
MONTAGEM DO CIRCUITO
O circuito que utilizaremos neste nosso projeto é muito fácil de ser montado e não necessita de muitos componentes. Vamos precisar
de:
Placa de desenvolvimento NodeMCU ESP8266
1 resistor de 220Ω
1 led
Jumpers
A montagem deve ser feita conforme mostra a figura a seguir:
Montagem do circuito
PROGRAMAÇÃO COM IDE DO ARDUINO
Atualmente, existe uma infinidade de plataformas de desenvolvimento que podem ser utilizadas para programar o ESP8266, por
exemplo, Espruino (linguagem JavaScript), ESPlorer IDE (linguagem LUA) e o Arduino IDE (linguagem C/C++).
Por ser amplamente conhecido e de fácil utilização, optamos por utilizar o Arduino IDE. Porém, não é só sair programando! Antes de
qualquer coisa, é preciso fazer algumas configurações no IDE.
Com o Arduino IDE aberto, clique em Arquivo 🡪 Preferências.
Página 2 de 10
Indicação do caminho Arquivo 🡪 Preferências
Na tela seguinte, cole a URL a seguir no campo URLs Adicionais de Gerenciadores de Placas:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Sua tela ficará assim:
Página 3 de 10
Indicação do campo URLs Adicionais de Gerenciadores de Placas
Deu tudo certo até aqui? Sim? Ótimo! Clique em OK e volte para a tela principal da IDE.
Agora, clique em Ferramentas 🡪 Placa 🡪 Gerenciador de Placa.
Indicação do caminho Ferramentas 🡪 Placas 🡪 Gerenciador de Placa
No campo de pesquisa, busque por esp8266 by ESP8266 Community e instale o pacote clicando em Instalar.
Página 4 de 10
Pacote esp8266 by ESP8266 Community
Esta tarefa pode levar alguns minutos. Assim que a instalação terminar, aparecerá a mensagem INSTALLED na sua tela.
Pacote esp8266 by ESP8266 Community instalado
Algum problema? Não? Maravilha! Para verificar se tudo deu certo, clique em Ferramentas 🡪 Placas. Em seguida, busque pela placa
NodeMCU (ESP-12E Module).
Página 5 de 10
Indicação do caminho Ferramentas 🡪 Placas 🡪 NodeMCU (ESP-12E Module)
Se você chegou até aqui, a partir de agora, já pode utilizar o Arduino IDE para programar o seu ESP8266!
CÓDIGO DESENVOLVIDO
O código desenvolvido pode ser visto a seguir. Ao longo da programação, foram feitos diversos comentários com o intuito de
explicar o que foi feito e facilitar o seu entendimento.
Página 6 de 10
COMPILAÇÃO
Página 7 de 10
Chegamos na melhor parte: a hora de colocar a mão na massa! No seu Arduino IDE, crie um novo arquivo e cole lá o código
mostrado anteriormente.
Em seguida, altere o nome e a senha da rede wifi que estão no programa para as informações da rede que você está utilizando. Esta
etapa é muito importante! Sem ela, o projeto não irá funcionar.
Por fim, selecione a placa NodeMCU (ESP-12E Module) e a porta USB adequada.
Agora, carregue o código na placa. Após o carregamento, abra o monitor serial. Se tudo deu certo, uma tela como esta deve aparecer.
Monitor serial após o carregamento do código na placa
PÁGINA HTML PARA CONTROLE DO LED
Conforme falamos, o controle do led vai ser feito através de um WEB Server.
Para acessa-lo, copie o link que está no monitor serial e cole no seu navegador de internet.
O acesso pode ser feito através de um computador ou celular. Em qualquer uma das duas formas, o dispositivo deve estar conectado à
mesma rede wifi que o ESP8266.
Se estiverem conectados em rede diferentes, você não conseguirá fazer o controle do led!
Sua tela ficará assim:
WEB Server indicando estado do led como desligado
Página 8 de 10
Led desligado
Nesta tela, podemos verificar o estado do led. Além disso, existem dois botões que permitem ligar ou desligar o led. Hora de brincar
um pouco! Clique no botão ligar e veja o que acontece.
Uma tela como esta deverá aparecer, desta vez indicando que o led está ligado. Ahhh, o led também deve ligar!
WEB Server indicando estado do led como ligado
Página 9 de 10
Led ligado
Agora, clique no botão desligar e veja o acontece.
Deu tudo certo? Sim? Que bom! Agora, faça modificações no código desenvolvido para incluir mais leds. Edite o WEB Server para
ficar com a sua cara. Enfim, divirta-se!
CONSIDERAÇÕES FINAIS
Escolher com qual placa de desenvolvimento você vai trabalhar nunca é uma tarefa fácil. Acredite: nós sabemos disto!
Esperamos que com esta simples aplicação você tenha conseguido perceber o enorme potencial da placa de desenvolvimento
NodeMCU ESP8266 quando o assunto é envio e recebimento de dados via wifi.
Não é à toa que a utilizamos na equipe Cheetah E-Racing! Ficou com alguma dúvida? É só revisar este material.
Página 10 de 10