Sadržaj:
- Korak 1: PINOUT
- Korak 2: WiFiManager
- Korak 3: Kako to funkcionira
- Korak 4: Biblioteke
- Korak 5: Funkcije
- Korak 6: Montaža
- Korak 7: Kodirajte
- Korak 8: Postavljanje
- Korak 9: Petlja
- Korak 10: Povratni poziv
Video: ESP8266 i ESP32 sa WiFiManagerom: 10 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Jeste li upoznati sa WiFiManagerom? To je biblioteka koja služi kao upravitelj bežične veze, a s njom imamo lakši način konfiguriranja i pristupne točke i stanice. Primio sam nekoliko prijedloga za raspravu o ovoj temi; pa ću vam danas predstaviti ovu biblioteku i njene funkcije. Takođe ću demonstrirati njegovu upotrebu sa ESP32 i ESP8266.
Korak 1: PINOUT
Ovdje pokazujem PINOUT dva uređaja koja ćemo koristiti:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
Korak 2: WiFiManager
WiFiManager zapravo nije ništa drugo do biblioteka napisana na vrhu WiFi.h za jednostavno upravljanje bežičnim vezama. Upamtite da s njim imamo veće mogućnosti za konfiguriranje i pristupne tačke i stanice. Za način rada stanice konfiguriramo putem portala u pregledniku.
Neke karakteristike:
• Ovisi o automatskom povezivanju
• Inicijalizacija portala za neautomatsku konfiguraciju
• Radi selektivno u dvostrukom načinu rada
Korak 3: Kako to funkcionira
ESP će pokrenuti WiFi konfiguracijski portal kada je povezan i spremit će podatke o konfiguraciji u trajnu memoriju. Nakon toga, konfiguracijski portal će se ponovo pokrenuti samo ako se pritisne dugme u ESP modulu.
Ovdje možete provjeriti tijek konfiguracije i slijediti ovaj korak po korak:
1. Pomoću bilo kojeg uređaja s preglednikom koji podržava WiFi povežite se s novonastalom pristupnom točkom i unesite adresu 192.168.4.1.
2. Na ekranu ćete imati dvije mogućnosti povezivanja na postojeću mrežu:
• Konfigurirajte WiFi
• Konfigurirajte WiFi (bez skeniranja)
3. Odaberite jednu od mreža i unesite lozinku (ako je potrebno). Zatim spremite i pričekajte da se ESP ponovno pokrene.
4. Na kraju pokretanja, ESP se pokušava povezati sa sačuvanom mrežom. Ako to ne možete učiniti, omogućit ćete pristupnu točku.
Korak 4: Biblioteke
Dodajte biblioteku "WifiManager-ESP32".
Idite na https://github.com/zhouhan0126/WIFIMANAGER-ESP32 i preuzmite biblioteku.
Raspakirajte datoteku i zalijepite je u mapu biblioteke Arduino IDE -a.
C: / Programske datoteke (x86) / Arduino / biblioteke
Dodajte biblioteku "DNSServer-ESP32".
Idite na https://github.com/zhouhan0126/DNSServer---esp32 vezu i preuzmite biblioteku.
Raspakirajte datoteku i zalijepite je u mapu biblioteke Arduino IDE -a.
C: / Programske datoteke (x86) / Arduino / biblioteke
Dodajte biblioteku "WebServer-ESP32".
Idite na https://github.com/zhouhan0126/WebServer-esp32 vezu i preuzmite biblioteku.
Raspakirajte datoteku i zalijepite je u mapu biblioteke Arduino IDE -a.
C: / Programske datoteke (x86) / Arduino / biblioteke
Bilješka:
Biblioteka WiFiManager-ESP32 već ima postavke koje rade s ESP8266, pa ćemo koristiti samo ovo, umjesto dva WiFiManager liba (po jedan za svaku vrstu čipa).
Kao što ćemo vidjeti kasnije, ESP8266WiFi i ESP8266WebServer su biblioteke koje ne moramo preuzimati, jer već dolaze kada instaliramo ESP8266 u Arduino IDE.
Korak 5: Funkcije
Evo nekoliko funkcija koje nam nudi WiFiManager.
1. autoConnect
Funkcija autoConnect odgovorna je za kreiranje pristupne tačke. Možemo ga koristiti na tri načina.
• autoConnect ("naziv mreže", "lozinka"); - stvara mrežu s definiranim imenom i lozinkom.
• autoConnect ("naziv mreže"); - stvara otvorenu mrežu s definiranim imenom.
• autoConnect (); - stvara otvorenu i automatski imenovanu mrežu s imenom 'ESP' + chipID.
2. startConfigPortal
Funkcija startConfigPortal odgovorna je za kreiranje pristupne tačke bez pokušaja povezivanja na prethodno sačuvanu mrežu.
• startConfigPortal ("naziv mreže", "lozinka"); - stvara mrežu s definiranim imenom i lozinkom.
• startConfigPortal (); - stvara otvorenu i automatski imenovanu mrežu s imenom 'ESP' + chipID.
3. getConfigPortalSSID
Vraća SSID portala (pristupna točka)
4. getSSID
Ovo vraća SSID mreže na koju je povezana.
5. getPassword
Ovo vraća lozinku mreže na koju je povezana.
6. setDebugOutput
Funkcija setDebugOutput je odgovorna za štampanje poruka za otklanjanje grešaka na serijskom monitoru. Ove poruke su već definirane u biblioteci. Dok prolazite kroz funkcije, podaci će se ispisivati.
Prema zadanim postavkama, ova funkcija je postavljena na TRUE. Ako želite onemogućiti poruke, jednostavno postavite funkciju na FALSE.
7. setMinimumSignalQuality
Funkcija setMinimumSignalQuality odgovorna je za filtriranje mreža na osnovu kvalitete signala. Prema zadanim postavkama, WiFiManager neće prikazivati mreže za prijavu ispod 8%.
8. setRemoveDuplicateAPs
Funkcija setRemoveDuplicateAPs odgovorna je za uklanjanje mrežnih duplikata.
Podrazumevano je postavljeno na TRUE.
9. setAPStaticIPConfig
Funkcija setAPStaticIPConfig odgovorna je za postavljanje postavki statičke adrese u načinu pristupne točke.
(IP, GATEWAY, SUBNET)
10. setSTAStaticIPConfig
Funkcija setSTAStaticIPConfig odgovorna je za postavljanje postavki statičke adrese u načinu rada stanice.
(IP, GATEWAY, SUBNET)
Morate dodati naredbu prije automatskog povezivanja !!!
11. setAPCallback
Funkcija setAPCallback odgovorna je za obavještavanje vas da je AP način rada pokrenut.
Parametar je funkcija koja se mora kreirati da bi se označila kao povratni poziv;
12. setSaveConfigCallback
Funkcija setSaveConfigCallback odgovorna je za obavještavanje vas da je nova konfiguracija spremljena i da je veza uspješno završena.
Parametar je funkcija za stvaranje i označava to kao allback.
Morate dodati naredbu prije automatskog povezivanja !!!
Korak 6: Montaža
Primjer
U našem primjeru stvorit ćemo pristupnu točku s ESP -om (kôd će služiti i ESP8266 i ESP32). Nakon kreiranja pristupne tačke pristupit ćemo portalu putem IP 192.168.4.1 (koji mu je zadani pristup). Dakle, nabavimo dostupne mreže, odaberite jednu i spremite. Od tada će se ESP ponovno pokrenuti i pokušati povezati s njim, a zatim će raditi kao stanica, a ne više kao pristupna točka.
Nakon ulaska u način rada stanice, možete učiniti da se ESP vrati u način pristupne tačke samo pomoću dugmeta.
Korak 7: Kodirajte
Biblioteke
Prvo definirajmo biblioteke koje ćemo koristiti.
Imajte na umu da imamo #if definirane, #else i #endif naredbe. Oni su uslovljeni uključivanjem neophodnih biblioteka koje se odnose na čip. Ovaj dio je izuzetno važan za pokretanje istog koda i na ESP8266 i na ESP32.
#if definirano (ESP8266)
#include // ESP8266 Core WiFi biblioteka #else #include // ESP32 Core WiFi biblioteka #endif
#if definirano (ESP8266)
#include // Lokalni WebServer koji se koristi za posluživanje konfiguracijskog portala
#else
#include // Lokalni DNS poslužitelj koji se koristi za preusmjeravanje svih zahtjeva na konfiguracijski portal (https://github.com/zhouhan0126/DNSServer---esp32)
#endif
#include // Lokalni WebServer koji je služio za opsluživanje konfiguracijskog portala (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi konfiguracijska magija (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORIGINAL)
Korak 8: Postavljanje
Prilikom postavljanja konfiguriramo naš WiFiManager na najjednostavniji način. Definirajmo povratne pozive i kreirajmo mrežu.
const int PIN_AP = 2;
void setup () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // deklarira da objekti wifiManager WiFiManager wifiManager;
// koristi esse comando, kao konfiguracije s apagadas da memória // caso tiver salvo alguma rede para conectar automaticamente, ela é apagada. // wifiManager.resetSettings (); // povratni poziv za ulazak u način rada za konfiguraciju AP wifiManager.setAPCallback (configModeCallback); // povratni poziv za slučaj da se povežete sa 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"); }
Korak 9: Petlja
U petlji ćemo čitati pin dugmeta da vidimo da li je pritisnut, a zatim ćemo pozvati metodu za ponovno omogućavanje AP režima.
void loop () {{100} {101}
WiFiManager wifiManager; // se o botão foi pressiodo if (digitalRead (PIN_AP) == HIGH) {Serial.println ("resetar"); // preusmjeravanje na portal if (! wifiManager.startConfigPortal ("ESP_AP", "12345678")) {Serial.println ("Falha ao conectar"); kašnjenje (2000); ESP.restart (); kašnjenje (1000); } Serial.println ("Conectou ESP_AP !!!"); }
Kada pritisnete gumb, ESP će izaći iz načina rada stanice i otvoriti vašu pristupnu točku i portal.
Upamtite da ne koristimo naredbu resetSettings (). Postavke se i dalje spremaju pri sljedećem pokretanju ESP -a.
Korak 10: Povratni poziv
Funkcije povratnog poziva, koje su povezane s događajima, služe vam za točan trenutak operacije, u našem slučaju ulaska u način rada AP i način rada stanice. Tada možemo implementirati neku željenu rutinu, poput preuzimanja SSID -a sa povezane mreže, na primjer.
// povratni poziv indikator čekanja o ESP entrou bez modo AP -a
void configModeCallback (WiFiManager *myWiFiManager) {// Serial.println ("Unesen način konfiguracije"); Serial.println ("Entrou no modo de configuração"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP Serial.println (myWiFiManager-> getConfigPortalSSID ()); // imprime o SSID -u da se rede
}
// povratni poziv que indica que salvamos uma nova rede para se conectar (modo estação)
void saveConfigCallback () {// Serial.println ("Treba sačuvati konfiguraciju"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP}
Preporučuje se:
Profesionalna meteorološka stanica koja koristi ESP8266 i ESP32 DIY: 9 koraka (sa slikama)
Profesionalna meteorološka stanica koja koristi ESP8266 i ESP32 DIY: LineaMeteoStazione je potpuna meteorološka stanica koja se može povezati s profesionalnim senzorima iz Sensiriona, kao i nekim Davisovim instrumentom (mjerač kiše, anemometar) Projekt je namijenjen kao DIY meteorološka stanica, ali samo zahtijeva
LoRa bežična komunikacija od 3 do 8 km s niskim troškovima E32 (sx1278/sx1276) uređaj za Arduino, Esp8266 ili Esp32: 15 koraka
LoRa bežična komunikacija od 3 do 8 km s niskim troškovima E32 (sx1278/sx1276) Uređaj za Arduino, Esp8266 ili Esp32: Stvaram biblioteku za upravljanje EBYTE E32 na temelju Semtech serije LoRa uređaja, vrlo snažan, jednostavan i jeftin uređaj. Možete pronaći Ovdje je verzija od 3 km, verzija od 8 kilometara Ovdje mogu raditi na udaljenostima od 3000 do 8000 metara, a imaju mnogo funkcija i
ESP32 Bluetooth vodič - Kako koristiti ugrađeni Bluetooth od ESP32: 5 koraka
ESP32 Bluetooth vodič | Kako koristiti ugrađeni Bluetooth ESP32: Zdravo momci Budući da ESP32 ploča dolazi s WiFi -om & I Bluetooth i Bluetooth, ali za većinu naših projekata obično koristimo samo Wifi, ne koristimo Bluetooth. Tako da ću u ovim uputama pokazati koliko je jednostavno koristiti Bluetooth ESP32 & Za vaše osnovne projekte
Prvi koraci s ESP32 CAM - Streaming videa putem ESP CAM -a preko Wi -Fi -ja. Projekat sigurnosne kamere ESP32: 8 koraka
Prvi koraci s ESP32 CAM | Streaming videa putem ESP CAM -a preko Wi -Fi -ja. Projekt sigurnosne kamere ESP32: Danas ćemo naučiti kako koristiti ovu novu ESP32 CAM ploču i kako je možemo kodirati i koristiti kao sigurnosnu kameru te dobiti streaming video putem WiFi -ja
Prvi koraci sa ESP32 - Instaliranje ESP32 ploča u Arduino IDE - ESP32 Blink Code: 3 koraka
Prvi koraci sa ESP32 | Instaliranje ESP32 ploča u Arduino IDE | ESP32 Blink Code: U ovom uputstvu vidjet ćemo kako započeti rad s esp32 i kako instalirati esp32 ploče u Arduino IDE i programirat ćemo esp 32 da pokrene blink kod pomoću arduino ide