GEH-Mark VIe UCCA Serial Modbus

Download as pdf or txt
Download as pdf or txt
You are on page 1of 29

GEI-100549B

Mark* VIe UCCA Serial Modbus


RTU Slave Gateway
Instruction Guide

These instructions do not purport to cover all details or variations in equipment, nor to provide for every possible
contingency to be met during installation, operation, and maintenance. The information is supplied for informational
purposes only, and GE makes no warranty as to the accuracy of the information included herein. Changes, modifications,
and/or improvements to equipment and specifications are made periodically and these changes may or may not be reflected
herein. It is understood that GE may make changes, modifications, or improvements to the equipment referenced herein or to
the document itself at any time. This document is intended for trained personnel familiar with the GE products referenced
herein.

GE may have patents or pending patent applications covering subject matter in this document. The furnishing of this
document does not provide any license whatsoever to any of these patents.

GE provides the following document and the information included therein as is and without warranty of any kind, expressed
or implied, including but not limited to any implied statutory warranty of merchantability or fitness for particular purpose.

For further assistance or technical information, contact the nearest GE Sales or Service Office, or an authorized GE Sales
Representative.

Revised: March 2014


Issued: June 2008

Copyright © 2008 – 2014 General Electric Company, All rights reserved.


___________________________________
* Indicates a trademark of General Electric Company and/or its subsidiaries.
All other trademarks are the property of their respective owners.

We would appreciate your feedback about our documentation.


Please send comments or suggestions to [email protected]

GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be used,
shown, reproduced, or disclosed outside of GE without the express written consent of GE.
Safety Symbol Legend

Indicates a procedure, condition, or statement that, if not


strictly observed, could result in personal injury or death.

Warning

Indicates a procedure, condition, or statement that, if not


strictly observed, could result in damage to or destruction of
equipment.
Caution

Indicates a procedure, condition, or statement that should be


strictly followed to improve these applications.

Attention

2 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
Contents
1 Introduction.................................................................................................................................................4
1.1 Modbus Memory Types (Data Types) .........................................................................................................4
2 RS-232C Serial Interface................................................................................................................................5
2.1 RS-232C Cable and Connector Signals .......................................................................................................6
2.2 UCCA Serial Port Settings........................................................................................................................7
3 RS-232 to RS-422/485 Converter.....................................................................................................................9
3.1 Black Box LD485A-MP RS-232C Cables.................................................................................................. 10
4 Full-duplex RS-232C to Half-duplex RS-485 Converter ..................................................................................... 11
4.1 Connection and Configuration ................................................................................................................. 12
4.2 Baud Rate ........................................................................................................................................... 13
4.3 DTE/DCE Control ................................................................................................................................ 13
5 Configuring the UCCA Serial Modbus Slave ................................................................................................... 14
5.1 Register Pages...................................................................................................................................... 15
5.2 Data Format......................................................................................................................................... 17
5.3 Data Scaling ........................................................................................................................................ 17
5.4 Data Conversions.................................................................................................................................. 19
6 Modbus Command and Response Definition .................................................................................................... 20
6.1 Message Format ................................................................................................................................... 20
6.2 Message Errors..................................................................................................................................... 21
7 Function Code Descriptions .......................................................................................................................... 22
7.1 Function Code 01: Read Output Coils ....................................................................................................... 22
7.2 Function Code 02: Read Discrete Inputs .................................................................................................... 23
7.3 Function Code 03: Read Holding Registers ................................................................................................ 24
7.4 Function Code 04: Read Input Registers .................................................................................................... 25
7.5 Function Code 05: Force Single Output Coil .............................................................................................. 25
7.6 Function Code 06: Preset Single Holding Register....................................................................................... 26
7.7 Function Code 07: Read Exception Status.................................................................................................. 26
7.8 Function Code 15: Force Multiple Output Coils .......................................................................................... 27
7.9 Function Code 16: Preset Multiple Holding Registers .................................................................................. 28
8 Advanced Diagnostics ................................................................................................................................. 29

Instruction Guide GEI-100549B 3


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
1 Introduction
Refer to Modbus Resources The Modbus Remote Terminal Unit (RTU) Slave feature on the Mark VIe Compact
located at the following link: Peripheral Component Interconnect (PCI) UCCA allows a Modbus Master to read data
http://www.modbus.org directly from, and/or write data directly to, the UCCA using the Modbus protocol over
serial ports. Systems have been implemented using the UCCA as a gateway for the
third-party Distributed Control System (DCS) Modbus Master. The serial interface to the
UCCA is a full-duplex RS-232C connection. This connection can be used on a
half-duplex or an RS-485 serial network by using additional interface devices as follows:

• Black Box LD485A-MP converter is used when a long distance (>15 m, 50 ft)
full-duplex interface is required.
• GE Multilin F485-120 converter is used when a half-duplex interface is required.

1.1 Modbus Memory Types (Data Types)


There are four Modbus register page types:

• Discrete input (or Input boolean)


• Output Coil
• Input register
• Holding register
Refer to the section, Function Discrete inputs and output coils are Boolean data. Input registers and holding registers are
Code Descriptions for more 16-bit data that can be configured as integers, bit-mapped Boolean data, and other types.
information on registers and Output coils and holding registers can be read or written by the Modbus Master. Discrete
coils. inputs and input registers can only be read by the Master.
It is recommended to have a Because the UCCA can have high priority control code running at a fixed frame rate, it is
dedicated UCCA Slave necessary to limit the amount of CPU resources that can be used by the Modbus interface.
gateway for Modbus that is not To control the runtime, the number of commands per second received by the UCCA must
used for turbine control. be limited. The UCCA returns a busy status when more than 10 commands are sent in a
one-second period. If a write command is sent from the Modbus Master to a bit-mapped
register, each bit written counts as a separate command. Software block diagrams can also
disable all Modbus commands by setting an internal logical signal.

4 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
2 RS-232C Serial Interface
Refer to the 9-pin cable RS-232C is a technical specifications standard of the Electronic Industries Association
definitions listed in the table, (EIA) for serial communications equipment (C denotes the standard’s revision). It
RS-232C Connector Pin specifies the control functions and signal paths of signal lines connecting Data Terminal
Signals. Equipment (DTE) and Data Communication Equipment (DCE). DTEs are usually
computers, printers, and CRTs, while DCEs are usually modems.

RS-232C specifies 25 signal lines: 20 lines for routine operation, 2 lines for modem
testing, and 3 unassigned lines. Nine of the signal pins are used in a nominal RS- 232C
communication system.
A DTE device is identified as a Each RS-232C signal uses a single wire. The RS-232C standard specifies the conventions
device that transmits serial used to send sequential data as a sequence of voltage changes that signify the state of each
data on pin 3 (TD) of a 9-pin signal. Depending on which signal group, a negative voltage (less than -3 V) represents a
RS-232C cable. binary one data bit, a signal mark, or a control off condition. A positive voltage (greater
than +3 V) represents either a binary zero data bit, a signal space, or a control on
condition. Because of voltage limitations, an RS- 232C cable cannot be longer than 15 m
(50 ft).
A DCE device is identified as a Using this definition, the Mark VIe UCCA Modbus Slave is a DTE device because it
device that transmits serial transmits serial data on pin 3 (TD) of the 9-pin RS-232C cable. If the Modbus Master
data on pin 2 (RD) of a 9-pin device is also a DTE device, connecting the Master and Slave devices together requires an
RS-232C cable. RS-232C null modem cable. Pin definitions for 9-pin RS-232C straight through and null
modem cables are displayed in the following figure.

Note Terms describing the various signals used in the sending or receiving of data are
expressed as from the DTE device. For example, the signal transmit data (TD) represents
the transmission of data coming from the DTE device to the DCE device.

9-pin RS-232C Pin Definitions

Instruction Guide GEI-100549B 5


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
RS-232C Connector Pin Signals
9-Pin 25-Pin Description DTE DTE Signal Function
Output Input Type
1 8 DCD (data carrier detect) X Control Signal comes from the other RS-232C device
telling the DTE device that a circuit has been
established
2 3 RD (receive data) X Data Receiving serial data
3 2 TD (transmit data) X Data Transmitting serial data
4 20 DTR (data terminal ready) X Control DTE places positive voltage on this pin when
powered up
5 7 GND (signal ground) Ground Must be connected
6 6 DSR (data set ready) X Control Signal from other RS-232C device identifying to
DTE that the other RS-232C device is powered
up
7 4 RTS (request to send) X Control DTE has data to send and places this pin high to
request permission to transmit
8 5 CTS (clear to send) X Control DTE looks for positive voltage on this pin for
permission to transmit data
9 22 RI (ring indicator) X Control A modem signal indicating a ringing signal on the
telephone line

2.1 RS-232C Cable and Connector Signals


Nine of the 25 RS-232C pins are used in a common asynchronous application. All nine
pins are necessary in a system configured for hardware handshaking. The GE Modbus
system does not use hardware handshaking and so requires only three wires, receive data
(RD, pin 2), transmit data (TD, pin 3) and signal ground (GND, pin 5), to transmit and
receive data. The signals are organized in four groups: data, control, timing, and ground.

Data signal wires send and receive serial data. Pin 2 (RD) and pin 3 (TD) transmit data
signals. A positive voltage (> +3 V) on either pin signifies a logic 0 data bit or space data
signal. A negative voltage (< -3 V) on either pin signifies a logic 1 data bit or mark signal.

Control signals coordinate and control the flow of data over the RS-232C cable. Pins 1
(DCD), 4 (DTR), 6 (DSR), 7 (RTS), and 8 (CTS) are control signals. A positive voltage
(> +3 V) indicates a control on signal; a negative voltage (< -3 V) signifies a control off
signal. When a device is configured for hardware handshaking, these signals control the
communications.

Timing signals are not used in an asynchronous 9-wire cable. These signals, commonly
called clock signals, are used in synchronous communication systems to synchronize the
data rate between transmitting and receiving devices. The logic signal definitions used for
timing are identical to those used for control signals.

Ground signals (signal and frame ground) on both ends of an RS-232C cable must be
connected. Pin 7 (GND) of a 9-pin connector is the signal ground. Frame ground is
sometimes used in 25-pin RS-232C cables as a protective ground.

6 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
2.2 UCCA Serial Port Settings
An RS-232C serial port is driven by a computer chip called a universal asynchronous
receiver/transmitter (UART). The UART sends an 8-bit segment of data from a serial port,
preceded by a start bit appended with an optional parity bit and one or two stop bits. The
device on the other end of the serial cable must be configured the same as the sender to
understand received data. The software configurable settings for a serial port are:

• Port (com2 only)


• Baud rate (2400 – 57600)
• Inter-character timeout (ICT) (35 – 1000)
• Response delay (0 – 999)
• Stop bits (1 or 2)
• Parity bit (none, even, odd, mark, space)
• Data bits (only 8 data bits supported)
• Station ID (1– 255)

The transmission baud rate is the bit transmission speed measured in bits per second.
Parity adds an extra bit that detects corrupted serial data characters. Stop bits are normally
set to one, but can be set to two for compatibility with older systems.

UARTs support three serial data transmission modes:

• Simplex (one way only)


• Full-duplex (bi-directional, simultaneous)
• Half-duplex (non-simultaneous, bi-directional)

The Modbus Slave device supports only full-duplex data transmission. Its RS-232C serial
port configuration is specified on the Component Editor, Modbus Slave tab, Property
Editor.

Port is the physical RS-232C communications port. The Modbus Slave device uses
com2.

Baud is the serial data transmission rate of the Modbus device measured in bits per
second. The Modbus Slave device supports standard baud rates from 2400 to 57600.

ICT is the Inter-character timeout, with a value between 35 and 1000. ICT specifies the
timeout period, expressed as character time times ten. Therefore, an ICT of 35 represents
3.5 character times. On a system configured for 9600 baud, 1 start bit, 8 data bits, no
parity, and 1 stop bit, 3.5 character times is equivalent to 3.5 * (10 bits) ÷ (9600 bits/sec)
= 3.646 milliseconds. The Modbus specification states that serial ICT is 3.5 character
times, but the Mark VIe Modbus Slave configuration allows for longer timeouts when
relaxed standards are used by communicating systems.

Response Delay is an additional delay time, in milliseconds, before the Modbus Slave
responds to a Master request. This is normally zero, but can be used in systems that
cannot handle a rapid reply to the Master after its request.

Instruction Guide GEI-100549B 7


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
Stop bits pad the number of bits transmitted for each byte of serial data. The Modbus
Slave device supports one or two stop bits. The default is one stop bit. If the serial
communication system expects 11 bits per data byte, the bit count is displayed as follows:

• 1 start bit
• 8 data bits (least significant bit is sent first)
• 1 bit for even or odd parity (no bit for no parity)
• 1 stop bit if parity is used (2 stop bits for no parity)
Serial Data Bit Sequencing, with Parity Checking
Start Bit Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 8 Parity Bit Stop Bit

Note Bit 1 is the least significant bit, and Bit 8 is the most significant bit.

Serial Data Bit Sequencing, without Parity Checking


Start Bit Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 8 Parity Bit Stop Bit

Parity provides a mechanism to check individual serial 8-bit data bytes for errors. The
Modbus Slave device supports none, even, and odd parity. The default parity is none.

Data bits is the number of data bits in each serial character. The Modbus Slave device
only supports 8-bit data.

Station ID specifies the Slave station ID on systems configured for serial operation as a
number between 1 and 255.

8 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
3 RS-232 to RS-422/485 Converter
A Black Box LD485A-MP converter is recommended when an RS-232C device must
transport data over a distance longer than the normal 15 m (50 ft). Using the converter,
19200 baud serial data can be transmitted up to 1.2 miles.

A multi-point Modbus installation links one or more UCCA slaves to the single Modbus
Master, as displayed in the following figure. Using Black Box LD485A-MP line drivers,
the Master and individual slaves use their own line driver to communicate over a single
RS-485 based network. As many as 64 devices can be linked using a twisted-pair 4-wire
cable.

Multi-point Modbus

The Master and Slave devices are set up as DTE devices. Both devices are connected to
the Black Box LD485A-MP with a straight through 9-wire cable. The two Black Box
LD485A-MPs are connected using a 4-wire twisted-pair cable as follows:

• Master TXA is connected to Slave RXA


• Master TXB is connected to Slave RXB
• Master RXA is connected to Slave TXA
• Master RXB is connected to Slave TXB

Note A Belden® low capacitance, 2-twisted-pair, 24-gauge cable (catalog number 9842)
is suggested for connecting the LD485A-MPs.

Instruction Guide GEI-100549B 9


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
Jumper Settings
Jumper Slave Master Description
XW1A Installed Installed DCE device
XW1B Not Not installed Not a DTE device
installed
S1 Normal Normal Normal mode
S2 On On Terminated
W7 Out Out Signal ground not connected to frame ground

W8 Full Full Full duplex

W9 5 ms On CTS delay

W15 A-B A-B DTR/RTS/CD enabled


W16 N/A N/A Not used
W17 N/A N/A Not used
W18 B-C B-C RTS enables driver

Note Jumper W9 is the only jumper different between the Master and Slave
LD485A-MPs.

3.1 Black Box LD485A-MP RS-232C Cables


A Slave device connects to Black Box LD485A-MP with a straight through 9-pin to
25-pin cable.
9-Pin to 25-Pin Connector Pin Signals

9-Pin 25-Pin Plug Description


Receptacle
1 8 DCD (data carrier detect)

2 2 RD (receive data)

3 3 TD (transmit data)

4 20 DTR (data terminal ready)

5 7 GND (signal ground)

6 6 DSR (data set ready)

7 4 RTS (request to send)

8 5 CTS (clear to send)

9 22 RI (ring indicator)

10 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
4 Full-duplex RS-232C to Half-duplex RS-485 Converter
The GE Multilin F485-120 converter is recommended when a half-duplex interface is
required. It can be used with direct or modem communications, and uses internal switches
to select the conversion type (RS-232C to RS-485) and the RS-485 communications baud
rates (from 1200 to 57600 baud). It uses the data on the serial port to determine direction,
and requires no hardware handshaking signals from the computer. The GE Multilin
F485-120 is powered through the supplied power adapter or by connecting an external 9
V ac or 9 V dc source to the power supply terminals on the back of the unit. The front
panel has LED indicators to display the following:

• Power
• RS-232C RX
• RS-232C TX
• RS-485 RX
• RS-485 TX

The ground terminal must be connected to ground to ensure


adequate protection from transients.

Caution

The back of the converter provides the following connectors:

• RS-232C 9-pin receptacle that accepts a standard DB-9 connector (9-pin to 9- pin
and 9-pin to 25-pin interface cables are provided)
• RS-485 terminals that accept a standard shielded twisted-pair and provide
connections for positive, negative, and shield. (The terminating network is internal,
and no external terminating network is required.)
• Power jack to connect the supplied 120 V ac to 9 V ac adapter (if used)
• Power terminals that accept 9 V ac or 9 V dc power instead of using the supplied
adapter

Instruction Guide GEI-100549B 11


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
4.1 Connection and Configuration
The typical connection method for RS-232C to RS-485 is as follows:

Typical F485 Connection

Note Shield should be grounded at one place only. A terminating network should be
attached to the last device in the link. The converter has a built-in terminator at the
beginning of the link.

The GE Multilin F485-120 converter is configured through two internal DIP-switch banks
that are accessible by removing the box cover, as displayed in the following figure.
Switches A1 – A8 set the baud rate for RS-485 communication and determine whether
the converter is DTE (RS-232C direct) or DCE (RS-232C modem). Switches B1 – B6
select the interface type. The designation for each switch is marked on the printed circuit
board.

DIP-switch Access

12 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
Selecting switch positions other than those displayed in the
following tables will cause unpredictable results.

Caution
DIP-switch A Baud Rate Position Settings

Baud Rate A1 A2 A3 A4 A5 A6 A7
1200 On Off Off Off Off Off Off
2400 Off On Off Off Off Off Off
4800 Off Off On Off Off Off Off
9600 Off Off Off On Off Off Off
19200 (default) Off Off Off Off On Off Off

38400 Off Off Off Off Off On Off


57600 Off Off Off Off Off Off On

DIP-switch A DTE/DCE Select Position Settings


Mode DIP-switch A8 Position
DTE Off
DCE On

DIP-switch B Configuration Position Settings

Configuration B1 B2 B3 B4 B5 B6
RS-232C to RS-485 Off On Off On Off Off
RS-232C to fiber optic* Off Off Off Off On On

RS-485 to fiber optic* On Off On Off Off Off

*These switch settings are not used.

4.2 Baud Rate


Two-wire RS-485 is half-duplex, and requires a method for switching between a receive
or transmit state. The GE Multilin F485-120 converter uses the incoming data to control
the direction, and requires no control signals from the Master device (RS-232C) to switch
from transmit to receive mode after the last character has been transmitted. The baud rate
switches control over the time that the RS-485 transmitter remains in the transmit
direction after the last character has been transmitted. The length of time is fixed at 3.5
character times at the selected baud rate, making it useable with Modbus RTU protocol.

4.3 DTE/DCE Control


The DTE/DCE setting reverses the transmit/receive data lines on the RS-232C side. For
communications between a computer and a Slave device, DTE (direct) should be selected.
When connecting the F485 to a modem or other data communication equipment, DCE
should be selected. DCE is also required when two F485s are connected back-to-back,
such as when converting RS-232C to RS-485, and then converting the RS-485 back to
RS-232C. In this case, the second F485 must be set to DCE control.

Instruction Guide GEI-100549B 13


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
5 Configuring the UCCA Serial Modbus Slave
The UCCA gateway Modbus Slave is configured using the ToolboxST application.

� To configure UCCA Modbus Slave


1. From the Mark VIe UCCA Component Editor, select the Modbus Slave tab.

From the Tree View, select


the Modbus Slave option.
The Property Editor
displays the Modbus
configuration properties .

2. From the Property Editor, modify any of the following items as needed:

Interface is set to Serial for the UCCA gateway.

Command Limit limits the number of commands processed per second. The command
limit is based on commands that have changed, not commands that are identical to
previously received commands. The user can specify between 0 and 25 commands per
second as the maximum command rate (default: 10).

Data Swapped changes the transmission order of each 16-bit word when set to True.
For example:

• If Data Swapped is set to True, 0x01234567 will be transmitted as 0x45 0x67


0x01 0x23 and 0x0123456789ABCDEF will be transmitted as 0xCD 0xEF
0x89 0xAB 0x45 0x67 0x01 0x23.
• If Data Swapped is set to False, 0x01234567 will be transmitted as 0x01 0x23
0x45 0x67 and 0x0123456789ABCDEF will be transmitted as 0x01 0x23
0x45 0x67 0x89 0xAB 0xCD 0xEF.

Mode is binary.

14 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
NAK Code specifies the Negative Acknowledge code to be used if data is requested
from a UCCA that is incapable of receiving the Modbus request. Specify 4, 6, or None.
None is used only if the Master requires no reply when communication fails between the
UCCA gateway Modbus and the target processor.
Refer to the section, UCCA Port specifies the serial communication port (Com2 only).
Serial Port Settings for more
information. Baud Rate specifies the serial communication rate (bits/second) (2400 − 57600).

ICT specifies Inter-Character Timeout, the timeout period expressed as character time
times ten. Therefore, 35 represents 3.5 character times, or 0.0036 seconds at 9600 baud, 1
start bit, no parity, 1 stop bit (range 35 − 1000).

Response delay specifies the response delay in milliseconds (range 0 − 999).

Stop bits specifies serial stop-bits (choices: 1 or 2).

Parity specifies check character (choices: None, Even, Odd, Mark, Space).

Data Bits specifies number of bits per character (always 8).

Station specifies the Slave address associated with the serial port (range: 1− 255).

5.1 Register Pages


The Modbus Slave tab contains four pages that exchange data with a Modbus Master. The
pages differ by the access the Master receives to the data (read-only or read/write), and
the type of data received (a Boolean or a 16-bit word) as follows:
Data Access
Page Data Type Access
Holding Register 16-bit Register Read/Write
Output Coil Single Bit Read/Write
Input Register 16-bit Register Read only
Discrete Input Single Bit Read only

Modbus Slave Register

Instruction Guide GEI-100549B 15


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
The ToolboxST application allows the variables on each page to be specified using a Data
Grid. When a variable is added to a page, both Modbus Slave and the selected page are
enabled on the UCCA. As variables are added and removed, the UCCA is updated so that
only pages containing variables are enabled. To completely disable Modbus Slave, all
variables must be removed on all pages. The following columns can be specified when
adding a variable:

Connected Variable is the variable that is read or written from the UCCA or the
referenced I/O device. A variable must be on an EGD page before it can be added to a
Modbus Slave page. A Connected Variable must be specified before other columns
become active.
Refer to section, Data Format. Modbus Data Type determines the data type of the variable and the registers used to
transmit the variable data over a Modbus connection. The following data types may be
selected:

• Boolean (BOOL) is one bit of a 16-bit word (this is the only option if the Connected
Variable is a BOOL).
• Integer (INT) is a signed 16-bit word and takes one register.
• Unsigned Integer (UINT) is an unsigned 16-bit word and takes one register.
• Double Integer (DINT) is a signed 32-bit word and takes two registers.
• Unsigned Double Integer (UDINT) is an unsigned 32-bit word and takes two
registers.
• Real (REAL) is a signed 32-bit float and takes two registers.
• Long Real (LREAL) is a signed 64-bit float and takes four registers.

Address specifies the address of the register. When a variable is created, Address is
automatically set to a value adjacent to the highest variable address previously on the
page, but the automatic value may be modified. Any data types that are 32 bits or more
(such as DINT, UDINT, REAL, and LREAL) should be placed on odd register addresses.
The valid range for Address is 1 to 65534. When specifying a variable address for a
BOOL variable, the bit 0-15 within the 16-bit word is represented by a decimal. For
example, 1.00 selects bit 0 of register address 1, while 10423.7 selects bit 7 of register
address 10423.

Raw Min, Raw Max, Eng Min and Eng Max are columns that convert Modbus Slave
variable raw data into engineering units. The Raw Min and Raw Max columns control the
minimum and maximum engineering units for the raw data. The Eng Min and Eng Max
columns control the minimum and maximum engineering units to which the raw data will
be scaled. (The BOOL data type cannot be scaled.)

Name is a read-only identifier that is automatically generated from the register page
name, the variable address and, if necessary, an added unique number.

16 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
5.2 Data Format
All variables handled by the UCCA Modbus Slave are transferred to signal space at the
start of each task if they are referenced in the control code. This method allows data type
conversions and scaling. The data type conversion is controlled by the type of Modbus
variable and UCCA signal data type.

Float values are rounded prior to being stored in short or long registers. Short and long
registers are clamped to their minimum and maximum limit if the conversion exceeds
their specified range.
Available Data Type Conversions
Modbus Data Type Coil Register Bit 1 Register 2 Registers 4 Registers
BOOL BOOL INT UINT DINT UDINT REAL REAL
UCCA Signal BOOL Yes Yes N/A N/A N/A N/A N/A N/A
Data INT N/A N/A Yes Yes Yes Yes Yes Yes
UINT N/A N/A Yes Yes Yes Yes Yes Yes
DINT N/A N/A Yes Yes Yes Yes Yes Yes
UDINT N/A N/A Yes Yes Yes Yes Yes Yes
REAL N/A N/A Yes Yes Yes Yes Yes Yes
LREAL N/A N/A Yes Yes Yes Yes Yes Yes

5.3 Data Scaling


Data scaling converts the Modbus variable into a signal that represents engineering units.
Multiple signals can share one scaling record.

The Modbus variable assumes a range of 0 to 4000, while


the controller signal is between -40 to 160 degrees .
Signal Scaling Record Example

The gain is defined as:


Gain = EngRange/RawRange
Gain = (Engmax – Engmin)/(Rawmax – Rawmin)
Gain = (160 - (-40))/(4000 – 0) = (160 + 40)/4000
Gain = 200/4000 = 1/20 = 0.05

The offset is defined as:


Offset = Engmin – (Rawmin x Gain)
Offset = -40 - (0 x 0.05) = -40

The formula to convert the Modbus variable to a Slave device signal is:
Slave device signal = Modbus variable x Gain + Offset
Slave device signal = Modbus variable x 0.05 + (-40)
Slave device signal = Modbus variable x 0.05 - 40

Instruction Guide GEI-100549B 17


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
The range of the Modbus If the Modbus variable’s raw value is 1000, the Slave device value is (1000 x .05) - 40, or
variable is determined by the 10 degrees.
data type and not by the
scaling record. Each integer The formula to convert the Slave device signal to a Modbus variable is:
data type has an implied Modbus variable = (Slave device signal - Offset)/Gain
range. The raw data range in Modbus variable = (Slave device signal - (-40))/0.05
the scale dialog box is only Modbus variable = (Slave device signal + 40)/0.05
used to compute the gain and
If the Slave device signal is 10, the Modbus variable is (10 + 40)/0.05 or 1000. Modbus
offset of the variable when
variables and Slave device signals do not have to be associated with a scale definition,
converting it to a signal.
even if a data type conversion is required. A gain of 1 and an offset of 0 are used in these
cases.

INT variable is a signed 16-bit number. In this mode, the most significant bit is treated as
a sign bit where a one is used for negative values. Slave device signals are converted into
INT Modbus variables by applying the scaling information, rounding the values to the
nearest integer value, and then clamping the result in the range of −32768 to +32767.
UINT variable is an unsigned 16-bit number. Slave device signals are converted into
UINT Modbus variables by applying the scaling information, rounding the values to the
To ensure data coherency, nearest integer value, and then clamping the result in the range of 0 to +65535.
LONG Modbus variables
should always start on an odd DINT variable is a signed 32-bit number. The value is transmitted on Modbus as two
register number, and the consecutive 16-bit integers with the least significant word in Register N and the most
Master should send both significant word in Register N+1. In this mode, the most significant bit is treated as a sign
registers to the Slave device in bit where a one is used for negative values. Slave device signals are converted into DINT
the same Modbus transaction. Modbus variables by applying the scaling information, rounding the values to the nearest
integer value, and then clamping the result in the range of –2147483648 to +2147482647.
UDINT variable is an unsigned 32-bit number. The value is transmitted on Modbus as
two consecutive 16-bit integers with the least significant word in Register N and the most
significant word in Register N+1. Slave device signals are converted into DINT Modbus
variables by applying the scaling information, rounding the values to the nearest integer
To ensure data coherency, value, and then clamping the result in the range of 0 to +4294967295.
FLOAT Modbus variables
should always start on an odd REAL variable is a signed 32-bit IEEE® 754 standard number. The value is transmitted
register number, and the on Modbus as two consecutive 16-bit integers with the least significant word in register N
Master should send both and the most significant word in register N+1. In this mode, the most significant bit is
registers to the Slave device in treated as a sign bit and the next eight bits are a biased exponent followed by a 23-bit
the same Modbus transaction. significant. Slave device signals are converted into FLOAT Modbus variables by applying
the scaling information.

18 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
5.4 Data Conversions
Logic control signal values can be transmitted to the distributed control system (DCS)
using coils or registers.

5.4.1 Boolean Bit Signal Values


Coil data conversion corresponds to a single Boolean control signal. When registers are
used to transmit Boolean bit signal values, each bit corresponds to the state of one
Boolean signal. A register with 16 bits corresponds to a group of up to 16 Boolean
signals, with the least significant bit (LSB) being the first Boolean signal and the most
significant bit (MSB) as the last Boolean signal. The two bytes are packed in the Modbus
message using the normal rules for MSB and LSB order. The values of undefined bits in a
packed register are transmitted as 0.

5.4.2 Analog Signal Values


Analog signal values can be transmitted only using registers. Because DCS vendors
handle analog signals in different ways, the UCCA Modbus can be configured to transmit
analog data in one of several data types. The Modbus signal definition states the data type
for each signal.

Instruction Guide GEI-100549B 19


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
6 Modbus Command and Response Definition
This section describes the commands and responses supported by the UCCA to
implement the Modbus communications and functions. The UCCA is a Slave station on
an RS-232C data link and responds to commands from the Master. Messages are
transmitted and received using the RTU transmission mode where RTU transmits data in
8-bit bytes.

6.1 Message Format


The Serial RTU transmission mode uses the following format (where follower address,
function code, CRC-16 MSB, CRC-16 LSB are all bytes):

Station Function … Function Specific Data … CRC-16 CRC-16


ID Code MSB LSB

Station ID (follower address) is a number from 1 to 255 that specifies the unit with
which to communicate.

Function code specifies the purpose and format of the remaining message portion.

CRC-16 are two bytes that complete every serial Modbus message. These bytes check
errors, and are calculated to ensure that no transmission error occurred while the message
was in transit. The method for calculating the CRC-16 is a public protocol. Refer to the
Gould Modicon Modbus Protocol Reference Guide for information on calculating a
correct Cycle Redundancy Check (CRC).

Invocation ID is not used by the UCCA Modbus. Set to 0.

Protocol ID is not used by the UCCA Modbus. Set to 0.

Length is the byte count of the remaining part of the message, and is used by the
Modbus Master to receive the rest of the message, which is exactly what is sent and
received over the serial connections.

Station ID (follower address) is a number from 1 to 255 that specifies the unit with
which to communicate.

Function code specifies the purpose and format of the remaining message portion.

20 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
6.2 Message Errors
When a message that cannot be acted upon is received, it is either ignored (and the UCCA
waits for the next message) or an exception message is generated. Any messages that are
misunderstood, incomplete, or altered in some manner (framing, parity, or CRC-16 error)
are always ignored because it is not possible to reliably determine the intention of the
message. The Master must detect this timeout condition and resend the message as
necessary.

Any time a message receipt is being sent over a serial connection and an interval of time
corresponding to 3.5 character times (based on the baud rate) occurs without receipt of a
character, the message receipt in progress is aborted and ignored. Other message failures
are responded to with an exception response if no reception error has occurred, and if the
message was not a broadcast (follower address was zero). The following table displays
the exception code responses that are supported when a normal response is impossible.
Exception Code Responses

Code Name Description


01 Illegal function message function received is not supported

02 Illegal data address address referenced in the data field is not in a permissible range

03 Illegal data value value transmitted in the data field is illegal

04 Device failure data source is unhealthy

06 Device busy Too many writes to the UCCA – commands per second limit
exceeded

The exception message reply from the UCCA is formatted as follows:

Station ID (UCCA address) must be in the range of 1 − 255.

Function code is always equal to the Master’s function code with the MSB set.
Therefore, an exception response received by a Master that sent a message with function
code 02 hex, would have a function code of 82 hex (or 130 decimal) in the exception
reply.

Exception codes are as described in the table, Exception Code Responses. Only codes
01 through 03 and 06 are supported.

Instruction Guide GEI-100549B 21


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
7 Function Code Descriptions
The nine function codes implemented in the Slave device are used to read from, and/or
write to, the four Modbus table types. The following table lists the function codes
included in the messages sent from the DCS that are supported by the Slave device. Each
function code and the Slave device reply are described in this section.
Function Code Descriptions

Code Description
01 Read output coils

02 Read discrete inputs

03 Read holding registers

04 Read input registers

05 Force (write) single output coil

06 Preset (write) single holding register

07 Read exception status

15 Force (write) multiple output coils

16 Preset (write) multiple holding registers

7.1 Function Code 01: Read Output Coils


Function code 01 is used to read the output coil table. The message sent from the Master
is formatted as follows:

Function Start Coil Start Coil Number of Number of


Code (01) (MSB) (LSB) Coils (MSB) Coils (LSB)

Starting output coil number is two-bytes long and can be any value less than the
highest output coil number available in the output coil table. The starting output coil
number is equal to a number one less than the first output coil returned in the normal
response. For example, to get the first output coil, enter 0 for the starting output coil
number. The high order byte of the starting output coil number field is sent as the first
byte. The low order byte is sent next.

Number of output coils to return is two-bytes long and must be from 1 to 2000,
inclusive. It specifies the number of output coils returned in the normal response. The
sum of the starting output coil value and the number of output coils must be less than or
equal to the highest output coil number available in the output coil table. The high order
byte of the number of output coils field is sent as the first byte. The low order byte is sent
next.

The normal message reply from the Slave device is formatted as follows:

Function Code (01) Byte Count Data Bytes 1-n

Byte count is a binary number from 1 to 250. The specified number of data bytes
follow.

22 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
Data bytes (data field) are the packed output coil status data. Each byte contains eight
output coil values. The LSB of the first byte contains the value of the output coil whose
number is equal to the starting output coil number plus one. The value of the output coils
are ordered by number, starting with the LSB of the first byte and ending with the MSB of
the last byte. If the number of output coils is not a multiple of eight, then the last data byte
contains zeros in one to seven of its highest order bits.

7.2 Function Code 02: Read Discrete Inputs


Function code 02 is used to read the discrete input table. The message sent from the
Master is formatted as follows:

Function Start input Start input Number of inputs Number of inputs


Code (02) (MSB) (LSB) (MSB) (LSB)

Starting discrete input number is two-bytes long and can be any value less than the
highest discrete input available in the discrete input table. The starting discrete input
number is equal to one less than the number of the first discrete input returned in the
normal response. For example, to get the first discrete input, enter zero for the starting
discrete input number. The high order byte of the starting discrete input field is sent as the
first byte. The low order byte is sent next.

Number of discrete inputs to return is two-bytes long and must be from 1 to 2000,
inclusive. It specifies the number of discrete inputs returned in the normal response. The
sum of the starting discrete input value and the number of discrete inputs must be less
than or equal to the highest discrete input available in the discrete input table. The high
order byte of the number of discrete inputs field is sent as the first byte. The low order
byte is sent next.

The normal message reply from the Slave device is formatted as follows:

Function Code (02) Byte Count Data Bytes 1-n

Byte count is a binary number from 1 to 250. The specified number of data bytes
follow.

Data bytes (data field) are the packed discrete input status data. Each byte contains
eight discrete input values. The LSB of the first byte contains the value of the discrete
input whose number is equal to the starting discrete input plus one. The value of the
inputs are ordered by number, starting with the LSB of the first byte and ending with the
MSB of the last byte. If the number of discrete inputs is not a multiple of eight, then the
last data byte contains zeros in one to seven of its highest order bits.

Instruction Guide GEI-100549B 23


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
7.3 Function Code 03: Read Holding Registers
Function code 03 is used to read holding registers. The message sent from the Master is
formatted as follows:

Function Code Start Register Start Register Number of Registers Number of Registers
(03) (MSB) (LSB) (MSB) (LSB)

Starting holding register number is two-bytes long and can be any value less than
the highest holding register number available in the holding register table. The starting
holding register number is equal to one less than the number of the first holding register
returned in the normal response. For example, to get the first holding register number
(holding register number one) enter zero for the starting holding register number. The
high order byte of the starting holding register number field is sent as the first byte. The
low order byte is sent next.

Number of holding registers value is two-bytes long and must be from 1 to 128,
inclusive. It specifies the number of holding registers returned in the normal response.
The sum of the starting holding register value and the number of holding registers must be
less than or equal to the highest holding register number available in the holding register
table. The high order byte of the number of holding registers field is sent as the first byte.
The low order byte is sent next.

The normal message reply from the Slave device is formatted as follows:

Function Code Byte Count First Register First Register Data Registers Last Register
(03) (MSB) (LSB) Requested (LSB)

Byte count is an even binary number from 2 to 254, or 0. If the byte count is 0, then the
Master assumes 256 data bytes follow. Otherwise, the specified number of data bytes
follow, not including the two CRC-16 bytes (serial mode).

Holding registers are returned in the data field in numerical order, with the lowest
number holding register in the first two bytes and the highest number holding register in
the last two bytes. The number of the first holding register is equal to the starting holding
register number plus one. The high order byte is sent before the low order byte of each
holding register.

24 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
7.4 Function Code 04: Read Input Registers
Function code 04 is used to read input registers. The message sent from the Master is
formatted as follows:

Function Code Start Register Start Register Number of Number of Registers (LSB)
(04) (MSB) (LSB) Registers (MSB)

Number of input registers value is two-bytes long and must be from 1 to 128,
inclusive. It specifies the number of input registers returned in the normal response. The
sum of the starting input register value and the number of input registers must be less than
or equal to the highest input register number available in the input register table. The high
order byte of the number of input registers field is sent as the first byte. The low order
byte is sent next.

The normal message reply from the Slave device is formatted as follows:

Function Code Byte First Register First Register Data Registers Last Register
(04) Count (MSB) (LSB) Requested (LSB)

Byte count is an even binary number from 2 to 254, or 0. If the byte count is 0, then the
Master assumes 256 data bytes follow. Otherwise, the specified number of data bytes
follow, not including the two CRC-16 bytes (serial mode).

Input registers are returned in the data field in numerical order, with the lowest number
input register in the first two bytes and the highest number input register in the last two
bytes of the data field. The number of the first input register in the data field is equal to
the starting input register number plus one. The high order byte is sent before the low
order byte.

7.5 Function Code 05: Force Single Output Coil


Function Code (05) Output Coil (MSB) Output Coil (LSB) State (00 or FF) 0

Function code 05 is used to force (or write) a single output coil in the output coil table.
The message sent from the Master is formatted as follows:

Output coil number is two-bytes long and can be any value less than the highest output
coil number available in the output coil table. The output coil number is equal to one less
than the number of the output coil forced. For example, to change the first output coil
enter 0 for the output coil number. The high order byte of the starting output coil number
field is sent as the first byte. The low order byte is sent next.

State byte is sent by the Master with only two possible values. A zero (00h) is sent to
turn the specified output coil off (set false). A value of 255 (FFh) is sent to turn the
specified output coil on (set true). The state byte is always followed by a single byte with
value 0.

The format of the normal message reply from the Slave device is identical to the received
message.

Instruction Guide GEI-100549B 25


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
7.6 Function Code 06: Preset Single Holding
Register
Function code 06 is used to preset (or write) to a single holding register. The message
sent from the Master is formatted as follows:

Function Code Holding Register Holding Register Register Data (MSB) Register Data (LSB)
(06) (MSB) (LSB)

Holding register number is two-bytes long and can be any value less than the highest
holding register number available in the holding register table. The holding register
number is equal to one less than the number of the changed holding register. For example,
to change the first holding register enter 0 for the holding register number. The high order
byte of the starting holding register number field is sent as the first byte. The low order
byte is sent next.

Holding register data field is two bytes long and contains the value to which the
holding register specified by the holding register number field is preset. The first byte in
the data field contains the high order byte of the preset value. The second byte in the data
field contains the low order byte.

The format of the normal message reply from the Slave device is identical to the received
message.

7.7 Function Code 07: Read Exception Status


Function code 07 is used to read the exception status data, defined as the first eight output
coils. These can indicate the Slave device status or condition of any other state. Function
code 07 thus provides a short form of request for reading the first eight output coils,
output coils one through eight. The message sent from the Master is formatted as follows:

Function Code (07)

The normal message reply from the Slave device is formatted as follows:

Function Code (07) Data Byte

Data bytes (data field) are the packed output coil status data. The data byte contains
eight output coil values. The LSB of the byte contains the value of output coil number
one. The MSB contains the value of output coil number eight.

26 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
7.8 Function Code 15: Force Multiple Output Coils
Function code 15 is used to force (or write) multiple output coils in the output coil table.
The message sent from the Master is formatted as follows:

Function Code Starting Coil Starting Coil Coil Count Coil Count Data Data
(15) (MSB) (LSB) (MSB) (LSB) Bytes

Starting coil number is two-bytes long and can be any value less than the highest
output coil number available in the output coil table. The output coil number is equal to
one less than the number of the forced output coil. For example, to change the first output
coil, enter zero for the output coil number. The high order byte of the starting output coil
number field is sent as the first byte. The low order byte is sent next.

Coil count is two-bytes long. It specifies the number of output coils to set. The sum of
the starting output coil value and the number of output coils must be less than or equal to
the highest output coil number in the output coil table. The high order byte of the number
of output coils field is sent as the first byte. The low order byte is sent next.

Byte count is the number of data bytes to follow.

Data bytes (data field) are the packed output coil data. Each byte contains eight output
coil values. The LSB of the first byte contains the value of the output coil whose number
is equal to the starting output coil number plus one. The value of the output coils are
ordered by number, starting with the LSB of the first byte and ending with the MSB of the
last byte. If the number of the holding coils is not a multiple of eight, then the last data
byte contains unused data in its highest order bits.

The normal message reply from the Slave device is formatted as follows:

Function Code Starting Coil Starting Coil Coil Count (MSB) Coil Count (LSB)
(15) (MSB) (LSB)

The field definitions are the same as the request message.

Instruction Guide GEI-100549B 27


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
7.9 Function Code 16: Preset Multiple Holding
Registers
Function code 16 is used to preset (or write) to multiple holding registers. The message
sent from the Master is formatted as follows:

Function Starting Starting Register Register Data Bytes Data Registers


Code (16) Register Register (LSB) Count Count (LSB) (MSB:LSB format)
(MSB) (MSB)

Start register number is two-bytes long and can be any value less than the highest
holding register number available in the holding register table. The holding register
number is equal to one less than the number of the changed holding register. For example,
to change the first holding register enter 0 for the holding register number. The high order
byte of the starting holding register number field is sent as the first byte. The low order
byte is sent next.

Number of holding registers value is two-bytes long. It specifies the number of


holding registers to set. The sum of the starting holding register value and the number of
holding registers must be less than or equal to the highest holding register number in the
holding register table. The high order byte of the number of holding registers field is sent
as the first byte. The low order byte is sent next.

Byte count is the number of data bytes to follow.

Register data field is two-bytes for each holding register to set. The first byte in the
data field contains the high order byte of each preset value. The next byte contains the
low order byte.

The normal message reply from the Slave device is formatted as follows:

Function Code (16) Starting Register Starting Register Register Count (MSB) Register Count (LSB)
(MSB) (LSB)

The field definitions are the same as the request message.

28 GEI-100549B UCCA Controller Serial Modbus Slave


GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and is intended for internal use only. It may not be
used, shown, reproduced, or disclosed outside of GE without the express written consent of GE.
8 Advanced Diagnostics
The Modbus diagnostic utility Use the Advanced Diagnostics Commands to diagnose problems with Modbus.
is available with the Mark VIe
firmware V03.03 or later. � To view diagnostic data from the ToolboxST application
1. From the Component Editor, View menu, select Diagnostics, Controller
Advanced Diagnostics.

2. Select the desired diagnostic reports.


3. Select the Auto Clear on Send check box.
4. Click Send Command.

Modbus Slave Configuration report displays a summary of the total number of


coils/register and the highest and lowest coil/register configured for each of the four
Modbus categories (holding coils, discrete inputs, holding registers, and input registers).
More extensive details are available using the registers command. Below this summary,
the report displays more configuration data, including command rate information, data
swapping configuration, configured NAK codes, and serial port selections. If incorrect
information is found, close the advanced diagnostic window, select the Modbus Slave tab,
and then make changes in the Property Editor.

Modbus Slave Clients report displays the currently established Modbus Master
connections.

Modbus Slave Command Summary report displays counters for Modbus write
information. Function codes 5, 6, 15, and 16 are the only codes that perform a write.

Message Format Summary displays the message formats used in Modbus messages
to and from the Modbus Slave. Error codes are also displayed.

Errors displays errors and resets errors.

Log displays message logs and resets logs.

1501 Roanoke Blvd. GE Proprietary and Internal (Class II) – This document contains proprietary information of GE and
Salem, VA 24153 USA is intended for internal use only. It may not be used, shown, reproduced, or disclosed outside of GE
without the express written consent of GE.

You might also like