İçindekiler:
- 1. Adım: PINOUT
- 2. Adım: WiFiManager
- Adım 3: Nasıl Çalışır?
- 4. Adım: Kitaplıklar
- Adım 5: Fonksiyonlar
- Adım 6: Montaj
- 7. Adım: Kod
- Adım 8: Kurulum
- Adım 9: Döngü
- Adım 10: Geri Aramalar
Video: WiFiManager ile ESP8266 ve ESP32: 10 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
WiFiManager'a aşina mısınız? Bu, kablosuz bağlantı yöneticisi olarak hizmet veren bir kitaplıktır ve onunla hem Erişim Noktası hem de İstasyon yapılandırmanın daha kolay bir yoluna sahibiz. Bu konuyu tartışmak için birkaç öneri aldım; bu yüzden bugün size bu kütüphaneyi ve fonksiyonlarını tanıtacağım. Ayrıca hem ESP32 hem de ESP8266 ile kullanımının bir gösterimini yapacağım.
1. Adım: PINOUT
Burada kullanacağımız iki cihazın PINOUT'unu gösteriyorum:
- DüğümMCU ESP-12E
- NodeMCU ESP-WROOM-32
2. Adım: WiFiManager
WiFiManager, kablosuz bağlantıların kolay yönetimi için WiFi.h'nin üzerine yazılmış bir kitaplıktan başka bir şey değildir. Bununla birlikte, hem Erişim Noktası hem de İstasyon yapılandırmak için daha büyük bir olanağımız olduğunu unutmayın. İstasyon modu için tarayıcıda bir portal üzerinden yapılandırma yapıyoruz.
Bazı özellikler:
• Otomatik bağlantıya bağlıdır
• Otomatik olmayan konfigürasyon portalının başlatılması
• Çift modda seçici olarak çalışır
Adım 3: Nasıl Çalışır?
ESP, bağlandığında bir WiFi yapılandırma portalı başlatacak ve yapılandırma verilerini kalıcı belleğe kaydedecektir. Ardından, yapılandırma portalı yalnızca ESP modülünde bir düğmeye basıldığında yeniden başlayacaktır.
Burada yapılandırma akışını kontrol edebilir ve bu adımı adım adım takip edebilirsiniz:
1. Bir tarayıcı ile WiFi özellikli herhangi bir cihazı kullanarak yeni oluşturulan erişim noktasına bağlanın ve 192.168.4.1 adresini girin.
2. Ekranda mevcut bir ağa bağlanmak için iki seçeneğiniz olacaktır:
• WiFi'yi yapılandırın
• WiFi'yi yapılandırın (Tarama Yok)
3. Ağlardan birini seçin ve parolayı girin (gerekirse). Ardından kaydedin ve ESP'nin yeniden başlatılmasını bekleyin.
4. Önyüklemenin sonunda, ESP kayıtlı ağa bağlanmaya çalışır. Bunu yapamıyorsanız, bir Erişim Noktasını etkinleştireceksiniz.
4. Adım: Kitaplıklar
"WifiManager-ESP32" kitaplığını ekleyin.
github.com/zhouhan0126/WIFIMANAGER-ESP32 adresine gidin ve kitaplığı indirin.
Dosyayı açın ve Arduino IDE'nin kitaplıklar klasörüne yapıştırın.
C: / Program Dosyaları (x86) / Arduino / kitaplıklar
"DNSServer-ESP32" kitaplığını ekleyin.
github.com/zhouhan0126/DNSServer---esp32 bağlantısına gidin ve kitaplığı indirin.
Dosyayı açın ve Arduino IDE'nin kitaplıklar klasörüne yapıştırın.
C: / Program Dosyaları (x86) / Arduino / kitaplıklar
"WebServer-ESP32" kitaplığını ekleyin.
github.com/zhouhan0126/WebServer-esp32 bağlantısına gidin ve kütüphaneyi indirin.
Dosyayı açın ve Arduino IDE'nin kitaplıklar klasörüne yapıştırın.
C: / Program Dosyaları (x86) / Arduino / kitaplıklar
Not:
WiFiManager-ESP32 kitaplığı zaten ESP8266 ile çalışan ayarlara sahiptir, bu nedenle iki WiFiManager kitaplığı (her çip türü için bir tane) yerine yalnızca bunu kullanacağız.
Daha sonra göreceğimiz gibi, ESP8266WiFi ve ESP8266WebServer, Arduino IDE'ye ESP8266'yı kurduğumuzda zaten geldikleri için indirmemize gerek olmayan kütüphanelerdir.
Adım 5: Fonksiyonlar
İşte WiFiManager'ın bize sunduğu bazı işlevler.
1. otomatik Bağlantı
AutoConnect işlevi, bir Erişim Noktası oluşturmaktan sorumludur. Bunu üç şekilde kullanabiliriz.
• autoConnect ("ağ adı", "şifre"); - tanımlanan ad ve şifre ile bir ağ oluşturur.
• autoConnect ("ağ adı"); - tanımlanan adla açık bir ağ oluşturur.
• otomatik bağlantı (); - adı 'ESP' + chipID olan açık ve otomatik olarak adlandırılmış bir ağ oluşturur.
2. startConfigPortal
startConfigPortal işlevi, önceden kaydedilmiş bir ağa bağlanmaya çalışmadan bir Erişim Noktası oluşturmaktan sorumludur.
• startConfigPortal ("ağ adı", "parola"); - tanımlanan ad ve şifre ile bir ağ oluşturur.
• startConfigPortal (); - adı 'ESP' + chipID olan açık ve otomatik olarak adlandırılmış bir ağ oluşturur.
3. getConfigPortalSSID
Portalın SSID'sini döndürür (Erişim Noktası)
4. getSSID
Bu, bağlı olduğu ağın SSID'sini döndürür.
5. Şifre al
Bu, bağlı olduğu ağın şifresini döndürür.
6. setDebugOutput
setDebugOutput işlevi, seri monitörde hata ayıklama mesajlarının yazdırılmasından sorumludur. Bu mesajlar zaten kitaplıkta tanımlanmıştır. Siz fonksiyonlardan geçerken, veriler yazdırılacaktır.
Varsayılan olarak, bu işlev DOĞRU olarak ayarlanmıştır. Mesajları devre dışı bırakmak istiyorsanız, işlevi YANLIŞ olarak ayarlamanız yeterlidir.
7. Minimum Sinyal Kalitesini ayarlayın
setMinimumSignalQuality işlevi, ağları sinyal kalitesine göre filtrelemekten sorumludur. Varsayılan olarak WiFiManager, %8'in altındaki oturum açma ağlarını göstermez.
8. SetRemoveDuplicateAP'ler
setRemoveDuplicateAPs işlevi, ağ kopyalarını kaldırmaktan sorumludur.
Varsayılan olarak DOĞRU olarak ayarlanmıştır.
9. setAPStaticIPConfig
setAPStaticIPConfig işlevi, erişim noktası modundayken statik adres ayarlarının yapılmasından sorumludur.
(IP, AĞ GEÇİDİ, ALT AĞ)
10. setSTAStaticIPConfig
setSTAStaticIPConfig işlevi, istasyon modundayken statik adres ayarlarının yapılmasından sorumludur.
(IP, AĞ GEÇİDİ, ALT AĞ)
Komutu autoConnect'ten önce eklemelisiniz!!!
11. setAPCallback
setAPCallback işlevi, AP modunun başladığını size bildirmekten sorumludur.
Parametre, onu bir geri arama olarak belirtmek için oluşturulması gereken bir işlevdir;
12. setSaveConfigCallback
setSaveConfigCallback işlevi, yeni bir yapılandırmanın kaydedildiğini ve bağlantının başarıyla tamamlandığını size bildirmekten sorumludur.
Parametre, oluşturmak için bir işlevdir ve bunu bir geri dönüş olarak belirtir.
Komutu autoConnect'ten önce eklemelisiniz !!!
Adım 6: Montaj
Örnek
Örneğimizde ESP ile bir Erişim Noktası oluşturacağız (kod hem ESP8266 hem de ESP32'ye hizmet edecektir). AP'nin oluşturulmasından sonra, portala IP 192.168.4.1 (erişmek için varsayılan olan) üzerinden erişeceğiz. O halde mevcut ağları alalım, birini seçip kaydedelim. Oradan, ESP yeniden başlatılacak ve ona bağlanmaya çalışacak ve ardından artık bir Erişim Noktası olarak değil, bir istasyon olarak çalışacaktır.
İstasyon moduna girdikten sonra sadece buton ile ESP'nin Erişim Noktası moduna dönmesini sağlayabilirsiniz.
7. Adım: Kod
Kütüphaneler
Öncelikle kullanacağımız kütüphaneleri tanımlayalım.
#if tanımlanmış, #else ve #endif komutlarımız olduğunu unutmayın. Çip ile ilgili gerekli kitaplıkları içermeleri şartına bağlıdırlar. Bu kısım, aynı kodu hem ESP8266 hem de ESP32'de çalıştırmak için son derece önemlidir.
#if tanımlı(ESP8266)
#include //ESP8266 Çekirdek WiFi Kitaplığı #else #include //ESP32 Çekirdek WiFi Kitaplığı #endif
#if tanımlı(ESP8266)
#include // Yapılandırma portalına hizmet etmek için kullanılan Yerel Web Sunucusu
#Başka
#include //Tüm istekleri yapılandırma portalına yönlendirmek için kullanılan Yerel DNS Sunucusu (https://github.com/zhouhan0126/DNSServer---esp32)
#endif
#include //Yapılandırma portalına hizmet etmek için kullanılan Yerel Web Sunucusu (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Yapılandırma Sihri (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORİJİNAL)
Adım 8: Kurulum
Kurulumda WiFiManager'ımızı en basit şekilde yapılandırıyoruz. Geri aramaları tanımlayalım ve ağı oluşturalım.
const int PIN_AP = 2;
geçersiz kurulum() { Serial.begin(9600); pinMode(PIN_AP, GİRİŞ); //wifiManager'a itiraz etme WiFiManager wifiManager;
//kullanılan esse comando, configurações são apagadas da memória olarak //caso tiver salvo alguma rede para conectar autoamente, ela é apagada. // wifiManager.resetSettings(); //AP wifiManager.setAPCallback(configModeCallback); //wifiManager.setSaveConfigCallback(saveConfigCallback); // ESP_AP com senha 12345678 wifiManager.autoConnect("ESP_AP", "12345678"); }
Adım 9: Döngü
Döngüde buton pinine basılıp basılmadığını görmek için okuyacağız ve ardından AP modunu yeniden etkinleştirmek için yöntemi çağıracağız.
boşluk döngüsü () {
WiFiManager wifiManager; // bu nedenle, eğer (digitalRead(PIN_AP) == HIGH) { Serial.println("resetar"); // portalın kısaltması if(!wifiManager.startConfigPortal("ESP_AP", "12345678")){ Serial.println("Falha ao conectar"); gecikme(2000); ESP.restart(); gecikme(1000); } Serial.println("Conectou ESP_AP!!!"); }
Düğmeye bastığınızda, ESP İstasyon modundan çıkar ve Erişim Noktanızı ve portalınızı açar.
ResetSettings() komutunu kullanmadığımızı unutmayın. Ayarlar, ESP'nin bir sonraki açılışında kullanılmak üzere kaydedilir.
Adım 10: Geri Aramalar
Olaylarla ilişkili geri arama işlevleri, bizim durumumuzda AP moduna ve İstasyon moduna girerek bir işlemin tam anına sahip olmanıza hizmet eder. Ardından, örneğin bağlı ağdan SSID'yi almak gibi istenen bazı rutinleri uygulayabiliriz.
//geri arama kuyruğu gösterge kuyruğu o ESP girişi yok modo AP
void configModeCallback (WiFiManager *myWiFiManager) { // Serial.println("Yapılandırma moduna girildi"); Serial.println("Yapılandırmaya giriş yok"); Seri.println(WiFi.softAPIP()); // IP do AP Serial.println(myWiFiManager->getConfigPortalSSID()); // impprime veya SSID criado da rede
}
//geri arama que indica que salvamos uma nova rede para se conectar (modo estação)
void saveConfigCallback() { // Serial.println("Yapılandırmayı kaydetmeli"); Serial.println("Configuração salva"); Seri.println(WiFi.softAPIP()); // IP do AP }
Önerilen:
Uno ile ESP8266 WeMos D1 R1 Wifi İşlemci Kullanarak ESP32-Cam ile Görüntü Yakalama ve Gönderme: 7 Adım
ESP8266 WeMos D1 R1 Uno ile Wifi İşlemci Kullanarak ESP32-Cam ile Görüntü Yakalayın ve Gönderin: Uno ile ESP8266 WeMos D1 R1 WiFI İşlemci kullanarak ESP32-Cam (OV2640) kullanarak görüntü yakalayın ve e-postaya gönderin, Google Drive'a kaydedin ve gönderin Twilio'yu kullanan Whatsapp.Requirements: Uno'lu ESP8266 WeMos D1 R1 WiFI İşlemci (https://protosupplies
MicroPython ile SSD1306 Oled ile ESP32 Arayüzü: 5 Adım
MicroPython ile SSD1306 Oled ile ESP32 Arayüzü: Micropython, python'un optimize edilmiş ve python'un küçük ayak izidir. Bu, bellek kısıtlamaları ve düşük güç tüketimi olan gömülü cihaz için inşa etmek anlamına geliyordu. Micropython, ESP8266, ESP32, Ardui'yi içeren birçok denetleyici ailesi için kullanılabilir
ESP32 ile PWM - Arduino IDE ile ESP 32'de PWM ile LED Karartma: 6 Adım
ESP32 ile PWM | Arduino IDE ile ESP 32'de PWM ile LED Karartma: Bu talimatta Arduino IDE & PWM temel olarak herhangi bir MCU'dan analog çıkış üretmek için kullanılır ve bu analog çıkış 0V ile 3.3V (esp32 durumunda) arasında herhangi bir şey olabilir & itibaren
DHT11 ile ESP32 Tabanlı M5Stack M5stick C Hava Durumu Monitörü - DHT11 ile M5stick-C'de Sıcaklık Nem ve Isı İndeksini İzleme: 6 Adım
DHT11 ile ESP32 Tabanlı M5Stack M5stick C Hava Durumu Monitörü | DHT11 ile M5stick-C'de Sıcaklık Nem ve Isı İndeksini İzleme: Merhaba arkadaşlar, bu talimatta DHT11 sıcaklık sensörünün m5stick-C (m5stack tarafından geliştirilen bir geliştirme kartı) ile nasıl arayüzleneceğini ve m5stick-C ekranında nasıl görüntüleneceğini öğreneceğiz. Bu eğitimde sıcaklık, nem ve sıcaklık değerlerini okuyacağız; ısı ben
ESP32 ile Hücresel Ağ ile IOT: 23 Adım
ESP32 ile Hücresel Ağ ile IOT: Bugün GPRS modemi veya daha doğrusu ESP32 ve cep telefonu şebekesi ile kullanımı hakkında tartışacağız. Bu çok iyi çalışan bir şey. MQTT protokolünü kullanarak verileri Ubidots panosuna göndereceğiz. Bu montajda kullan