Cannot write to Anybus AB7072

I’m configuring 3 AB7072 modules. All of them have same issues: I can use Modbus Poll or PLC with Modbus TCP program to read data from them. But I cannot write to them.
This is my Fieldbus Config:
image
image
When I tried to write to Anybus Output data Area (marked in red), the data show in Node Monitor always show zero. There is no error from the Modbus Poll side, or PLC side.

Hello @TruongND,

What do you have configured for transaction? How are you connecting to the fieldbus side are you using modbus TCP or ethernet/IP?

Can you upload your configuration for me to take a look at.

Deryck

This is my configuration file for one of those anybus module (all are the same except IP though).
I use Modbus TCP/IP to connect Anybus to PLC.
VT2_HMS_C2.cfg (16.0 KB)

Hi @deryck_hms
This is my configuration file: VT2_HMS_C2.cfg (16.0 KB)

Hello @TruongND,

It took me some time to go though the configuration, I don’t see anything inherently wrong. You have one Write transaction writing to address 0 with a trigger byte enabled. The memory location for the output data is im memory buffer 202. The modbus address you are writing to could be wrong if the RTU slave use base one addressing. Also since you have the trigger enabled you need to be changing the trigger byte to trigger the modbus request to be sent. The trigger is in memory 0x200

Hi @deryck_hms
The thing is the modbus address I am writing to is not wrong. If you go through my configuration file, you will see there is a read request to that same address 400001 (0x0000 hex) named Calid_Read. When I use Anybus node monitor to directly write to that address, Anybus does receive data.
This is the link to my test video: https://1drv.ms/u/s!Ag_IfgsLRc_MnlY3Smub_VEDslZI
The thing in the video somehow happened to all 3 modules.

Hi @TruongND,

Are you using modbus TCP to read and write data from the Ethernet side of the Anybus? There are a few things it looks like needs to be pointed out.
There are two different addressing modes on the device. see section 2.5 of the user guide This is going to change how the memory buffer is mapped to modbus registers.

The default mode is modbus addressing mode. This maps the input data memory 0x000 - 0x1ff to input registers 1-256 or 30001-30256. The output data 0x200 - 0x3ff is mapped to holding registers 1-256 or 40001-40256.

Check out section 2.5.5 for details on Anybus addressing mode. This allow for more function codes but adds an offset for the modbus registers for the input vs output.

Deryck