Yokogawa CS3000 DCS to Siemens S7-400 PLC Modbus DO Communication


Thread Starter


Yokogawa CS3000 is connected serially (RS485) to Siemens S7-400 PLC, and it receives AI & DI signals from PLC without any problem. When DCS sending DO bits to Siemens PLC, DCS receives sub system communication error (A3D4) from PLC.

In DCS 2 register's are allotted for DO communication and PLC side 100 bytes allocated and bits start at 400 with length of 100 and the start bit 400.0. We assigned M400.3/M400.4/M400.5 (only three bits) to receive the status from DCS.

we tried all the options in DCS & PLC side, but still we couldn't able to resolve it.
Hi sharavinth,

A quick internet search for the Siemens exception code#4 returns;
An unrecoverable error occurred while the server (or slave) was
attempting to perform the requested action.

You are using digital writes - you say you have tried all combinations of viable function codes, so my 10c says - you are attempting to write to an address that is read only.

Try using digital reads first - use the DCS to read the same address back from the PLC and compare DCS read with PLC memory contents. Once you have the addressing correct you can then go back to attempting to write.

PS - With CS3000 you need to leave two contiguous words in the map - but I recall you can specify one-word writes (Centum CS was two word read/writes minimum).

The CS3000 DCS will write 16bits to a single register address. Assuming that M400 is a viable register address, I would expect the DCS to be able write with a address of A0400

Note - that you will need to experiment with address offset (some PLCs are +1, and bit reversal - but if you already have Reads happening you should simply be able to refer to these as an example.

Cheers, PB