Evet arkadaşlar, bu yazımızda Arduino röle kartı uygulaması yapacağız. Daha önce Arduino ile +24VDC bir selenoid valf kontrolü yapmıştık ama shield’ ımızı kendimiz tasarlamıştık. Shield yapmak için temel elektronik bilginize ve bir takım araç gereçler sayesinde elektronik baskı devre yapma tekniğini bilmeniz gerekmektedir. Meşakkatli bir yoldur ama eşsiz tasarımlar çıkarabilirsiniz.

Peki bu konuda eksiğiniz varsa yapamayacak mısınız, Hayır, siz kolayca yapabilin diye neredeyse sizin istekleriniz doğrultusunda piyasa kolayca bulabileceğiniz hazır Arduino Shield veya Uyumlu Kartlar vardır.

16-Kanal Arduino Röle Kartı

16-Kanal Arduino Röle Kartı

Bu yazımızda 1′ den 16 kanala kadar tasarlanmış röle kartlarından 4 kanallı olanının uygulamasını yapacağız. Diğer kartlarıda aynı yöntemle kullanabilirsiniz sadece input pinleri fazladır. Bazı röle kartları ters tetiklemedir. Yani girişlerleri “0” sıfıra çekince röle çeker, 1 yapınca röle çekmez. Aldığınız karta göre programda değişiklik yapabilirsiniz.

Arduino ile 4-Kanal Röle Kartı ile +24V Selenoid Valf Kontrolü

Arduino ile 4-Kanal Röle Kartı ile +24V Selenoid Valf Kontrolü

Röle kartı devre şemasında ters tetiklemenin nedenini daha iyi anlayabilirsiniz.

Röle Kartı Ters Tetikleme Devre Şeması

Röle Kartı Ters Tetikleme Devre Şeması

Yukarıdaki devrede gördüğünüz gibi röle kartının VCC beslemesi arduino üzerindeki 5V pininden beslenmiştir. Buraya dikkat etmeniz gerekiyor. Eğer arduinonuzu sadece USB port üzerinden beslerseniz ve 4 röleyi de aynı anda çektirirseniz çok akım çekeceğinizden USB port akımı desteklemeyebilir ve portunuz zarar görebilir. Benim tavsiyem harci bir güç kaynağı ile beslemeyi yapmanız daha sağlıklı olacaktır.

5VDC 5A SMPS Güç Kaynağı

5VDC 5A SMPS Güç Kaynağı

Gelelim Arduino ile 4-kanal Röle Kartı modülü programı koduna. Yeni başlayanlar için gayet basit olarak sırasıyla belirli araklıklarda rölelerinizi çektiren bir program örneğini paylaşıyorum. Bu kod sayesinde röle kartınızdaki rölelerin sırayla enerjilendirip sağlamlığını kontrol edebilirsiniz.

// www.kaizen40.com

const int role_1 = 4;   // 4. pin 1. röle olarak tanımlandı
const int role_2 = 5;
const int role_3 = 6;
const int role_4 = 7;

void setup()
{
  pinMode(role_1, OUTPUT);   // çıkış olarak ayarlandı
  pinMode(role_2, OUTPUT);   // çıkış olarak ayarlandı
  pinMode(role_3, OUTPUT);   // çıkış olarak ayarlandı
  pinMode(role_4, OUTPUT);   // çıkış olarak ayarlandı

  // ters tetikleme röle kartları için çıkışlar 1 yap
  digitalWrite(role_1, HIGH);
  digitalWrite(role_2, HIGH);
  digitalWrite(role_3, HIGH);
  digitalWrite(role_4, HIGH);
}

void loop()
{
  digitalWrite(role_1, LOW);   // röleyi çektir
  delay(1000);                 // 1 sn bekle
  digitalWrite(role_1, HIGH);  // röleyi söndür
  delay(1000);
  digitalWrite(role_2, LOW);
  delay(1000);
  digitalWrite(role_2, HIGH);
  delay(1000);
  digitalWrite(role_3, LOW);
  delay(1000);
  digitalWrite(role_3, HIGH);
  delay(1000);
  digitalWrite(role_4, LOW);
  delay(1000);
  digitalWrite(role_4, HIGH);
  delay(1000);
}

Eğer aynı işlevi yapan ileri seviye bir kod isterseniz for döngülerini kullanabilirsiniz. Her zaman en kısa ve en esnek kodları kullanmanızı tavsiye ederim. Rahat edersiniz 🙂

// www.kaizen40.com

const int role[] = {4, 5, 6, 7};  // pinleri tanımla

void setup()
{
  for(int i = 0; i < 4; i++)
  {
    pinMode(role[i], OUTPUT);   // çıkış olarak ayarlandı
    digitalWrite(role[i], HIGH);  // röleyi sıfırla
  }
}

void loop()
{
  for(int i = 0; i < 4; i++)
  {
    digitalWrite(role[i], LOW);   // röleyi çektir
    delay(1000);
    digitalWrite(role[i], HIGH);  // röleyi söndür
    delay(1000);
  }
}

İyi çalışmalar,


15 yorum

a.kerim · 5 Şubat 2019 15:14 tarihinde

merhaba kolay gelsin ben röle kartına arduinodan değilde direk 5vluk bir bataryadan gerilim versem bi sıkıntı yaşarmıyım

    Remzi Şahinoğlu · 5 Şubat 2019 19:29 tarihinde

    bir sorun olmaz. sadece +5vdc besleme vereceğiniz kaynağın gnd pinini röle kartının gnd pini ile birleştirin. Eğer harici bir kaynak kullanmak istemiyorsanız röle kartının kendi +5V pini ile de tetikleme yapabilirsiniz. dikkatli olun. kolay gelsin.

Muharrem · 9 Şubat 2020 14:51 tarihinde

Selam ben arduino üzerinden 4 adet 24 volt selenoid valf çalıştırmak istiyorum tüm bağlantıları defalarca kontrol ettim herşey TamAm selenoidler bağlı değilken sorun yok röle kartı çalıyor selenoidlere güç verince belli bir süre çalışıyor sonra donup kalıyor sorun ne olabilir

    Musa · 16 Eylül 2020 20:08 tarihinde

    Aynı problemden muzdaripim 220 volt geçiriyorum rölelerden çözüm bulabildiyseniz yardımcı olurmusunuz

Remzi Şahinoğlu · 17 Eylül 2020 07:29 tarihinde

Merhaba, Selenoidlerin güç kaynağı ile Arduino nun güç kaynağını ayırmayı deneyin. Kullandığınız röle kartı optokuplörlü olduğu için izole çalışıyor. Eğer aynı güç kaynağını kullanıyorsanız çok akım çekince gerilim düşümü vs arduino parazitlenip problem çıkarabilir.

ismail ddoğan · 29 Aralık 2020 13:46 tarihinde

merhaba aurdino ile 220volt elektriği röleyi açması için tetikleme olarak nasıl kullanabilirim

projem 220 volt elektrik gittiğinde röle çekecek 5dk bekleyip tekrar bırakacak

Remzi Şahinoğlu · 11 Ocak 2021 09:18 tarihinde

merhaba, yukarıdaki röle kartında +24v olarak verilen yere 220v verirseniz olur. Yükünüzün 220v ile çalıştığından emin olun.

said · 26 Ocak 2021 18:21 tarihinde

hocam acil yardımınızı bekliyorum
2 farklı rölem var donanımsal olarak
ikisinide eş zamanlı çalıştırma istiyorum ama kodlarda sorun nedir

void setup() {
// Rölenin bağlı olduğu 7 numaralı pini çıkış pini olarak ayarla
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);

}
void loop() {
digitalWrite(2,HIGH); // Röleyi açık konuma getir
delay(60000); // 3 saniye bekle
digitalWrite(2,LOW); // Röleyi kapalı konuma getir
delay(540000); // 3 saniye bekle

void loop() {
digitalWrite(3,HIGH); // Röleyi açık konuma getir
delay(60000); // 3 saniye bekle
digitalWrite(3,LOW); // Röleyi kapalı konuma getir
delay(540000); // 3 saniye bekle
}

Remzi Şahinoğlu · 27 Ocak 2021 10:56 tarihinde

Merhaba, digitalWrite() komutları arasındaki delay komurlarını kaldır ve pin atamalarını dikkatli yapman gerekir. Ve iki adet void loop() fonksiyonu kullanamazsın. Derleme hatası verir. Bir programın bir adet void loop fonksiyonu olur. İstediğin kadar alt program ekleyebilirsin. Aşağıda paylaşıyorum.

void loop()
{
digitalWrite(2,HIGH); // Röleyi açık konuma getir
digitalWrite(3,LOW); // Röleyi kapalı konuma getir
delay(3000); // 3 saniye bekle

digitalWrite(2,HIGH); // Röleyi açık konuma getir
digitalWrite(3,LOW); // Röleyi kapalı konuma getir
delay(3000); // 3 saniye bekle
}

murat · 16 Kasım 2021 11:36 tarihinde

merhaba hocam ardunio ile usbden tetik nasıl verdirebilirim?
kolay gelsin

    Remzi Şahinoğlu · 21 Kasım 2021 11:21 tarihinde

    Serial.Read() komutu ile usb den gelen bilgileri dinleyip ona göre istediğiniz yaptırabilirsin. Site içinde benzer uygulamar mevcut. Kolay gelsin.

Sinan · 20 Aralık 2021 11:34 tarihinde

Hocam kolay gelsin bir proje yapıyorum 4 farklı 5 volt role modülü kullandım. benim sıkıntım röleler çalışıyor sıkıntı yok ama rölenin biri ikisi çalışıyor 3 sü devereye girdiğinde arduino resetleniyor. tahminimce tetiklemede 20 ma. akım çekiyor roleler diye biliyorum 2 röle 40 ma yapıyor arduni 50 ma çıkıs verebiliyor bu sebeple 3. röle devreye girince çekilen akım 50 ma oluyor ve arduino besleyemeyip kısa devre algılıyıp yeniden başlatıyor. bu hususta bilginize başvurmak istedim. bu tür bir sorunla karşılaşan arkadaşlarımız varmı ne tür bir çözüm ürettiler.

Remzi Şahinoğlu · 17 Ocak 2022 20:20 tarihinde

merhaba, röle beslemesini harici olarak yaparsanız sorun çözülür, siz muhtemelen arduino üzerinden röleleri beslediniz. ve aduinoyu da bilgisayarın usb si üzerinden beslerseniz aynı sorunla karşılaşırsınız. harici bir güç kaynağı üzerinden ayrı olarak beslemeyi sağlayın.

ibrahim loğoğlu · 8 Eylül 2022 10:46 tarihinde

Selamlar. Benim kullandığım röle benim projeme göre ters çalışıyor. Bu da arduinoya gelen akım (besleme ) kesildiğinde veya yeniden başlatıldığında rölenin istemeden çalışmasına sebep oluyor. İstemediğim bu durumu nasıl sadece sinyal geldiğinde çalışacak hale getirebilirim? Röle piyasada satılan arduino uyumlu rölelerden. +5 volt, Gnd. ve in girişleri olanlardan. Bunların ters mantıkla çalışanı var mı?

    Remzi Şahinoğlu · 8 Eylül 2022 20:15 tarihinde

    arduino nun setup kodu içinde direk reset aldığı zaman ilk sıralara çıkışları high yap komutu gönderirsen kesilmelerde tam düşmeden tekrardan röle çekmiş olur. Röle kartı beslemesine ilave kondansatör de eklersen iyi olabilir.

Bir cevap yazın

Avatar placeholder

E-posta hesabınız yayımlanmayacak.

This site uses Akismet to reduce spam. Learn how your comment data is processed.