Você conhece a força do sinal
WiFi de um ESP? Já pensou em pegar um ESP01, que tem uma pequena antena, e
colocar dentro de uma caixinha de tomada? Será que aquilo vai funcionar? Então,
para acabar com esses questionamentos eu fiz diversos testes comparando vários
tipos do microcontrolador, inclusive do ESP32 com o ESP8266. Avaliamos o
desempenho dos dispositivos em duas distâncias: 1 e 15 metros, ambas com uma
parede no meio. Tudo isso para matar essa curiosidade que eu mesmo tinha. Qual
o resultado? Destaque para o ESP02 e o ESP32. Os detalhes eu mostro para você
neste vídeo abaixo. Confira:
Além do resultado da
comparação dos chips ESP, vou falar para você hoje sobre como programar
diferentes chips ESP como Ponto de Acesso (cada um em um canal diferente), como
verificar a potência de sinal de cada um deles através de um aplicativo no
smartphone e, por fim, vamos fazer uma análise geral sobre a força do sinal das
redes encontradas.
Abaixo colocamos a pinagem de
cada um dos microcontroladores que analisamos:
ESP01 |
ESP02 |
ESP201 |
ESP12 |
NodeMCU ESP12E |
NodeMCU ESP-WROOM-32
WiFi Analyzer
O WiFi Analyzer é um
aplicativo que encontra as redes WiFi disponíveis ao nosso redor. Como ele
também mostra a intensidade do sinal em dBm e o canal para cada rede, vamos
utilizá-lo para fazer nossa análise, o que é possível através de visualização nos
modos: lista ou gráfico.
O aplicativo pode
ser baixado na Google Play Store através do link:
Mas, como programar os chips ESP que não têm entrada USB?
Para gravar seu código no
ESP01, assista a esse vídeo GRAVANDO NO ESP01 e veja todos os passos necessários. O procedimento serve de exemplo já que é
parecido com todos os demais tipos de microcontrolador.
ESP02, ESP201, ESP12
FTDI |
Assim como no ESP01, você
precisará de um adaptador FTDI, como da foto acima, para gravar. A seguir
mostrarei a ligação necessária para cada um destes ESPs.
ESP02 |
ESP201 |
ESP12 |
IMPORTANTE: Após a gravação do
programa no ESP, lembre-se de remover o GPIO_0 do GND.
Bibliotecas
Caso você escolha utilizar o
ESP8266, adicione a seguinte biblioteca “ESP8266WiFi”.
Basta acessar “Sketch >>
Incluir Bibliotecas >> Gerenciar Bibliotecas...”
Esse procedimento não é
necessário ao ESP32, pois este modelo já vem com sua biblioteca instalada.
Código
Utilizaremos um mesmo código
em todos os chips ESP. As únicas diferenças entre eles serão o nome do ponto de
acesso e o canal.
Lembrando que o ESP32 utiliza
uma biblioteca diferente dos demais: a “WiFi.h”. Os outros modelos utilizam a
“ESP8266WiFi.h”.
*A biblioteca WiFi.h do ESP32,
vem junto com o pacote de instalação da placa na IDE do Arduino.
//descomentar a biblioteca de acordo com seu chip ESP //#include <ESP8266WiFi.h> //ESP8266 //#include <WiFi.h> //ESP32
Configurações iniciais
Aqui temos os dados que
mudarão de um ESP para outro, o ssid que é o nome de nossa rede, o password
que é a senha da rede e, por fim, o channel, que é o canal que a rede
ficará operando.
/* Nome da rede e senha */ const char *ssid = "nomdeDaRede"; const char *password = "senha"; const int channel = 4; /* Endereços para configuração da rede */ IPAddress ip(192, 168, 0, 2); IPAddress gateway(192, 168, 0, 1); IPAddress subnet(255, 255, 255, 0);
Setup
No setup, vamos inicializar
nosso ponto de acesso e setar as configurações.
Detalhe para o construtor, que
podemos definir o CANAL em que a rede criada irá operar.
WiFi.softAP(ssid, password,
channel);
void setup() { delay(1000); Serial.begin(115200); Serial.println(); Serial.print("Configuring access point..."); /* Você pode remover o parâmetro "password", se quiser que sua rede seja aberta. */ /* Wifi.softAP(ssid, password, channel); */ WiFi.softAP(ssid, password, channel); /* configurações da rede */ WiFi.softAPConfig(ip, gateway, subnet); IPAddress myIP = WiFi.softAPIP(); Serial.print("AP IP address: "); Serial.println(myIP); } void loop() { }
Experimento
1. Todos
os chips foram ligados de maneira simultânea, um ao lado do outro.
2. O
experimento foi feito em um ambiente de trabalho, com outras redes
disponíveis, logo, poderemos ver outros sinais junto aos nossos.
disponíveis, logo, poderemos ver outros sinais junto aos nossos.
3. Cada
um dos chips está em um canal diferente.
4. Utilizando
o aplicativo, verificamos o gráfico gerado de acordo com a intensidade
do sinal, tanto bem perto dos chips quanto em um ambiente mais afastado
com paredes no caminho.
do sinal, tanto bem perto dos chips quanto em um ambiente mais afastado
com paredes no caminho.
Analisando os Sinais
Próximo aos chips - 1 metro
Aqui mostramos os primeiros
apontamentos do aplicativo. Neste teste os melhores desempenhos foram do ESP02
e do ESP32.
Afastado dos chips - 15 metros
Nesta segunda etapa o destaque
novamente o ESP02, o qual conta com uma antena externa própria.
Gráfico de barras - 1 metro de
distância
Para facilitar a visualização,
montamos esse gráfico que indica o seguinte: quanto menor a barra mais potente
é o sinal. Portanto, de novo aqui temos o melhor desempenho do ESP02, que vem
seguido do ESP32 e do ESP01.
Gráfico de barras - 15 metros
de distância
Neste gráfico retomamos o
melhor desempenho do ESP02, seguido pelo ESP32, em uma distância mais longa.
Agora, na imagem abaixo eu
mostro para você como cada um dos chips está operando em um canal diferente.
Conclusões
- O ESP02 e o ESP32 se
destacam quando analisamos o sinal, tanto perto quanto mais afastado.
- O ESP01 é tão potente quanto
o ESP32 ao analisarmos de perto, porém, ao nos afastarmos dele, acaba perdendo
muito sinal.
- Os outros chips acabam por
perder mais potência à medida que nos afastamos.
Faça o download dos arquivos:
6 Comentários
Muito bom!!!!
ResponderExcluirParabéns
Só uma dúvida, será que consigo fazer o esp 8266 de um repetidor Wifi?
ResponderExcluirESP8266 único funciona como
Excluirrepetidor WiFi com sucesso
Fantástico post!!!
ResponderExcluirComprei 150 wemos d1 mini, não tem como colocar antena externa pois não é a versão pro. Há como eu melhorar a qualidade do sinal? Qual a melhor forma de fazer isso?
As placas, infelizmente, tem qualidade duvidosa e estou tendo problemas há 3 metros do roteador!
VAleu!!!
Caso esteja alimentando pela porta USB do PC poderá ter problemas devido a corrente consumida, use uma fonte externa com um capacitor cerâmico na entrada da alimentação.
ExcluirTeste com outro roteador.
Boa noite, tudo bem?
ResponderExcluirProfessor, tenho um ESP07 que quero coletar dados de temperatura e transmitir os dados para a nuvem. Assim, segui os passos de ligação do ESP07 ao FTDI, porém, ao término de transferência e remoção do GPIO_0 do GND, vejo pelo monitor serial que o ESP tenta conectar ao meu wifi (2.4), mas não consegue. Quando transfiro o mesmo código para o meu ESP D1 mini, ele funciona perfeitamente. O senhor sabe o que poderia ser este erro? Agradeço pela atenção!