Application and Installation Guide EMCP 4 SCADA Data Links
©2013 Caterpillar
All rights reserved. Page 13
T
ABLE 4-2: READ REGISTERS - RESPONSE
Address Fcn Code Byte Ct Data 1 hi Data 1 lo
Slave addr. 0x03 N x 2 Register 1 data
… Data N hi Data N lo CRC lo CRC hi
… Register N data CRC16 error checking
6 (0X06) – WRITE SINGLE REGISTER
Send this Function Code to write data to a single register on the EMCP 4. Note that the EMCP 4 will
attempt to write the data, and then respond with the new value in the register. If the query inadvertently
attempted to write data to a Read register, an Exception response will be sent. This Function Code may
be broadcast (addressed to Slave Address 0), in which case no response will be sent by any slave
(EMCP 4 or otherwise).
T
ABLE 4-3: WRITE SINGLE REGISTER - REQUEST
Address Fcn Code Addr hi Addr lo Data hi Data lo CRC lo CRC hi
Slave addr. 0x06 Reg address Data to write CRC16 error checking
TABLE 4-4: WRITE SINGLE REGISTER - RESPONSE
Address Fcn Code Addr hi Addr lo Data hi Data lo CRC lo CRC hi
Slave addr. 0x06 Reg address Data written CRC16 error checking
NOTE: For EMCP 4 controller software version 4.2 PROD and beyond, all control-related
write register capabilities are DISABLED by default. Modbus control via write
registers can be enabled by configuring the “Remote Genset Control Enable Status”
setpoint under CONFIGURE > ALL SETPOINTS > CONTROL > AUTO
START/STOP.
16 (0X10) – WRITE MULTIPLE REGISTERS
Send this Function Code to write data to up to 123 contiguous registers on the EMCP 4. Note that the
query will contain both the register count and the byte count (byte count = register count x 2). Note, also,
that the query has a variable length depending on the number of registers being written, whereas the
response has a fixed length of 4 bytes. The EMCP 4 will not respond with any data, only the starting
address and the register count as sent in the query. If any register in this span is a Read register, the
entire Write will fail, and the slave will return an Exception Response. This Function Code may be
broadcast (addressed to Slave Address 0), in which case no response will be sent by any slave (EMCP 4
or otherwise).