Related Products:

EGSK-301, EGMA-301

Related Documents:

EZDP-2041

Type:

Technical Information

Keywords/Labels:

Assurance Monitoring, API, Data Queries and Responses

Summary:

Contains information on Modbus RTU protocol features, address declarations, queries and responses

Modbus Serial Communication API

The Assurance Monitoring System is equipped with RS232, which enables it to send and receive data via serial communication. To allow multiple device communication, RS232 is converted into RS485 in addition to using the Modbus RTU (Remote Terminal Unit) protocol. Each device operates as a slave only. These controllers will answer to a master query only if the query contains the same slave address as defined on the device’s SD card. The permitted addresses range from 1 to 254 (0x01 – 0xFE), and there should be no controllers with the same address on the same line.

Modbus RTU Protocol Features

Feature

Description

Baud-rate

19200 bit/sec, Not selectable

Format

8-bit, No parity, 1 stop

Supported functions

Read Holding Register (0x03)

Cyclical Redundancy Check (CRC)

16-bit value calculated by both devices, Error message displayed when values are not equal

Address Declarations

Modbus Address

Description

Read/Write

1001

Shaft Voltage RMS

Read Only

1002

Shaft Voltage 0-Peak

Read Only

1003

Shaft Voltage DC

Read Only

1004

Ground Current RMS

Read Only

1005

Ground Current 0-Peak

Read Only

1006

Ground Current DC

Read Only

1007

0-bit, rope status, 1 = OK, 0 = NOT_OK

Read Only

The rope status will be determined by the bit field response. This means that although the response will be in terms of 2 bytes or 16 bits, the last bit contains the status as 0 or 1. The status is indicated as: 1 = OK; 0 = NOT_OK.

Example Query

In this example, the master device sends a request to read from the slave device at address 2. The function 03 enables the device to read from a holding register. The register data in the response message are packed as two bytes per register, with the binary contents right justified within each byte. For each register, the first byte contains the high order bits and the second contains the low order bits. In the table below, seven register addresses will be read beginning at address 03 E9 (1001). The assigned registers 1001-1007 above will be read.

Field Name

Example (Hex)

Slave Address

2

Function

03

Starting Address Hi

03

Starting Address Lo

E9

No. of Points Hi

00

No. of Points Lo

07

Error Check (CRC)

-

Example Response

In the table below, the response from the slave device at address 2 can be seen. Again, the function 03 was utilized to read from the holding registers for each address. Since there are 7 different addresses being read at 2 bytes per address, there is a total of 14 bytes used in this example.

Field Name

Example (Hex)

Slave Address

2

Function

03

Byte Count

14

Data Hi (Register 1001)

00

Data Lo (Register 1001)

32

Data Hi (Register 1002)

00

Data Lo (Register 1002)

18

Data Hi (Register 1003)

00

Data Lo (Register 1003)

64

Data Hi (Register 1004)

00

Data Lo (Register 1004)

58

Data Hi (Register 1005)

00

Data Lo (Register 1005)

22

Data Hi (Register 1006)

00

Data Lo (Register 1006)

31

Data Hi (Register 1007)

00

Data Lo (Register 1007)

01

Error Check (CRC)

--

The contents of register 1001 is displayed as two hex values, 00 and 32 representing the decimal number 50. This value would represent the Shaft Voltage RMS value received from the device. The rest of the values were received in the same way and represent the description assigned to one of the specific addresses 1001-1006. For address 1007, the result being read back from the slave indicates the rope status and is defined by the values 0 and 1 as described in the Address Declaration section. In this case, the values 00 01 were received resulting in an OK status.

Do you need more help?

Was this article helpful?
0 out of 0 found this helpful