Skip to content

Modbus TCP ​

Yaklaşık 5 dk okuma

Modbus TCP bağlantı tipi, Ethernet üzerinden Modbus TCP destekleyen PLC, enerji analizörü, sürücü ve ağ geçitleriyle haberleşmeyi sağlar. 2WinScada istemci (master) olarak çalışır.

  • Kanalda bağlantı parametresi yoktur; kanal yalnızca cihazları gruplar.
  • Her cihaz kendi IP adresine ve portuna ayrı bir TCP bağlantısı açar. Zaman aşımı ve tekrar ayarları cihaz bazında tanımlanır.
  • Bir cihazın bağlantı sorunu aynı kanaldaki diğer cihazların okunmasını etkilemez.

Bağlantı Tipi listesinde yalnızca lisansın izin verdiği protokoller görünür (bkz. Lisans).

Kanal Tanımı ​

Yeni kanal penceresi kanal listesindeki “+” butonu ile açılır. Genel sekmesinde şu alanlar bulunur:

AlanAçıklamaKural
AdıKanalın benzersiz adıZorunlu; 3–50 karakter; rakamla başlayamaz
Bağlantı TipiModbusTcp seçilirKanal kaydedildikten sonra değiştirilemez

Modbus TCP kanallarında Bağlantı Parametereleri ve Gelişmiş Parametreler sekmeleri görünmez; IP adresi, port, zaman aşımı ve tekrar ayarları her cihazda ayrı girilir.

Cihaz Tanımı ​

Kanal seçiliyken cihaz listesindeki “+” butonu ile yeni cihaz penceresi açılır. Genel sekmesinde Adı (zorunlu, 3–100 karakter, benzersiz) girilir ve Aktif seçimi yapılır. Pasif cihazlara bağlantı açılmaz.

Parametreler sekmesi:

AlanAçıklamaVarsayılanKural
IpCihazın IPv4 adresi (ör. 192.168.1.10)255.255.255.255Zorunlu; geçerli bir IPv4 adresi. DNS adı kabul edilmez. Varsayılan değer yalnızca yer tutucudur.
PortCihazın Modbus TCP portu502Zorunlu; 1–65535
Slave IdModbus birim kimliği (Unit Id)1Zorunlu; 0–255

Doğrudan bağlanılan Modbus TCP cihazlarının çoğu Slave Id değerini dikkate almaz veya 1 ya da 255 bekler. Bir Modbus TCP → RTU ağ geçidinin arkasındaki seri cihaza erişiliyorsa seri cihazın slave adresini girin; ancak aynı ağ geçidindeki çok sayıda seri cihaz için Modbus Serial over Ethernet bağlantı tipi tek bir TCP bağlantısı kullandığından daha uygundur.

Ayarlar sekmesi:

AlanAçıklamaVarsayılan
Zero Basedİşaretliyse adresteki register numarasından 1 çıkarılarak cihaza gönderilir (400001 → protokol adresi 0). İşaretli değilse numara olduğu gibi gönderilir.İşaretli
İlk Word Low 32 Bit32 ve 64 bit değerlerde ilk register'ın düşük word olduğunu belirtir. Cihaz yüksek word'ü önce gönderiyorsa seçimi kaldırın.İşaretli
İlk DWord Low 64 Bit64 bit değerlerde ilk iki register'ın düşük DWord olduğunu belirtir.İşaretli (64 bit tag kullanıyorsanız cihaz dokümanına göre bilinçli olarak ayarlayın)
Blok BüyüklüğüTek okuma isteğinde okunacak en fazla register (coil/discrete input için bit) sayısı32

Bu ayarların ayrıntıları ve word sırası tabloları Modbus Adresleme sayfasındadır.

Gelişmiş Parametreler sekmesi:

AlanAçıklamaVarsayılanAralık
Cihazı yeniden başlatmak için boşta kalma süresi [s]Bu süre boyunca cihazdan hiçbir başarılı okuma yapılamazsa TCP bağlantısı kapatılır ve yaklaşık 10 saniye sonra yeniden açılır. 0 özelliği kapatır.00–86400
Yazma zaman aşımı[ms]İsteğin gönderilmesi için bekleme süresi1000Tamsayı
Okuma zaman aşımı[ms]Yanıt için bekleme süresi. Süre dolarsa istek hatalı sayılır ve ilgili tag'lerin kalitesi Bad olur.1000Tamsayı
Tekrar sayısıZaman aşımı veya iletişim hatasında isteğin kaç kez tekrarlanacağı. 1 değeri en fazla iki deneme demektir.1Tamsayı
Tekrar deneme bekleme süresi[ms]Tekrar denemesinden önce beklenen süre250Tamsayı
Eski cevap eşik değerinde tekrar etGelen yanıtın işlem numarası, gönderilen isteğin numarasından bu değerden daha az gerideyse yanıt gecikmiş eski bir yanıt sayılır ve doğru yanıt yeniden beklenir.3Tamsayı
Slave meşgulken tekrar sayısı artırılsınİşaretliyse cihazın "meşgul" (Slave Device Busy) yanıtları da Tekrar sayısı sınırına dahil edilir. İşaretli değilse meşgul yanıtı alındıkça istek sınırsız tekrarlanır.İşaretli—

Bağlantı davranışı ​

  • Bağlantı kurulamazsa 2WinScada yeniden bağlanmayı 30 saniye sonra dener. Üç başarısız denemeden sonra bekleme süresi 60 saniyeye, ardından 120 saniyeye çıkar; bağlantı kurulduğunda yeniden 30 saniyeye döner.
  • Bağlantı kurulamadığında veya koptuğunda cihazın bağlantı durumu kötü görünür; okunamayan tag'lerin kalitesi Bad olur.
  • Hata ayrıntıları servis loguna yazılır.

Tag Tanımı ​

Tag'ler cihazın tag tablosunda diğer protokollerdeki gibi tanımlanır (bkz. Tag Yönetimi). Modbus'a özgü kurallar:

AlanModbus kuralı
Adres6 haneli Modbus adresi; ilk hane alan türüdür (0 coil, 1 discrete input, 3 input register, 4 holding register). Register bitleri için .0–.15 eki kullanılır (ör. 400010.3).
Veri TipiCoil ve discrete input adreslerinde yalnızca Bool. Register adreslerinde Bool (bit ekiyle) veya sayısal tipler.
Veri UzunluğuHer zaman 1; String tipi ve dizi desteklenmez (bkz. Modbus Adresleme)
Güncelleme Süresi[s]0,5–86400 saniye. Aynı süreye sahip tag'ler birlikte okunur.
Sadece Okuma1 ve 3 ile başlayan adreslerde işaretleyin

Adres biçimi, veri tipleri, word sırası ve okuma gruplarının ayrıntıları Modbus Adresleme sayfasındadır. Tekrar kullanılabilir register listeleri için Cihaz Profilleri sayfasına bakın.

Sorun giderme ​

BelirtiKontroller
Cihaz bağlanmıyorIp ve Port değerlerini, ağ erişimini (ping, güvenlik duvarı, VLAN) ve cihazda Modbus TCP sunucusunun etkin olduğunu kontrol edin. Yeniden bağlanma 30–120 saniye aralıklarla denenir; ayar değişikliğinden sonra sonucu görmek için bekleyin.
Bağlantı var, tag'ler BadSlave Id değerini, adresleri ve Okuma zaman aşımı[ms] değerini kontrol edin. Cihaz "Illegal Data Address" hatası veriyorsa Blok Büyüklüğü değerini düşürün.
Bağlantı sık kopuyorCihazın aynı anda kabul ettiği TCP bağlantı sayısını kontrol edin; aynı cihaza bağlanan diğer sistemleri azaltın. Cihazı yeniden başlatmak için boşta kalma süresi [s] değeri çok kısaysa artırın.
Değerler kaymış veya anlamsızZero Based, İlk Word Low 32 Bit, İlk DWord Low 64 Bit ve Veri Tipi değerlerini kontrol edin (bkz. Modbus Adresleme).
Yazma başarısızAdresin 0 veya 4 ile başladığını, Sadece Okuma seçimini, kullanıcı yetkisini ve cihazın yazmaya izin verdiğini kontrol edin.

2WinScada 2.10