Modbus Exception Code 04

F

Thread Starter

fjhernandez

I try to communicate CP341 with modbus rtu slave but the response at the funcion code 05 or 15 is always exception code 04. what kind of error is this?? anybody know ???
 
U

Ulrich Kaemmerer

Error code 04 = Slave Device Failure

'An unrecoverable error occured while the server was attempting to perform the requested action'

This error code is not seen often. To analyse what the reason in your case might be, more information on your slave device is needed. One possibility is that you try to write into a write protected area of the slave (I have seen this reaction on a device).

Regards,
Ulrich Kaemmerer
 
F

Fred Loveless

Hi,

I have seen this once before witht he CP341 and KepserverEx. The problem occured becasue the CPU was powered down but the CP341 card, being prowered seperately, was still running. Keep in mind that the CP341 card is basicly translating the requests to to the Siemens CP from Modbus to MPI (backplane protocol).

You will need to determine what is happening to the CPU.

Fred Loveless
Support manager
Kepware Technologies
http://www.kepware.com
 
Error code 04 = Slave Device Failure

'An unrecoverable error occured while the server was attempting to perform the requested action'

This error code is not seen often. To analyse what the reason in your case might be, more information on your slave device is needed. One possibility is that you try to write into a write protected area of the slave (I have seen this reaction on a device).

Regards,
Ulrich Kaemmerer
Hello,

I am trying to write PID Gain Values from Schnieder HMI to VFD ATV630. While writing those values, I am getting this error so can you please tell me how can I resolve that?
 
A couple of thoughts from a brief scan of the manuals.

Schneider's FAQ link for the Altivar Modbus map link, an .xlsx file, is
http://download.schneider-electric.com/files?p_Doc_Ref=EAV64332

But I find that the all-on-one pdf map is quicker to search:
https://profsector.com/media/catalogs/56e3af69500ef.pdf

The PID Prop Gain is at 0x2EA5, 11941 decimal zero based, (4)11942 decimal one based.
It is an unsigned 16 bit integer, 0.01. . . 100.00, read/write

1. One offset address
If you were trying to account for a one offset address and wrote to 0x2EA4 (11940), which is a "parameter" (WORD Enumeration), as opposed to a register, a bad value would likely create an error:

"For WORD type parameters, a dynamic link opens the description of a bit register or a listing. Listings are common to several p arameters; only one part is valid for a given parameter. Refer to programming manual to determine the valid values. If an invalid value is written to a configuration parameter, the drive will indicate a fault [Invalid config.] (CFI)

2. I/O scanner?
In the Altivar ATV600 Modbus TCP manual,
https://download.schneider-electric..._Manual_EN_EAV64328_03.pdf&p_Doc_Ref=EAV64328

on page 17, it shows an I/O Scanner using FC23 to communicate to the Modbus TCP controller, as well as Modbus Messaging, an alternative communications channel.

It goes on to say on page 28 that if the I/O scanning service has been enabled, then those output variables reserved for I/O scanning can not be written by other Modbus services:

"When the I/O scanning service has been enabled in the drive:
A TCP connection is assigned to it.
The parameters assigned in the periodic variables are exchanged cyclically between the Ethernet adapter and the drive.
The parameters assigned to the periodic output variables are reserved for I/O scanning. They cannot be written by other Modbus services, even if the I/O scanner is not sending its periodic output variables."

One assumes that attempting to write to a reserved area would throw an error code.

I have no idea whether Proportional Gain might fall into the category of 'output variables' or not, or if I/O scanning is enabled, but I/O scanning does affect Modbus functions.
 
Top