Mach3’te Modbus ile PLC’ye Veri Göndermek ve PLC’den Veri Okumak Nasıl Yapılır?

Mach3’te Modbus ile PLC’ye Veri Göndermek ve PLC’den Veri Okumak Nasıl Yapılır?

📅 02 Eylül 2026⏱️ 16 dk okuma
5 Eksen Cnc Usb Kontrol Kartı Mach3 Kart Green
📑 İçindekiler (Tıkla Aç)

Mach3’te Modbus ile PLC’ye veri göndermek ve PLC’den veri okumak için öncelikle PLC’de Modbus slave ayarları yapılır, ardından Mach3’ün “Modbus Config” menüsünden seri (RS232/RS485) veya TCP/IP bağlantı parametreleri tanımlanır. Son olarak, Mach3’teki OEM Trigger’lar, girişler ve çıkışlar, PLC’deki Modbus adresleriyle eşleştirilerek veya özel VB Script’ler aracılığıyla veri alışverişi sağlanır.

Mach3’te Modbus ile PLC’ye Veri Göndermek ve PLC’den Veri Okumak Nasıl Yapılır? Nedir?

 

Endüstriyel otomasyon sistemlerinde, bir bilgisayar tabanlı CNC kontrol yazılımı olan Mach3 ile bir Programlanabilir Mantık Denetleyicisi (PLC) arasında veri alışverişi sağlamak, genellikle daha karmaşık otomasyon senaryoları için kritik bir gerekliliktir. Bu entegrasyonun temelini oluşturan iletişim protokollerinden biri de Modbus’tur. Modbus, endüstriyel cihazlar arasında bilgi alışverişi için yaygın olarak kullanılan, açık, seri (RS-232/RS-485) veya Ethernet (Modbus TCP/IP) tabanlı bir haberleşme protokolüdür. Mach3’ün Modbus yetenekleri sayesinde, CNC tezgahının hareket kontrolü ile harici PLC tabanlı sistemler (örneğin, robotlar, konveyörler, takım değiştiriciler, otomatik besleyiciler, güvenlik sistemleri veya proses kontrol birimleri) arasında senkronize ve koordineli bir çalışma ortamı oluşturulabilir. Bu entegrasyon, Mach3’ün tek başına sağlayamadığı ek otomasyon fonksiyonlarını veya daha geniş fabrika otomasyon ağlarına veri aktarımını mümkün kılar. Örneğin, bir PLC, bir parçanın doğru konumda olduğunu doğrulayan bir sensör bilgisini Mach3’e iletebilir veya Mach3, bir işleme döngüsünün sonunda PLC’ye bir sonraki aşamayı başlatması için komut gönderebilir. Bu, üretim verimliliğini artırır, hata oranlarını düşürür ve otomasyon esnekliğini önemli ölçüde geliştirir.

Çalışma Prensibi ve Teknik Veriler

Mach3’ün Modbus entegrasyonu, temel olarak bir master-slave (usta-köle) mimarisine dayanır. Genellikle Mach3, Modbus master olarak görev yapar ve PLC ise Modbus slave olarak veri taleplerini dinler ve yanıtlar. Bu, Mach3’ün PLC’den veri okumasına (Input Registers, Discrete Inputs) ve PLC’ye veri yazmasına (Holding Registers, Coils) olanak tanır.

Mach3’te Modbus ile PLC’ye Veri Göndermek ve PLC’den Veri Okumak Nasıl Yapılır?

Çalışma Prensibi Adım Adım:

  1. PLC Tarafında Hazırlık:
    • Modbus Slave Fonksiyonunu Etkinleştirme: Kullanılan PLC modeline göre, Modbus RTU veya Modbus TCP/IP slave fonksiyonunu PLC programlama yazılımı üzerinden etkinleştirmelisiniz.
    • Modbus Adreslerini Tanımlama: PLC programınızda, Mach3 ile değiş tokuş edilecek veriler için Modbus adreslerini (register numaralarını) belirlemelisiniz. Bu adresler;
      • Coils (0x): Tek bitlik dijital çıkışlar (ON/OFF). Mach3’ten PLC’ye komut göndermek için kullanılır (örn: motor çalıştırma).
      • Discrete Inputs (1x): Tek bitlik dijital girişler (ON/OFF). PLC’den Mach3’e durum bilgisi okumak için kullanılır (örn: sensör durumu).
      • Input Registers (3x): 16 bitlik sayısal girişler. PLC’den Mach3’e analog değerler veya durum kodları okumak için kullanılır (örn: sıcaklık, basınç).
      • Holding Registers (4x): 16 bitlik sayısal çıkışlar. Mach3’ten PLC’ye sayısal değerler veya setpoint’ler göndermek için kullanılır (örn: hız ayarı).

      Her bir adresin PLC programınızda hangi veri noktasına karşılık geldiğini net bir şekilde dokümante etmelisiniz.

  2. Donanım Bağlantısı:
    • Modbus RTU (Seri Haberleşme): Eğer PLC’niz RS-232 veya RS-485 portuna sahipse ve Modbus RTU kullanılıyorsa, bilgisayarınızda bir seri port (COM port) bulunmalıdır. Eğer yoksa, bir USB’den RS-232/RS-485 dönüştürücü kullanmanız gerekir. RS-485, uzun mesafeler ve çoklu cihaz bağlantısı için tercih edilir. Kablolama (A/B ve GND) doğru yapılmalı ve terminasyon dirençleri (120 Ohm) hattın her iki ucuna yerleştirilmelidir.
    • Modbus TCP/IP (Ethernet Haberleşme): PLC’niz Ethernet portuna sahipse ve Modbus TCP/IP destekliyorsa, bilgisayarınız ile PLC’yi bir Ethernet kablosu ile bağlamanız yeterlidir. Aynı ağda olduklarından ve IP adreslerinin doğru yapılandırıldığından emin olun.
  3. Mach3 Modbus Yapılandırması:
    • Mach3 arayüzünde Config > Ports and Pins > Modbus Config menüsüne gidin.
    • Port Ayarları:
      • Seri Port (RTU için): Açılan pencerede, bilgisayarınızdaki COM portunu seçin. Baud Rate (9600, 19200, 38400 vb.), Data Bits (8), Stop Bits (1 veya 2) ve Parity (None, Even, Odd) ayarlarını PLC’deki Modbus ayarlarıyla birebir eşleştirin.
      • TCP/IP Port (TCP/IP için): PLC’nin IP adresini ve Modbus TCP varsayılan port numarasını (genellikle 502) girin.
    • Slave ID: Modbus RTU’da her slave cihazın benzersiz bir kimliği (1-247) olmalıdır. Mach3’te PLC’nizin Slave ID’sini girin. Modbus TCP/IP’de Slave ID genellikle kullanılmaz veya 0 olarak ayarlanır.
    • Modbus Mapping: Mach3, Modbus verilerini kendi iç değişkenleriyle (OEM Trigger’lar, Input’lar, Output’lar) eşleştirmek için bir arayüz sunar.
      • “Add” butonu ile yeni bir Modbus adresi tanımlayın. Mach3’ün hangi Modbus fonksiyon kodunu (Read Coils, Read Holding Registers vb.) kullanacağını ve PLC’deki başlangıç adresini (örneğin, 40001 veya 0x0000) belirtin.
      • Bu Modbus adresini, Mach3’teki bir OEM Trigger’a, bir Input’a veya bir Output’a atayın. Örneğin, PLC’deki bir sensör durumunu okumak için bir Discrete Input adresini Mach3’teki bir OEM Trigger’a atayabilirsiniz.
  4. Veri Okuma ve Yazma:
    • PLC’den Mach3’e Veri Okuma: PLC’deki sensör durumları (Discrete Inputs), analog değerler (Input Registers) veya dahili durum bayrakları (Holding Registers) Mach3 tarafından okunabilir. Mach3’te bu okunan değerler, G-kodu programlarında veya VB Script’lerde kullanılabilir. Örneğin, bir OEM Trigger’a atanan Modbus girişi, G-kodu içinde bir koşul (If GetOEMTrigger(xxx) Then...) olarak kontrol edilebilir.
    • Mach3’ten PLC’ye Veri Yazma: Mach3’teki programlama veya kullanıcı arayüzü eylemleriyle (örneğin, bir buton basımı), PLC’deki Coils (dijital çıkışlar) veya Holding Registers (sayısal değerler) değiştirilebilir. Bu, PLC’nin belirli bir eylemi (motor çalıştırma, valf açma, hız değiştirme) gerçekleştirmesini tetikler. Yazma işlemleri genellikle OEMCode(135), SetOEMDRO(xxx, value), SetOEMLED(xxx, value) gibi fonksiyonlar veya özel VB Script’ler aracılığıyla gerçekleştirilir.
Mach3’te Modbus ile PLC’ye Veri Göndermek ve PLC’den Veri Okumak Nasıl Yapılır?

Teknik Veriler Tablosu:

ParametreDeğer/Açıklama
Protokol TürleriModbus RTU (Seri), Modbus TCP/IP (Ethernet)
Veri Tipleri (Modbus Fonksiyon Kodları)0x (Coils), 1x (Discrete Inputs), 3x (Input Registers), 4x (Holding Registers)
Mach3 RolüModbus Master (Genellikle)
PLC RolüModbus Slave (Genellikle)
Seri Port AyarlarıBaud Rate (9600-115200 bps), Data Bits (8), Stop Bits (1/2), Parity (None/Even/Odd)
Ethernet Port AyarlarıIP Adresi, Port Numarası (Genellikle 502)
Kablolama Standardı (RTU için)RS-485 (2 telli diferansiyel sinyal), RS-232 (3 telli)
Max. Cihaz Sayısı (RS-485)32 (repeater ile 256’ya kadar)
Max. Kablo Uzunluğu (RS-485)1200 metre (düşük baud rate’lerde)
Mach3’te Modbus ile PLC’ye Veri Göndermek ve PLC’den Veri Okumak Nasıl Yapılır?

Sahada Dikkat Edilmesi Gerekenler

  • Doğru Kablolama ve Topraklama: Endüstriyel ortamlar elektriksel gürültüye (EMI/RFI) maruz kalabilir. RS-485 için ekranlı bükümlü çift kablo kullanın ve kablo kalkanını doğru şekilde topraklayın. Kablo uzunluklarını Modbus standartlarına uygun tutun ve yüksek voltaj kablolarından uzak tutarak paraziti minimize edin.
  • Terminasyon Dirençleri: Özellikle RS-485 ağlarında, hattın başlangıç ve bitiş noktalarına 120 Ohm’luk terminasyon dirençleri eklemek, sinyal yansımalarını önleyerek veri bütünlüğünü sağlar. Bu, iletişim hatalarını büyük ölçüde azaltır.
  • Modbus Adresleme Tutarlılığı: PLC programınızdaki Modbus adresleri (Coils, Registers) ile Mach3’teki Modbus yapılandırmasındaki adreslerin birebir aynı olduğundan emin olun. Yanlış bir adresleme, iletişimin tamamen başarısız olmasına veya yanlış verilerin okunmasına/yazılmasına neden olur. Offset (kaydırma) değerlerine dikkat edin; bazı PLC’ler 0 tabanlı, bazıları 1 tabanlı adresleme kullanır.
  • Veri Tipi ve Boyut Uyumsuzlukları: Modbus genellikle 16-bit kelimelerle çalışır. Eğer PLC’de 32-bit float veya double değerler kullanılıyorsa, Mach3’e aktarırken bu değerlerin nasıl bölüneceğini ve birleştirileceğini (örneğin, iki adet 16-bit register olarak) doğru şekilde programlamalısınız. Veri dönüşümlerini (integer to float, boolean to integer) dikkatlice yönetin.
  • Hata Yönetimi ve Zaman Aşımı (Timeout): Mach3’te Modbus iletişim zaman aşımı (timeout) ayarlarını doğru yapın. PLC’den belirli bir süre içinde yanıt alınamazsa, Mach3’ün ne yapacağını (örneğin, hata mesajı göstermek, işlemi durdurmak) belirleyin. Bu, sistemin kilitlenmesini veya beklenmedik davranışlar sergilemesini önler.
  • Güvenlik ve Acil Durdurma Mantığı: Modbus üzerinden kontrol edilen kritik işlevler (örn: güvenlik kapıları, acil durdurma), sadece yazılıma bağımlı olmamalıdır. Donanımsal güvenlik devreleri ve bağımsız acil durdurma butonları her zaman öncelikli olmalıdır. Modbus iletişimi kesilse bile güvenlik sistemlerinin çalışmaya devam ettiğinden emin olun.
  • Dokümantasyon ve Yedekleme: PLC’deki Modbus adres haritasını, Mach3’teki Modbus yapılandırmasını ve kullanılan tüm VB Script’leri detaylıca dokümante edin. Bu konfigürasyon dosyalarını düzenli olarak yedekleyin. Gelecekteki sorun giderme veya sistem yükseltmeleri için bu bilgiler hayati öneme sahiptir.
Mach3’te Modbus ile PLC’ye Veri Göndermek ve PLC’den Veri Okumak Nasıl Yapılır?

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

Mach3 ve PLC arasında Modbus iletişimi kurarken karşılaşılan yaygın sorunlar ve bunlara yönelik çözümler aşağıda detaylandırılmıştır:

  1. İletişim Kurulamıyor / Bağlantı Hatası:
    • Sorun: Mach3, PLC ile hiç iletişim kuramıyor veya “Modbus Timeout” hatası veriyor.
    • Çözüm:
      • Kablolama Kontrolü: Seri bağlantı için RS232/RS485 kablosunun doğru bağlandığından (TX/RX, A/B, GND) ve dönüştürücünün (USB-Serial) sürücülerinin doğru yüklendiğinden emin olun. Ethernet için kablonun takılı olduğunu ve fiziksel bağlantının aktif olduğunu doğrulayın.
      • Port Ayarları: Mach3’teki COM portu, Baud Rate, Data Bits, Stop Bits ve Parity ayarlarının PLC’deki Modbus Slave ayarlarıyla tam olarak eşleştiğinden emin olun. Modbus TCP/IP için IP adresi ve port numarasının (genellikle 502) doğru olduğundan emin olun.
      • Slave ID: Modbus RTU için Mach3’te tanımlanan Slave ID’nin PLC’deki Slave ID ile aynı olduğunu kontrol edin.
      • Terminasyon Dirençleri: RS485 bus’ın her iki ucunda 120 Ohm terminasyon dirençlerinin doğru takılıp takılmadığını kontrol edin.
      • PLC Modbus Durumu: PLC programında Modbus slave fonksiyonunun etkin olduğundan ve PLC’nin iletişim için hazır olduğundan emin olun. PLC’nin hata göstergelerini kontrol edin.
      • Antivirüs/Güvenlik Duvarı: Özellikle Modbus TCP/IP kullanırken, bilgisayarınızdaki güvenlik duvarının veya antivirüs yazılımının Modbus portunu (örn. 502) engellemediğinden emin olun.
  2. Yanlış Veri Okuma/Yazma veya Tutarsızlık:
    • Sorun: İletişim kurulabiliyor ancak okunan veriler yanlış, yazılan komutlar işlev görmüyor veya veriler rastgele değişiyor.
    • Çözüm:
      • Modbus Adresleme: Mach3’teki Modbus adreslerinin (Coil, Discrete Input, Input Register, Holding Register) PLC’deki karşılık gelen adreslerle tam olarak eşleştiğinden emin olun. Offset (0 tabanlı vs. 1 tabanlı) farklılıklarını göz önünde bulundurun.
      • Veri Tipi Uyumsuzluğu: Mach3’ten gönderilen veya PLC’den okunan verinin (örn. boolean, integer, float) Modbus protokolündeki karşılığı ve PLC’deki veri tipiyle uyumlu olduğundan emin olun. Özellikle 32-bit veriler için (float/long integer), bunların iki adet 16-bit register olarak nasıl işlendiğini kontrol edin.
      • Register Boyutu: Okunan veya yazılan register sayısının (örneğin, 1 register mı, 2 register mı) doğru ayarlandığını kontrol edin.
      • PLC Programı Mantığı: PLC programında Modbus tarafından yazılan/okunan register’ların doğru şekilde işlendiğini ve güncellendiğini doğrulayın. Belki de PLC programı, Modbus üzerinden gelen verilere yanıt vermiyor veya kendi iç mantığı nedeniyle override ediyor olabilir.
      • Gürültü: Elektriksel gürültü, rastgele bit hatalarına neden olabilir. Kablolamayı, topraklamayı ve terminasyon dirençlerini tekrar kontrol edin.
  3. Gecikme / Performans Sorunları:
    • Sorun: Modbus iletişimi çok yavaş, Mach3 veya PLC yanıt vermekte gecikiyor.
    • Çözüm:
      • Baud Rate: Seri iletişimde daha yüksek bir Baud Rate (örn. 115200) kullanmayı deneyin, ancak kablo kalitesi ve uzunluğunun buna izin verdiğinden emin olun.
      • Sorgu Sıklığı: Mach3’ün PLC’ye çok sık sorgu gönderip göndermediğini kontrol edin. Gereksiz yere hızlı okuma/yazma döngüleri sistem yükünü artırabilir. Sadece ihtiyaç duyulduğunda veri alışverişi yapın.
      • Ağ Yükü (TCP/IP): Ethernet ağınızda yoğun trafik varsa, bu Modbus TCP/IP performansını etkileyebilir. Ağ altyapısını kontrol edin.
      • PLC Performansı: PLC’nin kendi işlem yükü yüksekse, Modbus sorgularına yanıt vermesi gecikebilir. PLC programını optimize etmeyi düşünün.
  4. Mach3 Donuyor veya Çöküyor:
    • Sorun: Modbus entegrasyonu sonrası Mach3 kararsızlaşıyor, donuyor veya beklenmedik şekilde kapanıyor.
    • Çözüm:
      • VB Script Hataları: Modbus okuma/yazma işlemleri için kullanılan VB Script’lerde hata olup olmadığını kontrol edin. Yanlış döngüler, tanımsız değişkenler veya bellek sızıntıları Mach3’ü çökertebilir. Hata ayıklama modunu kullanarak scriptleri test edin.
      • Modbus Sürücüsü/Plugin: Mach3’ün Modbus eklentisinin veya sürücüsünün güncel ve sisteminizle uyumlu olduğundan emin olun. Gerekirse Mach3’ün daha stabil bir sürümünü deneyin.
      • Sistem Kaynakları: Bilgisayarın yeterli işlemci gücü ve belleğe sahip olduğundan emin olun. Modbus iletişimi, özellikle yoğun veri alışverişinde, ek sistem kaynakları gerektirebilir.

Uzman Tavsiyesi

Mach3 ile PLC arasında Modbus üzerinden veri alışverişi yapmak, CNC makinelerinin otomasyon yeteneklerini genişleten kritik bir adımdır. Bu entegrasyon, yalnızca takım yolunu kontrol eden bir CNC tezgahından öteye geçerek, makinenin daha büyük bir üretim hattının veya komple bir otomasyon hücresinin ayrılmaz bir parçası haline gelmesini sağlar. Sensör verilerinden güvenlik interlock’larına, robotik hücrelerle koordinasyondan otomatik malzeme beslemeye kadar geniş bir uygulama yelpazesi sunar. Ancak, bu entegrasyonun başarısı, detaylı planlama, doğru yapılandırma ve sistematik bir sorun giderme yaklaşımına bağlıdır.

Uzman tavsiyesi olarak, bu tür bir entegrasyon projesine başlarken her zaman “küçük adımlarla ilerleme” prensibini benimseyin. Önce en basit veri alışverişini (örneğin, tek bir dijital girişin okunması veya tek bir dijital çıkışın kontrolü) başarıyla gerçekleştirin. Ardından, karmaşıklığı yavaş yavaş artırın. PLC tarafındaki Modbus adresleme haritasını çok net ve anlaşılır bir şekilde dokümante edin; bu, hem ilk kurulumda hem de gelecekteki bakım veya sorun giderme süreçlerinde size zaman kazandıracaktır. Mach3 tarafında ise, Modbus yapılandırmasını ve özellikle özel gereksinimler için yazılan VB Script’leri ayrıntılı olarak not alın ve düzenli yedekler oluşturun. Endüstriyel ortamlarda elektriksel gürültü ve parazit kaçınılmazdır; bu nedenle, kaliteli kablolama, doğru topraklama ve terminasyon dirençlerinin kullanımı gibi fiziksel katman önlemlerinden asla ödün vermeyin. İletişim hatalarını veya zaman aşımlarını yönetmek için Mach3 ve PLC programlarınızda sağlam hata yakalama ve kurtarma mekanizmaları uygulayın. Unutmayın ki, güvenilir bir otomasyon sistemi, sadece doğru çalışan bileşenlerden değil, aynı zamanda bu bileşenlerin olası arızalarına karşı alınan önlemlerden de oluşur. Gelişen teknolojiler ve Endüstri 4.0 vizyonu ile birlikte, Mach3 gibi kontrol yazılımlarının harici sistemlerle Modbus üzerinden entegrasyonu, üretim esnekliği ve verimliliği açısından stratejik bir öneme sahiptir. Bu kılavuzdaki adımları ve dikkat edilmesi gerekenleri uygulayarak, Mach3 tabanlı CNC sistemlerinizi daha akıllı ve entegre otomasyon çözümlerine dönüştürebilirsiniz.

Yorum bırakın

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