Cuprins:
- Pasul 1: PINOUT
- Pasul 2: WiFiManager
- Pasul 3: Cum funcționează
- Pasul 4: Biblioteci
- Pasul 5: Funcții
- Pasul 6: Asamblare
- Pasul 7: Cod
- Pasul 8: Configurare
- Pasul 9: Buclă
- Pasul 10: Rambursări
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Sunteți familiarizat cu WiFiManager? Este o bibliotecă care servește ca manager de conexiune wireless și, odată cu aceasta, avem o modalitate mai ușoară de a configura atât un punct de acces, cât și o stație. Am primit mai multe sugestii pentru a discuta acest subiect; așa că astăzi vă voi prezenta această bibliotecă și funcțiile sale. De asemenea, voi face o demonstrație a utilizării sale atât cu ESP32, cât și cu ESP8266.
Pasul 1: PINOUT
Aici arăt PINOUTUL celor două dispozitive pe care le vom folosi:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
Pasul 2: WiFiManager
WiFiManager nu este nimic mai mult decât o bibliotecă scrisă pe WiFi.h pentru o gestionare ușoară a conexiunilor wireless. Amintiți-vă că, cu acesta, avem o facilitate mai mare pentru a configura atât un punct de acces, cât și o stație. Pentru modul Station, configurăm printr-un portal în browser.
Unele caracteristici:
• Depinde de conectivitatea automată
• Initializarea portalului de configurare neautomatic
• Funcționează selectiv în modul dual
Pasul 3: Cum funcționează
ESP va iniția un portal de configurare WiFi atunci când este conectat și va salva datele de configurare în memoria non-volatilă. Ulterior, portalul de configurare va porni din nou numai dacă este apăsat un buton în modulul ESP.
Aici puteți verifica fluxul de configurare și urmați acest pas cu pas:
1. Folosind orice dispozitiv compatibil WiFi cu browser, conectați-vă la punctul de acces nou creat și introduceți adresa 192.168.4.1.
2. Pe ecran veți avea două opțiuni pentru a vă conecta la o rețea existentă:
• Configurați WiFi
• Configurați WiFi (fără scanare)
3. Alegeți una dintre rețele și introduceți parola (dacă este necesar). Apoi salvați și așteptați ca ESP să repornească.
4. La sfârșitul boot-ului, ESP încearcă să se conecteze la rețeaua salvată. Dacă nu puteți face acest lucru, veți activa un punct de acces.
Pasul 4: Biblioteci
Adăugați biblioteca „WifiManager-ESP32”.
Accesați https://github.com/zhouhan0126/WIFIMANAGER-ESP32 și descărcați biblioteca.
Dezarhivați fișierul și lipiți-l în folderul de biblioteci al IDE Arduino.
C: / Program Files (x86) / Arduino / biblioteci
Adăugați biblioteca „DNSServer-ESP32”.
Accesați linkul https://github.com/zhouhan0126/DNSServer---esp32 și descărcați biblioteca.
Dezarhivați fișierul și lipiți-l în folderul de biblioteci al IDE Arduino.
C: / Program Files (x86) / Arduino / biblioteci
Adăugați biblioteca "WebServer-ESP32".
Accesați linkul https://github.com/zhouhan0126/WebServer-esp32 și descărcați biblioteca.
Dezarhivați fișierul și lipiți-l în folderul de biblioteci al IDE Arduino.
C: / Program Files (x86) / Arduino / biblioteci
Notă:
Biblioteca WiFiManager-ESP32 are deja setările care funcționează cu ESP8266, așa că vom folosi acest lucru numai, în loc de două lib-uri WiFiManager (una pentru fiecare tip de cip).
După cum vom vedea mai târziu, ESP8266WiFi și ESP8266WebServer sunt biblioteci pe care nu trebuie să le descărcăm, deoarece acestea vin deja când instalăm ESP8266 în Arduino IDE.
Pasul 5: Funcții
Iată câteva funcții pe care ni le oferă WiFiManager.
1. autoConnect
Funcția autoConnect este responsabilă pentru crearea unui punct de acces. Îl putem folosi în trei moduri.
• autoConnect („numele rețelei”, „parola”); - creează o rețea cu numele și parola definite.
• autoConnect („numele rețelei”); - creează o rețea deschisă cu numele definit.
• conectare automata (); - creează o rețea deschisă și denumită automat cu numele fiind „ESP” + chipID.
2. startConfigPortal
Funcția startConfigPortal este responsabilă pentru crearea unui punct de acces fără a încerca să se conecteze la o rețea salvată anterior.
• startConfigPortal („numele rețelei”, „parola”); - creează o rețea cu numele și parola definite.
• startConfigPortal (); - creează o rețea deschisă și denumită automat cu numele fiind „ESP” + chipID.
3. getConfigPortalSSID
Returnează SSID-ul portalului (punct de acces)
4. getSSID
Aceasta returnează SSID-ul rețelei la care este conectat.
5. getPassword
Aceasta returnează parola rețelei la care este conectată.
6. setDebugOutput
Funcția setDebugOutput este responsabilă pentru tipărirea mesajelor de depanare pe monitorul serial. Aceste mesaje sunt deja definite în bibliotecă. Pe măsură ce parcurgeți funcțiile, datele vor fi tipărite.
În mod implicit, această funcție este setată la TRUE. Dacă doriți să dezactivați mesajele, pur și simplu setați funcția la FALS.
7. setMinimumSignalQuality
Funcția setMinimumSignalQuality este responsabilă pentru filtrarea rețelelor pe baza calității semnalului. În mod implicit, WiFiManager nu va afișa rețelele de conectare sub 8%.
8. setRemoveDuplicateAPs
Funcția setRemoveDuplicateAPs este responsabilă pentru eliminarea duplicatelor de rețea.
În mod implicit, este setat la TRUE.
9. setAPStaticIPConfig
Funcția setAPStaticIPConfig este responsabilă pentru setarea setărilor adresei statice în modul punct de acces.
(IP, GATEWAY, SUBNET)
10. setSTAStaticIPConfig
Funcția setSTAStaticIPConfig este responsabilă pentru setarea setărilor adresei statice în modul stație.
(IP, GATEWAY, SUBNET)
Trebuie să adăugați comanda înainte de autoConnect !!!
11. setAPCallback
Funcția setAPCallback este responsabilă pentru a vă informa că a început modul AP.
Parametrul este o funcție care trebuie creată pentru a-l indica ca apel invers;
12. setSaveConfigCallback
Funcția setSaveConfigCallback este responsabilă pentru a vă informa că a fost salvată o nouă configurație și că conexiunea a fost finalizată cu succes.
Parametrul este o funcție de creat și indică acest lucru ca o revenire.
Trebuie să adăugați comanda înainte de autoConnect !!!
Pasul 6: Asamblare
Exemplu
În exemplul nostru, vom crea un punct de acces cu ESP (codul va servi atât ESP8266, cât și ESP32). După crearea AP-ului, vom accesa portalul prin IP 192.168.4.1 (care este implicit pentru a-l accesa). Deci, să luăm rețelele disponibile, să selectăm una și să salvăm. De acolo, ESP va reporni și va încerca să se conecteze la acesta, apoi va funcționa ca stație și nu mai mult ca punct de acces.
După ce ați intrat în modul stație, puteți face ESP să revină la modul Punct de acces numai prin intermediul butonului.
Pasul 7: Cod
Biblioteci
Mai întâi să definim bibliotecile pe care le vom folosi.
Rețineți că avem comenzi #if definite, #else și #endif. Acestea sunt condiționate să includă bibliotecile necesare referitoare la cip. Această parte este extrem de importantă pentru a rula același cod atât pe ESP8266, cât și pe ESP32.
#if definit (ESP8266)
#include // ESP8266 Core WiFi Library #else #include // ESP32 Core WiFi Library #endif
#if definit (ESP8266)
#include // Local WebServer folosit pentru a servi portalul de configurare
#else
#include // Server DNS local utilizat pentru redirecționarea tuturor cererilor către portalul de configurare (https://github.com/zhouhan0126/DNSServer---esp32)
#endif
#include // Local WebServer folosit pentru a servi portalul de configurare (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Configuration Magic (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORIGINAL)
Pasul 8: Configurare
În configurare, ne configurăm WiFiManager în cel mai simplu mod. Să definim apelurile și să creăm rețeaua.
const int PIN_AP = 2;
void setup () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // declaração do objeto wifiManager WiFiManager wifiManager;
// folosind esse comando, as configurações são apagadas da memória // caso tiver salvo alguma rede pentru conectar automaticamente, ela é apagada. // wifiManager.resetSettings (); // callback pentru când intră în modul de configurare AP wifiManager.setAPCallback (configModeCallback); // callback pentru când se conectează em uma rede, sau seja, când trece la lucru în modul acesta wifiManager.setSaveConfigCallback (saveConfigCallback); // cria uma rede de nume ESP_AP com senha 12345678 wifiManager.autoConnect ("ESP_AP", "12345678"); }
Pasul 9: Buclă
În buclă, vom citi pinul butonului pentru a vedea dacă a fost apăsat și apoi vom apela metoda pentru a reactiva modul AP.
bucla nulă () {
WiFiManager wifiManager; // se o botão a fost presat if (digitalRead (PIN_AP) == HIGH) {Serial.println ("resetar"); // tenta deschide portalul if (! wifiManager.startConfigPortal ("ESP_AP", "12345678")) {Serial.println ("Falha ao conectar"); întârziere (2000); ESP.restart (); întârziere (1000); } Serial.println ("Conectou ESP_AP !!!"); }
Când apăsați butonul, ESP va ieși din modul stație și vă va deschide punctul de acces și portalul.
Amintiți-vă că nu folosim comanda resetSettings (). Setările sunt încă salvate pentru următoarea pornire a ESP.
Pasul 10: Rambursări
Funcțiile de apel invers, care sunt asociate cu evenimentele, vă servesc pentru a avea momentul exact al unei operații, în cazul nostru, intrând în modul AP și în modul Stație. Putem apoi implementa rutina dorită, cum ar fi recuperarea SSID din rețeaua conectată, de exemplu.
// callback que indica que o ESP entrou no modo AP
void configModeCallback (WiFiManager * myWiFiManager) {// Serial.println ("Mod de configurare introdus"); Serial.println ("Entrou no modo de configuração"); Serial.println (WiFi.softAPIP ()); // imprime o IP face 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 ("Ar trebui să salveze config"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP}
Recomandat:
Stație meteo profesională care utilizează ESP8266 și ESP32 DIY: 9 pași (cu imagini)
Stație meteo profesională care folosește bricolajul ESP8266 și ESP32: LineaMeteoStazione este o stație meteo completă care poate fi interfațată cu senzori profesioniști de la Sensirion, precum și cu unele componente ale instrumentului Davis (Rain Gauge, Anemometer)
Comunicare fără fir LoRa de 3Km la 8Km cu dispozitiv E32 (sx1278 / sx1276) low cost pentru Arduino, Esp8266 sau Esp32: 15 pași
Comunicare wireless LoRa de 3Km la 8Km cu dispozitiv E32 low cost (sx1278 / sx1276) pentru Arduino, Esp8266 sau Esp32: Creez o bibliotecă pentru gestionarea EBYTE E32 bazată pe seria Semtech de dispozitive LoRa, dispozitiv foarte puternic, simplu și ieftin. Puteți găsi Versiunea de 3 km aici, versiunea de 8 km aici Pot funcționa pe o distanță de 3000m până la 8000m și au o mulțime de caracteristici și
Tutorial ESP32 Bluetooth - Cum se utilizează Bluetooth încorporat al ESP32: 5 pași
Tutorial ESP32 Bluetooth | Cum se utilizează Bluetooth incorporat al ESP32: Bună băieți, deoarece placa ESP32 vine cu WiFi & Bluetooth, dar pentru cele mai multe proiecte, de obicei folosim doar Wifi, nu folosim Bluetooth. Deci, în acest instructable voi arăta cât de ușor este să folosiți Bluetooth de ESP32 & Pentru proiectele dvs. de bază
Noțiuni introductive despre ESP32 CAM - Streaming video folosind ESP CAM prin Wifi - Proiectul camerei de securitate ESP32: 8 pași
Noțiuni introductive despre ESP32 CAM | Streaming video folosind ESP CAM prin Wifi | Proiectul camerei de securitate ESP32: Astăzi vom învăța cum să folosim această nouă placă ESP32 CAM și cum o putem codifica și folosi ca o cameră de securitate și să obținem un streaming video prin wifi
Noțiuni introductive despre ESP32 - Instalarea plăcilor ESP32 în Arduino IDE - ESP32 Blink Code: 3 pași
Noțiuni introductive despre ESP32 | Instalarea plăcilor ESP32 în Arduino IDE | ESP32 Blink Code: În acest instructable vom vedea cum să începeți să lucrați cu esp32 și cum să instalați plăci esp32 în Arduino IDE și vom programa esp 32 pentru a rula codul blink folosind arduino ide