PLC Çevrim Süresi
- Category: Otomasyon Danışmanlığı
- Date 15-10-2021
Yeni nesil PLC'ler çok hızlıdır , ancak yalnızca
birkaç istisna dışında aynı anda yalnızca bir iş yapabilirler. Bunun nedeni,
PLC'lerin tek çekirdekli işlemciler etrafında inşa edilmiş olmasıdır. Bu
yazıda, PLC'lerin çevrim sürelerini etkileyen faktörlerin neler olduğundan
bahsedeceğiz.
Cyclic vs. Interrupt Code
Bir PLC üzerindeki kodlar , çevrimsel
olarak(cyclic) veya bir kesme(interrupt) ile çağrılabilir. Cyclic kod
çalıştırmaları, CPU bir interrupt çağrısı tarafından kesintiye uğratılmadığı
sürece, mümkün olduğunca hızlı bir şekilde sonsuz döngüde
çalışır. İnterruptlar , şu anda CPU'da çalışan cyclic kodu
duraklatır, interrupt kodunu çağırır ve ardından interrupt kodu
tamamlandığında, CPU yaptığına devam eder. Çoğu PLC de bulunan inturrupt
tipleri, timer interruptu, hardware interruptu, değer değişim
interruptı veya hatalara bağlı çalışan
interruptlardır.İnterruptlar , daha yüksek önceliğe sahiplerse
diğer interrupt de kesebilir.
Yukarıdaki resim , bir PLC'nin CPU'sunun zamanını ne yaparak harcadığını göstermektedir. Pembe, kesintiye uğramadığı takdirde CPU'nun tamamlanması 5 ms sürecek döngüsel kodu temsil eder. Yeşil, her 1 ms'de 0,15 ms'ye kadar çıkan CPU üzerindeki iletişim yükünü temsil eder ve mavi, döngüsel bir kesinti ile her 5 ms'de bir çağrılan motion kontrol kodudur. Bu örnekte, motion kontrol interruptu en yüksek önceliktir, yani haberleşme ve cyclic kodu kesebilir.
Cyclic koda genel olarak ana PLC kodu
denir. Siemens, Cyclic kodu bir program döngüsü veya OB1 olarak ifade
eder ve Allen-Bradley buna continues task adını verir. Codesys
tabanlı plclerde Main Task olarak adlandırılır. İnterruptlar ,
Siemens'teki diğer organizasyonel bloklar(OB35,OB1221, vb...) , tasarımcının
bir olay veya bir zamanlayıcı ile ilgili olarak kesme kodunun ne zaman
çalışması gerektiğini tam olarak belirlemesine olanak tanır.
Örneğin, yüksek hızlı sayıcılar(HSC)
tipik olarak donanım interruptlarlarına bağlıdır ve bir donanım girişinin
PLC'deki sayımı hemen artırmasına izin verir. Bu, yüksek hızlı sayıcının,
PLC'nin ana kodu tam bir çevrimi tamamlamadan önce birden çok girişi
sayabileceği anlamına gelir. Benzer şekilde, PID kontrol döngüleri ve motion
kontrol kodu, değişen döngü sürelerine sahip döngüsel interruptlara
bağlantılıdır. Yavaş yanıt veren fiziksel sistemler, uzun döngülerle döngüsel interruptlara
bağlanabilir. Bu da CPU yükünü azaltır. Hızlı yanıt veren sistemler, CPU yükü
pahasına daha sıkı kontrol sağlayan çok daha hızlı döngülere bağlanabilir.
Cycle Time,
PLC döngü süresi, cyclic kodun
kesintilerle bir kez baştan sona çalıştırılması için geçen süre olarak
tanımlanır. Döngüler arasındaki kesintilerin sayısı ve sıklığı nedeniyle, döngü
süreleri de çok uzayabilir. Çoğu durumda, maksimum döngü süresi ile ilgileniyoruz
çünkü bu, PLC'nin yanıt vermesinin ne kadar süreceğine tekabül ediyor. Genel
bir kural, PLC'nin yanıt vermesinin maksimum döngü süresinin iki katı kadar
sürebileceğini varsaymaktır. Bu, çalışan bir sinyal gösterge ışığımız
varsa, PLC'nin çalışma sinyalini almasıyla ışığın açılması arasındaki maksimum
döngü süresinin iki katına kadar çıkabileceği anlamına gelir.
Çoğu PLC, döngü süresini izler ve döngü
süresi maksimum eşiği aşarsa alarm verir. Spesifik eşik, uygulamaya ve PLC'nin
kabul edilebilir maksimum yanıt süresine göre yapılandırılmalıdır. Döngü
süreleri, PLC'nin yanıt süresinin diğer bileşenlerin yanıt sürelerine
eklenebileceği güvenlik uygulamalarında özellikle önemlidir.
Döngü Süresinin Azaltılması
Çevrim sürelerinin azaltılması
gerekiyorsa, PLC'nin çevrim süresini azaltmanın birkaç yöntemi vardır. İlk
olarak, PLC'nin CPU'sunun yükseltilip yükseltilemeyeceğini düşünün. Daha hızlı
bir CPU, kodu daha hızlı yürütür ve genel döngü süresini azaltır. Bu yöntem,
özellikle çok fazla hareket kontrolü ve PID kontrol döngüsüne sahip projeler
için etkilidir, çünkü bu işlevler genellikle CPU’yu yorar. Aynı kodun
1511 CPU’da koşması ile 1517 CPU’da koşması arasındaki fark aşağıda
gösterilmiştir.
Siemens 1511 CPU (14.9ms Cycle Time)
Siemens 1517 CPU (6.3ms Cycle Time)
Dikkate alınması gereken bir sonraki
husus, iletişim yüküdür. İletişim yükü, CPU'nun diğer cihazlarla iletişim
kurmak için harcadığı zamanın ne kadar olduğudur ve tipik olarak %15 ile %50
arasında değişir. CPU'nun yükseltilmesi, iletişim yükünün bir miktar
azaltılmasına yardımcı olabilir, ancak çoğunlukla iletişim yükünün azaltılması,
iletişim yönteminin/yöntemlerinin ve miktarının bir işlevidir. PLC'nin iletişim
kurması gereken cihaz sayısını birleştirmek ve/veya daha az ek yüke sahip
iletişim yöntemlerini kullanmak hem yardımcı olabilir, hem de uygulanması
genellikle daha zordur.
Döngü süresini azaltmanın başka bir
yöntemi de kodun kendisini optimize etmektir. Her döngüyü döngüsel veya diğer interruptlarda
çalıştırmak zorunda olmayan kod
parçalarını taşımak, ortalama döngü sürelerini azaltmaya yardımcı olabilir,
ancak maksimum döngü süresi üzerinde fazla bir etkisi olmayabilir. Kodu interruptlara
taşımak, kodu takip etmeyi zorlaştırır.
Döngü Süresini İzleme
Siemens'in S7 TIA Portal PLC'leri:
TIA Portal, fiziksel bir PLC'nin döngü
süresini veya bir PLC simülasyonunu izlemenizi sağlayan yerleşik bir araca
sahiptir. Döngü süresini izlemek için önce PLC ile çevrimiçi olun, PLC kodunu
yükleyin ve ardından Online & Diagnostics alanını açın. Diagnostics>Cycle
time altında, mevcut PLC döngü süresine sahip bir çubuk
grafik göreceksiniz. Açık mavi kutu, izin verilen döngü süresini temsil eder ve
kırmızı çubuk, döngü süresinin maksimumu aştığını gösterir. Bu, aşağıdaki
şemada gösterilmiştir.
İzin verilen çevrim süresini değiştirmek
için PLC'nin Cihaz konfigürasyonunu açın ve General>Cycle altında maksimum çevrim süresini
güncelleyin. Bu değeri değiştirmek için PLC ile çevrimdışı olmanız ve ardından
değişikliğin etkili olması için PLC'ye yeniden indirmeniz gerekir. Maksimum
gözlemlenen döngü süresinin gerçek maksimum döngü süresi olmayabileceğini
unutmayın. Bu, PLC üzerinde çalışan kodun çok sayıda interrupta sahip olması
veya kesintiler tarafından çağrılan uzun ve döngüsel kod parçalarına sahip
olması durumunda gerçekleşebilir.
Döngü süresini, cyclic çağrıları ve interrupt
çağrılarını anlamak, başarılı PLC kodunun mimarisinin anahtarıdır ve ADVANCE’ın
üstün olduğu alanlardan sadece biridir. Bir projenin başlarında iyi bir mimari,
zamandan tasarruf edebilir ve daha uygun maliyetli donanımların kullanılmasına
izin verirken, yine de proje gereksinimlerini açık ve örtük olarak
karşılayabilir.
ADVANCE’ın PLC Programlama hizmetleri hakkında daha fazla bilgi edinin ve bir
sonraki PLC Programlama projenize başlamak için bizimle iletişime geçin.
Kaynaklar :dmcinfo