Arkadaşlar aylardır bu sorunuma çözüm bulamadım yardımcı olabilecek arkadaşlara şimdiden teşekkür ederim Açıklamalı anlatmak gerekirse Arduinomuza gelen verileri Rx led okuyor (okumadan kastım Rx led yanma sayısı ) Bu Rx led den gelen veriyi işleme nasıl alabiliriz ? (İşleme almadan kastım Rx led ile eşit sayıda işlem ) (İşlemden bahsedecek olursak gelen veri Rx led yanıp sönme süresiyle DC motorumuz hareket ediyor ve Rx sönünce DC motor duruyor dolayısıyla Rx led yanma sayısıyla yapılan işlem eşit değil ) Bağlantı şemamımız https://i.hizliresim.com/ALz0gq.png Bu şekilde Ama sensor devre dışı Biz bu Rx led den gelen veriyi sensör yardımıyla nasıl saydırıp eşit işlem yapabiliriz ? Kısaca anlatmak gerekirse Elimizde verileri düzgün okuyan Rx led var bu okunan veriye eşit sayıda işlem Rx led 50 sefer yanıp sönmeye başlayınca ilk sinyal ile birlikte DC motor dönmeye başlasın sensör yapılan işlemi saysın yapılan işlem tamamlanınca dc motora dur komutu göndersin .
siz tamamen yanlış yere odaklanmışınız çok kısa verı akışında ledın yanışını gozle takıp edemezsınız. motoru daha sağlam bır yontemle kontrol etmenızı tavsıye ederım. sensorun çıkışını rx e mi bağlıyorsunuz. nasıl bir cıkıştır o verı mı geliyor yoksa enkoder çıkışı gıbı bır şeymi
Bu yaptığımız para bozdurma otomatı örnek veriyorum 50 TL para yükledik ve bunu 1 TL lik olarak bozdurmak istiyoruz yazılım 50 TL yi otomatik tanıyor bozdur dediğin zaman Rx led bir giriş sinyali ile 51 sefer yanıp sönüyor 10 TL yükledik bozdur butonuna bastığın zaman Rx led 1 giriş sinyali ile 11 sefer yanıp sönüyor Rx ledin doğru bir giriş sinyali ile doğru yanıp söndüğünden eminim ? Rx led yanıp sönünce DC motor dönmeye başlıyor sonrasında duruyor Rx ledin yanma sayısı ve mekanizmadan dökülen para sayısı birbirini tutmuyor çünkü sensör devre dışı
Mekanizma ve sensör bunun gibi https://m.youtube.com/watch?v=igCcoQVVqb4
Rx ledin yanıp sönme sayısını değerlendirmek istiyorum yok mu yardımcı olabilecek bir arkadaş
dejavu, konu ikinci kez açıldı http://forum.arduinoturkiye.com/index.php?p=/discussion/7640/seri-haberleşme-dc-motor-akilli-duraklama#Item\_17
Konu 4 seferdir açılıyor
para sayısını filan boş ver. Ledi okuyup yanma sayısını seri monitöre bir yazdır. daha doğrusu yazdırmaya çalış. başaramaz isen kodu burada paylaş. birileri mutlaka yardım eder
Uzun uğraşlar sonucunda ne yapacağımızı anladık kıyaslama işlemi yapılacak ana nasıl ?
arkadaşım soruyu senin adına ben sorayım. yanıp sönen bir ledin kaç defa yandığını arduino ile okumak istiyorsun. elinde donanımın var. ama kod namına hiç bir şey bilmiyorsun. doğru mu anladım ?
bır kere montaj veya sistemdeki saçmalık rx pininin yanıp sonmesı kı bunun bendeki anlamı bağlı oldugu sensor serial bir data atıyor aslında ve bu datanın ıcını okuyup anlamak yerıne buna bakmayıp ledın yanıp sonmesıne odaklanmak ve onu saymaya calışmak. kullanılan sensorun bır datasheetı veya çalışma şeklini incelemek lazım. bu çozulmez başka turlu
Doğru fatih islamcı
https://sc01.alicdn.com/kf/HTB1DyztGXXXXXXaXVXXq6xXFXXXv/200593224/HTB1DyztGXXXXXXaXVXXq6xXFXXXv.jpg sensör bu
bu sensor onunden gecen bozuk parayı mı sayıyor yanı 50tane 1 tl vereceksen bunun onunden 50 tane bozuk parayı düşürüyorsun bu da geçeni mi sayıyor yani 50 kere hi lo mu oluyor sensorun resminden bısey anlaşılmıyor. çıkış sadece basit bir puls mi yoksa bir iletişim hattımı belli değil hala. bir de rx pinine niye bağlıyorsunuz hehangi bir dijital pine bağlarsanız ve pulse sayıyorsa zaten okuması basit yada bu sensorden arka arkaya ıkı tane bağlayın para ıkısınden de gecsin bunları sayın. bir kere rx pini seri iletişim için ayrılmış bir pin ve seri iletişin nrz yanı non return zero formatında çalışır bu formatta hat her zaman yuksektır yanı hi durumdadır ve low a düştüğünde tetıklenır sizin senosor bu şartları sağlıyormu. yınede rx pinine bağlanması mantıklı değil olmaz bu şekılde eğer seri veri çıkışı yoksa. tamamen hatalı kullanım tasarım
Abi tam tersi lo hi oluyor . bu sensör de 3 adet kablo var kırmızı beyaz siyah (kırmızı 5 v- beyaz coin- siyah gnd) 5v sensöre verdiğimizde sensör daima HIGH durumundadır önünden her para geçişinde LOW HIGH oluyor 
Boşta duran beyaz sensör tetikleme kablosu
int INA = 7; int INB = 8; int hiz = 0; int incomingByte; void setup() { Serial.begin(9600); pinMode(INA, OUTPUT); pinMode(INB, OUTPUT); } void loop() { if (Serial.available() > 0) { incomingByte = Serial.read(); if (incomingByte == ‘H’) { geri(); } if (incomingByte == ‘L’) { dur(); } } } void ileri() { digitalWrite(INA, LOW); digitalWrite(INB, HIGH); } void geri() { digitalWrite(INA, HIGH); digitalWrite(INB, LOW); } void dur() { digitalWrite(INA, LOW); digitalWrite(INB, HIGH); }
Bu şekilde seri port ekranında H enter yapınca DC motor dönüyor L yapınca duruyor
arkadaşım benden sana tavsiye. elindeki donanımı bir dolaba kaldır ve unut. sana bir ödev. arduino ya bir buton ve pwm çıkışına bir led bağla. butona her bastığında led in parlaklığı artsın. led parlaklığı max seviyeye ulaşınca dahili 13 nolu pine bağlı olan led yanmaya başlasın.
eğer dediğin gibi pin normalde HIGH, önünden birşey geçince LOW oluyorsa bunu okuması çok basit, Şunu bir dene bakalım doğrumu anlamışım Not: Bu yazdıgım kod yalnızca ve yalnızca senin sensörünün dogru okuyup okumadıgımızı anlamak ıcın. Bu koda göre sensörden her para geçirdiğinde ekranda bir değişkenin saydıgını gormen gerek. sensorunun baglı olduğu pini xx ile belirttiğim yere yazmayı unutma int sensorpin xx //sensorunun baglı oldugu pini yaz int kontrol= 1,sayici=0; void setup(){ Serial.begin(9600); pinMode(sensorpin ,INPUT); } void loop() { digitalRead(sensorpin); if(!sensorpin) { if(kontrol) { kontrol = 0; sayici++; Serial.print("Sayici = "); Serial.println(sayici); } } else kontrol = 1; }