Arduino 4 Buton, 4 Röle

Ertek68

Profesyonel Üye
Katılım
16 Ağu 2007
Mesajlar
1,731
Puanları
281
Yaş
52
Merhaba Arkadaşalar.
Elimde Arduino Nano ve 4'lü Röle kartı (5 v.) mevcut.
Yapmak istediğim şey; 4 adet buton ile bu 4 röleyi kontrol etmek,
Şöyle ki; Bu 4 butondan birine basılırsa ona karşılık gelen röle çekecek, butonu bırakıldığında röle de bırakacak.
Önemli husus; Herhangi bir butona basıldığında, bırakıncaya kadar diğer butonlar işlevsiz olacak. Yani ilk basılan buton bırakılıncaya kadar diğer butonlara basılsada başka röle çekmeyecek.
........................................ Şimdiden Teşekkürler............................................
 
Zor bir şey değil. temel arduino bilgisi olan herkesin biraz uğraşla çözebileceği bir problem. Önce röleleri sırayla butonlara bastıkça tetikleyen devreyi tasarlayın. Sonra da diğer koşulları if komutlarıyla oluşturup her bir röleyi iletime geçirecek olan kodlamanın önüne ekleyin.
 
Zor bir şey değil. temel arduino bilgisi olan herkesin biraz uğraşla çözebileceği bir problem. Önce röleleri sırayla butonlara bastıkça tetikleyen devreyi tasarlayın. Sonra da diğer koşulları if komutlarıyla oluşturup her bir röleyi iletime geçirecek olan kodlamanın önüne ekleyin.
Teşekkürler Sn. bolubeyi
Otomasyon bilgimden dolayı zor olmayacağını tahmin ediyorum.
Ancak uğraş alanımın dışında ve bu saatten sonra (yaş 46) öğrenmek için çok vaktim yok.
Belki dedim gençlerden biri hazır kod yazar verir sevabına :).
İş yerindeki (112) telsiz siteminde kullanacağım.
 
Röle kartları 2 tip oluyor. Girişlere lojik 0 verince mi yoksa lojik 1 verince mi röleler enerjileniyor? Rölelerin ters kontaklarını kullanmamak için ona göre kod yazmak gerek. Fırsat bulursam gün içerisinde yardımcı olurum.
 
Röle kartı ekli resimdekidir Sn. bolubeyi
Emin değilim ama Röle bobin uçlarından birer tanesi Zener ve Jamper üzerinden VCC'ye bağlı gibi.
Yani bu durumda lojik 0 ile çalışacak gibi.
Alakanız için tekrar teşekkür ederim.
 

Ekli dosyalar

  • Röle.png
    Röle.png
    582 KB · Görüntüleme: 29
4role_4buton.png


Kod:
int role_1 = 12;
int role_2 = 11;
int role_3 = 10;
int role_4 = 9;
int buton_1 = A1;
int buton_2 = A2;
int buton_3 = A3;
int buton_4 = A4;

void setup()
{
  pinMode(role_1, OUTPUT);
  pinMode(role_2, OUTPUT);
  pinMode(role_3, OUTPUT);
  pinMode(role_4, OUTPUT);
  pinMode(buton_1, INPUT);
  pinMode(buton_2, INPUT);
  pinMode(buton_3, INPUT);
  pinMode(buton_4, INPUT); 
}

void loop()
{
  if(digitalRead(buton_1) == HIGH && digitalRead(buton_2) == LOW && digitalRead(buton_3) == LOW && digitalRead(buton_4) == LOW) {digitalWrite(role_1, HIGH);}
  else
  {digitalWrite(role_1, LOW);}

  if(digitalRead(buton_1) == LOW && digitalRead(buton_2) == HIGH && digitalRead(buton_3) == LOW && digitalRead(buton_4) == LOW) {digitalWrite(role_2, HIGH);}
  else
  {digitalWrite(role_2, LOW);} 

  if(digitalRead(buton_1) == LOW && digitalRead(buton_2) == LOW && digitalRead(buton_3) == HIGH && digitalRead(buton_4) == LOW) {digitalWrite(role_3, HIGH);}
  else
  {digitalWrite(role_3, LOW);} 

  if(digitalRead(buton_1) == LOW && digitalRead(buton_2) == LOW && digitalRead(buton_3) == LOW && digitalRead(buton_4) == HIGH) {digitalWrite(role_4, HIGH);}
  else
  {digitalWrite(role_4, LOW);}   

}

Çizimde arduino leonardo kullanılmış. Diğer arduino modellerini de bağlantılarda değişiklik yapmadan kullanabilirsiniz. Eklediğiniz resimde bir jumper var gibi. Röleler ters çalışırsa onun yerini değiştirerek rölelerin çalışma durumunu değiştirebileceğinizi düşünüyorum.
 
Elinize sağlı Sn. bolubeyi
Şimdi masamda deneme amaçlı Program içerisindeki örneklerden Blink olanı yüklemeye çalışıyorum ama hata veriyor.
iki adet Com port çıkıyor ikisinide denedim. Arduino nano 168 - 328P seçenekleri var ikinide denedim. Ama hat veriyor.
Sebebi nedir aceba..
 

Ekli dosyalar

  • aaa.png
    aaa.png
    29.7 KB · Görüntüleme: 31
Arduinoyu internet üzerinden satın aldıysanız aldığınız ürüne ait sayfanın linkini verin. Bulamazsanız yakından fotoğrafını çekin bi bakayım.
 
Çinden almıştım. Uzun zaman oldu.
Çip üzerinde Atmel 328P yazıyor........

Buda hata mesajı;
Kod:
Arduino:1.8.5 (Windows 10), Kart:"Arduino Nano, ATmega328P"

Çalışmanız programın 928 bayt (3 %) saklama alanını kullandı. Maksimum 30720 bayt.
Global değişkenler belleğin 9 byte kadarını  (0%) kullanıyor. Yerel değişkenler için 2039 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x2d
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x2d
Karta yüklenirken sorun oluştu. Tavsiyeler için http://www.arduino.cc/en/Guide/Troubleshooting#upload adresine göz atabilirsiniz.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
 

Ekli dosyalar

  • a2.png
    a2.png
    1.3 MB · Görüntüleme: 21
  • a1.png
    a1.png
    1.2 MB · Görüntüleme: 20

Forum istatistikleri

Konular
128,179
Mesajlar
915,659
Kullanıcılar
449,942
Son üye
Nzmtekin

Yeni konular

Geri
Üst