Isi kandungan:
- Langkah 1: PINOUT
- Langkah 2: WiFiManager
- Langkah 3: Bagaimana Ia Berfungsi
- Langkah 4: Perpustakaan
- Langkah 5: Fungsi
- Langkah 6: Perhimpunan
- Langkah 7: Kod
- Langkah 8: Persediaan
- Langkah 9: Gelung
- Langkah 10: Panggilan Balik
Video: ESP8266 dan ESP32 Dengan WiFiManager: 10 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
Adakah anda biasa dengan WiFiManager? Ia adalah perpustakaan yang berfungsi sebagai pengurus sambungan tanpa wayar, dan dengan itu, kami mempunyai cara yang lebih mudah untuk mengkonfigurasi Titik Akses dan Stesen. Saya telah menerima beberapa cadangan untuk membincangkan perkara ini; jadi hari ini saya akan memperkenalkan anda kepada perpustakaan ini dan fungsinya. Saya juga akan membuat demonstrasi penggunaannya dengan ESP32 dan ESP8266.
Langkah 1: PINOUT
Di sini saya menunjukkan PINOUT dua peranti yang akan kami gunakan:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
Langkah 2: WiFiManager
WiFiManager sebenarnya tidak lebih daripada perpustakaan yang ditulis di atas WiFi.h untuk pengurusan sambungan tanpa wayar yang mudah. Ingatlah bahawa dengannya, kita mempunyai kemudahan yang lebih besar untuk mengkonfigurasi Titik Akses dan Stesen. Untuk mod Stesen, kami mengkonfigurasi melalui portal di penyemak imbas.
Beberapa ciri:
• Ia bergantung pada penyambungan automatik
• Permulaan portal konfigurasi bukan automatik
• Beroperasi secara terpilih dalam mod dwi
Langkah 3: Bagaimana Ia Berfungsi
ESP akan memulakan portal konfigurasi WiFi apabila disambungkan dan akan menyimpan data konfigurasi ke memori yang tidak mudah berubah. Selepas itu, portal konfigurasi hanya akan dimulakan semula sekiranya butang ditekan dalam modul ESP.
Di sini anda boleh memeriksa aliran konfigurasi dan ikuti langkah demi langkah ini:
1. Dengan menggunakan sebarang peranti berkemampuan WiFi dengan penyemak imbas, sambungkan ke titik akses yang baru dibuat dan masukkan alamat 192.168.4.1.
2. Pada layar anda akan mempunyai dua pilihan untuk menyambung ke rangkaian yang ada:
• Konfigurasikan WiFi
• Konfigurasikan WiFi (Tanpa Imbasan)
3. Pilih salah satu rangkaian dan masukkan kata laluan (jika diperlukan). Kemudian simpan dan tunggu ESP dimulakan semula.
4. Pada akhir boot, ESP cuba menyambung ke rangkaian yang disimpan. Sekiranya anda tidak dapat melakukan ini, anda akan mengaktifkan Titik Akses.
Langkah 4: Perpustakaan
Tambahkan perpustakaan "WifiManager-ESP32".
Pergi ke https://github.com/zhouhan0126/WIFIMANAGER-ESP32 dan muat turun perpustakaan.
Buka zip fail dan tampalkannya ke folder perpustakaan Arduino IDE.
C: / Fail Program (x86) / Arduino / perpustakaan
Tambahkan pustaka "DNSServer-ESP32".
Pergi ke pautan https://github.com/zhouhan0126/DNSServer---esp32 dan muat turun perpustakaan.
Buka zip fail dan tampalkannya ke folder perpustakaan Arduino IDE.
C: / Fail Program (x86) / Arduino / perpustakaan
Tambahkan pustaka "WebServer-ESP32".
Pergi ke pautan https://github.com/zhouhan0126/WebServer-esp32 dan muat turun perpustakaan.
Buka zip fail dan tampalkannya ke folder perpustakaan Arduino IDE.
C: / Fail Program (x86) / Arduino / perpustakaan
Catatan:
Perpustakaan WiFiManager-ESP32 sudah mempunyai tetapan yang berfungsi dengan ESP8266, jadi kami hanya akan menggunakan ini, bukan dua lib WiFiManager (satu untuk setiap jenis cip).
Seperti yang akan kita lihat nanti, ESP8266WiFi dan ESP8266WebServer adalah perpustakaan yang tidak perlu kita muat turun, kerana mereka sudah datang ketika kita memasang ESP8266 di Arduino IDE.
Langkah 5: Fungsi
Berikut adalah beberapa fungsi yang ditawarkan oleh WiFiManager kepada kami.
1. sambung auto
Fungsi autoConnect bertanggungjawab untuk membuat Titik Akses. Kita boleh menggunakannya dalam tiga cara.
• autoConnect ("nama rangkaian", "kata laluan"); - membuat rangkaian dengan nama dan kata laluan yang ditentukan.
• autoConnect ("nama rangkaian"); - membuat rangkaian terbuka dengan nama yang ditentukan.
• autoConnect (); - mewujudkan rangkaian yang terbuka dan dinamakan secara automatik dengan nama menjadi 'ESP' + chipID.
2. mulaConfigPortal
Fungsi startConfigPortal bertanggungjawab untuk membuat Titik Akses tanpa cuba menyambung ke rangkaian yang disimpan sebelumnya.
• startConfigPortal ("nama rangkaian", "kata laluan"); - membuat rangkaian dengan nama dan kata laluan yang ditentukan.
• startConfigPortal (); - mewujudkan rangkaian yang terbuka dan dinamakan secara automatik dengan nama menjadi 'ESP' + chipID.
3. dapatkanConfigPortalSSID
Mengembalikan SSID portal (Titik Akses)
4. getSSID
Ini mengembalikan SSID rangkaian yang disambungkan.
5. getPassword
Ini mengembalikan kata laluan rangkaian yang disambungkannya.
6. setDebugOutput
Fungsi setDebugOutput bertanggungjawab untuk mencetak mesej debug pada monitor bersiri. Mesej ini sudah ditentukan di perpustakaan. Semasa anda menjalankan fungsi, data akan dicetak.
Secara lalai, fungsi ini ditetapkan ke BENAR. Sekiranya anda ingin mematikan mesej, tetapkan fungsinya ke PALSU.
7. setMinimumSignalQuality
Fungsi setMinimumSignalQuality bertanggungjawab untuk menyaring rangkaian berdasarkan kualiti isyarat. Secara lalai, WiFiManager tidak akan menunjukkan rangkaian masuk di bawah 8%.
8. setRemoveDuplicateAPs
Fungsi setRemoveDuplicateAPs bertanggungjawab untuk membuang pendua rangkaian.
Secara lalai ia ditetapkan ke BENAR.
9. setAPStaticIPConfig
Fungsi setAPStaticIPConfig bertanggung jawab untuk menetapkan tetapan alamat statik ketika berada dalam mod titik akses.
(IP, GATEWAY, SUBNET)
10. setSTAStaticIPConfig
Fungsi setSTAStaticIPConfig bertanggungjawab untuk menetapkan tetapan alamat statik ketika berada dalam mod stesen.
(IP, GATEWAY, SUBNET)
Anda mesti menambah perintah sebelum autoConnect !!!
11. setAPCallback
Fungsi setAPCallback bertanggungjawab untuk memberitahu anda bahawa mod AP telah dimulakan.
Parameter adalah fungsi yang mesti dibuat untuk menunjukkannya sebagai panggilan balik;
12. setSaveConfigCallback
Fungsi setSaveConfigCallback bertanggungjawab untuk memberitahu anda bahawa konfigurasi baru telah disimpan dan sambungan berjaya diselesaikan.
Parameter adalah fungsi untuk membuat dan menunjukkan ini sebagai allback.
Anda mesti menambah arahan sebelum autoConnect !!!
Langkah 6: Perhimpunan
Contohnya
Dalam contoh kami, kami akan membuat Titik Akses dengan ESP (kodnya akan berfungsi untuk ESP8266 dan ESP32). Selepas penciptaan AP, kami akan mengakses portal melalui IP 192.168.4.1 (yang merupakan lalai untuk mengaksesnya). Oleh itu, mari dapatkan rangkaian yang ada, pilih satu dan simpan. Dari sana, ESP akan dimulakan semula dan cuba menyambung ke sana, dan kemudian ia akan berfungsi sebagai stesen dan tidak lagi sebagai Titik Akses.
Setelah memasuki mod stesen, anda boleh membuat ESP kembali ke mod Titik Akses hanya melalui butang.
Langkah 7: Kod
Perpustakaan
Pertama mari kita tentukan perpustakaan yang akan kita gunakan.
Perhatikan bahawa kami mempunyai perintah #if, #else, dan #endif. Mereka bersyarat untuk memasukkan perpustakaan yang diperlukan berkaitan dengan cip. Bahagian ini sangat penting untuk menjalankan kod yang sama pada ESP8266 dan ESP32.
#jika ditentukan (ESP8266)
#include // ESP8266 Core Library Library #else #include // ESP32 Core WiFi Library #endif
#jika ditentukan (ESP8266)
#include // Local WebServer yang digunakan untuk melayani portal konfigurasi
#selamat
#include // Pelayan DNS Tempatan yang digunakan untuk mengalihkan semua permintaan ke portal konfigurasi (https://github.com/zhouhan0126/DNSServer---esp32)
#endif
#include // Local WebServer yang digunakan untuk melayani portal konfigurasi (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Configuration Magic (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNServer---esp32 (ASAL)
Langkah 8: Persediaan
Dalam persediaan, kami mengkonfigurasi WiFiManager kami dengan cara paling mudah. Mari kita tentukan panggilan balik dan buat rangkaian.
const int PIN_AP = 2;
batal persediaan () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // Dekaraçã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 automamente, ela é apagada. // wifiManager.resetSettings (); // callback para quando entra em modo de configuração AP wifiManager.setAPCallback (configModeCallback); // callback untuk 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"); }
Langkah 9: Gelung
Di gelung, kita akan membaca pin butang untuk melihat apakah sudah ditekan, dan kemudian kita akan memanggil kaedah untuk mengaktifkan semula mod AP.
gelung kosong () {
WiFiManager wifiManager; // se o botão juga pressionado if (digitalRead (PIN_AP) == TINGGI) {Serial.println ("resetar"); // tenta abrir o portal if (! wifiManager.startConfigPortal ("ESP_AP", "12345678")) {Serial.println ("Falha ao conectar"); kelewatan (2000); ESP.mulakan semula (); kelewatan (1000); } Serial.println ("Conectou ESP_AP !!!"); }
Apabila anda menekan butang, ESP akan keluar dari mod Stesen dan membuka Titik Akses dan portal anda.
Ingat bahawa kita tidak menggunakan arahan resetSettings (). Tetapan masih disimpan untuk kali berikutnya ESP boot.
Langkah 10: Panggilan Balik
Fungsi panggil balik, yang berkaitan dengan peristiwa, berfungsi untuk anda memiliki saat operasi yang tepat, dalam kes kami, memasuki mod AP dan mod Stesen. Kita kemudian dapat melaksanakan beberapa rutin yang diinginkan, seperti mengambil SSID dari rangkaian yang disambungkan, misalnya.
// callback que indica que o ESP entrou no modo AP
void configModeCallback (WiFiManager * myWiFiManager) {// Serial.println ("Memasukkan mod konfigurasi"); 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
}
// callback que indica que salvamos uma nova rede para se conectar (modo estação)
batal saveConfigCallback () {// Serial.println ("Harus simpan config"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // imprime o IP lakukan AP}
Disyorkan:
Cara Menghantar Email Dengan Lampiran Dengan Arduino, Esp32 dan Esp8266: 6 Langkah
Cara Menghantar E-mel Dengan Lampiran Dengan Arduino, Esp32 dan Esp8266: Di sini saya ingin menerangkan versi 2 perpustakaan saya EMailSender, evolusi besar berkaitan dengan versi 1, dengan sokongan untuk Arduino dengan perisai ethernet w5100, w5200 dan w5500 dan enc28J60 peranti klon, dan sokongan untuk esp32 dan esp8266. Kini anda boleh mengiklankan
Blinds Control Dengan ESP8266, Integrasi Laman Utama Google dan Openhab dan Kawalan Web: 5 Langkah (dengan Gambar)
Blinds Control Dengan ESP8266, Integrasi Rumah dan Openhab Google dan Kontrol Web: Dalam Instruksional ini saya menunjukkan kepada anda bagaimana saya menambah automasi pada tirai saya. Saya mahu dapat menambah dan mengeluarkan automasi, jadi semua pemasangan terpasang. Bahagian utamanya adalah: Motor stepper Driver stepper dikendalikan bij ESP-01 Gear dan pemasangan
8 Kawalan Relay Dengan Penerima NodeMCU dan IR Menggunakan Aplikasi Jauh dan Android WiFi dan IR: 5 Langkah (dengan Gambar)
8 Kawalan Relay Dengan Penerima NodeMCU dan IR Menggunakan Aplikasi Jauh dan Android WiFi dan IR: Mengendalikan 8 suis relai menggunakan penerima nodemcu dan ir melalui aplikasi wifi dan jauh dan android. Alat kawalan jauhnya tidak bergantung pada sambungan wifi. DI SINI ADALAH KLIK VERSI YANG DIKEMASKINI SINI
Paparan Suhu dan Kelembapan dan Pengumpulan Data Dengan Arduino dan Pemprosesan: 13 Langkah (dengan Gambar)
Paparan Suhu dan Kelembapan dan Pengumpulan Data Dengan Arduino dan Pemprosesan: Pengenalan: Ini adalah Projek yang menggunakan papan Arduino, Sensor (DHT11), komputer Windows dan program Pemprosesan (boleh dimuat turun percuma) untuk memaparkan data Suhu, Kelembapan dalam digital dan borang graf bar, masa dan tarikh paparan dan jalankan waktu mengira
SENSOR SUHU DENGAN LCD DAN LED (Membuat Sensor Suhu Dengan LCD dan LED): 6 Langkah (dengan Gambar)
SENSOR SUHU DENGAN LCD DAN LED (Membuat Sensor Suhu Dengan LCD dan LED): hai, saya. Ini adalah bacaan suhu dengan reka bentuk saya sendiri, dengan sensor ini dan