INTERNET DAS
COISAS
COM ESP8266
1
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Introdução
Neste eBook você irá aprender a criar uma automação utilizando o Módulo
ESP8266. Este módulo pode conectar o seu Arduino a uma rede WiFi ou até
mesmo utilizar somente ele, pois possui dois pinos de entrada e saída. Você
pode usá-lo como Ponto de Acesso ou como Estação. Este módulo trabalha
com uma tensão de 3,3V, para isso vamos utilizar um adaptador FTDI.
Materiais necessários:
1 x ESP01
1 x Adaptador FTDI
2
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
USB
1 x Protoboard
3
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
LED
4
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Pushbutton
5
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Configuração
Uma janela se abrirá. Copie a URL abaixo e cole no campo “Additional Boards
Manager URLs”:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
6
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
7
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
8
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
9
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Pronto, a IDE já está configurada. Agora temos que fazer as conexões para
conseguirmos programar a ESP8266.
Vamos ver a pinagem da placa:
10
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
11
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
ESP8266 Pinos
TX RX do FTDI
CH_PD Pushbutton
RST -
3,3V VCC do FTDI
GND GND do FTDI
GPIO2 Para o Resistor do LED
GPIO0 GND*
RX TX do FTDI
* O fio cinza ligado ao GPIO0 fica no GND quando for gravar o código.
Assim que terminar, remova-o para que o código não seja apagado.
12
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Programação
Parte 1 - Nesta parte iremos defini-lo como Ponto de Acesso (Access Point), ou
seja, nós iremos conectar o nosso celular com o Wifi gerado pela placa.
Também iremos criar uma pequena página HTML para fazer a interface.
Vamos abrir novamente a IDE de Arduino (no meu caso eu coloquei um tema
diferente na minha, por isso está preta). O primeiro passo será adicionar as
bibliotecas que vamos utilizar:
Agora vamos definir o nome da nossa rede (ssid) e a senha (password) para
conseguirmos acessá-la (O nome e a senha ficam ao seu critério):
13
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Vamos definir para ela usar um servidor na porta 80. Esta escolha é porque a
porta 80 é uma porta padrão Nós vamos acessar esse servidor, após nos
conectarmos a rede da ESP8266, pelo IP: http://192.168.4.1:
No Setup, vamos criar a nossa página web com dois botões (esta página foi
desenvolvida em HTML), inicializar a Serial, para conseguirmos enxergar no
Monitor Serial o que está acontecendo em tempo real com a ESP. Também
vamos definir o pino que o LED está conectado como saída e colocarmos em
nível lógico 0:
14
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Continuando no Setup, vamos fazer com que a placa gere o Wifi que
previamente configuramos. Ela também mostrará na Serial qual o seu IP, mas
como não configuramos nenhum, será o padrão (192.168.4.1):
15
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
No Loop teremos apenas uma instrução. Ela serve para ficar lidando com a
conexão do Servidor com o Cliente, no caso entre a ESP e o navegador:
Agora é só compilar o código e carregar para a ESP e assim que finalizar, abrir
as configurações do WiFi do seu celular ou notebook, conectar-se a rede e a
senha que você definiu, abrir o navegador e digitar o IP 192.168.4.1. A nossa
página ficará assim:
Para deixa-la mais agradável e personalizada, você pode estudar mais sobre
HTML e CSS.
16
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Agora no Setup vamos tirar a parte da configuração em que ele gera o WiFi e
vamos inserir uma instrução para ele conectar-se ao seu WiFi:
E por último vamos definir um IP fixo para a ESP, o que facilitará a nossa
conexão a ela, pois caso deixarmos um IP dinâmico, sempre teremos que
pesquisar qual foi atribuído à ela. O gateway é o IP do seu roteador, a subnet
você pode deixar a mesma:
Pronto! Com essas alterações a sua placa ESP irá conectar-se diretamente ao
WiFi da sua casa. Agora você não precisa mais conectar seu celular ou
notebook à rede gerada por ela.
17
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Vamos agora desenvolver um Aplicativo para Android que iremos utilizar para
controlar a nossa ESP!
Não vou explicar com detalhes aqui o início do desenvolvimento, pois explico o
passo a passo no curso de Automação com Arduino e Android. Caso ainda não
tenha aprendido a desenvolver o App do zero, vá lá e depois volte aqui!
18
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Agora na área de Bloco, vamos criar uma variável chama ip e vamos colocar
um texto à ela. Neste texto colocaremos o IP que definimos como fixo na
programação da ESP:
19
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Agora vamos definir a função que o botão irá executar quando clicarmos nele.
Então assim que clicar, precisamos ajustar a URL para simularmos o
navegador mandando as informações para a ESP:
20
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
E montamos assim:
21
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Para o próximo botão, podemos copiar o bloco clicando com o botão direito e
indo a duplicar e mudar apenas o nome do botão e a palavra para off:
22
EngEasier – Todos Direitos Reservados
Internet das Coisas com ESP8266
Baixe ele para o seu celular, ligue sua ESP, espere ela conectar a rede da sua
casa e controle o LED pelo seu aplicativo!
No lugar do LED você pode conectar qualquer coisa que queira ligar e desligar
para aumentar a complexidade da sua Automação. Use o conhecimento
adquirido por todo o curso e desenvolva automações completas!
23
EngEasier – Todos Direitos Reservados