PLC Çevrim Süresi

PLC Çevrim Süresi

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

Share This

Comments