Logic Machine Forum
Modbus poll issue - Printable Version

+- Logic Machine Forum (https://forum.logicmachine.net)
+-- Forum: LogicMachine eco-system (https://forum.logicmachine.net/forumdisplay.php?fid=1)
+--- Forum: Gateway (https://forum.logicmachine.net/forumdisplay.php?fid=10)
+--- Thread: Modbus poll issue (/showthread.php?tid=4687)



Modbus poll issue - Ibrahim - 28.03.2023

Hello,

I have 23 modbus devices which are divided to 12 modbus tcp gateway as attached.

There are 34 points for each device and timeout is 0.5, poll intervaş is 5 sec. If only one device is connected to tcp converter, I get the feedbacks in about 3-4 seconds and it is ok.

The problem is occuring if more than one device is connected to one tcp converter. I can write the commands but the feedbacks are coming too slow and it is not stable. The profile as below. Also, I get attached errors logs. What do you recommend? 

Thanks.

[Image: JFkymZ9]

[Image: vkYF2J4]
Code:
{
  "manufacturer": "Radyant",
  "description": "OPH Smart",
  "mapping": [
    { "address": 1, "read_count":34,"read_offset":0, "name": "Sistem 1 Durumu Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":1, "name": "Sistem 2 Durumu Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":2, "name": "Sistem 3 Durumu Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":3, "name": "Sistem 4 Durumu Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":4, "name": "Sensor 1 Degeri", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":5, "name": "Sensor 2 Degeri", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":6, "name": "Sistem 1 Hata Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":7, "name": "Sistem 2 Hata Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":8, "name": "Sistem 3 Hata Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":9, "name": "Sistem 4 Hata Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register","writable": false },
    { "address": 1, "read_count":34,"read_offset":10, "name": "Bolge 1 Hata Algılama Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":11, "name": "Bolge 2 Hata Algılama Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":12, "name": "Bölge 1 Modu Auto/Manuel Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":13, "name": "Bölge 2 Modu Auto/Manuel Oku ve Yaz", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":14, "name": "Sistem 1 Röle Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":15, "name": "Sistem 2 Röle Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":16, "name": "Sistem 3 Röle Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":17, "name": "Sistem 4 Röle Durumu", "datatype": "uint16", "bus_datatype": "uint8", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":18, "name": "Bölge 1 Mesai Sıcaklık Oku ve Yaz", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":19, "name": "Bölge 2 Mesai Sıcaklık Oku ve Yaz", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":20, "name": "Bölge 1 Paydos Sıcaklık Oku ve Yaz", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":21, "name": "Bölge 2 Paydos Sıcaklık Oku ve Yaz", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":22, "name": "Bölge 1 Manuel Sıcaklık Oku ve Yaz", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":23, "name": "Bölge 2 Manuel Sıcaklık Oku ve Yaz", "datatype": "int16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": true },
    { "address": 1, "read_count":34,"read_offset":24, "name": "Mesai/Paydos Durumu Bölge 1", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":25, "name": "Mesai/Paydos Durumu Bölge 2", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":26, "name": "Sistem 1 Bölge 1 Kademe", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":27, "name": "Sistem 1 Bölge 2 Kademe", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":28, "name": "Sistem 2 Bölge 1 Kademe", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":29, "name": "Sistem 2 Bölge 2 Kademe", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":30, "name": "Sistem 1 Kapasite Fark", "datatype": "uint16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":31, "name": "Sistem 2 Kapasite Fark", "datatype": "uint16", "bus_datatype": "float16", "value_multiplier":0.1, "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":32, "name": "Sistem 1 Aktif Kapasite", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false },
    { "address": 1, "read_count":34,"read_offset":33, "name": "Sistem 2 Aktif Kapasite", "datatype": "uint16", "bus_datatype": "uint16", "type": "register", "writable": false }
    ]
}



RE: Modbus poll issue - admin - 29.03.2023

Profile looks correct. Several things to try:
1. Enable persistent connection mode for each device.
2. Connect GND between gateway and all other Modbus devices on the same line.
3. Add read_delay to the profile. Start with a small value like 0.1 or 0.2 seconds.


RE: Modbus poll issue - Ibrahim - 30.03.2023

Hi admin,

1- When enabled the persistent connection, I cannot reach the devices.
2- All gnd are connected.
3- read_delay is affected slightly.

Should read_delay be different for each device on the same line? First is 0.1, second one is 0.2 etc. ?


RE: Modbus poll issue - admin - 30.03.2023

Use the same read_delay for all devices.


RE: Modbus poll issue - Ibrahim - 30.03.2023

Thanks admin