NodeMCU V3 ESP8266 ESP-12E ile STA Modunda Web Tarayıcıdan LED Parlaklığını Ayarlama (PWM) Uygulaması
ESP8266, nesnelerin interneti kısaca IoT (Internet of Things) ile çalışanların bildiği mikrodenetleyicilerden biridir. NodeMCU V3 geliştirme kartı üzerinde ESP8266 mikrodenetleyicisi bulunur. Ayrıca sadece ESP8266 modül olarak da sunulmuştur. ESP8266 ile internete bağlanıp veri yükleme ve veri alma ve çeşitli nesneleri internet üzerinden kontrol etme uygulamaları yapılabilir.
ESP8266 Wi-Fi (kablosuz ağ) özelliğine sahiptir. Espressif System firması tarafından üretilmiştir. ESP8266 tek başına bir sistemi kontrol edebilir. Ayrıca Wi-Fi adaptörü olarak başka bir mikrodenetleyiciye kablosuz ağ özelliği kazandırmak için kullanılabilir.
Temel Wi-Fi özellikleri aşağıda verilmiştir.
- IEEE 802.11 b/g/n standartları desteği
- 2,4 GHz Wi-Fi frekans bandı
- 2 adet sanal Wi-Fi arayüzü (AP ve STA)
- WEP/WPA/WPA2 şifreleme
2014 yılında AI-Thinker firması tarafından IoT modül haline getirilen ESP8266 çipin ESP-01’den ESP-14’e kadar çeşitli modelleri bulunmaktadır.
NodeMCU V3 geliştirme kartı üzerinde ESP-12E bulunur. ESP-12E, varsayılan olarak Arduino wifi shield gibi işlevsellik kazanılmasını sağlayan AT komutlarıyla gelir. Bellek ve işlemci üzerinde özel uygulamalar yapmak için farklı yazılım (firmware) yüklenebilir. ESP-12E, özel yazılımlar için kullanılabilecek 80 MHz düşük güçlü 32 bit işlemci içerir. Ayrıca herhangi bir harici denetleyici olmadan küçük web sayfalarının barındırılmasına imkan sağlar. VoIP uygulamaları ve Bluetooth ortak kullanım arayüzleri için APSD’yi destekler. Tüm çalışma koşullarında çalışabilen ve harici RF parçaları gerektirmeyen kendi kendini kalibre eden bir RF içerir. ESP-12E’de 11 adet dijital giriş/çıkış pini (GPIO) ve 1 adet analog-dijital çevirici (ADC) bulunur. Çalışma voltajı 3,3V’tur.
ESP8266 mikrodenetleyicisi WiFi.mode() fonksiyonuyla seçilebilen 4 adet Wi-Fi çalışma moduna sahiptir:
- WiFi_AP
- WiFi_STA
- WiFi_AP_STA
- WiFi_OFF
AP (Access point: erişim noktası) modunda diğer cihazların bağlanabilmesi için bir kablosuz ağ oluşturur. Bu kablosuz ağın bir SSID (kablosuz ağ adı) ve şifresi olur. AP modunda diğer cihazlar kablosuz ağ listelerinde ESP8266'yı görüp bağlanabilirler.
STA (Station: istasyon) modunda ESP8266, client (istemci) olarak kullanılabilir. ESP8266, telefon, tablet gibi var olan bir kablosuz ağa bağlanabilir ve internete açılabilir. Uzaktan kontrol uygulamalarında bu mod tercih edilir. Bu mod kullanılacağı zaman SSID ve şifresi bilinen bir kablosuz ağ kod içerisinde tanıtılır. Program çalışınca ESP8266 otomatik olarak o ağa bağlanır.
AP_STA modunda ESP8266, bir Wi-Fi bağlantı noktasına bağlanmak için hem AP hem STA modunda kullanılabilir. Hem istasyon hem erişim noktası olarak çalışır. Başka bir deyişle hem internete bağlanabilir hem sinyal güçlendirici olarak çalışabilir.
ESP8266, AP (erişim noktası) modunda çalıştırılırsa kendi üzerinde bir kablosuz ağ oluşturur. Bilgisayar, telefon, tablet vb. herhangi bir cihazla ESP8266'nın oluşturduğu kablosuz ağa bağlanılabilir. Web tarayıcı üzerinden IP adresiyle kontrol sağlanabilir. ESP8266, STA (istasyon) modunda çalıştırılırsa başka bir kablosuz ağa bağlanabilir. Aynı şekilde web tarayıcı üzerinden IP adresiyle kontrol sağlanabilir.
ESP8266 ile IoT (nesnelerin interneti) uygulamalarında kullanılan kütüphaneler aşağıda verilmiştir:
- ESP8266WiFi.h
- WiFiClient.h
- ESP8266WebServer.h
Bu uygulamada ESP8266 istasyon (STA) modunda iken web sayfası üzerinden PWM tekniğiyle LED diyodun parlaklık ayarı yapılacaktır. Arduino IDE yazılımında kodlama yapılmıştır. Web sayfası için HTML kodları kullanılmıştır. İnternette ücretsiz çevrimiçi HTML editörlerinden yararlanılabilir.
Windows cmd komut satırında ipconfig programı kullanılarak ağ geçidi, alt ağ maskesi bilgileri öğrenilebilir. Buna göre ESP8266 için IP adres belirlenir. İnternet üzerinden ESP8266'ya ulaşılmak istenirse modem arayüzüne girilerek port açma/yönlendirme işlemi yapılmalıdır. Başka bir deyişle ESP8266 için kod içerisinde tanımlanan IP adresi için port açma/yönlendirme işlemi yapılmalıdır. Port numarası olarak http için ayrılan port numarası 80 kullanılmalıdır. Bu işlemden sonra farklı ağlar üzerinden web tarayıcıdan ISP (internet servis sağlayıcı) tarafından modeme atanan genel IP adresiyle istek yapılırsa ESP8266'ya yönlendirme yapılır. Kodda tanımlanan "WEB üzerinden PWM Uyg" başlıklı web sayfasına ulaşılarak istenen kontrol yapılabilir. Modem arayüzünden port açma/yönlendirme işlemi yapılmazsa ESP8266'nın bağlandığı aynı kablosuz ağa bağlanan cihazlar üzerinden kontrol sağlanabilir.

Görsel 1.1: Modem port açma/yönlendirme
Uygulamanın anasayfa(), pwmGonder() ve sayfa_bulunamadi() fonksiyonları çalıştırıldığında web tarayıcıdaki çıktıları aşağıda verilmiştir. Programdaki kod açıklamaları yorum satırlarıyla yapılmıştır. Uygulamaya ait kodun indirme bağlantısı aşağıda verilmiştir.

Görsel 1.2: anasayfa() fonksiyonunun web tarayıcı çıktısı (yerel IP adresiyle erişim)

Görsel 1.3: pwmGonder() fonksiyonunun web tarayıcı çıktısı (yerel IP adresiyle erişim)

Görsel 1.4: sayfa_bulunamadi() fonksiyonunun web tarayıcı çıktısı (yerel IP adresiyle erişim)
Uygulamaya Ait Şema, Bağlantı Şekli ve Görseller

Görsel 1.5: NodeMCU V3 ESP8266 ESP-12E ile STA modunda web tarayıcıdan LED parlaklığını ayarlama (PWM) uygulaması devre şeması

Görsel 1.6: NodeMCU V3 ESP8266 ESP-12E ile STA modunda web tarayıcıdan LED parlaklığını ayarlama (PWM) uygulaması devre şeması (KiCad 7.06 ile çizilmiştir)

Görsel 1.7: NodeMCU V3 ESP8266 ESP-12E ile STA modunda web tarayıcıdan LED parlaklığını ayarlama (PWM) uygulaması breadboard bağlantısı
Malzeme Listesi
|
Sıra No |
Adı |
Özelliği |
Miktarı |
|
1 |
NodeMCU V3 |
ESP8266 ESP-12E |
1 Adet |
|
2 |
LED diyot |
5 mm |
1 Adet |
|
3 |
Direnç |
100R / ¼ W |
1 Adet |
|
4 |
Breadboard |
830 pin |
1 Adet |
|
5 |
Jumper kablo |
Erkek-erkek |
- |
Uygulamaya Ait Kod
Kodu bu bağlantıya tıklayarak indirebilirsiniz.
WIFI_STA_PWM_UYG.zip (2.24kB)




Bu internet sitesi içeriğinde yer alan tüm eserler (yazı, resim, görüntü, fotoğraf, video, müzik vb.) İlhan DEMİR'e ait olup, 5846 sayılı Fikir ve Sanat Eserleri Kanunu ve 5237 sayılı Türk Ceza Kanunu kapsamında korunmaktadır. Bu hakları ihlal eden kişiler, 5846 sayılı Fikir ve Sanat eserleri Kanunu ve 5237 sayılı Türk Ceza Kanununda yer alan hukuki ve cezai yaptırımlara tabi olurlar. İlhan DEMİR, yasal işlem başlatma hakkına sahiptir.

BİR CEVAP YAZ