Innehållsförteckning:
- Steg 1: PINOUT
- Steg 2: WiFiManager
- Steg 3: Hur det fungerar
- Steg 4: Bibliotek
- Steg 5: Funktioner
- Steg 6: Montering
- Steg 7: Kod
- Steg 8: Inställning
- Steg 9: Slinga
- Steg 10: Återuppringning
Video: ESP8266 och ESP32 Med WiFiManager: 10 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Känner du till WiFiManager? Det är ett bibliotek som fungerar som en trådlös anslutningshanterare, och med det har vi ett enklare sätt att konfigurera både en åtkomstpunkt och en station. Jag har fått flera förslag för att diskutera detta ämne; så idag kommer jag att presentera dig för detta bibliotek och dess funktioner. Jag kommer också att demonstrera hur den används med både ESP32 och ESP8266.
Steg 1: PINOUT
Här visar jag PINOUT för de två enheterna som vi kommer att använda:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
Steg 2: WiFiManager
WiFiManager är egentligen inget annat än ett bibliotek skrivet ovanpå WiFi.h för enkel hantering av trådlösa anslutningar. Kom ihåg att med det har vi en större möjlighet att konfigurera både en åtkomstpunkt och en station. För stationsläge konfigurerar vi via en portal i webbläsaren.
Några funktioner:
• Det beror på automatisk anslutning
• Initiering av icke-automatisk konfigurationsportal
• Fungerar selektivt i dubbelläge
Steg 3: Hur det fungerar
ESP kommer att initiera en WiFi-konfigurationsportal när den är ansluten och kommer att spara konfigurationsdata i icke-flyktigt minne. Därefter startar konfigurationsportalen bara igen om du trycker på en knapp i ESP -modulen.
Här kan du kontrollera konfigurationsflödet och följa detta steg för steg:
1. Använd en WiFi-aktiverad enhet med en webbläsare, anslut till den nyskapade åtkomstpunkten och ange adressen 192.168.4.1.
2. På skärmen har du två alternativ för att ansluta till ett befintligt nätverk:
• Konfigurera WiFi
• Konfigurera WiFi (ingen skanning)
3. Välj ett av nätverken och ange lösenordet (om det behövs). Spara sedan och vänta tills ESP startar om.
4. I slutet av starten försöker ESP ansluta till det sparade nätverket. Om du inte kan göra detta aktiverar du en åtkomstpunkt.
Steg 4: Bibliotek
Lägg till biblioteket "WifiManager-ESP32".
Gå till https://github.com/zhouhan0126/WIFIMANAGER-ESP32 och ladda ner biblioteket.
Packa upp filen och klistra in den i biblioteksmappen i Arduino IDE.
C: / Program Files (x86) / Arduino / libraries
Lägg till "DNSServer-ESP32" -bibliotek.
Gå till https://github.com/zhouhan0126/DNSServer---esp32 länken och ladda ner biblioteket.
Packa upp filen och klistra in den i biblioteksmappen i Arduino IDE.
C: / Program Files (x86) / Arduino / libraries
Lägg till biblioteket "WebServer-ESP32".
Gå till länken https://github.com/zhouhan0126/WebServer-esp32 och ladda ner biblioteket.
Packa upp filen och klistra in den i biblioteksmappen i Arduino IDE.
C: / Program Files (x86) / Arduino / libraries
Notera:
WiFiManager-ESP32-biblioteket har redan de inställningar som fungerar med ESP8266, så vi använder bara detta istället för två WiFiManager-libs (en för varje typ av chip).
Som vi kommer att se senare är ESP8266WiFi och ESP8266WebServer bibliotek som vi inte behöver ladda ner, eftersom de redan kommer när vi installerar ESP8266 i Arduino IDE.
Steg 5: Funktioner
Här är några funktioner som WiFiManager erbjuder oss.
1. autoConnect
AutoConnect -funktionen är ansvarig för att skapa en åtkomstpunkt. Vi kan använda den på tre sätt.
• autoConnect ("nätverksnamn", "lösenord"); - skapar ett nätverk med det definierade namnet och lösenordet.
• autoConnect ("nätverksnamn"); - skapar ett öppet nätverk med det definierade namnet.
• autoConnect (); - skapar ett öppet och automatiskt namngivet nätverk med namnet 'ESP' + chipID.
2. startConfigPortal
Funktionen startConfigPortal ansvarar för att skapa en åtkomstpunkt utan att försöka ansluta till ett tidigare sparat nätverk.
• startConfigPortal ("nätverksnamn", "lösenord"); - skapar ett nätverk med det definierade namnet och lösenordet.
• startConfigPortal (); - skapar ett öppet och automatiskt namngivet nätverk med namnet 'ESP' + chipID.
3. getConfigPortalSSID
Returnerar portalens SSID (åtkomstpunkt)
4. getSSID
Detta returnerar SSID för nätverket som det är anslutet till.
5. getPassword
Detta returnerar lösenordet för nätverket som det är anslutet till.
6. setDebugOutput
SetDebugOutput -funktionen ansvarar för utskrift av felsökningsmeddelanden på den seriella bildskärmen. Dessa meddelanden är redan definierade i biblioteket. När du går igenom funktionerna kommer data att skrivas ut.
Som standard är denna funktion inställd på TRUE. Om du vill inaktivera meddelandena ställer du bara in funktionen på FALSE.
7. setMinimumSignalQuality
Funktionen setMinimumSignalQuality ansvarar för filtrering av nätverk baserat på signalkvalitet. Som standard visar WiFiManager inte inloggningsnätverk under 8%.
8. setRemoveDuplicateAPs
Funktionen setRemoveDuplicateAPs ansvarar för att ta bort nätverksduplikat.
Som standard är den inställd på TRUE.
9. setAPStaticIPConfig
SetAPStaticIPConfig -funktionen är ansvarig för att ställa in de statiska adressinställningarna i åtkomstpunktsläge.
(IP, GATEWAY, SUBNET)
10. setSTAStaticIPConfig
Funktionen setSTAStaticIPConfig är ansvarig för att ställa in de statiska adressinställningarna i stationläge.
(IP, GATEWAY, SUBNET)
Du måste lägga till kommandot innan autoConnect !!!
11. setAPCallback
SetAPCallback -funktionen ansvarar för att informera dig om att AP -läge har startat.
Parametern är en funktion som måste skapas för att indikera den som ett återuppringning;
12. setSaveConfigCallback
Funktionen setSaveConfigCallback ansvarar för att informera dig om att en ny konfiguration har sparats och att anslutningen har slutförts.
Parametern är en funktion att skapa och anger detta som en allback.
Du måste lägga till kommandot innan autoConnect !!!
Steg 6: Montering
Exempel
I vårt exempel kommer vi att skapa en åtkomstpunkt med ESP (koden fungerar både ESP8266 och ESP32). Efter skapandet av AP kommer vi åt portalen via IP 192.168.4.1 (som är standard för åtkomst till den). Så låt oss få tillgängliga nätverk, välj ett och spara. Därifrån startar ESP om och försöker ansluta till det, och sedan fungerar det som en station och inte längre som en åtkomstpunkt.
När du har gått in i stationsläge kan du bara göra ESP -återgång till åtkomstpunktsläge med knappen.
Steg 7: Kod
Bibliotek
Låt oss först definiera de bibliotek som vi kommer att använda.
Observera att vi har kommandona #if definierade, #else och #endif. De är villkorade för att inkludera nödvändiga bibliotek som avser chipet. Denna del är oerhört viktig för att köra samma kod på både ESP8266 och ESP32.
#if definierat (ESP8266)
#include // ESP8266 Core WiFi Library #else #include // ESP32 Core WiFi Library #endif
#if definierat (ESP8266)
#include // Lokal WebServer som används för att betjäna konfigurationsportalen
#annan
#include // Lokal DNS-server som används för att omdirigera alla förfrågningar till konfigurationsportalen (https://github.com/zhouhan0126/DNSServer---esp32)
#endif
#include // Lokal WebServer som används för att betjäna konfigurationsportalen (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Configuration Magic (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORIGINAL)
Steg 8: Inställning
I installationen konfigurerar vi vår WiFiManager på det enklaste sättet. Låt oss bara definiera återuppringningarna och skapa nätverket.
const int PIN_AP = 2;
void setup () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // declaração do objeto wifiManager WiFiManager wifiManager;
// utilizando esse comando, as configurações são apagadas da memória // caso tiver salvo alguma rede para conectar automaticamente, ela é apagada. // wifiManager.resetSettings (); // callback para quando entra em modo de configuração AP wifiManager.setAPCallback (configModeCallback); // callback para quando se conecta em uma rede, ou seja, quando passa a trabalhar em modo estação wifiManager.setSaveConfigCallback (saveConfigCallback); // cria uma rede de nome ESP_AP com senha 12345678 wifiManager.autoConnect ("ESP_AP", "12345678"); }
Steg 9: Slinga
I slingan kommer vi att läsa knappnålen för att se om den har tryckts in, och sedan kommer vi att ringa metoden för att återaktivera AP-läget.
void loop () {
WiFiManager wifiManager; // se o botão foi pressionado if (digitalRead (PIN_AP) == HIGH) {Serial.println ("resetar"); // tenta abrir o portal if (! wifiManager.startConfigPortal ("ESP_AP", "12345678")) {Serial.println ("Falha ao conectar"); fördröjning (2000); ESP.start (); fördröjning (1000); } Serial.println ("Conectou ESP_AP !!!"); }
När du trycker på knappen kommer ESP att lämna stationsläget och öppna din åtkomstpunkt och portal.
Kom ihåg att vi inte använder kommandot resetSettings (). Inställningarna sparas fortfarande nästa gång ESP startar.
Steg 10: Återuppringning
Återuppringningsfunktionerna, som är associerade med händelser, tjänar till att du har det exakta ögonblicket för en operation, i vårt fall att gå in i AP -läge och Station -läge. Vi kan sedan implementera en önskad rutin, till exempel att hämta SSID från det anslutna nätverket, till exempel.
// callback que indica que o ESP entrou no modo AP
void configModeCallback (WiFiManager *myWiFiManager) {// Serial.println ("Inmatat konfigurationsläge"); Serial.println ("Entrou no modo de configuração"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP Serial.println (myWiFiManager-> getConfigPortalSSID ()); // imprime o SSID criado da rede
}
// återuppringning que indica que salvamos uma nova rede para se conectar (modo estação)
void saveConfigCallback () {// Serial.println ("Ska spara konfiguration"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP}
Rekommenderad:
Persienner med ESP8266, Google Home och Openhab -integration och webbkontroll: 5 steg (med bilder)
Kontroll av persienner med ESP8266, Google Home och Openhab -integration och webbkontroll: I den här instruktionsboken visar jag dig hur jag lade automatisering till mina persienner. Jag ville kunna lägga till och ta bort automatiseringen, så all installation är klämd på. Huvuddelarna är: Stegmotor Stegdrivrutinstyrd vid ESP-01 Växel och montering
Ta och skicka bilder med ESP32-Cam med ESP8266 WeMos D1 R1 Wifi-processor med Uno: 7 steg
Ta och skicka bilder med ESP32-Cam med ESP8266 WeMos D1 R1 Wifi-processor med Uno: Ta bild med ESP32-Cam (OV2640) med ESP8266 WeMos D1 R1 WiFI-processor med Uno och skicka den till e-post, spara till Google Drive och skicka den till Whatsapp med Twilio.Krav: ESP8266 WeMos D1 R1 WiFI -processor med Uno (https: // protosupplies
Arduino -robot med avstånd, riktning och rotationsgrad (öst, väst, norr, söder) som styrs med röst med hjälp av Bluetooth -modul och autonom robotrörelse .: 6 steg
Arduino -robot med avstånd, riktning och rotationsgrad (öst, väst, norr, söder) som styrs med röst med hjälp av Bluetooth -modul och autonom robotrörelse.: Denna instruktion förklarar hur man gör Arduino -robot som kan flyttas i önskad riktning (framåt, bakåt , Vänster, höger, öst, väst, norr, syd) krävs Distans i centimeter med röstkommando. Roboten kan också flyttas autonomt
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: 5 steg (med bilder)
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: Styrning av 8 reläväxlar med nodemcu och IR -mottagare via wifi och IR -fjärrkontroll och Android -app. Fjärrkontrollen fungerar oberoende av wifi -anslutning. HÄR ÄR EN UPPDATERAD VERSIONKLICK HÄR
Temperatur och fuktighet Display och datainsamling med Arduino och bearbetning: 13 steg (med bilder)
Temperatur- och luftfuktighetsvisning och datainsamling med Arduino och bearbetning: Intro: Detta är ett projekt som använder ett Arduino -kort, en sensor (DHT11), en Windows -dator och ett bearbetningsprogram (ett gratis nedladdningsbart) för att visa temperatur, luftfuktighetsdata i digital och stapeldiagramform, visa tid och datum och kör en räkningstid