Modbus TCP ve RTU Farkı: Çerçeve, Hız, Adresleme ve Test

Modbus TCP ve RTU Farkı: Çerçeve, Hız, Adresleme ve Test
Karşılaştırma
Ahmet Korkmaz7 dk

Modbus TCP ve RTU Farkı

Modbus RTU, RS485 gibi seri hatlar üzerinden konuşan ve her paketin sonuna CRC ekleyen Modbus türüdür. Modbus TCP ise aynı fonksiyon kodlarını Ethernet/IP ağı üzerinde, 502 numaralı portta ve CRC yerine 7 baytlık bir MBAP başlığıyla taşır. Register’lar, fonksiyon kodları ve veri modeli aynıdır. Değişen, paketin nasıl taşındığıdır. Bu fark sahada en çok gateway kurulumunda ve yanlış ayarlanmış “RTU over TCP” bağlantılarında can yakar.

Hızlı karşılaştırma

Modbus RTUModbus TCP
Fiziksel katmanSeri: RS485 (bazen RS232)Ethernet / IP ağı
AdreslemeSlave ID 1–247IP adresi + unit ID
PortCOM / tty seri portTCP 502
Hata kontrolüPaket sonunda CRC-16TCP’nin kendi kontrolü; Modbus CRC yok
BaşlıkYok (slave ID + PDU + CRC)MBAP: transaction ID, protocol ID, length, unit ID
Master sayısıHatta tek masterAynı anda birden fazla client (cihaz limitine bağlı)
Tipik hız9600–115200 bit/s10/100 Mbit/s ağ; cihazın cevap süresi belirler
MesafeYaklaşık 1200 m (segment başına)Ağ altyapısına bağlı
Tipik cihazSayaç, sensör, sürücü, küçük inverterInverter, PLC, gateway, enerji analizörü

Çerçeve yapısı: asıl fark burada

Her iki türde de ortadaki kısım aynıdır: PDU (fonksiyon kodu + veri). Farklı olan, PDU’nun etrafına neyin eklendiğidir.

RTU çerçevesi: [Slave ID 1 bayt] [PDU] [CRC 2 bayt] Paketler arasında en az 3,5 karakterlik sessizlik bırakılır. Paketin bittiği bu sessizlikten anlaşılır.

TCP çerçevesi: [Transaction ID 2] [Protocol ID 2 = 0] [Length 2] [Unit ID 1] [PDU] CRC yoktur, çünkü TCP veriyi zaten doğrular. Transaction ID sayesinde client, hangi cevabın hangi isteğe ait olduğunu bilir.

Unit ID: TCP’de neden hâlâ var?

Doğrudan Ethernet portlu bir cihazda unit ID çoğu zaman yok sayılır (1 veya 255 kabul edilir). Ama TCP–RTU gateway arkasında unit ID, gateway’in RS485 hattında hangi slave’e gideceğini belirler. Gateway arkasındaki cihazdan cevap alamıyorsanız ilk kontrol edilecek değer unit ID’dir.

“Modbus RTU over TCP” Modbus TCP değildir

Bazı seri–Ethernet dönüştürücüler RTU paketini olduğu gibi (CRC dahil, MBAP başlıksız) TCP üzerinden taşır. Buna “RTU over TCP” veya “transparent mode” denir.

  • Modbus TCP client’ı bu cihaza bağlanırsa TCP bağlantısı kurulur ama cevap gelmez veya anlamsız gelir.
  • Çözüm: Dönüştürücüyü “Modbus TCP gateway” moduna almak ya da client’ta RTU over TCP seçeneğini kullanmak.

Port 502 açık diye cihazın Modbus TCP konuştuğunu varsaymayın.

Hangisini ne zaman seçmeli?

  • Kısa mesafede çok sayıda basit cihaz (sayaç, sensör): RTU. Kablolama ucuzdur, ağ altyapısı gerekmez.
  • Saha zaten Ethernet ise veya yüksek veri hızı gerekiyorsa: TCP.
  • Karışık saha (ör. GES): Inverter’lar TCP, sayaç ve sensörler RTU olur; aradaki köprü bir gateway veya datalogger’dır.

Pratikte seçim çoğu zaman sizin değil, cihazın elindedir. Önemli olan, iki tarafı da test edebilmektir.

İki tarafı da aynı programla test etmek

Gateway kurulumunda doğru sıra şudur:

  1. RTU tarafını USB–RS485 dönüştürücüyle doğrudan test edin (seri ayar, slave ID, register). Ayrıntılar: Modbus RTU / RS485 test rehberi.
  2. Ardından TCP tarafını gateway’in IP’sine port 502’den bağlanarak, aynı register’ı aynı unit ID ile okuyun.
  3. İki okuma aynıysa gateway doğru çalışıyordur. Farklıysa sorun gateway’in eşleme ayarındadır.

Ranaliz iOT Tester Modbus TCP, UDP ve seri RTU desteğini tek pencerede sunar. Aynı oturumda RTU’dan TCP’ye geçebilir, iki sonucu yan yana karşılaştırabilirsiniz. FC01–FC16, endian seçenekleri, işlem geçmişi ve Excel/CSV aktarımı ücretsizdir; Windows ve macOS’ta çalışır.

SSS

Modbus TCP, RTU’dan daha mı hızlı?

Ağ hızı olarak evet. Ancak gerçek sorgu süresini çoğu zaman cihazın işlem süresi belirler. Seri hatta tek master sırayla sorguladığı için çok cihazlı RTU hattı yavaş kalır.

Modbus TCP hangi portu kullanır?

Varsayılan TCP 502’dir. Bazı cihazlar ve gateway’ler farklı port kullanmaya izin verir.

Aynı cihaz hem TCP hem RTU destekleyebilir mi?

Evet. Birçok inverter ve enerji analizörü hem Ethernet hem RS485 portuna sahiptir. Register haritası genelde aynıdır, ama adres ofsetini her iki tarafta da doğrulayın.

Modbus ASCII nedir?

Seri hatta kullanılan, veriyi hex karakterlerle ve LRC ile taşıyan eski bir türdür. Bugün nadiren görülür. Yeni kurulumlarda RTU tercih edilir.

Kaynaklar

  • Modbus Organization — MODBUS Application Protocol Specification V1.1b3
  • Modbus Organization — MODBUS Messaging on TCP/IP Implementation Guide V1.0b
  • Modbus Organization — MODBUS over Serial Line Specification and Implementation Guide V1.02
Ranaliz Platform

Santralinizi Ranaliz ile izleyin

Gerçek zamanlı izleme, akıllı alarmlar ve yapay zeka destekli analizlerle enerji tesislerinizi tek platformdan yönetin.

Demo Talep Et