Communication Guide, Tricon v9.6 PDF
Communication Guide, Tricon v9.6 PDF
Version 9.6
Communication Guide
Triconex
An Invensys Company
Information in this document is subject to change without notice. Companies,
names and data used in examples herein are fictitious unless otherwise noted. No
part of this document may be reproduced or transmitted in any form or by any
means, electronic or mechanical, for any purpose, without the express written
permission of Triconex.
Related Documentation
The following Triconex books contain related information:
• Planning and Installation Guide
• TriStation 1131 Developer’s Guide
• Safety Considerations Guide
• SOE Recorder User’s Guide
Note If you require emergency support and are not an SMP participant, please
have a purchase order or credit card available for billing.
Telephone
Toll-free number 866-PHON IPS (866-746-6477) , or
Toll number 508-549-2424
Fax
Send your request to the Technical Support Manager.
Toll-free number 800-325-2134, or
Toll number 949-885-3375
E-mail
ips.csc@invensys.com
Training
In addition to this documentation, Triconex offers in-house and on-site training.
For information on available courses, please contact your regional customer center.
Introduction
This chapter describes the types of communication available with the Tricon
controller and the capabilities of its communication modules.
Topics include:
“Overview” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
“Module Capabilities and Usage” . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Overview
Tricon controllers can communicate with other Triconex controllers and with
external devices by using ports on the following modules:.
• Advanced Communication Module (ACM)
• Enhanced Intelligent Communication Module (EICM)
• Network Communication Module (NCM)
• Network Communication Module with GPS Interface (NCMG)
The following table lists the protocols available with each module.
Note Throughout this manual, the name NCM is generally used to represent both
the NCM and the NCMG modules.
TriStation Communication
TriStation protocol enables communication between a TriStation PC and a
Triconex controller. The TriStation PC can be connected to the Tricon controller
through an Ethernet port on the ACM or NCM, or through a serial port on the
EICM.
The TriStation 1131 Developer’s Workbench is used to develop and monitor
applications which run in a Triconex controller. The workbench is compliant with
Part 3 of the IEC 61131 International Standard for Programmable Controllers.
Peer-to-Peer Communication
Triconex Peer-to-Peer protocol allows multiple Triconex controllers in a closed
network to exchange safety-critical data. The controllers exchange data by using
Send and Receive function blocks in their TriStation applications. The controllers
can synchronize their time with the master node (the one with the lowest node
number) or with an external device, such as a DCS.
Chapter 1 Introduction
4 Overview
Modbus Communication
Modbus is an industry-standard master/slave protocol that is traditionally used for
energy management, transfer line control, pipeline monitoring, and other industrial
processes. A Tricon controller with an EICM can operate as a Modbus master,
slave, or both. A DCS typically acts as the master while the Tricon controller acts
as a slave. The master can also be an operator workstation or other device that is
programmed to support Modbus devices.
The Tricon controller has serial ports on the EICM that provide many options for
communication with your Modbus devices. Each EICM port can operate in a point-
to-point configuration with a single Modbus device or a multi-point configuration
with several Modbus devices connected to a serial link.
Chapter 1 Introduction
6 Module Capabilities and Usage
Communication Hardware
This chapter discusses the hardware you can select to enable Tricon controllers for
communication with other Triconex controllers and with external devices.
Topics include:
“Overview” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
“Triconex Products” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
“Chassis and Module Selection” . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
“Connecting Ethernet Devices” . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
“Redundant Devices” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
“Centronics Interface for Printing” . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Overview
This chapter describes Triconex products and other devices you must purchase to
enable a Tricon controller for communication.
As you select devices, redundancy might be one of your initial concerns. Typical
configurations include redundant modules, cables, and workstations, but can
include other devices that are listed on page 11.
Triconex supplies communication cables, but does not supply PCs, hubs, media
converters, or printers. You must purchase these devices from manufacturers such
as Black Box Network Services and Hewlett-Packard. Specifications for PCs to use
with Triconex software products are on page 16.
If you need assistance with selecting communication hardware, please contact your
Network Administrator or Information Technology department.
Triconex Products
Triconex communication products include:
• Tricon controllers with an ACM, EICM, NCM, or SMM installed in each
• Trident controllers with at least one CM installed in each
• TriStation 1131 Developer’s Workbench
• Triconex DDE Server program
• Triconex OPC Server program
• Triconex SOE Recorder program
• Connectivity accessories such as cables and adapters
Connection Accessories
This section describes connection accessories available from Triconex.
Note You should supply your own cables for connecting an EICM serial port to
a Modbus master or slave based on the requirements of the Modbus device.
From To
NET2 port on ACM or NCM TriStation PC
Media or protocol converter connected to
a faster Ethernet network
Peer-to-Peer port on NCM Peer-to-Peer port on NCM
Twisted-Pair Cable
The twisted-pair cable (part number 1600045-020) can be used to connect a
TriStation PC with RJ-45 connectors to an Ethernet network. In this configuration,
the NET2 port on an ACM or NCM (which uses a BNC connector) is connected to
the network through a media converter. The twisted-pair cable is a Category 5
shielded cable which complies with the 10BaseT and 100BaseTX standards. For
more information, see “Connecting TriStation to an Ethernet Port” on page 24.
! WARNING
In hazardous indoor locations, apparatus used with Triconex communication
modules must be FM certified for Class I, Division II.
Tricon Controller
10Base2
N
Coaxial (ThinNet) Cable
M M M C BNC Connector
P P P M on NET2
A B C 1
TriStation PC
You must use or terminate the BNC connectors on all NET2 ports of the Tricon
controller. To terminate an unused BNC connector, you can attach a T-connector
with 50-ohm terminators on each end to produce a 25-ohm parallel resistance. If
necessary, ask your Network Administrator about other termination methods.
Coaxial
Cable
Side View
of BNC Connector T-Connector
on NCM Front Panel
Terminator
Cap
To Ethernet
Network
10BaseT or 100BaseTX
Twisted-Pair Cable
10Base2
Coaxial (ThinNet) Cable
N
M MM C
BNC Connector
P P P M
on NET2
A B C 1
BNC RJ-45
Tricon Controller Connector Media Connector Ethernet Device
Converter
Redundant Devices
To ensure continuous operation of a Triconex system if a hardware failure occurs,
you can create a redundant configuration. Redundant devices can include modules,
workstations, cables, hubs, media converters, printers, and power sources.
A redundant device operates in parallel with a primary device so that, if the primary
device fails, the redundant device is easily or automatically placed into service. A
typical configuration includes two NCMs with redundant cables connected to one
port on each module. The redundant modules protect against internal faults, and the
redundant cables protect against cable breakage. To protect against network fail-
ures, you can connect a primary workstation to one network and a redundant work-
station to another network, as shown in the following diagram.
Trident Controller
CM
To CM
NET2
Ports
To NCM To NCM
NET2 NET2
Ports Ports
N N
NET 2 N N
NET 2
M M M C C M M M C C
P P P MM P P P MM
A B C 1 2 A B C 1 2
TriStation Communication
Overview
This chapter describes the tasks you must do to connect a TriStation PC to a Tricon
controller. TriStation must be used to program and operate the controller, and to
establish the controller address on an Ethernet network. TriStation can also be used
to monitor applications that are running in Tricon controllers.
The initial task is to set up a PC with the required hardware and communication
protocols. This includes installing a network adapter card and TCP/IP protocol if
you plan to connect the TriStation PC to an Ethernet port on the ACM or NCM.
The next task is to install the TriStation 1131 Developer’s Workbench on a PC
using the setup program provided by Triconex. You can then physically connect
the TriStation PC to a serial port on the EICM or to a NET2 Ethernet port on the
ACM or NCM. If using Ethernet, you can connect the PC directly to a NET2 port,
or to a media converter that is connected to a NET2 port.
To directly connect the TriStation PC to the Tricon controller, you must install a
network adapter card with a BNC connector in the PC and use a 10Base2 coaxial
cable. If your network adapter card does not have a BNC connector, you must use
an appropriate cable and a media converter. You can buy communication cables
from Triconex or from other manufacturers. You must buy media converters from
other manufacturers.
An essential task of an Ethernet physical connection is to set the node number of
the controller using the rotary switches on the ACM or NCM module. The physical
node number must match the node number that you set in your TriStation project.
After the physical connection tasks are completed, you must logically configure the
connection in the TriStation project. This includes specifying which port the
communication cable is connected to and the address of the Tricon controller. After
completing the physical and logical connection tasks, you are ready to download,
run, and monitor the TriStation project.
Installing Protocols
If you plan to connect the TriStation PC to a NET2 Ethernet port, you must install
the TCP/IP protocol on the PC. If you plan to connect the TriStation PC to a serial
port, you do not need to install a protocol on the PC.
You cannot download a TriStation project to a Tricon controller unless the correct
protocol is installed on the TriStation PC.
If you need help with installing a protocol, ask your Network Administrator.
1 2 3 4 5 6 7 8
O
N
Port 1
Port 2
Port 3
Port 4
Port 5
Triconex strongly recommends using port 4 for TriStation. If port 4 fails, use the
following procedure to configure another port for TriStation connection.
3 Replace the EICM in its slot. You can now connect the serial cable from the
EICM port to the TriStation PC.
Note Switches 1, 2, 3, and 4 are used to select the RS-232 or RS-422 transceiver
mode for serial ports 1, 2, 3, and 4 respectively. For more information, see
“Configuring Serial Ports in TriStation” on page 98.
Tricon Controller
25-Pin Connector
with 9-Pin Adapter
EICM Port 4
(25-Pin Connector)
MM M
Serial
P P P Cable
A B C
TriStation PC
Tricon Controller
10Base2
N
Coaxial (ThinNet) Cable
M M M C BNC Connector
P P P M on NET2
A B C 1
TriStation PC
Note You must use or terminate the BNC connectors on all ACMs and NCMs
which are installed in the Tricon controller. To terminate an unused BNC
connector, you can attach a T-connector with 50-ohm terminators on each end to
produce a 25-ohm parallel resistance. Ask your Network Administrator for
information about other termination methods.
To Ethernet
Tricon Controller Network
BNC Connector
10BaseT or 100BaseT
on NET2 Twisted-Pair Cable
10Base2
Coaxial (ThinNet) Cable
N
M M M C
P P P M
A B C 1
BNC RJ-45
Connector Media or Protocol Connector TriStation PC
Converter
Rotary Switches
for Trinode Address
E 0
2
Top Switch C 4
A 6
8 5678
1 23 4
9 ABC
DEF0
5678
12 34
9 ABC
DEF0
E 0
2
Bottom Switch C 4
A 6
8
Use the following table to set the rotary switches on the ACM for node numbers 1
through 32.
After setting the rotary switches on the ACM, you must specify the node number
in your TriStation project. For instructions, see “Ethernet Port Connection” on
page 36.
C 4 C 4 C 4 C 4 C 4 C 4 C 4 C 4
A 6 A 6 A 6 A 6 A 6 A 6 A 6 A 6
8 8 8 8 8 8 8 8
Use the following table to set the rotary switches on the NCM for node numbers 1
through 32. For all addresses, switches 3 through 8 must be set to zero, so they are
not included in the table.
After setting the rotary switches on the NCM, you must specify the node number
in your TriStation project. For instructions, see “Ethernet Port Connection” on
page 36.
Installing TriStation
The setup program provided by Triconex installs all the components of the
TriStation 1131 Developer’s Workbench on a PC.
To install TriStation, you must log on to Windows as an administrator or have
administrator privileges.
Note If you have previously installed TriStation on your PC, you must uninstall
it before installing this version. For instructions, see page 32.
▼ To install TriStation:
1 Close all open applications.
2 Insert the TriStation 1131 CD in the CD-ROM drive.
If the installation routine starts automatically, go to Step 6 and follow the
instructions in the Installation Wizard dialog boxes. Otherwise, complete steps
3 through 5.
3 From the Start menu, select Settings, then Control Panel.
4 Double-click the Add/Remove Programs icon.
5 On the Install/Uninstall tab of the Add/Remove Programs Properties dialog box,
click the Install button.
6 Follow the instructions described in the Installation Wizard dialog boxes.
Triconex recommends installing TriStation in the default destination folder,
C:\Program Files\Triconex, designated by the Installation Wizard.
7 To restart your PC when the installation has finished, select Yes.
To restart your PC later, select No.
You must restart your PC before running TriStation.
8 To complete the installation of TriStation, click Finish.
Note If you previously created projects and saved them in the default directory,
C:\Program Files\Triconex\TS1131\Projects\, the uninstall program does not
remove them.
6 Click the Yes or Yes to All button if the Remove Shared File dialog box asks
about removing unused DLLs.
7 When the “Uninstall successfully completed” message is displayed, click OK.
8 When the uninstall is finished, click OK to close the Add/Remove Programs
Properties dialog box.
You are now ready to install TriStation. For instructions, see “To install
TriStation:” on page 31.
8 Under Protocol in the Port Configuration area, select TriStation 1131 from the
list. There are no other options associated with the TriStation 1131 protocol.
9 To logically connect your TriStation project to an EICM serial port, go to the
Control Panel and select the Connect command on the Commands menu.
Ensure that the option called Tricon Serial Port and the correct COM port are
selected, as shown in the following screen.
Properties Description
Node Name A user-defined name used to identify the Tricon controller. Can
be any name that is less than or equal to eight characters.
Node Number The number specified by the rotary switches on the ACM or
NCM.
TCP/IP Address The physical address of a Tricon controller on an Ethernet
(IP address) network. If your network topology permits, use a Triconex
default. If not, get an IP address from your Network
Administrator or Information Technology department. If you
cannot get the address from one of these sources, see “Setting the
IP Address” on page 53.
screen shows the NCM Configuration dialog box which is similar to the ACM
Configuration dialog box.
9 Select properties for the Left Slot or Right Slot area, depending on which
module is connected to the TriStation PC.
For the NCM, select the Installed property. For the ACM, select the Used
property.
Ignore the Privilege property, which applies only to TSAA communication, not
TriStation. For more information, see “Configuring Ethernet Ports in
TriStation” on page 48.
10 For TCP/IP Address (dec), do one of the following tasks:
– If you are using a default node number, do not change this property
(leave blank).
– Type the TCP/IP address that identifies the controller on the network.
This must be the same address you entered in step 4.
11 For TCP/IP Subnet (hex), do not change the default setting which is eight
zeroes.
12 To logically connect your TriStation project to an ACM or NCM port, go to the
Control Panel and select the Connect command on the Commands menu.
In the Connect To dialog box, ensure that the Tricon Network option is selected,
as shown in the following screen.
Access by Access by
Protocol or Application
Tagname Alias
Modbus Master ✓
Modbus Slave ✓
Peer-to-Peer1 ✓
OPC Server, OPC Data Manager, and OPC Redundancy Broker ✓ ✓
DDE Server ✓
User-Written TSAA Application2 ✓ ✓
1. For Triconex controllers only.
2. TSAA provides a look-up table which supports both tagname and alias access.
For more information about accessing Tricon points, see the chapters and
appendices about TSAA, Peer-to-Peer, and Modbus in this guide. For details about
tagnames and aliases, see the TriStation 1131 Developer’s Guide.
! WARNING
In a Peer-to-Peer network, a scan surplus less than 10 percent could result in
communication errors.
Diagnostic Monitoring
You can monitor a TriStation project that is running in a Tricon controller using
any existing project or an empty project.
Properties Description
Node Name The user-defined name that identifies the Tricon controller you
intend to monitor.
Node Number The number that identifies the Tricon controller you intend to
monitor.
TCP/IP Address The physical address of a Tricon controller on an Ethernet
(IP address) network. This could be a default or non-default address. If you do
not know the address, contact your Network Administrator or
Information Technology department.
7 From the Tricon menu, select the Tricon Diagnostic Panel command.
8 From the Commands menu, select the Connect command or use the Connect
tool on the toolbar.
9 In the Connect To dialog box, select the desired Tricon node. If your TriStation
PC is connected to an EICM, select a Tricon Serial Port option. If your
TriStation PC is connected to an ACM or NCM, select a Tricon Network option.
10 If the connection to the controller is successful, TriStation displays the alarm
state of the controller as well as performance and project information, as shown
in the following screen.
This chapter explains how to configure Ethernet ports on the Tricon controller for
client/server communication and how to use client/server programs.
Topics include:
“Overview” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
“Configuring Ethernet Ports in TriStation” . . . . . . . . . . . . . . . . . . . . 48
“DDE Server for Triconex” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
“OPC Server for Triconex” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
“Other OPC Products” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Overview
Client/server communication with Triconex controllers can be done by using the
DDE Server and OPC Server programs, which use the Triconex System Access
Application (TSAA) protocol. For most process control networks, using DDE
Server or OPC Server is the best solution. However, TSAA protocol can be used to
write custom programs for accessing Triconex data, such as the following:
• Control (read/write) programs for operator workstations that need read
access to Triconex status and write access to Triconex data
• Monitor (read-only) programs such as a sequential events recorder or a
status display that collects and records Triconex data
For more information, see Appendix C, “TSAA Protocol.”
NET1
NET2 NET2
(NCM) NN NN
MM M CC MM M CC
P P P MM P P P MM
A B C 1 2 A B C 1 2
MP
Ethernet Network
To DCS
Programs that use TSAA to exchange information with a Tricon controller require
an ACM or an NCM. You can install a maximum of two ACMs and two NCMs in
a Tricon controller. You can physically connect one Ethernet port on each ACM or
NCM to an Ethernet network. Through one Ethernet port, the controller can
communicate with multiple devices on a network, such as a TriStation PC, a print
server, and a client workstation.
The Ethernet port on the ACM and NCM is called NET2 and it operates at 10
megabits per second. If you connect the ACM or NCM to a network that is faster
than 10 megabits per second, you must use a media converter with appropriate
cables.
In your TriStation project, you must configure each Ethernet port by selecting the
mode, access privilege, port type, IP address, and time synchronization properties.
Part of physically connecting an ACM or NCM port to a network is to set the IP
address of the port. The most convenient methods are to use the Triconex default
addresses or a Reverse ARP server. Other ways are discussed in this chapter.
After planning the physical functionality of your network, you should program
each TriStation project for write access from external devices. A project can allow
general write access while protecting specific points from write access through
configuration settings. For more information, see “Write Access by External
Devices” on page 40.
4 In the NET2 - Left Slot and NET2 - Right Slot areas, specify the following
properties as needed.
Redundant Mode
The Redundant Mode property specifies whether the Right Slot area is available for
configuration. The default is not selected.
Used
The Used property specifies whether an ACM is installed in the left or right side of
a physical slot in the Tricon controller.
Privilege
The Privilege property specifies whether external devices connected to a NET2
port have Read or Read/Write access to Tricon points.
If set to Read, external devices cannot write to any points no matter what other
write access controls are used. This setting protects safety-critical points from
writes by external devices on an open network.
If set to Read/Write, external devices can write to points depending on the settings
of other write access controls.
The default setting is Read/Write.
The Privilege property must be used in conjunction with other write access
controls. For more information, see “Write Access by External Devices” on
page 40.
TCP/IP Address
The TCP/IP Address property specifies the IP address of the controller on a
network. If your network topology permits, use a Triconex default address. If not,
get an address from your Network Administrator or Information Technology
department. If you have two ACMs in a slot, you can give each module a different
IP address and connect it to a different Ethernet network or device. For more
information, see “Setting the IP Address” on page 53.
Time Synchronization
The Time Synchronization property specifies whether time synchronization is
used. The following types are available.
4 In the Left Slot and Right Slot areas, specify the following NET2 Port properties
as needed.
Installed
The Installed property specifies whether an NCM is installed in the left or right side
of a physical slot in the Tricon controller.
Privilege
The Privilege property specifies whether external devices connected to a NET2
port have Read or Read/Write access to Tricon points.
If set to Read, external devices cannot write to any points no matter what other
write access controls are used. This setting protects safety-critical points from
writes by external devices on an open network.
If set to Read/Write, external devices can write to points depending on the settings
of other write access controls.
The default is Read/Write.
The Privilege property must be used in conjunction with other write access
controls. For more information, see “Write Access by External Devices” on
page 40.
TCP/IP Address
The TCP/IP Address property specifies the IP address of the controller on a
network. If your network topology permits, use a Triconex default address. If not,
get an address from your Network Administrator or Information Technology
department. If you have two NCMs in a slot, you can give each module a different
IP address and connect it to a different Ethernet network or device. For more
information, see “Setting the IP Address” on page 53.
Time Synchronization
The Time Synchronization property specifies whether time synchronization is
used. The following types are available.
Properties Descriptions
Global Positioning System Select this property if you are using an NCMG and
Installed the Trimble Acutime 2000 Synchronization Kit to
synchronize the Tricon clock with the Global
Positioning System (GPS).
On NET1 enable time Select this property if you want to synchronize the
synchronization with Tricon Tricon clock with the master node (the controller
master node with the lowest node number) in a Peer-to-Peer
network.
In a network of Triconex controllers which are synchronized with the master node,
the master node can be synchronized with an external device such as an OPC client
or the GPS. For more information, see “Time Synchronization” on page 125.
Note Typically, Triconex controllers are located on their own subnet which is
connected to a larger network such as a DCS. Your Network Administrator can set
up the subnet for compatibility with the Triconex default IP addresses and can
program any routers that lie between the DCS and the Triconex subnet with
addressing information about the Triconex controllers.
Note The left and right modules in ACM and NCM slots use the same 48-bit
physical MAC address and cannot be connected to the same network.
Note The left and right modules in ACM and NCM slots use the same 48-bit
physical MAC address and cannot be connected to the same network.
3 Verify the setting of the intended IP address on the network by opening a DOS
window and entering the command “ping <IP address>.”
If the IP address is set, DOS gives several consecutive replies in this format:
“Reply from <IP address>: bytes = 32 time < 10 ms TTL=64”
If the IP address is not set, DOS gives the reply “Request timed out.” several
times.
4 Connect your TriStation PC to the network, or directly to a NET2 port on the
ACM or NCM.
5 Configure your TriStation project with the Trinode number of your controller
and its intended IP address, if you have not already done so.
6 Go to the Control Panel and connect the TriStation PC to the controller.
7 Download your TriStation project to the controller.
The following sections explain how to install, configure, test and use Triconex
DDE Server.
To allow a DDE client to change the values of Triconex variables, you must enable
write access in one of the following ways:
• For Tricon, physically set the keyswitch to the Remote position.
• For Trident, set the MP.SET_REMOTE_WRIT_ENBL control attribute to
True in the TriStation application.
For more information, see “Write Access by External Devices” on page 40.
! CAUTION
The default button clears all previous configuration settings for all of the hosts.
Device Type
The Device Type property specifies whether the host is a Tricon or a Trident
controller.
Host Name
The Host Name property specifies the user-defined name for a controller which
must be unique for each controller. (This name is used by the DDE client
application to request data from the controller.)
The default values are:
• For Tricon, TRINODE01 (for node 1) through TRINODE16 (for node 16)
• For Trident, TRINODE01 (for node 1) through TRINODE32 (for node 32)
IP Address
The IP address property specifies the unique 32-bit network address of the primary
communication module in the Triconex controller.
For a Tricon controller, you must specify this property if the Use 802.2 property is
not selected.
Node Number
The Node Number property specifies the node number which must be unique for
each controller.
For Tricon, the node number must match the physical switch settings on the NCM
or ACM and the node number specified in the TriStation project. Default values are
1 to 16.
For Trident, the node number must match the address plug on the MP Baseplate
and the node number specified in the TriStation project. Default values are from 1
to 32.
Poll Time
The Poll Time property specifies how often the Triconex controller refreshes the
data stored as aliases. The polling interval must be greater than the scan time of the
controller. For more information on aliases, see “Aliases and Tagnames” on
page 39 and the TriStation 1131 Developer’s Guide.
The default is 1,000 milliseconds (one second).
Redundant
The Redundant property specifies whether there are redundant paths to the
controller. If the physical configuration is redundant, select this property.
This means that two network adapter cards must be connected to network ports on
two communication modules, as follows:
• For Tricon, the NET2 port on two ACMs or two NCMs
• For Trident, the NET1 or NET2 port on two CMs
For more information, see “Configuration Requirements for DDE Network
Redundancy” on page 65.
The default is not redundant.
Time Sync
The Time Sync property specifies whether a Triconex node (host) is synchronized
with the clock on the DDE Server PC. If there is more than one Triconex controller
in a network, you should select the master node for synchronization with the DDE
Server PC clock. The master node can then synchronize the time of the other
Triconex controllers.
For time-critical applications, Triconex does not recommend selecting the Time
Sync property because PCs are not generally a reliable source for time
synchronization.
! CAUTION
Do not use the Time Sync property if any other type of synchronization is being
used for your Triconex controllers. For more information, see “Time
Synchronization” on page 125.
LLC SAP
The LLC SAP property specifies the address for the DDE Server on the PC. This
number must be a unique address. The default is 4.
To begin DDE Server operation, save the address in the DDE client application and
start the DDE Server application. Both the client and server applications must be
running concurrently to request or exchange data. The DDE Server sends the
request to the Triconex controller, then returns the data to the DDE client
application.
As an example, the following address could be entered in a blank cell of a
Microsoft Excel worksheet to request the value for alias 40001 in TRINODE02:
=TR1DDE|TRINODE02!‘40001’
Although you can run only one DDE Server application at a time, you can run as
many DDE client applications as allowed by the virtual memory available on your
PC.
For details on syntax for the DDE address, see the user’s manual for the client
application you are using.
View Menu
Command Description
Always on Top Keeps the DDE Server main window on top of other
windows.
Dump Menu
Command Description
Stats Displays statistics for all Triconex controllers.
Help Menu
Command Description
Triconex DDE Server Opens the Help documentation.
Help
About Triconex DDE Displays the current version number of the DDE Server
Server application and registered owner information.
The Triconex OPC Server is available from Triconex and Matrikon. For more
information on the Triconex OPC Server and OPC client applications, see the
Matrikon Web site at www.matrikon.com.
Click node to
display Server
Configuration
Specify the
properties of the
Left and Right CMs
on tab 1 and tab 2
9 Under Protocol Settings, specify the TCP/IP address and other properties of the
Triconex communication module on tab 1.
If your controller includes two communication modules, specify the properties
of the left module and the right module on tabs 1 and 2.
Do not use tabs 3 through 7.
10 To display alias information, select a node under Alias Configuration in the
Current Configuration pane. To make changes to an alias, double-click the alias
row. An Edit Alias dialog box is displayed, as shown in the following screen.
Click node to
display Alias
Configuration.
Double-click
alias row to
edit an alias.
Redundant Configuration
OPC Server can be configured for dual redundancy by using two OPC Server
workstations. Each workstation must include two Ethernet adapter cards, which
must be connected to a Triconex communication module on the primary network
and a Triconex communication module on the redundant network. You must
specify the properties of the redundant Triconex communication modules on the
OPC Server Configuration screen. For a diagram of redundancy which includes
OPC Server, see “Redundant Devices” on page 15.
Peer-to-Peer Communication
This chapter explains how to set up Triconex controllers for communication (with
each other) in a Peer-to-Peer network.
Topics include:
“Overview” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
“Configuring Peer-to-Peer Ports in TriStation” . . . . . . . . . . . . . . . . 80
“Allocating Memory for Sends and Receives” . . . . . . . . . . . . . . . . . 82
“Adding Sends and Receives to Programs” . . . . . . . . . . . . . . . . . . . 83
“Estimating Data Transfer Time” . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
“Restrictions on Data Transmission Speed” . . . . . . . . . . . . . . . . . . . 88
“Monitoring Peer-to-Peer Communication” . . . . . . . . . . . . . . . . . . . 89
“Sample Peer-to-Peer Programs” . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Overview
Triconex Peer-to-Peer protocol is designed to allow multiple Tricon and Trident
controllers in a closed network to exchange safety-critical data. (If you plan to
implement a complex Peer-to-Peer network, please contact Triconex Technical
Support.) To enable Peer-to-Peer communication, you must connect each
controller to an Ethernet network by means of a NET1 (Ethernet) port on the NCM.
The controllers exchange data by using Send and Receive function blocks in their
TriStation applications.
Peer-to-Peer Network
CM CM
Tricon
Controller
NN
MM M CC
P P P MM
A B C 1 2
MP MP
Trident Controller Trident Controller
it sends data. Each Receive function block has a parameter that identifies the Send
function block from which it receives data.
The Send and Receive function blocks can transfer data with BOOL, DINT, or
REAL data types. Some function blocks transfer 20 data values, and others transfer
32 data values. For detailed information about the available Send and Receive
function blocks, see the Triconex Libraries Reference.
Tricon controllers do Peer-to-Peer communication at 10 megabits per second,
however, Trident controllers can do Peer-to-Peer communication at 10 or 100
megabits per second. If your network includes both types of controllers, you can
run the entire network at 10 megabits per second, or you can use a hub that converts
messages from 10 to 100 megabits per second when they are transferred from a
Tricon to a Trident. Triconex suggests using the NET1 port on both Tricon and
Trident communication modules, because 10 megabits per second is the only speed
available on NET1. With this setup, NET2 is available for faster communication
with external devices on an Ethernet network. For more information, see
“Restrictions on Data Transmission Speed” on page 88.
For monitoring Peer-to-Peer data exchange, TriStation provides function blocks
and system aliases to track network communication paths and verify whether your
Ethernet ports are receiving data from other controllers.
The sample programs described in this chapter are in the EXPEER project on the
TriStation CD. These programs show how to send data at high speed and under
controlled conditions, and how to measure the maximum data transfer time.
4 In the Left Slot and Right Slot areas, select the Installed option if an NCM is
installed in the left or right position of a physical slot.
The NET1 port on an NCM is pre-configured for Peer-to-Peer communication,
and operates at 10 megabits per second.For more information, see “Restrictions
on Data Transmission Speed” on page 88.
5 For an NCMG, you can select the option called Global Positioning System
Installed to synchronize the controller to the GPS (Global Positioning System).
In a Peer-to-Peer network, you should select this option only for an NCMG
which acts as the master node.
6 To synchronize this controller with the master node, select the option called On
NET1 enable time synchronization.
If this controller is the master node, you should still select this option.
For more information, see “Time Synchronization” on page 125.
4 Use the arrows in the scroll boxes to set the following properties:
• Maximum Number of Peer-to-Peer Send
• Maximum Number of Peer-to-Peer Receive
The default for both properties is 0, and the maximum value of each is 50.
The _32 ending means that the function block can send 32 data values. Function
block names that do not include the _32 ending can send 20 data values.
All Send function blocks—and all Receive function blocks—have the same
parameters, except for the data transfer parameters which are BOOL, DINT, or
REAL. For detailed descriptions, see the Triconex Libraries Reference.
Send1toNode2
Identifiers for:
Sending Function Block
Receiving Node 21
Receiving Function Block Send1toNode2Status
Recv1FromNode1
Identifiers for:
Receiving Function Block
Sending Node 1
2 Recv1FromNode1Status
Sending Function Block
4 In the Memory Allocation window, scroll down to see the allocations for Input
Points (Read Aliased) and Output Points (Read/Write Aliased).
For each data type (BOOLs, DINTs, and REALs), the Maximum, Allocated,
Forecast, and Current number of aliased variables are displayed.
5 For each data type, add the numbers under Allocated in the Input Points and
Output Points areas, as shown in the following screen.
6 To calculate the Total Bytes of Aliased Variables (TB) in your project, use the
Allocated total for each data type in the following equation.
TB = 376 + (Total BOOLs ¸ 8) + (Total DINTs • 4) + (Total REALs • 4)
7 To estimate the Data Transfer Time (DT) in milliseconds, use the following
equation and table.
DT = (2 • <Larger of TS or SS>) + (2 <Larger of TR or SR>)
Parameter Description
DT Data transfer time in milliseconds, assuming that the
number of active sends is less than or equal to 10.
TB Total bytes of aliased variables allocated for the TriStation
application (see steps 5 and 6).
Parameter Description
TS Time for sending controller to transfer aliased data over the
communication bus in milliseconds.
TS = (TB ÷ 100,000) • 1000
8 If the number of active send requests in your application is greater than 10, you
should adjust the Data Transfer Time (DT) by using the following equation:
DTAdjusted = (Number of Active Send Requests ÷ 10) • DT
9 To calculate the total bytes of aliased variables (TB) which have been allocated
for a receiving controller, repeat steps 1 through 6.
Solution Description
Run the entire network at Data exchange among Triconex controllers can be
10 megabits effectively done at a rate of 10 megabits per second.
Triconex suggests using the NET1 port on both Trident and
Tricon communication modules, because 10 megabits per
second is the only speed available on NET1. With this
setup, NET2 is available for faster communication with
external devices on an Ethernet network.
Convert messages from The data rate can be converted when messages are
10 to 100 megabits transferred from a Tricon controller to a Trident controller.
A typical method is to connect the Tricon and Trident
controllers to a hub which can convert from 10 to 100
megabits. For Trident controllers, another method is to
connect MAUs, which can convert from 10 to 100
megabits, to CM ports.
! CAUTION
A negative scan surplus in your downloaded TriStation application could cause
Peer-to-Peer communication errors. Check the scan surplus using the Diagnostic
Panel. If the scan surplus is less than zero, you must increase the scan time using
the Set Scan Time command in the Control Panel. You should also increase the
scan time in the Tricon System Configuration to make sure the increase is
permanent if you have to another Download All. For instructions, see the
TriStation 1131 Developer’s Guide.
Parameter Description
DT Data transfer time in milliseconds.
TBS Total bytes of aliased variables in the sending node.
TS Time for sending controller to transfer aliased data over
the communication bus in milliseconds.
TS = (TBS ÷ 100,000) * 1000
Modbus Communication
This chapter explains how to set up your Trident system for communication with
Modbus master and slave devices.
Topics include:
“Overview” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
“Physical Features” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
“Configuring Serial Ports in TriStation” . . . . . . . . . . . . . . . . . . . . . . 98
“Programming for Tricon Masters” . . . . . . . . . . . . . . . . . . . . . . . . 105
“Programming for Tricon Slaves” . . . . . . . . . . . . . . . . . . . . . . . . . 111
“Sample Modbus Programs” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Overview
Modbus is an industry-standard master/slave protocol that is traditionally used for
energy management, transfer line control, pipeline monitoring, and other industrial
processes. A serial port on a Triconex module can operate as a Modbus master,
slave, or both. A DCS, operator workstation, or other Modbus device typically acts
as the master while the Tricon serial port acts as the slave.
Serial ports on the EICM provide many choices for communication with Modbus
devices. Each port can operate in a point-to-point connection with a single Modbus
device, or in a multi-point serial link with several Modbus devices. For an
illustration, see “Topology Options” on page 95.
An EICM serial port can act as a master, slave, or combination master/slave with
the following physical features:
• Point-to-point or multi-point topology
• RS-232, RS-422, or RS-485 electrical interface
• 2-wire (half duplex) or 4-wire (full duplex) cables
• Hardware handshake with or without signal delays
For an EICM serial port configured as a master, the associated TriStation
application can use Modbus Read and Write function blocks to communicate with
slave devices, including other Triconex controllers. Programs in external Modbus
master devices can directly access point values in a Triconex controller if the points
have aliases and if write access controls are correctly applied.
A TriStation application normally uses alphanumeric names to identify Triconex
points (program variables). Numeric identifiers called aliases must also be used to
make the point values accessible to external Modbus devices. An alias has five
digits that define its data type and hardware address in the controller.
Function blocks in the Tricon Library allow you to monitor the communication
status of each EICM serial port. The status information includes the number and
kinds of messages received and sent and milliseconds since the last message was
received.
The sample programs described in this chapter are in the EXMODBUS project on
the TriStation CD. These programs show how to use the Modbus Read and Write
function blocks for transmitting aliased data, how to set time-out and retry values
for Modbus communication, and how to control the flow of data from slave to
master. For detailed information, see Appendix D, “Modbus Protocol.”
Physical Features
When connecting an EICM serial port to one or more Modbus devices, you can
select from the following physical features.
Topology Options
An EICM serial port can operate in a point-to-point connection with a single
Modbus device, or in a multi-point serial link with several Modbus devices.
Point-to-Point Connection
Tricon Controller
Modbus Slave
Point-to-Point Connection
MM M
P P P
A B C
Multi-Point Connection
Tricon Controller
Multi-Point Connection
M M M
P P P
A B C
Valid Configurations
A valid configuration of Modbus devices must use one of the following
combinations of physical features.
1 2 3 4 5 6 7 8
O
Port 1 N
Port 2
Port 3
Port 4
Port 5
4 Click the Setup button on the Module tab to display the EICM Configuration
dialog box.
Port Selection
The Port Selection area specifies the serial port to be configured. Use the following
table to select the number that corresponds to the desired port.
For a diagram of the EICM front panel which includes the serial ports, see
“Physical Description” on page 141.
Protocol
The Protocol property specifies the communication mode. For Modbus
communication, select one of the following modes:
• Modbus (slave, ASCII or RTU mode)
• Modbus Master (RTU mode only)
• Modbus Master/Slave (RTU mode only)
For a Modbus slave, you can select the ASCII or RTU mode using the Data Bits
property (described for “Data Bits (ASCII or RTU)” on page 101). For more
information, see “Communication Modes” on page 194.
The TriStation mode can also be selected for ports 1 through 4 and ports 6 through
9. For more information, see “Configuring the TriStation Port” on page 34.
Slave Address
Each serial port which is connected to a Modbus master device must have a
separate Modbus Station Address. Addresses can be 1 to 247.
This property is not available if the EICM serial port acts as a Modbus master.
If the EICM serial port acts as a master, the station address of the slave is specified
in the Modbus Read and Write function blocks. For more information, see
“Programming for Tricon Masters” on page 105.
Baud Rate
The Baud Rate property specifies the data transmission speed.
Select 1200, 2400, 4800, 9600, or 19200.
Stop Bits
The Stop Bits property specifies whether 1 bit or 2 bits are transmitted after each
character.
Parity
The Parity property specifies whether to use parity checking on the transmitted
data.
Odd and Even parity counts the number of 1 bits in a one-byte data item then sets
the parity bit (9th bit) to 0 or 1 to result in an Odd or Even total number of 1 bits.
Mark and Space parity (also called high/low parity) set the parity bit to 1 or 0
regardless of the number of 1 bits in the data item.
Settings include:
• Odd sets the parity bit to 0 or 1 to make the total number of 1 bits odd.
• Even sets the parity bit to 0 or 1 to make the total number of 1 bits even.
• Mark sets the parity bit to 1 for each data item.
Handshake
The Handshake property specifies whether CTS, RTS, and DCD signals are used
to coordinate the timing of data transmission.
Select Hardware for the following configurations:
• Any 2-wire configuration
• Any multi-point configuration that uses the RS-485 electrical interface
Select None for configurations that do not allow or require Hardware Handshake.
To delay the timing of Modbus data transmission, see “Setting Signal Delays for
Hardware Handshake” on page 103.
Modbus Range
The Modbus Range property specifies the numeric range used by a Modbus master.
The defaults are 0 for Min and 32,767 for Max.
Commonly used Min and Max values are 0 to 32,767 for a generic operator
workstation, and 0 to 9,999 for a Honeywell DHP. TriStation allows Min limits as
low as -32,768 and Max limits as high as 32,767. For more information, see the
user’s manual for your Modbus master.
The Modbus Range operates in conjunction with the MinSpan and MaxSpan limits
that apply to individual REAL points, according to the following linear
transformation equation:
(Real Value – MinSpan) · (Modbus Max – Modbus Min)
Modbus Value = ------------------------------------------------------------------------------------------------------------------------------------------ + Modbus Min
(MaxSpan – MinSpan)
For more information, see “Transmitting Real Values with Scaling” on page 115.
Examples
The timing diagram that follows shows how alias numbers 40001 and 40004 are
used for RTS pre-delay and CTS post-delay.
40001 40004
RTS CTS
Pre-delay Post-delay
RTS
Data
The following diagram shows how a sample Modbus Write function block in a
TriStation application is used to program a CTS post-delay.
• MBREAD_BOOL • MBWRITE_BOOL
• MBREAD_DINT • MBWRITE_DINT
• MBREAD_REAL • MBWRITE_REAL
• MBREAD_REAL_TRD • MBWRITE_REAL_TRD
Read and Write function blocks of types BOOL and DINT can transmit 32 data
values. Read and Write function blocks of type REAL can transmit 25 data values.
The Tricon controller supports BOOL, 32-bit DINT (double integer) and 32-bit
REAL numbers, but traditional Modbus protocol supports only Booleans and 16-
bit integers. For this reason, the Tricon Library provides function blocks which
perform the necessary numeric conversions for integer and REAL values. The
sections beginning on page 106 provide guidelines for use of these function blocks.
For detailed information, see the Triconex Libraries Manual. For examples, see
“Sample Modbus Programs” on page 120.
Slave
Station 2
TriStation Programming
for Modbus Master Port
Starting Alias 1
31001
Serial Port Number 32
1
Slave Station Address 2
Slave
Station 2
TriStation Programming
for Modbus Master Port
Starting Alias
Tricon Controller
Modbus Master
Alias 41001 for
Real Variable
Modbus Reads
Integer - 16 Most Significant Bits Special Alias 42001
Tricon Controller
Modbus Master
Alias 41001 for
Real Variable
Modbus Writes
Integer - 16 Most Significant Bits Special Alias 42001
Tagname
Byte 0 1 0 1
Bit 31 22 15 0
Sign of Fraction
Note Modbus Min and Modbus Max in the following equations and graphs refer
to the Min and Max limits of the Modbus Range property in the EICM
configuration dialog box for a serial port.
Tricon Controller
Modbus Master
Modbus Write
Modbus Integer 15337 Scaling
(MaxSpan – MinSpan)
Real Value = ------------------------------------------------------------------------- ´ (Modbus Value – Modbus Min) + Minspan
(Modbus Max – Modbus Min)
Real
Value
Min Span
16-bit Integer
Modbus Modbus (Modbus Value)
Min Max
Tricon Controller
Modbus Master
Modbus Read
Modbus Integer 15337 Scaling
16-bit Integer
Modbus
Min
Real Value
Min Span Max Span
5 For Modbus Range, verify that the Min and Max limits apply to the Modbus
master. If not, make the necessary adjustments.
To determine the appropriate Min and Max limits for your application, see the
user’s manual for your Modbus master. Commonly used values are 0 to 32,767
for a generic operator workstation, and 0 to 9,999 for a Honeywell DHP.
TriStation allows Min limits as low as -32,768 and Max limits as high as 32,767.
6 Click OK to close the configuration dialog box.
7 In the Tricon Point Connections window, select the desired REAL tagname and
open the Properties dialog box.
8 For Span Calibration, enter Min Span and Max Span values for the variable.
9 For Number of decimal places to display, enter the desired value and click the
Confirm button.
Repeat steps 7 through 9 for other REAL points as required by your application.
This chapter describes the time synchronization and printing features that can be
used with Tricon controllers.
Topics include:
“Overview” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
“Time Synchronization” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
“Parallel Printing” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Overview
This chapter describes the time synchronization and printing features that can be
used with Tricon controllers.
Time Synchronization protocol allows networks of Tricon and Trident controllers
to be synchronized with each other, and optionally, with external devices. In
addition, a Tricon controller with an NCMG module can receive time adjustments
from the Global Positioning System (GPS) by using the Trimble Acutime 2000
Synchronization Kit.
A Tricon controller can send brief ASCII text messages to a printer that is
connected to a parallel port on an EICM. The printer must be compatible with the
Centronics interface provided by the EICM parallel port. A TriStation application
must include print function blocks to send messages to a printer.
Time Synchronization
If you have multiple Triconex controllers on an Ethernet network, you can
synchronize their time with:
• The master node (the controller with the lowest node number)
• An external device, such as an OPC client, that writes time values to a
TriStation project
• The Global Positioning System (GPS)
• A combination of the master node and an external device or the GPS
The following sections provide more information about these strategies and
instructions for setting the Tricon clock and setting time synchronization properties
on the communication modules.
! CAUTION
In a network of Triconex controllers, all controllers with low node numbers should
be configured for time synchronization. If a Trident controller becomes the master
node but is not configured for time synchronization, none of the controllers in the
network can be synchronized.
! CAUTION
To ensure the accuracy of GPS time adjustments, the Tricon clock must be set to
within 10 minutes of the correct local time. For instructions, see “Setting the
Controller Clock” on page 130.
Redundant Configuration
The GPS feature can be used in a redundant configuration which requires two
NCMG modules and two Acutime 2000 Synchronization Kits, as shown in the
following diagram. Typically, the left (primary) NCMG adjusts the time. The right
(redundant) NCMG begins to adjust the time if the left NCMG detects a problem
with its Acutime kit or if communication with the left module fails.
Several types of faults can cause the Tricon to switch control to the redundant
NCMG module. The following situation is an example. Each NCMG module
requests an event timestamp from the Acutime kit every 10 seconds. If the event is
not received within 5 seconds, the Tricon assumes there is a failure in the NCMG
or the Acutime kit and switches control to the redundant NCMG module. For more
information, see the Acutime 2000 Smart Antenna User Guide.
Global Positioning
Satellite
RS-485 Cables
Up to 1000 Ft
Tricon Controller
SIMs
RS-232 Cables
M M M
P P P
Up to 25 Ft
A B C
Serial Ports On
Redundant NCMGs
Combination Schemes
In a typical configuration, Triconex controllers on a network are synchronized with
the master node. In addition, the master node can accept time adjustments from an
external device so that the external time prevails for all controllers on the network.
Examples of external time sources are an OPC client and the GPS.
! CAUTION
In a network of Triconex controllers, all controllers with low node numbers should
be configured for time synchronization. If a Trident controller becomes the master
node but is not configured for time synchronization, none of the controllers in the
network can be synchronized.
1 On the TriStation PC, right-click the time icon in the message bar or open the
Date/Time dialog box from the Control Panel.
2 Ensure that the time is set to the correct local time.
3 Open the TriStation application that is running in the controller which will
receive time adjustments from the GPS.
4 From the Tricon menu, select the Control Panel.
5 From the Commands menu, select the Connect command.
6 From the Commands menu, select the Set Calendar Clock command and click
Yes when the prompt asks whether you want to Set Calendar Clock the current
configuration.
The Tricon clock is now set to the PC time, that is, to the correct local time.
Time
synchronization
properties
None
Select this property if you do not want to use time synchronization.
Time
synchronization
properties
5 For an NCMG, you must select the property called Global Positioning System
Installed to synchronize the controller with the GPS (Global Positioning
System).
In a Peer-to-Peer network, you should select this property only for a master node
NCMG.
6 Select the property called On NET1 enable time synchronization to synchronize
this controller with the master node in a Peer-to-Peer network.
If this controller is the master node, you should still select this property.
Parallel Printing
A Tricon controller can send brief ASCII text messages to a printer that is
connected to a parallel port on an EICM. These messages are typically used for
alarms, status and maintenance. The printer must be compatible with the
Centronics interface provided by an EICM parallel port.
To send messages to a printer, a TriStation application must include standard print
function blocks. Print messages are typically used for alarms, status and
maintenance. A sample alarm message might include the name of an analog input
point, its timestamp and value, and a statement that the value is out of range.
Alarm printing is an economical solution for a closed Tricon system which
includes only four or five modules. When the Tricon system is larger or connected
to a DCS, alarms are typically displayed by an operator workstation.
minimize this problem by limiting the amount of printer output. If this is not
possible due to application requirements, you should use an event logger on a PC
for printing. Triconex provides the SOE Recorder utility for this purpose which is
described in the SOE Recorder User’s Guide.
Printing Setup
A Centronics-compatible printer is connected to the EICM using a standard PC
printer cable, as shown in the following diagram. The maximum cable length is 5
to 6 meters (15 to 20 feet), depending on the quality of the cable. For pin-out
information, see the EICM User’s Guide.
Tricon Controller
Centronics-Compatible
M M M Printer
P P P
A B C
Standard
Printer Cable
Parallel Port 5
on EICM
EICM Capabilities
This appendix describes the operation and physical characteristics of the Enhanced
Intelligent Communication Module (EICM) for the Tricon controller.
Topics include:
“EICM Operation” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
“Physical Description” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
EICM Operation
The Enhanced Intelligent Communication Module (EICM) enables communica-
tion with the following devices:
• Modbus masters and slaves
• Other Triconex controllers
• TriStation PC
• Centronics-compatible printers
Each EICM has four serial ports and one parallel port which can operate
concurrently. The four serial ports are uniquely addressed and can be used for
Modbus or TriStation communication. Modbus communication can be performed
in either RTU or ASCII mode. The parallel port provides a Centronics interface to
a printer.
A Tricon controller supports up to two EICMs which must reside in one logical
slot. This arrangement provides a total of eight serial ports and two printer ports.
The hot-spare feature is not available for the EICM. However, you can connect
redundant devices to ports on two EICMs in the same logical slot. For more
information, see “Redundant Devices” on page 15.
Each EICM supports an aggregate data rate of 57.6 kilobits per second, that is, the
total data rate for all four ports must be less than or equal to 57.6 kilobits per
second. Each EICM port provides 500 volts DC isolation between the external
signals and Tricon logic ground.
Any standard Modbus device can communicate with the Tricon controller by
means of the EICM, provided that aliases are assigned to the program variables.
For more informations, see “Aliases and Tagnames” on page 39.
Message Processing
As shown in the following diagram, EICM modules communicate with the Main
Processors (MPs) by means of the triplicated COMM Bus. The COMM Bus has
three channels (one for each MP) which are connected to each EICM module.
A message received by an EICM port is passed to all three MPs over the COMM
Bus. The TriBus votes on the message before sending it to the MPs for processing,
and returns the response to the COMM Bus after processing is complete. The
COMM Bus then forwards the response to the EICM port.
MP A
TriBus
TriBus
TriBus
MP B MP C
Left Serial 1
Position Serial 2
EICM Serial 3
Serial 4
Comm
Bus Leg C
Serial 1
Comm Bus Leg B Right
Serial 2
Position
Serial 3
EICM Serial 4
Comm Bus Leg A
TriStation Messages
1 Receives the message and transmits it to the MPs over the COMM Bus
2 Votes the message request with other MPs over TriBus
3 Receives the message from the COMM Bus, processes the message and
transmits a response
3 Receives the message from the COMM Bus, processes the message and
transmits a write confirmation response
Physical Description
Each EICM includes four serial ports and one parallel port with indicators that
blink when data is being transmitted and received.
Feature Specification
Physical features RS-232, RS-422 or RS-485 electrical interface
Other options are configurable from TriStation.
Connectors Male DB-25-pin, DTE standard, shielded
RS-232 maximum cable length 15 m (50 ft)
RS-422 maximum cable length 1.2 km (4,520 ft)
RS-485 maximum cable length 1.2 km (4,520 ft)
Data transmission rates 1200, 2400, 4800, 9600, or 192,000 Kbits per second
Protocols Master, slave, or master/slave
RTU or ASCII mode
Galvanic isolation 500 V DC
Logic power < 10 W
PASS
FAULT
ACTIVE
1TX
1RX
Serial Port #1
for Modbus interface
2TX
2RX
Serial Port #2
for Modbus interface
3TX
3RX
Serial Port #3
for Modbus interface
4TX
4RX
Serial Port #4
for TriStation
or Modbus
PRT
Parallel Port #5
for Centronics-
compatible printer
EICM
4119
04 09
05 10 Centronics-compatible
Parallel
parallel printer
Ports 4 and 9 are the defaults for TriStation connection, although Ports 1 through 3
and Ports 6 through 8 can also be used for TriStation.
Protocols Supported
Ports on the EICM support the following protocols.
For summary information about the protocols, see Chapter 1, “Introduction.” For
detailed information, see the related chapters and appendices.
This appendix describes the operation and physical characteristics of the Network
Communication Module (NCM) and the Network Communication Module for
GPS Time Synchronization (NCMG).
Topics include:
“NCM Operation” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
“Physical Description” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
NCM Operation
The NCM and NCMG are optional modules for the Tricon controller that can
communicate with other Triconex controllers, with external devices on Ethernet
networks, and with the Global Positioning System (GPS). The NCM and NCMG
support several Triconex protocols and applications and client/server applications
from other manufacturers.
The NCM provides two BNC connectors as ports with the following capabilities:
• NET1 supports Peer-to-Peer protocol for safety networks comprised of
Triconex controllers only.
• NET2 supports open communication with external devices on an Ethernet
network. These devices can include PCs which are running Triconex
applications such as TriStation, SOE Recorder, OPC Server, and DDE
Server or user-written applications.
The NCMG also provides an RS-232 serial port which can be connected to the
Trimble Acutime 2000 Synchronization Kit for GPS time synchronization.
The Tricon controller supports two NCMs or NCMGs in one logical slot, or one of
these modules in the COM slot. If two modules are in one slot, they function
independently, not as hot spares. Each module can be connected to a separate
network, or both can be used in a redundant configuration. For more information,
see “Redundant Devices” on page 15.
The NCM and NCMG are compatible with the IEEE 802.3 electrical interface and
operate at communication speeds up to 10 megabits per second. The modules
connect with external host devices by means of 10Base2 coaxial cabling at typical
distances up to 185 meters (607 feet). Distances up to 4,000 meters (2.5 miles) are
possible using repeaters and standard (thick-net or fiber-optic) cabling.
The Main Processors typically refresh data on the NCM and NCMG once per scan.
Message Processing
Note Throughout this section, the name NCM represents both the NCM and the
NCMG modules.
As shown in the following diagram, NCM ports communicate with all three MPs
by means of the COMM Bus. Each NCM supports two COMM Buses—a left bus
and a right bus—so that a fault on one NCM will not affect the other NCM.
MP A
TriBus
TriBus
TriBus
MP B MP C
Left
Position NET1 Ethernet - 10Base2
NET2 Ethernet - 10Base2
NCM
Comm
Bus Leg C
Comm Bus Leg B Right
Position NET2 Ethernet - 10Base2
NET2 Ethernet - 10Base2
NCM
Comm Bus Leg A
A message received by a NCM port is passed to all three MPs over the COMM Bus.
The TriBus votes on the message before sending it to the MPs for processing, and
returns the response to the COMM Bus after processing is complete. The COMM
Bus then forwards the response to the NCM port.
The NCM processes messages as described in the following sections.
Physical Description
An NCM includes two Ethernet ports which operate at 10 megabits per second. An
NCMG also includes an RS-232 serial port for communication with the GPS.
Specifications
The following specifications apply to both the NCM and NCMG, except for the
serial port which is functional on the NCMG only.
Feature Specification
Ethernet ports Two BNC connectors that require 10Base2 coaxial
cables
External transceiver ports Reserved
Serial port One RS-232 connector for GPS time synchronization
Maximum cable length is 15 m (50 ft)
Galvanic isolation 500 V DC (applies to Ethernet and serial ports)
Protocols supported See “Protocols Supported” on page 151.
Communication speed 10 Mbps
Status indicators
Module status Pass, Fault, Active
Port activity TX (Transmit) — 1 per port
RX (Receive) — 1 per port
Logic power < 20 W
Front Panels
The following illustration shows ports and indicators on the front panels of the
NCM and NCMG modules.
PASS PASS
15 Pin D Connector
(Reserved)
TX TX
RX RX
15 Pin D Connector
(Reserved)
COMM COMM
TX TX
RX RX
RS-232 Serial Port
(25-Pin D Connector)
Reserved on NCM
NCM NCM
4329G 4329
Communication Indicators
The NCM and NCMG have yellow TX and RX indicators for the NET1 and NET2
Ethernet ports and for the COMM serial port. TX blinks each time an NCM port
transmits a message and RX blinks each time an NCM port receives a message
from an external device. If a TX indicator stops blinking, the NCM module or the
controller could have a problem. If an RX indicator stops blinking, the external
device could have a problem.
Protocols Supported
Ports on the NCM and NCMG support the following protocols.
For summary information about the protocols, see Chapter 1, “Introduction.” For
detailed information, see the related chapters and appendices.
TSAA Protocol
Overview
Triconex System Access Application (TSAA) protocol is a messaging protocol
which provides message formats used in application programs that read and write
data to Triconex controllers. TSAA is based on a client/server model which allows
a client to request information from an external device using a server application.
You can use TSAA to develop the following types of applications:
• Control (Read/Write) Applications, such as an operator interface station,
that require access to the status of the Triconex controller and the ability to
write data to the controller
• Monitor (Read-Only) Applications, such as SOE Recorder, that receive data
from the controller
Little-Endian Ordering
The Tricon controller uses little-endian ordering which means that data is ordered
with the most significant bits and bytes to the right.
Byte 1 Byte 0
Big-Endian Ordering
The Trident controller uses big-endian ordering which means that data is ordered
with the most significant bits and bytes to the left.
Byte 0 Byte 1
• For Trident only, by retrieving the information from the controller with the
TSAA message TRICON_GET_SYMBOL_REQ.
Size in
Field Name Description
Bytes
Tricon_Symbol_Table field Identifies the entries in the table. Includes the
following fields:
4 numberOfEntries • Number of Tricon_Symbol_Entry records in
the symbol table.
4 stringOffset • Not currently used.
4 checksum • Reserved.
Tricon_Symbol_Entry fields Identifies a specific entry; can include multiple
entries. Includes the following fields:
4 nameOffset • Number of bytes offset from the string area
where the tagname for a symbol is stored.
4 binNumber • Bin number for the item.
4 rfu • Reserved.
2 binOffset Number of units from the beginning of the bin to
the location of the item.
• For discrete data types, the unit is number of
bits.
• For integer and real, the unit is the number of
32 bit words.
2 mbNoConversion If true (1), floating point numbers are not
converted to integers.
If false (0), they are converted.
1 mbStation Modbus station ID for a Modbus slave. (Slaves
only respond to messages with their station ID.)
2 mbAlias Alias number for a variable stored in a slave.
Size in
Field Name Description
Bytes
Strings field Tagnames.
CRC field Reserved.
TSAA Messages
A TSAA message is a request made by a client or a response made by the Triconex
controller. This section describes the format of TSAA messages and the available
types of messages. In this document, the words frame and message mean the same
thing—a unit of data that is transmitted through a network.
Message Format
Each TSAA message adheres to a format which includes the following fields:
• A frame header which identifies the message
• A data area which contains the frame message
• A 32-bit Cyclic Redundancy Check (CRC)
Frame Header
The frame header in a TSAA message includes the following fields.
Type
The Type field in the frame header identifies the message type. The following types
of TSAA messages are available.
Request Triconex
Type Message Type Description from Response
Client
1 TRICON_DATA Returns data in response to a type 2 ü
message.
2 TRICON_DATA_REQ Requests data from the TriStation ü
application.
3 WRITE_TRICON_DATA Requests the controller to write to ü
memory and output variables in the
TriStation application.
4 WRITE_TRICON_DATA_RSP Responds to a request to write to ü
memory and output variables by a
type 3 message.
5 READ_TRICON_CLOCK Requests the current time on the ü
controller clock.
6 READ_TRICON_CLOCK_RSP Returns the current time on the ü
controller clock in response to a
type 5 message.
7 SET_TRICON_CLOCK Requests setting of the controller ü
clock.
8 SET_TRICON_CLOCK_RSP Responds to a request to set the ü
clock made by a type 7 message.
9 ADJUST_TRICON_CLOCK Requests controller to adjust clock ü
forward or backward.
Request Triconex
Type Message Type Description from Response
Client
10 ADJUST_TRICON_CLOCK_RSP Responds to a request to adjust the ü
clock made by a type 9 message.
11 READ_TRICON_DATA Requests data (memory, input, or ü
output variables) to be read from
the TriStation application.
12 READ_TRICON_RSP Returns variable data in response ü
to a type 11 message.
13 TRICON_SOE_REQ Requests SOE (sequence of events) ü
data from the controller.
14 TRICON_SOE_RSP Returns SOE data in response to a ü
type 13 message.
15 TRICON_CPSTATUS_REQ Requests the TriStation application ü
name and version number.
For Triconex internal use only.
16 TRICON_CPSTATUS_RSP Returns program information in ü
response to a type 15 message.
For Triconex internal use only.
17 TRICON_SOE_DATAAVAIL Sends a message to the client when ü
SOE data is available. The message
is sent when SOE data is put into
an empty SOE block and every 10
seconds while there is data
available in any block.
22 TRICON_GET_SYMBOL_REQ Requests part of a symbol table ü
from the controller.
For Trident only.
23 TRICON_GET_SYMBOL_RSP Sends part of a symbol table as ü
requested by a type 22 message.
For Trident only.
nodeNumber
The nodeNumber field identifies the destination node number for the message
which is the node number for the Triconex controller.
seqNum
The seqNum field identifies the number of the message in a multiple-message
response. This field can help determine if there are missing messages.
version
The version field identifies the version number of the protocol used by the sender:
• For Tricon, the number must be 0.
• For Trident, the number must be 1.
flag
The flag field is a bit field that indicates the first or last frame of a response.
• 0x01 identifies the first frame of a multi-frame message.
• 0x02 identifies the last frame of a multi-frame message.
• 0x03 identifies a single frame message.
id
The id field assigns a number to a request and associated response. If a client makes
periodic requests of the same message type and wants to associate them with the
responses, this field can be used to assign an identifier. The request and response
use the same identifier.
length
The length field identifies the length of the frame excluding the CRC32 field.
TRICON_DATA (Type 1)
A TRICON_DATA message replies to a request for data made by a
TRICON_DATA_REQ (type 2) message. If the client sends a data request at least
once every two minutes, the controller continues sending data responses at the
interval specified by the request.
If more than one client sends a TRICON_DATA_REQ to a controller, the
controller response changes to a UDP broadcast which is sent to all the clients.
This message includes the following fields.
Data_Hdr
The Data_Hdr field includes the following fields.
numberOfBlocks
The numberOfBlocks field identifies the number of blocks in the data portion of
the message.
Bin Headers
A TRICON_DATA (Type 1) message can have multiple bin headers followed by
bin data. Each bin header includes the following fields.
bin
The bin field identifies which bin holds the message data, using a numeric value to
represent the variable type and data type.
For Tricon
For Trident
totalLength
The totalLength field indicates the length of the bin.
offset
The offset field identifies the starting position of the requested data in the bin.
• For discrete data types, the offset is the number of bits.
• For integer and real data types, the offset is the number of 32-bit words.
length
The Length field contains the length of the data returned.
TRICON_DATA_REQ (Type 2)
A TRICON_DATA_REQ message requests one or more bins of data from a
Triconex controller. The controller responds with a TRICON_DATA (type 1)
message. If the client sends a data request at least once every two minutes, the
controller continues sending data responses at the interval specified by the request.
The data request message is designed for applications that require all of the data in
one or more bins. After the request is sent, the controller continuously sends data
responses to the client at specified intervals. The client cannot stop the controller
from sending data, but the controller will stop sending data if a data request is not
received again within two minutes.
If you use TCP protocol (or UDP protocol with connect and disconnect functions),
you must leave the connection open for a minimum of two minutes after sending
this request. If your application requires specifying the range of data, use
READ_TRICON_DATA (type 11).
This message includes the following fields.
Data_Req_Hdr
The Data_Req_Hdr field contains the following fields.
binsRequested reqTime
2 bytes 2 bytes
binsRequested
The binsRequested field is a binary mask that identifies which bins of data the
Triconex controller should send.
If the request includes an invalid bin number, the response is a bin header with no
data.
reqTime
The reqTime field indicates the time in milliseconds between broadcasts of the
requested bins. For example, a value of 1,000 causes a Triconex controller to
broadcast the data once per second. If this value is zero (0), the controller
broadcasts the data each time the ACM or NCM (Tricon) or CM (Trident) is
updated.
WRITE_TRICON_DATA (Type 3)
A WRITE_TRICON_DATA message requests the Triconex controller to write
data to output and memory variables in the TriStation application. The following
conditions must be met for the controller to accept this request:
• The variables must be defined as read/write.
• For Tricon, the keyswitch must be in the Program or Remote position. For
Trident, the Remote mode must be enabled by setting a system attribute.
• The TriStation configuration setting (Disable Remote Changes to Outputs)
which was downloaded to the controller must allow remote changes. (This
setting only affects changes to discrete outputs and analog outputs.)
• The TriStation configuration for the ACM or NCM (Tricon) and CM
(Trident) must be configured as read/write.
If the controller cannot write the data, it sends a reject response code. For more
information, see “Response Codes” on page 189.
This message includes the following fields.
Write_Hdr
The Write_Hdr contains the following fields.
numberOfBlocks rfu
2 bytes 2 bytes
reserved
numberOfBlocks
The numberOfBlocks field indicates the number of write data blocks for the
message type.
Write_Data
The Write_Data field includes the following fields.
binNumber
The binNumber field indicates the number of the bin to be changed.
offset
The offset field identifies the starting position of the requested data in the bin.
• For discrete data types, the offset is the number of bits.
• For integer and real data types, the offset is the number of 32-bit words.
numberOfValues
The numberOfValues field indicates the number of variables to be written starting
at the specified offset.
Values
The Values field contains the values for the variables to be changed. Discrete
variables require one byte each for the new value (0 or 1).
WRITE_TRICON_DATA_RSP (Type 4)
A WRITE_TRICON_DATA_RSP message replies with a success or failure code
to a request to write data sent by a WRITE_TRICON_DATA (type 3) message.
This message includes the following fields.
responseCode
The responseCode field indicates the success or failure of the request. A value of
zero (0) indicates the request was successfully completed.
For more information, see “Response Codes” on page 189.
subReason
The subReason field contains additional information about the failure of the
request.
READ_TRICON_CLOCK (Type 5)
A READ_TRICON_CLOCK message requests the current time on the Triconex
controller. The controller responds with READ_TRICON_CLOCK_RSP (type 6)
which sends the current time to the client.
There are no fields specific to this message.
Frame_Hdr CRC
8 bytes 4 bytes
READ_TRICON_CLOCK_RSP (Type 6)
A READ_TRICON_CLOCK_RSP message sends the current controller time to
the client in response to a READ_TRICON_CLOCK (type 5) request.
This message includes the following fields.
Read_Clock_Rsp
The Read_Clock_Rsp field includes the following fields.
ResponseCode
The responseCode field indicates the success or failure of the request. A value of
zero (0) indicates the request was successfully completed.
For more information, see “Response Codes” on page 189.
subReason
The subReason field contains additional information about the failure of the
request.
relSec
The relSec field indicates the current Triconex system time expressed in relative
seconds.
• For Tricon, relative seconds are seconds past 00:00 January 1, 1970 based
on local time.
• For Trident, relative seconds are seconds past 1970 based on universal time
(Greenwich Mean Time). (2000 is the earliest date and 2050 is the latest
date.)
milliSec
The milliSec field indicates the millisecond portion of the Triconex system time.
SET_TRICON_CLOCK (Type 7)
A SET_TRICON_CLOCK message requests the time to be set on the Triconex
controller. The controller responds with a SET_TRICON_CLOCK_RSP (type 8)
message.
The following conditions must be met for the controller to accept this request:
• For Tricon, the keyswitch must be in Program mode.
• For Trident, the operational mode must be set to Program.
For Tricon only, the controller does not allow an application or an external device
to set the time continuously. At least five minutes must pass before the controller
responds to a SET_TRICON_CLOCK message. If the application sends this
message before five minutes pass, the message is rejected.
This message includes the following fields.
Set_Clock
The Set_Clock field includes the following fields.
relSec
The relSec field contains the controller system time expressed in relative seconds.
• For Tricon, relative seconds are seconds past 00:00 January 1, 1970 based
on local time.
• For Trident, relative seconds are seconds past 1970 based on universal time
(Greenwich Mean Time). (2000 is the earliest date and 2050 is the latest
date.)
milliSec
The milliSec field contains the millisecond portion of the system time.
SET_TRICON_CLOCK_RSP (Type 8)
A SET_TRICON_CLOCK_RSP message replies with a success or failure code to
a SET_TRICON_CLOCK (type 7) message.
This message includes the following fields.
Set_Clock_Rsp
The Set_Clock_Rsp field contains the following fields.
responseCode
The responseCode field indicates the success or failure of the request. A value of
zero (0) indicates the request was successfully completed.
For more information, see “Response Codes” on page 189.
subReason
The subReason field contains additional information about the failure of the
request.
ADJUST_TRICON_CLOCK (Type 9)
An ADJUST_TRICON_CLOCK message requests the time to be adjusted on the
Triconex controller either forward or backward. The controller responds with an
ADJUST_TRICON_CLOCK_RSP (type 10) message.
The following conditions must be met for the controller to accept this request:
• For Tricon, the keyswitch must be in Program mode.
• For Trident, the operational mode must be set to Program.
For Tricon only, the controller does not allow an application or an external device
to set the time continuously. At least five minutes must pass before the controller
will respond to a SET_TRICON_CLOCK message. If the application program
sends this message before five minutes pass, the message is rejected.
This message includes the following fields.
Adjust_Clock
The Adjust_Clock field includes the following fields.
AdjustSeconds AdjustMilliseconds
4 bytes 4 bytes
signed signed
AdjustSeconds
The AdjustSeconds field contains the number of seconds to adjust the controller
clock either forward or backward.
AdjustMilliseconds
The AdjustMilliseconds field contains the number of milliseconds to adjust the
controller clock either forward or backward.
Adjust_Clock_Rsp
The Adjust_Clock_Rsp field contains the following fields.
responseCode
The responseCode field indicates the success or failure of the request. A value of
zero (0) indicates the request was successfully completed.
For more information, see “Response Codes” on page 189.
subReason
The subReason field contains additional information about the failure of the
request.
Read_Hdr
The Read_Hdr field includes the following fields.
numberOfBlocks rfu
2 bytes 2 bytes
reserved
numberOfBlocks
The numberOfBlocks field indicates the number of Read_Data blocks for this
message.
Read_Data
The Read_Data field includes the following fields.
binNumber
The binNumber field contains the number of the bin to be read.
offset
The offset field identifies the starting position of the requested data in the bin.
• For discrete data types, the offset is the number of bits.
• For integer and real data types, the offset is the number of 32-bit words.
If the numberOfValues field is zero (0), this field is ignored.
numberOfValues
The numberOfValues field contains the number of variables to be read from the
bin. If the number is zero (0), all of the data in the bin is returned.
Read_Rsp_Hdr
responseCode
The responseCode field indicates the success or failure of the request. A value of
zero (0) indicates the request was successfully completed.
For more information, see “Response Codes” on page 189.
subReason
The subReason field contains additional information about the failure of the
request.
numberOfBlocks
The numberOfBlocks field indicates the number of Read_Data_Rsp blocks in the
message.
Read_Data_Rsp
The Read_Data_Rsp field includes the following fields.
binNumber
The binNumber field contains the number of the bin to be read.
offset
The offset field contains the number of variables from the beginning of the bin.
• For discrete data types, the offset is the number of bits.
• For integer and real data types, the offset is the number of 32-bit words.
numberOfValues
The numberOfValues field indicates the number of variables that are read starting
at the specified offset.
Data
The Data field contains data from the bin.
• For Tricon, the data is ordered in little-endian format.
• For Trident, the data is ordered in big-endian format.
For more information about Trident data, see “Symbol Table Information (Trident
Only)” on page 155.
Frame_Hdr
The Frame_Hdr field includes the following fields.
soeNumber
The soeNumber field contains the SOE block number which can be 1 to 16. (SOE
blocks are configured in TriStation.)
firstFlag
The firstFlag field indicates whether this is the first data request for this SOE block.
This value should be set to one (1) for the first request. For all subsequent requests,
it should be set it to zero (0).
ackFlag
The ackFlag field indicates whether the last TRICON_SOE_RSP message was
received correctly. If the message was received correctly, set the field to one (1). If
not, set it to zero (0).
getIndex
The getIndex field is a pointer into the SOE data block that indicates the start of the
data being requested.
wrapCount
The wrapCount field indicates the number of times the buffer has been filled since
the last time the TriStation application issued an SOECLR command for this block.
generation
The generation field indicates the number of times the TriStation application has
issued the SOECLR command.
Soe_Rsp
The Soe_Rsp field includes the following fields.
soeNumber
The soeNumber field indicates the number of the SOE block.
responseCode
The responseCode field indicates the success or failure of the request. A value of
zero (0) indicates the request was successfully completed.
For more information, see “Response Codes” on page 189.
subReason
The subReason field identifies the subcode for the request. Used for debugging.
nextIndex
The nextIndex field is a pointer into the SOE data block that indicates the start of
the data being requested.
numberOfEntries
The numberOfEntries field indicates the number of entries in the response. There
are two types of entry: time stamp and event data. For more information, see “entry
(SOE Data Entry)” on page 180 and “entry (SOE Time Stamp)” on page 182.
wrapCount
The wrapCount field indicates the number of times the buffer has been filled since
the last time the TriStation application issued an SOECLR command for this block.
generation
The generation field indicates the number of times the TriStation application has
issued the SOECLR command.
offset
The offset field contains the number of variables from the beginning of the bin.
• For discrete data types, the offset is the number of bits.
• For integer and real data types, the offset is the number of 32-bit words.
dataType
The type field identifies the data type of the SOE entry with a numeric value.
bin
The bin field identifies which bin holds the message data, using a numeric value to
represent the variable type and data type.
For Tricon
For Trident
type
The type field indicates whether the entry is an SOE time stamp or an SOE data
entry.
• If 1, the entry is a time stamp.
• If 2, the entry is a data entry.
soeNumber
The soeNumber field identifies the SOE block number.
value
The value field contains the value of the aliased variable. If On, it is 0x00000001;
if Off, it is 0x00000000.
microseconds
The microseconds field contains the microseconds part of the time stamp which
can be from 0 to 999,999.
reason
The reason field indicates the reason a time stamp entry was made. The reasons are
described in the following table.
Value Reason
1 SOESTRT command processed.
2 SOESTOP command processed or buffer full for First Out block.
3 SOECLR command processed.
4 Event has been detected. It can be collected from the Entry field of the
TRICON_SOE_RSP message.
type
The type field indicates whether the entry is an SOE time stamp or an SOE data
entry.
• If 1, the entry is a time stamp.
• If 2, the entry is a data entry.
soeNumber
The soeNumber field identifies the SOE block number.
second
The second field contains the seconds part of the time stamp which can be from 0
to 59.
SoeDataAvail
The SoeDataAvail field includes the following fields.
putIndex
The putIndex field contains a pointer to the last data available in the SOE data
block.
firstIndex
The firstIndex field contains a pointer to the beginning of the available data in the
SOE data block.
size
The size field contains the number of entries in the block. The block size is
specified in TriStation.
state
The state field contains a number representing the status of the SOE block. The
states are as follows:
0 Block is not defined or block is not started.
1 Block is collecting.
2 Block is stopped or cleared.
3 Block is full.
wrapCount
The wrapCount field contains the number of times the buffer has been filled since
the last time the TriStation application issued an SOECLR command for this block.
generation
The generation field contains the number of times the TriStation application has
issued the SOECLR command.
Tricon_Get_Symbol
The Tricon_Get_Symbol field includes the following fields.
totalSize
The totalSize field must be set to zero (0).
offset
The offset field identifies the starting position of the requested data in the symbol
table.
• For discrete data types, the offset is the number of bits.
• For integer and real data types, the offset is the number of 32-bit words.
Symbol_Table_Rsp
The Symbol_Table_Rsp field includes the following fields.
responseCode
The responseCode field indicates the success or failure of the request. A value of
zero (0) indicates the request was successfully completed.
For more information, see “Response Codes” on page 189.
subReason
The subReason field identifies the sub code for the request. Used for debugging.
totalSize
The totalSize field identifies the total size of the symbol table.
offset
The offset field identifies the starting position of the requested data in the symbol
table.
• For discrete data types, the offset is the number of bits.
• For integer and real data types, the offset is the number of 32-bit words.
Length
The Length field contains the length of the data returned.
symbolVersion
The symbolVersion field contains the version of the symbol table which is the same
TriStation application version.
After conversion to little-endian format on the client PC, this is a 32 bit number
with the following format:
MMMMnnn: where MMMM is the 16 bit major version number and nnnn is the
TriStation application minor version number.
Data
The Data field contains the part of the symbol table returned by the controller. The
size of this field is defined by the length of the Symbol_Table_Rsp field. The
maximum size is 480 bytes.
Response Codes
Every response sent by a Triconex controller in reply to an external device includes
a code which indicates the result of the request. A response code of zero (0)
indicates the message was successful. Other codes indicate specific errors.
Code Description
0 Request was successful.
1 No buffer available to process the request. Retry the request.
2 Bin number specified in the request was not in the range from 0 to12.
3 For Tricon, the NCM is busy processing previous requests and cannot accept
another request. This can happen if more than four WRITE_TRICON_DATA
requests are outstanding at one time.
4 No MP is running.
5 TSX has rejected the request. The subReason field contains the specific
reason.
6 Request to TSX timed out.
7 Invalid response from TX.
8 Message was too big.
9 Offset or numberOfValues in the request was invalid.
10 No control program (TriStation application).
11 Read-only port.
236 Bad SOE number.
237 Invalid SOE type.
238 Invalid SOE state.
Modbus Protocol
This appendix provides detailed information about Modbus protocol which can be
used by EICM serial ports.
Topics include:
“Overview” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
“Estimating Message Response Time” . . . . . . . . . . . . . . . . . . . . . . 193
“Communication Modes” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
“Modbus Functions” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
“Transmission Errors and Exception Conditions” . . . . . . . . . . . . . 212
Overview
This appendix provides detailed information about Modbus protocol which can be
used by EICM serial ports. This protocol defines the query and response exchange
between a Modbus master and its slaves. A Modbus serial link transmits data in
both directions, but in only one direction at a time.
The master initiates all query-response sessions, which consist of the following
actions:
• The master sends a query to the slave.
• The master starts a fail-safe timer while the slave executes the query and
prepares the response. Typical slave execution times are in hundreds of
milliseconds.
• The slave returns a response to the master.
• The master waits until it has received the response from the slave before
sending another query.
To use Modbus protocol, you must select either the Remote Terminal Unit (RTU)
or ASCII mode of communication. (To select a mode, see “Configuring Serial
Ports in TriStation” on page 98.) If both modes are available, you should choose
RTU because it is more robust and efficient than ASCII. A port configured for
combination Modbus master and slave operation must use RTU mode.
The section “Modbus Functions” on page 195 describes the Modbus message
formats and functions (queries and responses) that are supported by the EICM
serial ports. Each description includes the function name and code, the query
format, the response format, and other relevant information.
During Modbus communication, transmission errors and exception conditions can
occur. The section “Transmission Errors and Exception Conditions” on page 212
explains how Modbus protocol handles these problems and describes the exception
conditions and responses that can take place.
Transmission Time
Transmission time pertains to serial ports which are configured as masters or
slaves.
The time required by a serial port to transmit a query or response is a function of
the baud rate and message size. Use the following equation to calculate the
transmission time in milliseconds.
Transmission Time = 1000 ¸ Baud Rate • Bits per Characters • Number of Characters
Communication Modes
A Modbus serial link must use either the Remote Terminal Unit (RTU) or ASCII
mode of communication. If both modes are available, you should choose RTU
because it is more efficient and robust than ASCII. Each EICM serial port can use
a different communication mode, assuming that each port is connected to a
separate Modbus master or slave device. If you configure a port for combination
Modbus master and slave operation, you must use RTU mode.
RTU Mode
In RTU mode, data is sent in eight-bit binary characters. Gaps between characters
cannot exceed three character times (the time it takes to send a character). RTU
mode uses a 16-bit cyclic redundancy check (CRC) to detect transmission errors.
For more information, see “CRC Error Check — RTU Mode” on page 197.
ASCII Mode
In ASCII mode, data is transmitted in pairs of ASCII characters. The first character
is the ASCII representation of the most significant four bits of the corresponding
RTU character. The second character is the ASCII representation of the least
significant four bits of the corresponding RTU character. For example, the RTU
character 010011112 (4F16) is sent as the two ASCII characters 4 and F (3416 and
4616). Each ASCII message has a colon at the beginning and a carriage return and
line feed at the end. Gaps between characters in an ASCII message are not
significant.
Modbus Functions
This section describes the Modbus functions (query and response pairs) that the
EICM supports. The following table lists the function names and codes.
The description of each function includes the function name, code, the query
format, the response format, and other relevant information.
The starting address field of a Modbus message ranges from 0 to one less than the
number of coils or registers available. A CM or MP serial port maps the Modbus
starting address field to an alias by adding a constant determined by the function
code, as shown in the following table. For more information about aliases, see
“Aliases and Tagnames” on page 39 and the TriStation 1131 Developer’s Guide.
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station Function
Data Data CRC
Address Code
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station Function
: Data Data LRC CR LF
Address Code
Data Fields
The Data fields contain information that is specific to the query or response. The
length of the data varies, depending on the function code.
The following table shows how to calculate the LRC for the sample message
presented earlier in this chapter.
Sample LRC Checksum Calculation
Message Content Checksum Calculation
Address 0 2 0000 0010
Function Code 0 1 0000 0001
Starting Address (H.O.) 0 0 0000 0000
Starting Address (L.O.) 1 3 0001 0011
Quantity of Points (H.O.) 0 0 0000 0000
Quantity of Points (L.O.) 2 5 + 0010 0101
0011 1011
One’s-Complement: 1100 0100
Add 1: + 0000 0001
Two’s-Complement: 1100 0101
Error Check C 5
Query Format
The Read Coil Status query requests the On/Off status of a group of logic coils
from a station. You can request the status of as many as 2,000 coils with each
query, but some Modbus devices have lower limits. The coils are numbered
starting at 0; for example, coil 0 is alias 1, coil 1 is alias 2, and so forth.
The Read Coil Status query is also known as the Read Output Status query.
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station
0000 0001 Starting Address Number of Coils CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: Address 0 1 Starting Address Number of Coils LRC CR LF
Response Format
The Read Coil Status response data is packed with one bit for each coil, where
1=On, and 0=Off. The low-order bit of the first RTU character contains the status
of the first coil. For coil quantities that are not even multiples of eight, the last RTU
character is zero-filled at the high-order end.
RTU Mode
Bytes
1 2 3 4 n n+1 n+2
ò ò
Station 0000 0001 Data Length Data CRC
Address Data
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2 n+3 n+4
ò ò
: Station 0 1 Data Length Data Data LRC CR LF
Address
ò ò
Query Format
The Read Input Status function operates in the same manner as Read Coil Status
(Function Code 01), except that the status of digital inputs is obtained. Inputs are
also numbered starting at 0. For example, input status 0 is alias 10001, input status
1 is alias 10002, and so forth. You can request the status of as many as 2,000 coils
with each query, but some Modbus devices have lower limits.
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station
0000 0010 Starting Address Number of Input Points CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: Address 0 2 Starting Addresses Number of Input Points LRC CR LF
Response Format
RTU Mode
Bytes
1 2 3 4 n n+1 n+2
ò ò
Station
Address 0000 0010 Data Length Data Data CRC
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2 n+3 n+4
ò ò
Station
: Address
0 2 Data Length Data Data LRC CR LF
ò ò
Query Format
The Read Holding Registers query requests the binary content of holding registers
from a station. You can request the status of as many as 125 registers with each
query, but some Modbus devices have lower limits. The registers are numbered
beginning with 0. For example, register 0 is alias 40001, register 1 is alias 40002,
and so forth.
The Read Holding Registers query is also known as the Read Output Registers
query.
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station
Address 0000 0011 Starting Address Number of Registers CRC
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: Address 0 3 Starting Address Number of Registers LRC CR LF
Response Format
The Read Holding Registers response data consists of two bytes for each register
queried, with the binary content right-justified. The leftmost character includes the
high-order bits, and the rightmost character includes the low-order bits.
RTU Mode
Bytes
1 2 3 4 n n+1 n+2
ò ò
Station
Address
0000 0011 Data Length Data Data CRC
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2 n+3 n+4
ò ò
Station
: Address 0 3 Data Length Data Data LRC CR LF
ò ò
Query Format
The Read Input Registers function operates in the same manner as the Read
Holding Registers query (Function Code 03), except that it obtains the status of
input registers. You can request the status of as many as 125 registers with each
query, but some Modbus devices have lower limits. The registers are numbered
beginning with 0. For example, register 0 is alias 30001, register 1 is alias 30002,
and so forth.
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station 0000 0100 Number of Registers CRC
Address Starting Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: Address
0 4 Starting Address Number of Registers LRC CR LF
Response Format
RTU Mode
Bytes
1 2 3 4 n n+1 n+2
ò ò
Station
Address 0000 0100 Data Length Data Data CRC
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2 n+3 n+4
ò ò
Station
: Address
0 4 Data Length Data Data LRC CR LF
ò ò
Query Format
The Force Single Coil function turns a single coil On or Off, depending on its
current state. Because the slave is actively scanning, it can also alter the state of the
coil (unless the coil is disabled). Coils are numbered beginning with 0; for example,
coil 0 is alias 1, coil 1 is alias 2, and so forth.
A coil value of 65,280 (FF0016) turns the coil On, and a coil value of zero (000016)
turns the coil Off. All other values are illegal and do not affect the coil. If the query
contains legal values, the slave responds after the coil state has been altered.
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station 0000 0101 Coil Value CRC
Address Address to Modify
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Response Format
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station 0000 0101 Coil Value CRC
Address Modified
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Query Format
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station 0000 0101 Register Value CRC
Address Address to Modify
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Response Format
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station
0000 0110 Address to Modify Register Value CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: 0 6 Address to Modify Register Value LRC CR LF
Address
Query Format
The Read Exception Status function returns the status of eight coils from the slave
application running in the controller. Which coils and what they represent depends
on the slave. When a serial port, configured as a slave, responds to this query, it
sends the status of the first eight coils (aliases 00001 through 00008) defined in the
application. Coils are numbered from 0; for example, coil 0 is alias 1, coil 1 is alias
2, and so forth. The status of each coil is packed in the data field, one bit for each
coil (1=On, 0=Off). You can program these coils to hold any type of information;
for example, machine on or off, heads retracted, safeties satisfied, and receipt-in-
process error conditions.
Note An EICM serial port configured as a Modbus master cannot use the Read
Exception Status function.
RTU Mode
Bytes
1 2 3 4
Station
0000 0111 CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9
Station
: 0 7 LRC CR LF
Address
Response Format
RTU Mode
Bytes
1 2 3 4 5
Station Coil Data
0000 0111 CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11
Station
: Address
0 7 Coil Data LRC CR LF
Query Format
The Loop-Back Diagnostics Test query tests the communications link between the
Modbus master and slave. This query does not affect point values in the slave.
When the serial port acting as a slave receives this query, it re-transmits the query
as the response.
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station
0000 1000 Data CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: 0 8 Data LRC CR LF
Address
Response Format
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station
0000 1000 Data CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: 0 8 Data LRC CR LF
Address
Note An EICM serial port configured as a Modbus Master cannot use the Loop-
Back Diagnostic Test function.
Query Format
The Force Multiple Coils query sets each coil in a consecutive block of coils to the
specified state (On or Off) regardless of whether the coils are enabled or disabled.
Because the slave is actively scanning, it can also alter the state of a coil (unless it
is disabled). Coils are numbered from 0; for example, coil 0 is alias 1, coil 1 is alias
2, and so forth. The status of each coil is packed in the data field, one bit for each
coil (1=On, 0=Off).
A single Force Multiple Coils query can set a maximum of 128 coils. The query-
response time required by some Modbus masters might require a much smaller
quantity.
RTU Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2
ò ò
Station Starting Byte Coil Coil
0000 1111 Quantity CRC
Address Address Count Data Data
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 n n+1n+2 n+3 n+4
ò ò
Station Starting Byte Coil Coil
: 0 F
Address
Quantity
Count
LRC CR LF
Address Data Data
ò ò
Response Format
RTU Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2
ò ò
Station Starting Byte Coil Coil
0000 1111 Quantity CRC
Address Address Count Data Data
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 n n+1n+2 n+3 n+4
ò ò
Station Starting Byte Coil Coil
: Address
0 F
Address
Quantity
Count
LRC CR LF
Data Data
ò ò
Query Format
The Preset Multiple Registers query can change the contents of a maximum of 60
consecutive holding registers, however, some Modbus devices have lower limits.
Because the slave is actively scanning, it can also alter the state of the registers
(unless they are disabled). The values are provided in binary code up to the
maximum valid register value of the controller (16-bit for Trident). Unused high-
order bits must be set to zero. The registers are numbered beginning with 0; for
example, register 0 is alias 40001, register 1 is alias 40002, and so forth.
RTU Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2
ò ò
Station Starting Byte Register Register
0001 0000 Quantity CRC
Address Address Count Data Data
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 n n+1n+2 n+3 n+4
ò ò
Station Starting Byte Register Register
: Address
1 0
Address
Quantity
Count
LRC CR LF
Data Data
ò ò
Response Format
RTU Mode
Bytes
1 2 3 4 5 6 7 8
Station
0001 0000 Starting Address Quantity CRC
Address
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Station
: 1 0 Starting Address Quantity LRC CR LF
Address
Performance Considerations
Modbus performance degrades slightly as the scan time of the controller increases.
With the controller operating as a slave, the functions most affected by scan time
increases are:
• Force Single Coil (Function Code 05)
• Preset Single Register (Function Code 06)
• Force Multiple Coils (Function Code 15)
• Preset Multiple Registers (Function Code 16)
The functions least affected by scan time increases are:
• Read Coil Status (Function Code 01)
• Read Input Status (Function Code 02)
• Read Holding Registers (Function Code 03)
• Read Input Registers (Function Code 04)
Transmission Errors
The most frequent cause of transmission errors is noise. Noise sources include
improperly installed or broken connectors, damaged cables, electrical equipment
such as generators and elevators, and lightning. Transmission errors can be
detected through the use of character framing, parity checking, and redundancy
checking.
When a slave detects a transmission error, it does not act on or respond to the
message. The master assumes a communications error has occurred if there is no
response within a specified time, usually three seconds.
Parity checking helps detect single-bit transmission errors. However, if there are
two errors within a single character, parity checking cannot detect a change. For
example, if 1100 0100 is distorted to 1111 0100, the number of 1 bits in the data is
still odd.
Modbus protocol provides several levels of error checking in order to assure the
accuracy of data transmission. To detect multiple bit errors, the system uses cyclic
redundancy check (CRC) for RTU mode, or longitudinal redundancy check (LRC)
for ASCII mode. For more information, see “Checksum Field (CRC or LRC)” on
page 197.
Exception Conditions
If a programming or operation error causes a master to send an incorrect query, the
slave responds with one of the following exception conditions.
Exception
Description
Condition
Query Message The slave does not respond, because the error could be in the
CRC or LRC station address. The master uses its response fail-safe timer to
Error recover.
Query Function The slave sends an Illegal Function (01) response code when it
Code Error detects an error in the function code field.
Query Address The slave sends an Illegal Data Address (02) response code when
Error it detects an error in the starting address field.
Query Data Error The slave sends an Illegal Data Value (03) response code when it
detects an error in the data field.
Main Processors This exception applies only to EICM serial ports which are
not communicat- configured as slaves.
ing If the slave port receives a query requiring a data exchange and it
cannot communicate with the Main Processors, it sends a Busy,
Reject Message (06) response code and turns off the Active
indicator on the EICM.
Remote Write The slave port sends a Busy, Reject Message (06) response code if
Disabled a master sends one of the following queries and the slave port is
not enabled for remote (external) writes:
• Force Single Coil (Function Code 05)
• Preset Single Register (Function Code 06)
• Force Multiple Coils (Function Code 15)
• Preset Multiple Registers (Function Code 16)
Exception Responses
When a slave detects an exception condition, it sends a response message to the
master consisting of the slave’s station address, function code, error code, and
error-check fields. To indicate that the message is an exception response, the slave
sets the high-order bit of the function code to 1. The following example shows an
exception response to a Preset Multiple Registers query.
Sample Query
RTU Mode
Bytes
1 2 3 4 5 6 7 8 n n+1 n+2
ò ò
Station Starting Byte Register Register
0001 0000 Quantity CRC
Address Address Count Data Data
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 n n+1n+2 n+3 n+4
ò ò
Station Starting Byte Register Register
: 1 0
Address
Quantity
Count
LRC CR LF
Address Data Data
ò ò
ASCII Mode
Bytes
1 2 3 4 5 6 7 8 9 10 11 12 13
Station Exception
: 9 0
Code
LRC CR LF
Address
10Base2 The standard for an Ethernet LAN capable of transmitting 10 megabits of data per
second through thin coaxial cables, to a maximum distance of 200 meters (656
feet).
10BaseT The standard for an Ethernet LAN capable of transmitting 10 megabits of data per
second through twisted-pair wire.
100BaseTX The predominant standard for a Fast Ethernet LAN capable of transmitting 100
megabits of data per second through Category 5 twisted-pair cable only.
AUI Attachment Unit Interface. A coaxial cable connected to a transceiver that plugs
into a 15-pin socket on the network interface card (NIC), to a maximum distance
of 100 meters (328 feet).
ARP Stands for Address Resolution Protocol which is a TCP/IP protocol used to obtain
the physical address of a node on an Ethernet network. A client station broadcasts
an ARP request onto the network with the IP address of the target node it wants to
communicate with. The node with that address responds by sending back its
physical address so that packets can be transmitted to it.
Centronics A standard 36-pin parallel interface for connecting printers and other devices to a
computer.
client/server An architecture in which the client (PC or workstation) is the requesting machine
and the server is the supplying machine, both of which are connected by means of
a local area network (LAN) or wide area network (WAN).
closed network A network designed for maximum safety which includes only Triconex devices. A
Peer-to-Peer network is an example of a closed network.
communication The route between any two nodes. Same as line, channel, link, or circuit.
path
communication Hardware and software standards that govern data transmission between two
protocol computers or communications devices. There are several layers (levels) of
functionality in a protocol. Each layer may be available as a separate software
component, or several layers may be combined into one.
CTS signal In Modbus communication, an RS-232 signal sent from the receiving station to the
transmitting station which indicates it is ready to accept data.
data bits The number of bits used to represent one character of data. When a Modbus slave
transmits ASCII text, either seven or eight bits can be used. When a Modbus master
or slave uses the RTU mode, eight data bits are required.
data transfer In a Peer-to-Peer network, the time required to initiate a send operation, send the
time data over the network, and get an acknowledgment from the receiving controller.
default gateway A router that forwards all messages not addressed to stations within the local
subnet.
Ethernet A type of computer network which is defined by the IEEE 802.3 standard. An
Ethernet network is typically a shared media LAN. All stations on the segment
share the total bandwidth, which is either 10 megabits (Ethernet), 100 megabits
(Fast Ethernet) or 1,000 megabits (Gigabit Ethernet) per second.
Fast Ethernet Another name for 100BaseTX Ethernet communication. Fast Ethernet transmits
data at 100 megabits per second rather than 10 megabits per second as in regular
Ethernet. Fast Ethernet operates in a LAN (local area network) that shares the 100
megabit per second bandwidth with all transmitting stations.
full duplex Serial communication using two pairs of wires—one pair for Modbus reads and the
other pair for Modbus writes. Called 4-wire in TriStation.
gateway A computer that performs protocol conversion between different types of networks
or applications. For example, a gateway can convert a TCP/IP packet to a NetWare
IPX packet and vice versa.
GPS Stands for Global Positioning System which is a system of 24 satellites for
identifying earth locations, launched by the U.S. Department of Defense. The GPS
is used for navigation and is the most accurate time source for a local clock.
half duplex Serial communication using one pair of wires to transmit Modbus reads and writes.
Called 2-wire in TriStation.
hardware Signals transmitted back and forth between two stations to coordinate the timing of
handshake data transmission.
hub A connecting device in a network that joins communication lines together in a star
configuration. Passive hubs are connecting units that add nothing to the data
passing through them. Active hubs (multi-port repeaters) regenerate the data bits to
maintain a strong signal. Intelligent hubs provide added functionality.
IP address The unique 32-bit address of a computer attached to an Ethernet network. Every
client and server in an Ethernet network requires an IP address which is either
permanently assigned or dynamically assigned at startup.
JetDirect A print server for LaserJet printers from HP which is available as an internal card
or external unit. It supports its own proprietary printing protocol and several others,
depending on the model. The JetAdmin printer management software is used to
configure and control the JetDirect print server.
MAC address The unique physical address of a network device that is burned into the Network
Interface Card (NIC) of the device when it is manufactured.
master In Modbus communication, a device that initiates all query and response exchanges
with the slave devices.
MAU Stands for media adapter unit which is a device used to convert one type of Ethernet
media to another. In a Trident system, a MAU can be used to convert a CM port to
another Ethernet media type or to extend network distances.
message For a TSAA client/server or Modbus master/slave data exchange, the time required
response time to initiate and send a query and get a response from the receiving controller.
MII Stands for media independent interface which is a bus used between network
controllers and physical interfaces that is based on the MII interface specification.
multi-point In Modbus communication, a link that interconnects three or more master or slave
devices.
NIC Stands for Network Interface Card which is a printed circuit board that plugs into
both a client and a server device and controls the exchange of data between them.
Also called a network adapter card.
220 Glossary
open network An Ethernet network to which Triconex controllers and other Ethernet devices,
including routers and gateways to other networks, can be connected.
OPC Stands for OLE for Process Control which is a standard set of non-proprietary
interfaces used to develop client/server programs. OPC supports interoperability
between field devices and applications for process control, factory automation, and
business.
parallel port A socket on a computer used to connect a printer or other parallel device to the
computer's parallel interface.
parity checking An error detection method that tests the integrity of digital data during transmission
over a serial communication path. Parity checking counts the number of 1 bits in a
one-byte data item and sets the parity bit (the ninth bit) to 0 or 1, resulting in an odd
or even total number of bits.
path In computer communication, the route between any two nodes. Also called line,
channel, link, or circuit.
print server A hardware device with multiple Ethernet ports that enables a printer to be located
anywhere in an Ethernet network.
point-to-point In Modbus communication, a link that connects one master or slave device to
another.
process- The maximum length of time that can elapse before the control algorithms in a
tolerance time TriStation application fail to operate correctly.
protocol Rules that govern transmitting and receiving of data. See communication protocol.
RARP Stands for Reverse Address Resolution Protocol which is a TCP/IP protocol used
by a diskless workstation to obtain its IP address.
redundancy The practice of using a spare device in parallel with a primary device so that, if the
primary device fails, the spare device is easily or automatically placed into service.
Examples are redundant modules which protect against internal faults, redundant
cables which protect against cable breakage, and redundant workstations which
protect against network failures.
router A device that forwards data packets from one local area network (LAN) or wide
area network (WAN) to another. Based on routing tables and routing protocols,
routers read the network address in each transmitted frame and decide how to send
it based on factors like network traffic, speed, or bad lines.
RS-232 Stands for Recommended Standard 232 which is a standard interface approved by
the Electronic Industries Association (EIA) for connecting serial devices in point-
to-point configurations.
RS-422 Stands for Recommended Standard 422 which is a standard interface approved by
the Electronic Industries Association (EIA) for connecting serial devices in point-
to-point differential configurations.
RS-485 Stands for Recommended Standard 485 which is a standard interface approved by
the Electronic Industries Association (EIA) for connecting serial devices in multi-
point differential configurations.
RTS signal In Modbus communication, an RS-232 signal sent from the transmitting station to
the receiving station requesting permission to transmit.
scan surplus A component of the scan time of a controller, the scan surplus is the time left after
the executable elements and communication messages have been processed. The
scan surplus should be positive. If the scan surplus is negative, the scan time should
be increased.
scan time The time required by a controller for the cycle of required control functions. The
scan time includes input poll time; execution time for all executable elements in the
TriStation project; processing time for TriStation and Peer-to-Peer messages,
TSAA writes, and Modbus writes; and output poll time.
slave In Modbus communication, a device that is controlled by another device called the
master. The master initiates all query and response exchanges, and the slave can
only respond.
subnet mask The addressing method used to split networks into subnets. The mask is a binary
pattern that subdivides a single IP address into a subnet number and a new host
number. A typical subnet mask is 255.255.255.0, which means that 254 Class C
addresses are available.
TCP/IP Stands for Transmission Control Protocol/Internet Protocol which is the global
standard communication protocol for the Internet. Can also be used for private
networks such as corporate intranets and distributed control systems.
TCP/IP is a routable protocol, which means that all messages contain not only the
address of the destination station, but the address of a destination network. This
allows TCP/IP messages to be sent to multiple networks within an organization or
around the world, hence its use in the Internet.
topology In a network, the pattern of interconnection between nodes; for example, a bus, ring
or star configuration.
TSAA Stands for Triconex System Access Application, a protocol that enables
client/server communication between Triconex controllers and PCs. Two
client/server programs, OPC Server and DDE Server, use TSAA protocol to
exchange data with Triconex controllers. TSAA protocol can also be used to write
other programs for accessing Trident points.
Trident symbol table. See symbol table. Write function blocks (Modbus)
Trimble list 105
Acutime 2000 Synchronization Kit 127 sample diagrams 103, 109
Standard Interface protocol 127 sample programs 120
TriStation 1131 Developer’s Workbench WRITE_TRICON_DATA 166
installing 31 WRITE_TRICON_DATA_RSP 167
uninstalling 32
TriStation PC X
connecting to Ethernet port 24–25 XML configuration file
connecting to serial port 21–23 exporting from TriStation 72
TriStation ports OPC Server overview 71
configuring EICM serial port 34–35
configuring Ethernet port 36
default on EICM 21
setting switches on EICM 21–23
TSAA client/server communication
brief description 3
overview 46–47
using DDE Server 57–70
using OPC Server 71–75
writing your own program 46
TSAA protocol, DDE communication 57
TSAA read queries 148
TSAA write commands 148
twisted-pair cables 10, 24
V
view options, DDE Server 69
W
workstation redundancy, OPC Server 75
write access
by DDE client 60, 68
by OPC client 72
by tagname or alias 39
configuring ACM port 40, 49
configuring NCM port 40, 51
disabling changes to outputs 40
setting write controls 40, 47
write commands
Modbus 139
TSAA 148