Weboldal keresés

Wi-Fi hálózatok beolvasása ESP32-ben Arduino IDE használatával


Az ESP32 egy elektronikus prototípusként sokoldalú platform, amely képes irányítani több hardvert és végrehajtani a megadott utasítások alapján a kódot. Az ESP32 híres IoT alapú projektekben való alkalmazásáról. Az ESP32 előre telepített WiFi illesztőprogramokkal és egy dual Bluetooth modulral rendelkezik, hogy vezeték nélküli kapcsolatot biztosítson. Nézzük meg, hogyan lehet az ESP32 WiFi-t beolvasni az elérhető hálózatokhoz.

Hogyan lehet WiFi hálózatot beolvasni ESP32-vel az Arduino IDE használatával

A közeli Wi-Fi kapcsolatok kereséséhez egy ESP32 Wi-Fi beolvasási példát fogunk használni, hogy biztosítsuk, hogy az ESP32 lap telepítve van az Arduino IDE-ben. További információt az ESP32 Arduino IDE-vel való telepítéséről itt talál.

Menj ide: Fájlok>Példák>WiFi>WiFi Keresés

A következő kód új ablakban fog megnyílni. Válaszd ki az ESP32 COM-portját, és töltsd fel a kódot:

#include "WiFi.h"
void setup()
{
Serial.begin(115200);
// Set ESP32 wifi to station mode
WiFi.mode(WIFI_STA);
WiFi.disconnect();
delay(100);
Serial.println("Setup done");
}
void loop()
{
Serial.println("scan start");
// WiFi.scanNetworks will give total found wifi networks
int n = WiFi.scanNetworks();
Serial.println("scan done");
if (n == 0) {
Serial.println("no networks found");
} else {
Serial.print(n);
Serial.println(" networks found");
for (int i = 0; i < n; ++i) {
// Print SSID and signal strength 
Serial.print(i + 1);
Serial.print(": ");
Serial.print(WiFi.SSID(i));
Serial.print(" (");
Serial.print(WiFi.RSSI(i));
Serial.print(")");
Serial.println((WiFi.encryptionType(i) == WIFI_AUTH_OPEN)?" ":"*");
delay(10);
        }
    }
Serial.println("");
// delay of 5 sec
delay(5000);
}

Itt a fenti kódban a WiFi.scanNetworks() visszaadja az ESP32 táblák hatósugarában elérhető összes hálózatot.

Miután az összes hálózatot beolvastuk, az alábbi parancs segítségével elérhetjük az SSID-jüket:

Serial.print(WiFi.SSID(i));

A WiFi.RSSI() függvény megadja nekünk egy hálózat RSSI-jét (Received Signal Strength Indicator - Kapott Jelszint Indikátor). Ez egy becsült teljesítményszint vagy jelszőrség, amelyet az ESP32 kap a routertől.

Kimenet

A következő kimenet jelenik meg a soros monitoron, amely megjeleníti az összes elérhető hálózatot, amelyet az ESP32-es lapka beolvasta:

Csatlakozás egy WiFi hálózathoz

Az ESP32 WiFi hálózathoz való csatlakoztatásához ismernünk kell az SSID-t és a hozzá tartozó jelszót. Ezen kívül a csatlakoztatni kívánt hálózatnak az ESP32 hatókörében kell lennie. Annak ellenőrzéséhez, hogy egy adott WiFi az ESP32 hatókörébe tartozik-e, futtassa a fenti példa vizsgálatát.

Töltse fel az alábbi kódot az ESP32 desszkalap WiFi hálózathoz való csatlakoztatásához:

#include <WiFi.h>
const char* ssid = "Your SSID NAME";
const char* password = "SSID PASSWORD";
void setup(){
Serial.begin(115200);
delay(1000);
WiFi.mode(WIFI_STA); 
WiFi.begin(ssid, password);
Serial.println("\nConnecting");
while(WiFi.status() != WL_CONNECTED){
Serial.print(".");
delay(100);
}
Serial.println("\nConnected to the WiFi network");
Serial.print("Local ESP32 IP: ");
Serial.println(WiFi.localIP());
}
void loop(){}

A kód a WiFi.h könyvtár beillesztésével kezdődik. Ezután megadjuk a csatlakozni kívánt hálózat SSID-jét és jelszavát. Következő lépésként az ESP32-t állomás üzemmódba állítjuk, ami opcionális, ezt figyelmen kívül lehet hagyni, mivel az ESP32 alapértelmezés szerint állomás üzemmódban van.

A következő lépésben a WiFi.begin(ssid, jelszó); függvény segítségével az ESP32 megkeresi a definiált hálózatot és megpróbál csatlakozni. Miután az ESP32 csatlakozott, a hálózat IP címe megjelenik a soros monitoron:

GYIK

K1: Hány WiFi eszköz csatlakozhat az ESP32-höz?

Alapértelmezetten az ESP32 4 WiFi eszközt támogat, de AP módban akár 10 eszközig is elmehet.

Q2: Van hotspot az ESP32-nek?

Igen, az ESP32 csatlakozhat bármely WiFi hálózathoz, és emellett mások számára hozzáférési pontként is működhet.

Q3: Tud-e az ESP32 routerként működni?

Igen, az ESP32 hozzáférési pont módban önállóan működik mint egy router. Az ESP32 WiFi támogatja az állomás módot, a hozzáférési pont módot, vagy működhet mindkettőben.

Következtetés

Az ESP32 egy mikrokontroller lap, amely WiFi- és dupla Bluetooth-támogatással rendelkezik. Ez a cikk bemutatja a funkciót, amely az ESP32 közelében elérhető WiFi-hálózatok beolvasására szolgál. Az ESP32 lap bármely hálzathoz csatlakoztatható, amennyiben ismeri a hálzat SSID-jét és jelszavát. Ez a leírás segít Önnek megtalálni a hálzatot, amellyel az ESP32 WiFi-n szeretne csatlakozni az Arduino IDE segítségével.