Obsah:
- Krok 1: PINOUT
- Krok 2: WiFiManager
- Krok 3: Jak to funguje
- Krok 4: Knihovny
- Krok 5: Funkce
- Krok 6: Sestavení
- Krok 7: Kód
- Krok 8: Nastavení
- Krok 9: Smyčka
- Krok 10: Zpětná volání
Video: ESP8266 a ESP32 s WiFiManagerem: 10 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Znáte WiFiManager? Je to knihovna, která slouží jako správce bezdrátového připojení, a díky ní máme snadnější způsob konfigurace přístupového bodu i stanice. Obdržel jsem několik návrhů k diskusi na toto téma; dnes vám tedy představím tuto knihovnu a její funkce. Ukážu také ukázku jeho použití s ESP32 i ESP8266.
Krok 1: PINOUT
Zde zobrazuji PINOUT dvou zařízení, která budeme používat:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
Krok 2: WiFiManager
WiFiManager není ve skutečnosti nic jiného než knihovna napsaná na WiFi.h pro snadnou správu bezdrátových připojení. Pamatujte, že s ním máme větší možnosti konfigurace přístupového bodu i stanice. Pro režim Station konfigurujeme prostřednictvím portálu v prohlížeči.
Některé funkce:
• Záleží na automatickém připojení
• Inicializace neautomatického konfiguračního portálu
• Funguje selektivně v duálním režimu
Krok 3: Jak to funguje
ESP po připojení zahájí konfigurační portál WiFi a uloží konfigurační data do energeticky nezávislé paměti. Následně se konfigurační portál znovu spustí pouze po stisknutí tlačítka v modulu ESP.
Zde můžete zkontrolovat postup konfigurace a postupovat podle těchto kroků:
1. Pomocí libovolného zařízení podporujícího WiFi s prohlížečem se připojte k nově vytvořenému přístupovému bodu a zadejte adresu 192.168.4.1.
2. Na obrazovce budete mít dvě možnosti připojení k existující síti:
• Konfigurovat WiFi
• Konfigurovat WiFi (bez skenování)
3. Vyberte jednu ze sítí a zadejte heslo (je -li to nutné). Poté uložte a počkejte, až se ESP restartuje.
4. Na konci bootování se ESP pokusí připojit k uložené síti. Pokud to nemůžete udělat, povolíte přístupový bod.
Krok 4: Knihovny
Přidat knihovnu "WifiManager-ESP32".
Přejděte na https://github.com/zhouhan0126/WIFIMANAGER-ESP32 a stáhněte si knihovnu.
Rozbalte soubor a vložte jej do složky knihoven Arduino IDE.
C: / Program Files (x86) / Arduino / libraries
Přidejte knihovnu „DNSServer-ESP32“.
Přejděte na odkaz https://github.com/zhouhan0126/DNSServer---esp32 a stáhněte si knihovnu.
Rozbalte soubor a vložte jej do složky knihoven Arduino IDE.
C: / Program Files (x86) / Arduino / libraries
Přidejte knihovnu „WebServer-ESP32“.
Přejděte na odkaz https://github.com/zhouhan0126/WebServer-esp32 a stáhněte si knihovnu.
Rozbalte soubor a vložte jej do složky knihoven Arduino IDE.
C: / Program Files (x86) / Arduino / libraries
Poznámka:
Knihovna WiFiManager-ESP32 již má nastavení, která fungují s ESP8266, takže použijeme pouze toto místo dvou liby WiFiManager (jeden pro každý typ čipu).
Jak uvidíme později, ESP8266WiFi a ESP8266WebServer jsou knihovny, které nemusíme stahovat, protože již přicházejí, když instalujeme ESP8266 do Arduino IDE.
Krok 5: Funkce
Zde jsou některé funkce, které nám WiFiManager nabízí.
1. autoConnect
Funkce autoConnect je zodpovědná za vytvoření přístupového bodu. Můžeme ji použít třemi způsoby.
• autoConnect („název sítě“, „heslo“); - vytvoří síť s definovaným jménem a heslem.
• autoConnect („název sítě“); - vytvoří otevřenou síť s definovaným názvem.
• autoConnect (); - vytvoří otevřenou a automaticky pojmenovanou síť s názvem 'ESP' + chipID.
2. startConfigPortal
Funkce startConfigPortal je zodpovědná za vytvoření přístupového bodu bez pokusu o připojení k dříve uložené síti.
• startConfigPortal („název sítě“, „heslo“); - vytvoří síť s definovaným jménem a heslem.
• startConfigPortal (); - vytvoří otevřenou a automaticky pojmenovanou síť s názvem 'ESP' + chipID.
3. getConfigPortalSSID
Vrátí SSID portálu (přístupový bod)
4. getSSID
Tím se vrátí SSID sítě, ke které je připojeno.
5. getPassword
Tím se vrátí heslo sítě, ke které je připojeno.
6. setDebugOutput
Funkce setDebugOutput je zodpovědná za tisk zpráv o ladění na sériovém monitoru. Tyto zprávy jsou již definovány v knihovně. Při procházení funkcí se data vytisknou.
Ve výchozím nastavení je tato funkce nastavena na hodnotu TRUE. Pokud chcete zprávy deaktivovat, jednoduše nastavte funkci na FALSE.
7. setMinimumSignalQuality
Funkce setMinimumSignalQuality je zodpovědná za filtrování sítí na základě kvality signálu. Ve výchozím nastavení WiFiManager nezobrazí přihlašovací sítě pod 8%.
8. setRemoveDuplicateAPs
Funkce setRemoveDuplicateAPs je zodpovědná za odebírání síťových duplikátů.
Ve výchozím nastavení je nastavena na hodnotu TRUE.
9. setAPStaticIPConfig
Funkce setAPStaticIPConfig je zodpovědná za nastavení nastavení statické adresy v režimu přístupového bodu.
(IP, GATEWAY, SUBNET)
10. nastavitSTAStaticIPConfig
Funkce setSTAStaticIPConfig je zodpovědná za nastavení nastavení statické adresy v režimu stanice.
(IP, GATEWAY, SUBNET)
Před autoConnect musíte přidat příkaz !!!
11. nastavte APCallback
Funkce setAPCallback je zodpovědná za informování o spuštění režimu AP.
Parametr je funkce, která musí být vytvořena, aby jej označila jako zpětné volání;
12. setSaveConfigCallback
Funkce setSaveConfigCallback je zodpovědná za informování o tom, že byla uložena nová konfigurace a připojení bylo úspěšně dokončeno.
Parametr je funkce k vytvoření a označuje to jako allback.
Před autoConnect musíte přidat příkaz !!!
Krok 6: Sestavení
Příklad
V našem příkladu vytvoříme přístupový bod s ESP (kód bude sloužit jak ESP8266, tak ESP32). Po vytvoření AP budeme k portálu přistupovat prostřednictvím IP 192.168.4.1 (což je výchozí přístup k němu). Pojďme tedy získat dostupné sítě, vybrat jednu a uložit. Odtud se ESP restartuje a pokusí se k němu připojit a poté bude fungovat jako stanice a už ne jako přístupový bod.
Po vstupu do režimu stanice můžete ESP vrátit do režimu přístupového bodu pouze pomocí tlačítka.
Krok 7: Kód
Knihovny
Nejprve definujme knihovny, které budeme používat.
Všimněte si, že máme příkazy #if definované, #else a #endif. Podmínkou je zahrnutí nezbytných knihoven týkajících se čipu. Tato část je nesmírně důležitá pro spuštění stejného kódu na ESP8266 i ESP32.
definováno #if (ESP8266)
#include // ESP8266 Core WiFi Library #else #include // ESP32 Core WiFi Library #endif
definováno #if (ESP8266)
#include // Místní webový server sloužící k obsluze konfiguračního portálu
#jiný
#include // Místní server DNS používaný k přesměrování všech požadavků na konfigurační portál (https://github.com/zhouhan0126/DNSServer---esp32)
#endif
#include // Local WebServer sloužící k obsluze konfiguračního portálu (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Configuration Magic (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORIGINÁL)
Krok 8: Nastavení
V nastavení konfigurujeme náš WiFiManager nejjednodušším způsobem. Pojďme definovat zpětná volání a vytvořit síť.
const int PIN_AP = 2;
neplatné nastavení () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // deklarace na objeto wifiManager WiFiManager wifiManager;
// použití jako základ pro konfiguraci, jako je používání pamětí // vše, co potřebujete, abyste mohli automaticky spojovat konektory, ela apagada. // wifiManager.resetSettings (); // zpětné volání pro více režimů konfigurace WiFi APManager.setAPCallback (configModeCallback); // zpětné volání 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"); }
Krok 9: Smyčka
Ve smyčce přečteme pin tlačítka, abychom zjistili, zda byl stisknut, a poté zavoláme metodu pro opětovné povolení režimu AP.
prázdná smyčka () {
WiFiManager wifiManager; // se o botao 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"); zpoždění (2000); ESP. restart (); zpoždění (1000); } Serial.println ("Conectou ESP_AP !!!"); }
Když stisknete tlačítko, ESP opustí režim stanice a otevře váš přístupový bod a portál.
Pamatujte, že nepoužíváme příkaz resetSettings (). Nastavení se při příštím spuštění ESP stále uloží.
Krok 10: Zpětná volání
Funkce zpětného volání, které jsou spojeny s událostmi, slouží k tomu, abyste měli přesný okamžik operace, v našem případě vstup do režimu AP a režimu stanice. Poté můžeme implementovat nějakou požadovanou rutinu, například načtení SSID z připojené sítě.
// zpětné volání que indica que o ESP neobsahuje žádné modo AP
void configModeCallback (WiFiManager *myWiFiManager) {// Serial.println ("Vstup do konfiguračního režimu"); Serial.println ("Entrou no modo de configuração"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP Serial.println (myWiFiManager-> getConfigPortalSSID ()); // zobrazení nebo identifikace SSID znovu
}
// zpětné volání que indica que salvamos uma nova rede para se conectar (modo estação)
void saveConfigCallback () {// Serial.println ("Měl bych uložit konfiguraci"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP}
Doporučuje:
Profesionální meteorologická stanice využívající ESP8266 a ESP32 DIY: 9 kroků (s obrázky)
Profesionální meteorologická stanice využívající ESP8266 a ESP32 DIY: LineaMeteoStazione je kompletní meteorologická stanice, kterou lze propojit s profesionálními senzory od společnosti Sensirion a také s některou komponentou Davis Instrument (Rain Gauge, Anemometer) Projekt je zaměřen jako meteorologická stanice pro vlastní potřebu, ale vyžaduje pouze
Bezdrátová komunikace LoRa 3 až 8 km s nízkými náklady na zařízení E32 (sx1278/sx1276) pro Arduino, Esp8266 nebo Esp32: 15 kroků
Bezdrátová komunikace LoRa 3 až 8 km s nízkými náklady na zařízení E32 (sx1278/sx1276) pro Arduino, Esp8266 nebo Esp32: Vytvářím knihovnu pro správu EBYTE E32 na základě řady zařízení LoRa Semtech, velmi výkonného, jednoduchého a levného zařízení. Verze 3 km zde, verze 8 km zde Mohou pracovat na vzdálenost 3000 m až 8 000 m a mají mnoho funkcí
ESP32 Bluetooth Tutorial - Jak používat vestavěný Bluetooth v ESP32: 5 kroků
ESP32 Bluetooth Tutorial | Jak používat vestavěný Bluetooth ESP32: Ahoj kluci, protože deska ESP32 je dodávána s WiFi & Bluetooth oba, ale pro naše většinou Projekty obvykle používáme pouze Wifi, nepoužíváme Bluetooth. Takže v tomto návodu ukážu, jak snadné je používat Bluetooth ESP32 & Pro vaše základní projekty
Začínáme s ESP32 CAM - Streamování videa pomocí ESP CAM přes Wifi - Projekt bezpečnostní kamery ESP32: 8 kroků
Začínáme s ESP32 CAM | Streamování videa pomocí ESP CAM přes Wifi | Projekt bezpečnostní kamery ESP32: Dnes se naučíme používat tuto novou desku ESP32 CAM a jak ji můžeme kódovat a používat jako bezpečnostní kameru a získávat streamované video přes wifi
Začínáme s ESP32 - Instalace desek ESP32 do Arduino IDE - Kód mrknutí ESP32: 3 kroky
Začínáme s ESP32 | Instalace desek ESP32 do Arduino IDE | ESP32 Blink Code: V tomto instruktážním programu uvidíme, jak začít pracovat s esp32 a jak instalovat desky esp32 do Arduino IDE a naprogramujeme esp 32 tak, aby spustil blink kód pomocí arduino ide