Communicating between MODBUS RTU and WAGO


Thread Starter



I have a problem with communication between PLC module 750-653 WAGO for serial MODBUS communication and Seneca ZSG module for weight measurement.

I try to get data from Seneca via MODBUS RTU interface on the back of the Seneca module, but module nothing sends to my PLC. I build a function block for serial communication and BUSMASTER_RTU block for serial communication. On Error code output i get error code 5. I can't find what 5 is stands for.

Thank You very much in advance
I have no idea what error code 5 is, but here's a list of things that can go wrong with serial communications:

- slave module address (DIP switch on ZSG, configured on the Wago end)

- baud rate same on both ends (DIP switch on ZSG)

- parity has to be the same on both ends

- RTU is 8 data bits, not 7

- on RS-485, different vendors define the RS-485 A and B lines the opposite from other vendors. Having the A and B lines backwards doesn't damage RS-485 drivers, but the signal/data won't get through. Try swapping A/B lines on one end.

It isn't crystal clear from the spec sheet whether the RS-232 port is capable of Modbus RTU. The RS-485 port is definitely Modbus enabled, mentioned on page 1 and shown in the application example diagram on page 2. The same app diagram shows the RS-232 port connected to a PC labeled "(setting)", which I interpret as "configuration". The RS-232 port might be for configuration only. Only a manual will tell for sure, or maybe not, given the state of documentation, in general. I'd be inclined to work with the RS-485 port for Modbus.
The error is MB_ILLEGAL_NUMBER_OF_POINTS. You can check this from the /library manager/data types in codesys.
Thank You for helping. I think that I made all above and still I don't get signals from ZSG. Can be problem with data structure and receiving 16 bit register from ZSG to 8 bit variable in receiving data variables?

And I think that maybe I didn't put terminal resistor on both ends? On 750-653 and on ZSG side?