Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir?

Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir?

📅 02 Eylül 2026⏱️ 16 dk okuma
📑 İçindekiler (Tıkla Aç)

Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script, farklı tetikleyicilere ve amaçlara sahip otomasyon komut dosyalarıdır. Screen Load Script ekran yüklenirken UI başlatma, PLC Script sürekli döngüde makine mantığı ve I/O kontrolü, Button Script kullanıcı etkileşimiyle anlık aksiyonlar, M Code Script ise G-kod içindeki özel M-kodlarına yanıt vererek makine fonksiyonlarını özelleştirmek için kullanılır.

Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir? Nedir?

 

Endüstriyel otomasyon ve CNC kontrol sistemlerinde, özellikle Mach4 gibi gelişmiş yazılımlarda, makine davranışını ve kullanıcı arayüzünü (UI) özelleştirmek için çeşitli komut dosyası (script) türleri kullanılır. Bu komut dosyaları, farklı tetikleyicilere ve çalışma bağlamlarına sahiptir, bu da her birinin belirli görevler için en uygun olmasını sağlar. Temelde, her bir script türü, makinenin ve kontrol yazılımının belirli bir anında veya belirli bir olaya yanıt olarak çalışacak şekilde tasarlanmıştır. Bu ayrım, sistemin hem verimli hem de güvenli bir şekilde çalışmasını sağlamak için kritik öneme sahiptir.

Mach4’te kullanılan bu dört ana script türü, otomasyon mühendislerine ve operatörlere olağanüstü bir esneklik sunar. Her birinin kendine özgü bir “ne zaman” ve “neden” çalıştığı vardır. Bu farkları anlamak, Mach4 tabanlı bir CNC makinesinin kurulumu, optimizasyonu ve sorun gidermesi sırasında doğru kararları vermek için hayati önem taşır. Yanlış script türünü yanlış amaçla kullanmak, performans sorunlarına, beklenmedik makine davranışlarına veya hatta güvenlik risklerine yol açabilir. Bu makalede, her bir script türünün çalışma prensiplerini, kullanım alanlarını ve aralarındaki temel farkları detaylı bir şekilde inceleyeceğiz.

Çalışma Prensibi ve Teknik Veriler

Mach4’ün gücü, esnek ve özelleştirilebilir yapısında yatar. Bu esneklik, büyük ölçüde Lua programlama diliyle yazılan çeşitli script türleri aracılığıyla sağlanır. Her script türü, belirli bir amaca hizmet eder ve belirli bir olay tetiklendiğinde yürütülür. Bu ayrım, karmaşık otomasyon görevlerinin düzenli ve yönetilebilir bir şekilde ele alınmasını sağlar.

Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir?

Screen Load Script

Screen Load Script, adından da anlaşılacağı gibi, Mach4 GUI’sinde belirli bir ekranın (veya sayfanın) yüklendiği her seferde otomatik olarak çalışan bir komut dosyasıdır. Bu scriptlerin temel amacı, kullanıcının gördüğü arayüzü başlatmak, dinamik verileri yüklemek veya ekranın genel durumunu ayarlamaktır. Örneğin, bir ekran yüklendiğinde belirli bir göstergeyi (DRO) sıfırlamak, varsayılan bir ayarı uygulamak veya belirli düğmelerin durumunu (aktif/pasif) ayarlamak için kullanılabilir. Bu scriptler, genellikle UI elemanlarının başlatılması ve gösterilmesiyle ilgili tek seferlik görevleri yerine getirir. Her ekranın kendi Screen Load Script’i olabilir ve bu scriptler, o ekranın yaşam döngüsüyle doğrudan ilişkilidir. Performans açısından, bu scriptlerin çok karmaşık olmaması ve ekran yükleme süresini uzatmaması önemlidir.

Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir?

PLC Script

PLC Script, Mach4’ün kalbi olarak kabul edilebilir ve bir gerçek zamanlı programlanabilir mantık denetleyicisi (PLC) gibi sürekli bir döngüde çalışır. Genellikle 10 ila 20 milisaniye gibi kısa aralıklarla tekrar tekrar yürütülür. Bu script, makinenin temel mantığını, güvenlik interlock’larını, I/O (giriş/çıkış) sinyallerinin işlenmesini ve karmaşık sıralı işlemleri kontrol etmek için kullanılır. Örneğin, bir takım değiştirici mekanizmasının tüm adımlarını yönetmek, bir acil durdurma (E-stop) durumunu izlemek ve makineyi güvenli bir duruma getirmek, limit switch’leri okumak ve makine hareketlerini buna göre kısıtlamak gibi görevler PLC Script ile yerine getirilir. PLC Script, Mach4’ün UI’sinden bağımsız olarak arka planda çalışır ve makinenin sürekli izlenmesi ve kontrolü için hayati öneme sahiptir. Bu scriptin verimli ve hatasız olması, makinenin kararlı ve güvenli çalışması için esastır.

Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir?

Button Script

Button Script, Mach4 arayüzündeki bir düğmeye (button) tıklandığında çalışan basit ama etkili bir komut dosyasıdır. Bu scriptler, kullanıcı tarafından başlatılan anlık eylemleri gerçekleştirmek için tasarlanmıştır. Örneğin, bir “Başlat” düğmesine basıldığında bir G-kod programını başlatmak, “Duraklat” düğmesine basıldığında makineyi duraklatmak, bir ekseni belirli bir miktarda joglamak veya bir soğutma sıvısı pompasını açıp kapatmak gibi görevler Button Script ile gerçekleştirilir. Her düğme, kendi özel Button Script’ine sahip olabilir ve bu scriptler genellikle kısa ve spesifik bir görevi yerine getirir. Kullanıcı etkileşimiyle doğrudan ilişkili olduklarından, hızlı yanıt süreleri ve anlaşılır hata mesajları sunmaları önemlidir.

Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir?

M Code Script

M Code Script, G-kod programları içinde belirli bir M-kodu (yardımcı fonksiyon kodu) ile karşılaşıldığında tetiklenen bir komut dosyasıdır. M-kodları, CNC programlarında genellikle takım değiştirme, soğutma sıvısını açma/kapama, iş parçasını sıkma/gevşetme gibi makineye özgü yardımcı fonksiyonları çağırmak için kullanılır. Mach4’te, varsayılan M-kod davranışlarını geçersiz kılmak veya tamamen yeni özel M-kodları tanımlamak için M Code Script’leri kullanılabilir. Örneğin, standart bir takım değiştirme M6 kodunun yerine, özel bir takım magazin mekanizmasını kontrol eden karmaşık bir Lua scripti yazılabilir. Bu scriptler, G-kod programının akışına derinlemesine entegre olur ve makinenin özel yeteneklerini G-kod seviyesinde kullanıma sunar. M Code Script’leri, makine otomasyonunu NC programlama ile birleştirmek için güçlü bir araçtır.

ParametreScreen Load ScriptPLC ScriptButton ScriptM Code Script
TetikleyiciEkranın yüklenmesiSürekli, döngüsel (10-20ms)Kullanıcının düğmeye tıklamasıG-kod içinde belirli bir M-kodunun okunması
AmaçUI başlatma, ekran verilerini yüklemeGerçek zamanlı makine mantığı, I/O kontrolü, güvenlikKullanıcı tarafından başlatılan anlık aksiyonlarG-koda entegre özel makine fonksiyonları
Çalışma OrtamıGUI ön planı, ekran başına bir kezArka plan, UI’den bağımsız, sürekliGUI ön planı, tıklama başına bir kezG-kod yorumlayıcısı, program akışı içinde
Tipik KullanımDRO’ları sıfırlama, varsayılan ayarları yüklemeHoming rutinleri, takım değiştirici, limit switch kontrolüJogging, alarm sıfırlama, program başlatma/durdurmaÖzel takım değiştirme, fikstür kontrolü, gelişmiş soğutma
Etki AlanıSadece ilgili ekranın UI’siTüm makine sistemi, I/O ve eksenlerBelirli bir aksiyon veya UI öğesiG-kod programının kontrol ettiği makine fonksiyonları
Programlama DiliLuaLuaLuaLua
Performans KritikliğiOrta (ekran yükleme süresini etkiler)Yüksek (gerçek zamanlı kontrolü etkiler)Düşük (anlık, kısa süreli)Orta (G-kod akışını etkiler)
Mach4’te Screen Load Script, PLC Script, Button Script ve M Code Script Arasındaki Fark Nedir?

Sahada Dikkat Edilmesi Gerekenler

  • Performans Optimizasyonu ve Verimlilik: Özellikle PLC Script‘in döngüsel yapısı nedeniyle, bu script içinde yazılan kodun olabildiğince verimli olması kritik önem taşır. Her milisaniyede çalışan gereksiz veya karmaşık hesaplamalar, kontrol döngüsünü yavaşlatabilir ve makine performansını olumsuz etkileyebilir. Benzer şekilde, Screen Load Script‘ler de ekran yükleme sürelerini uzatmayacak şekilde optimize edilmelidir. Ağır döngülerden, uzun süreli dosya işlemlerinden veya karmaşık matematiksel operasyonlardan kaçınılmalı, mümkünse bu tür işlemler daha az kritik scriptlere aktarılmalıdır.
  • Hata Ayıklama (Debugging) ve Günlükleme (Logging): Scriptlerde oluşabilecek hataları tespit etmek ve gidermek için etkili hata ayıklama teknikleri kullanmak şarttır. Mach4, Lua scriptleri için çeşitli hata ayıklama araçları ve günlükleme mekanizmaları sunar. Özellikle PLC Script‘teki hatalar, makinenin beklenmedik davranışlar sergilemesine veya durmasına neden olabileceğinden, kritik değişkenlerin ve durumların sürekli olarak loglanması, sorunların hızlıca teşhis edilmesine yardımcı olur. Print komutları veya Mach4’ün dahili günlükleme fonksiyonları, scriptlerin çalışma zamanındaki davranışlarını izlemek için kullanılabilir.
  • Modüler Yaklaşım ve Kod Yeniden Kullanımı: Karmaşık otomasyon projelerinde, scriptleri küçük, yönetilebilir fonksiyonlara bölmek, kodun okunabilirliğini, bakımını ve yeniden kullanılabilirliğini artırır. Ortak görevler için yazılan fonksiyonlar, farklı Button Script‘leri, M Code Script‘leri veya hatta PLC Script‘leri tarafından çağrılabilir. Bu modüler yapı, hem geliştirme sürecini hızlandırır hem de hata olasılığını azaltır. Örneğin, bir takım değiştirme rutinini kontrol eden bir fonksiyon, hem bir M Code Script’inden hem de belirli bir “Takım Değiştir” düğmesinden çağrılabilir.
  • Güvenlik Protokolleri ve Interlock’lar: Özellikle PLC Script, makinenin güvenlik mekanizmalarını yönettiği için son derece dikkatli yazılmalıdır. Acil durdurma (E-stop), limit switch’ler, kapı interlock’ları gibi güvenlik fonksiyonlarının doğru ve anında yanıt verdiğinden emin olunmalıdır. Yanlış yazılmış bir PLC Script, makineye veya operatöre zarar verebilecek tehlikeli durumlar yaratabilir. M Code Script‘ler de makine hareketlerini veya güç aktarımını kontrol ettiğinden, güvenlik kontrolleri bu scriptlerde de göz ardı edilmemelidir. Herhangi bir hareket veya durum değişikliği öncesinde güvenlik koşullarının kontrol edilmesi bir standart olmalıdır.
  • Sürüm Kontrolü ve Yedekleme: Scriptler, makinenin beyni olduğundan, yapılan her değişikliğin kaydedilmesi ve bir sürüm kontrol sistemi (örneğin Git) kullanılarak yönetilmesi şiddetle tavsiye edilir. Bu, önceki çalışma durumlarına kolayca geri dönmeyi veya farklı script versiyonları arasında karşılaştırma yapmayı sağlar. Ayrıca, tüm script dosyalarının düzenli olarak yedeklenmesi, veri kaybı durumunda hızlı bir kurtarma imkanı sunar.

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

Mach4’te scriptlerle çalışırken karşılaşılabilen bazı yaygın sorunlar ve bunların çözüm yolları şunlardır:

  • Script Çakışmaları veya Beklenmeyen Davranışlar:

    Sorun: Birden fazla script aynı makine kaynağını (örneğin bir çıkış pini, bir eksen konumu) kontrol etmeye çalıştığında çakışmalar yaşanabilir. Örneğin, bir PLC Script bir çıkışı sürekli açık tutarken, bir Button Script o çıkışı kapatmaya çalışabilir. Ya da bir Screen Load Script‘in başlattığı bir durum, başka bir script tarafından anında değiştirilebilir.

    Çözüm: Kodun modüler yapısını iyi tasarlayın ve kaynak yönetimini merkezileştirin. Hangi scriptin hangi kaynağı kontrol edeceğini net bir şekilde belirleyin. Durum değişkenlerini (state variables) kullanarak scriptler arası iletişimi ve senkronizasyonu sağlayın. Özellikle PLC Script’in diğer scriptlerden gelen istekleri işlediği ve makineye uyguladığı bir “ana kontrolör” rolünü üstlenmesi faydalı olabilir.

  • Performans Düşüşleri veya Makine Gecikmeleri:

    Sorun: Özellikle PLC Script içinde ağır veya verimsiz kod bulunması (örneğin, karmaşık matematiksel işlemler, uzun süren döngüler, gereksiz API çağrıları), kontrol döngüsünün süresini uzatabilir ve makinenin tepki süresini düşürebilir. Bu, hareket hassasiyetini ve genel makine performansını olumsuz etkiler.

    Çözüm: PLC Script’i sade ve hızlı tutun. Sadece acil ve kritik görevleri buraya yerleştirin. Daha az zaman kritik olan görevleri (örneğin UI güncellemeleri, loglama) daha seyrek çalışan fonksiyonlara veya başka script türlerine taşıyın. Lua’nın performans ipuçlarını araştırın ve kodunuzu optimize edin. Mach4’ün Profiler (performans analiz aracı) özelliğini kullanarak darboğazları tespit edin.

  • UI Güncelleme Sorunları:

    Sorun: Bir Button Script veya PLC Script bir makine durumunu değiştirdiğinde, kullanıcı arayüzündeki (UI) ilgili göstergelerin (DRO’lar, LED’ler) güncellenmemesi.

    Çözüm: UI elemanlarını güncellemek için Mach4’ün uygun API fonksiyonlarını (örneğin `mc.mcCntlSetLastError`, `mc.mcCntlSetLED`) kullanıldığından emin olun. Özellikle PLC Script’ten UI elemanlarını güncellerken, sürekli olarak güncellemek yerine yalnızca durum değiştiğinde güncelleme yaparak performansı artırabilirsiniz. Bazı durumlarda, UI’nin kendi kendini yenilemesi için küçük bir gecikme eklemek veya Mach4’ün UI yenileme döngüsüne müdahale etmek gerekebilir, ancak bu genellikle otomatik olarak yönetilir.

  • M-Kodu Scriptinin Çalışmaması veya Hatalı Çalışması:

    Sorun: G-kod içinde çağrılan bir M Code Script‘in tetiklenmemesi, hata vermesi veya beklendiği gibi davranmaması.

    Çözüm: Öncelikle, M-kodunun Mach4’te doğru bir şekilde tanımlandığından ve ilgili Lua script dosyasına bağlandığından emin olun. Script dosyasının adının `Mxxx.mcc` formatında olup olmadığını kontrol edin (xxx M-kodu numarası). Script içindeki Lua sözdizimi hatalarını ve API çağrılarının doğruluğunu kontrol edin. Mach4’ün G-kod yorumlayıcısı penceresindeki mesajları ve hata günlüklerini izleyin. M-kodunun program akışında doğru yerde çağrıldığından ve önceki işlemlerin tamamlandığından emin olun.

  • Tanımsız Fonksiyon veya Değişken Hataları:

    Sorun: Script çalıştırıldığında “attempt to call nil value” veya “variable not defined” gibi Lua hataları alınması.

    Çözüm: Bu genellikle, bir fonksiyonun veya değişkenin tanımlanmadan önce kullanılmaya çalışılmasından, yanlış yazımından veya yanlış kapsamda (scope) olmasından kaynaklanır. Script içindeki tüm fonksiyon ve değişken isimlerinin doğru yazıldığından ve tanımlandığından emin olun. Özellikle global ve yerel değişkenler arasındaki farkı iyi anlayın. Mach4 API fonksiyonlarını kullanırken, fonksiyon adlarının ve parametrelerinin Mach4 belgeleriyle eşleştiğini doğrulayın.

Uzman Tavsiyesi

Mach4’ün sunduğu Screen Load Script, PLC Script, Button Script ve M Code Script yetenekleri, endüstriyel otomasyon profesyonelleri için makine kontrolünü ve kullanıcı arayüzünü son derece özelleştirme imkanı sunan güçlü araçlardır. Bu dört script türü arasındaki temel farkları anlamak, Mach4 tabanlı bir sistemin başarılı bir şekilde tasarlanması, uygulanması ve sürdürülmesi için kritik öneme sahiptir. Her birinin kendi tetikleyicisi, yürütme bağlamı ve optimal kullanım alanı vardır; bu ayrımı göz ardı etmek, performanstan güvenlik açıklarına kadar çeşitli sorunlara yol açabilir.

Uzman tavsiyesi olarak, herhangi bir Mach4 projesine başlarken, hangi görevin hangi script türü için en uygun olduğunu dikkatlice planlamak esastır. PLC Script‘i makinenin gerçek zamanlı, sürekli çalışan mantığı ve güvenlik interlock’ları için ayırırken, Button Script‘leri anlık kullanıcı etkileşimleri için kullanın. Screen Load Script‘ler ile kullanıcı arayüzünüzü dinamik ve bilgilendirici hale getirin. M Code Script‘ler aracılığıyla ise G-kod programlarınıza özel makine fonksiyonlarını sorunsuz bir şekilde entegre edin. Kodunuzu modüler tutun, yorumlayıcı ve hata ayıklama mesajlarını düzenli olarak izleyin ve her zaman yedekleme ve sürüm kontrolü pratiğini uygulayın. Unutmayın ki iyi yazılmış, optimize edilmiş ve doğru yerleştirilmiş scriptler, bir CNC makinesinin performansını, güvenilirliğini ve kullanım kolaylığını önemli ölçüde artırabilir. Mach4’ün Lua tabanlı esnekliği, doğru yaklaşımla birleştiğinde, neredeyse sınırsız otomasyon potansiyeli sunar.

Yorum bırakın

Alışveriş Sepeti
⚙ Araçlar
Scroll to Top