2 Digital input kaynağının birbirini kilitleme sorunu

Ozan Avcı

Yeni üye
Katılım
26 Eyl 2019
Mesajlar
4
Tepkime puanı
0
Puanları
1
Konum
İstanbul
Merhabalar,

Çok basit bir projem var. Arduino Uno'ya 2 adet digital input bağlayarak tekil digital output almak istiyorum. Digital inputlardan birisi etiket okuyucu cihazının hoparlör çıkışından aldığım paralel devre. Etiket cihazından bir şey okutulduğunda sesli sinyal üretirken artı eksi kutuplarından arduinoya hat çektim. Diğer input ise gene bir görsel uyarı merkezi. Üzerinden 24 volt dc geçen bir lamba bağlantısına gene aynı mantıkla paralel attım. 24v dcyi arduinoya girmeden önce 5v dc ye düşürüyorum. Sorunum şu; her bir kaynak arduinoya tek tek bağlandığında sinyal ürettiyor fakat 2si birlikte bağlandığında kısa devre oluşuyor sanırım, tüm sistem devre dışı kalıyor hatta etiket okuma cihazım direk olarak kendini koruma moduna geçip en az 5 dakika kendine gelmiyor. Bunu önlemek için digital input pinlerine giriş yapmadan önce araya diyot koyarak denedim ama gene de başaramadım. Bu sorunu nasıl çözebilirim? Çok teşekkürler. iyi günler.
 

xbrknx

Üye
Katılım
16 Tem 2019
Mesajlar
108
Tepkime puanı
19
Puanları
18
Konum
istanbul
etiket okuyucu dediğin rfid mi ? yani spi ile mi bağlıyorsun ?
hoparlörü neden direk arduinodan sürmüyosun ?
input dediğin görsel uyarı merkezi nedir ? bağlantısı nedir ? i2c spi ?
üzerinden 24v geçen lambayı neden paralel atıp 5v input yaptın ?

bağlantı şemasını çizersen daha net anlarız
iki cihazı tek spi hattı üstünden mi çalıştırmaya çalışıyosun onu tam anlayamadım master slave mi yapamadın ?
 

Ozan Avcı

Yeni üye
Katılım
26 Eyl 2019
Mesajlar
4
Tepkime puanı
0
Puanları
1
Konum
İstanbul
Selamlar,

Etiket okuyucu bildiğiniz marketlerde ürünün barkodunu okuyan cihazlardan. Başka bir veri kaynağını besliyor. Benim amacım ise arduinoya kaç adet etiket okutulmuş onun sayısını saydırmak. Her barkod okutulduğunda cihazdan bip sesi geldiği için hoparlörün artısı ve eksisinden paralel çektim arduinoya. Dolayısıyla her ürün okutulduğunda arduinoda bu ürünleri saymış oluyor.

Daha sonrasında başka bir cihaz olan test cihazının ürün bozuk diye uyarı verdiği kırmızı uyarı lambasından da paralel çektim. Gene tek başına bu kırmızı lambadan gelen giriş arduinoya bağlandığında kaç adet ürün bozuk çıkmış onu da sayabiliyor arduino.

Fakat 2 si aynı anda farklı girişlere bağlandığında bir birlerini bozuyorlar.

Kullandığım kod şöyle;

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
const int etiket = 10;
const int test = 11;
const int led = 13;
const int smart = 12;
int butonetiket = 0;
int butontest = 0;
int sayetiket = 0;
int saytest = 0;
int sayok = 0;
void setup() {

Serial.begin(9600);
pinMode(led , OUTPUT);
pinMode(etiket , INPUT);
pinMode(smart , OUTPUT);
pinMode(test , INPUT);
lcd.init();
lcd.init();
}
void loop() {

butonetiket= digitalRead(etiket);
butontest= digitalRead(test);

lcd.backlight();lcd.setCursor(0,0); lcd.print("TEST");lcd.setCursor(6,0); lcd.print("HATA");lcd.setCursor(12,0); lcd.print("OK");

if ( butonetiket== HIGH){sayetiket++ ; sayok=sayetiket-saytest;digitalWrite(led , HIGH); Serial.println( sayetiket );lcd.setCursor(0,1);lcd.print(sayetiket); delay(2500); } else{digitalWrite(led , LOW);};

if ( butontest== HIGH){saytest++ ; sayok=sayetiket-saytest;digitalWrite(led , HIGH); Serial.println( saytest );lcd.setCursor(6,1);lcd.print( saytest ); delay(3000); } else{digitalWrite(led , LOW);};

lcd.setCursor(12,1);lcd.print( sayok );

delay(5);
}

****hoparlörü neden direk arduinodan sürmüyosun ? / hoparlörden sinyal alıyorum.
****üzerinden 24v geçen lambayı neden paralel atıp 5v input yaptın ? / arduinonun digital 11 girişine 24 voltluk giriş yapmak istemedim cihaza zarar vermemek için. 24 voltu arduinoya girebilir miyim?
 

xbrknx

Üye
Katılım
16 Tem 2019
Mesajlar
108
Tepkime puanı
19
Puanları
18
Konum
istanbul
selam


elektrikten kaynaklı sorun yaşıyorsun optocoupler ile sorununu çözersin

optocoupler aslında röle mantığında çalışır fakat kendi içinde anahtarlamayı ışık ile yapar dolayısı ile değişik elektrik kaynakları ile anahtarlama sorunlarını ortadan kaldırır.



evet 24v cihaza zarar verir

yazılımı kontrol etmedim zaten tekli olarak çalışıyo dediğin için
 

xbrknx

Üye
Katılım
16 Tem 2019
Mesajlar
108
Tepkime puanı
19
Puanları
18
Konum
istanbul
bu arada elinizde optocoupler yoksa veya temin etmek zor ise

bir led bir ldr ile de optocoupler yapabilirsn
 

Ozan Avcı

Yeni üye
Katılım
26 Eyl 2019
Mesajlar
4
Tepkime puanı
0
Puanları
1
Konum
İstanbul
Evet bahsettiğiniz gibi elektrik kaynaklı bir sorun var. Bir taraftan gelen sinyal üzerindeki elektriksel akım diğer tarafı kısa devre yaptırıyor.

Optocoupler ı inceledim. Birçok çeşidi olduğunu gördüm hangisinin işime yarayacağını seçmem lazım. Bu sayede gelen dijital sinyali direkt olarak karta vermeden bir süzücü üzerinden geçiriyorsunuz. Dolayısıyla geri kaçış olmuyor. Çok teşekkür ederim yardımlarınız için.
 

xbrknx

Üye
Katılım
16 Tem 2019
Mesajlar
108
Tepkime puanı
19
Puanları
18
Konum
istanbul
istersen bi kibrit kutusu içine ldr ve led koyarsın
led aktif olduğunda analog inputtan ldr dan okuyup işlemlerini yapabilirsn.
 
Üst