21 Aralık 2011 Çarşamba

Modbus RTU Nedir


Modbus RTU ,Master /Slave mimarisinden  türeyen RS232 veya RS 485 seri bağlantı protokülüdür.Kullanımının kolaylığı ve güvenirliliği ile yaygın kabul gören bir protokoldür.Gerek Bina Otomasyonu ve gerekse Endüstiriyel Otomasyon uygulamalarında çok sık kullanılmaktadır.
Modbus RTU mesajları basit 16 - bit CRC (Cyclic Reduntant Checksum ) dır.Mesajların basit oluşu uygulamanın güvenirliliğini arttıran unsurdur.Bu basitlik nedeni ile,temel 16-bit Modbus RTU register yapısı
floating point,tablolar,ASCII text,mesaj kuyrukları (queues) ve diğer gereksiz mesajları paketleyebilir.


Modbus uygulama katmanı (application layer ) mesajlaşma protokolüdür,network veya bus üzerindeki cihazlar arasında Master Slave haberleşme sağlar.
OSI modelinde Modbus 7.Seviyede konumlandırılmıştır.Modbus İste/Yanıtla ( Request/Reply)  protokolü olarak tasarlanmıştır ve fonksiyon kodları ile tanımlanan servisleri sunar.
Modbus ın fonksiyon kodları Modbus İste/Yanıtla  PDU ( Protocol Data Unit) ların elementleridir.

Modbus uygulama veri birimini kurmak için,client 'ın Modbus işlemini başlatması gerekir.Server'a hangi eylemin yapılması gerektiğini bildiren fonksiyondur.Fonksiyon kod alanı sonrasında bir byte'a kodlanır.Sadece 1 ila 255 arasındaki kodlar geçerlidir,128 -255 arası istisnai tepkiler için ayrılmıştır.Master ,Slave 'e bir mesaj gönderdiğinde server a ne tip eylem yapacağını bildiren fonksiyon kodu'dur.



Çoklu eylem tanımlaması için,bazı fonksiyonlara yarı-fonksiyonlar eklenmiştir.Örneğin Master bir gurup Giriş ve Çıkış a ait ON/OFF durumlarını okuyabilmelidir.Bir grup Modbus registerlarındaki veri içeriklerini Okuyup/Yazabilmelidir.Master Slave den yanıt alınca,Slave tarafından kullanılan fonksiyon kodu alanı ya bir hatasız cevap(error -free response ) veya istisna cevabı ( exception response) bildirir.Normal bir cevapta Slave normal yanıtlamada başlangıç kodunu talep eder.


Veri Nesne Özellikleri - Data Object Properties

Modbus RTU paketleri sadece veri gönderme amaçlıdır.Nokta adı,içeriği,birimi vs parametleri gönderme kapasitesi yoktur.Bu tip parametlerin talep edilmesi halinde BACnet,EtherNet/IP ve diğer protokollere başvurulmalıdır.
MODBUS RTU ve diğer protokollerin karşılaştırılması

Modbus RTU nun sınırlı imkanlarına rağmen endüstrideki kullanım yaygınlığının sebebi daha basit uygulama gerektiren bir protokol oluşu,daha aza hafıza gerektirmesidir.Modbus uygulaması için 8-bit CPU da 2Kb yer gerekir iken BACnet ve EtherNET/IP de 30-100Kb hafıza gerekir.
MODBUS RTU ve  MODBUS TCP arasındaki fark
MODBUS RTU ve MODBUS TCP (aynı zamanda MODBUS IP, MODBUS EtherNet, ve MODBUS TCP/IP olarakta bilinir) arasındaki en temel fark  MODBUS TCP  Ethernet Fiziki Katman (physical layer) da çalışır Modbus RTU ise bir seri bağlantı protokolüdür. Modbus TCP aynı zamanda Routing için 6 byte header kullanır.




2 yorum: