Sisällysluettelo:

ESP8266 ja ESP32 WiFiManagerilla: 10 vaihetta
ESP8266 ja ESP32 WiFiManagerilla: 10 vaihetta

Video: ESP8266 ja ESP32 WiFiManagerilla: 10 vaihetta

Video: ESP8266 ja ESP32 WiFiManagerilla: 10 vaihetta
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Heinäkuu
Anonim
Image
Image
SOKKA IRTI
SOKKA IRTI

Onko WiFiManager sinulle tuttu? Se on kirjasto, joka toimii langattoman yhteyden hallintana, ja sen avulla meillä on helpompi tapa määrittää sekä tukiasema että asema. Olen saanut useita ehdotuksia keskustella tästä aiheesta; joten tänään esittelen teille tämän kirjaston ja sen toiminnot. Esittelen myös sen käytön sekä ESP32: n että ESP8266: n kanssa.

Vaihe 1: PINOUT

SOKKA IRTI
SOKKA IRTI

Tässä näytän kahden käyttämämme laitteen PINOUT:

  • NodeMCU ESP-12E
  • NodeMCU ESP-WROOM-32

Vaihe 2: WiFiManager

WiFiManager on oikeastaan vain WiFi.h -kirjastoon kirjoitettu kirjasto, joka helpottaa langattomien yhteyksien hallintaa. Muista, että sen avulla meillä on suurempi mahdollisuus määrittää sekä tukiasema että asema. Station -tilaa varten määritämme selaimen portaalin kautta.

Jotkut ominaisuudet:

• Se riippuu automaattisesta yhteydestä

• Muun kuin automaattisen määritysportaalin alustaminen

• Toimii valikoivasti kaksoistilassa

Vaihe 3: Näin se toimii

Kuinka se toimii
Kuinka se toimii
Kuinka se toimii
Kuinka se toimii

ESP käynnistää WiFi-määritysportaalin, kun se on yhdistetty, ja tallentaa määritystiedot haihtumattomaan muistiin. Myöhemmin määritysportaali käynnistyy uudelleen vain, jos ESP -moduulin painiketta painetaan.

Täältä voit tarkistaa kokoonpanon kulun ja seurata tätä vaihe vaiheelta:

1. Muodosta yhteys langattomaan tukiasemaan millä tahansa WiFi-yhteensopivalla laitteella, jossa on selain, ja kirjoita osoite 192.168.4.1.

2. Näytöllä on kaksi vaihtoehtoa muodostaa yhteys olemassa olevaan verkkoon:

• Määritä WiFi

• Määritä WiFi (ei skannausta)

3. Valitse yksi verkoista ja anna salasana (tarvittaessa). Tallenna ja odota, että ESP käynnistyy uudelleen.

4. Käynnistyksen lopussa ESP yrittää muodostaa yhteyden tallennettuun verkkoon. Jos et voi tehdä tätä, otat yhteyspisteen käyttöön.

Vaihe 4: Kirjastot

Kirjastot
Kirjastot

Lisää kirjasto "WifiManager-ESP32".

Siirry osoitteeseen https://github.com/zhouhan0126/WIFIMANAGER-ESP32 ja lataa kirjasto.

Pura tiedosto ja liitä se Arduino IDE: n kirjastojen kansioon.

C: / Ohjelmatiedostot (x86) / Arduino / kirjastot

Lisää "DNSServer-ESP32" -kirjasto.

Siirry https://github.com/zhouhan0126/DNSServer---esp32 -linkkiin ja lataa kirjasto.

Pura tiedosto ja liitä se Arduino IDE: n kirjastojen kansioon.

C: / Ohjelmatiedostot (x86) / Arduino / kirjastot

Lisää "WebServer-ESP32" -kirjasto.

Siirry https://github.com/zhouhan0126/WebServer-esp32 -linkkiin ja lataa kirjasto.

Pura tiedosto ja liitä se Arduino IDE: n kirjastojen kansioon.

C: / Ohjelmatiedostot (x86) / Arduino / kirjastot

Huomautus:

WiFiManager-ESP32-kirjastossa on jo asetukset, jotka toimivat ESP8266: n kanssa, joten käytämme vain tätä kahden WiFiManager-libin sijaan (yksi kullekin sirutyypille).

Kuten näemme myöhemmin, ESP8266WiFi ja ESP8266WebServer ovat kirjastoja, joita meidän ei tarvitse ladata, koska ne tulevat jo, kun asennamme ESP8266: n Arduino IDE: hen.

Vaihe 5: Toiminnot

Toiminnot
Toiminnot
Toiminnot
Toiminnot
Toiminnot
Toiminnot

Tässä on joitain toimintoja, joita WiFiManager tarjoaa meille.

1. autoConnect

AutoConnect -toiminto vastaa tukiaseman luomisesta. Voimme käyttää sitä kolmella tavalla.

• autoConnect ("verkon nimi", "salasana"); - luo verkon määritetyllä nimellä ja salasanalla.

• autoConnect ("verkon nimi"); - luo avoimen verkon määritetyllä nimellä.

• autoConnect (); - luo avoimen ja automaattisesti nimetyn verkon, jonka nimi on ESP + chipID.

2. startConfigPortal

StartConfigPortal -toiminto vastaa tukiaseman luomisesta yrittämättä muodostaa yhteyttä aiemmin tallennettuun verkkoon.

• startConfigPortal ("verkon nimi", "salasana"); - luo verkon määritetyllä nimellä ja salasanalla.

• startConfigPortal (); - luo avoimen ja automaattisesti nimetyn verkon, jonka nimi on ESP + chipID.

3. getConfigPortalSSID

Palauttaa portaalin SSID -tunnuksen (tukiasema)

4. getSSID

Tämä palauttaa sen verkon SSID -tunnuksen, johon se on yhdistetty.

5. getPassword

Tämä palauttaa sen verkon salasanan, johon se on yhdistetty.

6. setDebugOutput

SetDebugOutput -toiminto vastaa virheenkorjaussanomien tulostamisesta sarjamonitoriin. Nämä viestit on jo määritetty kirjastossa. Kun käyt läpi toimintoja, tiedot tulostetaan.

Tämä toiminto on oletusarvoisesti TOSI. Jos haluat poistaa viestit käytöstä, aseta toiminto FALSE.

7. setMinimumSignalQuality

SetMinimumSignalQuality -toiminto vastaa verkkojen suodattamisesta signaalin laadun perusteella. WiFiManager ei oletuksena näytä kirjautumisverkkoja alle 8%.

8. setRemoveDuplicateAPs

SetRemoveDuplicateAPs -toiminto on vastuussa verkon päällekkäisyyksien poistamisesta.

Oletusarvoisesti se on TRUE.

9. setAPStaticIPConfig

SetAPStaticIPConfig -toiminto vastaa staattisen osoitteen asetusten määrittämisestä tukiasematilassa.

(IP, GATEWAY, SUBNET)

10. setSTAStaticIPConfig

SetSTAStaticIPConfig -toiminto on vastuussa staattisen osoitteen asetusten asettamisesta asematilassa.

(IP, GATEWAY, SUBNET)

Sinun on lisättävä komento ennen automaattista yhdistämistä !!!

11. setAPCallback

SetAPCallback -toiminto vastaa siitä, että AP -tila on alkanut.

Parametri on toiminto, joka on luotava osoittamaan se takaisinsoittona;

12. setSaveConfigCallback

SetSaveConfigCallback -toiminto ilmoittaa sinulle, että uusi kokoonpano on tallennettu ja yhteys on muodostettu onnistuneesti.

Parametri on toiminto, joka luodaan ja osoittaa sen allbackina.

Sinun on lisättävä komento ennen automaattista yhdistämistä !!!

Vaihe 6: Kokoonpano

Kokoonpano
Kokoonpano

Esimerkki

Esimerkissämme luomme tukiaseman ESP: llä (koodi palvelee sekä ESP8266 että ESP32). AP: n luomisen jälkeen pääsemme portaaliin IP 192.168.4.1: n kautta (joka on oletusarvoinen pääsy siihen). Joten haetaan käytettävissä olevat verkot, valitse yksi ja tallenna. Sieltä ESP käynnistyy uudelleen ja yrittää muodostaa yhteyden siihen, ja sitten se toimii asemana eikä enää tukiasemana.

Kun olet siirtynyt asematilaan, voit palauttaa ESP: n palaamaan tukiasematilaan vain painikkeen avulla.

Vaihe 7: Koodi

Kirjastot

Määritellään ensin käytettävät kirjastot.

Huomaa, että meillä on #if define, #else ja #endif komennot. Ne ovat ehdollisia sisältämään siruun liittyvät tarvittavat kirjastot. Tämä osa on erittäin tärkeä käyttää samaa koodia sekä ESP8266 että ESP32.

#if määritelty (ESP8266)

#include // ESP8266 Core WiFi Library #else #include // ESP32 Core WiFi Library #endif

#if määritelty (ESP8266)

#include // Paikallinen Web -palvelin, jota käytettiin määritysportaalin palvelemiseen

#muu

#include // Paikallinen DNS-palvelin, jota käytetään kaikkien pyyntöjen uudelleenohjaamiseen määritysportaaliin (https://github.com/zhouhan0126/DNSServer---esp32)

#loppu Jos

#include // Paikallinen Web-palvelin, jota käytettiin määritysportaalin palvelemiseen (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Configuration Magic (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ALKUPERÄINEN)

Vaihe 8: Asennus

Asetuksissa määritämme WiFiManagerin yksinkertaisimmalla tavalla. Määritellään vain takaisinsoitot ja luodaan verkko.

const int PIN_AP = 2;

void setup () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // deklaraatio 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 (); // takaisinsoitto quando entra em modo de configuração AP wifiManager.setAPCallback (configModeCallback); // takaisinsoitto 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"); }

Vaihe 9: Silmukka

Silmukassa luemme painikkeen tapin nähdäksemme, onko sitä painettu, ja kutsumme sitten menetelmää AP-tilan ottamiseksi uudelleen käyttöön.

void loop () {

WiFiManager wifiManager; // se o botão foi pressionado if (digitalRead (PIN_AP) == HIGH) {Serial.println ("resetar"); // tenta abrir tai portaali if (! wifiManager.startConfigPortal ("ESP_AP", "12345678")) {Serial.println ("Falha ao conectar"); viive (2000); ESP.restart (); viive (1000); } Serial.println ("Conectou ESP_AP !!!"); }

Kun painat painiketta, ESP poistuu asematilasta ja avaa tukiaseman ja portaalin.

Muista, että emme käytä resetSettings () -komentoa. Asetukset tallennetaan edelleen, kun ESP käynnistyy seuraavan kerran.

Vaihe 10: Takaisinsoitto

Tapahtumiin liittyvät takaisinsoittotoiminnot auttavat sinua saamaan operaation tarkan hetken, meidän tapauksessamme siirtymään AP -tilaan ja Station -tilaan. Voimme sitten toteuttaa jonkin halutun rutiinin, kuten esimerkiksi SSID: n noutamisen yhdistetystä verkosta.

// takaisinsoitto que indica que o ESP entrou no modo AP

void configModeCallback (WiFiManager *myWiFiManager) {// Serial.println ("Asetettu kokoonpanotila"); 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

}

// takaisinsoitto que indica que salvamos uma nova rede para se conectar (modo estação)

void saveConfigCallback () {// Serial.println ("Pitäisi tallentaa konfiguraatio"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // impime o IP do AP}

Suositeltava: