You are on page 1of 260

SCADA Data Gateway

SCADA Data Gateway | Implementers Guide

SCADA Data Gateway


Implementers Guide
Software Release Version 2.52

Manual Revised: November 5, 2009

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page i

SCADA Data Gateway | Implementers Guide

Property of Triangle MicroWorks, Inc.


This Documentation and its associated distribution media contain proprietary information of Triangle
MicroWorks, Inc. and may not be copied or distributed in any form without the written permission of
Triangle MicroWorks, Inc.
Copies of the source code may only be made for backup purposes.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page ii

SCADA Data Gateway | Implementers Guide

READ THIS BEFORE OPENING THE MEDIA PACKAGE


THIS SOFTWARE LICENSE AGREEMENT IS BEING PROVIDED TO YOU BEFORE YOU OPEN THIS MEDIA PACKAGE.
ONCE YOU OPEN THE MEDIA PACKAGE, YOU HAVE AGREED TO ALL THE TERMS AND CONDITIONS OF THIS
AGREEMENT. THEREFORE, IF YOU DO NOT WISH TO AGREE TO ALL THE TERMS AND CONDITIONS OF THIS
AGREEMENT, YOU MUST RETURN THE UNOPENED MEDIA PACKAGE THEREOF, WHEREUPON YOUR MONEY WILL
BE REFUNDED.
TRIANGLE MICROWORKS, INC. License Agreement and Warranty

1) LICENSE. Triangle MicroWorks, Inc. hereby grants to the person (Customer) who is purchasing the enclosed software media to
use the same (the contents of which, together with all modifications and accompanying documentation are referred to herein as the
Software), a limited, non-exclusive license to use the software on the terms and conditions set forth. This license is solely for the use
of the Software by the Customer on a single computer. The Customer may physically transfer the Software to another computer by
having the media read into such computer, provided that the Software may not be used on more than one computer at any given time.
Subject to the foregoing limitation, the Customer is entitled to copy the Software into any machine-readable or printed form for backup
purposes in support of the use of the Software on a single computer by the Customer. The Customer may likewise merge the Software or
incorporate the same into another program provided that such program will, for so long as the Software is included therein, be subject to
all of the terms and conditions of this license. Any copy of the Software permitted by the preceding provision shall include a copyright
notice of Triangle MicroWorks, Inc.

2) TERM OF LICENSE. The license will continue until the Customer physically destroys all copies of the Software and returns the
original program disk and documentation to Triangle MicroWorks, Inc.

3) MAINTENANCE & ENHANCEMENT PLAN. Customer is subscribed in the Maintenance & Enhancement Plan for a period
of one (1) year following the purchase of SCADA Data Gateway. The Plan may be renewed each year on the anniversary of the
purchase date unless cancelled by either party.
This optional Maintenance & Enhancement Plan provides a cost effective method for upgrading to the most recent release
version of the SCADA Data Gateway. It also provides technical support by telephone, fax, or email. The first year of the
Maintenance & Enhancement Plan is free. Renewal price after the first year is 25% of the purchase price; however, future
years may be purchased in advance at 20% of the purchase price.

4) COPYRIGHT. The Software is copyrighted, and all rights therein are reserved by Triangle MicroWorks, Inc.
5) LIMITED WARRANTY. The Customer assumes all responsibility for the selection of the Software as appropriate to achieve the
results intended by the Customer. Triangle MicroWorks, Inc. warrants that the enclosed media medium upon which the Software is
recorded shall be free from defects in material and workmanship under normal use and conditions, and that the Software shall perform
substantially as described in its documentation for a period of sixty (60) days from purchase. EXCEPT FOR THE FOREGOING
LIMITED WARRANTY. THE SOFTWARE IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND EITHER
EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS FOR A PARTICULAR PURPOSE.

5) LIMITATION OF REMEDIES. In the event of the breach of the limited warranty set forth above, the Customer shall be entitled to
return the media to the place of purchase and, at the election of the vendor, to have the purchase price refunded or to receive media
containing the Software which conforms with the above limited warranty. In no event will Triangle MicroWorks, Inc. be liable for any
damages arising out of the Customers use of the Software, including, by way of illustration, lost profits or any incidental or
consequential damages.

6) ACKNOWLEDGMENTS. The Customer acknowledges that the Customer has read this agreement, understands it and agrees to be
bound by its terms and conditions, which agreement will be acknowledged in writing upon the request of Triangle MicroWorks, Inc.

7) GENERAL PROVISIONS. The Customer shall have no right to sublicense any of the rights of this Agreement, for any reason. In
the event of the breach by the Customer of this Agreement, the Customer shall be liable for all damages to Triangle MicroWorks, Inc.,
and this Agreement shall be terminated. This Agreement can only be modified in writing between the Customer and Triangle
MicroWorks, Inc. If any provision of this Agreement shall be deemed to be invalid, illegal or unenforceable, the validity, legality and
enforceability of the remaining portions of this Agreement shall not be affected or impaired thereby. The laws of the State of North
Carolina shall govern this Agreement.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page iii

SCADA Data Gateway | Implementers Guide

How to Obtain Additional Assistance


Technical Support:
http://www.trianglemicroworks.com/SDGSupportRequest.aspx

SDG Quick Start Video:


http://www.trianglemicroworks.com/Videos/SDG Quick Start Video/player.aspx

Additional References:
SDG Whats New.pdf
SDG Quick Start Guide.pdf
SDG 61850 Quick Start Guide.pdf

Office:
Triangle MicroWorks, Inc
2840 Plaza Place
Suite 205
Raleigh, North Carolina 27612
Phone: 919.870.5101
Fax: 919.870.6692
Email: sales@trianglemicroworks.com
Website: http://www.trianglemicroworks.com

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page iii

SCADA Data Gateway | Implementers Guide

Implementers Guide Contents


1.

2.

3.

Overview ......................................................................................................................................................... 9
1.1 Purpose of this Manual........................................................................................................................... 9
1.2 Introduction to SDG ............................................................................................................................... 9
1.3 SDG Components ................................................................................................................................. 11
1.3.1 Master Components of the SDG ............................................................................................. 11
1.3.2 Slave Components of the SDG................................................................................................ 11
1.3.3 Master / Slave Data Flow ........................................................................................................ 12
1.3.3.1 Sequence from remote Slave devices to Master Component data collection ............ 12
1.3.3.2 Command Sequence from Remote Master Devices ................................................... 12
1.4 Data Point Addressing.......................................................................................................................... 13
1.4.1 Communication Channels ....................................................................................................... 13
1.4.2 Sessions ................................................................................................................................... 14
1.4.3 Sectors ..................................................................................................................................... 15
1.4.4 External OPC Servers ............................................................................................................. 16
1.4.5 The OPC Alarm and Event Server .......................................................................................... 17
1.5 Modem Pools........................................................................................................................................ 17
Installation and Setup .................................................................................................................................. 19
2.1 System Requirements ........................................................................................................................... 19
2.2 SDG Performance ................................................................................................................................ 20
2.3 Installing the SCADA Data Gateway................................................................................................... 20
2.4 SCADA Data Gateway Licensing ........................................................................................................ 21
2.4.1 Standard License ..................................................................................................................... 21
2.4.2 USB Key License .................................................................................................................... 22
2.4.3 License Manager ..................................................................................................................... 22
2.4.3.1 Requesting a Permanent License ............................................................................... 23
2.4.3.2 Installing/Updating a Permanent License .................................................................. 23
2.4.3.3 Remove an Existing License ...................................................................................... 24
2.4.3.4 Transferring a License ............................................................................................... 24
2.5 Running the SDG as a Service ............................................................................................................. 25
2.5.1 Installation, Removal and Setup.............................................................................................. 25
2.5.2 Service Configuration and Startup .......................................................................................... 25
2.5.3 Service Monitor ....................................................................................................................... 27
2.5.4 Service Events and Status Messages ....................................................................................... 28
User Interface ............................................................................................................................................... 29
3.1 Main Window....................................................................................................................................... 29
3.2 Configuration Window Interface ......................................................................................................... 30
3.2.1 Configuration Toolbar Menus ................................................................................................. 30
3.2.2 Configuration Window Menu Items ....................................................................................... 31
3.2.2.1 File Menu ................................................................................................................... 31
3.2.2.2 Edit Menu ................................................................................................................... 32
3.2.2.3 View Menu ................................................................................................................. 32
3.2.2.4 Window Menu ............................................................................................................ 33
3.2.2.5 Help Menu .................................................................................................................. 33
3.2.3 Context Menus ........................................................................................................................ 34
3.3 Protocol Analyzer ................................................................................................................................. 34
3.3.1 Protocol Analyzer Toolbar Menus .......................................................................................... 35
3.3.2 Protocol Analyzer Menu ......................................................................................................... 35
3.3.2.1 File Menu ................................................................................................................... 35
3.3.2.2 Edit Menu ................................................................................................................... 36
3.3.2.3 View Menu ................................................................................................................. 36

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page iv

SCADA Data Gateway | Implementers Guide

3.4

3.3.2.4 Options Menu ............................................................................................................. 36


3.3.2.5 Window Menu ............................................................................................................ 37
3.3.2.6 Help Menu .................................................................................................................. 37
3.3.3 Filters and Controls ................................................................................................................. 38
3.3.3.1 Filter Bar .................................................................................................................... 38
3.3.3.2 Device Filter ............................................................................................................... 38
3.3.4 Printing Analyzer Output ........................................................................................................ 39
3.3.5 Setting the Analyzer Font........................................................................................................ 39
3.3.6 Analyzer Buffer Settings ......................................................................................................... 40
Gateway Configuration Dialogs ........................................................................................................... 41
3.4.1 Content Help ........................................................................................................................... 41
3.4.2 Gateway Properties ................................................................................................................. 41
To display the SDG Properties dialog box, click on EditProperties from the SDG menu: ............. 41
3.4.3 Modem Pools........................................................................................................................... 45
3.4.4 Channels .................................................................................................................................. 48
3.4.4.1 Add TCP/IP Channel Dialog ...................................................................................... 48
3.4.4.2 Serial Channel ............................................................................................................ 49
3.4.4.3 Modem Pool Channel ................................................................................................. 50
3.4.5 Sessions ................................................................................................................................... 51
3.4.5.1 Master Sessions .......................................................................................................... 52
3.4.5.2 Slave Sessions ............................................................................................................ 60
3.4.6 Sectors ..................................................................................................................................... 64
3.4.7 Adding Data Types.................................................................................................................. 65
3.4.8 IEC 61850 Client ..................................................................................................................... 65
3.4.8.1 Adding an IEC 61850 Client ...................................................................................... 65
3.4.8.2 Adding an IEC 61850 Report Control Block ............................................................. 67
3.4.8.3 Adding an IEC 61850 Data Attribute from the Report Control Block ...................... 68
3.4.9 OPC Alarm and Event Client .................................................................................................. 69
3.4.9.1 Adding an OCP AE Client ......................................................................................... 69
3.4.9.2 Adding OPC AE Client Items .................................................................................... 72
3.4.9.3 OPC Alarm and Event MDO ..................................................................................... 74
3.4.9.4 Event MDO ................................................................................................................ 74
3.4.9.5 Event Attribute MDOs ............................................................................................... 74
3.4.9.6 OPC AE MDO Options .............................................................................................. 75
3.4.10 OPC Data Access Client ......................................................................................................... 78
3.4.10.1 Adding an OPC DA Client ..................................................................................... 78
3.4.10.2 OPC Client Items ................................................................................................... 80
3.4.10.3 OPC Client Tag Properties ..................................................................................... 82
3.4.11 Master Data Objects (MDOs) ................................................................................................. 85
3.4.12 Slave Data Objects (SDOs) ..................................................................................................... 86
3.4.13 Internal User defined MDOs ................................................................................................... 87
3.4.14 Equations ................................................................................................................................. 91
3.4.15 Editing Masks.......................................................................................................................... 92
3.4.16 Editing Tag Options ................................................................................................................ 93
3.4.17 Internal Predefined MDO Points ............................................................................................. 93
3.4.17.1 IEC Action Mask .................................................................................................... 93
3.4.17.2 DNP Action Mask .................................................................................................. 95
3.4.17.3 Modbus Action Mask ............................................................................................. 96
3.4.18 Mapping Points from Master Components to Slave Components .......................................... 97
3.4.19 Mapping Points from Master Components to Master Components ........................................ 97
3.4.20 Mapping Points from Slave Components to Slave Components ............................................ 99
3.4.21 Saving the INI and CSV files .................................................................................................. 99

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page v

SCADA Data Gateway | Implementers Guide

4.

3.4.22 Selecting the INI during Start-up ............................................................................................ 99


3.4.23 Refreshing the Display ............................................................................................................ 99
3.4.24 Tags 100
3.4.25 Creating Tags Automatically ................................................................................................ 100
3.4.26 SDG Options ......................................................................................................................... 100
Configuration Reference ........................................................................................................................... 102
4.1 OPC Server Registration for SDG Service and GUI.......................................................................... 102
4.2 Tmwgtway.ini Initialization File ........................................................................................................ 103
4.2.1 Tmwgtway.ini Parameters ..................................................................................................... 103
4.2.2 Setting IEC 60870-5-101 and -104 Slave Data Types to use Time Stamps .......................... 104
4.2.3 Setting DNP3 Event Types and Default Variations .............................................................. 104
4.3 Point-Mapping File ............................................................................................................................ 105
4.3.1 Mapping points to the Internal OPC Server .......................................................................... 106
4.3.1.1 OPC Server Point Properties .................................................................................... 107
4.3.2 Mapping Points to an External OPC Server .......................................................................... 108
4.3.3 Format of the Point-Mapping file ......................................................................................... 108
4.3.4 Master and Slave Component Columns ................................................................................ 109
4.3.5 Definition of Fields contained in the Point Mapping File .................................................... 112
4.3.5.1 Point Identification Fields ........................................................................................ 112
4.3.5.2 Data Options Field ................................................................................................... 112
4.3.5.3 Table of Control Options and the Meaning ............................................................. 112
4.3.5.4 LOGMSKxxxx and OPCAE_LOGMSKxxxx Events used in the MDO option
field .......................................................................................................................... 121
4.3.5.5 Physical Tag Name................................................................................................... 121
4.3.5.6 User Tag Name......................................................................................................... 122
4.3.5.7 Equation Field .......................................................................................................... 122
4.3.5.8 Supported Operators Used in Expressions ............................................................... 124
4.3.5.9 Examples of Valid Expressions ............................................................................... 124
4.3.5.10 Description ........................................................................................................... 124
4.4 Data Points ......................................................................................................................................... 125
4.4.1 Point Initialization ................................................................................................................. 125
4.4.2 Translating data types between different protocols (Master to Slave mapping) .................. 126
4.4.2.1 SDG Database Storage Formats ............................................................................... 127
4.4.2.2 SDG Database Standard Quality Flags .................................................................... 127
4.4.2.3 IEC 60870-5-101 and IEC60870-5-104 ................................................................... 129
4.4.2.4 IEC 60870-5-103 ...................................................................................................... 132
4.4.2.5 DNP3 ........................................................................................................................ 133
4.4.2.6 Modbus ..................................................................................................................... 134
4.4.2.7 OPC Reads ............................................................................................................... 136
4.4.2.8 OPC Writes .............................................................................................................. 137
4.4.3 Predefined Tag Names for Monitoring and Control ............................................................. 138
4.4.3.1 Characteristics of Predefined Tag Names ................................................................ 138
4.4.3.2 Action Mask and Period ........................................................................................... 142
4.4.3.3 DNP Action Mask .................................................................................................... 142
4.4.3.4 DNP Action Now Status .......................................................................................... 143
4.4.3.5 DNP Action Mask Examples ................................................................................... 144
4.4.3.6 IEC Action Mask...................................................................................................... 145
4.4.3.7 Modbus Action Mask ............................................................................................... 146
4.5 SDG Clock ......................................................................................................................................... 146
4.5.1 Event Time Tags and Database Update Times ..................................................................... 146
4.6 Sequence of Event Log Files ........................................................................................................... 147
4.6.1 Event Log File Names ........................................................................................................... 150

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page vi

SCADA Data Gateway | Implementers Guide

4.6.2

5.
6.

7.
8.

Event Log Record Format ..................................................................................................... 150


4.6.2.1 Value Field Names (VFN_Table) ............................................................................ 151
4.6.2.2 Update Date and Time Field Names (UDTF_Table) ............................................... 152
4.6.2.3 Reported Date and Time Field Names (RDT_Table) .............................................. 153
4.6.2.4 Identification Field Names (IFN_Table) .................................................................. 154
4.6.2.5 Escape sequences within Event Log Record Formats (ELR_Table) ....................... 155
4.6.3 Flush Period .......................................................................................................................... 156
4.6.4 Log Mask............................................................................................................................... 156
4.7 DNP3 Datasets ................................................................................................................................... 157
4.7.1 Background ........................................................................................................................... 157
4.7.2 Prototypes .............................................................................................................................. 157
4.7.3 Descriptors ............................................................................................................................ 160
4.7.4 Dataset Present Values .......................................................................................................... 163
4.7.5 Dataset Present Value Mapping ............................................................................................ 163
SCADA Data Gateway Technical Support .............................................................................................. 165
Troubleshooting ......................................................................................................................................... 166
6.1 Running the SDG on Windows Vista ................................................................................................ 166
6.2 Running the SDG on a Virtual Machine ............................................................................................ 166
6.3 Errors in the Point Mapping File When Saving the SDG .................................................................. 166
6.4 Network: Network Driver Appears To Not Be Serving This Directory Dialog ................................ 166
6.5 No communication with a remote device seems to be occurring ....................................................... 166
6.5.1 Physical layer error: Error opening channel ...................................................................... 166
6.5.1.1 TCP/IP Connection .................................................................................................. 167
6.5.1.2 Serial Connection ..................................................................................................... 167
6.5.1.3 Modem Channels ..................................................................................................... 167
6.5.2 Configuration ........................................................................................................................ 167
6.5.3 Other issues ........................................................................................................................... 167
6.6 Timeout waiting for application layer response fragment or restart." Message is displayed .......... 167
6.7 Missing DLL Files ............................................................................................................................. 168
6.7.1 Missing Microsoft Visual C Run-time Components ............................................................. 168
6.8 Error Starting the GTWService - Missing Localization DLL (VC80.MCFLOC) ............................. 168
6.9 Using an RS-232/RS-485 Converter with the SCADA Data Gateway .............................................. 168
6.10 Setting Command and Control Modes for Binary Outputs in DNP3 Master Sessions ...................... 169
6.11 After installing Windows XP Service Pack 2, OPC Communications via DCOM no longer work .. 169
Glossary of Terms ...................................................................................................................................... 170
Tmwgtway.ini Parameter List .................................................................................................................. 173

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page vii

SCADA Data Gateway | Implementers Guide

Table of Figures
Figure 1: SCADA Data Gateway.......................................................................................................................10
Figure 2: SDG Software Architecture ...............................................................................................................11
Figure 3: Slave to Master Component Data Collection ....................................................................................12
Figure 4: Commands passed thru the SDG .......................................................................................................12
Figure 5: Connection and Identification of Data Points...................................................................................13
Figure 6 Communication Channels ..................................................................................................................14
Figure 7 Sessions ..............................................................................................................................................15
Figure 8 Sectors ................................................................................................................................................16
Figure 9 Install/Update License tab ..................................................................................................................22
Figure 10 Remove License Tab .........................................................................................................................24
Figure 11 Example of Master to Slave and Master to Master Association....................................................110
Figure 12 TMW Simple OPC Client ................................................................................................................125
Figure 13 Event Log Record Format..............................................................................................................151

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 8

SCADA Data Gateway | Implementers Guide

1. Overview
The Triangle MicroWorks SCADA Data Gateway (SDG) application is a communication protocol driver. It
provides the values that the protocol transmits over the wire. It collects data from OPC Server, IEC 60870-5,
DNP3, IEC 61850, or Modbus Slave devices and then supplies this data to other control systems supporting
OPC Client, IEC 60870-5, DNP3, IEC 61850, and/or Modbus communication protocols.

1.1

Purpose of this Manual

This manual contains the necessary information required to install and configure the SCADA Data Gateway
(SDG) and provide descriptions of various aspects of configuring and using the SDG.
This manual covers the following topics:

1.2

Introduction to the SDG


Overview of SDG Components
Configuration
SDG licensing
Making changes to the Initialization File tmwgtway.ini
What to add to the Point-Mapping File
How to use Equations
Data Points
What are Master and Slave Data Points
How to map Data Points from one SDG Component to another
How to associate OPC Tag names with Data Points
Logging of Data Change Events
Glossary of Terms

Introduction to SDG

The SDG is a communication protocol driver, and it provides the values that the protocol transmits over the
wire. For example, it does not perform conversion of normalized and scaled values in IEC 60870-5-101 to
the equivalent floating point representation. However, this conversion can be done in the SDG through an
equation, as described in Section 4.3.5.7 Equation Field.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 9

SCADA Data Gateway | Implementers Guide

Figure 1: SCADA Data Gateway


The SDG interface retrieves data from external Slave Remote Devices through IEC 60870-5-101, -103, and 104, DNP3, IEC 61850, or OPC Client Master Components as shown above in Figure 1.
The SDG can also issue control commands to remote Slave devices through these Master Components.
These data and command points can then be transferred to Control Centers or other Master Devices through
Slave Components including OLE for Process Control (OPC).
The SDG comes with all the components depicted in Figure 2. Each component is individually licensed as
described below. Only licensed components can be configured and used in a specific SDG installation.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 10

SCADA Data Gateway | Implementers Guide

Figure 2: SDG Software Architecture

Multiple connections to remote master or slave devices can be made with each protocol component.

1.3

SDG Components

1.3.1 Master Components of the SDG


Master Components are used to:
Read data from remote Slave devices and to present this data to the SDG database for use by Slave
Components
Pass event data to the internal database for use by Slave Components, the Sequence-of-event Log
File, and the OPC Alarm and Event Server
Issue controls from Slave Components and OPC Writes
Read and write data from/to OPC Servers
Monitor polling status of remote Slave devices

1.3.2 Slave Components of the SDG


Slave Components are used to:
Present data from the internal database to remote Master devices
Accept controls from remote Master devices, and to pass the controls through the internal database to
Master Components

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 11

SCADA Data Gateway | Implementers Guide

The OPC Alarm and Event Server reports events to OPC Alarm and Event Clients running on the
same or a different computer.
The OPC Server Component is a specific Slave Component that communicates through the OPC
interface to other Windows software applications running on the same or a different computer.

1.3.3 Master / Slave Data Flow


This section describes data flow from the various master and slave devices through the SDG.
1.3.3.1 Sequence from remote Slave devices to Master Component data collection
1. A Master Component collects data from remote Slave devices (e.g. RTUs or IEDs)
2. The Master Component presents the data to the database
3. The Database then presents the data to the Slave Components

Figure 3: Slave to Master Component Data Collection

1.3.3.2 Command Sequence from Remote Master Devices


1. The Slave Component will receive the command from a remote Master device.
2. The Slave Component stores the remote Master device command in the database manager.
3. The database manager passes the command to the appropriate Master Component.
4. The Master Component then transmits the commands to the appropriate remote Slave device.

Figure 4: Commands passed thru the SDG

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 12

SCADA Data Gateway | Implementers Guide

1.4

Data Point Addressing

Points are the most indivisible level of data in the SDG. Master Data Points may be defined automatically for
OPC tags when the data is first received from a remote device. This is accomplished by setting the following
parameters in the tmwgtway.ini file:

Set GlobalCreateTagAutomatic equal to TRUE


Set PointMapFile to the desired filename (i.e. PointMapFile="C:\Program Files\Triangle
MicroWorks\SCADA Data Gateway\tmwgtway.csv")

Slave Data Points are created and associated with Master Data Points or Equations in the Point Mapping file.
Master Data Points are placeholders for data calculated by equations or collected by Master Components
from Remote Slave Devices. Slave Data Points are placeholders for data in the SDG that are available to
remote Masters. The identity of the sector for each data point specified in the Point-Mapping file (channel,
link Address, ASDU address) must correspond to a sector defined in tmwgtway.ini.
Data points are identified by their physical connection to the SDG and the addressing within the
communication protocol configured for the remote device. The following diagram illustrates how the SDG
connects to and identifies each data point. While this diagram shows a Master Component of the SDG
connected to several remote slave devices, the same point identification scheme is used for Slave
Components communicating with remote Master devices.

Figure 5: Connection and Identification of Data Points

1.4.1 Communication Channels


The SDG exchanges data with remote devices through one or more Communication Channels (these may be
physically discrete channels, or logically discrete channels that share a physical connection, such as multiple
TCP/IP serial pipes, each of which is a separate logical channel, even though they may share a single
physical 10BaseT interface). Each communication channel is uniquely identified by a name, for example:
COM1, COM2, etc.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 13

SCADA Data Gateway | Implementers Guide

Figure 6 Communication Channels


Each communication channel has a set of parameters, such as: baud rate, parity, and number of data and
stop bits. These parameters are set in the Physical Layer section of tmwgtway.ini.

1.4.2 Sessions
A session is a communication connection between the SDG and a remote device. A session is identified by a
specific link address on a communication channel. If more than one device is attached to a SDG
communication channel (multi-drop topology), the link address is used to select the device or SDG Slave
Component that should receive the message. The session establishes a virtual connection between the SDG
and a remote master or slave device.

IEC60870-5-104 only supports one session per channel; hence the session or link address is not
required for this protocol.
Communication protocol specifications supported by the SDG use the ISO protocol standards for the
Application (7), Data Link (2), and Physical (1) Layers. It should be noted, the term session in this product
and the associated documentation does NOT refer to the defined ISO Session (5) Layer.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 14

SCADA Data Gateway | Implementers Guide

Figure 7 Sessions
The parameters associated with the session include an index to the communication protocol and most of the
communication protocol related settings. Each session using the same communication channel must have a
unique data link address. Since the IEC60870-5-104 only supports one session per channel, the data link
address is not required. For more information, refer to Session Configuration and subsequent sections in
tmwgtway.ini.
PC COM ports are typically RS-232 interfaces, which only permit connection to a single remote
device. To permit connection to multiple remote devices, as shown in Figure 7, it may be
necessary to use some form of multi-drop interface device such as an RS-232 to RS-485 converter.

1.4.3 Sectors
In IEC 60870-5 protocols, each session may contain more than one sector. Each Sector is a group of data
contained within a single Session. In these protocols, each sector corresponds to a single Common Address
of ASDU. DNP3 does not support sectors and hence does not require a Common Address of ASDU.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 15

SCADA Data Gateway | Implementers Guide

Figure 8 Sectors
Each sector is identified in tmwgtway.ini by both its session index and sector index. The sector ASDU
Address must be unique within the session. If a remote Slave device or a Slave Component consists of only
one sector, the ASDU address is normally set to the same value as the link address. Refer to the Database
Configuration section of tmwgtway.ini.
In the Point-Mapping file, the following identify the sector:
Communication Channel
Data Link Address
ASDU Address

1.4.4 External OPC Servers


Connecting the SDG to an external OPC Server requires the specification of the following parameters in the
OPC Client section of the tmwgtway.ini file.
OPCserverNode - refers to the machine where the external OPC Server has been installed. This
parameter can either be an IP address or the name of the machine as it appears on the network.
OPCserverProgID - the Program ID of the external OPC Server. The Program ID of the OPC Server
is generally provided in the documentation from the manufacturer.
OPCserverName - an optional parameter that may be used to create a user-defined name for the
external OPC Server for use in the SDG Point Mapping file (see Section 4.3.2). If not specified, the
OPCserverName defaults to the value specified for the OPCserverProgID parameter.
OPCserverReconnectTime - specifies the number of milliseconds to wait until attempting a
reconnection with the OPC server should the connection be lost. If this time is set to zero a
reconnection will not be attempted.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 16

SCADA Data Gateway | Implementers Guide

1.4.5 The OPC Alarm and Event Server


The OPC Alarm and Event Server component provides events to OPC Alarm and Event clients running on
this machine or other machines on the network. Events are propagated from Master components in SDG to
the OPC Alarm and Event Server Slave component. As events arrive at a Master component they are queued
to the OPC Alarm and Event Server. The Server then provides these events to any connected OPC Alarm
and Event client. Due to the nature of this queuing process, all data changes received at the Master
component will be propagated to the OPC Alarm and Event client. This differs from the operation of the
OPC Data Access Server in that it will not provide all changes to a connected client, should these changes
occur more rapidly than the polling interval. The time stamp of the event is provided based on the setting of
OPCAETimeSource parameter in the INI file (see section 4.5.1 Event Time Tags and Database Update Times
on page 146 for additional information). Currently, all points are reported as an Event Type of 'Condition',
Event Category of 'Discrete', and a condition type of 'COS' (change of state). In addition, the attribute 'CV'
(current value) allows the client to see the value at the time the event was reported.
Optionally a log mask(s) can be used to enable OPC Alarm and Event Notifications. The
OpcAESubscriptionMask parameter in the configuration file controls when events are reported as a result of
an item subscription through the SDG OPC Data Access Server. The bits in this mask enable various reasons
that an event will be reported. This mask overrides all other OPC Alarm and Event related masks if enabled.
If the mask is 0, no OPC Alarm and Event notifications will occur as a result of an OPC Data Access item
subscription, although events can be reported for other reasons through the use of the other OPC Alarm and
Event masks (see the configuration file, each data type has an OPC Alarm and Event log mask associated
with it, the rules associated with this configuration of these masks is similar to the Sequence of Event Log
Files section 4.6 page 147).

1.5

Modem Pools

The SDG supports the concept of modem pools (a group of modems that can either receive or dial telephone
calls). Multiple modem pools can be configured in the SDG where each pool is a group of modems managed
by the pool. The modem pool acts as a dispatcher for the modems in its pool. For instance, when a Modem
Pool Channel decides it needs to send some data it asks the modem pool for a modem. If a modem is
available, the physical modem is connected to the modem pool channel. The modem pool channel then dials
its configured telephone number and establishes a connection with its peer device. If a modem in the pool
receives a call it will answer the call and establish a connection with the caller, receive the incoming data,
and then determine if the data is destined for any of the session/channels configured in the SDG. However,
this requires that the addressing information of all sessions in the SDG is unique regardless of the channel
that they are associated with. Addresses must be unique because the incoming message is parsed to
determine which session the message is intended for.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 17

SCADA Data Gateway | Implementers Guide

The following illustration represents a typical set of master channels using 3 modems:

In the illustration above, there are 6 Modem Pool Channels that share 3 physical modems. Each of the
Modem Pool Channels is configured to connect to a single Modem Pool. In addition it is assumed that the
sessions are Master Sessions. The Modem Pool is responsible for managing the 3 Modems. As the modems
become available and requests are made by the Modem Pool Channels, the Modem Pool handles these
requests and provides them to the available modem(s).
To use this type of configuration effectively, the communications load on each Modem Pool Channel must
not be continuous (i.e. The Idle timeout value should be utilized to force a modem to become available when
there are no communications requirements on a Modem Pool Channel). The rate at which requests are made
of the slave device should be greater than the idle timeout. This allows each channel to take turns using the
modems. When the idle timeout occurs, the modem is made available for use by another channel. Each
physical modem should be configured for dial out and be enabled (these are the default settings). Each
Modem Pool Channel should also be configured for dial out with a telephone number specified for its
corresponding slave device.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 18

SCADA Data Gateway | Implementers Guide

2. Installation and Setup


2.1

System Requirements

The Triangle MicroWorks SCADA Data Gateway (SDG) is a Windows based application and is supported
under the following operating systems:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 19

SCADA Data Gateway | Implementers Guide

Windows 2000 with Service Pack 3 (or later)


Windows XP Service Pack 2 (or later)
Windows Vista Service Pack 2
Windows 2003 Server
We do not currently support the SDG under Windows XP Embedded.

The minimum system requirements for the host computer are:


1.5 GHz processor; recommended: 2.4 GHz dual-core processor
1 GB RAM; recommended: 2GB RAM
Windows XP SP2
Microsoft .NET 2.0 Framework (2.0 must be installed even if a later version already exists)

2.2

SDG Performance

The performance of the SDG depends on a number of factors, including the number of data points; the
number of channels/sessions/sectors; the frequency at which data changes; and the capabilities of the host
PC. Also, the number and types of other applications running on the host PC can also affect overall system
performance. Consequently, it is difficult if not impossible to characterize the performance on various
systems.
Listed below is information on the limitations of the SDG to consider when trying determining system
performance:

250 channels (per SDG)


250 session (per SDG)
64 sectors per session (for IEC 61850)

The 250 session limit is per SDG. For example, you could have one channel with 250 sessions; or 250
channels with one session per channel; or 50 channels with 5 sessions per channel; etc.

2.3

Installing the SCADA Data Gateway

The SDG application is provided as a self-installing executable file (SDGVmnn.exe where m is the major
release and nn is the minor release). To begin installing the SDG application double-click the SDGVmnn.exe
file and follow the on-screen instructions.
In addition to installing the required files on your system, the installation application performs the following
steps:
1. Creates entries in the StartAll Programs menu for the selected protocols.
2. If running on Windows NT/2000/XP it will run the setupex.exe program found in the installation
directory to install the drivers required by the licensing software.
To run the SDG application, select StartAll Programs->Triangle MicroWorksSCADA Data Gateway
folder from the Start Menu or double-click the tmwgtway.exe file located in the installation directory. Refer
to the Quick Start Guide for information on configuring the SCADA Data.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 20

SCADA Data Gateway | Implementers Guide

To reinstall or remove the SDG application, run the installation process again or select Add/Remove
Programs from the Control Panel.

2.4

SCADA Data Gateway Licensing

The SDG uses a software licensing mechanism, which supports the licensing of individual components of the
SDG product. When the SDG is run for the first time, a demo license will be generated which enables all of
the SDG components for 21 days. To obtain a permanent license specific to the components you have
purchased, please contact Triangle MicroWorks before the end of the evaluation period.
The SDG supports the following, individually licensable, components:
Component
IEC60870-5-101 Master
IEC60870-5-102 Master
IEC60870-5-103 Master
IEC60870-5-104 Master
IEC60870-5-101 Slave
IEC60870-5-102 Slave
IEC60870-5-103 Slave
IEC60870-5-104 Slave
IEC 61850 Client
Distributed Network Protocol Master
Distributed Network Protocol Slave
Modbus Master
Modbus Slave
OLE For Process Control (OPC) Server
OLE For Process Control (OPC) Alarm
and Event Server
OLE For Process Control (OPC) Client
OPC XML Server
OPC XML Client

Symbol
M101
M102
M103
M104
S101
S102
S103
S104
IEC 61850 Client
MDNP
SDNP
MMB
SMB
OPC Server
OPC Alarm and Event
Server
OPC Client
XML Data Access
Server
XML Data Access
Client

Status
Currently Supported
Future
Currently Supported
Currently Supported
Currently Supported
Future
Future
Currently Supported
Currently Supported
Currently Supported
Currently Supported
Currently Supported
Currently Supported
Currently Supported
Currently Supported
Currently Supported
Currently Supported
Future

2.4.1 Standard License


By default, the SDG license is machine and location dependent. This means that a license will only work on
the machine on which it was installed and the TMWgtway executable must be in the same directory that it
was in when the license was installed. You will not be able to change the location of the TMWgtway
executable once the license is installed. In order to run the SDG on another machine, or move the installation
directory, you must remove the existing license and request a new license from Triangle MicroWorks. Also,
you will not be able to run the SDG application on other machines over the network, even though they may
be able to access the SDG directory. If you need to use the SDG from a network server please contact
Triangle MicroWorks regarding a network license.
If you are installing a new version of the SDG on the same workstation, you must either install it into the
same directory as the existing version, overwriting the current version, or install it in a different directory and
transfer the license from the existing SDG application by requesting a new license from Triangle
MicroWorks. Refer to the following sections for more details on how to update, transfer, and remove an
SDG license.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 21

SCADA Data Gateway | Implementers Guide

2.4.2 USB Key License


The USB Key license uses a USB mass storage device ("flash drive") to hold the SDG license. With the
USB Key option, the SDG will be fully licensed on any computer that has a licensed drive plugged in. For
example, you can run the SDG in your lab, on a laptop in the field, or on your desktop machine simply by
changing the location of the USB key.
All SDG license management functions are accessed from the License Management dialog. This
dialog is accessed by selecting the HelpInstall/Update License menu option from the SDG main
window. The sections below describe the different sub-panels of this dialog box, and the
functionality they provide.

2.4.3 License Manager


The TMWgtway License Manager Dialog screen, shown below, is used to install a permanent license, update
an existing license, or remove a license from your pc or USB device.

Figure 9 Install/Update License tab


The first section of the screen displays all of the components available in the SDG. Unlicensed or
unsupported components are disabled (displayed in red). This screen also displays the current licenses
expiration date (if any), the Maintenance Plan (MP) expiration date, and the serial number if a permanent
license is currently installed.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 22

SCADA Data Gateway | Implementers Guide

Permanent licenses have an Expires date of Never and do not expire. The Expires date is currently
only used for temporary or evaluation licenses. The MP Expires date indicates when the Maintenance
and Enhancement Plan expires. A valid Maintenance and Enhancement Plan entitles you to free product
updates and technical support. You will not be able to install updated versions of the SDG after the MP
Expires date.
2.4.3.1 Requesting a Permanent License
Once you have purchased the desired SDG components, you will need to obtain a permanent license from
Triangle MicroWorks. SDG licenses are machine specific. The following steps will collect the
information needed in order to issue the permanent license for your machine. If the computer is connected
to the Internet and has an email client, the information will be directly mailed to Triangle MicroWorks.
Otherwise, the information will be saved to a file (SDGlicenseRequest.tlr) which you can email to Triangle
MicroWorks (sales@TriangleMicroWorks.com) from another computer.
To request a permanent license for the SDG, please follow the instructions below:
1. Start the SCADA Data Gateway
2. Go to the Help menu and select License Quote Request
3. Next, on the provided dialog screen, if you would like to license a USB device, select Yes.
Select No to license to the workstation. (There is an additional cost for licensing a USB Key.
Please contact Triangle MicroWorks for more details.)
4. Complete the information on the License Quote Request dialog screen. Be sure to include the
requestor information as well as applicable components and protocols.
5. If the workstation is connected to the Internet and there is an email client installed on the
workstation, click the Email It button to email the request to Triangle MicroWorks; otherwise,
click the Save As button to email from later or from another workstation.
When requesting a USB key license, please ensure that all other USB devices are disconnected from the
PC during this process. Devices such as USB hard drives and USB network adapters may cause conflicts
with the device you are trying license. After the license has been installed on your USB device, you can
reconnect the other devices back to the PC.

2.4.3.2 Installing/Updating a Permanent License


To install a permanent license for the SGD, please follow the instructions below:
1. Start the SCADA Data Gateway
2. Go to the Help menu and select Install/Update License
3. Copy the activation key provided by Triangle MicroWorks into the Activation Key field
4. Next, click the Install/Update Activation Key button
5. Verify that the protocols and components are the ones you have purchased and that the license
Expires field is set to Never
6. Click Close to exit the License Manager
The currently licensed components and expiration date should now be updated. The currently licensed
components are immediately supported in the SDG; no application restart is necessary.
It may be necessary to periodically update the license for the SDG. Typically this is done to add or remove
components or to change the existing expiration date. The steps required for updating a license are the
same as for adding a new license. Please refer to the instructions above for updating your license. Once
the license is updated, the currently enabled components should be updated to reflect the new license.
Again, no application restart is necessary.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 23

SCADA Data Gateway | Implementers Guide

2.4.3.3
Remove an Existing License
If required, an existing license may be removed from a machine using the Remove License tab shown
below. Once this operation is complete the SDG will no longer be licensed on that machine. This
process will create a unique confirmation key that can be returned to Triangle MicroWorks to confirm that
the license is no longer in use.

Figure 10 Remove License Tab


To remove an existing license, please follow the instructions below:
1. Start the SCADA Data Gateway
2. Go to the Help menu and select Install/Update License
3. From the License Manager dialog screen, click the Remove License tab
4. Next, click the Remove License button
5. Click Ok on the Remove Confirmation dialog screen to continue
6. Next, if the workstation is connected to the Internet and there is an email client installed on the
workstation, click Yes to email the code to Triangle MicroWorks or click No to save the file
and email it from another workstation.
7. Click Close to exit the License Manager

2.4.3.4 Transferring a License


To move the license to another computer, first install the SDG on the destination computer. New
installations include a 21-day evaluation license. Next, remove the license on the current machine as
described in Section 2.4.3.3 above, and request a new license for the new computer (see Section 2.4.3.1).
You can send the kill code to Triangle MicroWorks immediately or when you request your new permanent
license.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 24

SCADA Data Gateway | Implementers Guide

2.5

Running the SDG as a Service

This section describes how to run the SDG as a Windows Service. A Windows Service is a process that runs
in the background. Typically a service starts when the system boots, although this behavior can be modified
through the use of the service management console. Some advantages of running the SDG as a service
include:

No login required
Service can run under a separate user account
Application starts automatically when the computer boots
Casual users can not accidentally stop the application

The SDG can run as a service or as an interactive application, it cannot run as both at the same time. The
interactive application (i.e., GUI SDG) mode is used to configure the SDG communications parameters, point
mapping, etc. This configuration process results in an INI and CSV file that the service version of the SDG
will later use to configure itself when it starts.
The SDG configuration can be created and tested interactively using the GUI version and then, when the
configuration/testing process is complete, the SDG service can be started as a service from the service control
panel as outlined below. To make changes to the configuration the service must be stopped before the GUI
can be started.

2.5.1 Installation, Removal and Setup


The service executable files and additional installation setup files are installed as part of the normal
installation procedure of the SDG. In addition to installing the SDG, the following steps are required to
configure the SDG to run as a service.
Do the following as needed:
1. Select All ProgramsTriangle MicroWorksSCADA Data GatewayInstall SDG Service from the
Start Menu. This will install a small application that can be used to monitor the communications of
the SDG service through a protocol analyzer display. (This may require an upgrade of the .NET
framework; Windows Update can typically be used to accomplish this update).
2. Should the SDG service need to be manually registered the following command line options are
available. GTWService.exe -RegServer and GTWService.exe -Service these commands register the
COM interfaces of the service and install it as a service respectively, they should be executed in the
order shown. Normally these commands are executed for you at SDG install time.
3. To remove the SDG service GTWService.exe -UnregServer can be used. This will remove
GTWService.exe from the service control panel and as a result GTWService.exe will not run as a
service any more.

2.5.2

Service Configuration and Startup

In most configurations the service settings INI file will be the same as the paths INI file (which is used for the
GUI SDG application). Use the options dialog box, to specify the INI file for the service. This dialog box is
available from the view menu in the GUI version of the SDG. By default when the SDG GUI shuts down it
can ask if you would like to start the SDG service. This question can be disabled by un-checking the Ask to
Start SDG Service on GUI exit checkbox. To have the SDG service automatically start when you exit the
GUI, check the Automatically Start SDG Service on GUI exit radio button. When the GUI starts, if the
service is running you will get the option to shut the service down. As stated above the service and GUI can
not run at the same time. The following dialog is used to configure these options:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 25

SCADA Data Gateway | Implementers Guide

To start/stop and configure the SDG service startup up behavior, the service control panel is used. It can be
accessed by selecting All ProgramsTriangle MicroWorksSCADA Data GatewaySDG Service
ConfigurationStart or Stop SDG Service from the Start Menu. The service control panel is shown below:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 26

SCADA Data Gateway | Implementers Guide

The name of this service is GTWService. Right-clicking on this entry will bring up a context menu that can
be used to Start/Stop and set the properties of the GTWService. When setting the properties the following
dialog appears:

The Startup type is used to specify how the service starts up. Automatic will cause the service to start when
the system boots; Manual is used if you want to manually start the service at a later time. Manual is the
recommended setting during SDG configuration and testing. See the help for the Windows Services Control
panel for explanations of the other configuration features of a service.

2.5.3 Service Monitor


The SDG Service Monitor application is used to display the protocol analyzer output of the SDG. This
application can be started and stopped without affecting the operation of the SDG Service. Filter options are
provided that operate in the same way as the protocol analyzer in the SDG GUI version. The service monitor
is started by selecting ProgramsTriangle MicroWorksSCADA Data GatewaySDG Service Monitor
from the start menu. Only a single instance of the service monitor is supported.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 27

SCADA Data Gateway | Implementers Guide

2.5.4 Service Events and Status Messages


Should the SDG service fail to startup or unexpectedly stop. Status and Event messages are logged to the
Windows Event Log. The event viewer is started by selecting ProgramsTriangle MicroWorksSCADA
Data GatewaySDG Service ConfigurationEvent Viewer from the start menu.

The Event log along with the protocol analyzer log should be used to troubleshoot problems.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 28

SCADA Data Gateway | Implementers Guide

3. User Interface
3.1

Main Window

The SDG User Interface is a Multiple Document Interface Application, with 2 document types; a
Configuration document and a Protocol Analyzer document. The main window is a container for both of
these document types. Each document type can have multiple views of the same document data, allowing the
user to see the configuration and protocol information in various different ways. The menus are context
sensitive depending on which document type is currently selected. In addition context sensitive help is
provided for certain fields on the configuration dialog boxes. Below is a screenshot of the main SDG
application window with the configuration document/view at the top and the protocol analyzer
document/view on the bottom.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 29

SCADA Data Gateway | Implementers Guide

3.2

Configuration Window Interface

Below is the Configuration window expanded within the SDGs main window:

On the left is a hierarchical view of the current SDG configuration which includes:
(1) Gateway at the root of the hierarchy
The configured devices with the:
o (2) Channel
o (3) Session
o (4) Sector
o (5) Data Type(s)
In the upper right is a list of points (6), which displays their current value, quality, etc (if appropriate). In the
lower right is the Point Mapping view (7), which displays the current mapping of master to slave data points.
The configuration user interface is used to both configure as well as monitor the SDG.

3.2.1 Configuration Toolbar Menus

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 30

SCADA Data Gateway | Implementers Guide

3.2.2 Configuration Window Menu Items


The following menu items are available for the Configuration Window:

3.2.2.1 File Menu

(1)
(2)
(3)

Save - Saves the current configuration to the tmwgtway.ini and tmwgtway.csv files.
Exit with Save - Exits the SDG and saves the INI and CSV files.
Exit without Save - Exits the SDG without saving the INI and CSV files.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 31

SCADA Data Gateway | Implementers Guide

3.2.2.2 Edit Menu

(1)
(2)
(3)

Add - Add SDG objects (Channel, Session, etc) to the configuration.


Delete - Removes an object from the configuration (if a higher level item is removed, all objects
beneath the item are also removed).
Properties - Opens a dialog screen for the current object for viewing and modifying the
properties of the object.
All Edit menu commands operate on the currently selected object in the SDG
configuration window.

3.2.2.3 View Menu

(1)
(2)
(3)
(4)
(5)

Toolbar - Display/Hide the Configuration toolbar.


Status Bar - Display/Hide the Status bar.
Refresh - Updates and redraws each of the 3 panes in the Configuration window.
Create Tags - **Sends a General Interrogation (GI) to all on-line sessions in the SDG
configuration.
Options - Opens a dialog box for setting the Configuration window preferences.
**

Operation can be time consuming depending on the protocol and number


of connected devices.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 32

SCADA Data Gateway | Implementers Guide

3.2.2.4 Window Menu

(1)
(2)
(3)
(4)
(5)
(6)

New Analyzer Window - Adds a new Analyzer window.


New Configuration Window - Adds a new Configuration window.
Cascade - Arranges the SDG windows as cascade.
Tile Vertical - Arranges the SDG windows as vertical tiles.
Tile Horizontal - Arranges the SDG windows as horizontal tiles.
Switches between the currently opened windows in the SDG.

3.2.2.5 Help Menu

(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)

Help Topics - View the SDG Implementers Guide.


Quick Start - View the SDG Quick Start Guide.
SDG IEC 61850 Quick Start View the IEC 61850 Client Quick Start Guide
INI File - View detailed descriptions for each attribute in the INI file.
Install/Update License - Install, update, or remove an SDG license.
License Quote Request - Request a quote for the SDG and the protocols you require.
TMW Website - Visit the Triangle MicroWorks website.
Whats New - View the Whats New document for the SDG.
Submit Support Request - Submit a support request to the Triangle MicroWorks support team.
Watch Free Training Videos - Link to free Quick Start Videos for the SDG.
About GTWconfig - View the SDG About dialog screen.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 33

SCADA Data Gateway | Implementers Guide

3.2.3 Context Menus


The SDG uses pop-up context sensitive menus for most configuration operations. Context menus can be
displayed by right-clicking on an item in the Configuration window. However, not all items have an
associated context menu.

3.3

Protocol Analyzer

The protocol analyzer window allows you to monitor communications between the SDG and external
devices. Below is the Protocol Analyzer window expanded within the main SDG window.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 34

SCADA Data Gateway | Implementers Guide

At the top is the Filter bar (1) which determines the content of the Protocol Analyzer display by selecting
checkboxes to customize the filters.
On the left is the Device Filter (2). This filter allows you to select which channels, sessions, and sectors will
get displayed.
On the right is the Communications Display, Protocol Analyzer log, (3) which shows the communications
between the SDG and external devices.

3.3.1 Protocol Analyzer Toolbar Menus

3.3.2 Protocol Analyzer Menu


When the Protocol Analyzer window is selected, the following menu items are available:
3.3.2.1 File Menu

(1)
(2)
(3)
(4)
(5)

Save - Saves the Protocol Analyzer Log to a file.


Save As - **Displays a dialog box which allows you to select the file name and location for
saving the Protocol Analyzer Log.
Print - Prints the Protocol Analyzer Log.
Print Preview Opens the print preview dialog window.
Print Setup Opens the printer setup dialog window.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 35

SCADA Data Gateway | Implementers Guide

(6)
(7)

Exit with Save - Exits the SDG and saves the INI and CSV files.
Exit without Save - Exits the SDG without saving the INI and CSV files.
**

The Protocol Analyzer buffer will then be saved to the specified file, which will also
become the current analyzer file. All subsequent save operations will save the
protocol analyzer log to this file.

3.3.2.2 Edit Menu

(1)
(2)

Copy Copies the selected text in the Protocol Analyzer log to the Windows clipboard.
Find Text Opens a dialog screen for searching the Protocol Analyzer log for a particular text.

3.3.2.3 View Menu

(1)
(2)
(3)
(4)

Toolbar Display/Hide the Protocol Analyzer toolbar.


Status Bar Display/Hide the Status Bar.
Filter Bar Display/Hide the Filter Bar.
Device Filter Bar Display/Hide the Device Filter.

3.3.2.4 Options Menu

(1)
(2)

Set Buffer Controls the size of the Protocol Analyzer log buffer.
Font Set the font for the Protocol Analyzer display.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 36

SCADA Data Gateway | Implementers Guide

3.3.2.5 Window Menu

(1)
(2)
(3)
(4)
(5)
(6)

New Analyzer Window - Adds a new Analyzer window.


New Configuration Window - Adds a new Configuration window.
Cascade - Arranges the SDG windows as cascade.
Tile Vertical - Arranges the SDG windows as vertical tiles.
Tile Horizontal - Arranges the SDG windows as horizontal tiles.
Switches between the currently opened windows in the SDG.

3.3.2.6 Help Menu

(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)

Help Topics - View the SDG Implementers Guide.


Quick Start - View the SDG Quick Start Guide.
SDG IEC 61850 Quick Start View the IEC 61850 Client Quick Start Guide
Install/Update License - Install, update, or remove an SDG license.
License Quote Request - Request a quote for the SDG and the protocols you require.
TMW Website - Visit the Triangle MicroWorks website.
Whats New - View the Whats New document for the SDG.
Submit Support Request - Submit a support request to the Triangle MicroWorks support team.
Watch Free Training Videos - Link to free Quick Start Videos for the SDG.
About GTWconfig - View the SDG About dialog screen.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 37

SCADA Data Gateway | Implementers Guide

3.3.3 Filters and Controls


3.3.3.1 Filter Bar

The Filter Bar is divided into four major areas:

Filter (1) - contains a checkbox for each of the protocol layers (User, Application, Transport, Data
Link, and Physical, MMI, OPC). Only layers that are checked will be displayed in the Protocol
Analyzer windows. The Errors check box determines whether error messages will be displayed in
the Protocol Analyzer window.
Database (2) - controls whether Static, Cyclic, and Event Header and Data are displayed.
Timestamp (3) - determines whether timestamps will be displayed for all messages in the Protocol
Analyzer window.
Window Controls (4)
o Pause checkbox - when checked, pauses the Protocol Analyzer display. Use caution when
using this option because data can be lost while the display is paused.
o Clear button - clears the Protocol Analyzer display window.

3.3.3.2 Device Filter


The Device Filter Bar controls which devices are displayed in the Protocol Analyzer display window. The
bar consists of a hierarchy as shown below.

The Clear All and Set All buttons (1) provide a convenient means of selecting or clearing all devices
layers.
The device filter includes the connected devices:
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 38

SCADA Data Gateway | Implementers Guide

Channel (2)
Session (3)
Sector (4)

Checking and un-checking an item does not affect the items below it. Thus, it may be necessary to expand
items in order to fully view which items will be displayed. For example, in the above diagram, the MDNP
channel is not checked. However, it is possible that the Session Layer below the MDNP channel is
checked.

3.3.4 Printing Analyzer Output


The Print dialog box is displayed by the Print and Print Setup items on the File menu.

Changes made to this box from the Print option will be used for the current print session. Changes made to
this box from the Print Setup item will be used by subsequent Print operations unless the Print dialog box is
used to override them at the time of printing
The Print option from the File menu displays the dialog box shown above. This dialog box can be used to
select a printer, select printer options, and number of copies to print.

3.3.5 Setting the Analyzer Font


The Font item on the Options menu controls the font in the Protocol Analyzer output window. Selecting this
item displays the following dialog screen, which can be used to select a font and style:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 39

SCADA Data Gateway | Implementers Guide

3.3.6 Analyzer Buffer Settings


The Set Buffer item on the Options menu displays the following dialog screen:

Option
Percentage of Lines to Remove
When Full
Max Protocol Analyzer Line Count
Enable Save to File

Description
the number of lines that are removed when the buffer becomes full
(in order to make room for new lines)
sets the maximum number of lines in the display window
Determines whether the Protocol Analyzer log is saved to a file
automatically. This option is convenient for saving traces that are
larger than the buffer size. When this block is checked you can
specify the path and name of the file where the log will be saved

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 40

SCADA Data Gateway | Implementers Guide

3.4

Gateway Configuration Dialogs

3.4.1 Content Help


To display additional information on a particular field or parameter, first click on the Help button (1) located
at the top of each dialog window; this causes the cursor to appear as follows:
(2) next to the item to display the help description (3).

Next, click inside the box

3.4.2 Gateway Properties


To display the SDG Properties dialog box, click on EditProperties from the SDG menu:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 41

SCADA Data Gateway | Implementers Guide

Property
Use System Clock

Description
If set to true, the date and time will always be read from the Windows
system clock as opposed to an internally maintained clock. The internal
clock is initialized to the Windows system clock at startup but will be
adjusted whenever clock synchronization is received from an external
master. You would generally set UseSystemClock to true if you have an
external clock synchronization mechanism that synchronizes the Windows
system clock outside the SDG. In this case it is advised that
AcceptClockSync be set to false.

Accept Clock Syncs

If set to true and UseSystemClock is true, the Windows system clock will
be adjusted by a time sync received from an external master device. If set
to false, the time syncs will not adjust the Windows system clock. When
using a simulated clock, this setting has no effect and clock syncs are
always accepted and adjust the simulated clock.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 42

SCADA Data Gateway | Implementers Guide

Auto Save Period

Initial Window Mode


Equation Time Source

Event Log File Name


Event Log Record Format
Event Log File Flush
Period

SOE Queue File Name


Enable SOE Queue
OPC Client Status Update
Rate (ms)
OPC Time Source

Maximum amount of time between saving the INI and CSV application
configuration files. The INI file is only saved if a change has been made.
A value of 0 will disable saves.
Specifies whether the SDG starts minimized normal, or maximized.
- Specifies the source of the time tag for data points which are generated as
the result of an equation. The possible values are Update or Reported
where Update means the time, relative to the SDG system clock, at which
the equation was last calculated, Reported specifies the reported time of
the most recent event that caused the equation's result to change. Reported
time will be relative to the remote slave device's system clock except on
initialization where the SDG's system clock is used until the first event
with time is received. It is important to note that static data polling, or
received events which do not specify a reported time, may cause a specific
data point's value to change without its event time being modified. Based
on system polling rates and other parameters this could result in
discontinuous times being reported, especially in equations that have inputs
from multiple slave devices.
Event Log File Name and Path. See manual for a description of the
available %xxx property keywords.
Event Log record format. See manual for a description of the available
%xxx property keywords.
Maximum amount of time between writing to the event log file before it is
flushed to disk. Set to zero to inhibit explicit flushing. This parameter
may be useful if another application reads the event log file to obtain event
data in real time.
Sequence Of Events Queue File Name and Path. [DEFAULT:
SDG_SOEQueueFile]
If set to true, the SOE Queue will be enabled. Possible values are 0, 1,
'FALSE', or 'TRUE'. [DEFAULT: FALSE]
The interval at which an OPC client requests status information from its
server. If the client does not wish to request status updates set this to 0.
Possible values are from 0 to 30000. [DEFAULT: 1000 ms]
Specifies the source of the time tag for OPC data points. The possible
values are Update or Reported. Update means the time, relative to
the SDG system clock, at which the data point was last updated.
Reported specifies the reported time of the most recent event that caused
the data to change. Reported time will be relative to the remote slave
device's system clock except on initialization where the SDG's system
clock is used until the first event with time is received. Static data polling,
or received events which do not specify a reported time, may cause a
specific data point's value to change without an event being generated;
hence the event time will not change.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 43

SCADA Data Gateway | Implementers Guide

OPC Event Time Source

OPC XML DA Server


Name
OPC XML DA Server
Port
Point Map Section
Global Create Tags Auto

Point Map File


Save Unmapped Points
Read Point Map At
Startup
Log Masks Section
Log Masks

Specifies the source of the time tag for OPC Alarm and Event data points.
The possible values are Update or Reported. Update means the
time, relative to the SDG system clock, at which the data point was last
updated. Reported specifies the reported time of the event that caused the
data to change. Reported time will be relative to the remote slave device's
system clock except on initialization where the SDG's system clock is used
until the first event with time is received. Static data polling, or received
events which do not specify a reported time, may cause a specific data
point's value to change without an event being generated; hence the event
time will not change.

If TRUE, tags (and storage space) will automatically be created upon


reception of new data points within incoming response messages from
remote devices.
Specifies Point Data Mapping file.
If TRUE, unmapped tags will be saved to the point mapping file.
If TRUE, the point mapping file will be read at startup.

The log mask is a bitmap of the values. The mask can be applied to the
Event Log File and/or the OPC Alarm and Event Server.
Possible values are:
0x0001 The data is being updated, but the reason for the update is
unknown.
0x0002 The data is being updated because it was requested.
0x0004 The data is being updated by the source of data without direct
request. No change is necessarily indicated.
0x0008 A change in the data is indicated by the source of data.
0x0010 A change in the data is indicated due to a request through
communications.
0x0020 A change in the data is indicated due to action at the device.
0x0040 A control request has been transmitted to a remote device.
0x0080 A control request has been confirmed by a remote device, but is
not yet complete.
0x0100 A 1st pass in a 2-pass control operation has been transmitted to a
remote device.
0x0200 A 1st pass in a 2-pass control operation has been confirmed by a
remote device.
0x0400 A cancel operation has been transmitted to a remote device to
abort a 2-pass control operation between the 1st and 2nd passes.
0x0800 A cancel operation has been confirmed by a remote device.
0x1000 A remote device has responded to indicate an error in a control
operation.
0x8000 Either the data point or the remote device is operating in a test
mode.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 44

SCADA Data Gateway | Implementers Guide

The Log Masks are grouped as follows:


Group
Errors

Diagnostics

Control

Equations
OPC Data Access
Subscription

Use OPC Alarm


and Event Simple
Events

Description
Each bit enables (1)/disables (0) a reason to log errors, such as changes
in number of link layer checksum failures or in link session online/off-line status, in the event log file. If 0, nothing will be logged.
Each bit enables (1)/disables (0) a reason to log diagnostic data, such
as change to the number of transmitted frames, in the event log file. If
0, no diagnostics data will be logged.
Each bit enables (1)/disables (0) a reason to log control data, such as
changes to pollEnabled or to GeneralInterrogationPeriod, in the event
log file. If 0, nothing will be logged.
Each bit enables (1)/disables (0) a reason to log results of equations. If
0, no equation results will be logged.
Each bit enables (1)/disables (0) a reason that an item subscription
through the SDG OPC Data Access Server should enable OPC Alarm
and Event notifications for the item. This mask overrides all other
masks if enabled. If 0, no OPC Alarm and Event notifications will
occur as a result of an item subscription.
If true, all OPC AE events are reported as simple events. Possible
values are 0, 1, 'FALSE', or 'TRUE'.

The Edit at Runtime checkbox allows you to make changes to the SDG properties
without having to restart the application. If you make changes and this option is not
checked, then you will need to re-start the SDG for the changes to take effect.

3.4.3 Modem Pools


To add a modem pool to the configuration, right click on the modem pool node icon ( ) and enter the
Modem Pool Name in the Add Modem Pool dialog box, then click OK.

Once you have added all the modem pools you require, the SDG configuration window will display these
items under the ModemPools node as shown below:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 45

SCADA Data Gateway | Implementers Guide

Next, to add a modem to the pool right-click on the desired modem pool element and select Add Modem to
display the Add Modem dialog screen:

Most of the configuration parameters on this dialog screen are the same as those for a serial port. The ones
that are different are described below.
Parameter
Modem Name
Initialization String*

Description
A name used to refer to and identify the modem
Specifies the initialize string that is sent to the modem when the modem is
opened

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 46

SCADA Data Gateway | Implementers Guide

Hangup String*
Dialing Mode
Read Command Timeout
Write Command Timeout
Response Terminator
Character

No Dial Out
Enable

Specifies the hang up string that is sent to the modem when the modem is
closed
Sets the dialing mode of the Modem: 'pulse' - use pulse dialing. 'tone' - use
tone dialing
Specifies the timeout in seconds that the SDG waits for a modem to respond
to a command
Specifies the timeout in seconds that the SDG waits to send a command to a
modem
Sets the character used to terminate a response from the Modem: 'none' don't use a character to terminate the response (assumes the modem is set up
with no command responses (i.e. ATQ1)). 'line feed' - use a 'line feed'
character to terminate the response. 'carriage return' - use a 'carriage return'
character to terminate the response
If TRUE, the modem will be configured for receiving telephone calls only
If set to true, the modem will be Enabled and Available for use. This can be
used to perform maintenance on the modem

* The Initialization String and Hang-up String must be compatible with the Hayes AT
command set.

Quick Reference for AT Commands


Command
Meaning
AT
+++
,
A/
ATA
Bn
Cn
Dn
En
Fn
Hn
In
Ln
Mn
Nn
On
P
Qn
Sn=x
T
Vn
Wn
Xn
Yn
Zn

Attention!
Escape Sequence
Pause
Repeat Sequence
Answer Mode
Select Communication Protocol
Transmission Carrier
Dial Control
Echo
Data Mode Echo
Hook Select
Report Modem Information
Set Speaker Volume
Set Speaker Mode
Automode Selection/Detection
Retrain Selection
Pulse Dialing
Result Codes to DTE
Status Registers
Tone Dialing
Format of Result Code
Extended Result Codes
Result Codes for Call Progress
Long Space Disconnect
Soft Reset and Restore

All modems on the computer system required by the SDG need to be configured in this way. The modems
will have to be available in the Operating System prior to adding them to the SDG.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 47

SCADA Data Gateway | Implementers Guide

Once the modem pool configuration is complete, the SDG configuration window will display these items
under the ModemPools node as shown below:

3.4.4 Channels
Channels have a protocol associated with them, as a result all session associated with a channel will have the
same protocol. In the user interface channels are containers for sessions. A channel can be TCP/IP, Serial
or, a Modem Pool Channel.

3.4.4.1 Add TCP/IP Channel Dialog

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 48

SCADA Data Gateway | Implementers Guide

Parameter
Session Protocol
IP Address / None Name
Mode
IP Port Number
Alias Name

Description
Sets the protocol for the channel. Possible values are 'S101', 'S104',
'M101', 'M103', 'M104', 'MDNP', or 'SDNP'
Sets the Communication Channel. Examples: "192.168.1.25" or "node
name"
Sets the connection mode to use. Possible values are 'server', or 'client'.
Typically Slaves are servers and Masters are clients
Sets the TCP/IP port number to use
Name for communications channel, this must be specified

3.4.4.2 Serial Channel

Parameter
Session Protocol
COM Port
Baud Rate
Parity

Description
Sets the protocol for the channel. Possible values are 'S101', 'S104',
'M101', 'M103', 'M104', 'MDNP', or 'SDNP'
Sets the Communication Channel. Examples: "COM1", COM2,
COM3, etc
Sets the baud rate for corresponding serial port.
Sets the parity for corresponding serial port. Possible values are 'none',

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 49

SCADA Data Gateway | Implementers Guide

Data Bits
Stop Bits
Flow Control

Offline Poll Period

Alias Name

'even', or 'odd'
Sets the number of data bits for corresponding serial port. Possible values
are '7', or '8'
Sets the number of stop bits for corresponding serial port. Possible values
are '1', or '2'
Sets the mode of the serial Channel.
Possible values are:
none - use no flow control.
hardware - use hardware flow control. Hardware flow control is
configured by the SDG as shown in the table below
windows - use flow control and serial parameters (baud rate,
parity, etc.) as specified with the Windows MODE command (For
information on the Windows Mode command, type help mode in a
Windows Command window).
The period at which the sessions on the channel are polled if they are
offline. This parameter only applies to serial DNP and Modbus master
sessions on this channel. A value of zero (0) will disable this feature
Name for communications channel, this must be specified

3.4.4.3 Modem Pool Channel

Parameter
Session Protocol
Dial Out

Description
Sets the protocol for the channel. Possible values are 'S101', 'S104', 'M101',
'M103', 'M104', 'MDNP', or 'SDNP'
Specifies if the channel will dial or not. If the check box is checked the
channel will attempt to dial the telephone number on a modem specified in

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 50

SCADA Data Gateway | Implementers Guide

Modem Pool
Phone Number
Wait For Answer

Redial Attempts

Idle Time

Alias Name

the Modem Pool field. If the check box is not checked the channel will be
configured to only answer telephone calls
The modem pool this channel will use for communications. A free modem
in the modem pool must be available for the channel to attempt dialing
The telephone number of the peer device that this channel will dial when
making a connection
Sets the amount of time in seconds the modem will wait for an answer from
the peer device. If the peer device does not answer in this time period a new
dial attempt will be made
Sets the number of times the channel will attempt to dial the remote device.
If the remote device cannot be reached the channel is disabled, and must be
manually re-enabled. To re-enable the channel the
ChannelRedialLimitControl MDO must be set to false. This internal MDO
indicates true when the redial limit is reached
Sets the number of seconds the modem will stay connected after there is no
more data to send or receive. If more data is sent or received on the modem
the timeout period starts over. This parameter is useful for disconnecting the
modem when there is no communications activity. If this value is set to 0
the idle timeout is disabled (i.e. the modem will not automatically hang up)
Name for communications channel, this must be specified

3.4.5 Sessions
The session dialog boxes are protocol specific, only the configuration parameters required for the selected
protocol on the Channel configuration dialog box are displayed.
For all Session types the following fields are defined here:
Parameter
Absolute Response Timeout

Incremental Response
Timeout

Description
Default application response timeout. This value is the maximum
amount of time (in milliseconds) that will be allowed before a
command is cancelled due to timeout. This time starts when the request
is submitted and ends when the final application level response is
received. This value can generally be overridden for specific data
points by the 'TO' option in the point mapping file
Maximum amount of time (in milliseconds) to allow between messages
from a remote device when a request is pending to that device. The
message need not be a direct response to the pending request. If no
message is received from the remote device within this period it is
assumed the device has terminated processing of the request and the
request is cancelled due to an application level timeout. This timer is
restarted every time a message is received from the remote device

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 51

SCADA Data Gateway | Implementers Guide

3.4.5.1 Master Sessions


3.4.5.1.1

IEC 60870-5-101

Parameter
Controlled Station Link Address

Link Mode
Link Max Retries

Link Confirm Timeout

Link Address Size

Class 2 Poll Delay

Description
Data link address of slave component or remote device. Each
Address identifies a unique session, which is a link layer
connection between a Master and a Slave device. Set to 0xffff
(65535) for the session to be a "broadcast session".
Data link transmission mode. Required for each communications
channel. Possible values are 'balanced', or 'unbalanced'
Maximum number of attempts to re-transmit data link-layer
frames that were not confirmed. This parameter does not apply
for link layer connections (sessions) when the GATEWAY is
acting as an unbalanced slave
The maximum amount of time (in milliseconds) to wait for a
confirmation of frame. For an IEC 60870-5-104 session this is
the T1 parameter. This parameter does not apply for link layer
connections (sessions) when the GATEWAY is acting as an
unbalanced slave
Number of octets (bytes) in link Address field. A value of 0 is
only valid for sessions whose link mode is balanced. This
parameter is only used for IEC60870-5-101 master and slave
sessions. Possible values are from 0 to 2
For an unbalanced master communication link, the minimum
delay (in milliseconds) after sending request for class 2 data
when an application layer response is not pending for this

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 52

SCADA Data Gateway | Implementers Guide

Class 2 Pending Delay

Class Pending Count

Class 1 Poll Delay

Class 1 Pending Delay

Class 1 Poll Count

ASDU COT Size

session. This parameter may be used to limit the bandwidth on a


shared media like Ethernet or to prevent taxing the target device
with unnecessary communication overhead. This parameter only
applies to IEC 60870-5-101 and IEC 60870-5-103 Master
Sessions
For an unbalanced master communication link, the minimum
delay in milliseconds after sending request for class 2 data when
an application layer response is pending for this session. This
parameter may be used to limit the bandwidth on a shared media
like Ethernet or to prevent taxing the target device with
unnecessary communication overhead. This parameter only
applies to IEC 60870-5-101 and IEC 60870-5-103 Master
For an unbalanced master communication link, the total number
of consecutive class 1 and class 2 request frames that may be sent
to one device when an application layer response message is
pending from this device before moving on to the next device on
a multi-drop network. This parameter has no effect if only one
device is configured for a communication channel. If this
parameter is set to zero, the device is still polled as described for
parameter M870CNFG_LINK_CLASS1_POLL_CNT.This
parameter only applies to IEC 60870-5-101 and IEC 60870-5-103
Master Sessions
For an unbalanced master communication link, the minimum
delay in milliseconds after sending request for class 1 data when
an application layer response is not pending for this session. This
parameter may be used to limit the bandwidth on a shared media
like Ethernet or to prevent taxing the target device with
unnecessary communication overhead. This parameter only
applies to IEC 60870-5-101 and IEC 60870-5-103 Master
Sessions
For an unbalanced master communication link, the minimum
delay in milliseconds after sending request for class 1 data when
an application layer response is pending for this session. This
parameter may be used to limit the bandwidth on a shared media
like Ethernet or to prevent taxing the target device with
unnecessary communication overhead. This parameter only
applies to IEC 60870-5-101 and IEC 60870-5-103 Master
Sessions
For an unbalanced master communication link, the total number
of consecutive class 1 request frames that may be sent to one
device before moving on to the next device on a multi-drop
network (class 2 is always limited to one request frame unless an
application layer response is pending). This parameter has no
effect if only one device is configured for a communication
channel. In a multi-drop network topology, this parameter is used
to balance polling between all devices and prevent one device
from capturing all of the polling messages. This parameter only
applies to IEC 60870-5-101 and IEC 60870-5-103 Master
Sessions
Number of octets (bytes) in Cause of Transmission (COT) field
of ASDU. This parameter is only used for master and slave

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 53

SCADA Data Gateway | Implementers Guide

ASDU Address Size

Originator Address

ASDU IOA Size

3.4.5.1.2

sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol


profiles. Possible values are 1 or 2
Number of octets (bytes) in Common Address of ASDU (sector
address) field. This parameter is only used for master and slave
sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol
profiles. Possible values are 1 or 2
Originator address (for 2-octet COT). This parameter is only
used for master and slave sessions using the IEC 60870-5-101 or
IEC 60870-5-104 protocol profiles. Possible values are from 0 to
255
Number of octets (bytes) in Information Object Address (point
number) field. This parameter is only used for master and slave
sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol
profiles. Possible values are from 1 to 3

IEC 60870-5-103

Parameter
Controlled Station Link

Description
Data link address of slave component or remote device. Each Address

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 54

SCADA Data Gateway | Implementers Guide

Address

Link Max Retries

Link Confirm Timeout

Class 2 Poll Delay

Class 2 Pending Delay

Class Pending Count

Class 1 Poll Delay

Class 1 Pending Delay

Class 1 Poll Count

identifies a unique session, which is a link layer connection between a


Master and a Slave device. Set to 0xffff (65535) for the session to be a
"broadcast session"
Maximum number of attempts to re-transmit data link-layer frames that
were not confirmed. This parameter does not apply for link layer
connections (sessions) when the GATEWAY is acting as an unbalanced
slave
The maximum amount of time (in milliseconds) to wait for a
confirmation of frame. For an IEC 60870-5-104 session this is the T1
parameter. This parameter does not apply for link layer connections
(sessions) when the GATEWAY is acting as an unbalanced slave
For an unbalanced master communication link, the minimum delay (in
milliseconds) after sending request for class 2 data when an application
layer response is not pending for this session. This parameter may be
used to limit the bandwidth on a shared media like Ethernet or to
prevent taxing the target device with unnecessary communication
overhead. This parameter only applies to IEC 60870-5-101 and IEC
60870-5-103 Master Sessions
For an unbalanced master communication link, the minimum delay in
milliseconds after sending request for class 2 data when an application
layer response is pending for this session. This parameter may be used
to limit the bandwidth on a shared media like Ethernet or to prevent
taxing the target device with unnecessary communication overhead.
This parameter only applies to IEC 60870-5-101 and IEC 60870-5-103
Master
For an unbalanced master communication link, the total number of
consecutive class 1 and class 2 request frames that may be sent to one
device when an application layer response message is pending from this
device before moving on to the next device on a multi-drop network.
This parameter has no effect if only one device is configured for a
communication channel. If this parameter is set to zero, the device is
still polled as described for parameter
M870CNFG_LINK_CLASS1_POLL_CNT.This parameter only applies
to IEC 60870-5-101 and IEC 60870-5-103 Master sessions
For an unbalanced master communication link, the minimum delay in
milliseconds after sending request for class 1 data when an application
layer response is not pending for this session. This parameter may be
used to limit the bandwidth on a shared media like Ethernet or to
prevent taxing the target device with unnecessary communication
overhead. This parameter only applies to IEC 60870-5-101 and IEC
60870-5-103 Master Sessions
For an unbalanced master communication link, the minimum delay in
milliseconds after sending request for class 1 data when an application
layer response is pending for this session. This parameter may be used
to limit the bandwidth on a shared media like Ethernet or to prevent
taxing the target device with unnecessary communication overhead.
This parameter only applies to IEC 60870-5-101 and IEC 60870-5-103
Master Sessions
For an unbalanced master communication link, the total number of
consecutive class 1 request frames that may be sent to one device
before moving on to the next device on a multi-drop network (class 2 is

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 55

SCADA Data Gateway | Implementers Guide

always limited to one request frame unless an application layer


response is pending). This parameter has no effect if only one device is
configured for a communication channel. In a multi-drop network
topology, this parameter is used to balance polling between all devices
and prevent one device from capturing all of the polling messages.
This parameter only applies to IEC 60870-5-101 and IEC 60870-5-103
Master Sessions

3.4.5.1.3

IEC 60870-5-104

Parameter
T1 - Link Acknowledge
Timeout
T2 Send Acknowledge
Delay
T3 Test Frame Interval
K Transmitted
W Received
Originator Address

Description
The maximum amount of time (in milliseconds) to wait for a
confirmation of frame
Maximum time (in milliseconds) to wait to send an Acknowledge
frame
Time (in milliseconds) for the Test Frame interval
Maximum number of unacknowledged transmit frames
Maximum number of unacknowledged received frames
Originator address (for 2-octet COT). Possible values are from 0 to
255

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 56

SCADA Data Gateway | Implementers Guide

3.4.5.1.4

Master DNP3

Parameter
Session Name
SDG Local Link Address
Remote Device Link Address
Link Confirm Mode

Auto Request Mode

Description
Optional parameter for setting the Session Name to a custom value
Data link address of the local device
Data link address of the remote device
Request the remote device to send a data link layer confirm of the last
frame sent. This setting is independent of whether the remote device
will require this device to send a data link confirm to frames it receives
Each bit enables (1) or disables (0) an automatic request. This
parameter is only used for master or slave sessions using the DNP3
protocol
Possible values are:
0x001
clear restart upon RESTART IIN
0x002
integrity poll upon RESTART IIN
0x004
integrity poll upon LOCAL IIN on-then-off
0x008
integrity poll upon timeout of previous request
0x010
integrity poll upon BUFFER OVERFLOW IIN

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 57

SCADA Data Gateway | Implementers Guide

0x020
0x040
0x080
0x100
0x200
0x400
Enable Unsolicited Event
Class
Create from Device
Create Tags from XML File
DNP3 Secure Authentication

use delay measurement within time synchronization


perform time synchronization upon NEED TIME IIN
request class 1, 2, or 3 data upon CLASS 1, 2, or 3 IINs
enabled unsolicited messaging initial unsolicited
disable unsolicited messages upon restart and upon
reception of unexpected unsolicited message
Enable/Disable automatic generation of application layer
confirmations

Enables DNP3 Secure Authentication for this session. Possible values


are 0, 1, 'FALSE', or 'TRUE'. If TRUE, the DNP3 Secure
Authentication Settings dialog screen is displayed.

3.4.5.1.4.1 DNP3 Secure Authentication Settings

Parameter
HMAC Algorithm
Reply Timeout (ms)
Key Change Interval (ms)

Description
HMAC algorithm to be used in challenges.
How long to wait for any authentication reply.
For Master: Session key interval. When time since last
key change reaches this value, session keys will be

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 58

SCADA Data Gateway | Implementers Guide

updated. For systems that communicate infrequently, this


may be set to zero, using only the maxKeyChangeCount
to determine when to update keys.
For Slave: Expected session key interval and count.
When this amount of time elapses or this quantity of
Authentication messages are sent or received, the session
keys for this user will be invalidated. Interval and count
should be 2 times the master key change interval and
count. For systems that communicate infrequently,
DNPAuthKeyChangeInterval may be set to zero, using
only the DNPAuthMaxKeyChangeCount to determine
when keys should be considered old and should be
invalidated.
Max Key Change Count
Session Authentication ASDU count since last key
change, When this number of authentication ASDUs is
transmitted or received since the last key change, session
keys will be updated.
Aggressive Mode
Enable Aggressive mode.
Extra Diagnostics
Output extra diagnostics to protocol analyzer.
Max Error Count
Number of error messages to be sent before disabling
error message transmission.
User Key (hex 16, 24, or 32 bytes) User Key (must be 16, 24, or 32 hex values). For each
key there must be unique user number
DNPAuthUserNumber.
User Number
User Number: Configuration for each user specification
says default user number is 1; configures it as first user
in array. Add any other user numbers. For each user
number in the INI file there must be a DNPAuthUserKey.

3.4.5.1.5

Modbus Master

Parameter
Controlled Station Slave Address

Description
Data link address of remote device. Each Address identifies a
unique session, which is a link layer connection between a
Master and a Slave device

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 59

SCADA Data Gateway | Implementers Guide

3.4.5.2 Slave Sessions


3.4.5.2.1

IEC 60870-5-101

Parameter
SDG Link Address
Link Mode
Link Max Retries

Link Confirm Timeout

Link Address Size


ASDU Address Size
ASDU COT Size
ASDU IOA Size

Description
Data link address of slave component
Data link transmission mode. Required for each communications
channel. Possible values are 'balanced', or 'unbalanced'
Maximum number of attempts to re-transmit data link-layer frames
that were not confirmed. This parameter does not apply for link layer
connections (sessions) when the GATEWAY is acting as an
unbalanced slave
Maximum time to wait for confirmation of frame. This parameter does
not apply for link layer connections (sessions) when the GATEWAY
is acting as an unbalanced slave
Number of octets (bytes) in link Address field. A value of 0 is only
valid for sessions whose link mode is balanced
Number of octets (bytes) in Common Address of ASDU (sector
address) field
Number of octets (bytes) in Cause Of Transmission (COT) field of
ASDU
Number of octets (bytes) in Information Object Address (point
number) field

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 60

SCADA Data Gateway | Implementers Guide

3.4.5.2.2

IEC 60870-5-104

Parameter
T1 - Link Acknowledge Timeout
T2 Send Acknowledge Delay
T3 Test Frame Interval
K Transmitted
W Received

Description
The maximum amount of time (in milliseconds) to wait for a
confirmation of frame
Maximum time (in milliseconds) to wait to send an Acknowledge
frame
Time (in milliseconds) for the Test Frame interval
Maximum number of unacknowledged transmit frames
Maximum number of unacknowledged received frames

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 61

SCADA Data Gateway | Implementers Guide

3.4.5.2.3

Slave DNP

Parameter
Session Name
SDG Local Link Address
Remote Device Link Address
Link Confirm Mode

Incremental Response Timeout


Enable DNP3 Secure
Authentication

Description
Optional parameter for setting the Session Name to a custom value
Data link address of the local device
Data link address of remote device
Request the remote device to send a data link layer confirm of the
last frame sent. This setting is independent of whether the remote
device will require this device to send a data link confirm to frames
it receives
If TRUE, the DNP3 Secure Authentication Settings dialog screen is
displayed.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 62

SCADA Data Gateway | Implementers Guide

3.4.5.2.4

Modbus Slave

Parameter
Slave Address

Description
Data link address of local device. Each Address identifies a unique session, which
is a link layer connection between a Master and a Slave device

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 63

SCADA Data Gateway | Implementers Guide

3.4.6 Sectors

Parameter
Sector Address
EOI Action Mask

Online Action Mask

Blocking Action Mask

Description
ASDU address of the sector
Each bit enables (1) or disables (0) an automatic request to be sent as a
result of receiving an initialization message from a slave device. This
parameter is only used for IEC 60870-5 master sessions
Possible values are:
0x1
request a general interrogation
0x2
request a clock synchronization
0x4
request a counter interrogation
Each bit enables (1) or disables (0) an automatic request to be sent as a
result of a slave device coming online. This parameter is only used for
IEC 60870-5 master sessions
Possible values are:
0x1
request a general interrogation
0x2
request a clock synchronization
0x4
request a counter interrogation
Each bit enables (1) or disables (0) an automatic request to be sent as a
result of a slave device leaving blocking mode. This parameter is only
used for IEC 60870-5-103 master sessions
Possible values are:
0x1
request a general interrogation
0x2
request a clock synchronization
0x4
request a counter interrogation

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 64

SCADA Data Gateway | Implementers Guide

3.4.7 Adding Data Types

A Data Type is a container for MDOs or SDOs. After a sector or session (for DNP and Modbus) is specified
a Data Type can be added to it. The list of available types varies depending on the protocol.

3.4.8 IEC 61850 Client


3.4.8.1 Adding an IEC 61850 Client
To add an IEC 61850 Client to your configuration, right-click on the Gateway node and select Add IEC
61850 Client:

When prompted to use a SCL/ICD/CID file for the configuration, click the Yes or No button:

Select No to connect directly to an IEC 61850 server for configuration.


Select Yes to configure the IEC 61850 client form an SCL/ICD/CID file.
This will display the in the Add a 61850 Client dialog box:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 65

SCADA Data Gateway | Implementers Guide

Parameter
Name
Connect Timeout (msecs)
Server IP Address
Server IP Port
Server MAC Address
Client IP Address
Client MAC Address
GOOSE Adapter
SCL File
Reconnect Time (msecs)
Reconnect Re-try Count
Use SCL File

Description
The name of the client.
The time to wait for a valid connection.
The TCP/IP address of the server to connect to.
The TCP/IP port number on the server to connect to.
GOOSE parameter to specify the server.
Specifies the IP address of this IEC 61850 Client. This can be useful to
select a different network adapter.
Specifies the MAC address of this IEC 61850 Client.
The adapter to use for GOOSE communications.
The SCL/ICD/CID file used to configure the client from.
How often to attempt re-connection if a connection fails.
How many time to reconnect (0 is forever).
To allow switching between and on-line configuration or an off-line
configuration.

At a minimum, configure the Name and Server IP Address. If the SDG and IEC 61850 server are running
on the same machine, use the default loopback address provided of 127.0.0.1. Click the OK button to
continue to add the client to the configuration.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 66

SCADA Data Gateway | Implementers Guide

3.4.8.2 Adding an IEC 61850 Report Control Block


To add an IEC 61850 Report Control Block to your configuration, right-click on the 61850Client node and
select Add 61850 Report Control Block:

This will display the Add 61850 Report Control Block dialog screen:

Select any one of the Report Control Blocks from the list box on the left side of the Add 61850 Report
Control Block dialog box. The corresponding data set and its contents will be shown in the list box on the
right. Next, click the Add RCB button to add the report control block.
If the Report Control Block is already in use by a client, choose a different report control block or use a
Polled Data Set (right click on the IEC 61850 Client node in the tree again and select Add a 61850 Polled
Data Set)
The Report Control Block is now added and can be viewed by clicking on the 61850Client node:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 67

SCADA Data Gateway | Implementers Guide

3.4.8.3 Adding an IEC 61850 Data Attribute from the Report Control Block
To add an IEC 61850 Item, right-click on the Report Control Block and select Add IEC 61850 Item:

This will display the Add 61850 Data Attribute dialog screen:

Next, select an item from the list and click the Add Item(s) button. To select multiple items at once, hold
down the control key and click the desired items. To select a range of items, click the first item and hold
down the shift key and click the last item. Use the filters at the bottom of the dialog box to limit the
number of Data Attributes Shown. Click the Done button when all items have been added.
Data Attributes can also be added from the keyboard by using the down arrow key to
scroll through the list and the enter key to activate the Add Item(s) button.

The Data Attributes now appear in the tree under the 61850Client node and in the list view:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 68

SCADA Data Gateway | Implementers Guide

Note that the Data Attributes are treated in the SDG as any other Master Data Objects (MDOs). So they
can be mapped to other items and are available through the SDGs OPC Server.

3.4.9 OPC Alarm and Event Client


3.4.9.1 Adding an OCP AE Client
To add an OPC AE Client to your configuration, right-click on the Gateway node and select Add OPC AE
Client:

This will display the Add an OPC AE Client dialog screen as shown below:
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 69

SCADA Data Gateway | Implementers Guide

Next, click Find OPC Server and then select the desired OPC AE Server from the Select OPC AE Server
dialog screen. This dialog displays a list of OPC AE Servers available on the Server Node. Selecting
one of these servers places the value of the Prog ID field and the Node Name or IP address field into
the above dialog box. Click OK to continue.

Next, enter an Alias Name and then click OK to continue.


1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 70

SCADA Data Gateway | Implementers Guide

Parameter
Node Name or IP Address
Prod ID
Alias Name

Buffer Time (msecs)

Max Size (events)

Description
Specifies the Node name of the OPC AE Server to connect to
Specifies the PROG ID of the OPC AE Server to connect to
Optional Name for the OPC AE Server to connect to, if not specified
use the value of OPCAEserverProgID. It is strongly recommended
that this parameter be defined as an external OPC AE client may not
be able to browse for tags in SDG OPC AE server if the OPC AE
server name contains one or more period ('.') characters. To work
around this issue, define this alias name (with no periods for the
external OPC AE server, and reference the server by its alias.
The buffer time, specified in milliseconds, indicates the number of
times the event notifications may be sent to the subscription object.
This parameter is the minimum time spread between two successive
event notifications. The value 0 means that all event notifications
shall be sent immediately from the server. If the parameter MaxSize
is greater than 0, it instructs the server to send event notifications
quicker in order to keep the buffer size within MaxSizeSpecifies the
buffer time for the OPC AE Server subscription.
This parameter is the maximum number of events that may be
specified in a call. The value 0 means no restriction for the number of
events. Please note that if the value MaxSize is greater than 0, then
events can be sent faster from the server than through the BufferTime
parameter. Specifies the max size for the OPC AE Server

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 71

SCADA Data Gateway | Implementers Guide

Reconnect Time (msecs)


Reconnect Re-try Count

subscription.
Specifies the reconnect timeout for the OPC AE Server (0 = no
reconnect).
Specifies the reconnect re-try count for the External OPC AE Server
(0 = attempt reconnects for ever)Setting the client refresh MDO will
cause the internal limit counter to be re-set to 0resulting in continued
connection attempts to the OPC AE server.

3.4.9.2 Adding OPC AE Client Items


To add an OPC AE Client item, right-click on the OPC AE Client node and Select Add OPC AE Client
Item.

The following dialog screen will be displayed:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 72

SCADA Data Gateway | Implementers Guide

Not all OPC AE servers support an Area Space. As a result, if the Area Space browsing is not supported
event source names will need to be entered manually. If Area Space browsing is supported, then event
source items can be selected in the Area Browser to create OPC AE MDOs.
By default when a source name is selected, a source_name.Event MDO is created. This MDO will receive
events for that source name in the OPC AE Server. The value of this MDO by default will be the message
value of the OPC AE event. Time and quality are always obtained from the OPC AE event.
To browse for an Event Source, click on the nodes to expand the tree and then click Add to add the desired
item:

The event is now added to the configuration:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 73

SCADA Data Gateway | Implementers Guide

3.4.9.3 OPC Alarm and Event MDO


An OPC AE MDO represents a source of events in the OPC AE Server. As events are sent on this event
source the MDO will be updated with the event message, quality and time stamp. This behavior can be
overridden by specifying some of the options below.
3.4.9.4 Event MDO
The event MDO (i.e. source_name.Event) represents the base OPC AE event object. This MDO will
receive updates as the event source changes in the OPC AE Server.
3.4.9.5 Event Attribute MDOs
OPC AE events can have attributes associated with them. OPC AE Attributes are typically defined as
properties of Categories in an OPC AE Server. For example, a server may provide an event called right
mouse click with attributes x position and y position.
To add an OPC AE Event Attribute to your configuration, right-click on the event and select Add OPC AE
Attribute MDO:

The following dialog screen will be displayed:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 74

SCADA Data Gateway | Implementers Guide

To browse for an Event Attribute, click on the nodes to expand the tree and then click Add to add the
desired item.
The event is now displayed in the SDG Configuration window:

OPC AE Client MDOs can be created to represent these attributes. The value of these MDOs will be the
attribute value (i.e. x position or y position) but the quality and time stamp will be obtained from the event.
3.4.9.6 OPC AE MDO Options
To edit the OPC AE MDO options, right-clicking on an MDO and Selecting Edit OPC AE MDO.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 75

SCADA Data Gateway | Implementers Guide

This will display a dialog screen with selected OPC AE item:

To view the available options for this item, click on the ellipse () button to display the Options Editor
dialog screen. Select the desired options, including the Value and the Use parameters. These items are
selected by clicking in the appropriate box to change the value. Click OK to continue.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 76

SCADA Data Gateway | Implementers Guide

Parameter
ALIAS
EVENT_FALSE_MSG
EVENT_TRUE_MSG
EVENT_VALUE

LOGMASK
OPCAE_LOGMASK
OPCAESIMPLEEVENT
OPCAETIMEREPORTED
OPCAETIMEUPDATE
OPCREPORTMODEPOLL
OPCREPORTMODEREPORT
OPCTIMEREPORTED
OPCTIMEUPDATE

Description
used to parse the message string of the event and look for the string
specified if the string is found the MDO value will be set to false
used to parse the message string of the event and look for the string
specified if the string is found the MDO value will be set to true
used to specify/override the default message value for the event. (i.e.
EVENT_VALUE true will cause the MDO value to be true when the
event is received)
*
*

*Click on the ellipse () button to open the LOGMASK dialog screen which displays a
list of additional options for these items.

The following options are related to the OPC AE Client. However, these options are selected in the OPC
DA MDO Options dialog (covered in the next section).
Parameter
AE_INIT_VALUE_MDO

Description
used to specify the OPC AE MDO that will be initialized with the
value, quality and time stamp (VQT) of the Data Access MDO. Once

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 77

SCADA Data Gateway | Implementers Guide

AE_RESET_VALUE_MDO

AE_RESET_VALUE

initialized the VQT will not be applied again unless the OPC AE Client
disconnects from its server
used to specify the OPC AE MDO that will receive a VQT from the
OPC DA MDO if the AE MDO value is different from the DA MDO
value
in association with AE_RESET_VALUE_MDO is used to specify the
value of the OPC DA MDO that will cause the OPC AE MDO to be set
to the VQT of this OPC DA MDO when an OPC DA update is received
for this OPC DA MDO. Valid values for this options argument are
0,false,1,true, numeric value (float or integer) or some string.
If this option is specified the difference comparison in the
AE_RESET_VALUE_MDO option will not be used

3.4.10 OPC Data Access Client


3.4.10.1 Adding an OPC DA Client
To Add an OPC Data Access Client to your configuration, right-click on the Gateway node and select

This will display the Add an OPC Client dialog screen as shown below:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 78

SCADA Data Gateway | Implementers Guide

Parameter
Node Name or IP address
Prog ID
Alias Name
Refresh Rate (msecs)

Reconnect Time (msecs)


Read Properties Time
(msecs)
Reconnect Re-try Count

Find OPC Server

Description
Specifies the Node name of the OPC Server to connect to. This field
is automatically populated when you select a server.
Specifies the PROG ID of the OPC Server to connect to. This field
is automatically populated when you select a server.
Optional Name for the OPC Server to connect to, if not specified the
value of Prog ID is used.
Specifies the rate at which the OPC server that the client is
connected to will refresh the OPC client. This is a requested update
rate and that the server may actually no update the client at the rate
requested.
Specifies the reconnect timeout for the OPC Server (0 = no
reconnect).
Specifies the period at which properties are read (0 = don't read)
Specifies the reconnect re-try count for the External OPC Server (0 =
attempt reconnects for ever)Setting the client refresh MDO will
cause the internal limit counter to be re-set to 0resulting in continued
connection attempts to the OPC server.
Displays the Select OPC Server dialog screen.

Click the Find OPC Server button to display the Select OPC Server dialog screen:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 79

SCADA Data Gateway | Implementers Guide

This dialog displays a list of available OPC servers on the Server Node. To select an OPC Server,
highlight the server name in the list (4) and then click the OK button to return to the Add an OPC Client
dialog screen. Complete the remaining fields, if required, and then click OK to continue.
To browse the list of available network node names, click the ellipse button (1) to display the Network
Node Names dialog screen:

Select the Node Name from the list and then click OK to return to the previous screen.
To define the server type select an option (1.0, 2.0, or General) under the Available Servers section (2).
Next click the Refresh button (3), if necessary, to refresh the list of available servers.

3.4.10.2 OPC Client Items


1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 80

SCADA Data Gateway | Implementers Guide

OPC Client items are considered MDOs in the SDG. OPC Client items obtain their value from an external
OPC server. They are updated as the server provides them to the client. These points can be mapped to
other protocols or to another OPC Client.
To add an OPC Client item to your configuration, right-click on the OPC Client and select Add OPC
Client Item:

This will display the Add Item dialog screen:

To add items, navigate the item tree (1) to the desired node and then select a value from the list on the
right. Click Add Item (2) to add the item to the configuration. Once all items have been added, click
Done (3) to return to the SDG main window.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 81

SCADA Data Gateway | Implementers Guide

To view the properties of the OPC Client tag, click the Item Properties button (4). The Item Properties
dialog screen is explained in more detail below.
The Data Type group box (5) is used to override the SDG data type for the OPC point. If Use native type
is selected, the type is set to the type of the point in the OPC server. This ability to override the data type
can be useful if a server provides data as one type and it is convenient to change the type in the SDG to a
different type.
For example, if a server provides data as R8 (double float) and you want to map this to an IEC T50
(floating point set point command) it is useful to be able to change the type of the OPC client point to R4
(float) to facilitate the mapping.
Mapping the Refresh tag has to be done manually in the CSV file. When changed, this causes the server to
refresh all items in the client.
The following is an example of mapping an equation to the OPC Client Refresh tag in the CSV file:

myAND,,,,,,,,,test,Refresh,,1,,,,"myPB && 1",,,,OPC


Parameter
myAND
test
Refresh
"myPB && 1"
1

Description
the equation name
the OPCClient name
the Refresh tag in the OPC client
the equation (myPB is an internal Boolean tag)
the type of Refresh (i.e. bool)

Refer to section 4.3.2 Mapping Points to an External OPC Server for additional information about OPC
Client Items.

3.4.10.3 OPC Client Tag Properties


Properties of OPC tags can be used as MDOs. In order to use this feature the OPC Client tag MDO must
first exist (as described above). Once this tag is added, right-click on the tag and select Edit OPCDA
MDO to add the property as an MDO:

The Item Properties dialog screen is now displayed:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 82

SCADA Data Gateway | Implementers Guide

To add properties, select an item from the list (1) and then click the Add Property button (2).
To display the list of available options, click the ellipse button (3).
To refresh the list of available properties, click the Refresh button (4).
To view the attributes of the selected property, click the Attributes button (5).
Once the property is added to the SDG, it will appear with an underscore (_) appended to the end of the
OPC tag name:

This OPC Property can now be used like any other SDG MDO and can be mapped to other SDG points.
The description of the new MDO will become the description of the OPC property.
OPC properties are updated by setting the INI file configuration parameter
OPCserverReadPropertiesTime. This OPC Client configuration parameter can also be set by right-

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 83

SCADA Data Gateway | Implementers Guide

clicking on the OPC Client node and selecting Edit OPC Client. Next, adjust The Read Properties Time
field. A value of 0 will disable property reads.

A Change in quality or value of the property will cause a propagation of the quality or value to a mapped
SDO.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 84

SCADA Data Gateway | Implementers Guide

3.4.11 Master Data Objects (MDOs)


Master Data Objects (MDOs) are points that obtain their value from an external Slave device or send
commands to an external slave device. To add MDO points to a Master device, right-click on the session and
select Add MDO:

Next, the Add a MDO dialog screen is displayed:

Enter the Point Number (1) for this MDO and click the ellipse button (2) to select any require options for this
MDO.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 85

SCADA Data Gateway | Implementers Guide

The User Tag Name (3) and Description (4) parameters are optional and are used to provide further
description of the MDO.
The MDO is now added and can be viewed, or edited, by clicking the session:

3.4.12 Slave Data Objects (SDOs)


Slave Data Objects (SDOs) are points that provide a value to external master devices. SDOs also receive
commands from external devices. A monitor SDO point receives its value from a mapped MDO point.
Creating SDOs is done indirectly by mapping (drag-and-drop) an MDO on to a Slave Data Type (MDO to a
SDO). First, use the mouse to click and hold on the MDO in the Master session (1). Next, drag the MDO on
top of the Slave Data Type (2) and release the mouse button to perform the mapping:

After the point has been mapped, the Slave Data Object Editor is displayed:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 86

SCADA Data Gateway | Implementers Guide

Enter the Slave Information Object Address (1) and then select any required options (2) for the Slave Point.
Click OK to return to the SDG main window.
The SDO is now added to the Slave Data Type:

3.4.13 Internal User defined MDOs


Internal User defined MDOS are MDOs that can be used to store temporary point values. Internal User
MDOs are added to the configuration by right-clicking on the Gateway node and selecting Add Internal
MDO:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 87

SCADA Data Gateway | Implementers Guide

This will display the Internal Master Data Object Editor dialog screen. This dialog screen allows you to
define the User Tag Name (1), Options (2), and the Type (3) for the MDO. The Description parameter (4) is
optional:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 88

SCADA Data Gateway | Implementers Guide

One use of Internal MDOs is to facilitate mapping of SDO points to other SDO points. Another use is to
provide a user modifiable source of data in the SDG. To use an Internal MDO to map between two slave
points, first create the Internal MDO of the desired type, then drag and drop the internal MDO onto the
desired command SDO (this will provide a value for the MDO), and then drag and drop the same internal
MDO onto the desired monitor SDO point (this will provide a value for the monitor SDO), see the diagram
below.

The value of a command SDO will be passed on through the Internal MDO to a monitor SDO.
Internal MDOs can be used just like any other MDO type in the SDG. However internal MDOs can accept a
value and provide a value to a mapped point.
To modify the current value and quality of an MDO, click on the Gateway node and then locate the internal
MDO in the item pane on the right. Next, right-click on the MDO and select Edit Internal MDO:

The following dialog boxes are used to manage the value and quality for various data types:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 89

SCADA Data Gateway | Implementers Guide

To edit an Internal Boolean MDO Value, click the Value checkbox (1) to set the value to TRUE or
uncheck the checkbox to set it to FALSE. Click the Quality button (2) to edit the MDOs quality.

To edit an Internal Analog MDO value, enter a value in the Value textbox (1). Click the Quality button (2)
to edit the MDOs quality.

To edit the quality of an Internal MDO, select the appropriate checkboxes on the Quality Editor Dialog
screen. The quality can be a combination of the check boxes listed above. The numerical value is displayed
in the Value edit box.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 90

SCADA Data Gateway | Implementers Guide

3.4.14 Equations
Equations are MDOs that obtain their value based on a calculation performed on one or more other points in
the configuration. To add an Equation MDOs to the configuration, right-click on the Gateway node and
select Add Equation:

This will display the Master Data Object Equation Editor dialog screen:

The equation editor makes it easy to create equations using a drag-and-drop approach. Equation operations
and database tags can be dragged and dropped from the Tag List (1) or Operations List (2) into the Equation
field (3). The Validate Equation button (4) can be used to verify the syntax of the equation prior to adding it
to the point list.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 91

SCADA Data Gateway | Implementers Guide

One use of equations is to convert the raw value reported by the SDG into an IEC Normalized or Scaled
value. For example, to convert the reported value, which has a range of -32768 to 32767 to a Normalized
value, which has the range of -1 to +1-2-15, enter an equation to divide the reported value by 32768.
See section 4.3.5.7 Equation Field for more information on the options and restrictions for equations.

3.4.15 Editing Masks


The following dialog screen is used to edit various masks used in the SDG. The contents of the dialog screen
are different depending on which mask is being edited. These dialog screens are typically accessed by
clicking the ellipse button (
Mask Value:

) next to a mask value. Select the appropriate checkboxes to generate the

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 92

SCADA Data Gateway | Implementers Guide

3.4.16 Editing Tag Options


The following dialog screen facilitates editing the options field for tags (i.e. MDO, SDO, OPC Client,
Equation).

The Option column (1) displays the option name. The Value column (2) is used to set the value of the option.
For Boolean options, in order to include the option the Value must be TRUE. The Use column (3) must be
set to Yes for the option to be included. To edit an option, click in the textbox next to the option to change the
value.

3.4.17 Internal Predefined MDO Points


Internal points or predefined points are MDOs that provide certain status and control operations for the SDG.
(See section 4.4.3 Predefined Tag Names for Monitoring and Control for additional information about these
points). Since many of these points are for status and control of the SDG, they are not editable in the
configuration tool. Below are the points that are editable in the configuration tool.

3.4.17.1 IEC Action Mask


The IEC Action Mask Editor is used to define the mask and period of each of the IEC Action Masks. It is
also used to define the mask for the IECActionNow predefined point. It is accessed by right-clicking on
one of the IEC action mask predefined points under an IEC sector, in the configuration window, and then
selecting Edit IEC Action:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 93

SCADA Data Gateway | Implementers Guide

The retry failed transaction part of this dialog screen is used to configure a retry of a timed out transaction,
the failed transaction will be retried for Count times at an interval of Period (ms). Once the transaction
succeeds again the retry count is reset to 0.
This will display the IEC Action Mask Editor dialog screen:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 94

SCADA Data Gateway | Implementers Guide

3.4.17.2 DNP Action Mask


The DNP Action Mask Editor is used to define the mask and period of each of the DNP Action Masks. It
is also used to define the mask for the DNPActionNow predefined point. It is accessed by right-clicking on
one of the DNP action mask pre-defined points, in the configuration window under a DNP session, and
selecting Edit DNP Action:

This will display the DNP Action Mask Editor dialog screen:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 95

SCADA Data Gateway | Implementers Guide

The DNPActionNow has a completion status MDO associated with it DNPActionNowStatus. This MDO is
used to display the current status of the DNPActionNow request. The following describes the meaning of
the values:
Status Value
0 (success)
1 (intermediate)

2 (failure)
3 (mismatch)
4 (statuscode)
5 (iin)
6 (timeout)

7 (canceled)

Description
Indicates the request has completed successfully
Indicates a response was received but the requested command is not yet complete.
This could mean the response is part of a multi-fragment response and did not
have the FINAL bit set. Or this could be a request such as a select operate that
requires multiple requests and responses.
Indicates that the transmission of the request failed
The response to a select or an execute did not echo the request.
The response to a select or an execute echoed the request, except the status code
was different indicating a failure.
The response to the request had IIN bits set indicating the command failed.
This indicates that the request has timed out. This could either be an incremental
timeout indicating we received no link layer frame from the device in the
specified time, or an application response timeout indicating this particular
request did not complete in the specified time.
This indicates either that the user asked that the request be canceled by calling
dnpchnl_cancelFragment or that a second duplicate request has been made and
therefore this first one is canceled.

Typically this can be used to indicate the DNPActionNow has completed and a reason why. This can also
be used to sequence a set of commands/requests on a multi-drop connection.

3.4.17.3 Modbus Action Mask


The Modbus Action Mask Editor is used to define the mask and period of each of the Modbus Action
Masks. It is also used to define the mask for the MBActionNow predefined point. It is accessed by rightclicking on one of the Modbus action mask pre-defined points, in the configuration window under a
Modbus session, and selecting Edit Modbus Action:

This will display the Modbus Action Mask Editor dialog screen:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 96

SCADA Data Gateway | Implementers Guide

All data specified in the database will be read at the period specified by the mask period.
Transactions will be created based on an optimization algorithm and issued to a slave
device.

3.4.18 Mapping Points from Master Components to Slave Components


To map points from Master Components to Slave Components, simply drag-and-drop an MDO on a data type
of a slave device. When the MDO is dropped on the slave data type, the following dialog box is displayed:

This dialog box is used to set the appropriate parameters of the slave data point.

3.4.19 Mapping Points from Master Components to Master Components


Mapping of MDOs to MDOs is only supported for monitor points as the source and command points as the
destination. For OPC client points the destination point must be a read/write point.
To map points from Master Components to Master Components, drag a monitor MDO to a command data
type of a master device. When the MDO is dropped on the master data type the following dialog box is
displayed. Use this dialog box to set the appropriate parameters of the master command data point.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 97

SCADA Data Gateway | Implementers Guide

To map points from the OPC Master Component to other Master Components, drag a monitor MDO to an
OPC client. When the MDO is dropped on the OPC Client the following dialog box is displayed. Use this
dialog box to set the appropriate parameters of the OPC point.

MDOs can also be mapped to internal points (both predefined and user defined). When mapping MDOs to
these internal points they must already be defined. Select the source MDO and then drag it to a Gateway,
Session, Channel, or Sector node in the configuration tree. When the point is dropped on one of these
targets, a Tag Selector dialog will appear:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 98

SCADA Data Gateway | Implementers Guide

This dialog allows the destination mapped point to be selected. When MDOs are mapped in this way, the
destination point must be writeable.
Once this operation is completed the source MDO will provide a value to the destination MDO.

3.4.20 Mapping Points from Slave Components to Slave Components


Mapping of SDOs to other SDOs is accomplished by the use of Internal User Defined MDOs. See section
3.4.13 Internal User defined MDOs for more information.

3.4.21 Saving the INI and CSV files


The configuration (INI) file and point mapping (CSV) files are saved every time the SDG exits. In addition
there is a save option on the file menu that can be used to save these files.

3.4.22 Selecting the INI during Start-up


You can specify which INI file to use with the SDG during start-up. This is very useful for testing various
configurations and settings with your SDG configuration. To select a specific INI file to use with the SDG
during start-up, you will need to add a $ argument to shortcut used for starting the SDG.
To do this, right-click on the shortcut and then select Properties. Next, in the Target field add the argument
to the end of the path as follows: "C:\Program Files\Triangle MicroWorks\SCADA Data
Gateway\tmwgtway.exe" $
Now each time the SDG is started, the Open INI File dialog screen is displayed which will allow you to
locate the INI file to be used for this SDG configuration. Click the Cancel button to load the INI file from
the location specified in the SDG Options dialog screen (ViewOptions from the SDG menu)

3.4.23 Refreshing the Display


In some circumstances the configuration window may not display the current state of the SDG. The Refresh
(F5) item in the View menu can be used to redraw the display.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 99

SCADA Data Gateway | Implementers Guide

3.4.24 Tags
Tags are added to a data type in the configuration interface. Tags can be MDOs, SDOs, Equations, or OPC
Client items. Slave Data Objects are created indirectly by mapping MDO, Equations, Internal Points, or OPC
Client items to them. See section 4.3.5 Definition of Fields contained in the Point Mapping File for
additional information about the fields on the below dialog boxes.

3.4.25 Creating Tags Automatically


When a Master component is defined in the SDG, sometimes it is convenient to obtain all the tags that are
defined in the connected slave device. To automatically create tags, right-click on the session and select the
Auto Create Tags context menu option will send a General Interrogation to the Slave device, as the slave
point data returns to the Master component, Data Types and Tags are created for each of the points received.
This operation is available for both sessions and sectors (only for IEC).

3.4.26 SDG Options


The following dialog is used to set the SDG options:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 100

SCADA Data Gateway | Implementers Guide

The Auto Refresh Time (1) sets the rate at which the point list in the configuration window is refreshed.
Setting this value to 0 disables the refresh operation. When enabled the values of all the points displayed in
the list are updated from the internal SDG database at the rate specified.
The Paths group is useful to define the location of the SDG INI file and help file. Note that if running as an
OPC server (started by an OPC client), the SDG needs this information to accurately locate the INI file and
help file. When started by an OPC client, the default path if not specified, is dependant on the OPC client
and operating system (this usually defaults to C:\winnt\system32).
The Enable Use of Path setting (2) causes the SDG to look in the specified directory during startup for the
tmwgtway.ini file, if checked. By default during installation these paths are initialized to the location of the
SDG executable file. To change the path of the INI file, click on the ellipse (3) next to the INI File parameter
and select the location of the INI file.
To change the path of the Help file, click on the ellipse (4) next to the Help File parameter and select the
location of the Help file. The path to the INI file that will be used when the SDG is run as a service can be
set by clicking the ellipse (5) next to the INI parameter and then selecting the location.
There are also several parameters available for setting the SDG Service start-up options (6) when the SDG
GUI is exited.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 101

SCADA Data Gateway | Implementers Guide

4. Configuration Reference
This section discusses the configuration of the SDG. The SDG application configuration is specified in a file,
called tmwgtway.ini.
In addition, the tmwgtway.ini file may specify a second configuration file called a point-mapping file, which
is described in section 4.2.2. The point-mapping file defines the characteristics necessary to identify and
interact with the data associated with a remote Master or Slave device(s).

4.1

OPC Server Registration for SDG Service and GUI

As mentioned in the Quick Start guide the SDG must be registered as an OPC server if you wish to connect to
it from an OPC client. Normally this is done by the install.
Registration of the SDG as an OPC server can be done from the Windows Command Shell (DOS window) as
follows:

Open a Windows Command Shell (DOS window) by going to StartRun and typing cmd in
the "Open:" field, and then clicking the OK button.
When the Command shell is opened, you will typically be in your C: drive. If you have installed
the SDG on a hard drive other than the C: drive, then change to that drive by typing the letter for
that drive followed by a colon. For example, if you have installed the SDG on your E drive, then
type the command "E:" to change into the E drive.
Change to the directory where your SDG is installed by typing the command "cd
PATH_TO_SCADA_DATA_GATEWAY", where PATH_TO_SCADA_DATA_GATEWAY is the
directory where you have installed the SDG. For example, if you installed the SDG in the
directory C:\Program Files\TriangleMicroWorks\SDG and you are in the C drive in your DOS
window, then type the command "cd C:\Program Files\TriangleMicroWorks\SDG". Depending
upon how your system is configured, you may have to use the short directory names, such as "cd
C:\Progra~1\Triang~1\SDG".
Next, type the command "tmwgtway.exe -regopcserver" to register the OPC server. This will
register the Alarm and Event as well as the Data Access servers. Once registered, the SDG will
be available to OPC client software under the name TriangleMicroWorks.OPCDA.1 for the
OPC Data server and TriangleMicroWorks.OPCAE.1 for the OPC Alarm and Event server.
Un-registration is as above but use "tmwgtway.exe -unregopcserver".

The SDG service can, and should, also be registered as an OPC server. However, the GUI and service can
not be registered at the same time. Normally this is done automatically when the GUI and/or service are
executed.
In case this process has to be done manually, here are the necessary commands:
Command
GTWService.exe regopcserver
GTWService.exe unregopcserver

Description
Register service as OPC Data access and Alarm and Event server
Un-register service as OPC Data Access and Alarm and EVENT
server

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 102

SCADA Data Gateway | Implementers Guide

4.2

Tmwgtway.ini Initialization File

The SDG is configured using a configuration file. By default this file is named tmwgtway.ini. The file
includes comments describing the purpose of each parameter, the range of values, and the default value. The
tmwgtway.ini file must be located in the same directory as the SDG executable, and changes should be made
when the SDG software program is NOT running (closed). Tmwgtway.ini is overwritten with any parameter
changes made during the program execution when the SDG terminates. Comments in tmwgtway.ini should
not be altered, since they will be set back to the original text when the SDG saves the file.
Once you have completed configuring the SDG, Triangle MicroWorks recommends that you make a copy of
the configuration files (tmwgtway.ini and tmwgtway.csv) so you can easily restore your system in the event
that these files are accidentally lost or overwritten.
Configuration information may be read from another initialization file specified on the command line when
invoking the SDG. This initialization file will not be overwritten when the SDG terminates. Comments may
be inserted in this file by preceding the comment text with two slash characters (i.e.: //). For example,
tmwgtway@file.xyz could be used where file.xyz is the name of the file being passed into the Gateway.
The following diagram shows how the some of the important configuration parameters in tmwgtway.ini relate
to the point-addressing scheme.

4.2.1 Tmwgtway.ini Parameters


Tmwgtway.ini must be modified with a standard ASCII text editor to match the target application equipment
prior to running the SDG. The following table shows basic parameters that should be set prior to establishing
a connection. The configuration parameters required depend on the protocol used for each communication
session.
Parameter
PhysComChannel
PhysComBaud
PhysComParity
PhysComDataBits
PhysComStopBits
PhysComIpPort
PhysComIpMode

DNP

101

103

104

MB

X
X
X
X
X
X
X

X
X
X
X
X

X
X
X
X
X

X
X
X
X
X
X
X

X
X

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Description
COM port or remote TCP/IP address
COM port baud rate
COM port parity
Number of COM port data bits
Number of COM port stop bits
TCP/IP port number
TCP/IP connection mode

Page 103

SCADA Data Gateway | Implementers Guide


SessionLinkAddress
SessionLocalAddress
PhysComProtocol
SessionCommIndex
LinkConfirmMode

X
X

LinkSizeAddress
LinkMode
DbasSectorAddress
ASDUsizeCmnAddr
ASDUsizeCot
ASDUsizeIOA

Data link address of the slave component


or remote device
Data link address of the local device
Protocol for master or slave channel
Index of PhysComChannel for each
session
Remote device will send a data link
confirm of the last frame sent
Number of octets (bytes) in link Address
field
Balanced or unbalanced data link mode
ASDU address of each sector within a
session
Number of bytes in Common Address of
ASDU (sector address)
Number of bytes in Cause Of
Transmission (COT) field of ASDU.
Number of bytes in Information Object
Address field

For a complete listing of all the parameters contained in the tmwgtway.ini configuration file, please see
Error! Reference source not found..

4.2.2 Setting IEC 60870-5-101 and -104 Slave Data Types to use Time Stamps
The SDG does not currently support setting a data type with time stamp (e.g., Type 58 Single Point with
CP56 timestamp) via the GUI interface. However, the default data type can be set via the INI file.
To set the default data type to use a time stamp, select the "base" data type from the GUI (e.g., T1 - Single
Point). Then set the corresponding xxx_timeFormat parameter in the INI file. For example, for Single
Points, modify the following parameter:
MSPNA_timeFormat[*][*]=CP56

//
//
//
//
//
//
//
//
//

Selects the time format used to report


MSPNA change events. This parameter is
only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104
protocol profiles. Possible values are
'CP24', 'CP56', or 'NONE'.
DEFAULT: CP56
INDICES:
[sessionIndex=0-249][sector=0-63]

For Double Points, use MDPNA_timeFormat, for Step Position use MSTNA_timeFormat, etc.

4.2.3 Setting DNP3 Event Types and Default Variations


DNP3 event types (e.g., Type 2, Binary Input Events) are not configured directly in the SCADA Data
Gateway. These types are automatically determined from the data types of the associated static data types.
Currently, the DNP3 Default Variation cannot be set from the GUI; however, they can be set via the
ObjnnDfltVariation parameter in the INI file, where nn is the numerical data type. For example, the
following fields set the default variation for Object 1 (Binary Input) and Object 2 (Binary Input Change):
Obj01DfltVariation=2

// Variation in which Object 1 binary


// inputs will be returned when queried

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 104

SCADA Data Gateway | Implementers Guide

Obj02DfltVariation=2

4.3

//
//
//
//

using variation 0. This parameter is


only used for slave sessions using the
DNP3 protocol. Possible values are 1 or 2.
DEFAULT: 2 variation

//
//
//
//
//
//
//

Variation in which Object 2 binary input


events will be returned when queried
using variation 0. This parameter is
only used for slave sessions using the
DNP3 protocol. Possible values are
from 1 to 3.
DEFAULT: 2 variation

Point-Mapping File

The Point-Mapping file (tmwgtway.csv) identifies how the value for each data point in a Slave Component is
obtained. This could be a direct mapping to a Master Data Point, or an equation, which incorporates multiple
Master Data Points. If the OPC server is the only Slave Component in the target application, it may not be
necessary to create a point-mapping file. Creating a point map file with only the required points will improve
efficiency.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 105

SCADA Data Gateway | Implementers Guide

Organization of Point Mapping File Data

4.3.1

Mapping points to the Internal OPC Server

By setting GlobalCreateTagAutomatic = TRUE in the INI file, the data points returned from a remote slave
device to the SDG will automatically be shown in an OPC Client Browser that is connected to the SDG OPC
Server. Simply define the remote slave device in the INI file, or by using the Configuration User Interface,
run the SDG, and perform a general interrogation command (see section 4.4.3 Predefined Tag Names for
Monitoring and Control). All data points returned from the remote device will then be shown in the OPC
Client Browser and will not require an entry in the Point-Mapping file.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 106

SCADA Data Gateway | Implementers Guide

Since Command points are not received from the remote device, they will not be shown in an OPC Client
Browser. Command points may be configured in one of two ways:
1. Manually enter a physical tag name in the OPC client for the command point, for example if the
protocol is IEC60870-5-101 the physical tag name might be "COM1.L3.A3.T46.P1142". The value
written to this tag will be converted to a 101 Double point command using the command qualifier
and select mode (whether a select command is sent prior to the execute) specified in the "Command
Qualifiers" section of INI file. This method requires all points of the same type use the same
command qualifier and execute mode settings.
2.

Create a point-mapping file with only Master component entries for each command point (the Slave
component columns are left blank) as outlined later in this section. Use the options field to set the
Qualifier of Command and select mode to a different value for each point if necessary. If the
options field is left blank, the values specified in the "Command Qualifiers" section of the INI file
will be used. Points listed in the point mapping file will appear in the OPC Client Browser followed
by the user name in parenthesis (if one was entered).

4.3.1.1 OPC Server Point Properties


The SDG OPC Server exposes several properties of the Master Data Objects (MDO). These allow access
to the quality, description and other properties of a MDO.
The following properties are supported:
Property Name

OPC Property Value

#DataType

OPC_PROP_CDT

#Value

OPC_PROP_VALUE

#Quality
#TimeStamp
#AccessRights

OPC_PROP_QUALITY
OPC_PROP_TIME
OPC_PROP_RIGHTS

#Description

OPC_PROP_DESC

Description
Provides the OPC Variant data type of the
Point
Provides the current value of the point (same
as the point it self i.e. without the .Value)
Provides the OPC quality of the point
Provides the update time of the point
Provides the access rights of the point
Provides a description of the Point (if it was
provided)

To use a property add it to the end of the tag name. For instance: if the MDO tag being subscribed to by
an external OPC Client is named MDNP.L4.T30.P0, to obtain its quality use MDNP.L4.T30.P0#Quality.
Simply specifying MDNP.L4.T30.P0 will return the value of this MDO.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 107

SCADA Data Gateway | Implementers Guide

4.3.2

Mapping Points to an External OPC Server

The OPC Client in the SDG is a master component. It receives data from an external OPC Server and makes
it available to the slave components in the SDG. The SDG Point Mapping file is used to describe this data
flow.

When creating a Point Mapping file for the OPC Client, it is only necessary to define the User Tag Name
and Communication Channel fields. The User Tag Name must be the fully qualified path name to the
data point in the external OPC Server (such as Device1.Group.Tag1). The Communication Channel must
be the OPCserverName from the SDG INI file. If the OPCServerName is not specified in the initialization
file, it defaults to the OPCserverProgID. Refer to Section 1.4.4 for more information about these
parameters.

4.3.3

Format of the Point-Mapping file

The Point-Mapping file is stored in Comma Separated Value (CSV) format. It may be derived from existing
data files describing the target application or generated from the SDG configuration editor. The following
table lists the order of the fields in the Point-Mapping file.
Item Component
1
Master
2

Master

Attribute
User Tag Name / OPC Tag Name / IEC 61850 Tag Name / IEC 61850 Data Set
Alias Name
Communication Channel / OPC Server Name/ IEC 61850 Client Name / IEC
61850 Data Set Logical Node Name

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 108

SCADA Data Gateway | Implementers Guide

Master

Master

Master

Master

7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

Master
Master
Dataset
Slave/Master
Slave/Master
Slave/Master
Slave/Master
Slave/Master
Slave/Master
Slave/Master
Master
Master
Slave
Master
Mapping

Data Link Address (Not used for IEC 60870-5-104) / IEC 61850 Report Name /
IEC 61850 Data Set Name
ASDU Address (Not used for DNP) / IEC 61850 Quality Name / IEC 61850 Data
Set Element Name
Type ID / OPC type/ IEC 61850 Type / IEC 61850 Data Set Report Control Block
Name
Information Object Address/Information Number/ IEC 61850 Time Name / IEC
61850 Data Set GOOSE Control Block Name
Element Index (Only used for IEC 60870-5-103)
Function Type (Only used for IEC 60870-5-103)
Identifies the dataset present values descriptor element
Communication Channel / mapped OPC server
Data Link Address (Not used for IEC 60870-5-104) / mapped OPC tag name
ASDU Address (Not used for DNP)
Type ID / mapped OPC type
Information Object Address/Information Number
Element Index (Only used for IEC 60870-5-103)
Function Type (Only used for IEC 60870-5-103)
Equation
Options
Options
Description
Mapping mode (optional) the value can be MDNP_PROTOTYPE,
MDNP_PROTO_ELEMENT, MDNP_DESCRIPTOR,
MDNP_DESCP_ELEMENT, MDNP_DESCP_ELEMENT_VALUE,
SDNP_PROTOTYPE, SDNP_PROTO_ELEMENT, SDNP_DESCRIPTOR,
SDNP_DESCP_ELEMENT, SDNP_DESCP_ELEMENT_VALUE,USER,
OPC_USER, MDO_USER, OPC_INTERNAL, MDO_INTERNAL, MDO, SDO,
OPC, I61850_DS or I61850_MDO. If not specified SDO is assumed.

Table 1 - Order of fields in Comma Separated Value format Point-Mapping File

The configuration editor is used to generate the CSV file using a graphical user interface. The editor
provides the tools required to intuitively define the information required in the CSV file. The CSV file is
both written and read by the SDG configuration editor; although it is not recommended a user can choose to
modify the file outside of the configuration tool. For DNP datasets the 1st 3 to 6 fields are overridden with
specific dataset descriptor and prototype meanings (i.e. The mapping modes included for data set descriptors
and prototypes).

4.3.4 Master and Slave Component Columns


The configuration editor maps data points in Master Components (shown in the right-hand column) to data
points in Slave Components or command points in Master Components (shown in the left-hand column).
The purpose of this is to specify how the value for each data point in a Slave Component or command point
in a Master Component is obtained. This could be a direct mapping to a Master Data Point, or an equation,
which incorporates multiple Master Data Points. This mapping can also include changing fields such as the
information object address and even conversion to a different protocol.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 109

SCADA Data Gateway | Implementers Guide

The data points defined in the Master Components (right-hand columns) are an image of monitored or
controllable data in remote Slave devices. Only the objects in the remote Slave that are mapped to points in
an SDG Slave Component are listed in the Master Component column. There may be data received by the
Master Component which has no Master Point defined. This is not an error condition and the unused data is
simply discarded.
Since the OPC Server Slave Component is able to automatically generate a list of data received from the
remote slave device, these points do not require entries in the Master Component column (i.e. They are
mapped automatically when an OPC client connects to the SDG. For more information on mapping points to
the OPC Server, see section 4.3.1 Mapping points to the Internal OPC Server.
When mapping monitor master points to control/command master points the left hand column represents the
control/command point and the right hand column represents the monitor point. The monitor point receives a
value from an external slave and then causes the mapped master command point to issue a command to its
associated slave.

Figure 11 Example of Master to Slave and Master to Master Association


Multiple Slave Component Points may be associated with a single Master Component Point. The Slave data
points identified in the left-hand columns are data that will be created in SDG Slave Components, and may be
read by remote Masters. While a Slave Component point can only be mapped to one Master Component
point, a Master point may be mapped to zero, one, or more Slave Component points. If mapped to zero Slave
Component points, a Master Component point is only available to the OPC Server Component.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 110

SCADA Data Gateway | Implementers Guide

Field

CSV file field


index

Applies to Protocol

Range of
Values

Corresponding INI file parameter or


comment

User Tag

101, 103, 104, DNP,


OPC Client, OPC
AE Client, IEC
61850

String

Specify the fully qualified name of the


OPC tag in the external server or a user
defined name for the tag or a fully
qualified IEC 61850 tag name

Channel / Port

2,10

101, 103, 104, DNP,


OPC Client,
datasets, OPC AE
Client, IEC 61850

COM1,
COM2,
127.0.0.1,

PhysComChannel, OPCserverName,
PhysComChnlName, I61850ServerName

Data Link
Address

3,11

101, 103, DNP,


datasets, IEC 61850

Decimal

SessionLinkAddress,
I61850ReportControlBlockName

ASDU
Address

4,12

101, 103, 104,


datasets, IEC 61850

Decimal

DbasSectorAddress if a session (link


Address) only has one sector (ASDU
address) defined, the link address and the
ASDU address are usually set to the same
value

Type ID (101,
103)

5,13

101, 103, 104, DNP,


datasets, OPC
Client, OPC AE
Client, IEC 61850

Decimal

Defines the data type of the point. Must


reference the non-time-tagged Type ID for
the data type. See Interoperability
Documents in Appendix for list of
supported Type IDs for each protocol.

6,14

101, 103, 104, DNP,


datasets, OPC Client
item properties, IEC
61850

Decimal

Point Number (DNP)


Information Object Address (101,104)
Information Number (103)

Object Group
(DNP)
IOA/INF

Property ID for OPC client point

Element Index

7,15

103

Decimal

Zero offset index to identify point within


INF for 103 Type IDs 3 (Measurands I)
and 9 (Measurands II), leave this field
blank for all other Type Ids

Function Type

8,16

103

Decimal

It is assumed that a remote


IEC 60870-5-103 slave device will report
each INF with only one function type.

DNP Dataset

DNP

Equation

17

Any

String

Specifies the equation

Tag Options

18,19

All

String

Specify options/properties for the tag

Tag
Description

20

All

String

Specify a description for the tag

Mapping
Mode

21

All

String

Provides a hint to the point map parser as


to how to interpret the data in the other
fields.

Identifies the dataset present values


descriptor element

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 111

SCADA Data Gateway | Implementers Guide

4.3.5 Definition of Fields contained in the Point Mapping File


4.3.5.1 Point Identification Fields
Data points are identified by their physical connection to the SDG and the addressing within the
communication protocol configured for the remote device. The following table applies to both Master and
Slave Component points; however, some of these fields are only applicable to specific protocols.
4.3.5.2 Data Options Field
The options field allows the default properties of a point to be over-ridden. For some options, a global
setting in the INI file defines the default behavior. The options field allows point properties to be
specifically enabled on a point-by-point basis.
For example, logging of IEC 60870-5-101 single point binary events is controlled by INI file parameter
MSPNA_logToFile. If this is set false, specific individual single point event objects will have their events
logged by entering LOG in the option field for that point. If MSPNA_logToFile is set true, specific single
point objects will be excluded from the event log file by entering !LOG in the option field.
The Options field may contain zero, one, or more of the permissible options for the object (e.g., G02
GI). When multiple options are required for one point, each option should be separated by a space.
Options are specified on various configuration dialog boxes by clicking the ellipse button (1) and selecting
the required options on the Options Editor dialog screen:

4.3.5.3 Table of Control Options and the Meaning


The option field provides a means of specifying various properties of a point, and has different values
depending on the type of point. The options supported for each protocol are listed below:
Component
All protocols:
Master

Operation

Option Name

Meaning

Log file

Record (do not record) changes/events


on this point in the log file.

Master

OPC Alarm
and Events

Master

Control

LOGMSKxxxx
See Table of Events in the
section following this section.
OPCAE_LOGMSKxxxx
See Table of Events in the
section following this section.
WRITE_PERIOD xxxx

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Provide (do not provide) changes/events


on this point through the OPC Alarm
and Event Server.
Specifies the period xxxx at which to
write the control point in (ms). This will
cause a write command to be executed
for the specific protocol of which the

Page 112

SCADA Data Gateway | Implementers Guide

Master

Control

2PASS
1PASS

Slave

Control

2PASS
1PASS (!1PASS)

SYNC

ASYNC

Slave

Monitored
Data

GI (!GI)

CYC (!CYC)
OPCTIMEUPDATE

OPCTIMEREPORTED

OPCAETIMEUPDATE

OPCAETIMEREPORTED

Slave

Equations

EQTIMEUPDATE

EQTIMEREPORTED

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

point is a member. This will work for


any point that allows control/write
operations. Normally a command is
only issued when the command points
driving point (i.e. the point supplying
the value for the command point)
changes value or is updated.
Control point issues 2-pass control
sequence (Select/Execute)
Control point issues 1-pass control
sequence (no Select command)
Control must be performed with a
Select/Execute command pair
Control will be performed when an
Execute command is received (Select is
not required)
Control is synchronous. The reply
indicating completion of the command is
sent after the downstream device
completes the command.
Control is asynchronous. The reply
indicating completion is sent
immediately to the originating device
and is not delayed waiting on the
downstream device to report completion
of the command.
Point is included in (excluded from)
response to General Interrogation
(Station Interrogation) request
Point is (is not) reported as cyclic data
The event time used in OPC updates is
the time at which this value was last
updated relative to the SDG system
clock. 1
The event time used in OPC updates is
the reported time from the remote device
of the last event that caused this value to
change. 1
The event time used in OPC Alarm and
Event updates is the time at which this
value was last updated relative to the
SDG system clock. 1
The event time used in OPC Alarm and
Event updates is the reported time from
the remote device of the event that
caused this value to change. 1
The event time used for this equation is
the time the equation was last calculated
relative to the SDG system clock. 1
The event time used for this equation is
the reported time from the remote device

Page 113

SCADA Data Gateway | Implementers Guide

UPDATE_IF_NO_CHANGE

OPC DA/AE
Client

Name

ALIAS xxxx

OPC DA
Client

Write

WRITE_INVERTED

OPC DA
Client

Write

WRITE_TRUE_AS_ONE

OPC AE
Client

Event

EVENT_VALUE

OPC AE
Client

Event

EVENT_TRUE_MSG

OPC AE
Client

Event

EVENT_FALSE_MSG

OPC DA
Client

Event

AE_INIT_VALUE_MDO

OPC DA
Client

Event

AE_RESET_VALUE_MDO

OPC DA
Client

Event

AE_RESET_VALUE

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

of the last event that caused the


equations value to change. 1
If this option is specified, when an
equation is calculated regardless of
whether its resulting value changes or
not the resulting value of the equation
will be passed on to any mapped points.
Specify an ALIAS name for the OPC
DA or AE Client point. This is the
name that the SDG will use internally
for this OPC Client tag. It has the same
usage as the User Tag Name.
Specifies that when the OPC Boolean
point is written it should be written with
a value of TRUE if it is FALSE and
FALSE if it is TRUE.
Specifies that when the OPC Boolean
point is written it should be written with
a value of 1 if it is TRUE instead of -1
which is the numeric value of TRUE in
OPC.
Used to specify/override the default
message value for the event. (i.e.
EVENT_VALUE true will cause the
MDO value to be true when the event is
received)
Used to parse the message string of the
event and look for the string specified if
the string is found the MDO value will
be set to true.
Used to parse the message string of the
event and look for the string specified if
the string is found the MDO value will
be set to false.
Used to specify the OPC AE MDO that
will be initialized with the value, quality
and time stamp of the Data Access
MDO once initialized the VQT will not
be applied again unless the OPC AE
Client disconnects from its server.
Used to specify the OPC AE MDO that
will receive a VQT from the OPC DA
MDO if the AE MDO value is different
from the DA MDO value.
In association with
AE_RESET_VALUE_MDO is used to
specify the value of the OPC DA MDO
that will cause the OPC AE MDO to be
set to the VQT of this OPC DA MDO
when an OPC DA update is received for
this OPC DA MDO. Valid values for

Page 114

SCADA Data Gateway | Implementers Guide

this options argument are


0,false,1,true, numeric value
(float or integer) or some string. If
this option is specified the difference
comparison in the
AE_RESET_VALUE_MDO option will
not be used.
IEC 60870-5-101 and IEC 60870-5-104:
Master
Single
Qux
Command

FQU

PQU

All
Commands

TO nnn

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Specifies Qualifier of Command value


to use when qualifier is otherwise
unknown or when qualifier is forced
(see FQU below). x is a hexadecimal
number representing the qualifier value.
Force Qualifier of Command to
default value specified in .INI file or
with QUx option above, even if a
qualifier is received from an upstream
device (e.g., translate a pulse into a
latch). This is mutually exclusive with
PQU.
Allow Qualifier of Command received
from upstream devices to be passed
through to downstream devices (e.g., a
long pulse received control is passed
through to the downstream device even
though default command qualifier for
point specifies a latch.). This is
mutually exclusive with FQU.
Application Response Timeout.
Maximum amount of time in
milliseconds to wait for a response to a
command issued to this data point. This
option can be used to override the
ApplAbsRespTimeout configuration
parameter on a per point basis.

Page 115

SCADA Data Gateway | Implementers Guide

Binary In
Double
Point
(Type ID 3)

Slave

PROVIDE_AS_RAW

Provide the value of the double point as


follows:
0 - "Transit"
1 - "Off"
2 - "On"
3 - "Indeterminate"
Normally (when this option is not
specified) the value is provided as
true/false with the quality describing the
additional states.
Provide scaling value for the point. The
raw analog input value will be scaled as
follows:
m = (eguMax-eguMin) / (rawMaxrawMin)
scaledValue = m * inValue + eguMin.
The resulting value will be provided as a
double to any mapped points.

Analog In
(Type ID
9,11,13)

SCALE rawMin rawMax


eguMin eguMax

Analog In
(Type ID
9,11,13)

DEADBAND value

If this parameter is specified for a master


device, the value of an analog point read
by the master will have to change by
more than this amount to be transferred
to a mapped slave point (i.e. causing an
event). A value of 0 will disable dead
band testing.

Step
Command
(Type ID
46)

ALLOW_UP
ALLOW_DOWN
ALLOW_ANY

Double
Command
(Type ID
47)

ALLOW_ON
ALLOW_OFF
ALLOW_ANY

Monitored
Data

G01, G02, G03, , G16


(!G01, !G02, , !G16)

Allows the configuration of selective


blocking of commands passed on to
external slave devices. For instance
ALLOW_UP will block a down
command and ALLOW_DOWN will
block an up command. Command
values are typically received form
mapped slave data objects and passed on
to the external slave device.
Allows the configuration of selective
blocking of commands passed on to
external slave devices. For instance
ALLOW_ON will block an off
command and ALLOW_OFF will block
an on command. Command values are
typically received form mapped slave
data objects and passed on to the
external slave device.
Point is included in (excluded from)
response to Group xx Interrogation
request (where Gxx identifies group: 01
to 16)

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 116

SCADA Data Gateway | Implementers Guide

Binary
Commands
(Type ID 45,
46, 47)
Analog
Commands
(Type ID 48,
49, 50)
IEC 60870-5-103:
General
Command
(Type ID
20)

Binary In
Double
Point
(Type ID
1,2)

Master

Binary Data
(Type ID
1,2)

ALLOW xxxx

1PASS (!1PASS)

ACCEPT_AS_RAW

PROVIDE_AS_RAW

RTZ

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Control is blocked if a control operation


is attempted but not configured in this
mask. The reply indicating completion
of the command will indicate that this
command failed.
Control will be performed when an
Execute command is received (Select is
not required)

Accept the value of the double point as


follows:
0 - "Transit"
1 - "Off"
2 - "On"
3 - "Indeterminate"
Normally (when this option is not
specified) the value is accepted as
true/false with the quality describing the
additional states.
Provide the value of the double point as
follows:
0 - "Transit"
1 - "Off"
2 - "On"
3 - "Indeterminate"
Normally (when this option is not
specified) the value is provided as
true/false with the quality describing the
additional states.
Return to Zero: generate a 10
transition whenever a 01 transition is
received

Page 117

SCADA Data Gateway | Implementers Guide

DNP3:
Master

Binary
Control
(Type ID
12)

LATCH

PULSE

PRIORITY nnn

PULSEWIDTH nnn

PULSEWIDTH_VAR
mdo_name

PAIRED

FCM

PCM

Analog In
(Type ID
30)

DEADBAND value

Analog In
(Type ID
30)

SCALE rawMin rawMax


eguMin eguMax

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Sets the default command mode for this


point to latched. Writing a value of 0
to this point will issue a latch off
command, 1 will issue a latch on
command.
Sets the default command mode for this
point to pulse. Writing a value of 0 to
this point will issue a pulse off
command, 1 will issue a pulse on
command.
Sets the priority of the binary or analog
write command. 128 is the default if not
specified.
Sets the pulse width for this point to nnn
milliseconds. This option is used in
conjunction with the PULSE option.
Sets the pulse width for this point to
mdo_name milliseconds. This option is
used in conjunction with the PULSE
option. Mdo_name represents a MDO
tag in the SDG whose value is used to
specify the pulse width.
Sets the default command mode for this
point to paired. Writing a value of 0 to
this data point will issue a trip
command, 1 will issue a close command.
Force default command mode. The
command mode specified in the INI file,
or by one of the LATCH, PULSE, or
PAIRED, options will override the
command mode in an incoming request.
Pass command mode. The command
mode received from upstream devices
will pass through to downstream devices
independent of the current default
command mode for this data point.
If this parameter is specified for a master
device, the value of an analog point read
by the master will have to change by
more than this amount to be transferred
to a mapped slave point (i.e. causing an
event). A value of 0 will disable dead
band testing.

Provide scaling value for the point. The


raw analog input value will be scaled as
follows:
m = (eguMax-eguMin) / (rawMaxrawMin)

Page 118

SCADA Data Gateway | Implementers Guide

scaledValue = m * inValue + eguMin.


The resulting value will be provided as a
double to any mapped SDOs.
Slave

Monitored
Points

CLS1, CLS2, CLS3

Specifies which class events for this data


point are returned in. This option can be
used to override the ObjXXDfltClass
INI configuration parameters on a per
point basis.

Binary
Output
(Type ID
12)
Binary
Output
(Type ID
41)

ALLOW

Bitmask to allow/disallow specific control


operations:
0x01 No Select Allows single-pass
control operations (allows operations that
were not previously selected as part of a SBE
or 2-pass operation)
0x02 Use Default Allows no specification
of operation. This allows pre-defined, fixed,
or default operations to take place. It can be
used with binary controls (OBJ12)
0x04 Pulse Allows pulse for binary
controls (OBJ12)
0x08 Latch Allows latch for binary controls
(OBJ12)
0x10 Paired Close Allows paired close for
binary controls (OBJ12)
0x20 Paired Trip Allows paired trip
command qualifier (OBJ 12)
0x40 Non-standard Allows non-standard
command qualifier

Holding
Register,
Coil
Holding
Register,
Input
Register

PRIORITY nnn

Sets the priority of the write command.


128 is the default if not specified.

DEADBAND value

If this parameter is specified for a master


device, the value of an analog point read
by the master will have to change by
more than this amount to be transferred
to a mapped slave point (i.e. causing an
event). A value of 0 will disable dead
band testing.

Master

Holding
Register,
Input
Register

SCALE rawMin rawMax


eguMin eguMax

Provide scaling value for the point. The


raw analog input value will be scaled as
follows:
m = (eguMax-eguMin) / (rawMaxrawMin)
scaledValue = m * inValue + eguMin.
The resulting value will be provided as a
double to any mapped SDOs.

Master

Coil write

ALLOW_ON
ALLOW_OFF

Allows the configuration of selective


blocking of commands passed on to

Modbus:
Master

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 119

SCADA Data Gateway | Implementers Guide

ALLOW_ANY

external slave devices. For instance


ALLOW_ON will block an off
command and ALLOW_OFF will block
an on command. Command values are
typically received form mapped slave
data objects and passed on to the
external slave device.
Inverts the value written to the external
slave device connected to SDG Modbus
master. For instance if the value
received from a mapped SDO is true the
value written will be false.

Master

Coil write

INVERTED_WRITE

Master and
Slave

Holding
Register,
Input
Register

SIGNED

Allows the specification of a holding


register or input register as a signed 16bit value. The default is that these types
are unsigned 16-bit values. This only
changes the way that the SDG interprets
the bits in the register. If this option is
specified for a point and the point is
mapped to a different component the
mapped to component will see the
value of the point as a signed value.

Modbus
Slave

Holding
Register,
Input
Register

FLOAT xxx

Allows the specification of 2


consecutive holding registers or input
registers as a 32-bit floating point value.
The value can be both written and read.
The xxx has the following options:
0x01 : 1st register (word) is least
significant
0x02 : 1st register (word) is most
significant
When this option is specified IEEE-754
Floating-Point format is used for the
values.
When writing a floating point value (i.e.
as 2 words) the writing of the 2nd word
will cause any up-down stream data to
be affected.

Table 2 Point-Mapping file options field

For a detailed description of reported vs. update time, see section 4.5.1 Event Time Tags and Database
Update Times

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 120

SCADA Data Gateway | Implementers Guide

4.3.5.4 LOGMSKxxxx and OPCAE_LOGMSKxxxx Events used in the MDO option field
This table defines the kind of event LOGMSK may use for an individual data object as identified in the
above table. These mask values will also be used as defines in the Sequence of Event Log Files and/or
the OPC Alarm and Event Server.
The Types of Log Masks supported by the SDG can be found in the INI file.
Mask Value

Type of Event

0x0001
0x0002

The data is being updated, but the reason for the update is unknown.
The data is being updated because it was requested.
The data is being updated by the source of data without direct request. No change is
necessarily indicated.
A change in the data is indicated by the source of data.
A change in the data is indicated due to a request through communications.
A change in the data is indicated due to action at the device.
A control request has been transmitted to a remote device.
A control request has been confirmed by a remote device, but is not yet complete.
A 1st pass in a 2-pass control operation has been transmitted to a remote device.
A 1st pass in a 2-pass control operation has been confirmed by a remote device.
A cancel operation has been transmitted to a remote device to abort a 2-pass control operation
between the 1st and 2nd passes.
A cancel operation has been confirmed by a remote device.
A remote device has responded to indicate an error in a control operation.
Either the data point or the remote device is operating in a test mode.

0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
0x0200
0x0400
0x0800
0x1000
0x8000

Table 3 Types of Events used in the SOE Logger and the OPC Alarm and Event Server

4.3.5.5 Physical Tag Name


Each row that defines a Master Component data point has a Physical Tag Name field that is
automatically generated from the other fields (it is not entered by the user). Slave Component points do
not have Tag Names.
When a physical tag name is generated, the component fields in the tag name have field identifier prefixes
as follows:

FIELD

PREFIX

EXAMPLE

Data Link Address

L3

ASDU Address

A44

Type ID/Object Group

T1

Point Address

P231

Element Index (103 only)

(none)

Function (103 only)

F160

When a field is not used in the protocol associated with a point, the field does not appear in the tag name.
Examples of physical tag names are:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 121

SCADA Data Gateway | Implementers Guide

Tag Name
COM1.L12.A23.T3.P1
COM1.L12.A23.T3.P146.0.F160
COM1.A23.T3.P1
COM1.L3.T1.P0
COM1.L3.T0.P0

Protocol
(101 protocol)
(103 protocol)
(104 protocol)
(DNP protocol)
(Modbus protocol)

4.3.5.6 User Tag Name


In addition to the Physical Tag Name, a User Tag Name may be defined for each Master Component Point.
Slave Component points do not have Tag Names. The User Tag Name is a user-supplied ASCII text string
that identifies the Master Component Point (e.g., BreakerReclose) in a human readable manner. The
User Tag Name is case sensitive, should not contain spaces (underscores are allowed), and each one must
be unique.
Since the User Tag Name is passed through the SDG OPC Server to an external OPC Client application,
care should be taken when using characters in tag names that may have special meaning to the OPC client
application. Some OPC clients may interpret characters such as (! % @ . etc.), in the user tag name with
special meaning. Therefore, please check the manual for the OPC client if these characters are to be used.
The User Tag Name is also used to specify the name of a tag in an external OPC Server when configuring
a Master Data Point that should connect to the external OPC server. The name specified should be the
fully qualified name as would be used to connect to the server using any other generic client (i.e.
Device1.Group2.CloseBreaker).
The User Tag Name may be systematized to reflect the Master Point addressing if the user does not impose
some other naming system. The User Tag Name is optional and this field may be left blank. If a Master
Component Point is not assigned a User Tag Name, it may be referred to by its physical tag name, which
reflects its communication protocol-specific identifiers.
If a Master Component point is associated with more than one Slave Component point, the first instance of
a Slave Component point normally appears on the same line as the definition of the Master Component
point. Subsequent Slave Component point definitions reference the Master Component point with the
User tag Name or Physical tag Name that was assigned to the Master Component point.
4.3.5.7 Equation Field
The equation field is used to logically or arithmetically operate on one or more Master Component points
referenced in the equation expression. Either a Physical Tag Name or a User Tag Name may be specified
in the equation field. The result of evaluating the equation parameter field is used as the value of the
Master Point. This value will be assigned to a Slave Component point defined on the same line, or other
Slave Component points referring to the assigned User Tag Name.
The result of all equations is of type double. The type conversion functions are provided to
allow changing the equation result into another type. For example, the bool() function can be
used to convert the result of one equation into a Boolean value that can be used as an input to
an equation that requires Boolean arguments.
One use of equations is to convert the raw value reported by the SDG into an IEC Normalized or Scaled
value. For example, to convert the reported value, which has a range of -32768 to 32767 to a Normalized
value, which has the range of -1 to +1-2-15, enter an equation to divide the reported value by 32768. This is
shown in example in Section 4.3.5.9.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 122

SCADA Data Gateway | Implementers Guide

The equation parser does not support equations in which two operators appear consecutively.
For example, an equation of the form (x * -2) is not supported. Generally, you can work
around this limitation by rewriting the equation. For this example, the equation can be
rewritten as ((0 x) * 2).
When an equation argument is a tag and contains characters normally used as operators for calculations
(i.e. / + * etc), the tag should be enclosed in (single quote) to facilitate parsing of the tag. The (single
quote) operates as an escape character on the tag name.
Certain equation operators require that the value of their arguments be able to be converted to a type
double (R8) if the argument does not natively/internally support this conversion a casting operator should
be used to convert the value to the appropriate type. For example the following will require a cast:
If the tag _intR4 is an internal MDO of type R4;
Then the equation short(_intR4 * 100) will generate a type mismatch error since the multiply (*) operator
requires doubles as its arguments. To get this to work the equation should be written as
short(double(_intR4) * 100). The reason for this is that internal MDOs are strictly typed and only return
values of the type they are declared as.
For example, the following OPC Client Tag:
/SUBESTACAO_P/INPUT/00_00_10/Message_2_3.m11
should be enclosed in (single quotes) as follows:
/SUBESTACAO_P/INPUT/00_00_10/Message_2_3.m11
This allows it to be used as an argument in an equation.
Example:
SUM(/SUBESTACAO_P/INPUT/00_00_10/Message_2_3.m11,2)
Equations are entered using the equation editor. For more information on using equations, please review
section 3.4.14 Equations.
Expression Parameters
Physical Tag Name
User Tag Name
numerical constant
(expression)
expression op expression
function(expression-list)

Definition
Physical Tag Names previously defined in the Point-Mapping
configuration file
User Tag Names previously defined in the Point-Mapping file
Any integer, floating point, or hexadecimal value; (e.g., 23, 14.5e-05, or
0xffa782b respectively)
Any combination of Physical or User Tag Name, and supported operators
enclosed within parenthesis.
Any expression operated with another expression. Only supported
operators may be used (the list of supported operators are listed below)
Where function is a supported function as listed below, and expression-list
is one or more expressions separated by commas.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 123

SCADA Data Gateway | Implementers Guide

4.3.5.8 Supported Operators Used in Expressions


Operator
&&
||
&
|
+
*
/
==
!=
>
<
>=
<=
(single
quote)

Evaluates to:
Logical and of the expressions on either side of the operator
Logical or of the expressions on either side of the operator
Bit Wise and of the expressions on either side of the operator
Bit Wise or of the expressions on either side of the operator
Arithmetic result of subtracting the expressions on either side of the operator
Arithmetic result of adding the expressions on either side of the operator
Arithmetic result of multiplying the expressions on either side of the operator
Arithmetic result of dividing the expressions on either side of the operator
Compares the left and right side of the == and returns true if they are the same value
Compares the left and right side of the != and returns true if they are not the same
value
Compares the left and right side of the > and returns true if the left side is greater than
the right side
Compares the left and right side of the < and returns true if the right side is greater
than the left side
Compares the left and right side of the >= and returns true if the left side is greater
than or equal to the right side
Compares the left and right side of the <= and returns true if the left side is greater
than or equal to the right side
Used to allow special equation operator characters as part of the name of an MDO that
is used as an argument in the equation. The MDO name must be enclosed in single
quotes.

4.3.5.9 Examples of Valid Expressions


COM1.L2.A2.T1.P48.F128 && COM1.L2.A2.T1.P49.F128
COM1.L2.A2.T11.P300.F128 * 5.43 + 20
OR(COM1.L2.A2.T1.P48.F128, LineEarthFault, BusEarthFault)
AND(LineEarthFault,NOT(COM1.L2.A2.T1.P49.F128))
GET_FLAGS(MDNP.L4.T1.P0)
TEST_BIT(MDNP.L4.T30.P0,2)
RAND(0,100,1000)
DIV(COM2.L3.A4.T9.P500, 32768)
if(mdnp.L4.T30.P0 > mdnp.L4.T30.P1, mdnp.L4.T30.P0, mdnp.L4.T30.P1)
(0 - COM1.L2.A2.T11.P301) * 2
pulse( 0,50,ulong(not(myBool)),ulong(myInt),1)
4.3.5.10 Description
The Description field permits comments to be entered about the point.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 124

SCADA Data Gateway | Implementers Guide

4.4

Data Points

4.4.1 Point Initialization


When it is first started, the SDG creates storage space in its internal database for the points it will receive
from the remote device. However, since the point values have not yet been received from the device, the
SDG sets the initial value of the points to 0 and sets the quality flag for the points to invalid
(STD_QLTY_INVALID).
Therefore, the application receiving the data should take into consideration the quality flag of the point
before using the data.
The follow sections of this document describe how the values and quality flags of the points are translated
between the different protocols so that you can ascertain the certainty of your data.
As an example, though, consider the situation where an OPC Client is reading point values from the SDG. In
this case, the SDGs STD_QLTY_INVALID quality flag gets mapped to the OPC Client with the status
OPC_QUALITY_BAD. Therefore, when the SDG is started, it is possible to see results similar to what is
shown in Figure 12.
The point MDNP.L3.T1.P0(Point0) has an initial value of Off but the OPC quality of this point is 8
which means that the point value is bad.
Once the current value of this point has been received from the remote device, the SDG will update the OPC
Client accordingly, and the point will have a quality value of 192 which means the point value is good.

Figure 12 TMW Simple OPC Client

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 125

SCADA Data Gateway | Implementers Guide

4.4.2 Translating data types between different protocols (Master to Slave mapping)
In the Point-Mapping example shown below, the mapping translates the IEC 103 protocol to an IEC 101
protocol (1). The Master TypeID 20 may receive Slave TypeID 45 data in protocol 101.

The following table shows the data types which may be translated from one protocol to another.

Summary of Equivalent Data Types for DNP3, IEC 101, IEC 103, Modbus and OPC
Description

DNP3
Object

IEC
101/104
Type

IEC 103
Type

Modbus
Type

OPC Type

Database Format

Binary Input

1, 2, 10

1, 2, 3, 4,
30, 31

1, 2

1 (discrete
input)

VT_BOOL

Boolean

4 (input
register) *2

VT_UI1,
VT_I1,
VT_I2 or
VT_I4

Short or Unsigned
Long

VT_R4

Short Float

VT_BOOL

Boolean

VT_I2 or
VT_R8

Short or Unsigned
Long

VT_I2 or
VT_I4

Short or Unsigned
Long

VT_R4

Short Float

Analog Input
(Integer)
Analog Input
(Floating
Point)
Binary
Output, Step
Change (101
only)
Counter Input
Analog
Output
(Integer)
Analog
Output
(Floating
Point)

30, 32,
40

9, 10, 11,
12, 34, 35

3, 9

13, 14, 36

12

45, 46, 47

20

20, 21

15, 16, 37

41

48, 49

0 (coil) *1

3 (holding
register) *1,2

50

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 126

SCADA Data Gateway | Implementers Guide

Bitstring
(Unsigned 32
bit)

VT_UI4 or
VT_R8

7, 8, 33

Unsigned Long

Table 4 Summary of Equivalent Data Types for DNP3, IEC 101, IEC 103, and OPC
*1
*2

= also input for Modbus


= Unsigned Short for Modbus

4.4.2.1 SDG Database Storage Formats


Type
Boolean
Short
Unsigned
Short
Long
Unsigned
Long
Short Float

Double

Range
unsigned char
0 = FALSE, 1 = TRUE
signed 16-bit integer value,
-32,768 to 32,767
unsigned 16-bit integer value,
0 to 65,535
signed 32-bit integer value,
-2,147,483,648 to 2,147,483,647
unsigned 32-bit integer value
0 to 4,294,967,295

Conversion
if value=0 then FALSE
else TRUE
value truncated to types range
if required
value truncated to types range
if required
value truncated to types range
if required
value truncated to types range
if required

32-bit short floating point number


IEEE Standard 754
-3.4 * 1038 to +3.4 * 1038
fraction = UI23[1..23]
exponent = UI8 [24..31]
sign = BS1[32]
64-bit floating point number
IEEE Standard 754
-1.7 * 10308 to +1.7 * 10308
fraction = UI52[1..52]
exponent = UI11 [53..63]
sign = BS1[64]

value truncated to types range


if required

value truncated to types range


if required

4.4.2.2 SDG Database Standard Quality Flags


IEC 60870-5-101
Quality
Descriptor
BL

STD_QLTY_BLOCKED

SB

STD_QLTY_SUBSTITUTED

NT
IV
OV
EI
-

STD_QLTY_NOT_TOPICAL
STD_QLTY_INVALID
STD_QLTY_OVERFLOW
STD_QLTY_INVALID_TIME
STD_QLTY_REF_ERROR

Quality Symbol

Meaning
Blocked
Substituted (over-ride or
forced)
Not topical (offline/not dated)
Invalid
Overflow/rollover
Elapsed time invalid
Reference error

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Mask
Value
0x0010
0x0020
0x0040
0x0080
0x0001
0x0008
0x0100

Page 127

SCADA Data Gateway | Implementers Guide

STD_QLTY_IN_TRANSIT
STD_QLTY_UNINITIALIZED
STD_QLTY_TEST

In transit/chatter
Not set since startup
Test mode

0x0200
0x0400
0x0800

If the same data type is mapped between Master and Slave component points, the database storage format is
not used and the native data type will be mapped exactly. The tables below may be used to determine how
values and quality flags are translated when a Slave Component point is mapped to a Master Component
point of a different data type. Simply locate the Master Component data type table below and note how the
values and quality flags are mapped into the SDG Database Storage format. Then locate the Slave
Component data type table below and identify how these values are mapped to the SDG Database Storage
format corresponding to the Master Component Data type.
For example: To determine the value and quality of an OPC Slave Component Boolean point when mapped
to an IEC 870-5-101 Master Component Double Point Information (DPI) with a value of 0 (indeterminate or
intermediate state), first locate the DPI table. The Master Component column shows a DPI value of 0 is
mapped to a SDG Database Storage value of Boolean 0 and STD_QLTY_IN_TRANSIT is set to TRUE.
Then locate the OPC Boolean table. The SDG Database Storage column contains a row with Standard
Quality Flag STD_QLTY_IN_TRANSIT set TRUE and this row in the Slave Component column shows the
OPC Quality Flag will be set to UNCERTAIN. The Boolean value will be set accordingly.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 128

SCADA Data Gateway | Implementers Guide

4.4.2.3 IEC 60870-5-101 and IEC60870-5-104


Single Point Information (SPI) Type IDs 1 (MSPNA), 2 (MSPTA), 30 (MSPTB)
Master component can provide: SPI, boolean
Slave component request order: SPI, boolean

To
Slave Component or
Master Component
Single point
command

From
To
SDG Database Storage

0 = determined state OFF


1 = determined state ON
Quality Descriptors:
BL, SB, NT, IV
IV set TRUE

Boolean = 0
Boolean = 1
Standard Quality Flags:
BL, SB, NT, IV
STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_UNINITIALIZED
is TRUE
STD_QLTY_INTRANSIT is
TRUE

IV set TRUE
IV set TRUE

From
Master Component

0 = determined state OFF


1 = determined state ON
Quality Descriptors:
BL, SB, NT, IV

Double Point Information (DPI) Type IDs 3 (MDPNA), 4 (MDPTA), 31 (MDPTB)


Master component can provide: DPI, boolean
Slave component request order: DPI, boolean

To
Slave Component or
Master Component
Double point
command

From
To
SDG Database Storage

0 = indeterminate or
intermediate state

Boolean = 0
STD_QLTY_IN_TRANSIT set
TRUE
Boolean = 0
Boolean = 1
Boolean = 0
STD_QLTY_INVALID set
TRUE
Standard Quality Flags:
BL, SB, NT, IV
STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_UNINITIALIZED
is TRUE

1 = determined state OFF


2 = determined state ON
3 = indeterminate state

Quality Descriptors:
BL, SB, NT
IV set TRUE
IV set TRUE

From
Master Component

0 = indeterminate or intermediate state

1 = determined state OFF


2 = determined state ON
3 = indeterminate state or IV

Quality Descriptors:
BL, SB, NT

Measured Value (normalized) Type IDs 9 (MMENA), 10 (MMETA), 34 (MMETD)


Signed 16 bit integer: range <-1 to 1-2-15>
Master component can provide: short
Slave component request order: short

To
Slave Component or
Master Component
Normalized value
command

From
To
SDG Database Storage

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

From
Master Component

Page 129

SCADA Data Gateway | Implementers Guide


normalized value
Quality Descriptors:
BL, SB, NT, IV,
OV
IV set TRUE
IV set TRUE

short
Standard Quality Flags:
BL, SB, NT, IV, OV

normalized value
Quality Descriptors:
BL, SB, NT, IV, OV

STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_INTRANSIT is
TRUE

Measured Value (scaled) Type IDs 11 (MMENB), 12 (MMETB), 35 (MMETE)


Signed 16 bit integer: range <-32,768 to +32,767>
Master component can provide: short
Slave component request order: short

To
Slave Component or
Master Component
Scaled value
command

From
To
SDG Database Storage

scaled value
Quality Descriptors:
BL, SB, NT, IV,
OV
IV set TRUE

short
Standard Quality Flags:
BL, SB, NT, IV, OV

IV set TRUE

From
Master Component

scaled value
Quality Descriptors:
BL, SB, NT, IV, OV

STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_INTRANSIT is
TRUE

Measured Value (short float) Type IDs 13 (MMENC), 14 (MMETC), 36 (MMETF)


32-bit short floating point: range <-3.4*1038 to 3.4*1038-1>
Master component can provide: short float
Slave component request order: short float, short

To
Slave Component or
Master Component
Float value
command

From
To
SDG Database Storage

short float value


Quality Descriptors:
BL, SB, NT, IV,
OV
IV set TRUE

short float
Standard Quality Flags:
BL, SB, NT, IV, OV

IV set TRUE

From
Master Component

short float value


Quality Descriptors:
BL, SB, NT, IV, OV

STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_INTRANSIT is
TRUE

Bitstring Type IDs 7 (MBONA), 8 (MBOTA), 33 (MBOTB)


32 bit unsigned long: range <0 to 2*1032-1>
Master component can provide: unsigned long
Slave component request order: unsigned long

To
Slave Component or
Master Component
Bitstring command

From
To
SDG Database Storage

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

From
Master Component

Page 130

SCADA Data Gateway | Implementers Guide


unsigned long value
Quality Descriptors:
BL, SB, NT, IV,
OV
IV set TRUE
IV set TRUE

unsigned long value


Standard Quality Flags:
BL, SB, NT, IV, OV

unsigned long value


Quality Descriptors:
BL, SB, NT, IV, OV

STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_INTRANSIT is
TRUE

Integrated Totals Type IDs 15 (MITNA), 16 (MITTA), 37 (MITTB)


32 bit long: range <-2*1031 to 2*1031-1>
Master component can provide: long
Slave component request order: long

To
Slave Component
short float value
Quality Descriptors:
BL, SB, NT, IV,
OV
IV set TRUE
IV set TRUE

From
To
SDG Database Storage

short float
Standard Quality Flags:
BL, SB, NT, IV, OV

To
Master Component

Boolean = 0
Boolean = 1
BIN_CTRL_MODE_NONE
BIN_CTRL_MODE_PULSE

0 = command state OFF


1 = command state ON
QU_USE_DEFAULT
QU_SHORT_PULSE

BIN_CTRL_MODE_PULSE

QU_LONG_PULSE

BIN_CTRL_MODE_LATCH

QU_PERSISTENT)

Double Command Type IDs 46 (CDCNA), 59 (CDCTA)


From
To
From
Slave Component
SDG Database Storage
1 = command state OFF
2 = command state ON
QU_USE_DEFAULT
QU_SHORT_PULSE if <
max. short pulse time
QU_LONG_PULSE if >=
to max short pulse time
QU_PERSISTENT

Master Component
short float value
Quality Descriptors:
BL, SB, NT, IV, OV

STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_INTRANSIT is
TRUE

Single Command Type IDs 45 (CSCNA), 58 (CSCTA)


From
To
From
Slave Component
SDG Database Storage
0 = command state OFF
1 = command state ON
QU_USE_DEFAULT
QU_SHORT_PULSE if <
max. short pulse time
QU_LONG_PULSE if >=
to max short pulse time
QU_PERSISTENT

From

To
Master Component

Boolean = 0
Boolean = 1
BIN_CTRL_MODE_NONE
BIN_CTRL_MODE_PULSE

1 = command state OFF


2 = command state ON
QU_USE_DEFAULT
QU_SHORT_PULSE

BIN_CTRL_MODE_PULSE

QU_LONG_PULSE

BIN_CTRL_MODE_LATCH

QU_PERSISTENT

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 131

SCADA Data Gateway | Implementers Guide

Regulating Step Command Type IDs 47 (CRCNA), 60 (CRCTA)


From
To
From
To
Slave Component
SDG Database Storage
1 = command state OFF
2 = command state ON
QU_USE_DEFAULT
QU_SHORT_PULSE if <
max. short pulse time
QU_LONG_PULSE if >=
to max short pulse time
QU_PERSISTENT

Master Component

Boolean = 0
Boolean = 1
BIN_CTRL_MODE_NONE
BIN_CTRL_MODE_PULSE

1 = command state OFF


2 = command state ON
QU_USE_DEFAULT
QU_SHORT_PULSE

BIN_CTRL_MODE_PULSE

QU_LONG_PULSE

BIN_CTRL_MODE_LATCH

QU_PERSISTENT

Set-Point Command (normalized value) Type IDs 48 (CSENA), 61 (CSETA)


Signed 16 bit integer: range <-1 to 1-2-15>

From
Slave Component
normalized value

To
From
SDG Database Storage

To
Master Component

short

normalized value

Set-Point Command (scaled value) Type IDs 49 (CSENB), 62 (CSETB)


Signed 16 bit integer: range <-32,768 to +32,767>

From
Slave Component
scaled value

To
From
SDG Database Storage

To
Master Component

short

scaled value

Set-Point Command (short float value) Type IDs 50 (CSENC), 63 (CSETC)


32-bit short floating point: range <-3.4*1038 to 3.4*1038>

From
Slave Component
short float value

To
From
SDG Database Storage

To
Master Component

short float

short float value

Bitstring Command (short float value) Type IDs 51 (CBONC), 64 (CBOTA)


32 bit unsigned long: range <0 to 2*1032-1>

From
Slave Component
unsigned long value

To
From
SDG Database Storage

To
Master Component

unsigned long value

unsigned long value

Time Tagged Type IDs 1, 2


To
SDG Database Storage

From

4.4.2.4 IEC 60870-5-103

Master Component
0 = not used

Boolean = 0

1 = determined state OFF

Boolean = 1

2 = determined state ON

Boolean =0
STD_QLTY_INVALID set
TRUE

3 = not used

Measurand Type IDs 3, 9


13-bit normalized: range <-1 to 1-2-12>

To
SDG Database Storage
short

From
Master Component
short

Time-Tagged measurand Type ID 4


32-bit short floating point: range <-3.4*1038 to 3.4*1038>

To
SDG Database Storage
short float

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

From
Master Component
short float

Page 132

SCADA Data Gateway | Implementers Guide

Command Type ID 20
From
SDG Database Storage

To
Master Component
0 = not used

Boolean = 0

1 = determined state OFF

Boolean = 1

2 = determined state ON

3 = not used
4.4.2.5 DNP3
Binary Input, Object Group 1 and 2
To
SDG Database Storage

From
Master Component

State = 0

Boolean = 0

State = 0

State = 1

Boolean = 1

State = 1

Restart = 1

STD_QLTY_UNINITIALIZED

On-Line = 0, Restart = 1

Communication Lost = 1

STD_QLTY_NOT_TOPICAL

Communication Lost = 1

Remote Forced = 1

UPDTRSN_CTRL_BY_COMM

Remote Forced = 1

Local Forced = 1

UPDTRSN_CTRL_AT_DEVICE

Local Forced = 1

Chatter = 1

STD_QLTY_IN_TRANSIT

Chatter = 1

Slave Component or
Master Component
Binary command

Slave Component

Binary Output Status, Object Group 10


To
From
SDG Database Storage
Master Component

State = 0

Boolean = 0

State = 0

State = 1

Boolean = 1

State = 1

Restart = 1

STD_QLTY_UNINITIALIZED

On-Line = 0, Restart = 1

Communication Lost = 1

STD_QLTY_NOT_TOPICAL

Communication Lost = 1

Remote Forced = 1

UPDTRSN_CTRL_BY_COMM

Remote Forced = 1

Local Forced = 1

UPDTRSN_CTRL_AT_DEVICE

Local Forced = 1

Slave Component
Code = NUL

Boolean = 0
BIN_CTRL_MODE_NONE
Boolean = 0
BIN_CTRL_MODE_LATCH
Boolean = 1
BIN_CTRL_MODE_LATCH
Boolean = 0
BIN_CTRL_MODE_PULSE
Boolean = 1
BIN_CTRL_MODE_PULSE
Boolean = 0
BIN_CTRL_MODE_PAIRED
Boolean = 1
BIN_CTRL_MODE_PAIRED

Code = Latch Off


Code = Latch On
Code = Pulse Off
Code = Pulse On
Trip/Close = 1 (Close)
Trip/Close = 2 (Trip)

Slave Component or
Master Component
Analog command

Binary Output Control, Object Group 12


To From
SDG Database Storage
Master Component
Code = NUL
Code = Latch Off
Code = Latch On
Code = Pulse Off
Code = Pulse On
Trip/Close = Close
Trip/Close = Trip

Analog Input, Object Group 30 and 32


To
From
SDG Database Storage
Master Component

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 133

SCADA Data Gateway | Implementers Guide


Long, variation 1, 3

Long

Short, variation 2, 4

Short float, variation 5

Short Float

Short float, variation 5

Restart = 1

STD_QLTY_UNINITIALIZED

On-Line = 0, Restart = 1

Communication Lost = 1

STD_QLTY_NOT_TOPICAL

Communication Lost = 1

Remote Forced = 1

UPDTRSN_CTRL_BY_COMM

Remote Forced = 1

Local Forced = 1

UPDTRSN_CTRL_AT_DEVICE

Local Forced = 1

Over Range = 1

STD_QLTY_OVERFLOW

Over Range = 1

Reference Check = 1

STD_QLTY_REF_ERROR

Reference Check = 1

Long, variation 1, 3

Slave Component

Analog Output Status, Object Group 40


To
From
SDG Database Storage
Master Component

Boolean = 0

Boolean = 1

Restart = 1

STD_QLTY_UNINITIALIZED

On-Line = 0, Restart = 1

Communication Lost = 1

STD_QLTY_NOT_TOPICAL

Communication Lost = 1

Remote Forced = 1

UPDTRSN_CTRL_BY_COMM

Remote Forced = 1

Local Forced = 1

UPDTRSN_CTRL_AT_DEVICE

Local Forced = 1

Slave Component
Short, variation 2, 4

Analog Output Control, Object Group 41


To
From
SDG Database Storage
Master Component
Long

Long, variation 1, 3

Short Float

Short float, variation 5

Long, variation 1, 3
Short float, variation 5

Slave Component

Binary Counters, Object Group 20, 21, 22, and 23


To
From
SDG Database Storage
Master Component

Long, variation 1, 5

Unsigned Long

Short, variation 2, 6

Restart = 1

STD_QLTY_UNINITIALIZED

On-Line = 0, Restart = 1

Communication Lost = 1

STD_QLTY_NOT_TOPICAL

Communication Lost = 1

Remote Forced = 1

UPDTRSN_CTRL_BY_COMM

Remote Forced = 1

Local Forced = 1

UPDTRSN_CTRL_AT_DEVICE

Local Forced = 1

Over Range = 1

STD_QLTY_OVERFLOW

Roll Over = 1

Long, variation 1, 5

4.4.2.6 Modbus
Coil, Type 0
From
To
From To
Slave Component or
SDG Database Storage
Master Component
Master Component
Coil write

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 134

SCADA Data Gateway | Implementers Guide


State = 0
State = 1

To
Slave Component
State = 0
State = 1

Boolean = 0
Boolean = 1

State = 0
State = 1

Discrete Input Register, Type 1

From
To
SDG Database Storage
Boolean = 0
Boolean = 1

From
Master Component
State = 0
State = 1

Holding Register, Type 3


16 bit value

From To
From
Slave Component or
SDG Database Storage
Master Component
Holding register
write
value

To
Master Component

Unsigned short

value

Input Register, Type 4


16 bit value

To
Slave Component
value

From
To
SDG Database Storage
Unsigned short

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

From
Master Component
value

Page 135

SCADA Data Gateway | Implementers Guide

4.4.2.7 OPC Reads


The following flags are used with all OLE Variant data types:
From
To From
To
OPC Server Slave Component
SDG Database Storage
OPC Client Master
Component
OPC_QUALITY_NOT_CONNECTED
set TRUE

STD_QLTY_UNINITIALIZED
is TRUE

OPC_QUALITY_OUT_OF_SERVICE
set TRUE

STD_QLTY_BLOCKED is
TRUE

OPC_QUALITY_BAD set TRUE

STD_QLTY_INVALID is
TRUE

OPC_QUALITY_SENSOR_CAL set
TRUE
OPC_QUALITY_EGU_EXCEEDED
set TRUE

STD_QLTY_REF_ERROR is
TRUE
STD_QLTY_OVERFLOW is
TRUE

OPC_QUALITY_LAST_USABLE set
TRUE

STD_QLTY_NOT_TOPICAL
is TRUE

OPC_QUALITY_UNCERTAIN set
TRUE

STD_QLTY_IN_TRANSIT is
TRUE

OPC_QUALITY_LOCAL_OVERRIDE
set TRUE

STD_QLTY_SUBSTITUTED
is TRUE

Any of
OPC_QUALITY_NOT_CONNECTED
OPC_QUALITY_CONFIG_ERROR
set TRUE
OPC_QUALITY_OUT_OF_SERVICE
set TRUE
Any of
OPC_QUALITY_BAD
OPC_QUALITY_SUB_NORMAL
set TRUE
OPC_QUALITY_SENSOR_CAL set
TRUE
OPC_QUALITY_EGU_EXCEEDED
set TRUE
Any of
OPC_QUALITY_LAST_USABLE
OPC_QUALITY_LAST_KNOWN
OPC_QUALITY_OUT_OF_SERVICE
OPC_QUALITY_COMM_FAILURE
OPC_QUALITY_SENSOR_FAILURE
OPC_QUALITY_DEVICE_FAILURE
set TRUE
OPC_QUALITY_UNCERTAIN set
TRUE
Any of
OPC_QUALITY_LOCAL_OVERRIDE
set TRUE

Boolean OLE Variant Type


TOleBool

To From
To
OPC Server Slave Component
SDG Database Storage
or OPC Client Master
Component
VT_BOOL

Boolean

From
OPC Client Master
Component
VT_BOOL

Short OLE Variant Type


Smallint

To From
To
OPC Server Slave Component
SDG Database Storage
or OPC Client Master
Component
VT_I2

Short

From
OPC Client Master
Component
VT_I2

Short Float OLE Variant Type


Single

To From
To
OPC Server Slave Component
SDG Database Storage
or OPC Client Master
Component
VT_R4

short float

From
OPC Client Master
Component
VT_R4

Double Float OLE Variant Type


Double Float

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 136

SCADA Data Gateway | Implementers Guide

To From
To
OPC Server Slave Component
SDG Database Storage
or OPC Client Master
Component
VT_R8

From
OPC Client Master
Component

double float

VT_R8

Long OLE Variant Type


Longint

To From
To
OPC Server Slave Component
SDG Database Storage
or OPC Client Master
Component
VT_I4

From
OPC Client Master
Component

long

VT_I4

Unsigned Long OLE Variant Type


Unsigned Longint

To From
To
OPC Server Slave Component
SDG Database Storage
or OPC Client Master
Component
VT_UI4, VT_R8

From
OPC Client Master
Component

unsigned long

VT_UI4, VT_R8

4.4.2.8 OPC Writes


Boolean OLE Variant Type
ToleBool

From
OPC Server Slave Component

To
From
SDG Database Storage

VT_BOOL

Boolean

To
OPC Client Master
Component
VT_BOOL

Short OLE Variant Type


Smallint

From
OPC Server Slave Component

To
From
SDG Database Storage

VT_I2

Short

To
OPC Client Master Component
VT_I2

Short Float OLE Variant Type


Single

From
OPC Server Slave Component

To
From
SDG Database Storage

VT_R4

short float

To
OPC Client Master Component
VT_R4

Double Float OLE Variant Type


Double Float

From
OPC Server Slave Component

To
From
SDG Database Storage

VT_R8

double float

To
OPC Client Master Component
VT_R8

Long OLE Variant Type


Longint

From
OPC Server Slave Component

To
From
SDG Database Storage

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

To
OPC Client Master Component

Page 137

SCADA Data Gateway | Implementers Guide


VT_I4

long

VT_I4

Unsigned Long OLE Variant Type


Unsigned Longint

From
OPC Server Slave Component

To
From
SDG Database Storage

VT_UI4, VT_R8

unsigned long

To
OPC Client Master Component
VT_UI4, VT_R8

4.4.3 Predefined Tag Names for Monitoring and Control


Predefined Tag Names give the OPC Server and other Slave Components access to internal SDG status and
operation. The tag name is assigned based on the specific communication channel, session, or sector that it
applies to. The format of Predefined Tag Names is: Channel.LinkAddress.ASDUAddress.Name, shown
below as COMx.Ly.Az.Name.
4.4.3.1 Characteristics of Predefined Tag Names

Predefined Tag Names may be read directly in OPC or mapped to other protocols in the PointMapping file by listing them in the Master Component User tagName column and leaving the other
Master Component Point-Mapping file columns blank.
Predefined Tag Names may be either type String (Str), Integer (Int) or Binary (Bin).
Some Predefined Tag Names are specific to a Master or Slave component as shown in the table
below, so each session will not have all Predefined Tag Names.
If a Predefined Tag Name is read/write (R/W), then it may be written to, or read from.
If the Predefined Tag Name is read-only (R/O) its value may be read from, but not written to.
Predefined Tag Names marked Error Count are incremented each time an error is detected. They
may be preset to a specific value by writing the value to it or cleared by simply writing a value of
zero.
Reading an R/W Predefined Tag Name returns the last value written to it.
The meaning of each Predefined Tag Name is explained in the table below. Unless otherwise noted,
all Predefined Tag Names designated R/W Int may be set to any integer value.
The M/S column identifies whether the Predefined Tag is applicable to a Master (M) or Slave (S)
component.

PREDEFINED TAG NAME

GatewayOnline

M/S
M/S

PROTOCOL
All

TYPE
R/O
Bin

SOECounter

M/S

All

R/W
Int

ChannelsOfflineCounter

M/S

All

R/W
Int

ChannelsOnlineStatus

M/S

All

DataBaseUpdateQSize

M/S

All

R/O
Bin
R/O Int

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

DESCRIPTION
True (1) whenever the gateway
program is running. Inserts an
event into the event buffer
indicating the SDGs startup time
SOE Update Counter. Counts the
number of entries added to the SOE
event log since last reset
Counts the total number of times all
sessions on all channels have gone
off line
TRUE if all sessions on all
channels are on line
The current number of items in the
data base queue that have not been
processed yet

Page 138

SCADA Data Gateway | Implementers Guide

PREDEFINED TAG NAME


DbQsizeExceededErrorLimit

M/S
M/S

PROTOCOL
All

TYPE
R/O
Bin

DbQsizeExceededWarningLimit

M/S

All

R/O
Bin

OPCClient_X.CurrentServerTim
e
OPCClient_X.LastUpdateTime

N/A

N/A

R/O Str

N/A

N/A

R/O Str

OPCClient_X.NumGroups

N/A

N/A

R/O Int

OPCClient_X.PercentBandWidt
h
OPCClient_X.ServerOK

N/A

N/A

R/O Int

N/A

N/A

OPCClient_X.ServerStartTime
OPCClient_X.ServerStatus

N/A
N/A

N/A
N/A

R/O
Bin
R/O Str
R/O Str

OPCClient_X.VendorInfo
COMx.ChannelRedialLimitCont
rol

N/A
M/S

N/A
All

R/O Str
R/W
Bin

COMx.NumChecksumErrors

M/S

All

R/W
Int

COMx.NumConfirmFailures

M/S

All

COMx.NumLengthErrors

M/S

All

R/W
Int
R/W
Int

COMx.NumSyncErrors

M/S

All

R/W
Int

COMx.NumTimeoutErrors

M/S

All

COMx.TotalErrors

M/S

All

COMx.NumPhysCharTimeoutEr
rors
COMx.NumPhysXmitErrors

M/S

All

M/S

All

COMx.NumRxBytes

M/S

All

R/W
Int
R/W
Int
R/W
Int
R/W
Int
R/W
Int

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

DESCRIPTION
TRUE if the DataBaseUpdateQSize
exceeds the DbQSizeErrorLimit
configuration parameter. If this
limit is exceeded items are not
added to the data base queue until
DataBaseUpdateQSize falls below
this limit. In other words if this
limit is exceeded data is lost.
TRUE if the DataBaseUpdateQSize
exceeds the DbQSizeWarningLimit
configuration parameter
The current time on the OPC Server
that this client is connected to.
The last time the OPC client was
updated by the OPC server.
The number of groups created on
the OPC server.
A performance utilization indicator.
TRUE if the OPC client is
connected to the OPC server.
The time the server was started.
A textual description of the OPC
server status.
The vendor of the OPC Server.
Indicates true when modem re-dial
limit reached, set to false to start
dialing again. This Tag is only
valid for Modem Pool Channels.
Error Count. Checksum errors
detected on the communication
channel
Error Count. Data link confirm
failures on this channel
Error Count. Frame length errors
detected on the communication
channel
Error Count. Frame
synchronization errors detected on
the communication channel
Error Count. Data link timeouts on
this Session
Total number of errors on this
channel
Total number of Character Timeout
Errors on this channel
Total number of Transmit errors on
this channel
Total number of bytes received on
this channel

Page 139

SCADA Data Gateway | Implementers Guide

PREDEFINED TAG NAME


COMx.NumTxBytes

M/S
M/S

PROTOCOL
All

TYPE
R/W
Int
R/W
Int
R/W
Int
R/O
Bin
R/W
Int

COMx.NumTxFrames

M/S

All

COMx.NumRxFrames

M/S

All

COMx.ChannelSessionsOnLineS
tatus
COMx.SessionsOfflineCounter

M/S

All

M/S

All

COMx.T1AckTime

104

R/O Int

COMx.T1MaxAckTime

104

R/W
Int

COMx.NumTxFragments

M/S

DNP

COMx.NumRxFragments

M/S

DNP

COMx.Ly.OnLineStatus *

M/S

All

R/W
Int
R/W
Int
R/O
Bin

COMx.Ly.SessionActiveControl
*

M/S

All

R/W
Bin

COMx.Ly.SessionOfflineCounte
r
COMx.Ly.TotalErrors

M/S

All

M/S

All

COMx.Ly.NumTxASDUs

M/S

All

COMx.Ly.NumRxASDUs

M/S

All

R/W
Int
R/W
Int
R/W
Int
R/W
Int

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

DESCRIPTION
Total number of bytes transmitted
on this channel
Count of message frames
transmitted
Count of valid message frames
received
TRUE if all sessions on this
channel are on line
Counts the number of times any
session on this channel has gone
offline
The current amount of time elapsed
between sending a frame and
receiving an acknowledge
The maximum amount of time that
has elapsed between sending a
frame and receiving an
acknowledge. This value can be
used to tune the value of T1
(LinkCnfmTimeout).
Number of fragments transmitted
on this channel
Number of fragments received on
this channel
Status bit that reflects the current
online status for this session. A
true(1) value means the session is
currently online and
communicating. A false(0) value
means the session if currently
offline. This will occur at system
startup, when the
SessionActiveControl point is set to
false(0), or when the master does
not receive a data link confirm
within the specified timeout period
for the specified number of retries.
Control flag to force a session
active or inactive. Write true(1) to
this value to attempt to bring the
session active. Write false(0) to
make a session inactive.
Counts the number of times this
session has gone offline
Total number of errors on this
session
Number of fragments transmitted
on this channel
Number of fragments received on
this channel

Page 140

SCADA Data Gateway | Implementers Guide

PREDEFINED TAG NAME


COMx.Ly.CreateTagsAuto

M/S
M

PROTOCOL
All

TYPE
R/W
Bin

COMx.Ly.ColdRestartNow

DNP3

R/W
Bin

COMx.Ly.WarmRestartNow

DNP3

R/W
Bin

COMx.Ly.DNPActionNow

DNP3

COMx.Ly.DNPActionMask0-4

DNP3

COMx.Ly.DNPActionPrd0-4

DNP3

R/W
Int
R/W
Int
R/W
Int

COMx.Ly.Az.IECActionNow

101, 103,
104

R/W
Int

COMx.Ly.Az.IECActionMask0-4

R/W Int

COMx.Ly.Az.IECActionPrd0-4

101, 103,
104
101, 103,
104

COMx.Ly.Az.CreateTagsAuto

101,103,104

R/W
Bin

COMx.Ly.Az.Reset101RemoteNow
*

101, 104

R/W Int

COMx.Ly.Az.Reset103RemoteNow

103

R/W
Bin

COMx.Ly.Az.ClearEventBuffers *

101, 104

COMx.Ly.Az.ResetCountersNow

101, 104

COMx.Ly.Az.FreezeCountersNow

101, 104

R/W
Bin
R/W
Bin
R/W
Bin

R/W Int

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

DESCRIPTION
Write true (1) to this point to send a
general interrogation to the
connected slave device and create
the data types and tags for this
session. The session has to be
online and a previous general
interrogation cant be pending.
This value will be reset to false (0)
when the operation completes.
Write true(1) to this value to force a
Cold Restart of the corresponding
DNP session.
Write true(1) to this value to force a
Warm Restart of the corresponding
DNP session.
See the description below for a
definition of the bits in this mask.
See the description below for a
definition of the bits in this mask.
Time between actions defined in
the DNPActionMask0-4, specified
in milliseconds.
See the description below for a
definition of the bits in this mask.
See the description below for a
definition of the bits in this mask.
Time between actions defined in the
IECActionMask0-4, specified in
milliseconds.
Write true (1) to this point to send a
general interrogation to the connected
slave device and create the data types
and tags for this sector. The session has
to be online and a previous general
interrogation cant be pending. This
value will be reset to false (0) when the
operation completes.
Write QRP value to send to IEC 608705-101 Slave when issuing application
layer command Type ID 105. Refer to
IEC 60870-5-101 clause 7.2.6.27.
Normally the QRP value will be 1
(reset Slave) or 2 (clear event buffers).
Write true (1) to issue a data link Reset
CU command to an IEC 60870-5-103
Slave.
Write true (1) to clear the sectors event
buffers.
Write true (1) to issue an application
level reset counters command.
Write true (1) to issue an application
level freeze counters command.

Page 141

SCADA Data Gateway | Implementers Guide

PREDEFINED TAG NAME

PROTOCOL

TYPE

DESCRIPTION

COMx.Ly.Az.TestNow

M/S
M

101, 104

R/W
Bin

COMx.Ly.Az.NumMissingResponse
s*
COMx.Ly.Az.TotalEventOverflows
*

R/W Int

101, 103,
104
101, 104

COMx.Ly.Az.Tt.NumEventOverflo
ws *

101, 104

R/W Int

Write true (1) to issue an application


level test command. Write false(0) to
issue an application level test command
with an invalid sequence number (i.e.
test will fail).
Error Count. Responses to this sector
that have been lost.
Error Count. Number of events in this
sector that have not been reported
because of buffer overflow.
Error Count. Number of events of this
type in this sector that have not been
reported because of buffer overflow.

R/W Int

Table 5 Predefined Tag Names


* Link Address not used for IEC 60870-5-104, Sector Address not used for DNP3

4.4.3.2 Action Mask and Period


The user can interactively, or periodically, issue various commands from the SDG master components
through a set of masks and corresponding periods. The specific commands that can be performed are
defined in the tables below. A command, or action, is selected by setting the corresponding bit in the
appropriate mask to 1.
The IECActionNow and DNPActionNow masks allow the user to execute one or more of the supported
actions whenever the mask is modified. These actions are performed once when the mask is updated.
Writing the same value to the mask will execute the specified actions again. These masks allow the user to
control exactly when an operation is performed.
The IECActionMask0-4 and DNPActionMask0-4 masks and their corresponding periods (IECActionPrd04 and DNPActionPrd0-4) allow the user to specify one or more actions to be performed periodically.
When the user writes a non zero value to one of the action periods, the actions selected by the
corresponding mask will be performed and a timer is started which will repeat the selected operations at
the specified period. The user can change the IECActionMask0-4 or DNPActionMask0-4 masks at any
point and the new actions will be performed the next time the period expires or when the user writes a nonzero value to the corresponding period. Writing to the IECAction0-4 or DNPAction0-4 masks will not
cause the action to be performed. You can terminate any periodic action by writing a value of 0 to the
corresponding action period.

4.4.3.3 DNP Action Mask


Bit
Position
0 (LSB)
1
2
3
4
5
6

Action
Read Class 1 Change Events
Read Class 2 Change Events
Read Class 3 Change Events
Read Binary Input Change Events
Read Analog Input Change Events
Read Running Counter Change Events
Read Frozen Counter Change Events

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 142

SCADA Data Gateway | Implementers Guide

79
10
11
12
13
14
15
16
17
18 20
21
22
23
24 31
(MSB)

Not Used
Read Class 0 Static Data (See note 1)
Specific flag only request points in the SDG database for the data type(s) selected in bits
12-17 (See notes 2, 4, 6)
Read Binary Inputs (See notes 2, 6)
Read Analog Inputs (See notes 2, 6)
Read Running Counters (See notes 2, 6)
Read Frozen Counters (See notes 2, 6)
Read Binary Output Status (See note 6)
Read Analog Output Status (See note 6)
Not Used
Send a Clock Synchronization Request
Send a Freeze Counters Command
Send a Freeze and Clear Counters Command
Not Used

Notes:
1) The DNP specification states a class 0 (static data) poll should be preceded by a class 1,2,3 (event
data) poll; hence bits 0, 1, and 2 should be set when bit 10 is set.
2) The DNP specification states a read of static data should be preceded by a read of change events. As
an example, if bit 12 is set to read binary inputs, bit 3 should also be set to read the binary input
change events. The same logic should be applied to the rest of the data types.
3) At gateway startup, if the action period has a non-zero value, the actions specified by the bit-mask
will be performed immediately and repeated at an interval specified by the period in milliseconds.
4) It is recommended that the GlobalCreateTagAutomatic INI file parameter be set to FALSE if the
Specific flag is set. Otherwise the SDG will automatically add all data points received from the
remote device to the local data base and hence poll for all the data points on the remote device in a
very inefficient manner.
5) Action mask command bits are not mutually exclusive; multiple bits can be set to cause the execution
of multiple commands. For example if bits 21,0,1,2,10 are set 2 messages will be sent. The first
message will be a clock sync, followed by a read of class 1-2-3-0 in the second message.
6) Normally bits 12-17 will cause a read of variation 0 with qualifier code 06 (all points). If the remote
device supports the range qualifier codes (00 and 01), the specific flag may be set to reduce the
response message size (assuming all the points in the remote device are not defined in the SDG
Database).

4.4.3.4 DNP Action Now Status


The DNPActionNow has a completion status MDO associated with it called DNPActionNowStatus. This
MDO is used to display the current status of the DNPActionNow request. The following describes the
meaning of the values:
Status Value
0 (success)
1 (intermediate)

2 (failure)
3 (mismatch)

Meaning
Indicates the request has completed successfully
Indicates a response was received but the requested command is not yet complete.
This could mean the response is part of a multi-fragment response and did not
have the FINAL bit set. Or this could be a request such as a select operate that
requires multiple requests and responses.
Indicates that the transmission of the request failed
The response to a select or an execute did not echo the request.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 143

SCADA Data Gateway | Implementers Guide

4 (statuscode)
5 (iin)
6 (timeout)

7 (canceled)

The response to a select or an execute echoed the request, except the status code
was different indicating a failure.
The response to the request had IIN bits set indicating the command failed.
This indicates that the request has timed out. This could either be an incremental
timeout indicating we received no link layer frame from the device in the
specified time, or an application response timeout indicating this particular
request did not complete in the specified time.
This indicates either that the user asked that the request be canceled by calling
dnpchnl_cancelFragment or that a second duplicate request has been made and
therefore this first one is canceled.

Typically this can be used to indicate the DNPActionNow has completed and a reason why. This can also
be useful to sequence a set of commands/requests on a serial multi-drop connection.

4.4.3.5 DNP Action Mask Examples


4.4.3.5.1 Periodic Class Data Polls
The following action mask and period settings will cause a periodic integrity data poll (class 1,2,3,0)
at a frequency of 60 minutes and a report by exception data poll (class 1,2,3) every 2 seconds.
DNPActionMask0[*] = 0x0407 // bits 0, 1, 2, 10
DNPActionPrd0[*] = 3600000 // 60 minutes * 60 seconds * 1000 milliseconds
DNPActionMask1[*] = 0x0007 // bits 0, 1, 2
DNPActionPrd1[*] = 2000 // 2 seconds * 1000 milliseconds
4.4.3.5.2 Binary and Analog Points
Typically binary input change events are read more frequently than analog input change events.
Read all static binary input and analog input points once every 60 minutes:
The change event bit is set as well as the static input value bit, as recommended by the DNP
specification.
DNPActionMask0[*] = 0x3018 // bits 3, 4, 12, 13
DNPActionPrd0[*] = 3600000 // 60 minutes * 60 seconds * 1000 milliseconds
Read binary input change events once every 2 seconds:
DNPActionMask1[*] = 0x0008 // bit 3
DNPActionPrd1[*] = 2000 // 2 seconds * 1000 milliseconds
Read analog input change events once every 20 seconds:
DNPActionMask2[*] = 0x0010 // bit 4
DNPActionPrd2[*] = 20000 // 20 seconds * 1000 milliseconds

4.4.3.5.3

Specific Points

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 144

SCADA Data Gateway | Implementers Guide

For DNP applications that do not support report by exception, the recommended way to reduce
bandwidth requirements is to use the specific flag. Specific mode only requests data for the current
Master data objects in the gateway of the type specified by the bit-mask.
The following example will read the specific binary points at a frequency of 5 seconds and the
analog points at a frequency of 20 seconds. The corresponding change event bits are not set as the
assumption is that the DNP application does not support change events.
Read specific binary points once every 5 seconds:
DNPActionMask0[*]= 0x1800 // bits 11, 12
DNPActionPrd0[*]= 5000 // 5 seconds * 1000 milliseconds
Read specific analog points once every 20 seconds:
DNPActionMask1[*]= 0x2800 // bits 11, 13
DNPActionPrd1[*]= 20000 // 20 seconds * 1000 milliseconds

4.4.3.6 IEC Action Mask


Bit Position
0 (LSB)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 31 (MSB)

Action
Send a clock synchronization request
Send general interrogation request
Send group 1 interrogation request
Send group 2 interrogation request
Send group 3 interrogation request
Send group 4 interrogation request
Send group 5 interrogation request
Send group 6 interrogation request
Send group 7 interrogation request
Send group 8 interrogation request
Send group 9 interrogation request
Send group 10 interrogation request
Send group 11 interrogation request
Send group 12 interrogation request
Send group 13 interrogation request
Send group 14 interrogation request
Send group 15 interrogation request
Send group 16 interrogation request
Send general counter interrogation request
Send counter group 1 interrogation request
Send counter group 2 interrogation request
Send counter group 3 interrogation request
Send counter group 4 interrogation request
Not Used

Notes:
At gateway startup, if the action period has a non zero value, the actions specified by the bit-mask will be
performed and repeated at the interval specified by the period in milliseconds.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 145

SCADA Data Gateway | Implementers Guide

Action mask command bits are not mutually exclusive; multiple bits can be set to cause the execution of
multiple commands. For example if bits 0 and 1 are set 2 messages are sent first a clock sync, followed by
a general interrogation request.

4.4.3.7 Modbus Action Mask


Bit Position
0 (LSB)
1
2
3
4 31 (MSB)

Action
Read Coils
Read Holding Registers
Read Discrete Inputs
Read Input Registers
Not Used

Notes:
1. At gateway startup, if the action period has a non zero value, the actions specified by the bit-mask will
be performed and repeated at the interval specified by the period in milliseconds.
2. Action mask command bits are not mutually exclusive; multiple bits can be set to cause the execution
of multiple commands. For example if bits 0 and 1 are set 2 messages are sent first a read coils,
followed by a read holding registers.

4.5

SDG Clock

The UseSystemClock configuration parameter allows you to configure the SDG to use the Windows system
clock or an internal clock maintained within the SDG. If UseSystemClock is set to TRUE the SDG will
always get the current date and time directly from the Windows system clock. This mode is useful if an
external clock synchronization mechanism is being used to synchronize the Windows system clock outside
the SDG. In this mode of operation clock synchronization requests from remote masters are parsed by the
SDG but the results are ignored.
The default mode of operation for the SDG is to use an internal clock managed by the SDG. The SDG will
set its internal clock from the Windows system clock at startup. After initialization the internal clock is a
free running clock that is maintained using a free running millisecond timer. Even though the internal clock
is independent from the Windows system clock the two clocks will initially report the same time since the
internal clock is updated using the same Windows millisecond timer used to maintain the Windows system
clock. The internal clock however will be adjusted by any clock synchronization requests received from any
remote master. After an external clock synchronization request the internal clock will remain at a fixed
offset from the Windows system clock.

4.5.1 Event Time Tags and Database Update Times


There are two ways that the SDG can assign a time to generated events. The first is to record the value of the
SDG internal clock when the database object is updated. This is referred to as the Update time. The second
option is the Reported time. This is the time reported to the SDG master component as part of the incoming
message from remote slave devices. This time is relative to the current time on the remote device and hence
there is the possibility of an inconsistent time base when using this approach with multiple slave devices.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 146

SCADA Data Gateway | Implementers Guide

By default, OPC data values, as well as data points generated by equations, use the Update time as
described above. The reason that this is done is to provide a consistent time base for changes whether or not
the data was received with a time tag, and whether or not the time in the slave devices has been synchronized.
OPC only sees the "current value" of the data points, not an "event sequence", hence the time tag accuracy is
not critical.
The user can choose to override the default and report the Reported time for OPC data values and equations
using the OPCAETimeSource, OPCTimeSource and EquationTimeSource INI file configuration parameters
and/or the OPCTIMEUPDATE, OPCTIMEREPORTED, EQTIMEUPDATE, EQTIMEREPORTED point
mapping file data point options. For more details on configuration parameters see the INI file description.
For more details on data point options see the data options field description in the point configuration file
section.
The SDG slave components and the sequence of events log file report time only if a valid time is reported by
the slave device. Hence, the default time for events to external masters talking to an SDG slave component
or a time recorded in a log file will be the Reported time.

4.6

Sequence of Event Log Files

The Sequence of Event (SOE) Log file contains records describing events reported to, detected by, and/or
generated by the Gateway software. Each record describes one reported, detected, or generated event
associated with a Master Component Point. External software applications may actively use the data within
the log file simultaneously with the Gateway updating the file.
Optionally the SOE Queue can be enabled. When the queue is enabled events are logged to a first in first out
queue and an external application can remove the events from the queue. See the example visual basic
application SOEReader. The following header file (SOEVBInterface.h) describes the functions that are
available through the SOEQueue DLL to support this.
#pragma once
/*
The following ifdef block is the standard way of creating macros which make exporting from a DLL simpler. All
files within this DLL are compiled with the SOEQUEUE_EXPORTS symbol defined on the command line. This
symbol should not be defined on any project that uses this DLL. This way any other project whose source files
include this file see SOEQUEUE_API functions as being imported from a DLL, whereas this DLL sees symbols
defined with this macro as being exported.
*/
#ifdef SOEQUEUE_EXPORTS
#define SOEQUEUE_API __declspec(dllexport)
#else
#define SOEQUEUE_API __declspec(dllimport)
#endif
/*
The following are the definitions for the
VB interface DLL functions to the SOE Queue
These can be cut and pasted into the VB code to access them.
Private Declare Function SOEOpen Lib "<PATH_NAME>\SOEQueue.dll" _
(ByVal name As String) As Long

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 147

SCADA Data Gateway | Implementers Guide


Private Declare Function SOEClose Lib ""<PATH_NAME>\SOEQueue.dll " _
() As Long
Private Declare Function SOEsetStartingSOERecord Lib ""<PATH_NAME>\SOEQueue.dll " _
(ByVal handle As Long) As Long
Private Declare Function SOEreadSOERecord Lib ""<PATH_NAME>\SOEQueue.dll " _
(ByRef buf As String, ByRef handle As Long) As Long
Private Declare Function SOEackSOERecordRead Lib ""<PATH_NAME>\SOEQueue.dll " _
(ByVal handle As Long) As Long
*/
/*--------------------------------------------------------------------------long SOEOpen(LPSTR fileName);
This function is called to open the Queue. The file name should be the same
file specified as SOE queue in the SDG configuration. This will return 0 if
the file could not be opened.
---------------------------------------------------------------------------*/
extern "C" long SOEQUEUE_API __stdcall SOEOpen(LPSTR fileName);
/*--------------------------------------------------------------------------long SOEClose(void);
This function is called to close the SOE Queue. It should be called when the client application is done with the file
opened with SOEOpen(...). It will return 0 if the queue could not be closed.
---------------------------------------------------------------------------*/
extern "C" long SOEQUEUE_API __stdcall SOEClose(void);
/*--------------------------------------------------------------------------long b = SOEsetStartingSOERecord(int h);
This function is called to set the 1st record that will be read in the Queue. It will cause readSOERecord to begin with
the 1st record in the Queue that has not been acknowledged if h == 0 (NULL). A value other than h == 0 will cause
the start to be at the record specified by h.
---------------------------------------------------------------------------*/
extern "C" long SOEQUEUE_API __stdcall SOEsetStartingSOERecord(int h);
/*--------------------------------------------------------------------------long SOEreadSOERecord(BSTR *buf, int *h);
This function reads a single record from the SOE Queue. It is recommended that this function be placed in a loop
and records read until the return value is 0. SOEackSOERecordRead can be called as records are read or at a later
time when the application is done with the record. If records are not acknowledged, they will be returned the next
time through the loop after calling setStartingSOERecord or reopening the queue file. Note that this function will
always return the next record regardless of whether the record is acknowledged or not.
buf the comma delimited ASCII data as described in the current SDG SOE log
h
a handle to the record that was just read from the Queue
---------------------------------------------------------------------------*/
extern "C" long SOEQUEUE_API __stdcall SOEreadSOERecord(BSTR *buf, int *h);
/*--------------------------------------------------------------------------long SOEackSOERecordRead(int h);

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 148

SCADA Data Gateway | Implementers Guide


Calling this function with the handle (h) for the record that was read by calling SOEreadSOERecord will cause the
record in the Queue to be marked for deletion. Records are deleted from the queue file at a frequency specified in the
configuration of the SDG. Note that the server needs to be running for the acknowledge to succeed. This function
returns 0 if a failure occurs.
h
a handle to the record that needs to be acknowledged in the Queue
---------------------------------------------------------------------------*/
extern "C" long SOEQUEUE_API __stdcall SOEackSOERecordRead(int h);

The parameters listed in the table below, and further described in subsequent sections of this document,
can be used to configure the event log file and queue capabilities of the Gateway. To set or change
these parameters, edit the INI file prior to execution of the Gateway software; the parameters are
located in the Data Change Event Logging section within the INI file.
Parameter Name
SOEQFileName
EnableSOEQ
MaxSOEQSize
SOEQCleanupRate
EventLogFileName
EventLogRecordFormat
EventLogFileFlushPrd
Errors_logMask
Diagnostics_logMask
GatewayControl_logMask
Equations_logMask
MSPNA_logMask
MDPNA_logMask
MSTNA_logMask
MMENA_logMask
MMENB_logMask
MMENC_logMask
MEINA_logMask
CSCNA_logMask
CDCNA_logMask
CRCNA_logMask
CSENA_logMask
CSENB_logMask
CSENC_logMask
CCSNA_logMask
103_M103Type1_logMask
103_M103Type2_logMask
103_M103Type4_logMask
103_M103Type5_logMask
103_M103Type9_logMask
103_M103Type20_logMask
MDNPType1_logMask

Description of What Events Are to Be Logged


Sequence Of Events Queue File Name and Path
If true the SOE Queue will be enabled.
The maximum number of items allowed in the SOE Queue. If this limit is exceeded
oldest items are removed. A value of 0 will not limit the queue size.
The rate at which acknowledged items are removed from the SOE Queue. When this
number of items has been added to the queue a cleanup is initiated. All
acknowledged items will be removed from the queue at this rate.
The name of the file or files into which events are to be logged
The format of records within log files and the SOE queue
The maximum amount of time after an event record has been written to a log file in
which the log file will be flushed, allowing external software applications to read
the updated log file records.
The type of error events to be logged
The type of diagnostic events to be logged
The type of events associates with internal Gateway control points to be logged
The type of events associated with internally calculated equation points to be logged
The type of 60870-5-101/104 single point events to be logged
The type of 60870-5-101/104 double point events to be logged
The type of 60870-5-101/104 step position events to be logged
The type of 60870-5-101/104 normalized measurand events to be logged
The type of 60870-5-101/104 scaled measurand events to be logged
The type of 60870-5-101/104 floating point measurand events to be logged
The type of 60870-5-101/104 end of initialization events to be logged
The type of 60870-5-101/104 single command events to be logged
The type of 60870-5-101/104 double command events to be logged
The type of 60870-5-101/104 regulating step command events to be logged
The type of 60870-5-101/104 normalized set point command events to be logged
The type of 60870-5-101/104 scaled set point command events to be logged
The type of 60870-5-101/104 floating point set point command events to be logged
The type of 60870-5-101/104 clock synchronization events to be logged
The type of 60870-5-103 type 1 events to be logged
The type of 60870-5-103 type 2 events to be logged
The type of 60870-5-103 type 4 events to be logged
The type of 60870-5-103 type 5 events to be logged
The type of 60870-5-103 type 9 events to be logged
The type of 60870-5-103 type 20 general commands events to be logged
The type of DNP Binary Input events to be logged

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 149

SCADA Data Gateway | Implementers Guide

Parameter Name
MDNPType10_logMask
MDNPType12_logMask
MDNPType20_logMask
MDNPType21_logMask
MDNPType30_logMask
MDNPType40_logMask
MDNPType41_logMask

Description of What Events Are to Be Logged


The type of DNP Binary Output Status events to be logged
The type of DNP Binary Output Control events to be logged
The type of DNP Counter events to be logged
The type of DNP Frozen Counter Input events to be logged
The type of DNP Analog Input events to be logged
The type of DNP Analog Output Status events to be logged
The type of DNP Analog Output Control events to be logged
Table 6 List of Parameters on what to log for Events

4.6.1 Event Log File Names


EventLogFileName defines the file name, including path, base filename, and extension in which to store
event log records. The filename can contain the same %xxx property fields defined for event record format,
described in Section 4.6.2 below. These fields effectively allow multiple log files; the file in which a specific
event will be logged is determined when the event occurs by expanding the %xxx property fields for that
event. This feature helps organize Sequence Of Event Log files based on any of the event properties.
For example, consider the following:
EventLogFileName = c:\mypath\GW%02ry2%02rmr%02rdm.log
This will allow event records to be recorded in log files with names such as:
c:\mypath\GW090818.log
where 090818 represents a date (year is 00, month is 06, and day of month is 09). This example organizes
Sequence of Event log files based on the reported dates of events there will be one log file for each day in
which an enabled event is reported.

4.6.2 Event Log Record Format


EventLogRecordFormat defines the format of event records stored in the Sequence of Event Log files. The
format contains %xxx property fields that are expanded when an event occurs to describe a unique
property of that event. The field names are included in the format using syntax very similar to the C
programming language printf function. More specifically, each property field begins with a % and is
followed by an optional field width, and a property name.
The tables in this section describe the property field names that can be used in event EventLogRecordFormat
(and also in EventLogFileName).
The following figure provides an example event log record format, and an example expansion of that format
for a specific event.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 150

SCADA Data Gateway | Implementers Guide

ry4

rmr

%ry4
2000

rdm

%02rmr
11

rtm

val

qly

%val,
%02rdm %rtm,
11:53:58.216,
on,
30

%qly,
0,

utg

de
s
se cr
e ipt
IF io
N n
_T fo
ab r M
le D

4
d
se igit
e ye
R a
D r
T_
re
Ta
p
o
se r
bl
e
e ted
R
D m
T_ o
Ta nth
bl
re
e
po
se rt
e ed
R d
D a
T_ y
re
Ta
po
bl
hh rt
e
ed
:
m
se m t
e :s im
R s e
D .m
T_ s
va
Ta ec
lu
bl
on e
e
of
/
o
se f t
e f, e he
VF t c M
D
N
O
_T
qu
:
a
al
b
se it
l
e
e y(
VF he
x
u s N_ T v a
er
ab lu
se ta
le e)
e g
IF n
N am
_T e
ab
le

An example format string:


EventLogRecordFormat = %ry4-%02rmr-%02rdm %rtm,%val,%qly,%utg,%dcr

dcr

%utg,
%dcr
com1.L12.A41.T1.P100, Feeder Breaker

Figure 13 Event Log Record Format

4.6.2.1 Value Field Names (VFN_Table)


The following fields describe data point properties, which, if changed, usually indicate an event. For more
information on the data types and corresponding quality flags, see section 0.
Field
Name
val

sval

qly

sqly

rsn

Event
Property

Value Field Names Description

The current value of a master data point (after the change which generated the
event). The representation of the value depends on the data type of the point.
Value
Some values may be represented as character strings (e.g., on, off), while
others may be represented with integer or floating-point values.
The current value of a slave data point. The representation of the value
depends on the data type of the point. Some values may be represented as
Value
character strings (e.g., on, off), while others may be represented with integer
or floating-point values.
A hexadecimal number indicating the quality of the current value of the master
Quality
data point. The quality can indicate a combination of the following bits:
A hexadecimal number indicating the quality of the current value of the slave
data point. The quality can indicate a combination of the following bits:
0x0000
Successful no fault or other conditions
0x0001
Overflow or Rollover
0x0008
Elapsed Time Invalid
0x0010
Blocked
Substituted (over-ride or forced)
Quality 0x0020
0x0040
Off-line (not topical or not dated)
0x0080
Invalid
0x0100
Reference error
0x0200
In transit
0x0400
Un-initialized (not set since startup)
0x0800
Test mode
Update Indicates the reason the event was reported, detected, or generated.
Reason Possible values are:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 151

SCADA Data Gateway | Implementers Guide

Field
Name

Event
Property

Value Field Names Description


0x0001

0x0002
0x0004
0x0008
0x0010
0x0020
0x0040

0x0080

0x0100
0x0200

0x0400

0x0800

0x1000
0x8000

The data is being updated for an unknown reason; e.g.,


reported through protocols that do not support cause-oftransmission, or reported through IEC 60870-5-103 with a
COT of "test mode"
The data was requested; no change event is necessarily
indicated.
The data is being refreshed by the source of data (without
request); no change event is necessarily indicated.
The source of data indicates this update is a change.
The data was changed as a result of a control operation
through communications.
The data was changed as a result of a control operation
executed locally at the device.
Used for control points: A control operation has been initiated
(e.g., sent to a remote device). This could occur for the
second pass of a 2-pass operation, or it could occur for the
only pass of a 1-pass operation.
Used for control points: A control operation has been
confirmed (e.g., the remote device sent confirmation of having
received a control operation). However, though confirmed,
the control operation may not yet be finished. When it is
finished, 0x0010 will be used.
Used for control points: The first pass in a two-pass control
operation has been initiated (e.g., sent to a remote device)
Used for control points: A first pass in a two-pass control
operation has been confirmed (e.g., the remote device sent
confirmation of having received the first-pass control
operation).
Used for control points: The de-select operation (cancel of a
1st-pass select operation) has been initiated (e.g., sent to a
remote device)
Used for control points: A de-select operation (cancel of a 1stpass select operation) has been confirmed (e.g., the remote
device sent confirmation of having de-selected the control
operation).
Used for control points: An error occurred with the control
operation.
Used by some protocols to indicate the point or device is
operating in a test mode

Table 7 Value Field Names - Describes properties which indicate an Event

4.6.2.2 Update Date and Time Field Names (UDTF_Table)


The update date and time property fields describe the date and time when an event is detected or updated
within the SDG. The timestamp is based on the clock used by SDG. The distinction between the update
date and time and the reported date and time, which is described next, is important. The following table
describes format fields that correspond to update date and time event properties.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 152

SCADA Data Gateway | Implementers Guide

Field Name
udt
utm
uy2
uy4
umr
ume
udm
udw
uhr
umn
usc
ums

Event Property
Update Date

Update Date and Time Description


The update date of the event. Formatted as dd-mmm-yyyy, where
dd is day of month, mmm is a 3-character abbreviation for month,
and yyyy is the year.
Update Time
The update time of the event. Formatted as hh:mm:ss.iiii, where hh
is hour (0-23), mm is minute, ss is second, and iii is milliseconds.
Update 2-digit Year The update year of the event, from 0-99 of the event
Update 4-digit Year The update year of the event, from 1901 to 2099
Update Month
The update month of the event, from 1 to 12
Update Month Name The update month of the event; using 3 character abbreviations for
month names
Update Day of Month The update day of the event, from 1 to 31
Update Day of Week The update day-of-week of the event, using 3 character
abbreviations for day names.
Update Hour
The update hour of the event, from 0 to 23
Update Minute
The update minute of the event, from 0 to 59
Update Second
The update second of the event, from 0 to 59
Update Milliseconds The update milliseconds of the event, from 0 to 999
A hexadecimal number indicating the quality of the updated date
and time of the event.
The time quality can indicate any combination of the following bits:

Utq

Update Time Quality


(none)
I

Successful no fault or other conditions are associated


with the update time.
The update date/time is invalid, which may occur if a
particular data point has never been updated.

Table 8 Update Date and Time Event Description

4.6.2.3 Reported Date and Time Field Names (RDT_Table)


The reported date and time property fields describe the date and time of an event as reported by the device
reporting the event. It is based on the clock of the reporting device, which is not necessarily synchronized
with the clock used by the SDG. If the reporting device did not include a date and time with the report of
the event, then the update date and time will be used. The following table describes format fields that
correspond to reported date and time event properties:

Field
Name

Event Property

rdt

Reported Date

rtm

Reported Time

ry2
ry4
rmr

Reported
2-digit Year
Reported
4-digit Year
Reported Month

Reported Date and Time Description


The reported date of the event. Formatted as dd-mmm-yyyy, where dd
is day of month, mmm is a 3-character abbreviation for month, and
yyyy is the year.
The reported time of the event. Formatted as hh:mm:ss.iiii, where hh
is hour (0-23), mm is minute, ss is second, and iii is milliseconds.
The reported year of the event, from 0-99 of the event
The reported year of the event, from 1901 to 2099
The reported month of the event, from 1 to 12

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 153

SCADA Data Gateway | Implementers Guide

rme
rdm
rdw
rhr
rmn
rsc
rms
Rtq

Reported
Month Name
Reported
Day of Month
Reported
Day of Week
Reported Hour
Reported Minute
Reported Second
Reported
Milliseconds
Reported
Time Quality

The reported month of the event; using 3 character abbreviations for


month names
The reported day of the event, from 1 to 31
The reported day-of-week of the event, using 3 character abbreviations
for day names
The reported hour of the event, from 0 to 23
The reported minute of the event, from 0 to 59
The reported second of the event, from 0 to 59
The reported milliseconds of the event, from 0 to 999
A hexadecimal number indicating the quality of the reported date and
time of the event.
The time quality can indicate any combination of the following bits:
Successful no fault or other conditions are associated
(none)
with the update time.
All fields of the date and time were assumed based on the
A
date and time the event was received (the update time was
used).
The hour and date were assumed based on the date and
H
time the event was received. The minutes, seconds and
milliseconds are as reported from the remote device.
The event was assumed to have occurred in the hour
previous to the one in which the event was received
-H
because the reported minutes were significantly greater
than the current minutes.
The event was assumed to have occurred in the hour after
the one in which the event was received because the
+H
reported minutes were near 0 and the current minutes were
near 59.
The date was assumed based on the date and time the event
D
was received. The time is as reported from the remote
device.
The event was assumed to have occurred in the day
previous to the one in which the event was received
-D
because the reported hours were significantly greater than
the current hours.
The event was assumed to have occurred in the day after
+D
the one in which the event was received because the
reported hour was near 0 and the current hour was near 23.
The date/time is being reported by the remote device as
I
being invalid.
U
As reported in DNP3 object 2, variation 3
N
Need Time IIN is asserted by remote DNP3 device

Table 9 Reported Date and Time Event Description

4.6.2.4 Identification Field Names (IFN_Table)


The following fields describe properties of a data point that identify the point:
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 154

SCADA Data Gateway | Implementers Guide

Field
Name
dcr

Event Property

Identification Field Names Description

Description

The description as entered for the point in the Point-Mapping


configuration file.
The physical tag name, which is a combination of some or all of
communication channel name, link address, application address,
information object address (point number), data type, element
index, and/or function type.
The user tag name as entered for the point in the Point-Mapping
configuration file. If no user name is entered, the physical tag
name is used.
The name of the communication channel associated with this
point.
The link address of the device from which the point is
communicated.
The application layer address of the sector from which the
point is communicated. Not all protocols use application
addressing.
The information object address of the point. Some protocols
refer to this as point number.
The data type, in numerical form, of the point.
The protocol, in string form, through which the point is
communicated.
The element index of the point. Not all protocols use element
indexing.
The function type of the point. Not all protocols use function
typing.

ptg

Physical
Tag Name

utg

User
Tag Name

prt

Communication Channel
Name
Link Address

lnk
app

Application
Address

ioa
typ
pcl

Information Object
Address
Data Type
Protocol

eli

Element Index

ftp

Function Type

Table 10 Identification Field Names Event Description

4.6.2.5 Escape sequences within Event Log Record Formats (ELR_Table)


Escape sequences are sequences of characters that begin with an escape character (the back-slash
\character) followed by one or more other characters. The escape sequences supported within
EventLogRecordFormat are listed in the table below. Escape sequences are not supported within
EventLogFileName. The reason for this is that escape sequences are not useful in file names, and the
escape character (a back-slash) conflicts with file directory separators.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 155

SCADA Data Gateway | Implementers Guide

Escape sequence
\a
\b
\f
\n
\r
\t
\v
\0mm
\1mm
\2mm
\3mm
\xhh

Expanded as character code:


7
8 (common use: backspace)
12
10 (common use: line-feed, or new-line)
13 (common use: carriage-return)
9 (common use: tab)
11
Octal equivalent (where m is 0-7)
hexadecimal equivalent (where h is 0-9, a-f, or A-F)

Table 11 Escape sequences in Event Log Records

4.6.3 Flush Period


EventLogFileFlushPrd defines the maximum amount of time after an event is recorded in a log file in which
that file will be flushed. This may allow external software applications to access the data stored in the log
file soon after the event is generated and stored in the log file.

4.6.4 Log Mask


The tttt_logMask configuration parameters (where tttt represents any of the data types listed in the table in
Section Sequence of Event Log Files section 4.6 page 147) specify the type of events for all points of each
type that are to be logged in Sequence of Event Log Files. (The LOGMSKxxxx point option described in
may be used to override tttt_logMask for a specific point.)
Logging may be enabled for all kinds of events, enabled for only a selected few kinds of events, enabled for
only one kind of event, or disabled for all kinds of events associated with each data type. These
combinations are accomplished by adding together any or all of the kinds of events listed in the following
table. A value of zero will disable logging.
Mask Value
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
0x0200
0x0400
0x0800

Type of Event
The data is being updated, but the reason for the update is unknown.
The data is being updated because it was requested.
The data is being updated by the source of data without direct request. No change is
necessarily indicated.
A change in the data is indicated by the source of data.
A change in the data is indicated due to a request through communications.
A change in the data is indicated due to action at the device.
A control request has been transmitted to a remote device.
A control request has been confirmed by a remote device, but is not yet complete.
A 1st pass in a 2-pass control operation has been transmitted to a remote device.
A 1st pass in a 2-pass control operation has been confirmed by a remote device.
A cancel operation has been transmitted to a remote device to abort a 2-pass control
operation between the 1st and 2nd passes.
A cancel operation has been confirmed by a remote device.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 156

SCADA Data Gateway | Implementers Guide

0x1000
0x8000

A remote device has responded to indicate an error in a control operation.


Either the data point or the remote device is operating in a test mode.
Table 12 List of Events and the Mask Value

4.7

DNP3 Datasets

It is highly recommended that the user be familiar with the document DNP Technical Bulletin TB2004-004e
Data Sets prior to using this feature of the SDG. This document will provide the required background to
effectively use and configure data sets in the SDG.

4.7.1 Background
DNP3 Datasets are collections of data treated as a unit. They can be read and written through the SDG GUI.
Typically there is a 1 to 1 relationship between a dataset descriptor and its present values unless a dataset
prototype is referenced in a descriptor. When this is the case the prototype elements are expanded into the
present value. A descriptor needs to exist on the master and slave before the present values can be
transferred. The descriptors and prototypes are used to define the type information of the present values.
Descriptor and prototype definitions can be transferred between slave and master devices.

4.7.2 Prototypes
Prototypes can be thought of as a formal registered definition for the structure of a group of related data that
can be referenced by a descriptor. When a descriptor references a prototype it inherits the definition of the
elements in a prototype. As a result the elements in a prototype will be expanded into the data set present
value. In the descriptor the prototype is just shown as referenced. A prototype has a unique identifier called
a UUID which should be registered with a standards body. The UUID is also used to reference a prototype
from a descriptor.
To add a prototype to your configuration, a DNP3 session must already exist. Right-click on the DNP3
session, select Add Data Type and then select a T85 (Data Set Prototypes).

Next, right-click on the T85 data type and select Add DNP Prototype:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 157

SCADA Data Gateway | Implementers Guide

This will display the Add a DNP Prototype dialog screen:

Complete the necessary fields and then click OK to add the new prototype to the T85 data type as shown in
the following screenshot:

To add an element to a prototype, right-click on the prototype (i.e. C0) and then select Add DataSet
Element to Prototype:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 158

SCADA Data Gateway | Implementers Guide

This will display the Dataset Element Editor dialog screen:

Upon completing the definition of a prototype the SDG configuration window will look similar to this.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 159

SCADA Data Gateway | Implementers Guide

To edit a prototype or an element, right-click on the item and select Edit DNP Prototype, for prototypes, or
Edit DNP Dataset Element, for elements.

4.7.3 Descriptors
Descriptors are used to specify the actual definition for the elements in the dataset present value. The
definition can consist of individual elements and/or references to prototypes.
To add a descriptor to your configuration, a DNP3 session must already exist. Right-click on the DNP3
session, select Add Data Type and then select a T86 (Data Set Descriptors):

This will add the T86 and T87 data type to the configuration (see section 4.7.4 Dataset Preset Values for
more information on the T87 data type). Next, right-click on the T86 data type and select Add DNP
Descriptor:

This will display the Add a DNP Descriptor dialog screen:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 160

SCADA Data Gateway | Implementers Guide

Complete the necessary fields and then click OK to add the new descriptor to the configuration as shown in
the following screenshot:

To add an element to a descriptor, right-click on the descriptor (i.e. S1) and then select Add DataSet
Element to Descriptor:

This will display the Add a Dataset Element dialog screen:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 161

SCADA Data Gateway | Implementers Guide

Upon completing the definition of a descriptor the SDG configuration window will look similar to the
configuration shown below (in this example, a prototype was referenced in the descriptor):

Because a prototype was referenced in the descriptor, the present values are expanded to show the elements
of the prototype as shown below:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 162

SCADA Data Gateway | Implementers Guide

4.7.4 Dataset Present Values


The T87(Data Set Present Values) data type are commonly treated as standard MDOs or SDOs in the SDG;
depending on whether they are part of a master or slave component. Present values obtain their type
information from the descriptor with the same point id. For example, descriptor element
mdnp.L3.T86.S0.D000 will define the type information for the data set present value MDO
mdnp.L3.T87.X0.P0. The present value points can not be directly added or deleted. Their lifetime is
controlled by the associated descriptor elements. As a result, slave present value points are treated
differently than normal SDOs in the SDG. They exist as a result of the slave descriptor object and are not
created as a result of a point mapping operation. The point mapping operation simply connects an MDO to
the slave data set present value point so it can be supplied with a value.

4.7.5 Dataset Present Value Mapping


Dataset present values can be mapped to other points in the SDG and can also show up in an OPC client
connected to the SDGs OPC server.
To map to a data set slave point, drag a MDO onto a data set slave present value data object (i.e.
sdnp.L4.T87.X0):

Next, use the dropdown box (1) to select the data set present value element that should have its value
supplied by this MDO. If you want to supply the data set present value element with the status value of the
MDO, click the ellipse button (2) to display the Options Editor dialog screen and then enable the
MAP_MDO_SATAUS option.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 163

SCADA Data Gateway | Implementers Guide

Data set present value MDOs can also be mapped to other SDOs in the SDG by dragging them
to the other SDOs.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 164

SCADA Data Gateway | Implementers Guide

5. SCADA Data Gateway Technical Support


The best method for receiving technical support for the SDG is to complete a support request ticket on the
Triangle MicroWorks website. This request is submitted directly to the technical support department. To
access this page, click on HelpSubmit Support Request from the SDGs main menu (requires an internet
connection). To access this page directly, please use the following link:
http://www.trianglemicroworks.com/SDGSupportRequest.aspx
Please be sure to complete all the requested information and to include your INI and CSV files for the
configuration along with the protocol analyzer log.
The INI and CSV files are typically located in the executable path of the SCADA Data Gateway; by default:
C:\Program Files\Triangle MicroWorks\SCADA Data Gateway
To save the protocol analyzer log to a file, click any where in the Protocol window and then select
FileSave As from the SDG menu.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 165

SCADA Data Gateway | Implementers Guide

6. Troubleshooting
The following information is provided to assist you with common problems encountered when setting up and
configuring the SDG.

6.1

Running the SDG on Windows Vista

With Vista, when you install the SCADA Data Gateway you must first save the file locally and then rightclick on it and select "Run as Administrator." Next, right-click on the SDG shortcut icon and then select the
Compatibility tab. Select "Run this program as an Administrator" then click OK; after that, starting the
SCADA Data Gateway from the shortcut should run it as an Administrator.

6.2

Running the SDG on a Virtual Machine

The evaluation versions of the SCADA Data Gateway will not run in a Virtual Machine (VM). Only a fully
licensed copy can run in a VM, but this requires a USB flash drive license. Use the following link for more
information on using the SDG on a VM:
http://www.trianglemicroworks.com/VirtualMachines.aspx

6.3

Errors in the Point Mapping File When Saving the SDG

These error messages are most likely related to errors discovered in the Point Mapping (CSV) file during
startup. Since the file could not be completely read on startup, the SDG will not overwrite it on exit in order
to ensure there is no loss of data.
To get more information related to these errors, ensure that you have Errors checked in the protocol
analyzer log filter and then restart the SCADA Data Gateway. You will most likely get an error message
stating that there are errors in the CSV file. However, the errors are now listed in the Protocol Analyzer
along with a line number that corresponds to the line in the CSV file where the error occurred.
These errors may be resolved by:
1. Exiting TMWgtway.exe
2. Editing either the Point Mapping file (CSV) or the INI file
3. Restarting TMWgtway.exe

6.4

Network: Network Driver Appears To Not Be Serving This Directory Dialog

On Windows NT/2000 run the setupex.exe program in the C:\Program Files\Common


Files\TriangleMicroWorks directory to install the required drivers for the SDG licensing software. This
step is not required for Windows 95/98/ME.

6.5

No communication with a remote device seems to be occurring

6.5.1 Physical layer error: Error opening channel


The message "physical layer error: Error opening channel" indicates that the device is unable to open the
specified channel and port. The cause of the message depends on whether the channel is a serial or TCP/IP
channel.
1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 166

SCADA Data Gateway | Implementers Guide

6.5.1.1 TCP/IP Connection


With TCP/IP, you will normally get this message until the corresponding device also opens the port. It is
not unusual to see several of these messages while the other device starts up and opens the port.
If you are still getting this message after your corresponding device attempts to open the port, then you
should check your configuration of both the Slave and Master device.
The typical settings that can cause this problem are:
address: the Master (client) must specify the TCP/IP address of the Slave device. The Slave
must either specify the TCP/IP address of the client or use an address of "*.*.*.*". (The *.*.*.*
address instructs the server to accept a connection from any client.)
port: both the Master and Slave must use the same port; for DNP3, you would normally use port
20000
mode: typically, the Slave should be a Server and the Master should be a Client.
6.5.1.2 Serial Connection
With serial connections, this message usually indicates that the port cannot be opened. If the specified
port is installed in the computer, then this is error is usually caused by another program using the serial
port, preventing it from being opened. PDA hotsync programs are frequently the problem.
6.5.1.3 Modem Channels
The "physical layer error: Error opening channel" message is normal for modem channels; it occurs
because the channel attempts to open a physical connection, but this attempt will fail until a successful
dial-up connection is established. As a result, this message will display about every 10 seconds when the
channel is idle.
A "MODEM_CHANNEL: open failed" message is also typical when a dial-up connection is not
established, and will occur each time the above error message is displayed. This message occurs because
the SDG attempts to open the modem, but unless the dial up connection is established, the open will fail.
(This is the normal condition when the channel is idle).

6.5.2 Configuration
Verify the configuration of both the SDG and your remote device:
For a serial connection, verify the baud rate, parity, and number of stop bits are configured the same
for both devices.
For a TCP connection, verify the TCP and port address, as well as the client/server settings.
For either type of connection, verify that the link address and common address of ASDU (sector
address) match the addresses set in the remote device.

6.5.3 Other issues

6.6

Verify that the desired protocol is licensed.


Verify the physical connection.
Turn on the Physical Layer in the Protocol Analyzer window and verify that bytes are sent and
received and that the Physical layer error: Error opening channel message is not being issued.

Timeout waiting for application layer response fragment or restart." Message


is displayed

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 167

SCADA Data Gateway | Implementers Guide

The "Timeout waiting for application layer response fragment or restart." message is normal behavior after a
warm restart command is sent.
If you are seeing this error at other times, it may indicate that the device with which you are communicating
is either slow or has not established a connection at all.
If you always receive this message, it probably indicates that the connection has not been established. In this
case, you should check your configuration. For a serial connection, verify the baud rate, parity, and number
of stop bits configured. For a TCP connection, verify the TCP and port address, as well as the client/server
settings. For either type of connection, you should verify the link addresses.
If the connection is established but you occasionally receive this message, then the device you are connected
to is probably slow to respond. You might try changing the ApplResponseTimeout parameter in the INI file.

6.7

Missing DLL Files

6.7.1 Missing Microsoft Visual C Run-time Components


If you receive an error message indicating that the msvcrt.dll file is missing, then Microsoft Visual C
Run-time Components have not been fully installed on your computer. These files are normally part of
all Microsoft Windows Operating System installations.
To fix this problem, contact Triangle MicroWorks. We will send you a new msvcrt.dll with instructions
for where to load the file.

6.8

Error Starting the GTWService - Missing Localization DLL (VC80.MCFLOC)

If you are experiencing issues when trying to run the SDG as a service, the localization DLL may be corrupt
or missing. To correct this, you will need to download and install the Microsoft Visual C++ 2005 SP1
Redistributable Package using the following URL:
http://www.microsoft.com/downloads/details.aspx?familyid=200b2fd9-ae1a-4a14-984d-389c36f85647&displaylang=en

If you will be running the Service Monitor, then your computer must have the Microsoft .NET
2.0 redistributable installed. If it is not installed, the SDG installer will warn you. You can
download and install the redistributables from the Microsoft web site:
http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8eddaab15c5e04f5&displaylang=en

6.9

Using an RS-232/RS-485 Converter with the SCADA Data Gateway

The SDG is compatible with any RS-232/RS-485 converter using Send Data (SD) control. If you experience
communication problems when using the SDG with an RS-232/RS-485 converter, make sure that your
converter is configured for Send Data control.
If your converter does not support Send Data control, you will need to acquire a different converter
before using the SDG in your project.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 168

SCADA Data Gateway | Implementers Guide

Triangle MicroWorks has tested the SDG using the 485SD9TB Port Powered RS-232 to RS-485
Converter from B&B Electronics:
http://www.bb-elec.com/product.asp?sku=485SD9TB&dept_id=171

6.10 Setting Command and Control Modes for Binary Outputs in DNP3 Master
Sessions
The SDG supports several parameters in the INI file that are used to set the command and control modes for
binary output points in Master DNP3 sessions.
The OBJ12_use2pass parameter is used to set the control mode. If this parameter is set to TRUE, then
two-pass control operations will be used for all initiated "Binary Output" controls. If this parameter is set to
FALSE, then single-pass control operations will be used for all initiated "Binary Output" controls.
The OBJ12_forceDflt parameter is used to determine if the control mode specified by the
OBJ12_use2pass parameter will be used or if the control mode will be taken from upstream devices. If this
parameter is set to TRUE, then the default control code will always be used instead of any control codes
for Binary Output controls received from upstream devices. If this parameter is set to FALSE, then the
control code for Binary Output controls received from upstream devices will be used if possible.
The OBJ12_dfltCmdMode parameter is used to set the command mode. Possible values for this parameter
are LATCH, PULSE, and PAIRED. The default is LATCH.
The PulseLength parameter is used to set the length (in milliseconds) of the pulse used for all initiated
Binary Output controls. Pulse Length is used when a pulse, trip or close control code is specified. The
default value is 100 (milliseconds).
The values specified for these parameters in the SDG initialization file apply to all points and
devices configured for use with the SDG.

For certain points and/or devices that require different control and command modes from those specified in
the initialization file, these default values can be overridden using the point mapping file. See Section 4.3.5.3
Table of Control Options and the Meaning on page 112 for more information.

6.11 After installing Windows XP Service Pack 2, OPC Communications via DCOM
no longer work
Installing Windows XP Service Pack 2 with the default configuration will inhibit OPC communications via
DCOM. The OPC Foundation has prepared the following white paper with instructions for configuring
Service Pack 2 for use with OPC/DCOM communications:
http://www.opcfoundation.org/WebUI/DownloadFile.aspx?CM=1&RI=161

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 169

SCADA Data Gateway | Implementers Guide

7. Glossary of Terms
Term
APCI (Application
Protocol Control
Information)
APDU (Application
Protocol Data Unit)
Application Layer

ASDU

ASDU (Application
Service Data Unit)

Description
The transport interface is a stream-oriented interface, which does not define
any start or stop mechanism for the ASDUs of IEC 60870-5-101. In order to
detect the start and end of the ASDUs, each APCI includes delimiting
elements (i.e., a start char, specific length of the ASDU, and control field).
Contains an APCI and an ASDU. The 1st octet, which is subsequently the 1st
octet of the APCI, contains the length of the APDU (max 253).
Layer 7 of the ISO model and one of the layers used in the EPA model. The
application layer contains a number of application functions that involve the
transmission of ASDUs between source and destination.
Data Unit ID Data Unit Type
The application user layer contains a
number of Application Functions that
involve the transmission of ASDUs
between source and destination. The
Information
ASDU is composed of a Data unit
Information
Object ID
Object
identifier and one or more information
objects
Time Tags
Information

baseband

DNP or DNP3

A type of digital data transmission in which each medium (wire) carries only
one signal, or channel, at a time. In contrast, broadband transmission enables
a single wire to carry multiple signals simultaneously.
A device that receives data on a communication link. Also referred to as
Master or SCADA node.
A file format in which each object in the file is separated by a comma. When
an object is to be omitted then two commas are side by side with no space in
between.
These may be physically discrete ports, or logically discrete ports that share a
physical connection, such as multiple TCP/IP serial pipes, each of which is
a separate logical port, even though they may share a single physical 10BaseT
interface.
The direction of transmission from the controlling station to a controlled
station.
Distributed Network Protocol

EPA (Enhanced
Performance
Architecture)

A protocol reference model that provides (compared to the 7 layer ISO model
architecture) a three-layer architecture for obtaining faster response times for
the critical information but with service limitation.

Client
Comma Separated File
(CSV)
Communication Channels

control direction

Ethernet

F-Code

Defined to use Layers: 1 (Physical), 2 (Data Link Layer) and 7 (Application


Layer), along with a User defined Layer at the top.
A local-area network (LAN) protocol developed by Xerox Corporation in
cooperation with DEC and Intel in 1976. Ethernet uses a bus or star topology
and supports data transfer rates of 10 Mbps. The Ethernet specification
served as the basis for the IEEE 802.3 standard, which specifies the physical
and lower software layers. A newer version of Ethernet, called 100Base-T (or
Fast Ethernet) now exists.
Function code

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 170

SCADA Data Gateway | Implementers Guide

FUN

Function type

Function Type

IED

The 1st octet of the information object identifier/data unit identifier defines the
function of protection equipment.
The IEC is a worldwide organization for standardization comprising all
national electrotechnical committees. The object of the IEC is to promote
international co-operation on all questions concerning standardization in the
electrical and electronic fields.
Intelligent Electronic Device

IEC 101

IEC 60870-5 protocol standard

Information Object

A component of the ASDU. Consists of an information object identifier,


which may include the information object type, information object address,
and a set of information elements along with a time tag of information object.
Specifies the associated address of the first information element of the
sequence of information elements in the ASDU.
The INF is used when IEC60870-5-103 protocol is selected. The INF is an
octet, which is part of the Information Object Identifier in the Information
Object of the ASDU.
The ability of software and hardware on different machines from different
vendors to share data.
Communication protocol widely used for SCADA and process control
applications originally developed by Modicon. The Modbus protocol is now
in the public domain.

IEC (International
Electrotechnical
Commission)

IOA (Information Object


Address)
INF (Information
Number)
interoperability
ISO (International
Organization for
Standardization)
Monitoring direction
OLE

The direction of transmission from the controlled station to a controlling


station.
Microsoft Windows platforms Object Linking & Embedding

OPC

OLE for Process Control

OSI (Open System


Interconnection)
Physical Tag Name

The reference model of ISO-CCITT, which subdivides communication into


seven layers. EPA uses a three-layer approach.
Each row in the Point-Mapping file has a Physical tagName field that is
generated from other entries (it is not entered by the user). When making
reference to a Master Component Point, either the User Tag Name (if one was
entered) or the Physical Tag Name may be used interchangeably to identify
the point.
A data entity. The lowest level of indivisible data collected or sent by the
SDG.
Remote Terminal Unit

Point
RTU
SCADA (Supervisory
Control and Data
Acquisition)

SDG

Unbalanced transmission procedures are used in SCADA systems in which a


Master station controls the data traffic by polling outstations sequentially. In
this case the Master station is the primary station that initiates all message
transfers while the outstations are secondary stations that may transmit only
when they are polled
SCADA Data Gateway

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 171

SCADA Data Gateway | Implementers Guide

TCP/IP (Transmission
Control Protocol/Internet
Protocol)
Type ID

User Tag Name

10 Base T

100 Base T

A protocol developed for the Internet to get data from one network device to
another; "TCP uses a retransmission strategy to insure that data will not be
lost in transmission".
Is a code, which unambiguously identifies the ASDUs type within the
collection of all possible types, for a system or a profile. The Type ID enables
the receiving application service to send each data unit to the correct
application process for handling the indicated type of data unit. It also
enables the receiving application process to see what type of data is contained
in the data unit and to determine its structure from a local table.
The User Tag Name is a user-supplied text label that identifies the Master
Component Point. The User Tag Name should not contain spaces. Also
beware of using characters in tag names that may have special meaning to
OPC clients.
One of several adaptations of the Ethernet (IEEE 802.3) standard for Local
Area Networks (LANs). The 10Base-T standard (also called Twisted Pair
Ethernet) uses a twisted-pair cable with maximum lengths of 100 meters. The
cable is thinner and more flexible than the coaxial cable used for the 10Base-2
or 10Base-5 standards.
Cables in the 10Base-T system connect with RJ-45 connectors. A star
topology is common with 12 or more computers connected directly to a hub or
concentrator. The 10Base-T system operates at 10 Mbps and uses baseband
transmission methods.
A networking standard that supports data transfer rates up to 100 Mbps (100
megabits per second). 100Base-T is based on the older standard.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 172

SCADA Data Gateway | Implementers Guide

8. Tmwgtway.ini Parameter List


This information is also available in the SDG Application by selecting HelpINI File from the menu.
AutoSavePrd
Maximum amount of time between saving the INI and CSV application configuration files. The INI file is only saved if a
change has been made. A value of 0 will disable saves.
DEFAULT: 0 ms
ConfigViewRefreshPrd
Maximum amount of time between refreshing the list view (right side of tree) in the configuration window. A value of
60000 will disable refreshing.
Possible values are from 300 to 60000 (1 minute).
DEFAULT: 1000 ms
DbQSizeErrorLimit
When the database queue size exceeds this limit the internal MDO DbQsizeExceededErrorLimt will be true. When this
limit is exceeded the database queue will not be updated until the database queue size falls below this limit. Note: there is
no way to disable this limit.
DEFAULT: 50000 count
DbQSizeWarningLimit
When the database queue size exceeds this limit the internal MDO DbQsizeExceededWarningLimt will be true. If the
value is 0 limit checking is not done.
DEFAULT: 25000 count
EquationTimeSource
Specifies the source of the time tag for data points which are generated as the result of an equation.
The possible values are update or reported.
Update means the time, relative to the SDG system clock, at which the equation was last calculated, Reported specifies
the reported time of the most recent event that caused the equation's result to change. Reported time will be relative to the
remote slave device's system clock except on initialization where the SDG's system clock is used until the first event with
time is received. It is important to note that static data polling, or received events which do not specify a reported time,
may cause a specific data point's value to change without its event time being modified. Based on system polling rates
and other parameters this could result in discontinuous times being reported, especially in equations that have inputs from
multiple slave devices.
DEFAULT: update
InitialWindowMode
Specifies whether the SDG starts minimized normal, or maximized.
Possible values are 'minimized', 'maximized', or 'normal'.
DEFAULT: normal
InputPollPrd
Minimum amount of time between polling devices for input data.
Possible values are from 20 to 10000.
DEFAULT: 100 ms
MaxSOEQSize
The maximum number of items allowed in the SOE Queue. If this limit is exceeded oldest items are removed. A value of
0 will not limit the queue size.
Possible values are from 0 to 50000.
DEFAULT: 0 count
OPCAEClientServerStatusUpdateRate
The interval at which an SDG OPC AE client requests status information from it's server. If the client does not wish to
request status updates set this to 0.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 173

SCADA Data Gateway | Implementers Guide


Possible values are from 0 to 600000 (10 minutes).
DEFAULT: 10000 ms
OPCAETimeSource
Specifies the source of the time tag for OPC Alarm and Event data points.
The possible values are update or reported.
Update means the time, relative to the SDG system clock, at which the data point was last updated. Reported specifies the
reported time of the event that caused the data to change. Reported time will be relative to the remote slave device's
system clock except on initialization where the SDG's system clock is used until the first event with time is received. It is
important to note that static data polling, or received events which do not specify a reported time, may cause a specific
data point's value to change without an event being generated, hence the event time will not change.
DEFAULT: reported
OPCClientServerStatusUpdateRate
The interval at which an SDG OPC client requests status information from it's server. If the client does not wish to
request status updates set this to 0.
Possible values are from 0 to 600000 (10 minutes).
DEFAULT: 10000 ms
OPCServerMinimumUpdateRate
The minimum amount of time that an OPC client can request as the update rate. If the client requests a value less than
specified this value will be used.
Possible values are from 0 to 60000 (1 minute).
DEFAULT: 1000 ms
OPCServerReportMode
Specifies the reporting mode of the OPC Server for data points which are subscribed to by a client poll = use polled OPC
reporting report = use event based OPC reporting ().
Possible values are 'poll', or 'report'.
DEFAULT: report
OPCTimeSource
Specifies the source of the time tag for OPC data points.
The possible values are update or reported.
Update means the time, relative to the SDG system clock, at which the data point was last updated. Reported specifies the
reported time of the most recent event that caused the data to change. Reported time will be relative to the remote slave
device's system clock except on initialization where the SDG's system clock is used until the first event with time is
received. It is important to note that static data polling, or received events which do not specify a reported time, may
cause a specific data point's value to change without an event being generated, hence the event time will not change.
DEFAULT: update
OPCXmlDaServerName
Specifies the name used by a OPC XML DA client to connect to the SDG.
DEFAULT: SDG
OPCXmlDaServerPort
The TCP/IP port for the OPC XML DA server.
Possible values are from 0 to 65535.
DEFAULT: 8081 xmldaport
OpcServerReadyDelay
Delay OPC Data Access Server ready (running) state.
Possible values are from 100 to 60000 (1 minute).
DEFAULT: 1000 ms
SOEQCleanupRate
The rate at which acknowledged items are removed from the SOE Queue. When this number of items have been added to
the queue a cleanup is initiated. All acknowledged items will be removed from the queue at this rate.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 174

SCADA Data Gateway | Implementers Guide


Possible values are from 10 to 10000.
DEFAULT: 200 count
AcceptClockSync
If true and UseSystemTime is true then the Windows system clock will be adjusted by a time sync received from an
external master device. If false time syncs will not adjust the Windows system clock.When using a simulated clock this
setting has no effect and Clock syncs are always accepted and adjust the simulated clock.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
CSVFileFieldDelimiter
Specifies the delimiter that will be used to seperate fields in the CSV file.
DEFAULT: ","
GlobalCreateTagAutomatic
If TRUE, then tags (and storage space) will automatically be created upon reception of new data points within incoming
response messages from remote devices.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
OPCAEUseSimpleEvents
If TRUE, all OPC AE events are reported as simple events.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
PointMapFile
Specifies Point Data Mapping file.
DEFAULT: ""
ReadPointMapAtStartup
If TRUE, then the point mapping file will be read at startup .
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
RefreshOPCClientsAtStartup
If TRUE, then OPC clients will be refreshed at startup .
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
SaveUnmappedPoints
if TRUE, then unmapped tags will be saved to the point mapping file.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
UseSystemTime
If TRUE, always read the date and time from the Windows system clock as opposed to an internally maintained clock.
The internal clock is initialized to the Windows system clock at startup but will be adjusted whenever a clock
synchronization is received from an external master. You would generally set UseSystemTime to true if you have an
external clock synchronization mechanism that synchronizes the Windows system clock outside the SCADA Data
Gateway, in this case it is advised that AcceptClockSync be set to false.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
ModemPoolName
Defines a modem pool which contains modems for a channel.
DEFAULT: ""
INDICES: [modemPoolsIndex=0-63]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 175

SCADA Data Gateway | Implementers Guide


ModemPoolIndex
Specifies the index of the modem pool to use for a specific modem. The value of this parameter must be less than the
number of configured modem pools specified with ModemPool.
DEFAULT: 0
INDICES: [modemIndex=0-249]
ModemReadCmdTimeout
Specifies the timeout in seconds that the SDG waits for a modem to respond to a command.
DEFAULT: 5
INDICES: [modemIndex=0-249]
ModemWriteCmdTimeout
Specifies the timeout in seconds that the SDG waits to send a command to a modem.
DEFAULT: 5
INDICES: [modemIndex=0-249]
ModemComPort
Defines a modem com port.
DEFAULT: COM1
INDICES: [modemIndex=0-249]
ModemName
Defines a modem alias name.
DEFAULT: ""
INDICES: [modemIndex=0-249]
ModemBaud
Sets the baud rate for corresponding Modem.
DEFAULT: 9600
INDICES: [modemIndex=0-249]
ModemHangupString
Sets the hangup string for the Modem.
DEFAULT: ATH
INDICES: [modemIndex=0-249]
ModemInitString
Sets the initialization string for the Modem.
DEFAULT: ATE0F0Q1V1&C1&D2
INDICES: [modemIndex=0-249]
ModemParity
Sets the parity for corresponding Modem ModemChannel.
Possible values are 'none', 'even', or 'odd'.
DEFAULT: none
INDICES: [modemIndex=0-249]
ModemDataBits
Sets the number of data bits for corresponding Modem.
Possible values are '7', or '8'.
DEFAULT: 8
INDICES: [modemIndex=0-249]
ModemStopBits
Sets the number of stop bits for corresponding Modem.
Possible values are '1', or '2'.
DEFAULT: 1
INDICES: [modemIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 176

SCADA Data Gateway | Implementers Guide


ModemDialingMode
Sets the dialing mode of the Modem: 'pulse' - use pulse dialing. 'tone' - use tone dialing.
Possible values are 'tone', or 'pulse'.
DEFAULT: tone
INDICES: [modemIndex=0-249]
ModemRespTerminatorChar
Sets the character used to terminate a respone from the Modem: 'none' - don't use a character to terminate the response
(assumes no command responses). 'line feed' - use a 'line feed' character to terminate the response. 'carriage return' - use a
'carriage return' character to terminate the response.
Possible values are 'none', 'carriage return', or 'line feed'.
DEFAULT: none
INDICES: [modemIndex=0-249]
ModemSerialMode
Sets the serial mode of the Modem: 'hardware' - use hardware flow control ('none' and 'windows' do not work for
modems).
Possible values are or 'hardware'.
DEFAULT: hardware
INDICES: [modemIndex=0-249]
ModemEnable
If true, then the modem will be Enabled and Available for use.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [modemIndex=0-249]
ModemNoDialOut
If true, then the modem will be configured for receiving telephone calls only.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [modemIndex=0-249]
PhysComChannel
Sets the Communication Channel. Examples: "COM1" , "192.168.1.25" or "ROCKYHILLSUBSTATION" (for a
TCP/IP channel).
DEFAULT: ""
INDICES: [channelIndex=0-249]
PhysComType
Sets the type of communication channel for corresponding PhysComChannel. Possible values are 'serial', 'TCP', 'mbplus',
'modem', or 'UDP_TCP'.
DEFAULT: TCP
INDICES: [channelIndex=0-249]
PhysTxDly
Minimum amount of time after receiving characters before transmission of other characters. This parameter is only used
for master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [channelIndex=0-249]
PhysCharTimeout
Maximum time allowed between received characters. If the time between receiving one character in a message and
receiving the next character in that message exceeds this value, the message will be rejected. Setting this value to 0
disables this timeout. This parameter is only used for slave sessions using the IEC 60870-5-101 protocol profile.
DEFAULT: 0 ms
INDICES: [channelIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 177

SCADA Data Gateway | Implementers Guide


PhysComBaud
Sets the baud rate for corresponding serial PhysComChannel.
DEFAULT: 9600
INDICES: [channelIndex=0-249]
PhysFrameTimeout
The maximum time allowed to receive a single frame. If the time between receiving the first character in a frame and
receiving last character in that frame exceeds this value the frame will be rejected. Setting this value to 0 disables this
timeout. This parameter is only used for slave sessions using the IEC 60870-5-101 protocol profile.
DEFAULT: 0 ms
INDICES: [channelIndex=0-249]
PhysOfflinePollPeriod
The period at which the sessions on the channel are polled if they are offline. Note that this parameter only applies to
serial DNP and Modbus master sessions on this channel. A value of zero (0) will disable this feature.
DEFAULT: 0 ms
INDICES: [channelIndex=0-249]
PhysComParity
Sets the parity for corresponding serial PhysComChannel. Possible values are 'none', 'even', or 'odd'.
DEFAULT: none
INDICES: [channelIndex=0-249]
DNPChannelResponseTimeout
Maximum time to wait for response after request has been transmitted. This parameter only applies to master and slave
DNP sessions.
DEFAULT: 10000 ms
INDICES: [channelIndex=0-249]
PhysComDataBits
Sets the number of data bits for corresponding serial PhysComChannel.
Possible values are '7', or '8'.
DEFAULT: 8
INDICES: [channelIndex=0-249]
PhysComStopBits
Sets the number of stop bits for corresponding serial PhysComChannel.
Possible values are '1', or '2'.
DEFAULT: 1
INDICES: [channelIndex=0-249]
PhysComIpPort
Sets the TCP/IP port number to use if PhysComChannel specifies an IP address.
DEFAULT: 2404 port number
INDICES: [channelIndex=0-249]
PhysComModemAnswerTime
Sets the amount of time the modem waits for an answer after dialing (in seconds).
DEFAULT: 60 seconds
INDICES: [channelIndex=0-249]
PhysComModemIdleTime
Sets the amount of time the modem waits to hang up after the channel is idle (in seconds).
DEFAULT: 5 seconds
INDICES: [channelIndex=0-249]
PhysComModemRedialLimit

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 178

SCADA Data Gateway | Implementers Guide


Sets the number of times the modem will dial before concluding that communication has failed. If dialing has failed (i.e.
the limit is reached) the modem channel MDO ChannelRedialLimitControl will be TRUE, set this MDO
(ChannelRedialLimitControl) to false to start dialing again. A value of 0 will cause the modem to attempt dialing forever.
Note that setting this value to 0 will tie up the modem forever should a connection never be made.
DEFAULT: 3 count
INDICES: [channelIndex=0-249]
PhysComConnectDelay
Sets the connect delay to use for this PhysComChannel. Note that this parameter should be set to the lowest value that
works reliably. To avoid bogus errors set LinkOfflinePollDly to a value larger than this.
DEFAULT: 0 ms
INDICES: [channelIndex=0-249]
PhysComIpConnectTimeout
Sets the TCP/IP connect timeout to use if PhysComChannel specifies an IP address. For IEC 60870-5-104 this is the T0
parameter. Note that this parameter should be set to the lowest value that works reliably. In cases where a connection
can not be established the process will block for the period specified.
DEFAULT: 1000 ms
INDICES: [channelIndex=0-249]
PhysComIpMode
Sets the connection mode to use if PhysComChannel specifies an IP address.
Possible values are 'server', 'client', 'udp', or 'dualendpoint'.
DEFAULT: client
INDICES: [channelIndex=0-249]
PhysComSerialDtrMode
Sets the DTR mode of the serial Channel: (only applies if PhysComSerialMode is hardware) 'DISABLE' - Disables the
DTR line when the device is opened and leaves it disabled. 'ENABLE' - Enables the DTR line when the device is opened
and leaves it on. 'HANDSHAKE' - Enables DTR handshaking. If handshaking is enabled, it is an error for the application
to adjust the line by using the EscapeCommFunction function.
Possible values are 'DISABLE', 'ENABLE', or 'HANDSHAKE'.
DEFAULT: HANDSHAKE
INDICES: [channelIndex=0-249]
PhysComSerialMode
Sets the mode of the serial Channel: 'none' - use no flow control. 'hardware' - use hardware flow control. 'windows' - use
flow control and serial parameters (baud rate, parity, etc.) as specified with the MODE command.
Possible values are 'none', 'hardware', or 'windows'.
DEFAULT: none
INDICES: [channelIndex=0-249]
PhysComSerialRtsMode
Sets the RTS mode of the serial Channel: (only applies if PhysComSerialMode is hardware) 'DISABLE' - Disables the
RTS line when the device is opened and leaves it disabled. 'ENABLE' - Enables the RTS line when the device is opened
and leaves it on. 'HANDSHAKE' - Enables RTS handshaking. The driver raises the RTS line when the 'type-ahead'
(input) buffer is less than one-half full and lowers the RTS line when the buffer is more than three-quarters full. If
handshaking is enabled, it is an error for the application to adjust the line by using the EscapeCommFunction function.
'TOGGLE' - Specifies that the RTS line will be high if bytes are available for transmission. After all buffered bytes have
been sent, the RTS line will be low.
Possible values are 'DISABLE', 'ENABLE', 'HANDSHAKE', or 'TOGGLE'.
DEFAULT: HANDSHAKE
INDICES: [channelIndex=0-249]
PhysComProtocol
Sets the protocol for the channel Applies to all Physical channel types.
Possible values are 'S101', 'S104', 'M101', 'M103', 'M104', 'MDNP', 'SDNP', 'MMB', or 'SMB'.
DEFAULT: M101

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 179

SCADA Data Gateway | Implementers Guide


INDICES: [channelIndex=0-249]
PhysComChnlName
Alias name for communications channel, if not specified use the value of PhysComChannel.
DEFAULT: ""
INDICES: [channelIndex=0-249]
PhysComModemPool
The modem pool this channel uses .
DEFAULT: ""
INDICES: [channelIndex=0-249]
PhysComPhoneNumber
Telephone number to dial out on a modem .
DEFAULT: ""
INDICES: [channelIndex=0-249]
PhysComMBPRecieveTimeout
Sets the Modbus Plus Receive timeout to use if PhysComType specifies a Modbus Plus Channel.
DEFAULT: 2000 ms
INDICES: [channelIndex=0-249]
PhysComMBPSlavePath
Sets the Modbus Plus slave path to use if PhysComType specifies a Modbus Plus Channel. This parameter only applies
to modbus plus slaves.
DEFAULT: 1 address
INDICES: [channelIndex=0-249]
PhysComMBPCardNumber
Sets the Modbus Plus card number to use if PhysComType specifies a Modbus Plus Channel.
DEFAULT: 0 card number
INDICES: [channelIndex=0-249]
PhysComMBPRoutePath
Specifies the Modbus Plus Route Path to use if PhysComType specifies a Modbus Plus Channel. This parameter only
applies to modbus plus masters.
DEFAULT: 1.0.0.0.0
INDICES: [channelIndex=0-249]
PhysComMBPMode
Sets the connection mode to use if PhysComType specifies a Modbus Plus Channel.
Possible values are 'server', or 'client'.
DEFAULT: client
INDICES: [channelIndex=0-249]
PhysComDestUDPPort
On Master - if TCP and UDP is configured this specifies the destination UDP/IP port to send broadcast requests in UDP
datagrams to. If UDP ONLY is configured this specifies the destination UDP/IP port to send all requests in UDP
datagrams to. This must match the "localUDPPort" on the slave.
On Slave - if TCP and UDP this is not used. If UDP ONLY is configured this specifies the destination UDP/IP port to
send responses to. Can be WINTCP_UDP_PORT_SRC = 2 indicating use the src port from a UDP request received
from master.
DEFAULT: 20000 address
INDICES: [channelIndex=0-249]
PhysComDialOut

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 180

SCADA Data Gateway | Implementers Guide


If TRUE, then the modem will be configured for dialing and answering telephone calls. If false, then the modem will be
configured for only answering telephone calls.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [channelIndex=0-249]
PhysComDisconnectOnNewSyn
If TRUE, when a new connect indication comes in and this channel is already connected, it will be marked for
disconnect. This will allow a new connection to come in next time. This handles not receiving notification of disconnect
from the remote end, but remote end trying to reconnect. If you want to allow multiple simultaneous connections to
multiple channels from any IP address to a particular port number, this parameter should be set to FALSE.
For DNP this should be set to TMWDEFS_FALSE according to DNP3 Specification IP Networking Draft H. Keep alive
will detect that original connection has failed, which would then allow a new connection to be received.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [channelIndex=0-249]
PhysComDualEndPointIpPort
If Dual End Point is supported a listen will be done on the PhysComIpPort and a connection request will be sent to this
port number when needed. This should match ipPort on remote device. Normal state is listen, connection will be made
when there is data to send.
DEFAULT: 20000 address
INDICES: [channelIndex=0-249]
PhysComInitUnsolUDPPort
On master - Not used.
On Slave - if TCP and UDP not used. If UDP ONLY is configured this specifies the destination UDP/IP port to send the
initial Unsolicited Null response to. After receiving a UDP request from master, destUDPPort (which) may indicate use
src port) will be used for all responses. This must not be WINTCP_UDP_PORT_NONE(0),
WINTCP_UDP_PORT_ANY(1), or WINTCP_UDP_PORT_SRC(2) for a slave that supports UDP.
DEFAULT: 20000 address
INDICES: [channelIndex=0-249]
PhysComLocalUDPPort
Local port for sending and receiving UDP datagrams on.
If this is set to WINTCP_UDP_PORT_NONE = 0, UDP will not be enabled. For DNP networking UDP should be
supported. It is not needed for any of the current IEC or modbus protocols.
On Master - If this is set to WINTCP_UDP_PORT_ANY = 1, an unspecified available port will be used.
On Slave - This should be chosen to match the UDP port that the master uses to send Datagram messages to. This must
not be WINTCP_UDP_PORT_ANY = 1 or WINTCP_UDP_PORT_SRC = 2.
DEFAULT: 20000 address
INDICES: [channelIndex=0-249]
PhysComModbusRTU
If TRUE, then the channel will be configured for modbus RTU serial communications.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [channelIndex=0-249]
PhysComRole
NOTE: The following configuration parameters are required to support DNP3 Specification IP Networking. These are
not required for the IEC or Modbus protocols. Indicate master or outstation (slave) role in dnp networking as specified
by DNP3 Specification IP Networking Draft H.
Possible values are 'master', or 'outstation'.
DEFAULT: outstation
INDICES: [channelIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 181

SCADA Data Gateway | Implementers Guide


PhysComValidateUDPAddress
Whether or not to validate source address of received UDP datagram.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [channelIndex=0-249]
SessionName
Name of the session.
DEFAULT: ""
INDICES: [sessionIndex=0-249]
MMBSessionMaxCoilRead
Max number of coils to read in a transaction.
DEFAULT: 2000
INDICES: [sessionIndex=0-249]
MMBSessionMaxDiscreteInputRead
Max number of discrete inputs to read in a transaction.
DEFAULT: 2000
INDICES: [sessionIndex=0-249]
MMBSessionMaxHoldingRegisterRead
Max number of holding registers to read in a transaction.
DEFAULT: 125
INDICES: [sessionIndex=0-249]
MMBSessionMaxInputRegisterRead
Max number of input registers to read in a transaction.
DEFAULT: 125
INDICES: [sessionIndex=0-249]
SessionLinkAddress
Data link address of slave component or remote device. Each index identifies a unique session, which is a link layer
connection between a Master and a Slave device. Set to 0xffff (65535) for the session to be a "broadcast session.".
DEFAULT: 4
INDICES: [sessionIndex=0-249]
SessionLocalAddress
Data link address of the local device. This parameter is only used for master or slave sessions using the DNP3 protocol.
DEFAULT: 3
INDICES: [channelIndex=0-249]
SDNPunsolClassMask
Specify the initial/new state of the unsolicited event mask. This mask is used to determine which event class(es) will
generate unsolicited responses. According to the DNP specification, unsolicited responses should be disabled until an
'Enable Unsolicited Response' request is received from the master. Hence this value should generally be
TMWDEFS_CLASS_MASK_NONE, but some masters do not generate the 'Enable Unsolicited Response' message, in
which case they must be enabled here. This parameter is only used for slave sessions using the DNP3 protocol.
Possible values are:
0x0 = class none
0x1 = class 1
0x2 = class 2
0x4 = class 3
DEFAULT: 0x0
INDICES: [sessionIndex=0-249]
SDNPunsolMaxRetries

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 182

SCADA Data Gateway | Implementers Guide


Specify the maximum number of unsolicited retries before changing to the 'offline' retry period described below. This
parameter allows you to specify up to 65535 retries. If you want an infinite number of retries set
SDNPunsolOfflineRetryDelay to the same value as SDNPunsolRetryDelay in which case this parameter becomes a don't
care. This parameter is only used for slave sessions using the DNP3 protocol.
DEFAULT: 3
INDICES: [sessionIndex=0-249]
DNPEnableSecureAuthentication
Enables DNP Secure Authentication for this session . Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249]
MDNPpassOnlineStatusToSlave
Determines whether online status changes will be passed to a slave device as an event. This parameter is only used for
master sessions using the DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
SDNPunsolAllowed
Determines whether unsolicited responses are allowed. If SDNPunsolAllowed is set to FALSE no unsolicited responses
will be generated and requests to enable or disable unsolicited responses will fail. This parameter is only used for slave
sessions using the DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
SDNPunsolRetryDelay
Specifies the time, in milliseconds, to delay after an unsolicited confirm timeout before retrying the unsolicited response.
This parameter is only used for slave sessions using the DNP3 protocol.
DEFAULT: 5000 ms
INDICES: [sessionIndex=0-249]
AnalogDeadBandDefault
If this parameter is specified for a master device, the value of an analog point read by the master will have to change by
more than this amount to be transferred to a mapped slave point (i.e. causing an event). A value of 0 will disable dead
band testing.
DEFAULT: 0 value
INDICES: [sessionIndex=0-249]
SDNPunsolOfflineRetryDelay
Specifies the time, in milliseconds, to delay after an unsolicited timeout before retrying the unsolicited response after
SDNPunsolMaxRetries have been attempted. To disable retries after SDNPunsolMaxRetries set this value to the
maximum value for a TMW timer which is 31 days. This will limit retries to one every 31 days which is effectively
disabled. This parameter is only used for slave sessions using the DNP3 protocol.
DEFAULT: 30000 ms
INDICES: [sessionIndex=0-249]
MDNPreadTimeoutsAllowed
Specifies the number of timeouts that will cause a session to placed offline .
DEFAULT: 0
INDICES: [sessionIndex=0-249]
SessionCommIndex
Specifies the index of the communications channel to use for a specific session. The value of this parameter must be less
than the number of configured communication channels specified with PhysComChannel.
DEFAULT: 0
INDICES: [sessionIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 183

SCADA Data Gateway | Implementers Guide


DNPAuthHMACAlgorithm
HMAC algorithm to be used in challenges. Possible values are 'SHA1_4OCTET', 'SHA1_10OCTET',
'SHA256_8OCTET', or 'SHA256_16OCTET'.
DEFAULT: SHA1_10OCTET
INDICES: [sessionIndex=0-249]
DNPAuthReplyTimeout
How long to wait for any authentication reply.
DEFAULT: 2000 ms
INDICES: [sessionIndex=0-249]
DNPAuthKeyChangeInterval
For Master: Session key interval. When time since last key change reaches this value, session keys will be updated. For
systems that communicate infrequently, this may be set to zero, using only the maxKeyChangeCount to determine when
to update keys.
For Slave: Expected session key interval and count. When this amount of time elapses or this quantity of Authentication
messages are sent or received, the session keys for this user will be invalidated. Interval and count should be 2 times the
master key change interval and count. For systems that communicate infrequently, DNPAuthKeyChangeInterval may be
set to zero, using only the DNPAuthMaxKeyChangeCount to determine when keys should be considered old and should
be invalidated.
DEFAULT: 900000 ms (15 minutes)
INDICES: [sessionIndex=0-249]
DNPAuthMaxKeyChangeCount
Session Authentication ASDU count since last key change, When this number of authentication ASDUs is transmitted or
recieved since the last key change, session keys will be updated.
DEFAULT: 1000 count
INDICES: [sessionIndex=0-249]
DNPAuthAggressiveModeSupport
Enable Agressive mode. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
DNPAuthExtraDiags
Output extra diagnostics to protocol analyzer.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249]
DNPAuthMaxErrorCount
Number of error messages to be sent before disabling error message transmission.
DEFAULT: 2 count
INDICES: [sessionIndex=0-249]
DNPAuthUserKey
User Key (must be 16, 24, or 32 hex values). For each key there must be unique user number DNPAuthUserNumber.
DEFAULT: 49C87D5D90217AAFEC8074EB7152FDB5
INDICES: [sessionIndex=0-249][user=0-9]
DNPAuthUserNumber
User Number: Configuration for each user specification says default user number is 1, configure it as first user in array.
Add any other user numbers. For each user number in the ini file there must be a DNPAuthUserKey.
DEFAULT: 0
INDICES: [sessionIndex=0-249][user=0-9]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 184

SCADA Data Gateway | Implementers Guide


LinkOfflinePollDly
Minimum amount of time between polls of sessions that are offline. An unbalanced master will periodically issue a link
status, or reset, request to a session that is currently offline. If the remote device is still offline the master has to wait for a
confirm timeout before it can issue a request to a different session on that channel. This can result in significant delays if
there are several sessions on a single channel. Setting this value as high as is tolerable by the system (how long are you
willing to wait before detecting that a remote device has come online) minimizes this impact.
DEFAULT: 10000 ms
INDICES: [sessionIndex=0-249]
LinkMode
Data link transmission mode. Required for each communications channel.
Possible values are 'balanced', or 'unbalanced'.
DEFAULT: unbalanced
INDICES: [sessionIndex=0-249]
DNPRxFragmentSize
The maximum size, in bytes, of an application layer receive fragment.
DEFAULT: 2048 bytes
INDICES: [sessionIndex=0-249]
DNPTcpLinkStatusPeriod
How often to send link status requests if no DNP3 frames have been received on this session. In DNP3 IP Networking
spec this is called keep-alive interval. If DNP is running on TCP and this parameter is 0 it will be set to 5 minutes. If
DNP is running on a serial link this may be usefull to keep a TCP to serial converter alive.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
DNPTxFragmentSize
The maximum size, in bytes, of an application layer transmit fragment.
DEFAULT: 2048 bytes
INDICES: [sessionIndex=0-249]
LinkMaxRetries
Maximum number of attempts to re-transmit data link-layer frames that were not confirmed. This parameter does not
apply for link layer connections (sessions) when the GATEWAY is acting as an unbalanced slave.
DEFAULT: 2 count
INDICES: [sessionIndex=0-249]
LinkCnfmTimeout
Maximum time to wait for confirmation of frame. For an IEC 60870-5-104 session this is the T1 parameter. This
parameter does not apply for link layer connections (sessions) when the GATEWAY is acting as an unbalanced slave.
DEFAULT: 15000 ms
INDICES: [sessionIndex=0-249]
LinkKtransmittedUnAckFrames
Maximum number of unacknowledged transmit frames.
DEFAULT: 12 count
INDICES: [sessionIndex=0-249]
LinkSendAckDelay
Maximum time to wait to send an Acknowledge frame. For an IEC 60870-5-104 session this is parameter t2 of the IEC
60870-5-104 Clause 5.1. (The maximum amount of time after receiving the last I-FORMAT APDU before transmitting
an S-FORMAT APDU.) This parameter does not apply for link layer connections (sessions) when the GATEWAY is
acting as an unbalanced slave.
DEFAULT: 10000 ms
INDICES: [sessionIndex=0-249]
LinkTestFrameInterval

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 185

SCADA Data Gateway | Implementers Guide


Time for the Test Frame interval. For an IEC 60870-5-104 session this is the T3 parameter. It is recommended that T3 is
greater than T1. This parameter does not apply for link layer connections (sessions) when the GATEWAY is acting as an
unbalanced slave.
DEFAULT: 20000 ms
INDICES: [sessionIndex=0-249]
LinkWrecievedUnAckFrames
Maximum number of unacknowledged receive frames.
DEFAULT: 8 count
INDICES: [sessionIndex=0-249]
LinkConfirmMode
Request the remote device to send a data link layer confirm of the last frame sent. Note that this setting is independent of
whether the remote device will require this device to send a data link confirm to frames it receives. This parameter is only
used for master or slave sessions using the DNP3 protocol.
Possible values are 'never', 'sometimes', or 'always'.
DEFAULT: never
INDICES: [sessionIndex=0-249]
LinkSizeAddress
Number of octets (bytes) in link Address field. Note that a value of 0 is only valid for sessions whose link mode is
balanced. This parameter is only used for IEC60870-5-101 master and slave sessions.
Possible values are from 0 to 2.
DEFAULT: 1 octets (bytes)
INDICES: [channelIndex=0-249]
LinkClass1PendingDly
For an unbalanced master communication link, the minimum delay in milliseconds after sending request for class 1 data
when an application layer response is pending for this session. This parameter may be used to limit the bandwidth on a
shared media like Ethernet or to prevent taxing the target device with unnecessary communication overhead. This
parameter only applies to IEC 60870-5-101 and IEC 60870-5-103 Master sessions.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
LinkClass1PollCnt
For an unbalanced master communication link, the total number of consecutive class 1 request frames that may be sent to
one device before moving on to the next device on a multi-drop network (class 2 is always limited to one request frame
unless an application layer response is pending). This parameter has no effect if only one device is configured for a
communication channel. In a multi-drop network topology, this parameter is used to balance polling between all devices
and prevent one device from capturing all of the polling messages. This parameter only applies to IEC 60870-5-101 and
IEC 60870-5-103 Master sessions.
DEFAULT: 20
INDICES: [sessionIndex=0-249]
LinkClass1PollDly
For an unbalanced master communication link, the minimum delay in milliseconds after sending request for class 1 data
when an application layer response is not pending for this session. This parameter may be used to limit the bandwidth on
a shared media like Ethernet or to prevent taxing the target device with unnecessary communication overhead. This
parameter only applies to IEC 60870-5-101 and IEC 60870-5-103 Master sessions.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
LinkClass2PendingDly
For an unbalanced master communication link, the minimum delay in milliseconds after sending request for class 2 data
when an application layer response is pending for this session. This parameter may be used to limit the bandwidth on a
shared media like Ethernet or to prevent taxing the target device with unnecessary communication overhead. This
parameter only applies to IEC 60870-5-101 and IEC 60870-5-103 Master sessions.
DEFAULT: 0 ms

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 186

SCADA Data Gateway | Implementers Guide


INDICES: [sessionIndex=0-249]
LinkClass2PollDly
For an unbalanced master communication link, the minimum delay in milliseconds after sending request for class 2 data
when an application layer response is not pending for this session. This parameter may be used to limit the bandwidth on
a shared media like ethernet or to prevent taxing the target device with unnecessary communication overhead. This
parameter only applies to IEC 60870-5-101 and IEC 60870-5-103 Master sessions.
DEFAULT: 500 ms
INDICES: [sessionIndex=0-249]
LinkClassPendingCnt
For an unbalanced master communication link, the total number of consecutive class 1 and class 2 request frames that
may be sent to one device when an application layer response message is pending from this device before moving on to
the next device on a multidrop network. This parameter has no effect if only one device is configured for a
communication channel. If this parameter is set to zero, the device is still polled as described for parameter
M870CNFG_LINK_CLASS1_POLL_CNT.This parameter only applies to IEC 60870-5-101 and IEC 60870-5-103
Master sessions.
DEFAULT: 100
INDICES: [sessionIndex=0-249]
I61850ClientName
Optional Name for the SDG OPC Server to connect to, It is strongly recommended that this parameter be defined as an
external OPC client may not be able to browse for tags in SDG OPC server if the OPC server name contains one or more
period ('.') characters. To work around this issue, define this alias name (with no periods for the external IEC 61850
server, and reference the server by its alias.
DEFAULT: ""
INDICES: [I61850Index=0-249]
I61850GooseAdapterName
Goose adapter name selected.
DEFAULT: ""
INDICES: [I61850Index=0-249]
I61850GooseAdapterDescription
Goose adapter descriptionselected.
DEFAULT: ""
INDICES: [I61850Index=0-249]
I61850ClientConnectTimeout
Specifies the connect timeout for the IEC 61850 Client. After starting a connection attempt this is how long to wait for
success. The length of this parameter will depend on your network topology.
DEFAULT: 10000 msecs
INDICES: [I61850Index=0-249]
I61850ClientDoValidate
Should we validate the configuration against a live server.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [I61850Index=0-249]
I61850ServerIPAddress
Specifies the IP address of the IEC 61850 Server to connect to.
DEFAULT: 127.0.0.1
INDICES: [I61850Index=0-249]
I61850ServerMACAddress
Specifies the MAC address of the IEC 61850 Server to connect to.
DEFAULT: 000000000000

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 187

SCADA Data Gateway | Implementers Guide


INDICES: [I61850Index=0-249]
I61850ServerAppID
Specifies the App ID of the IEC 61850 Server to connect to.
DEFAULT: "3,41,999,1"
INDICES: [I61850Index=0-249]
I61850ServerAEQualifier
Specifies the AE Qualifier for the IEC 61850 Server.
DEFAULT: 12 unit
INDICES: [I61850Index=0-249]
I61850ServerPresentationAddress
Specifies the Presentation Address of the IEC 61850 Server to connect to.
DEFAULT: 0.1
INDICES: [I61850Index=0-249]
I61850ServerSessionAddress
Specifies the Session Address of the IEC 61850 Server to connect to.
DEFAULT: 0.1
INDICES: [I61850Index=0-249]
I61850ServerTransportAddress
Specifies the Transport Address of the IEC 61850 Server to connect to.
DEFAULT: 0.1
INDICES: [I61850Index=0-249]
I61850ClientIPAddress
Specifies the IP address of this IEC 61850 Client. This can be useful to select a different network adapter.
DEFAULT: 0.0.0.0
INDICES: [I61850Index=0-249]
I61850ServerIPPort
Sets the TCP/IP port number to use.
DEFAULT: 102 port number
INDICES: [I61850Index=0-249]
I61850ClientMACAddress
Specifies the MAC address of this IEC 61850 Client.
DEFAULT: 000000000000
INDICES: [I61850Index=0-249]
I61850ClientAppID
Specifies the App ID of this IEC 61850 Client.
DEFAULT: "3,41,999,1"
INDICES: [I61850Index=0-249]
I61850ClientAEQualifier
Specifies the AE Qualifier for this IEC 61850 Client.
DEFAULT: 12 unit
INDICES: [I61850Index=0-249]
I61850ClientPresentationAddress
Specifies the Presentation Address of this IEC 61850 Client.
DEFAULT: 0.1
INDICES: [I61850Index=0-249]
I61850ClientSessionAddress

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 188

SCADA Data Gateway | Implementers Guide


Specifies the Session Address of this IEC 61850 Client.
DEFAULT: 0.1
INDICES: [I61850Index=0-249]
I61850ClientTransportAddress
Specifies the Transport Address of this IEC 61850 Client.
DEFAULT: 0.1
INDICES: [I61850Index=0-249]
I61850AuthEnabled
Should IEC 61850 authorization be enabled.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [I61850Index=0-249]
I61850AuthMechanism
IEC 61850 Authorization mechanism.
DEFAULT: 0
INDICES: [I61850Index=0-249]
I61850AuthPassword
IEC 61850 Authorization password.
DEFAULT: ""
INDICES: [I61850Index=0-249]
I61850SCLFileName
Optional File Name to load model from .
DEFAULT: ""
INDICES: [I61850Index=0-249]
I61850LoadModelFromFileEnabled
Should IEC 61850 client load model from file in I61850SCLFileName[].
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [I61850Index=0-249]
I61850ClientReconnectTime
Specifies the reconnect timeout for the IEC 61850 Client (0 = no reconnect).
DEFAULT: 5000 msecs
INDICES: [opcIndex=0-19]
I61850ClientReconnectRetryCount
Specifies the reconnect re-try count for the IEC 61850 Client (0 = attempt reconnects for ever)A successful connection
will cause the internal limit counter to be re-set to 0resulting in continued connection attempts to the OPC server.
DEFAULT: 0 count
INDICES: [opcIndex=0-19]
I61850GOOSEControlBlockName
Specifies the name of a goose control block on an IEC 61850 server.
DEFAULT: ""
INDICES: [I61850Index=0-249][gooseIndex=0-24]
I61850ReportControlBlockName
Specifies the name of a report control block on an IEC 61850 server.
DEFAULT: ""
INDICES: [I61850Index=0-249][reportIndex=0-24]
I61850PolledDataSetName

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 189

SCADA Data Gateway | Implementers Guide


Specifies the name of the polled data set.
DEFAULT: ""
INDICES: [I61850Index=0-249][polledDataSetIndex=0-49]
I61850PolledDataSetPeriod
Specifies the period to read the polled data set.
DEFAULT: 5000 msecs
INDICES: [I61850Index=0-249][polledDataSetIndex=0-49]
OPCserverNode
Specifies the Node name of the OPC Server to connect to.
DEFAULT: ""
INDICES: [opcIndex=0-19]
OPCserverProgID
Specifies the PROG ID of the OPC Server to connect to.
DEFAULT: ""
INDICES: [opcIndex=0-19]
OPCserverName
Optional Name for the OPC Server to connect to, if not specified use the value of OPCserverProgID. It is strongly
recommended that this parameter be defined as an external OPC client may not be able to browse for tags in SDG OPC
server if the OPC server name contains one or more period ('.') characters. To work around this issue, define this alias
name (with no periods for the external OPC server, and reference the server by its alias.
DEFAULT: ""
INDICES: [opcIndex=0-19]
OPCserverReconnectTime
Specifies the reconnect timeout for the OPC Server (0 = no reconnect).
DEFAULT: 0 msecs
INDICES: [opcIndex=0-19]
OPCserverReadPropertiesTime
Specifies the period at which properties are read (0 = don't read).
DEFAULT: 0 msecs
INDICES: [opcIndex=0-19]
OPCserverReconnectRetryCount
Specifies the reconnect re-try count for the External OPC Server (0 = attempt reconnects for ever)Setting the client
refresh MDO will cause the internal limit counter to be re-set to 0resulting in continued connection attempts to the OPC
server.
DEFAULT: 0 count
INDICES: [opcIndex=0-19]
OPCserverUpdateRate
Specifies the update rate for the OPC Server.
DEFAULT: 1000 msecs
INDICES: [opcIndex=0-19]
OPCClientFlatMode
Display OPC Client items flat in configuration window.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [opcIndex=0-19]
OPCAEserverNode
Specifies the Node name of the OPC AE Server to connect to.
DEFAULT: ""

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 190

SCADA Data Gateway | Implementers Guide


INDICES: [opcAEIndex=0-19]
OPCAEserverProgID
Specifies the PROG ID of the OPC AE Server to connect to.
DEFAULT: ""
INDICES: [opcAEIndex=0-19]
OPCAEserverName
Optional Name for the OPC AE Server to connect to, if not specified use the value of OPCAEserverProgID. It is strongly
recommended that this parameter be defined as an external OPC AE client may not be able to browse for tags in SDG
OPC AE server if the OPC AE server name contains one or more period ('.') characters. To work around this issue, define
this alias name (with no periods for the external OPC AE server, and reference the server by its alias.
DEFAULT: ""
INDICES: [opcAEIndex=0-19]
OPCAEserverReconnectTime
Specifies the reconnect timeout for the OPC AE Server (0 = no reconnect).
DEFAULT: 0 msecs
INDICES: [opcAEIndex=0-19]
OPCAEserverReconnectRetryCount
Specifies the reconnect re-try count for the External OPC AE Server (0 = attempt reconnects for ever)Setting the client
refresh MDO will cause the internal limit counter to be re-set to 0resulting in continued connection attempts to the OPC
AE server.
DEFAULT: 0 count
INDICES: [opcAEIndex=0-19]
OPCAEserverMaxSize
This parameter is the maximum number of events that may be specified in a call. The value 0 means no restriction for the
number of events. Please note that if the value MaxSize is greater than 0, then events can be sent faster from the server
than through the BufferTime parameter. Specifies the max size for the OPC AE Server subscription.
DEFAULT: 0 size
INDICES: [opcAEIndex=0-19]
OPCAEserverBufferTime
The buffer time, specified in milliseconds, indicates the number of times the event notifications may be sent to the
subscription object. This parameter is the minimum time spread between two successive event notifications. The value 0
means that all event notifications shall be sent immediately from the server. If the parameter MaxSize is greater than 0, it
instructs the server to send event notifications quicker in order to keep the buffer size within MaxSizeSpecifies the buffer
time for the OPC AE Server subscription.
DEFAULT: 0 msecs
INDICES: [opcAEIndex=0-19]
OPCAESyncConnect
Start and Connect OPC AE Client Synchronously.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [opcAEIndex=0-19]
DbasSectorAddress
ASDU address of each sector.
DEFAULT: 3
INDICES: [sessionIndex=0-249][sector=0-63]
ASDUoriginatorAddr
Originator address (for 2-octet COT). This parameter is only used for master and slave sessions using the IEC 60870-5101 or IEC 60870-5-104 protocol profiles.
Possible values are from 0 to 255.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 191

SCADA Data Gateway | Implementers Guide


DEFAULT: 1
INDICES: [sessionIndex=0-249]
ASDUsizeCmnAddr
Number of octets (bytes) in Common Address of ASDU (sector address) field. This parameter is only used for master
and slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 1 or 2.
DEFAULT: 2 octets (bytes)
INDICES: [sessionIndex=0-249]
ASDUsizeCot
Number of octets (bytes) in Cause Of Transmission (COT) field of ASDU. This parameter is only used for master and
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles. Possible values are 1 or 2.
DEFAULT: 1 octets (bytes)
INDICES: [sessionIndex=0-249]
ASDUsizeIOA
Number of octets (bytes) in Information Object Address (point number) field. This parameter is only used for master and
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are from 1 to 3.
DEFAULT: 2 octets (bytes)
INDICES: [sessionIndex=0-249]
S101maxASDUSize
Maximum number of octets (bytes) in an ASDU. This parameter is only used for IEC60870-5-101 slave sessions.
Possible values are from 0 to 252.
DEFAULT: 252 octets (bytes)
INDICES: [sessionIndex=0-249]
S104maxASDUSize
Maximum number of octets (bytes) in an ASDU. This parameter is only used for IEC60870-5-104 slave sessions.
Possible values are from 0 to 249.
DEFAULT: 249 octets (bytes)
INDICES: [sessionIndex=0-249]
ApplDNPAbsRespTimeout
Default DNP application response timeout. This value is the maximum amount of time (in milliseconds) that will be
allowed before a command is cancelled due to timeout. This time starts when the request is submitted and ends when the
final application level response is received. This value can generally be overridden for specific data points by the 'TO'
option in the point mapping file.
DEFAULT: 30000 ms
INDICES: [sessionIndex=0-249]
ApplIECAbsRespTimeout
Default IEC application response timeout. This value is the maximum amount of time (in milliseconds) that will be
allowed before a command is cancelled due to timeout. This time starts when the request is submitted and ends when the
final application level response is received. This value can generally be overridden for specific data points by the 'TO'
option in the point mapping file.
DEFAULT: 60000 ms (1 minute)
INDICES: [sessionIndex=0-249]
ApplIncrRespTimeout
Maximum amount of time to allow between messages from a remote device when a request is pending to that device. The
message need not be a direct response to the pending request. If no message is received from the remote device within
this period it is assumed the device has terminated processing of the request and the request is cancelled due to an
application level timeout. This timer is restarted every time a message is received from the remote device.
DEFAULT: 10000 ms
INDICES: [sessionIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 192

SCADA Data Gateway | Implementers Guide


ApplMBAbsRespTimeout
Default Modbus application response timeout. This value is the maximum amount of time (in milliseconds) that will be
allowed before a command is cancelled due to timeout. This time starts when the request is submitted and ends when the
final application level response is received. This value can generally be overridden for specific data points by the 'TO'
option in the point mapping file.
DEFAULT: 2000 ms
INDICES: [sessionIndex=0-249]
ApplAutoReqMode
Each bit enables (1) or disables (0) an automatic request. This parameter is only used for master or slave sessions using
the DNP3 protocol.
Possible values are:
0x001 = clear restart upon RESTART IIN
0x002 = integrity poll upon RESTART IIN
0x004 = integrity poll upon LOCAL IIN on-then-off
0x008 = integrity poll upon timeout of previous request
0x010 = integrity poll upon BUFFER OVERFLOW IIN
0x020 = use delay measurement within time sychronization
0x040 = perform time sychronization upon NEED TIME IIN
0x080 = request class 1, 2, or 3 data upon CLASS 1, 2, or 3 IINs
0x100 = automatically enable unsolicited events upon remote or master device startup
0x200 = disable unsolicited messages upon RESTART IIN
0x400 = Enable/Disable automatic generation of application layer confirmations
DEFAULT: 0x6d7
INDICES: [sessionIndex=0-249]
M103ApplBlokngActionMask
Each bit enables(1) or disables(0) an automatic request to be sent as a result of a slave device leaving blocking mode.
This parameter is only used for IEC60870-5-103 master sessions.
Possible values are:
0x2 = request a general interrogation
0x1 = request a clock synchronization
0x4 = request a generic services general interrogation
DEFAULT: 0x0
INDICES: [sessionIndex=0-249][sector=0-63]
M103ApplEoiActionMask
Each bit enables(1) or disables(0) an automatic request to be sent as a result of receiving an initialization message from a
slave device. This parameter is only used for IEC60870-5-103 master sessions.
Possible values are:
0x2 = request a general interrogation
0x1 = request a clock synchronization
0x4 = request a generic services general interrogation
DEFAULT: 0x7
INDICES: [sessionIndex=0-249][sector=0-63]
M103ApplOnlineActionMask
Each bit enables(1) or disables(0) an automatic request to be sent as a result of a slave device coming online. This
parameter is only used for IEC60870-5-103 master sessions.
Possible values are:
0x2 = request a general interrogation
0x1 = request a clock synchronization
0x4 = request a generic services general interrogation
DEFAULT: 0x0
INDICES: [sessionIndex=0-249][sector=0-63]
M14ApplEoiActionMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 193

SCADA Data Gateway | Implementers Guide


Each bit enables (1) or disables(0) an automatic request to be sent as a result of receiving an initialization message from a
slave device. This parameter is only used for IEC60870-5 101,104 master sessions.
Possible values are:
0x1 = request a general interrogation
0x2 = request a clock synchronization
0x4 = request a counter interrogation
DEFAULT: 0x7
INDICES: [sessionIndex=0-249][sector=0-63]
M14ApplOnlineActionMask
Each bit enables(1) or disables(0) an automatic request to be sent as a result of a slave device coming online. This
parameter is only used for IEC60870-5 101,104 master sessions.
Possible values are:
0x1 = request a general interrogation
0x2 = request a clock synchronization
0x4 = request a counter interrogation
DEFAULT: 0x0
INDICES: [sessionIndex=0-249][sector=0-63]
ApplM101TimeTagCommands
If true requests to this sector will include timetags, if false request will not include timetags. The default value for this
parameter should be false for IEC 60870-5-101 sessions. This parameter is only used for IEC 60870-5-101 Master
sessions. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249][sector=0-63]
ApplM104TimeTagCommands
If true requests to this sector will include timetags, if false request will not include timetags. The default value for this
parameter should be true for IEC 60870-5-104 sessions. This parameter is only used for IEC 60870-5-104 Master
sessions. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
ApplClockSyncMode
Specifies which operations, if any, should be performed before a clock synchronization command. The options are none
(perform clock sync only), load (load delay followed by clock sync), or delay (delay acq followed by load delay followed
by a clock sync. This parameter is only used for master sessions using the IEC 60870-5 protocol profile.
Possible values are 'none', 'load', or 'delay'.
DEFAULT: none
INDICES: [sessionIndex=0-249]
ApplPropDelay
Propagation delay to compensate write time request. This can be set to a "hard" value here, or can be dynamically
measured each time the remote device restarts, or even with each time synchronization by setting appropriate bits in
ApplAutoModeMask. This parameter is only used for master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
ApplArmSelectTime
The maximum amount of time after a select command in which an operate command must be received. This parameter is
only used for slave sessions using the DNP3 protocol.
DEFAULT: 10000 ms
INDICES: [sessionIndex=0-249]
SDNPApplCnfmTimeout
Timeout, in ms, waiting for remote device to confirm previous response, if requested. If application layer confirmations
are used with data link confirmations, ensure the application layer confirm timeout is set long enough for all data link
retries to complete. This parameter is only used for slave sessions using the DNP3 protocol.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 194

SCADA Data Gateway | Implementers Guide


DEFAULT: 10000 ms
INDICES: [sessionIndex=0-249]
SDNPrespondNeedTime
Enables or disables the setting of the need time IIN in responses to selected DNP masters. If the need time IIN is set, the
master will issue a time synchronization command to this device. By default, the need time IIN is sent to all DNP
masters. It is normally desirable for a single master to be responsible for time synchronization. Also see the
ClockNeedTimeDly initialization parameter. This parameter is only used for slave sessions using the DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
ApplCyclicPrd
Time between cyclic data transmissions. This parameter is only used for slave sessions using the IEC 60870-5-101 or
IEC 60870-5-104 protocol profiles.
DEFAULT: 60000 ms (1 minute)
INDICES: [sessionIndex=0-249][sector=0-63]
ApplSelectTimeout
Maximum time between select and execute commands. This parameter is only used for master and slave sessions using
the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 10000 ms
INDICES: [sessionIndex=0-249][sector=0-63]
ApplUse_C_SE_Actterm
If TRUE, then IEC 60870-5 device issue/expect an ACTTERM when set point commands are complete. This is similar
to OptUseCmdActterm; this parameter is used for set point commands, that parameter is used for all other commands.
This applies to M101 , M104 , S101 and S104.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
M14COT11NewBehavior
This parameter controls whether COT 11 data is passed on through the the SDG from a master 14 component to a
mapped slave component for a binary point. This parameter is only used for master sessions using the IEC 60870-5-101
or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249][sector=0-63]
DNPActionMask0
Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd.
DNP Action mask Definitions: See section on 'Predefined Tag Names for Monitoring and Control' in the Manual. This
parameter is only used for master sessions using the DNP3 protocol.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = READ CLASS 1 CHANGE EVENTS
0x0000002 = READ CLASS 2 CHANGE EVENTS
0x0000004 = READ CLASS 3 CHANGE EVENTS
0x0000008 = BINARY INPUT CHANGE EVENTS
0x0000010 = ANALOG INPUT CHANGE EVENTS
0x0000020 = RUNNING COUNTER CHG EVENTS
0x0000040 = FROZEN COUNTER CHG EVENTS
0x0000400 = READ CLASS 0 STATIC DATA
0x0000800 = SPECIFIC REQUEST
0x0001000 = READ BINARY INPUTS
0x0002000 = READ ANALOG INPUTS
0x0004000 = READ COUNTERS

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 195

SCADA Data Gateway | Implementers Guide


0x0008000 = READ FROZEN COUNTERS
0x0010000 = READ BINARY OUTPUT STATUS
0x0020000 = READ ANALOG OUTPUT STATUS
0x0040000 = READ DATASET VALUES
0x0080000 = WRITE DATASET VALUES
0x0200000 = CLOCK SYNC
0x0400000 = FREEZE COUNTERS
0x0800000 = FREEZE AND CLEAR COUNTERS
0x1000000 = READ STRINGS
DEFAULT: 0x0000007
INDICES: [sessionIndex=0-249]
DNPActionMask1
Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd.
DNP Action mask Definitions: See section on 'Predefined Tag Names for Monitoring and Control' in the Manual. This
parameter is only used for master sessions using the DNP3 protocol.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = READ CLASS 1 CHANGE EVENTS
0x0000002 = READ CLASS 2 CHANGE EVENTS
0x0000004 = READ CLASS 3 CHANGE EVENTS
0x0000008 = BINARY INPUT CHANGE EVENTS
0x0000010 = ANALOG INPUT CHANGE EVENTS
0x0000020 = RUNNING COUNTER CHG EVENTS
0x0000040 = FROZEN COUNTER CHG EVENTS
0x0000400 = READ CLASS 0 STATIC DATA
0x0000800 = SPECIFIC REQUEST
0x0001000 = READ BINARY INPUTS
0x0002000 = READ ANALOG INPUTS
0x0004000 = READ COUNTERS
0x0008000 = READ FROZEN COUNTERS
0x0010000 = READ BINARY OUTPUT STATUS
0x0020000 = READ ANALOG OUTPUT STATUS
0x0040000 = READ DATASET VALUES
0x0080000 = WRITE DATASET VALUES
0x0200000 = CLOCK SYNC
0x0400000 = FREEZE COUNTERS
0x0800000 = FREEZE AND CLEAR COUNTERS
0x1000000 = READ STRINGS
DEFAULT: 0x0000407
INDICES: [sessionIndex=0-249]
DNPActionMask2
Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd.
DNP Action mask Definitions: See section on 'Predefined Tag Names for Monitoring and Control' in the Manual. This
parameter is only used for master sessions using the DNP3 protocol.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = READ CLASS 1 CHANGE EVENTS
0x0000002 = READ CLASS 2 CHANGE EVENTS
0x0000004 = READ CLASS 3 CHANGE EVENTS
0x0000008 = BINARY INPUT CHANGE EVENTS
0x0000010 = ANALOG INPUT CHANGE EVENTS
0x0000020 = RUNNING COUNTER CHG EVENTS
0x0000040 = FROZEN COUNTER CHG EVENTS
0x0000400 = READ CLASS 0 STATIC DATA
0x0000800 = SPECIFIC REQUEST
0x0001000 = READ BINARY INPUTS

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 196

SCADA Data Gateway | Implementers Guide


0x0002000 = READ ANALOG INPUTS
0x0004000 = READ COUNTERS
0x0008000 = READ FROZEN COUNTERS
0x0010000 = READ BINARY OUTPUT STATUS
0x0020000 = READ ANALOG OUTPUT STATUS
0x0040000 = READ DATASET VALUES
0x0080000 = WRITE DATASET VALUES
0x0200000 = CLOCK SYNC
0x0400000 = FREEZE COUNTERS
0x0800000 = FREEZE AND CLEAR COUNTERS
0x1000000 = READ STRINGS
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249]
DNPActionMask3
Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd.
DNP Action mask Definitions: See section on 'Predefined Tag Names for Monitoring and Control' in the Manual. This
parameter is only used for master sessions using the DNP3 protocol.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = READ CLASS 1 CHANGE EVENTS
0x0000002 = READ CLASS 2 CHANGE EVENTS
0x0000004 = READ CLASS 3 CHANGE EVENTS
0x0000008 = BINARY INPUT CHANGE EVENTS
0x0000010 = ANALOG INPUT CHANGE EVENTS
0x0000020 = RUNNING COUNTER CHG EVENTS
0x0000040 = FROZEN COUNTER CHG EVENTS
0x0000400 = READ CLASS 0 STATIC DATA
0x0000800 = SPECIFIC REQUEST
0x0001000 = READ BINARY INPUTS
0x0002000 = READ ANALOG INPUTS
0x0004000 = READ COUNTERS
0x0008000 = READ FROZEN COUNTERS
0x0010000 = READ BINARY OUTPUT STATUS
0x0020000 = READ ANALOG OUTPUT STATUS
0x0040000 = READ DATASET VALUES
0x0080000 = WRITE DATASET VALUES
0x0200000 = CLOCK SYNC
0x0400000 = FREEZE COUNTERS
0x0800000 = FREEZE AND CLEAR COUNTERS
0x1000000 = READ STRINGS
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249]
DNPActionMask4
Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd.
DNP Action mask Definitions: See section on 'Predefined Tag Names for Monitoring and Control' in the Manual. This
parameter is only used for master sessions using the DNP3 protocol.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = READ CLASS 1 CHANGE EVENTS
0x0000002 = READ CLASS 2 CHANGE EVENTS
0x0000004 = READ CLASS 3 CHANGE EVENTS
0x0000008 = BINARY INPUT CHANGE EVENTS
0x0000010 = ANALOG INPUT CHANGE EVENTS
0x0000020 = RUNNING COUNTER CHG EVENTS
0x0000040 = FROZEN COUNTER CHG EVENTS
0x0000400 = READ CLASS 0 STATIC DATA

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 197

SCADA Data Gateway | Implementers Guide


0x0000800 = SPECIFIC REQUEST
0x0001000 = READ BINARY INPUTS
0x0002000 = READ ANALOG INPUTS
0x0004000 = READ COUNTERS
0x0008000 = READ FROZEN COUNTERS
0x0010000 = READ BINARY OUTPUT STATUS
0x0020000 = READ ANALOG OUTPUT STATUS
0x0040000 = READ DATASET VALUES
0x0080000 = WRITE DATASET VALUES
0x0200000 = CLOCK SYNC
0x0400000 = FREEZE COUNTERS
0x0800000 = FREEZE AND CLEAR COUNTERS
0x1000000 = READ STRINGS
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249]
DNPActionNow
Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd.
DNP Action mask Definitions: See section on 'Predefined Tag Names for Monitoring and Control' in the Manual. This
parameter is only used for master sessions using the DNP3 protocol.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = READ CLASS 1 CHANGE EVENTS
0x0000002 = READ CLASS 2 CHANGE EVENTS
0x0000004 = READ CLASS 3 CHANGE EVENTS
0x0000008 = BINARY INPUT CHANGE EVENTS
0x0000010 = ANALOG INPUT CHANGE EVENTS
0x0000020 = RUNNING COUNTER CHG EVENTS
0x0000040 = FROZEN COUNTER CHG EVENTS
0x0000400 = READ CLASS 0 STATIC DATA
0x0000800 = SPECIFIC REQUEST
0x0001000 = READ BINARY INPUTS
0x0002000 = READ ANALOG INPUTS
0x0004000 = READ COUNTERS
0x0008000 = READ FROZEN COUNTERS
0x0010000 = READ BINARY OUTPUT STATUS
0x0020000 = READ ANALOG OUTPUT STATUS
0x0040000 = READ DATASET VALUES
0x0080000 = WRITE DATASET VALUES
0x0200000 = CLOCK SYNC
0x0400000 = FREEZE COUNTERS
0x0800000 = FREEZE AND CLEAR COUNTERS
0x1000000 = READ STRINGS
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249]
DNPActionPrd0
Time between actions defined in the DNPActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the DNP3 protocol.
DEFAULT: 2000 ms
INDICES: [sessionIndex=0-249]
DNPActionPrd1
Time between actions defined in the DNPActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the DNP3 protocol.
DEFAULT: 3600000 ms (1 hour)
INDICES: [sessionIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 198

SCADA Data Gateway | Implementers Guide


DNPActionPrd2
Time between actions defined in the DNPActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the DNP3 protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
DNPActionPrd3
Time between actions defined in the DNPActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the DNP3 protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
DNPActionPrd4
Time between actions defined in the DNPActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the DNP3 protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
IECActionMask0
Use this mask to force one time event(s) or periodic events in conjunction with the IECActionPrd.
IEC Action mask Definitions:
See section 4.2 'Predefined Tag Names for Monitoring and Control' in the Manual. This parameter is only used for master
sessions using the IEC 60870-5 protocol profile.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = CLOCK SYNC
0x0800000 = TEST COMMAND
0x0000002 = GENERAL INTEROGATION
0x0000004 = INTEROGATE GROUP 1
0x0000008 = INTEROGATE GROUP 2
0x0000010 = INTEROGATE GROUP 3
0x0000020 = INTEROGATE GROUP 4
0x0000040 = INTEROGATE GROUP 5
0x0000080 = INTEROGATE GROUP 6
0x0000100 = INTEROGATE GROUP 7
0x0000200 = INTEROGATE GROUP 8
0x0000400 = INTEROGATE GROUP 9
0x0000800 = INTEROGATE GROUP 10
0x0001000 = INTEROGATE GROUP 11
0x0002000 = INTEROGATE GROUP 12
0x0004000 = INTEROGATE GROUP 13
0x0008000 = INTEROGATE GROUP 14
0x0010000 = INTEROGATE GROUP 15
0x0020000 = INTEROGATE GROUP 16
0x0040000 = COUNTER INTEROGATION
0x0080000 = INTEROGATE COUNTER GROUP 1
0x0100000 = INTEROGATE COUNTER GROUP 2
0x0200000 = INTEROGATE COUNTER GROUP 3
0x0400000 = INTEROGATE COUNTER GROUP 4
0x1000000 = SEND FREEZE COUNTER COMMAND
0x2000000 = SEND RESET COUNTER COMMAND
DEFAULT: 0x0000002
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionMask1
Use this mask to force one time event(s) or periodic events in conjunction with the IECActionPrd.
IEC Action mask Definitions:

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 199

SCADA Data Gateway | Implementers Guide


See section 4.2 'Predefined Tag Names for Monitoring and Control' in the Manual. This parameter is only used for master
sessions using the IEC 60870-5 protocol profile.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = CLOCK SYNC
0x0800000 = TEST COMMAND
0x0000002 = GENERAL INTEROGATION
0x0000004 = INTEROGATE GROUP 1
0x0000008 = INTEROGATE GROUP 2
0x0000010 = INTEROGATE GROUP 3
0x0000020 = INTEROGATE GROUP 4
0x0000040 = INTEROGATE GROUP 5
0x0000080 = INTEROGATE GROUP 6
0x0000100 = INTEROGATE GROUP 7
0x0000200 = INTEROGATE GROUP 8
0x0000400 = INTEROGATE GROUP 9
0x0000800 = INTEROGATE GROUP 10
0x0001000 = INTEROGATE GROUP 11
0x0002000 = INTEROGATE GROUP 12
0x0004000 = INTEROGATE GROUP 13
0x0008000 = INTEROGATE GROUP 14
0x0010000 = INTEROGATE GROUP 15
0x0020000 = INTEROGATE GROUP 16
0x0040000 = COUNTER INTEROGATION
0x0080000 = INTEROGATE COUNTER GROUP 1
0x0100000 = INTEROGATE COUNTER GROUP 2
0x0200000 = INTEROGATE COUNTER GROUP 3
0x0400000 = INTEROGATE COUNTER GROUP 4
0x1000000 = SEND FREEZE COUNTER COMMAND
0x2000000 = SEND RESET COUNTER COMMAND
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionMask2
Use this mask to force one time event(s) or periodic events in conjunction with the IECActionPrd.
IEC Action mask Definitions:
See section 4.2 'Predefined Tag Names for Monitoring and Control' in the Manual. This parameter is only used for master
sessions using the IEC 60870-5 protocol profile.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = CLOCK SYNC
0x0800000 = TEST COMMAND
0x0000002 = GENERAL INTEROGATION
0x0000004 = INTEROGATE GROUP 1
0x0000008 = INTEROGATE GROUP 2
0x0000010 = INTEROGATE GROUP 3
0x0000020 = INTEROGATE GROUP 4
0x0000040 = INTEROGATE GROUP 5
0x0000080 = INTEROGATE GROUP 6
0x0000100 = INTEROGATE GROUP 7
0x0000200 = INTEROGATE GROUP 8
0x0000400 = INTEROGATE GROUP 9
0x0000800 = INTEROGATE GROUP 10
0x0001000 = INTEROGATE GROUP 11
0x0002000 = INTEROGATE GROUP 12
0x0004000 = INTEROGATE GROUP 13
0x0008000 = INTEROGATE GROUP 14
0x0010000 = INTEROGATE GROUP 15

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 200

SCADA Data Gateway | Implementers Guide


0x0020000 = INTEROGATE GROUP 16
0x0040000 = COUNTER INTEROGATION
0x0080000 = INTEROGATE COUNTER GROUP 1
0x0100000 = INTEROGATE COUNTER GROUP 2
0x0200000 = INTEROGATE COUNTER GROUP 3
0x0400000 = INTEROGATE COUNTER GROUP 4
0x1000000 = SEND FREEZE COUNTER COMMAND
0x2000000 = SEND RESET COUNTER COMMAND
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionMask3
Use this mask to force one time event(s) or periodic events in conjunction with the IECActionPrd.
IEC Action mask Definitions:
See section 4.2 'Predefined Tag Names for Monitoring and Control' in the Manual. This parameter is only used for master
sessions using the IEC 60870-5 protocol profile.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = CLOCK SYNC
0x0800000 = TEST COMMAND
0x0000002 = GENERAL INTEROGATION
0x0000004 = INTEROGATE GROUP 1
0x0000008 = INTEROGATE GROUP 2
0x0000010 = INTEROGATE GROUP 3
0x0000020 = INTEROGATE GROUP 4
0x0000040 = INTEROGATE GROUP 5
0x0000080 = INTEROGATE GROUP 6
0x0000100 = INTEROGATE GROUP 7
0x0000200 = INTEROGATE GROUP 8
0x0000400 = INTEROGATE GROUP 9
0x0000800 = INTEROGATE GROUP 10
0x0001000 = INTEROGATE GROUP 11
0x0002000 = INTEROGATE GROUP 12
0x0004000 = INTEROGATE GROUP 13
0x0008000 = INTEROGATE GROUP 14
0x0010000 = INTEROGATE GROUP 15
0x0020000 = INTEROGATE GROUP 16
0x0040000 = COUNTER INTEROGATION
0x0080000 = INTEROGATE COUNTER GROUP 1
0x0100000 = INTEROGATE COUNTER GROUP 2
0x0200000 = INTEROGATE COUNTER GROUP 3
0x0400000 = INTEROGATE COUNTER GROUP 4
0x1000000 = SEND FREEZE COUNTER COMMAND
0x2000000 = SEND RESET COUNTER COMMAND
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionMask4
Use this mask to force one time event(s) or periodic events in conjunction with the IECActionPrd.
IEC Action mask Definitions:
See section 4.2 'Predefined Tag Names for Monitoring and Control' in the Manual. This parameter is only used for master
sessions using the IEC 60870-5 protocol profile.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = CLOCK SYNC
0x0800000 = TEST COMMAND
0x0000002 = GENERAL INTEROGATION
0x0000004 = INTEROGATE GROUP 1

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 201

SCADA Data Gateway | Implementers Guide


0x0000008 = INTEROGATE GROUP 2
0x0000010 = INTEROGATE GROUP 3
0x0000020 = INTEROGATE GROUP 4
0x0000040 = INTEROGATE GROUP 5
0x0000080 = INTEROGATE GROUP 6
0x0000100 = INTEROGATE GROUP 7
0x0000200 = INTEROGATE GROUP 8
0x0000400 = INTEROGATE GROUP 9
0x0000800 = INTEROGATE GROUP 10
0x0001000 = INTEROGATE GROUP 11
0x0002000 = INTEROGATE GROUP 12
0x0004000 = INTEROGATE GROUP 13
0x0008000 = INTEROGATE GROUP 14
0x0010000 = INTEROGATE GROUP 15
0x0020000 = INTEROGATE GROUP 16
0x0040000 = COUNTER INTEROGATION
0x0080000 = INTEROGATE COUNTER GROUP 1
0x0100000 = INTEROGATE COUNTER GROUP 2
0x0200000 = INTEROGATE COUNTER GROUP 3
0x0400000 = INTEROGATE COUNTER GROUP 4
0x1000000 = SEND FREEZE COUNTER COMMAND
0x2000000 = SEND RESET COUNTER COMMAND
DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionNow
Use this mask to force one time event(s) or periodic events in conjunction with the IECActionPrd.
IEC Action mask Definitions:
See section 4.2 'Predefined Tag Names for Monitoring and Control' in the Manual. This parameter is only used for master
sessions using the IEC 60870-5 protocol profile.
Possible values are:
0x0000000 = NONE (disable)
0x0000001 = CLOCK SYNC
0x0800000 = TEST COMMAND
0x0000002 = GENERAL INTEROGATION
0x0000004 = INTEROGATE GROUP 1
0x0000008 = INTEROGATE GROUP 2
0x0000010 = INTEROGATE GROUP 3
0x0000020 = INTEROGATE GROUP 4
0x0000040 = INTEROGATE GROUP 5
0x0000080 = INTEROGATE GROUP 6
0x0000100 = INTEROGATE GROUP 7
0x0000200 = INTEROGATE GROUP 8
0x0000400 = INTEROGATE GROUP 9
0x0000800 = INTEROGATE GROUP 10
0x0001000 = INTEROGATE GROUP 11
0x0002000 = INTEROGATE GROUP 12
0x0004000 = INTEROGATE GROUP 13
0x0008000 = INTEROGATE GROUP 14
0x0010000 = INTEROGATE GROUP 15
0x0020000 = INTEROGATE GROUP 16
0x0040000 = COUNTER INTEROGATION
0x0080000 = INTEROGATE COUNTER GROUP 1
0x0100000 = INTEROGATE COUNTER GROUP 2
0x0200000 = INTEROGATE COUNTER GROUP 3
0x0400000 = INTEROGATE COUNTER GROUP 4
0x1000000 = SEND FREEZE COUNTER COMMAND
0x2000000 = SEND RESET COUNTER COMMAND

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 202

SCADA Data Gateway | Implementers Guide


DEFAULT: 0x0000000
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionPrd0
Time between actions defined in the IECActionMask.The period is disabled if set to zero. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 3600000 ms (1 hour)
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionPrd1
Time between actions defined in the IECActionMask.The period is disabled if set to zero. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionPrd2
Time between actions defined in the IECActionMask.The period is disabled if set to zero. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionPrd3
Time between actions defined in the IECActionMask.The period is disabled if set to zero. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionPrd4
Time between actions defined in the IECActionMask.The period is disabled if set to zero. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryCount0
How many times to retry the action mask on failure.If the retry time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 cnt
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryCount1
How many times to retry the action mask on failure.If the retry time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 cnt
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryCount2
How many times to retry the action mask on failure.If the retry time is 0 this has no effect.This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 cnt
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryCount3
How many times to retry the action mask on failure.If the retry time is 0 this has no effect. This parameter is only used
for master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 cnt
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryCount4

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 203

SCADA Data Gateway | Implementers Guide


How many times to retry the action mask on failure.If the retry time is 0 this has no effect. This parameter is only used
for master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 cnt
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryCountNow
How many times to retry the action mask on failure.If the retry time is 0 this has no effect. This parameter is only used
for master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 cnt
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryTime0
The time period between retrys of this action mask.If the time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryTime1
The time period between retrys of this action mask.If the time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryTime2
The time period between retrys of this action mask.If the time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryTime3
The time period between retrys of this action mask.If the time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryTime4
The time period between retrys of this action mask.If the time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
IECActionRetryTimeNow
The time period between retrys of this action mask.If the time is 0 this has no effect. This parameter is only used for
master sessions using the IEC 60870-5 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249][sector=0-63]
MBActionMask0
Use this mask to force one time event(s) or periodic events in conjunction with the MBActionPrd.
MB Action mask Definitions:
This parameter is only used for master sessions using the Modbus protocol.
Possible values are:
0x00 = NONE (disable)
0x01 = READ COILS
0x02 = READ HOLDING REGISTERS
0x04 = READ DISCRETE INPUTS
0x08 = READ INPUT REGISTERS
0x10 = READ EXCEPTION STATUS

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 204

SCADA Data Gateway | Implementers Guide


DEFAULT: 0x00
INDICES: [sessionIndex=0-249]
MBActionMask1
Use this mask to force one time event(s) or periodic events in conjunction with the MBActionPrd.
MB Action mask Definitions:
This parameter is only used for master sessions using the Modbus protocol.
Possible values are:
0x00 = NONE (disable)
0x01 = READ COILS
0x02 = READ HOLDING REGISTERS
0x04 = READ DISCRETE INPUTS
0x08 = READ INPUT REGISTERS
0x10 = READ EXCEPTION STATUS
DEFAULT: 0x00
INDICES: [sessionIndex=0-249]
MBActionMask2
Use this mask to force one time event(s) or periodic events in conjunction with the MBActionPrd.
MB Action mask Definitions:
This parameter is only used for master sessions using the Modbus protocol.
Possible values are:
0x00 = NONE (disable)
0x01 = READ COILS
0x02 = READ HOLDING REGISTERS
0x04 = READ DISCRETE INPUTS
0x08 = READ INPUT REGISTERS
0x10 = READ EXCEPTION STATUS
DEFAULT: 0x00
INDICES: [sessionIndex=0-249]
MBActionMask3
Use this mask to force one time event(s) or periodic events in conjunction with the MBActionPrd.
MB Action mask Definitions:
This parameter is only used for master sessions using the Modbus protocol.
Possible values are:
0x00 = NONE (disable)
0x01 = READ COILS
0x02 = READ HOLDING REGISTERS
0x04 = READ DISCRETE INPUTS
0x08 = READ INPUT REGISTERS
0x10 = READ EXCEPTION STATUS
DEFAULT: 0x00
INDICES: [sessionIndex=0-249]
MBActionMask4
Use this mask to force one time event(s) or periodic events in conjunction with the MBActionPrd.
MB Action mask Definitions:
This parameter is only used for master sessions using the Modbus protocol.
Possible values are:
0x00 = NONE (disable)
0x01 = READ COILS
0x02 = READ HOLDING REGISTERS
0x04 = READ DISCRETE INPUTS
0x08 = READ INPUT REGISTERS
0x10 = READ EXCEPTION STATUS
DEFAULT: 0x00
INDICES: [sessionIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 205

SCADA Data Gateway | Implementers Guide


MBActionNow
Use this mask to force one time event(s) or periodic events in conjunction with the MBActionPrd.
MB Action mask Definitions:
See section 4.2 'Predefined Tag Names for Monitoring and Control' in the Manual. This parameter is only used for master
sessions using the Modbus protocol.
Possible values are:
0x00 = NONE (disable)
0x01 = READ COILS
0x02 = READ HOLDING REGISTERS
0x04 = READ DISCRETE INPUTS
0x08 = READ INPUT REGISTERS
0x10 = READ EXCEPTION STATUS
DEFAULT: 0x00
INDICES: [sessionIndex=0-249]
MBActionPrd0
Time between actions defined in the MBActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the Modbus protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
MBActionPrd1
Time between actions defined in the MBActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the Modbus protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
MBActionPrd2
Time between actions defined in the MBActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the Modbus protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
MBActionPrd3
Time between actions defined in the MBActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the Modbus protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
MBActionPrd4
Time between actions defined in the MBActionMask. The period is disabled if set to zero. This parameter is only used
for master sessions using the Modbus protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
LongPulseLength
The default Long Pulse Length used when sending a pulse command. This parameter applies to IEC 60870-5 single,
double and step point commands in Slaves.
DEFAULT: 5000 ms
PulseLength
The default Pulse Length used when sending a pulse command. This parameter applies to both DNP and IEC 60870-5
single and double point commands.
DEFAULT: 1000 ms
ShortPulseLength

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 206

SCADA Data Gateway | Implementers Guide


The default Short Pulse Length used when sending a pulse command. This parameter applies to IEC 60870-5 single,
double and step point commands in Slaves.
DEFAULT: 1000 ms
101ApplIgnoreMSTExtraByte
If TRUE, parsing of monitor data for MST (ASDU 6) will ignore the byte following the IOA. This parameter is only used
for IEC 60870-5-101 Master sessions. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249]
DNPAutoEnableUnsolClass1
If enabled unsolicited messaging is set, this flag will indicate event class 1 should be enabled for unsolicited reporting.
This parameter is only used for Master sessions. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
DNPAutoEnableUnsolClass2
If enabled unsolicited messaging is set, this flag will indicate event class 2 should be enabled for unsolicited reporting.
This parameter is only used for Master sessions. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
DNPAutoEnableUnsolClass3
If enabled unsolicited messaging is set, this flag will indicate event class 3 should be enabled for unsolicited reporting.
This parameter is only used for Master sessions. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
Binary_SDNPeventBufferSize
Determines the number of Binary change events that can be buffered between reports. This parameter is only used for
slave sessions using the DNP3 protocol.
DEFAULT: 100 events
INDICES: [sessionIndex=0-249]
Binary_SDNPeventMode
Determines the mode in which Binary change events are provided to the master. This parameter is only used for slave
sessions using the DNP3 protocol. Possible values are 'SOE', or 'RECENT'.
DEFAULT: SOE
INDICES: [sessionIndex=0-249]
MSPNA_eventBufferSize
Determines the number of MSPNA change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
Analog_SDNPeventBufferSize
Determines the number of Analog change events that can be buffered between reports. This parameter is only used for
slave sessions using the DNP3 protocol.
DEFAULT: 30 events
INDICES: [sessionIndex=0-249]
Analog_SDNPeventMode
Determines the mode in which Analog change events are provided to the master. This parameter is only used for slave
sessions using the DNP3 protocol. Possible values are 'SOE', or 'RECENT'.
DEFAULT: RECENT
INDICES: [sessionIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 207

SCADA Data Gateway | Implementers Guide


MSPNA_onlyRecent
If true, then only a single up-to-date value for a MSPNA point that has been detected to have changed will be reported. If
false, then multiple change events can be generated for the same MSPNA data point. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249][sector=0-63]
BinaryCounter_SDNPeventBufferSize
Determines the number of BinaryCounter change events that can be buffered between reports. This parameter is only
used for slave sessions using the DNP3 protocol.
DEFAULT: 30 events
INDICES: [sessionIndex=0-249]
BinaryCounter_SDNPeventMode
Determines the mode in which BinaryCounter change events are provided to the master. This parameter is only used for
slave sessions using the DNP3 protocol.
Possible values are 'SOE', or 'RECENT'.
DEFAULT: RECENT
INDICES: [sessionIndex=0-249]
MSPNA_timeFormat
Selects the time format used to report MSPNA change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: CP56
INDICES: [sessionIndex=0-249][sector=0-63]
FrozenCounter_SDNPeventBufferSize
Determines the number of FrozenCounter change events that can be buffered between reports. This parameter is only
used for slave sessions using the DNP3 protocol.
DEFAULT: 30 events
INDICES: [sessionIndex=0-249]
FrozenCounter_SDNPeventMode
Determines the mode in which FrozenCounter change events are provided to the master. This parameter is only used for
slave sessions using the DNP3 protocol.
Possible values are 'SOE', or 'RECENT'.
DEFAULT: SOE
INDICES: [sessionIndex=0-249]
MDPNA_eventBufferSize
Determines the number of MDPNA change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
MDPNA_onlyRecent
If true, then only a single up-to-date value for a MDPNA point that has been detected to have changed will be reported.
If false, then multiple change events can be generated for the same MDPNA data point. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249][sector=0-63]
String_SDNPeventBufferSize
Determines the number of String change events that can be buffered between reports. This parameter is only used for
slave sessions using the DNP3 protocol.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 208

SCADA Data Gateway | Implementers Guide


DEFAULT: 10 events
INDICES: [sessionIndex=0-249]
String_SDNPeventMode
Determines the mode in which String change events are provided to the master. This parameter is only used for slave
sessions using the DNP3 protocol. Possible values are 'SOE', or 'RECENT'.
DEFAULT: SOE
INDICES: [sessionIndex=0-249]
MDPNA_timeFormat
Selects the time format used to report MDPNA change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: CP56
INDICES: [sessionIndex=0-249][sector=0-63]
VirtualTerminal_SDNPeventBufferSize
Determines the number of VirtualTerminal change events that can be buffered between reports. This parameter is only
used for slave sessions using the DNP3 protocol.
DEFAULT: 5 events
INDICES: [sessionIndex=0-249]
VirtualTerminal_SDNPeventMode
Determines the mode in which VirtualTerminal change events are provided to the master. This parameter is only used for
slave sessions using the DNP3 protocol.
Possible values are 'SOE', or 'RECENT'.
DEFAULT: SOE
INDICES: [sessionIndex=0-249]
Class1_SDNPunsolMaxEvents
If unsolicited responses are enabled, SDNPunsol#upperMaxEvents specifies the maximum number of events in the
corresponding class to be allowed before an unsolicited response will be generated. This parameter is only used for slave
sessions using the DNP3 protocol.
DEFAULT: 5 events
INDICES: [sessionIndex=0-249]
MSTNA_eventBufferSize
Determines the number of MSTNA change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
Class2_SDNPunsolMaxEvents
If unsolicited responses are enabled, SDNPunsol#upperMaxEvents specifies the maximum number of events in the
corresponding class to be allowed before an unsolicited response will be generated. This parameter is only used for slave
sessions using the DNP3 protocol.
DEFAULT: 5 events
INDICES: [sessionIndex=0-249]
MSTNA_onlyRecent
If TRUE, then only a single up-to-date value for a MSTNA point that has been detected to have changed will be
reported. If false, then multiple change events can be generated for the same MSTNA data point. This parameter is only
used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249][sector=0-63]
Class3_SDNPunsolMaxEvents

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 209

SCADA Data Gateway | Implementers Guide


If unsolicited responses are enabled, SDNPunsol#upperMaxEvents specifies the maximum number of events in the
corresponding class to be allowed before an unsolicited response will be generated. This parameter is only used for slave
sessions using the DNP3 protocol.
DEFAULT: 5 events
INDICES: [sessionIndex=0-249]
MSTNA_timeFormat
Selects the time format used to report MSTNA change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: CP56
INDICES: [sessionIndex=0-249][sector=0-63]
MMENA_eventBufferSize
Determines the number of MMENA change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
MMENA_onlyRecent
If true, then only a single up-to-date value for a MMENA point that has been detected to have changed will be reported.
If false, then multiple change events can be generated for the same MMENA data point. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
MMENA_timeFormat
Selects the time format used to report MMENA change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: NONE
INDICES: [sessionIndex=0-249][sector=0-63]
MMENB_eventBufferSize
Determines the number of MMENB change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
MMENB_onlyRecent
If TRUE, then only a single up-to-date value for a MMENB point that has been detected to have changed will be
reported. If false, then multiple change events can be generated for the same MMENB data point. This parameter is only
used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
MMENB_timeFormat
Selects the time format used to report MMENB change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: NONE
INDICES: [sessionIndex=0-249][sector=0-63]
MMENC_eventBufferSize
Determines the number of MMENC change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 210

SCADA Data Gateway | Implementers Guide


DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
MMENC_onlyRecent
If TRUE, then only a single up-to-date value for a MMENC point that has been detected to have changed will be
reported. If false, then multiple change events can be generated for the same MMENC data point. This parameter is only
used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
MMENC_timeFormat
Selects the time format used to report MMENC change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: NONE
INDICES: [sessionIndex=0-249][sector=0-63]
MBONA_eventBufferSize
Determines the number of MBONA change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
MBONA_onlyRecent
If true, then only a single up-to-date value for a MBONA point that has been detected to have changed will be reported.
If false, then multiple change events can be generated for the same MBONA data point. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
MITNA_onlyRecent
If true, then only a single up-to-date value for a MITNA point that has been detected to have changed will be reported. If
false, then multiple change events can be generated for the same MITNA data point. This parameter is only used for slave
sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
MBONA_timeFormat
Selects the time format used to report MBONA change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: CP56
INDICES: [sessionIndex=0-249][sector=0-63]
MITNA_eventBufferSize
Determines the number of MITNA change events that can be buffered between reports. This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 200 events
INDICES: [sessionIndex=0-249][sector=0-63]
MITNA_timeFormat
Selects the time format used to report MITNA change events. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 'CP24', 'CP56', or 'NONE'.
DEFAULT: CP56

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 211

SCADA Data Gateway | Implementers Guide


INDICES: [sessionIndex=0-249][sector=0-63]
Class1_SDNPunsolMaxDelay
If unsolicited responses are enabled, SDNPunsol#upperMaxDelay specifies the maximum amount of time in milliseconds
after an event in the corresponding class is received before an unsolicited response will be generated. This parameter is
only used for slave sessions using the DNP3 protocol.
DEFAULT: 5000 ms
INDICES: [sessionIndex=0-249]
Class2_SDNPunsolMaxDelay
If unsolicited responses are enabled, SDNPunsol#upperMaxDelay specifies the maximum amount of time in milliseconds
after an event in the corresponding class is received before an unsolicited response will be generated. This parameter is
only used for slave sessions using the DNP3 protocol.
DEFAULT: 5000 ms
INDICES: [sessionIndex=0-249]
Class3_SDNPunsolMaxDelay
If unsolicited responses are enabled, SDNPunsol#upperMaxDelay specifies the maximum amount of time in milliseconds
after an event in the corresponding class is received before an unsolicited response will be generated. This parameter is
only used for slave sessions using the DNP3 protocol.
DEFAULT: 5000 ms
INDICES: [sessionIndex=0-249]
SlaveSendClockSyncEvents
This parameter controls whether spontaneous clock synchronization events will be generated on this sector. The user can
specify the use of no time, 24 bit time, or 56 bit time when reporting events. The 24 bit time only reports the time up to
the hour, hence it is necesary to report the full time once per hour to make sure the master can reproduce the actual time
of the event. This is accomplished using a spontaneous clock synchronization message from the slave to the master. If
using 24 bit time when reporting events this parameter should be set to TMWDEFS_TRUE. Unfortunately some master
devices do not support spontaneous clock synchronization events so it might be necesary to set this to
TMWDEFS_FALSE for some sectors. This parameter is only used for slave sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
EnableEventLogFile
If TRUE, the SOE Event Log File will be enabled.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
EnableSOEQ
If TRUE, the SOE Queue will be enabled. Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
EventLogFileName
Event Log File Name and Path. See manual for a description of the available %xxx property keywords.
DEFAULT: GW%02ry2%02rmr%02rdm.log
SOEQFileName
Sequence Of Events Queue File Name and Path.
DEFAULT: SDG_SOEQueueFile
EventLogRecordFormat
Event Log record format. See manual for a description of the available %xxx property keywords.
DEFAULT: "%ry4-%02rmr-%02rdm %rtm,%-3rtq,%20utg,%10val,0x%02qly,0x%04rsn,%dcr"
EventLogFileFlushPrd

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 212

SCADA Data Gateway | Implementers Guide


Maximum amount of time between writing to the event log file before it is flushed to disk. Set to zero to inhibit explicit
flushing. This parameter may be useful if another application reads the event log file to obtain event data in real time.
DEFAULT: 0 ms
Errors_OpcAELogMask
Each bit enables (1)/disables (0) a reason to report errors, such as changes in number of link layer checksum failures or in
link session on-line/off-line status, through the OPC Alarm and Event Server. If 0, no errors will be reported.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
Errors_logMask
Each bit enables (1)/disables (0) a reason to log errors, such as changes in number of link layer checksum failures or in
link session on-line/off-line status, in the event log file. If 0, nothing will be logged.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x9ff9
Diagnostics_OpcAELogMask
Each bit enables (1)/disables (0) a reason to log diagnostic data, such as change to the number of transmitted frames,
through the OPC Alarm and Event Server. If 0, no diagnostics data will be reported.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 213

SCADA Data Gateway | Implementers Guide


0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
Diagnostics_logMask
Each bit enables (1)/disables (0) a reason to log diagnostic data, such as change to the number of transmitted frames, in
the event log file. If 0, no diagnostics data will be logged.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
GatewayControl_OpcAELogMask
Each bit enables (1) /disables (0) a reason to log control data, such as changes to pollEnabled or to
GeneralInterrogationPeriod, through the OPC Alarm and Event Server. If 0, nothing will be reported.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
GatewayControl_logMask
Each bit enables(1) /disables (0) a reason to log control data, such as changes to pollEnabled or to
GeneralInterrogationPeriod, in the event log file. If 0, nothing will be logged.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 214

SCADA Data Gateway | Implementers Guide


0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
Equations_OpcAELogMask
Each bit enables (1)/disables (0) a reason to log results of equations through the OPC Alarm and Event Server. If 0, no
equation results will be reported.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
Equations_logMask
Each bit enables (1)/disables (0) a reason to log results of equations. If 0, no equation results will be logged.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
OpcAESubscriptionMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 215

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason that an item subscription through the SDG OPC Data Access Server should
enable OPC Alarm and Event notifications for the item. Note that this mask overrides all other masks if enabled. If 0, no
OPC Alarm and Event notifications will occur as a result of an item subscription.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MSPNA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MSPNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles. Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MSPNA_logMask
Each bit enables (1)/disables (0) a reason to log MSPNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 216

SCADA Data Gateway | Implementers Guide


0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDPNA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDPNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDPNA_logMask
Each bit enables (1)/disables(0) a reason to log MDPNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MSTNA_OpcAElogMask
Each bit enables (1)/disables(0) a reason to provide MSTNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 217

SCADA Data Gateway | Implementers Guide


0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MSTNA_logMask
Each bit enables (1)/disables (0) a reason to log MSTNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBONA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MBONA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBONA_logMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 218

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason to log MBONA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MMENA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MMENA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MMENA_logMask
Each bit enables (1)/disables (0) a reason to log MMENA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 219

SCADA Data Gateway | Implementers Guide


0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MMENB_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MMENB data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MMENB_logMask
Each bit enables (1)/disables (0) a reason to log MMENB data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MMENC_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MMENC data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 220

SCADA Data Gateway | Implementers Guide


0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MMENC_logMask
Each bit enables (1)/disables (0) a reason to log MMENC data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MITNA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MITNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MITNA_logMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 221

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason to log MITNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MEINA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MEINA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MEINA_logMask
Each bit enables (1)/disables (0) a reason to log MEINA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 222

SCADA Data Gateway | Implementers Guide


0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSCNA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CSCNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSCNA_logMask
Each bit enables (1)/disables (0) a reason to log CSCNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CDCNA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CDCNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 223

SCADA Data Gateway | Implementers Guide


0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CDCNA_logMask
Each bit enables (1)/disables (0) a reason to log CDCNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CRCNA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CRCNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CRCNA_logMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 224

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason to log CRCNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CBONA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CBONA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CBONA_logMask
Each bit enables (1)/disables (0) a reason to log CBONA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 225

SCADA Data Gateway | Implementers Guide


0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSENA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CSENA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSENA_logMask
Each bit enables (1)/disables (0) a reason to log CSENA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSENB_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CSENB data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 226

SCADA Data Gateway | Implementers Guide


0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSENB_logMask
Each bit enables (1)/disables (0) a reason to log CSENB data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSENC_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CSENC data updates through the OPC Alarm and Event server. If 0,
nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104
protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CSENC_logMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 227

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason to log CSENC data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CCSNA_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide CCSNA data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
CCSNA_logMask
Each bit enables (1)/disables (0) a reason to log CCSNA data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 228

SCADA Data Gateway | Implementers Guide


0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type1_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type1data updates through the OPC Alarm and Event server.
If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103 protocol
profile. Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type1_logMask
Each bit enables (1)/disables (0) a reason to log M103Type1 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type2_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type2 data updates through the OPC Alarm and Event server.
If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103 protocol
profile. Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 229

SCADA Data Gateway | Implementers Guide


0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type2_logMask
Each bit enables (1)/disables (0) a reason to log M103Type2 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type4_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type4 data updates through the OPC Alarm and Event server.
If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103 protocol
profile. Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type4_logMask
Each bit enables (1)/disables (0) a reason to log M103Type4 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 230

SCADA Data Gateway | Implementers Guide


0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type5_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type5 data updates through the OPC Alarm and Event server.
If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103 protocol
profile. Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type5_logMask
Each bit enables (1)/disables (0) a reason to log M103Type5 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type9_OpcAElogMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 231

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason to provide M103Type9 data updates through the OPC Alarm and Event server.
If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103 protocol
profile. Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type9_logMask
Each bit enables (1)/disables (0) a reason to log M103Type9 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type140_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type140 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103
protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 232

SCADA Data Gateway | Implementers Guide


0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type140_logMask
Each bit enables (1)/disables (0) a reason to log M103Type140 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type205_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type205 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103
protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type205_logMask
Each bit enables (1)/disables (0) a reason to log M103Type205 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 233

SCADA Data Gateway | Implementers Guide


0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type20_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type20 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103
protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type20_logMask
Each bit enables (1)/disables (0) a reason to log M103Type20 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type45_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type45 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103
protocol profile.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 234

SCADA Data Gateway | Implementers Guide


Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type45_logMask
Each bit enables (1)/disables (0) a reason to log M103Type45 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type46_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type46 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103
protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 235

SCADA Data Gateway | Implementers Guide


0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type46_logMask
Each bit enables (1)/disables (0) a reason to log M103Type46 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type70_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide M103Type70 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the IEC 60870-5-103
protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
M103Type70_logMask
Each bit enables (1)/disables (0) a reason to log M103Type70 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the IEC 60870-5-103 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 236

SCADA Data Gateway | Implementers Guide


0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType1_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType1 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType1_logMask
Each bit enables (1)/disables (0) a reason to log MDNPType1 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType10_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType10 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 237

SCADA Data Gateway | Implementers Guide


0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType10_logMask
Each bit enables (1)/disables (0) a reason to log MDNPType10 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType12_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType12 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType12_logMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 238

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason to log MDNPType12 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType20_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType20 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType20_logMask
Each bit enables (1)/disables (0) a reason to log MDNPType20 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 239

SCADA Data Gateway | Implementers Guide


0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType21_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType21 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType21_logMask
Each bit enables (1)/disables (0) a reason to log MDNPType21 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType30_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType30 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 240

SCADA Data Gateway | Implementers Guide


0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType30_logMask
Each bit enables (1)/disables (0) a reason to log MDNPType30 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType40_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType40 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType40_logMask
Each bit enables (1)/disables (0) a reason to log MDNPType40 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 241

SCADA Data Gateway | Implementers Guide


0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType41_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MDNPType41 data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MDNPType41_logMask
Each bit enables (1)/disables (0) a reason to log MDNPType41 data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the DNP3 protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBCoil_OpcAElogMask

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 242

SCADA Data Gateway | Implementers Guide


Each bit enables (1)/disables (0) a reason to provide MBCoil data updates through the OPC Alarm and Event server. If
0, nothing will be reported. This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBCoil_logMask
Each bit enables (1)/disables (0) a reason to log MBCoil data updates in the event log file. If 0, nothing will be logged.
This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBDiscreteInput_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MBDiscreteInput data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 243

SCADA Data Gateway | Implementers Guide


0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBDiscreteInput_logMask
Each bit enables (1)/disables (0) a reason to log MBDiscreteInput data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBInputRegister_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MBInputRegister data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBInputRegister_logMask
Each bit enables (1)/disables (0) a reason to log MBInputRegister data updates in the event log file. If 0, nothing will be
logged. This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 244

SCADA Data Gateway | Implementers Guide


0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBHoldingRegister_OpcAElogMask
Each bit enables (1)/disables (0) a reason to provide MBHoldingRegister data updates through the OPC Alarm and Event
server. If 0, nothing will be reported. This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
MBHoldingRegister_logMask
Each bit enables (1)/disables (0) a reason to log MBHoldingRegister data updates in the event log file. If 0, nothing will
be logged. This parameter is only used for master sessions using the Modbus protocol profile.
Possible values are:
0x0001 = The data is being updated, but the reason for the update is unknown.
0x0002 = The data is being updated because it was requested.
0x0004 = The data is being updated by the source of data without direct request. No change is necessarily indicated.
0x0008 = A change in the data is indicated by the source of data.
0x0010 = A change in the data is indicated due to a request through communications.
0x0020 = A change in the data is indicated due to action at the device.
0x0040 = A control request has been transmitted to a remote device.
0x0080 = A control request has been confirmed by a remote device, but is not yet complete.
0x0100 = A 1st pass in a 2-pass control operation has been transmitted to a remote device.
0x0200 = A 1st pass in a 2-pass control operation has been confirmed by a remote device.
0x0400 = A cancel operation has been transmitted to a remote device to abort a 2-pass control operation between the 1st
and 2nd passes.
0x0800 = A cancel operation has been confirmed by a remote device.
0x1000 = A remote device has responded to indicate an error in a control operation.
0x8000 = Either the data point or the remote device is operating in a test mode.
DEFAULT: 0x0000
ClockAcceptTimesync
If true, then the sector accepts time sync commands from the master. If set to false in all sectors, then the Windows
System time is used as the timebase. If any sector is set to true, then the generated time is used as the timebase. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles. Possible
values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 245

SCADA Data Gateway | Implementers Guide


ClockInitPropDly
Initial value for the clock synchronization transmission propagation delay. This parameter is only used for slave sessions
using the IEC 60870-5-101 protocol profile.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
ClockNeedTimeDly
Amount of time a DNP slave will wait before setting the 'Need Time' internal indication bit to tell the master it needs to
send a new time sync to this device. This parameter is only used for slave sessions using the DNP3 protocol.
DEFAULT: 1800000 ms (30 minutes)
ClockValidPrd
Maximum amount of time local clock stays valid without an intervening clock synchronization. This parameter is only
used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
DEFAULT: 82800000 ms (23 hours)
MSPNA_classId
Assigns the class for the MSPNA data. This parameter is only used for slave sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249][sector=0-63]
MDPNA_classId
Assigns the class for the MDPNA data. This parameter is only used for slave sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249][sector=0-63]
MDNPAnaOutDfltVariation
Default variation for MDNP analog outputs.
DEFAULT: 2
INDICES: [sessionIndex=0-249]
MSTNA_classId
Assigns the class for the MSTNA data. This parameter is only used for slave sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249][sector=0-63]
MMENA_classId
Assigns the class for the MMENA data. This parameter is only used for slave sessions using the IEC 60870-5-101 or
IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 2
INDICES: [sessionIndex=0-249][sector=0-63]
MMENB_classId
Assigns the class for the MMENB data. This parameter is only used for slave sessions using the IEC 60870-5-101 or
IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 2
INDICES: [sessionIndex=0-249][sector=0-63]
MMENC_classId

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 246

SCADA Data Gateway | Implementers Guide


Assigns the class for the MMENC data. This parameter is only used for slave sessions using the IEC 60870-5-101 or
IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 2
INDICES: [sessionIndex=0-249][sector=0-63]
MBONA_classId
Assigns the class for the MBONA data. This parameter is only used for slave sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 2
INDICES: [sessionIndex=0-249][sector=0-63]
MEINA_classId
Assigns the class for the MEINA data. This parameter is only used for slave sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249][sector=0-63]
CommandsClassId
Assigns the class for responses to commands (should be in class 1). This parameter is only used for slave sessions using
the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
CICNAClassId
Assigns the class for responses to interrogation command (should always be class 1). This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
CCINAClassId
Assigns the class for responses to counter interrogation command (should always be class 1). This parameter is only used
for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
CRDNAClassId
Assigns the class for responses to read command (should always be class 1). This parameter is only used for slave
sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
CCSNAactconClassId
Assigns the class for responses to clock sync commands. This parameter is only used for slave sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
CCSNAspontClassId
Assigns the class for spontaneous clock sync responses. This parameter is only used for slave sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 247

SCADA Data Gateway | Implementers Guide


Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
CTSNAClassId
Assigns the class for responses to test command (should always be class 1). This parameter is only used for slave
sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
CRPNAClassId
Assigns the class for responses to reset process command (should always be class 1). This parameter is only used for
slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
ParametersClassId
Assigns the class for responses to parameters (should be in class 1). This parameter is only used for slave sessions using
the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are '1', '2', or 'DISABLED'.
DEFAULT: 1
INDICES: [sessionIndex=0-249]
Obj01DfltVariation
Variation in which Object 1 binary inputs will be returned when queried using variation 0. This parameter is only used
for slave sessions using the DNP3 protocol.
Possible values are 1 or 2.
DEFAULT: 2 variation
Obj02DfltClass
Default class in which Object 2 binary input events will be returned. This parameter is only used for slave sessions using
the DNP3 protocol.
Possible values are 'CLS1', 'CLS2', or 'CLS3'.
DEFAULT: CLS1
Obj02DfltVariation
Variation in which Object 2 binary input events will be returned when queried using variation 0. This parameter is only
used for slave sessions using the DNP3 protocol.
Possible values are from 1 to 3.
DEFAULT: 2 variation
Obj111DfltClass
Default class in which Object 111 string events will be returned. This parameter is only used for slave sessions using the
DNP3 protocol.
Possible values are 'CLS1', 'CLS2', or 'CLS3'.
DEFAULT: CLS3
Obj20DfltVariation
Variation in which Object 20 binary counters will be returned when queried using variation 0. This parameter is only
used for slave sessions using the DNP3 protocol.
Possible values are from 1 to 12.
DEFAULT: 1 variation
Obj21DfltVariation
Variation in which Object 21 frozen counters will be returned when queried using variation 0. This parameter is only
used for slave sessions using the DNP3 protocol.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 248

SCADA Data Gateway | Implementers Guide


Possible values are from 1 to 12.
DEFAULT: 1 variation
Obj22DfltVariation
Variation in which Object 22 binary counter events will be returned when queried using variation 0. This parameter is
only used for slave sessions using the DNP3 protocol.
Possible values are from 1 to 8.
DEFAULT: 1 variation
Obj23DfltClass
Default class in which Object 22 binary counter events will be returned. This parameter is only used for slave sessions
using the DNP3 protocol.
Possible values are 'CLS1', 'CLS2', or 'CLS3'.
DEFAULT: CLS3
Obj23DfltClass
Default class in which Object 23 frozen counter events will be returned. This parameter is only used for slave sessions
using the DNP3 protocol. Possible values are 'CLS1', 'CLS2', or 'CLS3'.
DEFAULT: CLS3
Obj23DfltVariation
Variation in which Object 23 frozen counter events will be returned when queried using variation 0. This parameter is
only used for slave sessions using the DNP3 protocol.
Possible values are from 1 to 8.
DEFAULT: 1 variation
Obj30DfltVariation
Variation in which Object 30 analog inputs will be returned when queried using variation 0. This parameter is only used
for slave sessions using the DNP3 protocol.
Possible values are from 1 to 5.
DEFAULT: 1 variation
Obj32DfltClass
Default class in which Object 32 analog input events will be returned. This parameter is only used for slave sessions
using the DNP3 protocol. Possible values are 'CLS1', 'CLS2', or 'CLS3'.
DEFAULT: CLS2
Obj32DfltVariation
Variation in which Object 32 analog input events will be returned when queried using variation 0. This parameter is only
used for slave sessions using the DNP3 protocol.
Possible values are from 1 to 7.
DEFAULT: 1 variation
Obj88DfltClass
Default class in which Object 88 data set events will be returned. This parameter is only used for slave sessions using the
DNP3 protocol. Possible values are 'CLS1', 'CLS2', or 'CLS3'.
DEFAULT: CLS2
MSPNA_groupMask
Set the default interrogation group for MSPNA data. This parameter is only used for slave sessions using the IEC 608705-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x00000001 = General Interrogation
0x00000002 = Group 1 Interrogation
0x00000004 = Group 2 Interrogation
0x00000008 = Group 3 Interrogation
0x00000010 = Group 4 Interrogation
0x00000020 = Group 5 Interrogation

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 249

SCADA Data Gateway | Implementers Guide


0x00000040 = Group 6 Interrogation
0x00000080 = Group 7 Interrogation
0x00000100 = Group 8 Interrogation
0x00000200 = Group 9 Interrogation
0x00000400 = Group 10 Interrogation
0x00000800 = Group 11 Interrogation
0x00001000 = Group 12 Interrogation
0x00002000 = Group 13 Interrogation
0x00004000 = Group 14 Interrogation
0x00008000 = Group 15 Interrogation
0x00010000 = Group 16 Interrogation
0x10000000 = Reported with Cyclic Data
DEFAULT: 0x00000001
MDPNA_groupMask
Set the default interrogation group for MDPNA data. This parameter is only used for slave sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x00000001 = General Interrogation
0x00000002 = Group 1 Interrogation
0x00000004 = Group 2 Interrogation
0x00000008 = Group 3 Interrogation
0x00000010 = Group 4 Interrogation
0x00000020 = Group 5 Interrogation
0x00000040 = Group 6 Interrogation
0x00000080 = Group 7 Interrogation
0x00000100 = Group 8 Interrogation
0x00000200 = Group 9 Interrogation
0x00000400 = Group 10 Interrogation
0x00000800 = Group 11 Interrogation
0x00001000 = Group 12 Interrogation
0x00002000 = Group 13 Interrogation
0x00004000 = Group 14 Interrogation
0x00008000 = Group 15 Interrogation
0x00010000 = Group 16 Interrogation
0x10000000 = Reported with Cyclic Data
DEFAULT: 0x00000001
MSTNA_groupMask
Set the default interrogation group for MSTNA data. This parameter is only used for slave sessions using the IEC 608705-101 or IEC 60870-5-104 protocol profiles. Possible values are:
0x00000001 = General Interrogation
0x00000002 = Group 1 Interrogation
0x00000004 = Group 2 Interrogation
0x00000008 = Group 3 Interrogation
0x00000010 = Group 4 Interrogation
0x00000020 = Group 5 Interrogation
0x00000040 = Group 6 Interrogation
0x00000080 = Group 7 Interrogation
0x00000100 = Group 8 Interrogation
0x00000200 = Group 9 Interrogation
0x00000400 = Group 10 Interrogation
0x00000800 = Group 11 Interrogation
0x00001000 = Group 12 Interrogation
0x00002000 = Group 13 Interrogation
0x00004000 = Group 14 Interrogation
0x00008000 = Group 15 Interrogation
0x00010000 = Group 16 Interrogation

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 250

SCADA Data Gateway | Implementers Guide


0x10000000 = Reported with Cyclic Data
DEFAULT: 0x00000001
MMENA_groupMask
Set the default interrogation group for MMENA data. This parameter is only used for slave sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles. Possible values are:
0x00000001 = General Interrogation
0x00000002 = Group 1 Interrogation
0x00000004 = Group 2 Interrogation
0x00000008 = Group 3 Interrogation
0x00000010 = Group 4 Interrogation
0x00000020 = Group 5 Interrogation
0x00000040 = Group 6 Interrogation
0x00000080 = Group 7 Interrogation
0x00000100 = Group 8 Interrogation
0x00000200 = Group 9 Interrogation
0x00000400 = Group 10 Interrogation
0x00000800 = Group 11 Interrogation
0x00001000 = Group 12 Interrogation
0x00002000 = Group 13 Interrogation
0x00004000 = Group 14 Interrogation
0x00008000 = Group 15 Interrogation
0x00010000 = Group 16 Interrogation
0x10000000 = Reported with Cyclic Data
DEFAULT: 0x10000001
MMENB_groupMask
Set the default interrogation group for MMENB data. This parameter is only used for slave sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x00000001 = General Interrogation
0x00000002 = Group 1 Interrogation
0x00000004 = Group 2 Interrogation
0x00000008 = Group 3 Interrogation
0x00000010 = Group 4 Interrogation
0x00000020 = Group 5 Interrogation
0x00000040 = Group 6 Interrogation
0x00000080 = Group 7 Interrogation
0x00000100 = Group 8 Interrogation
0x00000200 = Group 9 Interrogation
0x00000400 = Group 10 Interrogation
0x00000800 = Group 11 Interrogation
0x00001000 = Group 12 Interrogation
0x00002000 = Group 13 Interrogation
0x00004000 = Group 14 Interrogation
0x00008000 = Group 15 Interrogation
0x00010000 = Group 16 Interrogation
0x10000000 = Reported with Cyclic Data
DEFAULT: 0x10000001
MMENC_groupMask
Set the default interrogation group for MMENC data. This parameter is only used for slave sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x00000001 = General Interrogation
0x00000002 = Group 1 Interrogation
0x00000004 = Group 2 Interrogation
0x00000008 = Group 3 Interrogation

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 251

SCADA Data Gateway | Implementers Guide


0x00000010 = Group 4 Interrogation
0x00000020 = Group 5 Interrogation
0x00000040 = Group 6 Interrogation
0x00000080 = Group 7 Interrogation
0x00000100 = Group 8 Interrogation
0x00000200 = Group 9 Interrogation
0x00000400 = Group 10 Interrogation
0x00000800 = Group 11 Interrogation
0x00001000 = Group 12 Interrogation
0x00002000 = Group 13 Interrogation
0x00004000 = Group 14 Interrogation
0x00008000 = Group 15 Interrogation
0x00010000 = Group 16 Interrogation
0x10000000 = Reported with Cyclic Data
DEFAULT: 0x10000001
MBONA_groupMask
Set the default interrogation group for MBONA data. This parameter is only used for slave sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x00000001 = General Interrogation
0x00000002 = Group 1 Interrogation
0x00000004 = Group 2 Interrogation
0x00000008 = Group 3 Interrogation
0x00000010 = Group 4 Interrogation
0x00000020 = Group 5 Interrogation
0x00000040 = Group 6 Interrogation
0x00000080 = Group 7 Interrogation
0x00000100 = Group 8 Interrogation
0x00000200 = Group 9 Interrogation
0x00000400 = Group 10 Interrogation
0x00000800 = Group 11 Interrogation
0x00001000 = Group 12 Interrogation
0x00002000 = Group 13 Interrogation
0x00004000 = Group 14 Interrogation
0x00008000 = Group 15 Interrogation
0x00010000 = Group 16 Interrogation
0x10000000 = Reported with Cyclic Data
DEFAULT: 0x00000001
MITNA_groupMask
Set the default interrogation group for MITNA data. This parameter is only used for slave sessions using the IEC 608705-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x01 = General Counter Interrogation
0x02 = Counter Group 1 Interrogation
0x04 = Counter Group 2 Interrogation
0x08 = Counter Group 3 Interrogation
0x10 = Counter Group 4 Interrogation
DEFAULT: 0x01
CSCNA_ctrlMask
Sets the allowed control operations for received CSCNA controls. This parameter is only used for slave sessions using
the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x01 = Allows single-pass control operations
0x02 = Allows default control operations
0x04 = Allows short pulse control operations

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 252

SCADA Data Gateway | Implementers Guide


0x08 = Allows long pulse control operations
0x10 = Allows persistent (latch) control operations
0x20 = Allows non-standard control operations
DEFAULT: 0x3f
CDCNA_ctrlMask
Sets the allowed control operations for received CDCNA controls. This parameter is only used for slave sessions using
the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x01 = Allows single-pass control operations
0x02 = Allows default control operations
0x04 = Allows short pulse control operations
0x08 = Allows long pulse control operations
0x10 = Allows persistent (latch) control operations
0x20 = Allows non-standard control operations
DEFAULT: 0x3f
CRCNA_ctrlMask
Sets the allowed control operations for received CRCNA controls. This parameter is only used for slave sessions using
the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x01 = Allows single-pass control operations
0x02 = Allows default control operations
0x04 = Allows short pulse control operations
0x08 = Allows long pulse control operations
0x10 = Allows persistent (latch) control operations
0x20 = Allows non-standard control operations
DEFAULT: 0x3f
CSENA_AllowOnePass
If true, allows one pass operations for received CSENA controls. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENB_AllowOnePass
If true, allows one pass operations for received CSENB controls. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENC_AllowOnePass
If true, allows one pass operations for received CSENC controls. This parameter is only used for slave sessions using the
IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
OBJ12_ctrlMask
Sets the allowed control operations for received OBJ12 controls. This parameter is only used for slave sessions using the
DNP3 protocol. Possible values are:
0x01 = Allows single-pass control operations
0x02 = Allows default control operations
0x04 = Allows pulse control operations
0x08 = Allows latch control operations
0x10 = Allows paired close control operations
0x20 = Allows paired trip control operations
0x40 = Allows non-standard control operations
DEFAULT: 0x7f

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 253

SCADA Data Gateway | Implementers Guide


OBJ41_AllowOnePass
If true, allows one pass operations for received OBJ41 controls. This parameter is only used for slave sessions using the
DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSCNA_syncDwnstrm
If true, then CSCNA control operations will be synchronized with downstream devices; i.e., received CSCNA controls
will not be acknowledged until the CSCNA control is sent downstream and an acknowledgement is received from
downstream. If false, then CSCNA control operations will NOT be synchronized with downstream devices; i.e., received
controls will be immediately acknowledged and the CSCNA control will be sent downstream asynchronously. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CDCNA_syncDwnstrm
If true, then CDCNA control operations will be synchronized with downstream devices; i.e., received CDCNA controls
will not be acknowledged until the CDCNA control is sent downstream and an acknowledgement is received from
downstream. If false, then CDCNA control operations will NOT be synchronized with downstream devices; i.e., received
controls will be immediately acknowledged and the CDCNA control will be sent downstream asynchronously. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CRCNA_syncDwnstrm
If true, then CRCNA control operations will be synchronized with downstream devices; i.e., received CRCNA controls
will not be acknowledged until the CRCNA control is sent downstream and an acknowledgement is received from
downstream. If false, then CRCNA control operations will NOT be synchronized with downstream devices; i.e., received
controls will be immediately acknowledged and the CRCNA control will be sent downstream asynchronously. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENA_syncDwnstrm
If true, then CSENA control operations will be synchronized with downstream devices; i.e., received CSENA controls
will not be acknowledged until the CSENA control is sent downstream and an acknowledgement is received from
downstream. If false, then CSENA control operations will NOT be synchronized with downstream devices; i.e., received
controls will be immediately acknowledged and the CSENA control will be sent downstream asynchronously. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENB_syncDwnstrm
If true, then CSENB control operations will be synchronized with downstream devices; i.e., received CSENB controls
will not be acknowledged until the CSENB control is sent downstream and an acknowledgement is received from
downstream. If false, then CSENB control operations will NOT be synchronized with downstream devices; i.e., received
controls will be immediately acknowledged and the CSENB control will be sent downstream asynchronously. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENC_syncDwnstrm
If true, then CSENC control operations will be synchronized with downstream devices; i.e., received CSENC controls
will not be acknowledged until the CSENC control is sent downstream and an acknowledgement is received from
downstream. If false, then CSENC control operations will NOT be synchronized with downstream devices; i.e., received
controls will be immediately acknowledged and the CSENC control will be sent downstream asynchronously. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 254

SCADA Data Gateway | Implementers Guide


Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSCNA_use2pass
If true, then two-pass control operations will be used for all initiated CSCNA controls. If false, then single-pass control
operations will be used for all initiated CSCNA controls. This parameter is only used for master sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CDCNA_use2pass
If true, then two-pass control operations will be used for all initiated CDCNA controls. If false, then single-pass control
operations will be used for all initiated CDCNA controls. This parameter is only used for master sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CDCTA_useTimeStamp
If true, then a time stamp will be included for a CDCTA point command to have changed will be reported. If false, then
no time stamp will be included for a CDCTA point command. This parameter is only used for master sessions using the
IEC 60870-5-104 protocol profile.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249][sector=0-63]
CSCTA_useTimeStamp
If true, then a time stamp will be included for a CSCTA point command to have changed will be reported. If false, then
no time stamp will be included for a CSCTA point command. This parameter is only used for master sessions using the
IEC 60870-5-104 protocol profile.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
INDICES: [sessionIndex=0-249][sector=0-63]
CRCNA_use2pass
If true, then two-pass control operations will be used for all initiated CRCNA controls. If false, then single-pass control
operations will be used for all initiated CRCNA controls. This parameter is only used for master sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENA_use2pass
If true, then two-pass control operations will be used for all initiated CSENA controls. If false, then single-pass control
operations will be used for all initiated CSENA controls. This parameter is only used for master sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENB_use2pass
If true, then two-pass control operations will be used for all initiated CSENB controls. If false, then single-pass control
operations will be used for all initiated CSENB controls. This parameter is only used for master sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSENC_use2pass
If true, then two-pass control operations will be used for all initiated CSENC controls. If false, then single-pass control
operations will be used for all initiated CSENC controls. This parameter is only used for master sessions using the IEC
60870-5-101 or IEC 60870-5-104 protocol profiles.

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 255

SCADA Data Gateway | Implementers Guide


Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
OBJ12_use2pass
If true, then two-pass control operations will be used for all initiated "Binary Output" controls. If false, then single-pass
control operations will be used for all initiated "Binary Output" controls. This parameter is only used for master sessions
using the DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
OBJ41_use2pass
If true, then two-pass control operations will be used for all initiated "Analog Output" controls. If false, then single-pass
control operations will be used for all initiated "Analog Output" controls. This parameter is only used for master sessions
using the DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
CSCNA_forceDflt
If true, then the default command qualifiers will always be used instead of any command qualifiers for CSCNA controls
received from upstream devices. If false, then the command qualifiers for CSCNA controls received from upstream
devices will be used if possible. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
CDCNA_forceDflt
If true, then the default command qualifiers will always be used instead of any command qualifiers for CDCNA controls
received from upstream devices. If false, then the command qualifiers for CDCNA controls received from upstream
devices will be used if possible. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
CRCNA_forceDflt
If true, then the default command qualifiers will always be used instead of any command qualifiers for CRCNA controls
received from upstream devices. If false, then the command qualifiers for CRCNA controls received from upstream
devices will be used if possible. This parameter is only used for master sessions using the IEC 60870-5-101 or IEC
60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
OBJ12_forceDflt
If true, then the default control code will always be used instead of any control codes for Binary Output controls received
from upstream devices. If false, then the control code for Binary Output controls received from upstream devices will be
used if possible. This parameter is only used for master sessions using the DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
CSCNA_dfltCmdQu
Sets the command qualifier to use, by default, for CSCNA controls. This parameter is only used for master sessions
using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0 = use default as determined by remote device
0x4 = short pulse
0x8 = long pulse
0xc = persistent (latch)
DEFAULT: 0x0

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 256

SCADA Data Gateway | Implementers Guide


CDCNA_dfltCmdQu
Sets the command qualifier to use, by default, for CDCNA controls. This parameter is only used for master sessions
using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0 = use default as determined by remote device
0x4 = short pulse
0x8 = long pulse
0xc = persistent (latch)
DEFAULT: 0x0
CRCNA_dfltCmdQu
Sets the command qualifier to use, by default, for CRCNA controls. This parameter is only used for master sessions
using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are:
0x0 = use default as determined by remote device
0x4 = short pulse
0x8 = long pulse
0xc = persistent (latch)
DEFAULT: 0x0
OBJ12_dfltCmdMode
Sets the control mode to use, by default, for Binary Output controls. This parameter is only used for master sessions
using the DNP3 protocol.
Possible values are 'Pulse', 'Latch', or 'Paired'.
DEFAULT: Latch
OptClockSyncIoa
Information Object Address (IOA) used for spontaneous transmissions of clock synchronization command when hour
change events occur. This parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104
protocol profiles.
DEFAULT: 0
OptFbackDelay
Maximum time to wait to send the Operate Feedback Poll. This parameter is only used for master sessions using the
DNP3 protocol.
DEFAULT: 0 ms
INDICES: [sessionIndex=0-249]
OptFrzRtnData
If TRUE, returns integrated totals after ACTCON of freeze or reset. This parameter is only used for slave sessions using
the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: FALSE
OptOneCharAck
If TRUE, will respond with a single character ACK (0xE5) instead of fixed length ACK (secondary function code 0) in
response to primary link function codes 0, 1, and 3. This parameter does not apply for link layer connections (sessions)
when the GATEWAY is acting as an unbalanced master.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [channelIndex=0-249]
OptOneCharRsp
If TRUE, will respond with 0xE5 in response to user data class 1 or 2 when no respond user data available. This
parameter is only used for slave sessions using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 257

SCADA Data Gateway | Implementers Guide


OptReadRtnQty
Maximum number of points to return in response to a read command. This parameter is only used for slave sessions
using the IEC 60870-5-101 or IEC 60870-5-104 protocol profiles.
Possible values are from 1 to 127.
DEFAULT: 1
OptUseCmdActterm
If TRUE, then single, double, and regulating step commands return monitored data, if available, followed by ACTTERM
when the command is complete. This is similar to ApplUse_C_SE_Actterm; that parameter is used for set point
commands, this parameter is used for all other commands. This applies to M101, M104, S101, and S104.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249][sector=0-63]
OptUseFeedbackPoll
Enables or disables operate feedback polls following control operations on this session. This parameter is only used for
master sessions using the DNP3 protocol.
Possible values are 0, 1, 'FALSE', or 'TRUE'.
DEFAULT: TRUE
INDICES: [sessionIndex=0-249]
DiagIdAuxMask
Each bit enables (1)/filters (0) display of messages in the protocol analyzer.
Possible values are:
0x000001 = physical layer
0x000002 = link layer
0x000004 = transport layer
0x000008 = application layer
0x000010 = user layer
0x000020 = man machine Interface
0x000040 = opc
0x000080 = static data
0x000100 = static object headers
0x000800 = cyclic data
0x001000 = clyclic object headers
0x000200 = event data
0x000400 = event object headers
0x020000 = timestamp
0x008000 = transmit direction
0x010000 = receive direction
0x040000 = errors
0x002000 = security data
0x004000 = security object headers
0x080000 = target layer
0x100000 = IEC 61850
DEFAULT: 0x17ffff

1994 - 2009 Triangle MicroWorks, Inc. All rights reserved.

Page 258

You might also like