NodeMCU V3 ESP8266 ESP-12E ile RGB LED (PWM) Uygulaması
RGB (Red-Green-Blue) LED içerisinde kırmızı, yeşil ve mavi renk LED diyot barındıran bir devre elemanıdır. Özellikle animasyon ve ışıklandırma sistemlerinde yaygın olarak kullanılır. RGB LED’lerde her renk için belirli aralıklar mevcuttur. Bu aralıklar sayesinde birçok renk elde etmek mümkündür. Bir kontrol algoritması yardımıyla ilgili renk aralıklarının gerilimi düzenlenerek tamamen yanması, tamamen sönmesi veya kısmen yanması sağlanabilir. LED'in parlaklık seviyesini artırmak için LED diyoda uygulanacak gerilim seviyesinin artırılması gerekir. Bu işlem PWM tekniğiyle yapılır.
RGB LED’lerin ortak anot ve ortak katot olmak üzere iki çeşidi mevcuttur. RGB LED’in uzun pini 3,3V pinine bağlıyken ışık veriyorsa ortak anot RGB LED, GND pinine bağlıyken ışık veriyorsa ortak katot RGB LED demektir.
Açılımı Pulse Width Modulation (Sinyal Genişlik Modülasyonu) olan PWM tekniği, sinyal işleme veya sinyal aktarma gibi daha çok elektronik devrelerin yanı sıra mikrodenetleyiciler veya elektrik makineleri gibi özel uygulama alanlarında da yer alan bir tekniktir. Modülasyon işlemi gerçekleştiren bu tekniğin asıl amacı cihazlara verilen elektriğin gücünü kontrol altında tutmaktır. Bu kontrol tamamen anahtarlamayla sağlanır. Anahtarlama ne kadar hızlı yapılırsa, PWM ile aktarılan sinyalin gücü de o kadar artar.
NodeMCU V3 ESP8266 ESP-12E geliştirme kartının GPIO16 (D0) hariç tüm dijital çıkış pinleri PWM sinyali üretebilir. NodeMCU V3 geliştirme kartı, Arduino IDE yazılımıyla kullanılırken PWM pinlerinden varsayılan 1 kHz frekans değerine sahip kare dalga sinyali alınabilir. Bu kare dalga sinyalin lojik 1 olma süresi artırılıp azaltılarak PWM pinlerinden analog değer elde edilebilir. NodeMCU V3 kartındaki ESP8266 mikrodenetleyicisinin PWM çözünürlüğü 10 bittir. Başka bir deyişle PWM pinlerinden maksimum 10 bit veri gönderilebilmektedir. 210 = 1024 farklı değer elde edilir. Bunun anlamı PWM pinlerine 0-1023 arası değerler uygulanarak 0 – 3,3 V arası analog gerilim elde edilebilir. Başka bir deyişle 1 kHz PWM sinyalinin 1 msn olan periyodu 1024 parçaya bölünebilir. Buna göre bir LED diyodun parlaklığı veya bir motorun devir sayısı ayarlanabilir.
PWM pinlerinden 0 – 3,3 V arası analog gerilim alabilmek için analogWrite() fonksiyonu kullanılır. Bu fonksiyonla PWM pinlerine 0-1023 arası değerler uygulayarak bu pinlerden 0 – 3,3 V arası analog gerilim elde edilir.
Bu uygulamada ortak katot RGB LED kullanılacaktır. PWM tekniğiyle iki renk değişik şekillerde karıştırılarak farklı renkler elde edilmiştir. Arduino IDE yazılımında kodlama yapılmıştır.
Uygulamaya Ait Şema, Bağlantı Şekli ve Görseller
Görsel 1.1: RGB LED pin yapısı
Görsel 1.2: NodeMCU V3 ESP8266 ESP-12E ile RGB LED (PWM) uygulaması devre şeması
Görsel 1.3: NodeMCU V3 ESP8266 ESP-12E ile RGB LED (PWM) uygulaması devre şeması (KiCad 7.06 ile çizilmiştir)
Görsel 1.4: NodeMCU V3 ESP8266 ESP-12E ile RGB LED (PWM) uygulaması breadboard bağlantısı
Malzeme Listesi
Sıra No |
Adı |
Özelliği |
Miktarı |
1 |
NodeMCU V3 |
ESP8266 ESP-12E |
1 Adet |
2 |
RGB LED diyot |
5 mm |
1 Adet |
3 |
Direnç |
100R / ¼ W |
3 Adet |
4 |
Breadboard |
830 pin |
1 Adet |
5 |
Jumper kablo |
Erkek-erkek |
- |
Uygulamaya Ait Kod
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