Como conectar o Esptop 10 com Wi -Fi usando Arduino IDE

Como conectar o Esptop 10 com Wi -Fi usando Arduino IDE
O ESP32 é uma plataforma de prototipagem eletrônica que pode controlar vários hardware e executa o código de acordo com as instruções fornecidas. O ESP32 é famoso por sua aplicação em projetos baseados em IoT. O ESP32 vem com drivers Wi-Fi pré-instalados e um módulo Bluetooth duplo para fornecer conectividade sem fio. Vamos ver como conectar o ESP32 com qualquer rede wifi.

Modos Wi -Fi ESP32

Esp32 wifi pode ser usado em três modos diferentes. Os modos a seguir podem ser chamados usando o Wi-fi.modo() função definindo o modo desejado dentro do argumento desta função.

Modo wifi Função
Estação Wi-fi.modo (wifi_sta)
Ponto de acesso Wi-fi.modo (wifi_ap)
Estação + ponto de acesso Wi-fi.modo (wifi_sta_ap)

Estação Wi -Fi

O uso do ESP32 como uma estação WiFi permite que você o use como um roteador WiFi em casa. Quando o ESP32 está conectado a uma rede usando um roteador WiFi, o roteador atribui um endereço IP exclusivo à placa ESP32. Para trocar informações com outro hardware conectado ao mesmo roteador, temos que chamar seu endereço IP exclusivo no código ESP32.

Depois que o roteador estiver conectado à placa ESP32, ele tem a mesma conexão com a Internet que outros dispositivos. Usando a Internet, podemos fazer upload de dados para o servidor ou controlar outros dispositivos conectados ao mesmo roteador wifi. Também podemos ler dados de APIs como dados climáticos e também podemos publicar imagens ou ícones de dados em servidores da web.

Conecte o ESP32 como estação WiFi

Para conectar a placa ESP32 como uma estação Wi-Fi, a primeira coisa que precisamos fazer é definir o modo WiFi usando o comando mencionado:

Wi-fi.modo (wifi_sta)

Se o ESP32 estiver conectado a qualquer outra rede para que a rede esteja no modo de estação para usá -la com ESP32.

Próximo usando Wi-fi.começar() função e passando o SSID e a senha da rede como seu argumento, podemos conectar a qualquer rede. A seguir, a sintaxe da placa ESP32 para conectar-se a uma rede Wi-Fi no modo de estação:

Wi-fi.Begin (senha do SSID)

Quando a conexão for estabelecida, a seguinte saída aparecerá:

enquanto (wifi.status() != Wl_connected)

Ponto de acesso

Quando o ESP32 está no modo de ponto de acesso, qualquer dispositivo com wifi pode ser conectado a ele como um roteador convencional. Ele também pode fornecer aos dispositivos uma conexão com a Internet e podemos construir nossa própria rede Wi-Fi em torno dela. No modo de ponto de acesso, podemos controlar dispositivos independentemente de ter um roteador Wi-Fi separado.

O ponto de acesso ESP32 não é como o roteador Wi-Fi normal, porque é apenas a opção de conectividade é sem fio. O ESP32 não suporta conexão de fio para a Internet como um roteador normal, por isso é chamado de SOFT AP (Ponto de acesso suave).

Conecte o ESP32 como ponto de acesso

Primeiro defina o modo WiFi como ponto de acesso usando o comando fornecido:

Wi-fi.modo (wifi_ap)

Em seguida, usando o softap () A função fornece um nome ao SSID à sua rede e senha do ESP32, quais outros dispositivos necessários para se conectar ao ESP32. Ambos são passados ​​como argumentos para a função Softap (). Caso se nenhuma senha for necessária, defina -a como Nill.

Wi-fi.softap (ssid, senha);

Existem alguns parâmetros opcionais que também podemos passar para o softap () função.

Wi-fi.softap (const char* ssid, const char* senha, int canal, int ssid_hidden, int max_connection)
  • SSID: Defina o ponto de acesso (máximo de 63 caracteres)
  • senha: Senha do ponto de acesso (min 8 caracteres)
  • canal: Canais Wi-Fi (1-13)
  • ssid_hidden: 0 para transmitir SSID e 1 para ocultar o SSID
  • max_connection: O cliente máximo pode ser conectado (1-4)

Estação + ponto de acesso

Para definir o ESP32 como estação Wi-Fi e ponto de acesso, siga o comando fornecido abaixo:

Wi-fi.modo (wifi_ap_sta)

Digitalize uma rede wifi

Para digitalizar as conexões Wi-Fi próximas, usaremos um exemplo de digitalização Wi-Fi ESP32 para garantir que a placa ESP32 esteja instalada no Arduino IDE. Para ler sobre a instalação do ESP32 no Arduino IDE, clique aqui.

Vá para: Arquivos> Exemplos> WiFi> WiFi Scan:

O código a seguir será aberto em uma nova janela. Selecione a porta COM do ESP32 e faça o upload do código:

#include "wifi.h "
configuração void ()

Serial.começar (115200);
// Defina o WiFi ESP32 para o modo de estação
Wi-fi.modo (wifi_sta);
Wi-fi.desconectar();
atraso (100);
Serial.println ("Setup Coned");

Void Loop ()

Serial.println ("scan start");
// Wi-fi.Scannetworks dará às redes Wi -Fi Total encontradas
int n = wifi.scannetworks ();
Serial.println ("Scan DOED");
if (n == 0)
Serial.println ("Nenhuma rede encontrada");
outro
Serial.impressão (n);
Serial.println ("redes encontradas");
para (int i = 0; i < n; ++i)
// Imprima o nome do SSID e a força do sinal
Serial.impressão (i + 1);
Serial.imprimir(": ");
Serial.Imprimir (wifi.Ssid (i));
Serial.imprimir(" (");
Serial.Imprimir (wifi.Rssi (i));
Serial.imprimir(")");
Serial.println ((wifi.EncryptionType (i) == wifi_auth_open)?"": "*");
atraso (10);


Serial.println ("");
// atraso para 5 segundos
atraso (5000);

Aqui no código acima Wi-fi.scannetworks () Retornará a rede total disponível dentro da faixa de placas ESP32.

Depois que todas as redes forem digitalizadas, podemos acessar seu SSID usando o comando abaixo:

Serial.Imprimir (wifi.Ssid (i));

O Wi-fi.Rssi () A função nos dará o RSSI (indicador de força de sinal recebido) de uma rede. É um nível estimado de potência ou força de sinal que um ESP32 está recebendo de um ponto de acesso.

Saída

A seguir, a saída é impressa no monitor serial que exibe todas as redes disponíveis que a placa ESP32 digitalizou:

Conecte-se a uma rede Wi-Fi

Para conectar o ESP32 com uma rede Wi-Fi, precisamos conhecer o SSID e sua senha. Além disso, a rede que precisa ser conectada deve entrar dentro da faixa de ESP32. Para ver se um certo Wi-Fi está sob o alcance esp32 ou não executa a varredura de exemplo dada acima.

Carregue o código abaixo para conectar a placa ESP32 à rede Wi-Fi:

#incluir
const char* ssid = "Seu nome SSID";
const char* senha = "senha ssid";
Void Setup ()
Serial.começar (115200);
atraso (1000);
Wi-fi.modo (wifi_sta);
Wi-fi.BEGIN (SSID, senha);
Serial.println ("\ NConnecting");
enquanto (wifi.status() != Wl_connected)
Serial.imprimir(".");
atraso (100);

Serial.println ("\ nConnected to the WiFi Network");
Serial.print ("Local ESP32 IP:");
Serial.println (wifi.localip ());

void loop ()

O código começa incluindo o Wi-fi.h biblioteca. Em seguida, inserimos o SSID e a senha da rede à qual queremos conectar. Em seguida, o ESP32 é colocado no modo de estação, que é opcional, pode -se ignorar porque o ESP32 por padrão vem no modo de estação.

Em seguida, usando o Wi-fi.BEGIN (SSID, senha); A função ESP32 procurará a rede definida e tentará conectar -se. Depois que o ESP32 estiver conectado, o endereço IP da rede será exibido no monitor serial:

Obtenha informações de rede Wi-Fi

Para verificar os detalhes da rede Wi-Fi à qual a placa ESP32 está conectada a seguir o código será usado:

#incluir
const char* ssid = "Seu nome SSID";
const char* senha = "senha ssid";
void get_network_info ()
if (wifi.status () == wl_connected)
Serial.print ("Esp32 conectado a");
Serial.println (ssid);
Serial.println ("bssid:" + wifi.Bssidstr ());
Serial.print ("gateway ip:");
Serial.println (wifi.IP do gateway());
Serial.print ("máscara de sub -rede:");
Serial.println (wifi.subnetMask ());
Serial.println ((string) "rssi:" + wifi.Rssi () + "dB");
Serial.print ("ESP32 IP:");
Serial.println (wifi.localip ());


Void Setup ()
Serial.começar (115200);
atraso (1000);
Wi-fi.BEGIN (SSID, senha);
Serial.println ("\ NConnecting");
enquanto (wifi.status() != Wl_connected)
Serial.imprimir(".");
atraso (100);

Serial.println ("\ nConnected to the WiFi Network");
get_network_info ();

void loop ()

A saída nos fornecerá as seguintes informações relacionadas à rede Wi-Fi conectada ESP32:

  • SSID da rede conectada.
  • Força do sinal Wi-Fi usando Rssi () função.
  • Endereço MAC da rede Wi-Fi usando Bssidstr ().
  • Endereço IP local usando Localip () função.
  • A máscara de sub -rede usando o SubnetMask () função.

Todos esses resultados podem ser vistos no monitor serial:

Conclusão

Esp32 é uma placa de microcontrolador que vem com Wi-Fi e suporte duplo de Bluetooth. Este artigo destaca as principais funções usadas para controlar o Wi-Fi do ESP32. A placa ESP32 pode trabalhar em três modos de Wi-Fi e pode ser conectada a qualquer rede enquanto conhece o SSID e a senha da rede. Este artigo ajudará no controle do ESP32 Wi-Fi usando o Arduino IDE.