Proje 01 - LED
Giriş
Bu projede set üzerindeki LED'i nasıl yakıp söndürebileceğini öğreneceksin.
Arduino'da elektronik devreleri kontrol etmek için bir takım giriş ve çıkış pinleri bulunuyor. Kit üzerindeki kırmızı LED, Arduino'nun 10 numaralı dijital pinine bağlı ufak bir devreden oluşuyor. Bu devrenin şemasını aşağıda bulabilirsin.
Yeni Kavramlar
Temel Elektronik Kavramları
Elektronik devrelerde iki temel kavram vardır:
Gerilim (Voltage): Elektrik potansiyeli farkıdır, volt (V) ile ölçülür. Su borusundaki basınç gibi düşünebilirsin. Arduino'da genellikle 5V kullanırız.
Akım (Current): Elektrik yüklerinin hareketidir, amper (A) ile ölçülür. Su borusundaki su akışı gibi düşünebilirsin. LED'lerin yanması için belirli bir akıma ihtiyaçları vardır.
Programlama Kavramları
Bu projede öğreneceğin temel programlama kavramları:
Fonksiyonlar: Belirli bir görevi yapan kod blokları. Arduino'da iki özel tanımlı fonksiyon vardır:
- setup(): Sadece bir kez çalışır (başlangıçta)
- loop(): Sürekli tekrarlanır
Bunlar dışında biz de kodumuzun parçalarını yeniden yazmak zorunda kalmadan, tekrar tekrar kullanılabilir hale getirmek, veya kodun yaptığı işlemleri anlamlı gruplar altında toplamak için kendi fonksiyonlarımızı tanımlayabiliriz.
void anahtar kelimesi: Bu fonksiyonun herhangi bir değer döndürmediğini belirtir. Sadece işlem yapar, sonuç döndürmez.
OUTPUT sabiti: Arduino'nun önceden tanımlanmış bir sabiti. Bir pini çıkış olarak ayarlamak için kullanılır.
Devre Açıklaması
Devrede Q1 olarak işaretlenmiş eleman bir transistör. Transistörleri elektrikle
açılıp kapanabilen bir anahtar gibi düşünebilirsin. Şema'da solunda gözüken
bacağına baz ismi veriliyor ve bu bacakla, alttaki emitör bacağı arasında bir
gerilim olduğunda transistör iletime geçiyor. İletimde olduğunda üstteki bacağı
kollektörden, emitöre doğru bir akım akmasına izin veriyor. Baz gerilimi
kesildiğinde ise transistörden akım akmıyor. Transistör iletime geçtiğinde,
kollektöre bağli LED üzerinden bir akım akıyor ve LED yanıyor.
Kod
Şimdi Arduino IDE'yi bilgisayarında açıp aşağıdaki kodu yazabilirsin. Veya indirdiğin projeler arşivinin içindeki bu kodun hazır halini Arduino IDE'ye yükleyebilirsin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | |
Kodu nasıl Arduino'ya yüklerim?
Kiti USB kablosuyla bilgisayarına bağlayıp, Arduino IDE penceresinde bulunan
butonuna basarak kodu yükleyip çalıştırabilirsin.
Kod çalıştığında kit üzerinde bulunan LED 1 saniye aralıklarla yanıp sönmeye başlayacak.
Olmadı mı?
Eğer bu süreçte bir problemle karşılaşırsan Sorun giderme kısmına bir göz at.
Egzersizler
Böylece ilk Arduino kodunu çalıştırmış oldun. Bu projede öğrendiklerinle aşağıdakileri yapabilir misin?
- LED'in yanıp sönme hızını iki katına çıkarabilir misin?
- LED'in yanıp sönme bekleme sürelerini 20ms gibi insan gözünün algılayamayacağı kadar hızlı yaparsan ne oluyor? 1
- LED'i 30ms yanık, 10ms sönük tutarsan ne olur? 2
-
İnsan gözü LED'in bu hızda yanıp söndüğünü göremez ama artık gözüne toplamda daha az ışık ulaştığı için LED'in parlaklığı yarı yarıya azalmış gibi olur. ↩
-
Şimdi artık LED, toplam 40ms'lik zamanın %75'ini yanık geçirdiği için, LED'in görünen parlaklığı %75'ine inmiş olur. LED'lerin parlaklığını değiştirmek için dahice bir yöntem! ↩