Bu devre ile butona basıldığında lambayı yakmayı tekrar basıldığında ise söndürmeyi amaçlıyoruz.

FPDT18RIX6G2TLR.MEDIUM.jpgArduino ile yüksek güçte alıcıları kontrol etmek röle ile mümkündür. Çünkü kendi giriş çıkış pinleri başına 40 mA, 3.3V pini için 50 mA limiti vardır. Standart led akımının 20 mA olduğunu biliyorsanız Arduino çıkışlarıyla led yakmak dışında direkt bir iş yapamayacağınızı anlamışsınızdır.

Röle küçük güçlü elektromanyetik anahtarlama elemanıdır. Eğer belli bir güçte, örneğin üç fazlı asenkron bir motor veya ısıtıcı gibi alıcılardan bahsediyorsak kontaktör kullanmalıyız. Dolayısıyla röle ile kumanda edebileceklerimiz de sınırlı. Şimdi standart bir röle kılıfından hangi bacağın ne anlama geldiğini anlamaya çalışalım.images.pngRölenin bobin uçları enerjilendiğinde kontaklar konum değiştirir. Bu kontaklar NO (Normalde Açık) ve NC (Normalde Kapalı) olmak üzere iki tanedir ve bobin enerjilendiğinde normalde açık olan kapanırken normalde kapalı olan açılır. C ise Ortak (Common) uçtur. Bu durumu bir de şöyle izah edebiliriz;

  • Ölçü aletini diyot kademesine alalım.
  • Bobine enerji vermeden Proplardan birini C yani ortak uca, diğerini ise NO yani normalde kapalı uca değdirelim. Buzzer ötmeyecektir. Yine aynı ucu C’ye, diğerini NC yani normalde kapalı uca değdirdiğimizde buzzer öter, yani kısa devredir.
  • Bobine enerji verip işlemleri tekrarladığımızda önceki durumun tersi ile karşılaşırız. C ile NO arası buzzer öter, yani kısa devredir, C ile NC arası ise ötmez, açık devredir.

Görüldüğü gibi rölenin kontakları bobine enerji verilmesine bağlı olarak açık devre ise kısa, kısa devre ise açık devreye dönmektedir. Şimdi devre üzerinde bilmediğimiz eleman kalmadığına göre devreyi kurmaya başlayalım.

arduino19.PNG

Devrede 8. pini giriş, 2. pini çıkış olarak kullanıyoruz. Giriş elemanı olan butonu R2 direnci ile GND’ye bağlayarak butona basılmadığında Arduino’nun durumu ‘0’ olarak görmesini istiyoruz. Bu direnç sistemine pull-down deniyor. Pull-Down ‘sıfırda tut’ anlamına gelen direnç sistemi dışında bir de girişi sürekli ‘1’ olması istenen devrelerde Pull-up kullanılır. Bu da ‘birde tut’ anlamına gelir.

Devreye ait kodlar ve açıklamalar da aşağıdaki gibidir.

/*
5. Arduino ile butona basıldıkça röleye bağlı
lambayı yakıp söndüren program.
*/
int butonpin = 8;                        // butonun bağlı olduğu pin
int rolepin = 2;                           //rölenin bağlı olduğu pin
int butondurum = 0;                //butonun anlık durumu
int oncekibutondurum = 0;    // önceki buton durumu
int roledurum = 0;                   // rölenin anlık durumu

void setup() {

pinMode(butonpin, INPUT);     // 8. pine bağlı butonu giriş yap.
pinMode(rolepin, OUTPUT);     // 2. pine bağlı röleyi çıkış yap.

}

void loop() {

butondurum = digitalRead(butonpin);   // butondaki veriyi değişkene at.
roledurum = digitalRead(rolepin);         // röledeki veriyi değişkene at.

if (butondurum != oncekibutondurum) {  // butona basılmış mı diye bak.
if (butondurum== HIGH) {                           // butona basılmış ise
if (roledurum== LOW) {                                //röle çekili değil ise
digitalWrite(rolepin, HIGH);                        //röle çeksin.
}
else {                                                                  //röle çekili ise
digitalWrite(rolepin, LOW);                         // bıraksın
}
}
}

}

 

İşlem Basamakları

  1. Şekildeki devreyi kurunuz.
  2. Kodları yükleyerek çalışmasını inceleyiniz.
  3. Kodlarda değişikliğe giderek bu devreyi 5 sn’lik bir turn off devresine çeviriniz.

Yorum bırakın