Mach4’te PLC Script ile Signal Script Arasındaki Fark Nedir ve Hangisi Daha Güvenlidir?

📅 02 Eylül 2026⏱️ 19 dk okuma
Metal İşleyen Cnc Router Yapmak İstiyorum? Nelere Dikkat Etmeliyim? Neyi Farklı Yapmalıyım?
📑 İçindekiler (Tıkla Aç)

Mach4’te PLC Script karmaşık, döngüsel makine mantığı ve durum yönetimi için kullanılırken, Signal Script anlık, olay tabanlı I/O tepkileri içindir. Güvenlik açısından, kritik ve sıralı işlemler için PLC Script daha güvenlidir, çünkü deterministik yapısı ve kapsamlı durum kontrolü sayesinde daha sağlam ve öngörülebilir bir otomasyon sağlar.

Mach4’te PLC Script ile Signal Script Arasındaki Fark Nedir ve Hangisi Daha Güvenlidir? Nedir?

 

Endüstriyel otomasyon sistemlerinde, özellikle CNC kontrol yazılımları gibi platformlarda, makine davranışlarını yönetmek için farklı programlama paradigmaları kullanılır. Mach4, bu bağlamda, PLC Script ve Signal Script olmak üzere iki temel script türü sunar. Her ikisi de makine kontrolünü sağlamakla birlikte, çalışma prensipleri, uygulama alanları ve güvenlik implikasyonları açısından önemli farklılıklar gösterir. Bu iki script türünü doğru anlamak ve uygun senaryolarda kullanmak, hem sistem performansını optimize etmek hem de operasyonel güvenliği maksimize etmek için hayati öneme sahiptir.

PLC Script, adından da anlaşılacağı gibi, geleneksel Programlanabilir Mantık Denetleyicilerinin (PLC) çalışma mantığını taklit eder. Genellikle Lua programlama dili kullanılarak yazılır ve Mach4 kontrol döngüsünün bir parçası olarak sürekli ve döngüsel bir şekilde çalışır. Bu scriptler, makinenin genel durumunu, sıralı işlemlerini, güvenlik kilitlerini (interlock), takım değiştirme dizilerini ve karmaşık makine hareketlerini yönetmek için idealdir. PLC Script, bir tür “beyin” görevi görerek, makinenin tüm bileşenleri arasındaki mantıksal ilişkileri ve karar alma süreçlerini koordine eder. Bu döngüsel çalışma, komutların belirli bir sıraya göre ve öngörülebilir bir zaman diliminde işlenmesini sağlar, bu da onu kritik güvenlik fonksiyonları için daha uygun hale getirir.

Öte yandan, Signal Script, belirli giriş sinyallerindeki değişikliklere anında tepki vermek üzere tasarlanmıştır. Bu scriptler, bir dijital giriş (örneğin, bir limit anahtarı, bir prob veya bir başlat/durdur butonu) durumu değiştiğinde tetiklenir ve ilgili çıkış sinyalini kontrol eder veya belirli bir eylemi başlatır. Signal Scriptler de genellikle Lua ile yazılır ancak Mach4’ün dahili sinyal işleme mekanizması tarafından doğrudan çağrılır. Bunlar, gecikmeye toleransı olmayan anlık tepkiler gerektiren durumlar için optimize edilmiştir. Örneğin, bir limit anahtarı tetiklendiğinde makineyi hemen durdurmak veya bir prob sinyali alındığında koordinat kaydetmek gibi görevlerde kullanılırlar. Çalışma prensibi itibarıyla, G-kodu işleme döngüsünden bağımsız olarak, sinyal değişikliği anında devreye girerler.

Çalışma Prensibi ve Teknik Veriler

Mach4’te PLC Script ve Signal Script arasındaki temel ayrım, onların yürütme bağlamı ve amaçları etrafında şekillenir. Bu ayrımı derinlemesine anlamak, otomasyon projelerinde doğru mimariyi kurmak için elzemdir.

Mach4’te PLC Script ile Signal Script Arasındaki Fark Nedir ve Hangisi Daha Güvenlidir?

PLC Script:

Çalışma Prensibi: PLC Scriptler, Mach4’ün dahili işlem döngüsünün bir parçası olarak düzenli aralıklarla (genellikle milisaniye düzeyinde) yürütülür. Bu döngüsel yürütme, G-kodu işleme ve hareket kontrolünden bağımsızdır. Script, her döngüde baştan sona çalıştırılır, tüm mantık kontrollerini ve durum güncellemelerini yapar. Bu yapı, scriptin makinenin mevcut tüm durumlarını (eksen pozisyonları, limit anahtarı durumları, motor durumları, kullanıcı girişleri vb.) sürekli olarak izlemesine ve bunlara göre karar almasına olanak tanır.

Teknik Özellikler:

  • Döngüsel Yürütme: Belirli bir zaman aralığında tekrarlanır (örneğin, 10ms, 20ms).
  • Kapsamlı Durum Yönetimi: Makinenin tüm durum değişkenlerini (DRO’lar, LED’ler, OEM kodları, iç değişkenler) okuyabilir ve yazabilir.
  • Kompleks Mantık: Karmaşık sıralı işlemler, durum makineleri, güvenlik interlock’ları, takım değiştirme rutinleri, palet değiştirme sistemleri gibi gelişmiş otomasyon görevleri için uygundur.
  • Hata Toleransı ve Güvenlik: Döngüsel yapısı sayesinde, bir komutun işlenmesi veya bir durumun kontrol edilmesi kaçırılsa bile bir sonraki döngüde tekrar kontrol edilebilir. Bu, özellikle güvenlik açısından kritik durumlarda daha yüksek bir öngörülebilirlik ve sağlamlık sağlar. Acil durdurma (E-stop) mantığı, limit anahtarı tetiklemelerinde makinenin güvenli bir şekilde durdurulması gibi kritik fonksiyonlar genellikle PLC Script içinde yönetilir.
  • G-kodu Bağımsızlığı: G-kodu işlenirken veya durdurulduğunda bile çalışmaya devam eder, bu da sürekli güvenlik izlemesi için idealdir.

Mach4’te PLC Script ile Signal Script Arasındaki Fark Nedir ve Hangisi Daha Güvenlidir?

Signal Script:

Çalışma Prensibi: Signal Scriptler, Mach4’teki belirli bir dijital giriş sinyalinin durumu değiştiğinde (yükselen kenar, düşen kenar veya her ikisi) tetiklenir. Yalnızca tetikleyici sinyal değişikliği olduğunda çalışır ve işini tamamladıktan sonra sona erer. Bu, çok düşük gecikmeli, anlık tepkiler gerektiren durumlar için optimize edilmiştir.

Teknik Özellikler:

  • Olay Tabanlı Yürütme: Yalnızca tetikleyici sinyal (örneğin, bir limit anahtarı aktif olduğunda) değiştiğinde çalışır.
  • Hızlı Tepki Süresi: G-kodu işleme döngüsünden bağımsız olarak doğrudan sinyal değişikliğine yanıt verir, bu da çok düşük gecikmelerle sonuçlanır.
  • Basit Mantık: Genellikle tek bir sinyalden etkilenen basit görevler için kullanılır: limit anahtarı tetiklemesi, prob girişi, başlat/durdur butonu, harici bir anahtarın durumunu okuma ve buna göre basit bir çıkış kontrolü.
  • Sınırlı Durum Yönetimi: PLC Script’ler kadar kapsamlı bir makine durumu yönetimi yapamaz. Genellikle sadece tetikleyici sinyal ve ilgili birkaç değişken üzerinde işlem yapar.
  • Debounce (Sekme Önleme): Mekanik anahtarlardaki sinyal gürültüsünü filtrelemek için sıklıkla debounce ayarlarıyla birlikte kullanılır.
Parametre PLC Script Signal Script
Yürütme Prensibi Döngüsel (Cyclic), sürekli çalışır. Olay Tabanlı (Event-Driven), sinyal değişince tetiklenir.
Amaç Kompleks mantık, durum yönetimi, sıralı işlemler, güvenlik interlockları. Anlık I/O tepkileri, hızlı sinyal işleme (limit, prob).
G-Kodu Bağımlılığı Bağımsız, G-kodu durunca bile çalışır. Bağımsız, sinyal değişimine anında yanıt verir.
Gecikme (Latency) Döngü süresine bağlı olarak öngörülebilir gecikme (örneğin 10-50ms). Çok düşük, neredeyse anlık (genellikle <1ms).
Güvenlik İmplikasyonları Kritik güvenlik fonksiyonları için daha güvenli, sağlam ve öngörülebilir. Basit, anlık güvenlik tepkileri için uygun, ancak karmaşık durumlar için riskli olabilir.
Karmaşıklık Yüksek karmaşıklıkta mantık ve algoritma desteği. Genellikle basit, kısa ve tekil görevler.
Kaynak Tüketimi Sürekli çalıştığı için daha fazla CPU döngüsü kullanabilir. Yalnızca tetiklendiğinde çalıştığı için daha az CPU döngüsü kullanır.
Tipik Kullanım Takım değiştirme, palet sistemleri, otomatik kapılar, E-stop mantığı, makine başlatma/durdurma dizileri. Limit anahtarları, prob sensörleri, harici başlat/durdur butonları, joystick girişleri.
Mach4’te PLC Script ile Signal Script Arasındaki Fark Nedir ve Hangisi Daha Güvenlidir?

Sahada Dikkat Edilmesi Gerekenler

  • Doğru Seçim Yapmak: Saha mühendisleri ve otomasyon uzmanları için en kritik nokta, doğru senaryoda doğru script tipini seçmektir.
    • PLC Script Ne Zaman? Makinenin genel durumunu etkileyen, birden fazla giriş/çıkışın senkronizasyonunu gerektiren, sıralı adımlardan oluşan veya güvenlik açısından kritik olan (örneğin, acil durdurma zinciri, takım magazini güvenliği) her türlü karmaşık mantık için PLC Script tercih edilmelidir. Deterministik yapısı, özellikle güvenlik protokollerinin tutarlı bir şekilde uygulanmasını garanti eder.
    • Signal Script Ne Zaman? Anlık, gecikmesiz tepki gerektiren ve genellikle tek bir giriş sinyaline bağlı basit eylemler için Signal Script idealdir. Limit anahtarlarının tetiklenmesiyle makineyi hemen durdurmak, bir probun yüzeye dokunduğunda koordinat kaydetmek veya bir harici butona basıldığında basit bir çıkışı açmak gibi görevler için mükemmeldir. Ancak, bir Signal Script içinde karmaşık karar verme veya birden fazla makine durumunu yönetme girişimleri, öngörülemez davranışlara yol açabilir.
  • Güvenlik Protokollerinin Yönetimi: Acil durdurma (E-stop) ve limit anahtarları gibi kritik güvenlik sinyallerinin işlenmesi, sistemin genel güvenliği için hayati önem taşır.
    • E-stop ve PLC Script: Bir E-stop durumunda makinenin tüm hareketlerini durduracak, motorları kapatacak ve güvenli bir duruma getirecek mantık, genellikle PLC Script içinde yönetilir. PLC Script’in döngüsel yapısı, E-stop sinyalinin sürekli olarak izlenmesini ve tetiklendiğinde tüm ilgili eylemlerin güvenli bir sırayla gerçekleştirilmesini sağlar. Bu, Signal Script’in anlık ancak daha izole tepkisinden daha kapsamlı bir güvenlik katmanı sunar.
    • Limit Anahtarları ve Signal Script/PLC Script Kombinasyonu: Limit anahtarları genellikle Signal Script ile anında tepki vererek makineyi durdurur. Ancak, bu duruşun ardından makineyi güvenli bir şekilde sıfırlama, hatayı kaydetme veya operatöre bildirme gibi daha karmaşık süreçler PLC Script tarafından devralınabilir. Bu, iki script türünün birlikte nasıl çalışabileceğinin iyi bir örneğidir.
  • Hata Ayıklama ve Test: Her iki script türünün de kendi hata ayıklama zorlukları vardır.
    • PLC Script Hata Ayıklama: Döngüsel yapısı nedeniyle, PLC Script’lerde mantık hatalarını veya durum geçiş sorunlarını tespit etmek daha kolay olabilir, çünkü her döngüde aynı mantık tekrar çalışır. Mach4’ün Lua hata ayıklama araçları ve loglama özellikleri kullanılarak değişken değerleri izlenebilir.
    • Signal Script Hata Ayıklama: Signal Script’ler olay tabanlı olduğu için, bir hata yalnızca tetikleyici olay meydana geldiğinde ortaya çıkar. Bu, bazen hatayı yeniden üretmeyi zorlaştırabilir. Sinyal izleme (signal monitoring) ve loglama, bu tür scriptlerde hata ayıklama için kritik öneme sahiptir.
  • Performans Optimizasyonu: Scriptlerin sistem üzerindeki yükü, özellikle Mach4’ün genel performansını etkileyebilir.
    • PLC Script Optimizasyonu: PLC Script’in döngü süresi çok uzun olursa veya çok fazla işlem yaparsa, Mach4’ün kontrol döngüsünü geciktirebilir ve hareket kalitesini düşürebilir. Script’in mümkün olduğunca verimli yazılması, gereksiz hesaplamalardan kaçınılması ve kritik olmayan görevlerin daha uzun döngü sürelerine sahip ayrı scriptlere bölünmesi önemlidir.
    • Signal Script Optimizasyonu: Signal Script’ler genellikle kısa ve hızlıdır, ancak çok sık tetiklenen ve yoğun işlem yapan Signal Script’ler de sistem üzerinde yük oluşturabilir. Özellikle debounce ayarlarının doğru yapılması, gereksiz tetiklemeleri önler.
  • Kod Yönetimi ve Dokümantasyon: Büyük otomasyon projelerinde, scriptlerin düzenli bir şekilde yönetilmesi ve dokümante edilmesi, uzun vadeli bakım ve sorun giderme için elzemdir.
    • Her bir scriptin amacını, hangi girişleri kullandığını ve hangi çıkışları etkilediğini açıkça belirten yorumlar ve harici dokümantasyonlar oluşturulmalıdır.
    • Scriptlerin versiyon kontrolü altında tutulması, değişikliklerin izlenmesini ve gerektiğinde önceki versiyonlara dönülmesini sağlar.
Mach4’te PLC Script ile Signal Script Arasındaki Fark Nedir ve Hangisi Daha Güvenlidir?

Sık Karşılaşılan Sorunlar ve Çözümleri

Endüstriyel otomasyon uygulamalarında Mach4 ile çalışırken, PLC Script ve Signal Script kullanımında bazı yaygın sorunlarla karşılaşılabilir. Bu sorunları anlamak ve doğru çözümleri uygulamak, makinenin güvenilir ve verimli çalışmasını sağlar.

  • Yanlış Script Tipi Seçimi:
    • Sorun: Karmaşık bir güvenlik mantığının veya sıralı bir işlemin Signal Script ile çözülmeye çalışılması. Örneğin, bir takım değiştirme dizisinin sadece Signal Script’ler kullanarak yönetilmeye çalışılması. Bu, mantığın parçalanmasına, senkronizasyon sorunlarına ve öngörülemeyen makine davranışlarına yol açabilir. Tersine, anlık tepki gerektiren bir limit anahtarı işleminin sadece PLC Script içinde uzun bir döngüde ele alınması gecikmelere neden olabilir.
    • Çözüm: Fonksiyonun karmaşıklığına ve tepki süresi gereksinimlerine göre doğru script tipini seçmek. Karmaşık durum makineleri, güvenlik kilitleri ve sıralı işlemler için her zaman PLC Script kullanın. Anlık, doğrudan I/O tepkileri için Signal Script tercih edin. Gerekirse, iki script tipini bir arada kullanarak en iyi çözümü oluşturun (örn. Signal Script ile hızlı duruş, PLC Script ile duruş sonrası toparlanma).
  • Gecikmeler ve Yanlış Tetiklemeler:
    • Sorun (Signal Script): Mekanik anahtarlardan gelen sinyal sekmesi (bounce) nedeniyle Signal Script’in birden fazla kez tetiklenmesi veya istenmeyen eylemler yapması. Ya da yetersiz debounce ayarları nedeniyle hatalı okumalar.
    • Çözüm (Signal Script): Mach4’ün dahili sinyal debounce (sekme önleme) ayarlarını doğru yapılandırmak. Bu ayarlar, sinyalin stabil hale gelmesi için belirli bir süre bekleyerek yanlış tetiklemeleri önler. Donanımsal debounce devreleri de kullanılabilir.
    • Sorun (PLC Script): PLC Script’in döngü süresinin çok uzun olması nedeniyle kritik bir durumun geç fark edilmesi veya tepki süresinin uzaması.
    • Çözüm (PLC Script): PLC Script’i optimize ederek döngü süresini kısaltmak. Gereksiz hesaplamalardan kaçınmak, scripti daha küçük, işlevsel modüllere ayırmak ve CPU yoğun işlemleri minimumda tutmak. Mach4’ün profil ayarlarından PLC döngü süresini kontrol etmek.
  • Çakışan Mantık ve Kaynak Çatışmaları:
    • Sorun: Hem PLC Script hem de Signal Script’in aynı I/O pinini veya dahili Mach4 değişkenini (DRO, LED, OEM kodu) kontrol etmeye çalışması. Bu durum, öngörülemeyen davranışlara, hatalı çıkış sinyallerine veya kontrol kayıplarına neden olabilir. Örneğin, bir PLC Script’in bir röleyi açmaya çalışırken, bir Signal Script’in aynı röleyi kapatmaya çalışması.
    • Çözüm: Her bir I/O pininin veya dahili değişkenin kontrolünü tek bir script tipine atamak. Hangi scriptin hangi kaynağı kontrol ettiğini açıkça belgelemek. İki script arasında etkileşim gerekiyorsa, bunu güvenli ve tanımlı bir şekilde, örneğin dahili Mach4 değişkenleri (OEMLED, OEMDRO) aracılığıyla yapmak.
  • Hata Ayıklama Zorlukları ve Mantık Hataları:
    • Sorun: Özellikle karmaşık Lua tabanlı PLC Script’lerde mantık hatalarını veya beklenmedik durum geçişlerini tespit etmek. Script’in neden belirli bir durumda beklenen gibi davranmadığını anlamak.
    • Çözüm:
      • Loglama: Script içine stratejik olarak `mc.mcCntlLog()` gibi fonksiyonlarla log mesajları ekleyerek çalışma zamanındaki değişken değerlerini ve mantık akışını izlemek.
      • Durum Takibi: Mach4’ün ekranında özel DRO’lar veya LED’ler oluşturarak scriptin dahili durum değişkenlerini gerçek zamanlı olarak görselleştirmek.
      • Adım Adım Yürütme (Gelişmiş Hata Ayıklama): Mach4’ün sunduğu Lua hata ayıklama araçlarını veya harici Lua geliştirme ortamlarını kullanarak scriptin adım adım çalışmasını izlemek.
      • Küçük Modüller Halinde Geliştirme: Kompleks scriptleri daha küçük, test edilebilir fonksiyonlara bölmek, hata bulmayı kolaylaştırır.

Uzman Tavsiyesi

Endüstriyel otomasyon ve CNC kontrol sistemlerinde Mach4 gibi güçlü platformlarla çalışırken, PLC Script ve Signal Script arasındaki farkı anlamak ve bu araçları doğru şekilde kullanmak, sadece sistemin verimliliğini değil, aynı zamanda operasyonel güvenliğini de doğrudan etkiler. Saha tecrübelerimiz, bu iki script türünün birbirinin alternatifi olmaktan ziyade, birbirini tamamlayan yaklaşımlar olduğunu göstermektedir. Her birinin kendine özgü güçlü yönleri ve en iyi kullanıldığı senaryolar vardır.

Özetle, PLC Script, makinenin “beyni” olarak işlev görür. Döngüsel, deterministik yapısı sayesinde karmaşık makine mantığını, sıralı işlemleri, durum makinelerini ve özellikle kritik güvenlik interlock’larını yönetmek için vazgeçilmezdir. Acil durdurma senaryoları, takım değiştirme rutinleri, otomatik kapı kontrolü ve genel makine durumu yönetimi gibi alanlarda, PLC Script’in kapsamlı kontrol yeteneği ve öngörülebilirliği, onu çok daha güvenli bir seçenek haline getirir. Bir hata durumunda veya beklenmedik bir senaryoda makineyi güvenli bir duruma getirme yeteneği, PLC Script’in en büyük avantajıdır. Bu script türü, mühendislik yaklaşımlarında sağlamlık ve güvenilirlik arayanlar için ilk tercihtir.

Diğer yandan, Signal Script ise makinenin “refleksleri” gibidir. Anlık, olay tabanlı yürütme prensibi, limit anahtarı tetiklemeleri, prob sensörü algılamaları veya basit bir başlat/durdur butonu gibi çok düşük gecikmeyle tepki verilmesi gereken durumlar için idealdir. Hızı ve doğrudanlığı, bu tür basit ama zaman açısından kritik görevlerde üstün performans sağlar. Ancak, karmaşık durum yönetimi veya birden fazla sinyalin mantıksal kombinasyonunu gerektiren durumlarda Signal Script kullanmak, mantık karmaşasına, hata ayıklama zorluklarına ve potansiyel güvenlik risklerine yol açabilir.

Uzman tavsiyesi olarak, her zaman “iş için doğru aracı” seçmek esastır. Güvenlik ve karmaşık mantık gerektiren her durumda PLC Script‘i tercih edin. Basit, anlık ve tekil sinyal tepkileri için Signal Script‘i kullanın. Unutmayın ki, optimum bir otomasyon çözümü genellikle her iki script türünün de akıllıca entegrasyonunu gerektirir. Örneğin, bir limit anahtarının anlık durdurma tepkisi için Signal Script kullanılırken, bu duruşun ardından makineyi güvenli bir şekilde sıfırlama, hatayı kaydetme veya operatöre bildirme gibi daha karmaşık süreçler PLC Script tarafından yönetilebilir. Bu hibrit yaklaşım, hem hızlı tepki sürelerini hem de kapsamlı güvenlik ve kontrolü bir arada sunar. Kodunuzu iyi belgeleyin, düzenli testler yapın ve olası hata senaryolarını önceden düşünerek proaktif güvenlik önlemleri alın. Bu, Mach4 tabanlı sistemlerinizin uzun ömürlü, güvenli ve verimli çalışmasını sağlayacaktır.