mikeardy - 2018-04-16

I need to read about 250 UDINT via Modbus in Slave mode. A SCADA manages this data and write via Modbus remotely to my controller.
So inizially I configured on my controller a modbus slave device. Due to Modbus limitations I configured 4 channel in Read Holding Registers mode with an array of 125 elements (500 elements in total of WORD type).
In a GVL I defined an array of 250 elements of UDINT type poiting at the starting address of the input registers, beginning at %IW60.
Finally in my application program I used the array poiting values I need directly by index.
Is it the right way or maybe there is a quite simpler or "more readable" and canonical method?
See pictures I added to this post.
Many thanks

IMG: CODESYS_ModbusSlave_3.PNG

IMG: CODESYS_ModbusSlave_2.PNG

IMG: CODESYS_ModbusSlave_1.PNG