I am trying to connect the ewon flexy to a siemens ET200SP PLC, I am trying to read I / O states in the PLC, do I have to use “digital input 10001-19999” and "digital output 50001 -59999 "for this ? The problem is that I can’t use multiple bits on word 10001, the ewon denies it to me.
If you use a Modbus Test tool to be the Modbus TCP Master, which function code and adress would you use to access the Value you want?
Does the address Range start from 0 or from 1?
The TCP Master decides if a range starts from 0 or 1.
The Flexy always starts from 1 so if you have a slave that starts from 0 the flexy needs +1.
If the Slave starts from 1 you just need to find out the Data type.
Digital Value (boolean/ Bit value) Output or Input?
Register (16 bit Value) Output (= Holding register) or Input (Should be input register normally, but since you also can read Holding registers could also be a Holding register that will be read)?
Once you know that you can check the table here (Chapter A1)
the number I marked in read only defines the Modbus Data Type.
For example Holding Register 5 can be entered as 40005 or 40006 (if there is an offset of +1) (needs to be tested)
or if the devices uses extra large Modbus Registers +400005 or +400006
If you still don’t know which Modbus Data Type your modbus Slave uses check the Manual of your Modbus Slaver or test with a Modbus TCP Master test tool you are familiar with, what function Code you use there.
Here is a Webpage that explains the different Modbus function codes and which Modbus Datatype they are for: