S71200 HSC Yİ HAFIZADA TUTMA SORUNU

zfer

Üye
Katılım
23 Kas 2008
Mesajlar
63
Puanları
1
Yaş
40
Merhaba arkadaşlar,

cpu 1214c plc'm var elimde. bir enkoder 200 pals 3 sensör girişi 3 valf çıkışı var bir de konveyör için motor çıkışım var. sorunum bu konveyör üzerinden malzeme geçecek sensörler algınan malzemeleri hangi sensöre gelmişse konveyörün sonundaki pistonlara çıkış verdirecek. sensör tur sayısını belirleyecek hangi sensör algıladıysa saymaya başlayacak konveyörün sonunda malzemeye vurduracak ama sensörler birbirinden 10 cm sonra bağlı ve çapraz dizili birbirini algılamasın diye. her sensörün vurma mesafesi farklı. birinde 60 tur sonra piston vuruyorsa diğerinde 80 tur sonra diğer piston çalışıyor. 3 sensörün bilgisini hafızada tutarak hangi pistona rast geliyorsa pistonu çalıştırmak istiyorum. yardımcı olabilirmisiniz. Saygılar.
 
ne tür bir yardım, açar mısın? programın neresinde takıldın??
 
1 hızlı sayıcıya 9 ayrı sayma işlemi yaptırmak istiyorum.. program içerisinde mesela ilk sensöre sırayla 3 parça geldi 3 parçanın mesafesi aynı olmadığından 3 parçaya ayrı ayrı saydırıp çıkışı hep parçaya vurduracak şekilde yapmam gerekiyor.
 
ya da sayıcılarda kesme(interrupt) nasıl kullanabilirim..
 
cam modülü kullan çok daha hızlı okuma yapar. istediğin pozisyonlarda istediğin çıkışları verebilirsin
 
1200 e adapte olmuyor ki cam modülü. Hatta 1200 e input output modülünden başka hiç bişi eklenmiyor..
 
Merhaba arkadaşlar,

cpu 1214c plc'm var elimde. bir enkoder 200 pals 3 sensör girişi 3 valf çıkışı var bir de konveyör için motor çıkışım var. sorunum bu konveyör üzerinden malzeme geçecek sensörler algınan malzemeleri hangi sensöre gelmişse konveyörün sonundaki pistonlara çıkış verdirecek. sensör tur sayısını belirleyecek hangi sensör algıladıysa saymaya başlayacak konveyörün sonunda malzemeye vurduracak ama sensörler birbirinden 10 cm sonra bağlı ve çapraz dizili birbirini algılamasın diye. her sensörün vurma mesafesi farklı. birinde 60 tur sonra piston vuruyorsa diğerinde 80 tur sonra diğer piston çalışıyor. 3 sensörün bilgisini hafızada tutarak hangi pistona rast geliyorsa pistonu çalıştırmak istiyorum. yardımcı olabilirmisiniz. Saygılar.

sıkıntı nedir hala anlayamadım yapamadığın nedir tam anlamıyla. sisteminde enkoder varsa sensör gördüğü anda sayma değerini kalıcı hafıza alanına atarsın pistonla vurma işlemin bitincede temizlersin yenisini beklersin. Yada tablo yaparsın sırayla gelenler yer değiştirecektir Saygılar
 
vurma işlemini yapıncaya kadar 4 parça daha görüyor. her bir parça için ayrı ayrı saydırma yaptırmamız gerekiyor.
 
sistemi tam anlayamamakla beraber bence sayma devam etsin ilk parça geldiğinde bir hafıza alanına transfer edilsin ve piston vururkende sayıcı resetlenmesin. diğer parçalarda her sensör gördüğünde bir hafıza alanına sayma değerini yükle ve sondan başa doğru çıkarma işlemi yaparak her parçanın bilgisini hesaplamayı dene. en son parçayla işin bitince sayıcıyı resetle.
 
3 sensörümüz bir konveyör bantın üzerine yerleştirilmiş durumda. bantı dönderen silindirin ucunda da bir enkoder var. enkoder anladığınız üzere bantın ne kadar gittiğinin sinyalini plc ye gönderiyor. bir de bantın altında silindirler var. silindirler sensörün verdiği bilgiye göre açılıyor veya kapanıyor. sorunum şu ki her sensör bant hareket halindeyken parçalar görüyor. parçaların gelme süresi belli değil yani karmaşık geliyor. çalışması da parçalar bantın üzerine dökülüyor. sensörler algılamaya başlıyor. 1 sensör 1 kez görüyor enkoderle bağımlo olarak belli bir mesafe görüyor ve silindir haraket edip parçaya vuruyor. bir kabın içerisine atıyor. aynı şekilde diğer sensörler de bu işlemi yapabiliyor.

sorunum şu ki sensörden çıkışa kadar bantta 9-10 parçayı görebiliyor sensörler. her parçayı akılda tutması gerekiyor yani. bi de 3 sensör olunca 30 parça ediyor. 30 ayrı hafıza alanı demek. bir diğeri bu parçalar belirli bir ahenkte gelmiyor. örneğin 1. parça 100. palste geldiyse 2. parça 135. de 3. parça da 141 de geliyor. parçaların geldiği konuma göre standart 200 pals saydırıp çıkış verdirmem lazım her parça için.

bir yöntem hafıza alanları yerine birer iec counter kullanmaktı. çünkü hsc girişini okutup, okunanu ID1000 gibi sürekli artan bir değer değil de ID1000 çıkışını pals üreteci olarak kullanarak diğer sayıcıları saydıracaktım. her bir çıkış değerine ulaşıldığında silindiri aktif edip kapatacaktım. ama ID değerini bir türlü pals girşi olarak kullanamıyorum.
 

Forum istatistikleri

Konular
129,842
Mesajlar
930,701
Kullanıcılar
452,685
Son üye
rahmandogan

Yeni konular

Geri
Üst