09-15-2015 02:29 AM
Zafer bey, ilginiz ve zahmetiniz icin tekrar teskküer.
Evet haklisiniz, bu kadar kisa sürede bilgisayar ortaminda bilgi toplamak, pek de güvenilir olmasada 1. mecburuz 2. simdiye kadar sorun olmadi,
hatta bi ara 10ms´ye kadar da indik 😉
Evet, devir ve diger veriyi ayni Modül-NI9205 (giris 0-10V) ile topluyoruz, böylece 10kHz Modülün ortak frekansi.
Suanki ana programda bu alinan iki veriyi (devir ve basinc) bu 60ms icinde topluyor, islem yapiyor ve .txt data olarak HDye koyuyor!
Veri alimi ise söyle: devir gerilim olarak toplaniyor TTL 0-5V arasi ve burdaki impuls´lari sayiyoruz "rpm"e ceviyoruz, basinc bir pressure transducer üzerinden gerilim olarak 0-10V arasi toplaniyor ve "bar`"a ceviyoruz.
09-15-2015 02:47 AM
Rica ederim,
Bilgisayar ortamında görünürde 1ms'ye kadar inebilirsiniz. Ciddi başka bir iş yükü yoksa 1ms'lik çevrimi bile yapabilir. Ama dediğim gibi pek de güvenilir sayılmaz 🙂
Baştan sona tüm verileri içeren kayıt dosyası paylaşırsanız bir örnek ekleyebilirim. (Basınç/Devir kayıt dosyası. "write to measurement file.vi" ile *.lvm uzantılı olursa okumak daha kolay olur.)
09-15-2015 04:05 AM
asagida istemis oldugunuz yazilimi ve bir kayit dosyasi gönderiyorum.
09-15-2015 06:12 AM - edited 09-15-2015 06:24 AM
Konu daha iyi belirginleşti ve şimdiye kadar söylediğim hususların hepsi sıkıntı çıkarmış görünüyor 🙂
Sorunun ne olduğunu anladım ama çözüm için kafamda hala tam net bir şey belirmedi. Gördüğüm kadarıyla uygulamanızın alt yapısal sorunları var. 60ms mertebelerine inmek zorunda kalmanız da bundan kaynaklanıyor. Yerinizde olsam ilk olarak sürücü yerine enkoderden doğrudan bilgi alırdım (neticede sürücü de hız bilgisi için örnekleme yapıyor). Burada enkoder tetik/tur sayısını hesaplamak gerekir. Ölçüm ve enkoder hızı aynı mil üzerinden alınıyorsa (arada tahrik aktarma yoksa) en yüksek devrin mesela on katı esas alınarak enkoder seçilebilir. Sonra hızı enkoder tetiklerinden hesaplardım. Böylece her iki tetik arasındaki süreyi hesaplama imkanınız olacak ve devir hassasiyetiniz katlanacaktır. İki kanal veri toplama yapacağınız için bir kanaldan gelen enkoder tetiklerine karşılık basınç değerleriniz olacak ve buradan devir aralıklarını daha hassas hesaplayabileceksiniz 🙂
09-15-2015 06:23 AM
Ben burda elde ettigimiz devir verisinin hepsini deyilde, sadece 50´ye kadar yükselmenin, her 5´lik paketinin ortalamasini bulmak ve kayda gecmek istiyorum!
Tabi ayni islemi basinc icin de yapabiliriz.
Daha acemi oldugum icin, acikcasi söylediklerinizden pek birsey anlayamadim.
09-15-2015 06:27 AM
İsteğinizi de anladım ama dikkat ederseniz hız bilgisi bile nerdeyse 0,8 devir/dk olacak kadar kaba. Bu hassasiyetle istediğiniz geçişleri aynı derecede kaba bulabilirsiniz. Müsait olursam akşam bir örnek eklemeye çalışacağım...
09-15-2015 07:17 AM
haklisiniz, programmi modifiye ederken ufak hatalar yapmisim,
ya main_motor programini 60ms bekletecegim (wait), yada init programi ile main programmini tek program haline getirecegim,
ki 60ms saniyelik veri alimini tutabiliyim.
bu arada enkoderden dogrudan bilgi almak zor, verileri bizim ana programmizda ki sürücü´den almak zorundayim,
tetik/tur sayisini hesaplamak daha da zor, cünkü drive unit´nin TTL sinyali cokda temiz deyil, yani sinyal baya bozuk gelebiliyor.
zahmet olacak ama bir örnek eklerseniz, cok sevinirim.
saygi ve selmalar
09-22-2015 02:56 AM
Merhaba,
Cevaplamam biraz uzun sürdü kusura bakmayın. Hem başka işlerim vardı hem de ekleyeceğim örnek tam olarak sizin sisteminize benzemeyeceği için işinize yarayabilecek birşeyler çıkarmak uzun sürdü.
Umarım bir fikir verebilir. Ancak daha önceden söylediğim gibi alt yapıda değişiklik yapmanız gerekecek.
NOT : "rar" uzantısı sorun çıkardığı için dosya uzantısını "txt" yaptım. Uzantıyı "rar" yaparak içeriğe erişebilirsiniz.
09-22-2015 08:52 AM
Nedemek, rica ederim.
Bende ancak bu hafta inceleye bilirim, alt yapaya gelirsek biraz daha kafa yormam gerekiyor herhalde. 🙂
09-28-2015 04:02 AM
Zafer Bey,
cok zahmet etmissiniz, extra rpm signalinide üretmissiniz, saolun, ellerinze saglik. Yalniz ben main programini yani 5´lik ortalama islemini cözemedim?