TUMER Oluşturuldu: 13 Ocak, 2021 Share Oluşturuldu: 13 Ocak, 2021 Herkese iyi çalışmalar, Sistemde bulunan 6 adet valfin her döngüde sadece 4ünü aktif etmek istiyorum. kabaca anlatmak gerekirse 6nın 4lü permütasyon hesabına göre 360 farklı varyasyonun tamamlanması ardından döngünün başa alması gerek. c alt programda permütasyon hesaplama yapabiliyorum ancak hangi yolla bitleri aktif edebileceğimi çözemedim. konu ile ilgili yol gösterecek çözüm önerisi sunarsanız çok sevinirim. teşekkürler. Alıntı Yorum bağlantısı Sitelerde Paylaş More sharing options...
malikenes 13 Ocak, 2021 gönderildi Share 13 Ocak, 2021 gönderildi Hesaplamaların sonucunda bir rakam elde edebiliyorsan bu değeri bir word değerine atıp, bu word' ün bitlerini kontrol ederek tanımlayacağın bitleri aktif ya da pasif yapabilirsin. Fikir olsun diye örnek te verdim. Faydalı olur umarım. Alıntı Yorum bağlantısı Sitelerde Paylaş More sharing options...
TUMER 19 Ocak, 2021 gönderildi Yazar Share 19 Ocak, 2021 gönderildi Öncelikle cevap için teşekkür ederim. Ancak ya ben örneği anlamadım ya da derdimi iyi anlatamadım. Şöyle ki A,B,C isminde çıkışlarımız olsun, her tetiklemede bu çıkışların sadece ikisi sırası değişkenlik gösterecek şekilde aktif olacağını düşünelim. Sonuç: A,B; B,A; A,C; C,A; B,C; C,B; şeklinde 6 ihtimal ortaya çıkıyor. Bu altı ihtimali çıkışlara tanımlayıp verdiğiniz örnekteki gibi bit operasyonuyla çıkışları kontrol edebiliriz. ancak ihtimaller yükseldiğinde, bu ihtimalleri tek tek tanımlamak oldukça güç. bu yüzden ihtimalleri listeleyecek bir algoritmaya ihtiyaç var gibi. bunu algoritmayı plc ile kurabilmem mümkün mü? Teşekkür ederim Alıntı Yorum bağlantısı Sitelerde Paylaş More sharing options...
malikenes 19 Ocak, 2021 gönderildi Share 19 Ocak, 2021 gönderildi Elde ettiğin sayının binary karşılığını bulup, bu binary sayıda 2 tane 1 varsa çıkışları aktif edip, 2' den az ya da fazla 1 varsa çıkışları pasif edersen olur galiba. Alıntı Yorum bağlantısı Sitelerde Paylaş More sharing options...
VKU 19 Ocak, 2021 gönderildi Share 19 Ocak, 2021 gönderildi c alt programı kullanarak 0..5 (yani 6 adet rakam üret) /* Intializes random number generator */ srand(time(NULL)); /* bir sayı üret */ sayi=rand()%6; sayi değişkenini GMTSUITE Operandlar bölümünde WORD olarak tanımlayın. Aşağıdaki örnek 2 sn. de bir 0 ila 5 arasında random rakam üretiyor. Sonra tetiklemeyi nasıl yapılacak ise ardından bu alt programı çağırın. Her seferinde 0..5 arasında bir değer dönecek. IF cümlecikleri ile bu değer kullanılabilir. Not : Çevrim dışı Simulasyon ile denedim. ANSI C deki mod işlevinin gmtsuite de farklı bir kullanımı olabilir. Gerçek ortam denemesi yapmadım. Alıntı Yorum bağlantısı Sitelerde Paylaş More sharing options...
TUMER 19 Ocak, 2021 gönderildi Yazar Share 19 Ocak, 2021 gönderildi cevaplar için teşekkür ederim. iyi çalışmalar Alıntı Yorum bağlantısı Sitelerde Paylaş More sharing options...
Emre 19 Ocak, 2021 gönderildi Share 19 Ocak, 2021 gönderildi Merhabalar; 6 adet çıkışa göre istemiş olduğunuza göre örnek bir Ladder programı yazdım. Tetikleme için 500ms bir Osilatör kullanıldı. Tercihinize göre tetiklemeyi istediğiniz gibi değiştirebilirsiniz. İyi Çalışmalar Kolay Gelsin dnm_prog.gpf Alıntı Yorum bağlantısı Sitelerde Paylaş More sharing options...