Hello all,
I am trying to access an S7 system (TIA v13, which is what we use) that was developed by a 3rd party for use with 3rd party devices via Modbus TCP.
They set it up to be compliant with Modbus TCP and describe the address space as follows:
I can also get one holding register address (40019) to give me information that seems reasonable (matches the TIA Portal watch list). Wireshark reports that I am using Function Code 03 and I get the expected result.
I can read anything I want, but the data doesn't match. It seems as though I'm pulling from the wrong addresses somehow?
I can't seem to write to any address at all, although I've only tried to write to the coil bits (not holding registers). Attempts to write were using Function Code 05.
I assume that I am doing something incorrectly with the addressing (or possibly the contractor, but I'm the novice so I'm sure it's my fault).
Thanks,
Matt
I am trying to access an S7 system (TIA v13, which is what we use) that was developed by a 3rd party for use with 3rd party devices via Modbus TCP.
They set it up to be compliant with Modbus TCP and describe the address space as follows:
- Coils (M100.0, etc) (Two Words of bits, or 2 bytes of bits) - Read: Addresses 40001, 40002, 40044
- Coils (M100.0, etc) (Two Words of bits, or 2 bytes of bits) - Write: Address 40019
- Holding Registers (MDXXX) (32 Bit words across two DWord addresses) - Read 40003-40018
- Holding Registers (MDXXX) (32 Bit words across two DWord addresses) - Write 40020-40043, 40045-40050
I can also get one holding register address (40019) to give me information that seems reasonable (matches the TIA Portal watch list). Wireshark reports that I am using Function Code 03 and I get the expected result.
I can read anything I want, but the data doesn't match. It seems as though I'm pulling from the wrong addresses somehow?
I can't seem to write to any address at all, although I've only tried to write to the coil bits (not holding registers). Attempts to write were using Function Code 05.
I assume that I am doing something incorrectly with the addressing (or possibly the contractor, but I'm the novice so I'm sure it's my fault).
Thanks,
Matt