PWM (Pulse Width Modulation) Darbe Genişlik Modülasyonu manasına gelir. Basit olarak anlatmak gerekirse bir LED’in parlaklığını veya bir motorum dönüş hızını PWM ile ayarlayabiliriz.

Arduino üzerindeki pinlerin 6 tanesi analog çıkış yapmak yani PWM için kullanılabilir. Analog çıkış tam olarak ne anlama gelir? Arduino ile pinlerden 2 türlü çıkış alabiliriz. Birincisi dijital,  ikincisi analog.

Dijital çıkış  digitalWrite()  komutu ile yapılır. Dijital çıkış verdiğimiz pine 5V vermiş oluruz. Bu yüzden bu pine bağlı LED tam parlaklıkla yanar.
Analog çıkış ise  analogWrite()  komutu ile yapılır. Komutla vereceğimiz değere göre pinde 0V-5V arası bir değer okunur. Böylece pine bağlı LED istediğimiz düzeyde bir parlaklıkta yanar. Komutun kullanımı şu şekildedir:

pinNumarası yerine analog çıkış için kullanacağımız pin numarasını azarız. Bu pinler Arduino üzeinde  ~ işareti ile işaretlenmiştir. Çıkış pinlerinde pin isminin yanında bu işaret varsa o pin analog çıkış verebilir. Arduino UNO zerindeki pinlerden 3, 5, 6, 9, 10 ve 11 nolu pinler analog çıkış yani PWM pinleridir.

pwmMiktarı yerine ise 0-255 arası bir değer yazarız. 255 yazdığımızda tam güç vermiş oluruz.

Örneğin 9 nolu pine %50 PWM vermek istiyorsak

yazmamız gerekir. 255’in yarısı 127’dir. Böylece 9 nolu çıkışta %50 PWM görülür.

Şimdi bunu bir örnek ile görelim. Arduinonun örnekler bölümünden , basit örneklerden Fade örneğini inceleyelim. Fade örneği için kullanılacak devre aşağıdaki gibi olacak:

Bu örneği Arduino’da açmak için  Dosya->  Örnekler ->  01.Basics  ->  Fade  menüsünü takip edebiliriz. Komutlar aşağıdaki gibidir.

Bu örnekteki bazı komutları inceleyelim.

komutu 9 nolu pinin led isminde tanımlanmasını sağlıyor. İsim led olmak zorunda değil. Biz anlaşılır olsun diye led olarak kullanıyoruz. Bir pin numarasına isim verdikten sonra artık o verdiğimiz ismi yazdığımızda pin numarasını kastetmiş oluruz. Yani artık  led  yazdığımızda 9 nolu pin ile işlem yapılmış olacak.

komutunda  led  isimli pine  parlaklik değişkeninin değeri kadar PWM uygulanıyor. parlaklik değişkeninin değeri ise sürekli  artis  değişkeninin değeri kadar artıyor. Örneğimizde  parlaklik değişkeninin başlangıç değeri 0. artis değişkeninin değeri ise 5. Böylece parlaklik değişkeni her seferinde 5 artarak 255’e kadar çıkacak. 255’e çıktığında ise;

komutu sayesinde artış bitecek azalış başlayacak. Ta ki 0’a düşene kadar. 0’a düştüğünde ise tekrar artışa geçecek. Böylece sürekli 0-255 arasında gidip gelecek. Biz de LED’imizin yavaş yavaş yanıp söndüğünü göreceğiz. Bu 5’er 5’er artış ve azalış işlemleri 30 milisaniyede bir olacak. Bunu aşağıdaki komutla yapıyoruz:

delay() komutu kodların çalışmasını parantez içindeki süre kadar (milisaniye olarak) durdurur.

Bu dersimiz de bu kadar. İnşallah faydalı olmuştur. Başka bir derste görüşmek üzere…


Benzer Yazılar

Arduino Dersleri – Led Yakma

Bu dersimizde Arduino ile ilk uygulamamızı yapacağız. LED yakmak Arduino programının örnek kodları arasında yer alır. LED yakma örneği basit ama programın çalışma mantığını anlamak açısından önemli bir örnektir. 

PicBasic Pro – FOR…NEXT Komutu

For-Next komutu, belirlenen bir komut grubunun belirlenen sayıda tekrar etmesini sağlayan komuttur.

Pic Basıc pro dersleri LCD kullanımı

Bu dersimize DEFINE komutu ile devam edelim.DEFINE komutları PBP da bazı tanımlanmış parametreleri değiştirmemizi sağlar önceden tanımlanmış LCD bacakları, osilatör frekansı,

USB’den 12 Volt Alan Devre

USB'den alınan 5 Volut 12 Volta çeviren devre


Facebookta Paylas