Indholdsfortegnelse:
- Trin 1: PINOUT
- Trin 2: WiFiManager
- Trin 3: Sådan fungerer det
- Trin 4: Biblioteker
- Trin 5: Funktioner
- Trin 6: Montering
- Trin 7: Kode
- Trin 8: Opsætning
- Trin 9: Sløjfe
- Trin 10: Tilbagekald
Video: ESP8266 og ESP32 Med WiFiManager: 10 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Kender du WiFiManager? Det er et bibliotek, der fungerer som en trådløs forbindelsesadministrator, og med det har vi en lettere måde at konfigurere både et adgangspunkt og en station. Jeg har modtaget flere forslag til at diskutere dette emne; så i dag vil jeg introducere dig til dette bibliotek og dets funktioner. Jeg vil også demonstrere brugen af den med både ESP32 og ESP8266.
Trin 1: PINOUT
Her viser jeg PINOUT for de to enheder, som vi vil bruge:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
Trin 2: WiFiManager
WiFiManager er virkelig intet mere end et bibliotek skrevet oven på WiFi.h for nem håndtering af trådløse forbindelser. Husk, at med det har vi en større mulighed for at konfigurere både et adgangspunkt og en station. Til Stationstilstand konfigurerer vi via en portal i browseren.
Nogle funktioner:
• Det afhænger af automatisk forbindelse
• Initialisering af ikke-automatisk konfigurationsportal
• Fungerer selektivt i dobbelt tilstand
Trin 3: Sådan fungerer det
ESP starter en WiFi-konfigurationsportal, når den er tilsluttet, og gemmer konfigurationsdata i ikke-flygtig hukommelse. Efterfølgende starter konfigurationsportalen kun igen, hvis der trykkes på en knap i ESP -modulet.
Her kan du kontrollere konfigurationsforløbet og følge dette trin for trin:
1. Brug en hvilken som helst WiFi-aktiveret enhed med en browser, tilslut til det nyoprettede adgangspunkt og indtast adressen 192.168.4.1.
2. På skærmen har du to muligheder for at oprette forbindelse til et eksisterende netværk:
• Konfigurer WiFi
• Konfigurer WiFi (ingen scanning)
3. Vælg et af netværkene, og indtast adgangskoden (hvis det er nødvendigt). Gem derefter og vent på, at ESP genstarter.
4. I slutningen af opstarten forsøger ESP at oprette forbindelse til det gemte netværk. Hvis du ikke kan gøre dette, aktiverer du et adgangspunkt.
Trin 4: Biblioteker
Tilføj bibliotek "WifiManager-ESP32".
Gå til https://github.com/zhouhan0126/WIFIMANAGER-ESP32, og download biblioteket.
Pak filen ud, og indsæt den i biblioteksmappen i Arduino IDE.
C: / Programfiler (x86) / Arduino / biblioteker
Tilføj "DNSServer-ESP32" -bibliotek.
Gå til https://github.com/zhouhan0126/DNSServer---esp32 linket og download biblioteket.
Pak filen ud, og indsæt den i biblioteksmappen i Arduino IDE.
C: / Programfiler (x86) / Arduino / biblioteker
Tilføj "WebServer-ESP32" -bibliotek.
Gå til https://github.com/zhouhan0126/WebServer-esp32 linket og download biblioteket.
Pak filen ud, og indsæt den i biblioteksmappen i Arduino IDE.
C: / Programfiler (x86) / Arduino / biblioteker
Bemærk:
WiFiManager-ESP32-biblioteket har allerede de indstillinger, der fungerer med ESP8266, så vi vil kun bruge dette i stedet for to WiFiManager-libs (en for hver type chip).
Som vi vil se senere, er ESP8266WiFi og ESP8266WebServer biblioteker, som vi ikke behøver at downloade, fordi de allerede kommer, når vi installerer ESP8266 i Arduino IDE.
Trin 5: Funktioner
Her er nogle funktioner, som WiFiManager tilbyder os.
1. autoConnect
AutoConnect -funktionen er ansvarlig for oprettelse af et adgangspunkt. Vi kan bruge det på tre måder.
• autoConnect ("netværksnavn", "adgangskode"); - opretter et netværk med det definerede navn og adgangskode.
• autoConnect ("netværksnavn"); - opretter et åbent netværk med det definerede navn.
• autoConnect (); - opretter et åbent og automatisk navngivet netværk med navnet 'ESP' + chipID.
2. startConfigPortal
StartConfigPortal -funktionen er ansvarlig for at oprette et adgangspunkt uden at forsøge at oprette forbindelse til et tidligere gemt netværk.
• startConfigPortal ("netværksnavn", "adgangskode"); - opretter et netværk med det definerede navn og adgangskode.
• startConfigPortal (); - opretter et åbent og automatisk navngivet netværk med navnet 'ESP' + chipID.
3. getConfigPortalSSID
Returnerer portalens SSID (adgangspunkt)
4. getSSID
Dette returnerer SSID for det netværk, som det er forbundet til.
5. getPassword
Dette returnerer adgangskoden til det netværk, som det er forbundet til.
6. setDebugOutput
SetDebugOutput -funktionen er ansvarlig for udskrivning af fejlfindingsmeddelelser på den serielle skærm. Disse meddelelser er allerede defineret i biblioteket. Når du går igennem funktionerne, udskrives dataene.
Denne funktion er som standard indstillet til SAND. Hvis du vil deaktivere meddelelserne, skal du blot indstille funktionen til FALSK.
7. setMinimumSignalQuality
Funktionen setMinimumSignalQuality er ansvarlig for filtrering af netværk baseret på signalkvalitet. Som standard viser WiFiManager ikke logonnetværk under 8%.
8. setRemoveDuplicateAPs
Funktionen setRemoveDuplicateAPs er ansvarlig for at fjerne netværksdubletter.
Som standard er den indstillet til SAND.
9. setAPStaticIPConfig
SetAPStaticIPConfig -funktionen er ansvarlig for at indstille de statiske adresseindstillinger, når den er i adgangspunkttilstand.
(IP, GATEWAY, SUBNET)
10. setSTAStaticIPConfig
Funktionen setSTAStaticIPConfig er ansvarlig for indstilling af de statiske adresseindstillinger i stationstilstand.
(IP, GATEWAY, SUBNET)
Du skal tilføje kommandoen, før autoConnect !!!
11. setAPCallback
SetAPCallback -funktionen er ansvarlig for at informere dig om, at AP -tilstand er startet.
Parameteren er en funktion, der skal oprettes for at angive den som et tilbagekald;
12. setSaveConfigCallback
Funktionen setSaveConfigCallback er ansvarlig for at informere dig om, at en ny konfiguration er blevet gemt, og forbindelsen er gennemført.
Parameteren er en funktion, der skal oprettes, og angiver dette som en allback.
Du skal tilføje kommandoen, før autoConnect !!!
Trin 6: Montering
Eksempel
I vores eksempel opretter vi et adgangspunkt med ESP (koden tjener både ESP8266 og ESP32). Efter oprettelsen af AP får vi adgang til portalen via IP 192.168.4.1 (som er standard for at få adgang til den). Så lad os få de tilgængelige netværk, vælg et og gem. Derfra vil ESP genstarte og forsøge at oprette forbindelse til det, og derefter fungerer det som en station og ikke længere som et adgangspunkt.
Når du er gået i stationstilstand, kan du kun få ESP til at vende tilbage til adgangspunkttilstand via knappen.
Trin 7: Kode
Biblioteker
Lad os først definere de biblioteker, vi vil bruge.
Bemærk, at vi har #if definerede, #else og #endif kommandoer. De er betinget af at inkludere nødvendige biblioteker vedrørende chippen. Denne del er ekstremt vigtig for at køre den samme kode på både ESP8266 og ESP32.
#if defineret (ESP8266)
#include // ESP8266 Core WiFi Library #else #include // ESP32 Core WiFi Library #endif
#if defineret (ESP8266)
#include // Lokal WebServer, der bruges til at betjene konfigurationsportalen
#andet
#include // Lokal DNS-server, der bruges til at omdirigere alle anmodninger til konfigurationsportalen (https://github.com/zhouhan0126/DNSServer---esp32)
#Afslut Hvis
#include // Lokal WebServer, der bruges til at betjene konfigurationsportalen (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Configuration Magic (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORIGINAL)
Trin 8: Opsætning
I opsætningen konfigurerer vi vores WiFiManager på den enkleste måde. Lad os bare definere tilbagekald og oprette netværket.
const int PIN_AP = 2;
ugyldig opsætning () {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"); }
Trin 9: Sløjfe
I sløjfen læser vi knappenålen for at se, om der er trykket på den, og derefter vil vi kalde metoden for at genaktivere AP-tilstanden.
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"); forsinkelse (2000); ESP.restart (); forsinkelse (1000); } Serial.println ("Conectou ESP_AP !!!"); }
Når du trykker på knappen, forlader ESP stationstilstand og åbner dit adgangspunkt og portal.
Husk, at vi ikke bruger kommandoen resetSettings (). Indstillingerne gemmes stadig til næste gang ESP starter.
Trin 10: Tilbagekald
Tilbagekaldsfunktionerne, der er forbundet med hændelser, tjener til, at du har det nøjagtige tidspunkt for en operation, i vores tilfælde, når du går ind i AP -tilstand og Station -tilstand. Vi kan derefter implementere en ønsket rutine, f.eks. At hente SSID fra det tilsluttede netværk.
// callback que indica que o ESP entrou no modo AP
void configModeCallback (WiFiManager *myWiFiManager) {// Serial.println ("Angivet konfigurationstilstand"); Serial.println ("Entrou no modo de konfiguração"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP Serial.println (myWiFiManager-> getConfigPortalSSID ()); // imprime o SSID criado da rede
}
// callback que indica que salvamos uma nova rede para se conectar (modo estação)
void saveConfigCallback () {// Serial.println ("Skal gemme konfiguration"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP}
Anbefalede:
Sådan sender du e -mails med vedhæftede filer med Arduino, Esp32 og Esp8266: 6 trin
Sådan sender du e -mails med vedhæftede filer med Arduino, Esp32 og Esp8266: Her vil jeg gerne forklare version 2 af mit bibliotek EMailSender, en stor evolution i forhold til version 1, med understøttelse af Arduino med w5100, w5200 og w5500 ethernet -skjold og enc28J60 klon -enheder og support til esp32 og esp8266. Nu kan du annoncere
ESP8266 - Havevanding med timer og fjernbetjening via internet / ESP8266: 7 trin (med billeder)
ESP8266 - Havevanding med timer og fjernbetjening via internet / ESP8266: ESP8266 - Vanding fjernstyret og med timing til køkkenhave, blomsterhaver og græsplæner. Det bruger ESP-8266 kredsløbet og en hydraulisk / elektrisk ventil til vanding af vanding. Fordele: Lave omkostninger (~ US $ 30,00) hurtig adgang Kommandoer over
Optag og send billeder med ESP32-Cam ved hjælp af ESP8266 WeMos D1 R1 Wifi-processor med Uno: 7 trin
Optag og send billeder med ESP32-Cam ved hjælp af ESP8266 WeMos D1 R1 Wifi-processor med Uno: Tag billede ved hjælp af ESP32-Cam (OV2640) ved hjælp af ESP8266 WeMos D1 R1 WiFI-processor med Uno og send det til e-mail, gem til Google Drive og send det til Whatsapp ved hjælp af Twilio. Krav: ESP8266 WeMos D1 R1 WiFI -processor med Uno (https: // protosupplies
PWM Med ESP32 - Dæmpning LED med PWM på ESP 32 Med Arduino IDE: 6 trin
PWM Med ESP32 | Dæmpning af LED med PWM på ESP 32 Med Arduino IDE: I denne instruktion vil vi se, hvordan man genererer PWM -signaler med ESP32 ved hjælp af Arduino IDE & PWM bruges dybest set til at generere analog output fra enhver MCU, og den analoge output kan være alt mellem 0V til 3,3V (i tilfælde af esp32) & fra
Kom godt i gang med ESP32 - Installation af ESP32 -plader i Arduino IDE - ESP32 Blink -kode: 3 trin
Kom godt i gang med ESP32 | Installation af ESP32 -plader i Arduino IDE | ESP32 Blink -kode: I denne instruks kan vi se, hvordan man begynder at arbejde med esp32, og hvordan man installerer esp32 -kort i Arduino IDE, og vi vil programmere esp 32 til at køre blinkkode ved hjælp af arduino ide