Você está na página 1de 311

SCADA Data Gateway

SCADA Data Gateway | Implementers Guide

SCADA Data Gateway Implementation Guide


Software Release Version 2.54

Manual Revised: January 2012

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

Page | i

SCADA Data Gateway | Implementation 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.

Page | ii

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

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 - 2012 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 Quick Start Guide.pdf SDG 61850 Quick Start Guide.pdf SDG Whats New (located on the Triangle MicroWorks website)

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | iii

SCADA Data Gateway | Implementation Guide

Implementers Guide Contents


1. Overview ........................................................................................................................................................10 1.1 Purpose of this Manual .........................................................................................................................10 1.2 Introduction to SDG..............................................................................................................................10 1.3 SDG Components .................................................................................................................................12 1.3.1 Master/Client Components of the SDG ...................................................................................12 1.3.2 Slave/Server Components of the SDG.....................................................................................12 1.3.3 Master / Slave Data Flow ........................................................................................................13 1.3.3.1 Sequence from remote Slave devices to Master Component data collection .............13 1.3.3.2 Command Sequence from Remote Master Devices ...................................................13 1.4 Data Point Addressing ..........................................................................................................................14 1.4.1 Communication Channels ........................................................................................................14 1.4.2 Sessions....................................................................................................................................15 1.4.3 Sectors......................................................................................................................................16 1.4.4 External OPC Servers ..............................................................................................................17 1.4.5 The OPC Alarm and Event Server ...........................................................................................18 1.5 Modem Pools ........................................................................................................................................18 Installation and Setup ..................................................................................................................................20 2.1 System Requirements ...........................................................................................................................20 2.2 SDG Performance .................................................................................................................................20 2.3 Installing the SCADA Data Gateway ...................................................................................................21 2.4 SCADA Data Gateway Licensing ........................................................................................................21 2.4.1 Standard License......................................................................................................................22 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 ...................................................................24 2.4.3.3 Remove an Existing License ......................................................................................24 2.4.3.4 Transferring a License ................................................................................................25 2.5 Running the SDG as a Service ..............................................................................................................26 2.5.1 Installation, Removal and Setup ..............................................................................................26 2.5.2 Service Configuration and Startup ..........................................................................................26 2.5.3 Service Monitor .......................................................................................................................29 2.5.4 Service Events and Status Messages .......................................................................................29 User Interface................................................................................................................................................31 3.1 Main Window .......................................................................................................................................31 3.2 Configuration Window Interface ..........................................................................................................32 3.2.1 Refreshing the Display ............................................................................................................32 3.2.2 Configuration Toolbar Menus .................................................................................................33 3.2.3 Configuration Window Menu Items ........................................................................................33 3.2.3.1 File Menu ....................................................................................................................33 3.2.3.2 Edit Menu ...................................................................................................................34 3.2.3.3 View Menu .................................................................................................................34 3.2.3.4 Window Menu ............................................................................................................35 3.2.3.5 Help Menu ..................................................................................................................35 3.2.4 Context Menus .........................................................................................................................36 3.3 Protocol Analyzer .................................................................................................................................36 3.3.1 Protocol Analyzer Toolbar Menus ..........................................................................................37 3.3.2 Protocol Analyzer Menu ..........................................................................................................37 3.3.2.1 File Menu ....................................................................................................................37 Page | 4 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

2.

3.

SCADA Data Gateway | Implementers Guide

4.

3.3.2.2 Edit Menu ................................................................................................................... 38 3.3.2.3 View Menu ................................................................................................................. 38 3.3.2.4 Options Menu ............................................................................................................. 38 3.3.2.5 Window Menu ............................................................................................................ 39 3.3.2.6 Help Menu .................................................................................................................. 39 3.3.3 Filters and Controls ................................................................................................................. 40 3.3.3.1 Filter Bar .................................................................................................................... 40 3.3.3.2 Device Filter ............................................................................................................... 40 3.3.4 Printing Analyzer Output ........................................................................................................ 41 3.3.5 Setting the Analyzer Font........................................................................................................ 41 3.3.6 Analyzer Buffer Settings ......................................................................................................... 42 3.4 Gateway Configuration Dialogs ........................................................................................................... 43 3.4.1 SDG Options ........................................................................................................................... 43 3.4.2 Gateway Properties ................................................................................................................. 44 3.4.3 Content Help ........................................................................................................................... 48 Configuration Reference ............................................................................................................................. 50 4.1 Tmwgtway.ini Initialization File .......................................................................................................... 50 4.1.1 Tmwgtway.ini Parameters ....................................................................................................... 50 4.2 Point-Mapping File .............................................................................................................................. 51 4.2.1 Saving the INI and CSV files .................................................................................................. 52 4.2.2 Selecting the INI during Start-up ............................................................................................ 53 4.3 Tags in the SDG ................................................................................................................................... 53 4.3.1 Creating Tags Automatically .................................................................................................. 53 4.4 Master Data Objects (MDOs) .............................................................................................................. 55 4.5 Slave Data Objects (SDOs) .................................................................................................................. 56 4.5.1 Editing Tag Options ................................................................................................................ 57 4.6 Internal Predefined MDO Points .......................................................................................................... 58 4.7 Internal User defined MDOs ................................................................................................................ 58 4.8 Equations .............................................................................................................................................. 62 4.9 Adding Channels .................................................................................................................................. 63 4.9.1 Adding Modem Pools.............................................................................................................. 63 4.9.1.1 Modem Pool Channel ................................................................................................. 66 4.9.2 Add TCP/IP Channel Dialog ................................................................................................... 67 4.9.3 Serial Channel ......................................................................................................................... 68 4.10 Adding Sessions ................................................................................................................................... 69 4.10.1 Master Sessions ....................................................................................................................... 70 4.10.1.1 IEC 60870-5-101 .................................................................................................... 70 4.10.1.2 IEC 60870-5-103 .................................................................................................... 72 4.10.1.3 IEC 60870-5-104 .................................................................................................... 74 4.10.1.4 Master DNP3 .......................................................................................................... 75 4.10.1.5 Modbus Master....................................................................................................... 78 4.10.2 Slave Sessions ......................................................................................................................... 78 4.10.3 IEC 60870-5-101 ..................................................................................................................... 78 4.10.4 IEC 60870-5-104 ..................................................................................................................... 79 4.10.5 Slave DNP ............................................................................................................................... 80 4.10.6 Modbus Slave .......................................................................................................................... 81 4.11 Adding Sectors ..................................................................................................................................... 82 4.12 Adding Data Types............................................................................................................................... 83 4.13 Editing Masks ....................................................................................................................................... 83 4.13.1 IEC Action Mask ..................................................................................................................... 84 4.13.2 DNP Action Mask ................................................................................................................... 85 4.13.3 Modbus Action Mask .............................................................................................................. 87 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 5

SCADA Data Gateway | Implementation Guide

4.14 Adding an IEC 61850 Client ................................................................................................................88 4.14.1 Adding an IEC 61850 Report Control Block...........................................................................90 4.14.2 Adding an IEC 61850 Data Attribute from the Report Control Block ....................................92 4.14.3 Adding an IEC 61850 Command Point ...................................................................................94 4.14.3.1 Adding an IEC 61850 Command Point ..................................................................95 4.14.4 Other mechanisms to obtain Data from a 61850 Server ..........................................................96 4.14.4.1 GOOSE Control Blocks ..........................................................................................96 4.14.4.2 Polled Data Sets ......................................................................................................96 4.14.4.3 Polled Point Sets .....................................................................................................96 4.15 Adding an Alarm and Event Client.......................................................................................................96 4.15.1 Adding OPC AE Client Items ..................................................................................................99 4.15.2 OPC Alarm and Event MDO .................................................................................................101 4.15.2.1 Event MDO ...........................................................................................................101 4.15.2.2 Event Attribute MDOs ..........................................................................................102 4.15.2.3 OPC AE MDO Options ........................................................................................103 4.16 Adding an OPC Data Access Client ...................................................................................................105 4.16.1 OPC Client Items ...................................................................................................................108 4.16.2 OPC Client Tag Properties ....................................................................................................110 4.17 SDG ODBC Client..............................................................................................................................112 4.17.1 Adding an ODBC Client ........................................................................................................113 4.17.2 Selecting an ODBC Data Source ...........................................................................................114 4.17.3 Adding an ODBC Query........................................................................................................115 4.17.4 Executing an ODBC Query ...................................................................................................117 4.17.5 Mapping a query MDO ..........................................................................................................118 4.17.6 Parameter Based Queries .......................................................................................................119 4.17.7 Mapping Items to Parameters Defined in a Query ................................................................122 4.17.8 "Triggering" the ExecuteQuery MDO ...................................................................................123 4.17.1 Polling the Data Source for Changes .....................................................................................127 4.18 Adding a TASE.2 Server ....................................................................................................................127 4.18.1 Mapping Points from the DNP3 Master to the TASE.2 Server.............................................129 4.18.2 Mapping Points from Master Components to Slave Components.........................................131 4.18.3 Mapping Points from Master Components to Master Components ......................................132 4.18.4 Mapping Points from Slave Components to Slave Components ...........................................133 4.19 OPC Server Registration for SDG Service and GUI ..........................................................................134 4.20 Setting IEC 60870-5-101 and -104 Slave Data Types to use Time Stamps .......................................134 4.21 Setting DNP3 Event Types and Default Variations ...........................................................................135 4.21.1 Mapping points to the Internal OPC Server ..........................................................................135 4.21.1.1 OPC Server Point Properties ................................................................................136 4.21.2 Mapping Points to an External OPC Server ..........................................................................137 4.21.3 Format of the Point-Mapping file ..........................................................................................137 4.21.4 Master and Slave Component Columns.................................................................................138 4.21.5 Definition of Fields contained in the Point Mapping File .....................................................141 4.21.5.1 Point Identification Fields ....................................................................................141 4.21.5.2 Data Options Field ................................................................................................141 4.21.5.3 Table of Control Options and the Meaning ..........................................................141 4.21.5.4 LOGMSKxxxx and OPCAE_LOGMSKxxxx Events used in the MDO option field ...........................................................................................................................150 4.21.5.5 Physical Tag Name ...............................................................................................150 4.21.5.6 User Tag Name .....................................................................................................151 4.21.5.7 Equation Field.......................................................................................................151 4.21.5.8 Supported Operators Used in Expressions ...........................................................153 Page | 6 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

5. 6.

4.21.5.9 Examples of Valid Expressions ........................................................................... 153 4.21.5.10 Description ......................................................................................................... 153 4.22 Data Points ......................................................................................................................................... 154 4.22.1 Modbus Point Numbering ..................................................................................................... 154 4.22.2 Point Initialization ................................................................................................................. 154 4.22.3 Translating data types between different protocols (Master to Slave mapping) .................. 155 4.22.3.1 SDG Database Storage Formats ........................................................................... 156 4.22.3.2 SDG Database Standard Quality Flags ................................................................ 157 4.22.3.3 IEC 60870-5-101 and IEC60870-5-104 ............................................................... 158 4.22.3.4 IEC 60870-5-103 .................................................................................................. 161 4.22.3.5 DNP3 .................................................................................................................... 162 4.22.3.6 Modbus ................................................................................................................. 163 4.22.3.7 OPC Reads ........................................................................................................... 165 4.22.3.8 OPC Writes .......................................................................................................... 166 4.22.4 Predefined Tag Names for Monitoring and Control ............................................................. 167 4.22.4.1 Characteristics of Predefined Tag Names ............................................................ 167 4.22.4.2 Action Mask and Period ....................................................................................... 171 4.22.4.3 DNP Action Mask ................................................................................................ 171 4.22.4.4 DNP Action Now Status ...................................................................................... 172 4.22.4.5 DNP Action Mask Examples ............................................................................... 173 4.22.4.6 IEC Action Mask .................................................................................................. 174 4.22.4.7 Modbus Action Mask ........................................................................................... 175 4.23 SDG Clock ......................................................................................................................................... 175 4.23.1 Event Time Tags and Database Update Times ..................................................................... 175 4.24 Sequence of Event Log Files ........................................................................................................... 176 4.24.1 Event Log File Names ........................................................................................................... 179 4.24.2 Event Log Record Format ..................................................................................................... 179 4.24.2.1 Value Field Names (VFN_Table) ........................................................................ 180 4.24.2.2 Update Date and Time Field Names (UDTF_Table) ........................................... 181 4.24.2.3 Reported Date and Time Field Names (RDT_Table) .......................................... 182 4.24.2.4 Identification Field Names (IFN_Table) .............................................................. 183 4.24.2.5 Escape sequences within Event Log Record Formats (ELR_Table) ................... 184 4.24.3 Flush Period .......................................................................................................................... 185 4.24.4 Log Mask............................................................................................................................... 185 4.25 DNP3 Datasets ................................................................................................................................... 186 4.25.1 Background ........................................................................................................................... 186 4.25.2 Prototypes .............................................................................................................................. 186 4.25.3 Descriptors ............................................................................................................................ 188 4.25.4 Dataset Present Values .......................................................................................................... 191 4.25.5 Dataset Present Value Mapping ............................................................................................ 191 SCADA Data Gateway Technical Support .............................................................................................. 193 Troubleshooting ......................................................................................................................................... 194 6.1 Running the SDG on Windows Vista / Windows 7 ........................................................................... 194 6.2 Running the SDG on a Virtual Machine ............................................................................................ 194 6.3 Errors in the Point Mapping File When Saving the SDG .................................................................. 194 6.4 Network: Network Driver Appears To Not Be Serving This Directory Dialog ................................ 194 6.5 No communication with a remote device seems to be occurring ....................................................... 194 6.5.1 Physical layer error: Error opening channel ...................................................................... 194 6.5.1.1 TCP/IP Connection .................................................................................................. 195 6.5.1.2 Serial Connection ..................................................................................................... 195 6.5.1.3 Modem Channels ..................................................................................................... 195 6.5.2 Configuration ........................................................................................................................ 195 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 7

SCADA Data Gateway | Implementation Guide

6.6 6.7

7. 8. 9.

6.5.3 Other issues............................................................................................................................195 Timeout waiting for application layer response fragment or restart." Message is displayed ...........196 Missing DLL Files ..............................................................................................................................196 6.7.1 Missing Microsoft Visual C Run-time Components .............................................................196 6.8 Error Starting the GTWService - Missing Localization DLL (VC80.MCFLOC)..............................196 6.9 Using an RS-232/RS-485 Converter with the SCADA Data Gateway ..............................................196 6.10 Setting Command and Control Modes for Binary Outputs in DNP3 Master Sessions ......................197 6.11 After installing Windows XP Service Pack 2, OPC Communications via DCOM no longer work...197 Configuring a Data Source for the SDGs ODBC Client .........................................................................198 Glossary of Terms.......................................................................................................................................202 Tmwgtway.ini Parameter List ..................................................................................................................205

Page | 8

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

SCADA Data Gateway | Implementers Guide

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

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

Page | 9

SCADA Data Gateway | Implementation 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: 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

1.2

Introduction to SDG

The SDG is a Windows application that acts as an OPC Client/Server, Data Concentrator, and Protocol Translator. The SDG currently supports the following protocol components: DNP3, IEC 60870-5-101, IEC 60870-5-103, IEC 60870-5-104, Modbus, OPC Client, and OPC Server. IEC 61850 Client and ODBC Client support is also available. In addition, it supports OPC (Data Access, XML Data Access, and Alarm & Events) for interfacing with Windows PC-based SCADA Systems.

Page | 10

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 11

SCADA Data Gateway | Implementation 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/Client Components of the SDG


Master Components are used to: Read/Receive data from remote Slave/Server devices and to present this data to the SDG database for use by SDG Slave/Server 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 external OPC Servers Monitor polling status of remote Slave devices

1.3.2 Slave/Server 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 Page | 12 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 13

SCADA Data Gateway | Implementation Guide

1.4

Data Point Addressing

The following Point addressing discussion applies to the DNP3, IEC60870-5-101, IEC60870-5-103, IEC60870-5-104 and Modbus protocols, note that for the other protocols supported the Channel/Session/Sector metaphor does not apply. 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. Page | 14 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 15

SCADA Data Gateway | Implementation 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.

Page | 16

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

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.21.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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 17

SCADA Data Gateway | Implementation 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.23.1 Event Time Tags and Database Update Times on page 175 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.24 page 176).

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. In other words ensure that the Session and Sector addresses are globally unique in the SDG.

Page | 18

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 19

SCADA Data Gateway | Implementation 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: Windows XP Service Pack 2 (or later) Windows XP Embedded Windows Vista Service Pack 2 Windows 2003 Server Windows 7 (32-bit and 64-bit) Windows 2008 Server (32-bit and 64-bit)

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 IEC60870-5) 250 61850 clients 250 Tase2 servers 25 RCBs per 61850 client 25 GCBs per 61850 client 50 Polled Data Sets per 61850 client 50 Polled Point Sets per 61850 client 20 OPC clients 20 ODBC Database clients 20 OPC-AE clients 64 Modem Pools 250 Modems

Page | 20

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

SCADA Data Gateway | Implementers Guide

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/XP it will run the setup.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. 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 ICCP/TASE.2 Server 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) Alarm Symbol M101 M102 M103 M104 S101 S102 S103 S104 IEC 61850 Client ICCP/TASE.2 Server MDNP SDNP MMB SMB OPC Server OPC Alarm and Event Server OPC Alarm and Event 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 Page | 21

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

SCADA Data Gateway | Implementation Guide

and Event Client OLE For Process Control (OPC) Data Access Client OPC XML Server OPC XML Client ODBC Database Client

Client OPC Client XML Data Access Server XML Data Access Client ODBC Client

Currently Supported Currently Supported Future Currently Supported

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.

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.

Page | 22

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

SCADA Data Gateway | Implementers Guide

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. 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 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 23

SCADA Data Gateway | Implementation Guide

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. 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.

Page | 24

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

SCADA Data Gateway | Implementers Guide

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 25

SCADA Data Gateway | Implementation 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 SDG Options dialog box, to specify the INI file for the service. This dialog box is accessed by select ViewOptions from the SDG main menu .

Page | 26

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

SCADA Data Gateway | Implementers Guide

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 at SDG 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 cannot run at the same time. 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 27

SCADA Data Gateway | Implementation 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:

Page | 28

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

SCADA Data Gateway | Implementers Guide

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.

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.

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

Page | 29

SCADA Data Gateway | Implementation Guide

The Event log along with the protocol analyzer log should be used to troubleshoot problems.

Page | 30

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 31

SCADA Data Gateway | Implementation 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

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.

Page | 32

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

SCADA Data Gateway | Implementers Guide

3.2.2 Configuration Toolbar Menus

3.2.3 Configuration Window Menu Items


The following menu items are available for the Configuration Window: 3.2.3.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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 33

SCADA Data Gateway | Implementation Guide

3.2.3.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.3.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. Page | 34 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

3.2.3.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.3.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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 35

SCADA Data Gateway | Implementation Guide

3.2.4 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.

Page | 36

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

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. Page | 37

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

SCADA Data Gateway | Implementation 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.

Page | 38

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 39

SCADA Data Gateway | Implementation 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: Page | 40 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 41

SCADA Data Gateway | Implementation 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

Page | 42

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

SCADA Data Gateway | Implementers Guide

3.4 3.4.1

Gateway Configuration Dialogs SDG Options

The following dialog is used to set the SDG options. To display the SDG Options dialog box, click on ViewOptions from the SDG menu:

Property Auto Refresh Time (ms)

Description 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.

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

Page | 43

SCADA Data Gateway | Implementation Guide

Enable Use of Paths

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 next to the INI File parameter and select the location of the INI file. * 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 dependent on the OPC client and operating system (this usually defaults to C:\winnt\system32). disables saving the configuration files automatically when the SDG exits. path to the SDG INI file path to the SDG Help file path to the INI file that will be used when the SDG is run as a service parameters available for setting the SDG Service start-up options (6) when the SDG GUI is exited.

Disable Save On Exit INI File (Paths) HELP File INI File (Service) Startup Options

3.4.2 Gateway Properties


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

Page | 44

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

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. 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.

Accept Clock Syncs

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

Page | 45

SCADA Data Gateway | Implementation Guide

Auto Save Period

Initial Window Mode Equation 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.

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

Page | 46

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

SCADA Data Gateway | Implementers Guide

OPC Event Time Source

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.

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

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.

The Log Masks are grouped as follows: 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 47

SCADA Data Gateway | Implementation Guide

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 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

Page | 48

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

SCADA Data Gateway | Implementers Guide

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

Page | 49

SCADA Data Gateway | Implementation Guide

4. Configuration Reference
This section discusses the configuration of the SDG. The SDG application configuration is specified in a file, called tmwgtway.ini.

4.1

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.1.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.

Page | 50

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

SCADA Data Gateway | Implementers Guide

Parameter
PhysComChannel PhysComBaud PhysComParity PhysComDataBits PhysComStopBits PhysComIpPort PhysComIpMode SessionLinkAddress SessionLocalAddress PhysComProtocol SessionCommIndex LinkConfirmMode LinkSizeAddress LinkMode DbasSectorAddress ASDUsizeCmnAddr ASDUsizeCot ASDUsizeIOA

DNP
X X X X X X X X X X X X

101
X X X X X

103
X X X X X

104
X

MB
X X X X X X X X

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 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

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

For a complete listing of all the parameters contained in the tmwgtway.ini configuration file, please see the section on Tmwgtway.ini Parameter List.

4.2

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 51

SCADA Data Gateway | Implementation Guide

Organization of Point Mapping File Data

4.2.1

Saving the INI and CSV files

The configuration (INI) file and point mapping (CSV) files are saved each time the SDG exits unless the Disable Save On Exit option has been selected . This option will prevent the files from automatically being saved when the SDG exits, but the configuration can still be saved manually by use the Save option under the File menu (FileSave):

Page | 52

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

SCADA Data Gateway | Implementers Guide

4.2.2

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)

4.3

Tags in the SDG

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.21.5 Definition of Fields contained in the Point Mapping File for additional information about the fields on the below dialog boxes.

4.3.1

Creating Tags Automatically


Page | 53

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

SCADA Data Gateway | Implementation Guide

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).

Page | 54

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

SCADA Data Gateway | Implementers Guide

4.4

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 55

SCADA Data Gateway | Implementation 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:

4.5

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:

Page | 56

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

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:

4.5.1 Editing Tag Options


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

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

Page | 57

SCADA Data Gateway | Implementation Guide

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.

4.6

Internal Predefined MDO Points

Internal points or predefined points are MDOs that provide certain status and control operations for the SDG. (See section 4.22.4 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.

4.7

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:

Page | 58

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 59

SCADA Data Gateway | Implementation 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:

Page | 60

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 61

SCADA Data Gateway | Implementation Guide

4.8

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.

Page | 62

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

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.21.5.7 Equation Field for more information on the options and restrictions for equations.

4.9

Adding 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.

4.9.1 Adding 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 63

SCADA Data Gateway | Implementation 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* Page | 64 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 65

SCADA Data Gateway | Implementation Guide

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

4.9.1.1 Modem Pool Channel

Parameter Session Protocol Dial Out Page | 66

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 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

Modem Pool Phone Number Wait For Answer

Redial Attempts

Idle Time

Alias Name

channel will attempt to dial the telephone number on a modem specified in 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

4.9.2 Add TCP/IP Channel Dialog

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

Page | 67

SCADA Data Gateway | Implementation 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

4.9.3 Serial Channel

Parameter Session Protocol COM Port Baud Rate Page | 68

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. 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

Parity Data Bits Stop Bits Flow Control

Sets the parity for corresponding serial port. Possible values are 'none', '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

Offline Poll Period

Alias Name

4.10 Adding 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 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

Incremental Response Timeout

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

Page | 69

SCADA Data Gateway | Implementation Guide

4.10.1 Master Sessions


4.10.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 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 70

SCADA Data Gateway | Implementers Guide

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 Class 2 Pending Delay 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 Class Pending Count 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 Class 1 Poll Delay 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 Class 1 Pending Delay 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 Class 1 Poll Count 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 ASDU COT Size Number of octets (bytes) in Cause of Transmission (COT) field of ASDU. This parameter is only used for master and slave 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 71

SCADA Data Gateway | Implementation Guide

ASDU Address Size

Originator Address

ASDU IOA Size

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

4.10.1.2 IEC 60870-5-103

Parameter Page | 72

Description 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

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" Link Max Retries 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 Link Confirm Timeout 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 Class 2 Poll Delay 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 Class 2 Pending Delay 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 Class Pending Count 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 Class 1 Poll Delay 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 Class 1 Pending Delay 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 Class 1 Poll Count 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 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 73

Controlled Station Link Address

SCADA Data Gateway | Implementation 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

4.10.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

Page | 74

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

SCADA Data Gateway | Implementers Guide

4.10.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 Page | 75

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

SCADA Data Gateway | Implementation 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.

4.10.1.4.1 DNP3 Secure Authentication Settings

Parameter HMAC Algorithm Reply Timeout (ms) Key Change Interval (ms) Page | 76

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 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

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. 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.

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

Page | 77

SCADA Data Gateway | Implementation Guide

4.10.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

4.10.2 Slave Sessions 4.10.3 IEC 60870-5-101

Page | 78

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

SCADA Data Gateway | Implementers Guide

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

4.10.4 IEC 60870-5-104

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

Page | 79

SCADA Data Gateway | Implementation Guide

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

4.10.5 Slave DNP

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Incremental Response Timeout Enable DNP3 Secure Authentication Page | 80

SCADA Data Gateway | Implementers Guide

4.10.6 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 81

SCADA Data Gateway | Implementation Guide

4.11 Adding 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

Page | 82

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

SCADA Data Gateway | Implementers Guide

4.12 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. To add additional data types to the sector or session, right-click on the sector/session and select Add Data Type.

4.13 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 83

SCADA Data Gateway | Implementation Guide

4.13.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:

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:

Page | 84

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

SCADA Data Gateway | Implementers Guide

4.13.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 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 85

SCADA Data Gateway | Implementation 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) 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 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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

SCADA Data Gateway | Implementers Guide

7 (canceled)

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.

4.13.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 right-clicking 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:

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.

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

Page | 87

SCADA Data Gateway | Implementation Guide

4.14 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:

Page | 88

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

SCADA Data Gateway | Implementers Guide

Parameter Name Server IP Address Server TCP Port Client IP Address AE Invoke ID AE Qualifier AP Invoke ID Application ID Presentation Selector Session Selector Transport Selector GOOSE Adapter Password Authentication Mode SCL File Use SCL File IED Name

Description The name of the client. The TCP/IP address of the server to connect to. The TCP/IP port of the server to connect to. Specifies the IP address of this IEC 61850 Client. This can be useful to select a different network adapter. ASCE AE invoke ID. Value from 0 to 65536 ASCE AE qualifier. Value from 0 to 65536 Invoke ID ASCE AP invoke ID. Value from 0 to 65536 ACSE AP title of the Server Presentation selector of the Server Session selector of the Server Transport Selector of the Server The adapter to use for GOOSE communications. The password for authentication Whether to use Authentication or not The SCL/ICD/CID file used to configure the client from. To allow switching between and on-line configuration or an off-line configuration. The IED Name of the IED in the SCL file to load if using a SCL file Page | 89

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

SCADA Data Gateway | Implementation Guide

Reconnect Re-try Count Reconnect Time (msecs) Connect Timeout (msecs)

How many time to reconnect (0 is forever). How often to attempt re-connection if a connection fails. The time to wait for a valid connection.

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. When a client is added the following MDOs are added to indicate status and statistics for that 61850 client. NumDisconnects The number of time the client has disconnected from the server NumGooseDrops The number of dropped GOOSE messages NumGooseEvents The number of GOOSE control block updates received NumGooseTimeOuts The number of GOOSE timeouts that have occurred NumIntegrity The number of Integrity updates from the server NumReadResponse The number of reads completed from the server NumReportMessages - The number of report control block updates received ServerOK If true the client is connected to the server TotalBufferOverflows The number of buffer overflows that have occurred in buffered report control blocks

4.14.1 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:

Page | 90

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

SCADA Data Gateway | Implementers Guide

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. The Edit RCB button will allow you to change the trigger options and interrogation period of the Report Control Block as shown below.

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. The following status MDOs are added to the client when the Report Control Block is added: RCBName_GI use this MDO to initiate a General Interrogation on the RCB RCBName_PURGE use this MDO to purge the RCB clearing the buffered data Writing any value to these MDOs will initiate the operation.

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

Page | 91

SCADA Data Gateway | Implementation Guide

Note that you can create and add your own Data Set to a Report Control block by using the Create/Add Data Set to RCB button as shown below (select the RCB prior to creating the Data Set). In this example the phase A,B, and C Amps are added as a Data Set named MyNewDS.

4.14.2 Adding an IEC 61850 Data Attribute from the Report Control Block
Once a Report Control Block is defined we can start adding points (Data Attributes) as MDOs to the SDG. To add an IEC 61850 Item, right-click on the Report Control Block and select Add IEC 61850 Item: Page | 92 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 93

SCADA Data Gateway | Implementation 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.

4.14.3 Adding an IEC 61850 Command Point


To add an IEC 61850 Command Point to your configuration, create an IEC 61850 Client as described above and then right-click on the 61850Client node and select Add IEC 61850 Command Point:

This will display the Add a 61850 Command Point dialog screen:

Page | 94

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

SCADA Data Gateway | Implementers Guide

Next, select an item from the list by double-clicking on the desired Item Name. The Item Name should now be displayed in the Point Name textbox. Click OK to add the IEC 61850 Command Point.

Items that have a 'Command Kind' of Status Only are not writable.

The 61850 Command Point now appears in the tree under the 61850Client node:

4.14.3.1 Adding an IEC 61850 Command Point To change the value of the command point, right-click on the point and select Change Value of MDO:

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

Page | 95

SCADA Data Gateway | Implementation Guide

Note that this command point can be treated as any other command MDO in the Gateway. It can be written to just like any other writable MDO.

4.14.4 Other mechanisms to obtain Data from a 61850 Server


As the configuration of the following data gathering methods are very similar to the Report Control Block. We will not waste space with a detailed explanation of how to configure these. Instead we will simply describe their use and operation. It is recommended that the data in the below mechanisms does not overlap with other data. Note that the last mechanism to update the value in the MDO is used as the value of the MDO if the data does overlap. 4.14.4.1 GOOSE Control Blocks In order to use GOOSE Control Blocks a GOOSE adapter must be specified for the client. A GOOSE Control block has a Data Set associated with it that describes the data that is updated by the Control Block. The data attributes in the dataset can be mapped to SDG MDOs and will be updated as the GCB performs updates. GOOSE Control Blocks are typically used for providing high speed control and interlocking between equipment in a substation. As a result they are not as well suited to typical SCADA Process data as a Report Control Block would be.

4.14.4.2 Polled Data Sets Polled Data Sets are a mechanism in the SDG to read data in a specific data set from a server on a periodic basis. The SDG is responsible for issuing a read on the data set in the server to obtain the data.

4.14.4.3 Polled Point Sets The last mechanism to obtain data from a server is a Polled Point Set. This mechanism is very similar to a Polled Data Set except that it does not require a Data Set. This mechanism basically issues a read on all the points in the Polled Point set at the period specified. Note that with this mechanism there is a MDO that can be used to trigger the read operation in addition to the timer.

4.15 Adding an Alarm and Event Client


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

Page | 96

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

SCADA Data Gateway | Implementers Guide

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

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.

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

Page | 97

SCADA Data Gateway | Implementation Guide

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

Parameter Page | 98

Description 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

Node Name or IP Address Prod ID Alias Name

Buffer Time (msecs)

Max Size (events)

Reconnect Time (msecs) Reconnect Re-try Count

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 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.

4.15.1 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 99

SCADA Data Gateway | Implementation 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:

Page | 100

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

SCADA Data Gateway | Implementers Guide

The event is now added to the configuration:

4.15.2 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. 4.15.2.1 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.

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

Page | 101

SCADA Data Gateway | Implementation Guide

4.15.2.2 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:

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: Page | 102 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

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. 4.15.2.3 OPC AE MDO Options To edit the OPC AE MDO options, right-clicking on an MDO and Selecting Edit OPC AE MDO.

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

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

Page | 103

SCADA Data Gateway | Implementation Guide

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.

Parameter
ALIAS EVENT_FALSE_MSG

Description used to parse the message string of the event and look for the string 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 104

SCADA Data Gateway | Implementers Guide EVENT_TRUE_MSG EVENT_VALUE

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)
* *

LOGMASK OPCAE_LOGMASK OPCAESIMPLEEVENT OPCAETIMEREPORTED OPCAETIMEUPDATE OPCREPORTMODEPOLL OPCREPORTMODEREPORT OPCTIMEREPORTED OPCTIMEUPDATE

*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

AE_RESET_VALUE_MDO

AE_RESET_VALUE

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 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

4.16 Adding an OPC Data Access Client


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

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

Page | 105

SCADA Data Gateway | Implementation Guide

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

Parameter Node Name or IP address Prog ID Alias Name Page | 106

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 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

Refresh Rate (msecs)

Reconnect Time (msecs) Read Properties Time (msecs) Reconnect Re-try Count

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.

Find OPC Server

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

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

Page | 107

SCADA Data Gateway | Implementation 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.

4.16.1 OPC Client Items


Page | 108 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 109

SCADA Data Gateway | Implementation 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.21.2 Mapping Points to an External OPC Server for additional information about OPC Client Items.

4.16.2 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:

Page | 110

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 111

SCADA Data Gateway | Implementation 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.

4.17 SDG ODBC Client


The ODBC Client allows you to store and retrieve data from any ODBC data source including: SQL Server, Access, Excel, and text files. The following features are currently available: Automatic generation of MDOs related to fields and parameters in a SQL query SQL based query supported Support for SQL Server, Access, Excel, and text files (CSV, tab delimited, text) Supports read and write access to ODBC compliant databases through INSERT, UPDATE, DELETE and SELECT SQL Clauses Ability to single step or directly select a record in a record set Supports parameter substitution for flexible queries Test/Verification mode to help during query development

Note that some of the features listed above may not be available on all ODBC Client driver implementations. Page | 112 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

4.17.1 Adding an ODBC Client


To add an ODBC Client to your configuration, right-click on the Gateway node and select Add ODBC Client.

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

Click on Find ODBC Server to locate or create an ODBC data source.

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

Page | 113

SCADA Data Gateway | Implementation Guide

4.17.2 Selecting an ODBC Data Source

Select a Data Source Name from the list and then click OK to continue. To add a new data source, click New and follow the onscreen instructions to connect to your data source.

Once the data source has been selected, the Database Connection String should automatically be populated. Enter an Alias Name and then click OK to add the ODBC Client. The ODBC Client should now appear in the tree under the Gateway node.

Page | 114

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

SCADA Data Gateway | Implementers Guide

4.17.3 Adding an ODBC Query


After adding an ODBC data source, you will need to define the query for retrieving data from your data source. To add an ODBC query, right-click on the ODBC Client and select Add ODBC Query.

This will launch the Build Database Query dialog screen. This screen allows you to select a table to build and test your queries against.

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

Page | 115

SCADA Data Gateway | Implementation Guide

The Query Alias Name (1) allows you to define the name of the query. This is the name that will be displayed under the ODBC Client node. Please note, the name cannot contain any spaces and once the name has been defined, it cannot be changed. The Display Table (2) dropdown box allows you to select a table from your database to run a query against. The database field names and types (3) display the fields defined in the selected table. The SQL statement textbox (4) allows you to define your query and offers the following SQL commands:

Page | 116

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

SCADA Data Gateway | Implementers Guide

Command SELECT SELECT (with parameters) INSERT UPDATE DELETE

Description Retrieves data from a table Retrieves data from a table using a parameter Adds rows to an existing table Modifies a set of existing rows in the table Removes existing rows from a table

Example SELECT * FROM table_name SELECT * FROM table_name WHERE ID = ? INSERT INTO table_name (field1, field2, field3) VALUES (test, 3.45, NULL) UPDATE table_name SET field1=new value WHERE field2 = 3.45 DELETE FROM table_name WHERE field2 = 3.45

The Validate SQL button (5) executes the SQL commands entered in the SQL statement textbox. The Results pane (6) displays the results of the query defined in the SQL statement textbox.

The SDG ODBC Client provides pre-defined MDOs that allow you to execute the query and navigate the results. These MDOs are operated on by right-clicking on the desired MDO and selecting Change Value of Internal User MDO. Please note, the CurrentRecord and RecordCount MDOs cannot be operated on. Command CurrentRecord ExecuteQuery GetNextRecord MoveToRecord RecordCount Description Displays the current record number Executes the query selected under the ODBC Client node Gets the next record in the data set Navigate to the record entered by the user Displays the number of records in the data set

4.17.4 Executing an ODBC Query


To execute a user-defined query, select the desired query under the ODBC date source. Next, rightclick on the ExecuteQuery command MDO and select Change Value of Internal User MDO. 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 117

SCADA Data Gateway | Implementation Guide

On the Change Boolean Value pop-up dialog screen, click the Value checkbox and then click OK.

This will execute the selected query and display the values for each of the query MDOs defined in the database:

4.17.5 Mapping a query MDO


Mapping a query MDO is performed the same as mapping other MDOs and points in the SDG. Click and hold on the MDO you wish to map and then drag and drop it to the appropriate node in the tree:

Page | 118

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

SCADA Data Gateway | Implementers Guide

Next, set the necessary options and point number of the of the MDO you are trying to map.

The mapping should now be displayed in the mapping list located under the selected query.

4.17.6 Parameter Based Queries


The following is an example of a parameter based query that uses values input by the user to select the appropriate rows from the table. This allows you to specify a value for an MDO in the WHERE clause of the SQL statement. The parameter is denoted by a ? in the query. 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 119

SCADA Data Gateway | Implementation Guide

Since parameter based queries require input from the user, the Validate SQL button will not return the results for the query. In this example, an MDO named Param0 was created to allow you to specify the value of the ID field in the SELECT statement. Param0 can be written to prior to executing the SQL statement to specify the row that should be returned for a specific value of ID.

Page | 120

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

SCADA Data Gateway | Implementers Guide

Note: Some ODBC Driver implementations may not support parameter based queries. To set the value of your parameter, right-click on Param0 and select Change Value of Internal User MDO. Enter the desired value on the Change Analog Value pop-up dialog screen and then click OK.

For this example, we set Param0 to 3 and then retrieved the record with ID = 3 from the table using ExecuteQuery MDO as described above.

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

Page | 121

SCADA Data Gateway | Implementation Guide

The results of the query are returned with the ID =3 as defined in Param0:

4.17.7 Mapping Items to Parameters Defined in a Query


You can map MDOs, equations, and points to the parameters created in your query statement in the same way you map other items in the SDG. To map an item, for example an MDO, simply drag-and-drop the MDO on the Gateway node:

Next, locate the ODBC Client node and select the appropriate parameter (param0 in this example):

Page | 122

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

SCADA Data Gateway | Implementers Guide

4.17.8 "Triggering" the ExecuteQuery MDO


You can configure the SDG to automatically trigger the ExecuteQuery MDO using the onchange equation. This is beneficial when you want to capture the data based on the value of a particular point when it changes and update your tables accordingly. The onchange equation has the following structure: onchange(expr1, expr2, expr3) Expr1 is the value that is being monitored for any changes. Expr2 is the deadband for detecting changes. When Expr1 changes by more than Expr2, Expr1 is copied to the output of this equation. The following values can be used for Expr3: Value 0 1 2 Description copy value on positive change of Expr1 copy value on negative change of Expr1 copy value on any change of Expr1

The following example uses an INSERT query to update fields in a database using parameters defined in the query:

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

Page | 123

SCADA Data Gateway | Implementation Guide

When the value of point (P0) changes, we want the data to be written to the database table for field value1 (param0). The first step is to map point P0 to a parameter in the query; in this example param0:

Page | 124

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

SCADA Data Gateway | Implementers Guide

Next, add the onchange equation by right-clicking on the Gateway node and selecting Add Equation. On the Master Data Object Equation Editor dialog screen, select the onchange equation from the list and drag-and-drop the equation on the Equation textbox:

Select the desired parameter from the ODBC client node that contains the mapping for point P0; in this example Param0 and then define the values for Expr2 and Expr3:

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

Page | 125

SCADA Data Gateway | Implementation Guide

In the above equation, when Param0 changes by any value, either positive or negative, we want the query to be executed. Please note, since the onchange equation expects Expr1 to return a double, it may be necessary to 'cast' the return value of Expr1 to a double. This is denoted by double(Expr1). The last step is to map the onchange equation to the ExecuteQuery MDO of the ODBC Client. This is done by dragging and dropping the equation on the Gateway node and then selecting the ExecuteQuery MDO located under the INSERT node:

The equation (UpdateSQL) is now mapped to the ExecuteQuery MDO:

When the value of P0 changes, it will cause Param0 to change, which will trigger the ExecuteQuery MDO and update the appropriate fields in the database table. Page | 126 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

4.17.1

Polling the Data Source for Changes

To poll the data source for changes, you need to use the Square equation as follows: square( 0,1,5000) Next, map the above equation to the ExecuteQuery MDO of the ODBC Client.

4.18 Adding a TASE.2 Server


To add a TASE.2 Server to your SDG configuration, right-click on the Gateway node and select Add TASE.2 Server:

Next, enter a server Name and then click OK:

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

Page | 127

SCADA Data Gateway | Implementation Guide

Once the server has been created, you will need to add a TASE.2 Logical Device. This is done by rightclicking on the TASE.2 Server node and selecting Add TASE.2 Logical Device:

Enter a Name for the device and then click OK:

Page | 128

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

SCADA Data Gateway | Implementers Guide

The TASE.2 server should now be visible in the SDG configuration:

4.18.1 Mapping Points from the DNP3 Master to the TASE.2 Server
To map points from DNP3 Master Components to the TASE.2 Server, simply drag-and-drop an MDO from the DNP3 Master onto the Logical Device of the TASE.2 Server:

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

Page | 129

SCADA Data Gateway | Implementation Guide

Next, enter the Point Name and select a Type from the dropdown list. Click OK to continue:

After mapping a few points, your SDG configuration should look similar to the image below:

Page | 130

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

SCADA Data Gateway | Implementers Guide

The final step in the configuration is to restart the TASE.2 Server. This is done by right-clicking on the TASE.2 Server node and selecting Restart the TASE.2 Server:

4.18.2 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:

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

Page | 131

SCADA Data Gateway | Implementation Guide

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

4.18.3 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.

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. Page | 132 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

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:

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.

4.18.4 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 4.7 Internal User defined MDOs for more information. 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 133

SCADA Data Gateway | Implementation Guide

4.19 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

4.20 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

Page | 134

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

SCADA Data Gateway | Implementers Guide // // // // // // 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.21 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 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

Obj02DfltVariation=2

4.21.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.22.4 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. 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 Page | 135

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

SCADA Data Gateway | Implementation Guide

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.21.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 #DataType #Value #Quality #TimeStamp #AccessRights #Description OPC Property Value OPC_PROP_CDT OPC_PROP_VALUE OPC_PROP_QUALITY OPC_PROP_TIME OPC_PROP_RIGHTS 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.

Page | 136

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

SCADA Data Gateway | Implementers Guide

4.21.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.21.3

Format of the Point-Mapping file

The Point-Mapping data is stored in a 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 and usage 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/ ODBC Client Name Page | 137

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

SCADA Data Gateway | Implementation Guide

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

Master Master Master Master 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 / ODBC Query Name ASDU Address (Not used for DNP) / IEC 61850 Quality Name / IEC 61850 Data Set Element Name / ODBC_MDO if ODBC point Type ID / OPC type/ IEC 61850 Type / IEC 61850 Data Set Report Control Block Name / ODBC Point type Information Object Address/Information Number/ IEC 61850 Time Name / IEC 61850 Data Set GOOSE Control Block Name / ODBC Point 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, TASE2_MAPPING or I61850_MDO. If not specified SDO is assumed.

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

The configuration editor is used to build the Point Mapping file using a graphical user interface. The editor provides the tools required to intuitively specify the information required in the Point Mapping file. The Point Mapping 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 to facilitate a more rapid editing approach. For instance one could create some mappings through the GUI and then duplicate it many times in a text editor (through copy/paste) while changing some key fields in the Point Mapping file. 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.21.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. Page | 138 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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.21.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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 139

SCADA Data Gateway | Implementation Guide

Field User Tag

CSV file field index 1

Applies to Protocol 101, 103, 104, DNP, OPC Client, OPC AE Client, IEC 61850 101, 103, 104, DNP, OPC Client, datasets, OPC AE Client, IEC 61850 101, 103, DNP, datasets, IEC 61850 101, 103, 104, datasets, IEC 61850

Range of Values String

Corresponding INI file parameter or comment 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 PhysComChannel, OPCserverName, PhysComChnlName, I61850ServerName

Channel / Port

2,10

COM1, COM2, 127.0.0.1, Decimal Decimal

Data Link Address ASDU Address

3,11 4,12

SessionLinkAddress, I61850ReportControlBlockName 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 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. Point Number (DNP) Information Object Address (101,104) Information Number (103) Property ID for OPC client point

Type ID (101, 103) Object Group (DNP) IOA/INF

5,13

101, 103, 104, DNP, datasets, OPC Client, OPC AE Client, IEC 61850 101, 103, 104, DNP, datasets, OPC Client item properties, IEC 61850 103

Decimal

6,14

Decimal

Element Index

7,15

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 It is assumed that a remote IEC 60870-5-103 slave device will report each INF with only one function type. Identifies the dataset present values descriptor element

Function Type

8,16

103

Decimal

DNP Dataset Equation Tag Options Tag Description Mapping Mode

9 17 18,19 20 21

DNP Any All All All String String String String

Specifies the equation Specify options/properties for the tag Specify a description for the tag Provides a hint to the point map parser as to how to interpret the data in the other fields.

Page | 140

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

SCADA Data Gateway | Implementers Guide

4.21.5 Definition of Fields contained in the Point Mapping File


4.21.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.21.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.21.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 Log file Option Name 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 Meaning Record (do not record) changes/events on this point in the log file. 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 | 141

Master

OPC Alarm and Events Control

Master

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

SCADA Data Gateway | Implementation 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 Page | 142

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

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

the reported time from the remote device 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 | 143

SCADA Data Gateway | Implementation 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 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.

FQU

PQU

All Commands

TO nnn

Page | 144

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

SCADA Data Gateway | Implementers Guide

Binary In Double Point (Type ID 3)

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. 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.

Analog In (Type ID 9,11,13)

SCALE rawMin rawMax eguMin eguMax

Analog In (Type ID 9,11,13)

DEADBAND value

Step Command (Type ID 46)

ALLOW_UP ALLOW_DOWN ALLOW_ANY

Double Command (Type ID 47)

ALLOW_ON ALLOW_OFF ALLOW_ANY

Slave

Monitored Data

G01, G02, G03, , G16 (!G01, !G02, , !G16)

Binary ALLOW xxxx 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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) Control is blocked if a control operation Page | 145

SCADA Data Gateway | Implementation Guide

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

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_AS_RAW

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

Binary In Double Point (Type ID 1,2)

PROVIDE_AS_RAW

Master

Binary Data (Type ID 1,2)

RTZ

Page | 146

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

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

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.

Analog In (Type ID 30)

SCALE rawMin rawMax eguMin eguMax

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

Provide scaling value for the point. The raw analog input value will be scaled as follows: m = (eguMax-eguMin) / (rawMaxrawMin) scaledValue = m * inValue + eguMin. Page | 147

SCADA Data Gateway | Implementation Guide

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.
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

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

ALLOW

Modbus: Master

Holding Register, Coil Holding Register, Input Register

PRIORITY nnn

Sets the priority of the write command. 128 is the default if not specified. 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.

DEADBAND value

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. Allows the configuration of selective blocking of commands passed on to external slave devices. For instance

Master

Coil write

ALLOW_ON ALLOW_OFF ALLOW_ANY

Page | 148

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

SCADA Data Gateway | Implementers Guide

Master

Coil write

INVERTED_WRITE

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. 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. 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.

Master and Slave

Holding Register, Input Register

SIGNED

Modbus Slave

Holding Register, Input Register

FLOAT xxx

Table 2 Point-Mapping file options field

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

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

Page | 149

SCADA Data Gateway | Implementation Guide

4.21.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
0x0001 0x0002 0x0004 0x0008 0x0010 0x0020 0x0040 0x0080 0x0100 0x0200 0x0400 0x0800 0x1000 0x8000

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. 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 3 Types of Events used in the SOE Logger and the OPC Alarm and Event Server

4.21.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 Data Link Address ASDU Address Type ID/Object Group Point Address Element Index (103 only) Function (103 only)

Prefix L A T P (none) F

Example L3 A44 T1 P231 6 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:

Page | 150

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

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.21.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.21.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. Please refer to the examples below in Section 4.21.5.9.

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

Page | 151

SCADA Data Gateway | Implementation 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 4.8 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.

Page | 152

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

SCADA Data Gateway | Implementers Guide

4.21.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.21.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.21.5.10 Description The Description field permits comments to be entered about the point.

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

Page | 153

SCADA Data Gateway | Implementation Guide

4.22 Data Points 4.22.1 Modbus Point Numbering


Some Modbus devices use 0-based numbering, whereas other devices use 1-based addressing. A common convention is to use 1-based numbering, with a preceding digit to indicate the type of data. With the preceding digit prepended to the address, the full range is: Address 000001 - 065535 100001 - 165535 300001 - 365535 400001 - 465535 Type Digital Outputs and internal flags Digital inputs Analog inputs Analog outputs and internal Holding registers

The SDG uses the value in the protocol, which is 0 65535, with no preceding digits. Thus, values are represented as: Above convention 000001 065535 Type x 100001 165535 Type y Etc. Sdg 0 65535 0 65535

4.22.2 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. Page | 154 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

SCADA Data Gateway | Implementers Guide

Figure 12 TMW Simple OPC Client

4.22.3 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.

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

Page | 155

SCADA Data Gateway | Implementation Guide

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 Analog Input (Integer) Analog Input (Floating Point) Binary Output, Step Change (101 only) Counter Input Analog Output (Integer) Analog Output (Floating Point) Bitstring (Unsigned 32 bit)

1, 2, 10 30, 32, 40

1, 2, 3, 4, 30, 31 9, 10, 11, 12, 34, 35

1, 2

1 (discrete input) 4 (input register) *2

VT_BOOL VT_UI1, VT_I1, VT_I2 or VT_I4 VT_R4

Boolean Short or Unsigned Long

3, 9

13, 14, 36

Short Float

12

45, 46, 47

20

0 (coil) *1

VT_BOOL VT_I2 or VT_R8

Boolean Short or Unsigned Long Short or Unsigned Long

20, 21 41

15, 16, 37 48, 49 3 (holding register) *1,2

VT_I2 or VT_I4

50

VT_R4

Short Float

7, 8, 33

VT_UI4 or VT_R8

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.22.3.1 SDG Database Storage Formats Type Boolean Short Unsigned Short Long Unsigned Long Short Float Page | 156 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 32-bit short floating point number 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 value truncated to types range

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

SCADA Data Gateway | Implementers Guide

Double

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]

if required

value truncated to types range if required

4.22.3.2 SDG Database Standard Quality Flags IEC 60870-5-101 Quality Descriptor BL SB NT IV OV EI Mask Value 0x0010 0x0020 0x0040 0x0080 0x0001 0x0008 0x0100 0x0200 0x0400 0x0800

Quality Symbol STD_QLTY_BLOCKED STD_QLTY_SUBSTITUTED STD_QLTY_NOT_TOPICAL STD_QLTY_INVALID STD_QLTY_OVERFLOW STD_QLTY_INVALID_TIME STD_QLTY_REF_ERROR STD_QLTY_IN_TRANSIT STD_QLTY_UNINITIALIZED STD_QLTY_TEST

Meaning Blocked Substituted (over-ride or forced) Not topical (offline/not dated) Invalid Overflow/rollover Elapsed time invalid Reference error In transit/chatter Not set since startup Test mode

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 157

SCADA Data Gateway | Implementation Guide

4.22.3.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


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

From To SDG Database Storage

From Master Component

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

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


0 = indeterminate or intermediate state 1 = determined state OFF 2 = determined state ON 3 = indeterminate state

From To SDG Database Storage

From Master Component

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

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

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 Page | 158

From To SDG Database Storage

From Master Component

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

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 STD_QLTY_REF_ERROR is TRUE STD_QLTY_INTRANSIT is TRUE normalized value Quality Descriptors: BL, SB, NT, IV, OV

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


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

From To SDG Database Storage

From Master Component

short Standard Quality Flags: BL, SB, NT, IV, OV STD_QLTY_REF_ERROR is TRUE STD_QLTY_INTRANSIT is TRUE

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

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


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

From To SDG Database Storage

From Master Component

short float Standard Quality Flags: BL, SB, NT, IV, OV STD_QLTY_REF_ERROR is TRUE STD_QLTY_INTRANSIT is TRUE

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

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

From Master Component

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

Page | 159

SCADA Data Gateway | Implementation 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 STD_QLTY_REF_ERROR is TRUE STD_QLTY_INTRANSIT is TRUE unsigned long value Quality Descriptors: BL, SB, NT, IV, OV

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 STD_QLTY_REF_ERROR is TRUE STD_QLTY_INTRANSIT is TRUE

From Master Component


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

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 Boolean = 0 Boolean = 1 BIN_CTRL_MODE_NONE BIN_CTRL_MODE_PULSE BIN_CTRL_MODE_PULSE BIN_CTRL_MODE_LATCH

To Master Component
0 = command state OFF 1 = command state ON QU_USE_DEFAULT QU_SHORT_PULSE QU_LONG_PULSE 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 Boolean = 0 Boolean = 1 BIN_CTRL_MODE_NONE BIN_CTRL_MODE_PULSE BIN_CTRL_MODE_PULSE BIN_CTRL_MODE_LATCH

To Master Component
1 = command state OFF 2 = command state ON QU_USE_DEFAULT QU_SHORT_PULSE QU_LONG_PULSE QU_PERSISTENT

Page | 160

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

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 Boolean = 0 Boolean = 1 BIN_CTRL_MODE_NONE BIN_CTRL_MODE_PULSE BIN_CTRL_MODE_PULSE BIN_CTRL_MODE_LATCH

Master Component

1 = command state OFF 2 = command state ON QU_USE_DEFAULT QU_SHORT_PULSE QU_LONG_PULSE 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


short

To Master Component
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


short

To Master Component
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


short float

To Master Component
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


unsigned long value

To Master Component
unsigned long value

4.22.3.4 IEC 60870-5-103 Time Tagged Type IDs 1, 2 To SDG Database Storage
Boolean = 0 Boolean = 1 Boolean =0 STD_QLTY_INVALID set TRUE

From Master Component


0 = not used 1 = determined state OFF 2 = determined state ON 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

From Master Component


short float

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

Page | 161

SCADA Data Gateway | Implementation Guide

Command Type ID 20 From SDG Database Storage


Boolean = 0 Boolean = 1

To Master Component
0 = not used 1 = determined state OFF 2 = determined state ON

3 = not used 4.22.3.5 DNP3 Slave Component or Master Component Binary command
State = 0 State = 1 Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1 Chatter = 1

Binary Input, Object Group 1 and 2 To SDG Database Storage

From Master Component

Boolean = 0 Boolean = 1 STD_QLTY_UNINITIALIZED STD_QLTY_NOT_TOPICAL UPDTRSN_CTRL_BY_COMM UPDTRSN_CTRL_AT_DEVICE STD_QLTY_IN_TRANSIT

State = 0 State = 1 On-Line = 0, Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1 Chatter = 1

Slave Component
State = 0 State = 1 Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1

Binary Output Status, Object Group 10 To From SDG Database Storage Master Component
Boolean = 0 Boolean = 1 STD_QLTY_UNINITIALIZED STD_QLTY_NOT_TOPICAL UPDTRSN_CTRL_BY_COMM UPDTRSN_CTRL_AT_DEVICE State = 0 State = 1 On-Line = 0, Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1

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

Binary Output Control, Object Group 12 To From SDG Database Storage Master Component
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 = NUL Code = Latch Off Code = Latch On Code = Pulse Off Code = Pulse On Trip/Close = Close Trip/Close = Trip

Slave Component or Master Component Page | 162

Analog Input, Object Group 30 and 32 To From SDG Database Storage Master Component

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

SCADA Data Gateway | Implementers Guide

Analog command
Long, variation 1, 3 Short float, variation 5 Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1 Over Range = 1 Reference Check = 1 Long Short Float STD_QLTY_UNINITIALIZED STD_QLTY_NOT_TOPICAL UPDTRSN_CTRL_BY_COMM UPDTRSN_CTRL_AT_DEVICE STD_QLTY_OVERFLOW STD_QLTY_REF_ERROR Short, variation 2, 4 Long, variation 1, 3 Short float, variation 5 On-Line = 0, Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1 Over Range = 1 Reference Check = 1

Slave Component
0 1 Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1

Analog Output Status, Object Group 40 To From SDG Database Storage Master Component
Boolean = 0 Boolean = 1 STD_QLTY_UNINITIALIZED STD_QLTY_NOT_TOPICAL UPDTRSN_CTRL_BY_COMM UPDTRSN_CTRL_AT_DEVICE 0 1 On-Line = 0, Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1

Slave Component
Short, variation 2, 4 Long, variation 1, 3 Short float, variation 5

Analog Output Control, Object Group 41 To From SDG Database Storage Master Component
Long Short Float Long, variation 1, 3 Short float, variation 5

Slave Component
Long, variation 1, 5 Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1 Over Range = 1

Binary Counters, Object Group 20, 21, 22, and 23 To From SDG Database Storage Master Component
Unsigned Long STD_QLTY_UNINITIALIZED STD_QLTY_NOT_TOPICAL UPDTRSN_CTRL_BY_COMM UPDTRSN_CTRL_AT_DEVICE STD_QLTY_OVERFLOW Short, variation 2, 6 Long, variation 1, 5 On-Line = 0, Restart = 1 Communication Lost = 1 Remote Forced = 1 Local Forced = 1 Roll Over = 1

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

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

Page | 163

SCADA Data Gateway | Implementation Guide


State = 0 State = 1 Boolean = 0 Boolean = 1 State = 0 State = 1

To Slave Component
State = 0 State = 1 16 bit value

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 From To From Slave Component or SDG Database Storage Master Component Holding register write
value 16 bit value Unsigned short

To Master Component

value

Input Register, Type 4 To Slave Component


value

From To SDG Database Storage


Unsigned short

From Master Component


value

Page | 164

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

SCADA Data Gateway | Implementers Guide

4.22.3.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 OPC_QUALITY_OUT_OF_SERVICE set TRUE OPC_QUALITY_BAD set TRUE OPC_QUALITY_SENSOR_CAL set TRUE OPC_QUALITY_EGU_EXCEEDED set TRUE STD_QLTY_UNINITIALIZED is TRUE STD_QLTY_BLOCKED is TRUE STD_QLTY_INVALID is TRUE STD_QLTY_REF_ERROR is TRUE STD_QLTY_OVERFLOW 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

OPC_QUALITY_LAST_USABLE set TRUE

STD_QLTY_NOT_TOPICAL is TRUE

OPC_QUALITY_UNCERTAIN set TRUE OPC_QUALITY_LOCAL_OVERRIDE set TRUE

STD_QLTY_IN_TRANSIT is TRUE STD_QLTY_SUBSTITUTED is 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 165

SCADA Data Gateway | Implementation Guide

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

From OPC Client Master Component


VT_R8

Long OLE Variant Type


Longint

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

From OPC Client Master Component


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 unsigned long

From OPC Client Master Component


VT_UI4, VT_R8

4.22.3.8 OPC Writes Boolean OLE Variant Type


ToleBool

From OPC Server Slave Component


VT_BOOL

To From SDG Database Storage


Boolean

To OPC Client Master Component


VT_BOOL

Short OLE Variant Type


Smallint

From OPC Server Slave Component


VT_I2

To From SDG Database Storage


Short

To OPC Client Master Component


VT_I2

Short Float OLE Variant Type


Single

From OPC Server Slave Component


VT_R4

To From SDG Database Storage


short float

To OPC Client Master Component


VT_R4

Double Float OLE Variant Type


Double Float

From OPC Server Slave Component


VT_R8

To From SDG Database Storage


double float

To OPC Client Master Component


VT_R8

Long OLE Variant Type


Longint

From Page | 166

To

From

To

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

SCADA Data Gateway | Implementers Guide

OPC Server Slave Component


VT_I4

SDG Database Storage


long

OPC Client Master Component


VT_I4

Unsigned Long OLE Variant Type


Unsigned Longint

From OPC Server Slave Component


VT_UI4, VT_R8

To From SDG Database Storage


unsigned long

To OPC Client Master Component


VT_UI4, VT_R8

4.22.4 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.22.4.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. M/S M/S PROTOCOL All TYPE R/O Bin 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 | 167

PREDEFINED TAG NAME

GatewayOnline

SOECounter

M/S

All

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

ChannelsOfflineCounter

M/S

All

ChannelsOnlineStatus DataBaseUpdateQSize

M/S M/S

All All

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

SCADA Data Gateway | Implementation Guide

PREDEFINED TAG NAME DbQsizeExceededErrorLimit

M/S M/S

PROTOCOL All

TYPE R/O Bin

DbQsizeExceededWarningLimit

M/S

All

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

OPCClient_X.CurrentServerTim e OPCClient_X.LastUpdateTime OPCClient_X.NumGroups OPCClient_X.PercentBandWidt h OPCClient_X.ServerOK OPCClient_X.ServerStartTime OPCClient_X.ServerStatus OPCClient_X.VendorInfo COMx.ChannelRedialLimitCont rol

N/A N/A N/A N/A N/A N/A N/A N/A M/S

N/A N/A N/A N/A N/A N/A N/A N/A All

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

COMx.NumChecksumErrors

M/S

All

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

COMx.NumConfirmFailures COMx.NumLengthErrors

M/S M/S

All All

COMx.NumSyncErrors

M/S

All

COMx.NumTimeoutErrors COMx.TotalErrors COMx.NumPhysCharTimeoutEr rors COMx.NumPhysXmitErrors

M/S M/S M/S M/S

All All All All

Page | 168

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

SCADA Data Gateway | Implementers Guide

PREDEFINED TAG NAME COMx.NumRxBytes COMx.NumTxBytes COMx.NumTxFrames COMx.NumRxFrames COMx.ChannelSessionsOnLineS tatus COMx.SessionsOfflineCounter

M/S M/S M/S M/S M/S M/S M/S

PROTOCOL All All All All All All

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

COMx.T1AckTime

104

COMx.T1MaxAckTime

104

R/W Int

COMx.NumTxFragments COMx.NumRxFragments COMx.Ly.OnLineStatus *

M/S M/S M/S

DNP DNP 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 COMx.Ly.NumTxASDUs

M/S M/S M/S

All All All

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

DESCRIPTION Total number of bytes received on this channel 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 Page | 169

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

SCADA Data Gateway | Implementation Guide

PREDEFINED TAG NAME COMx.Ly.NumRxASDUs COMx.Ly.CreateTagsAuto

M/S M/S M

PROTOCOL All All

TYPE R/W Int R/W Bin

COMx.Ly.ColdRestartNow

DNP3

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

COMx.Ly.WarmRestartNow

DNP3

COMx.Ly.DNPActionNow COMx.Ly.DNPActionMask0-4 COMx.Ly.DNPActionPrd0-4

M M M

DNP3 DNP3 DNP3

COMx.Ly.Az.IECActionNow
COMx.Ly.Az.IECActionMask0-4 COMx.Ly.Az.IECActionPrd0-4

M
M M

101, 103, 104


101, 103, 104 101, 103, 104 101,103,104

DESCRIPTION Number of fragments received on this channel 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.

COMx.Ly.Az.CreateTagsAuto

R/W Bin

COMx.Ly.Az.Reset101RemoteNow *

101, 104

R/W Int

COMx.Ly.Az.Reset103RemoteNow

103

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

COMx.Ly.Az.ClearEventBuffers * COMx.Ly.Az.ResetCountersNow

S M

101, 104 101, 104

Page | 170

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

SCADA Data Gateway | Implementers Guide

PREDEFINED TAG NAME


COMx.Ly.Az.FreezeCountersNow COMx.Ly.Az.TestNow

M/S
M M

PROTOCOL
101, 104 101, 104

TYPE
R/W Bin R/W Bin

DESCRIPTION
Write true (1) to issue an application level freeze counters command. 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.

COMx.Ly.Az.NumMissingResponse s* COMx.Ly.Az.TotalEventOverflows * COMx.Ly.Az.Tt.NumEventOverflo ws *

M S

101, 103, 104 101, 104

R/W Int R/W Int

101, 104

R/W Int

Table 5 Predefined Tag Names * Link Address not used for IEC 60870-5-104, Sector Address not used for DNP3

4.22.4.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.22.4.3 DNP Action Mask Bit Position 0 (LSB) 1 2 3 4 5 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 Page | 171

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

SCADA Data Gateway | Implementation Guide

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

Read Frozen Counter Change Events 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.22.4.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) 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. 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 172

SCADA Data Gateway | Implementers Guide

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

7 (canceled)

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 useful to sequence a set of commands/requests on a serial multi-drop connection.

4.22.4.5 DNP Action Mask Examples 4.22.4.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.22.4.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.22.4.5.3 Specific Points 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 173

SCADA Data Gateway | Implementation 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.22.4.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) Notes: 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

Page | 174

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

SCADA Data Gateway | Implementers Guide

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. 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.22.4.7 Modbus Action Mask Bit Position 0 (LSB) 1 2 3 4 31 (MSB) 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. Action Read Coils Read Holding Registers Read Discrete Inputs Read Input Registers Not Used

4.23 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.23.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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 175

SCADA Data Gateway | Implementation 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.24

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

Page | 176

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 177

SCADA Data Gateway | Implementation 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

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

Page | 178

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

SCADA Data Gateway | Implementers Guide

Parameter Name
MDNPType1_logMask 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 Input events 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.24.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.24.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.24.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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 179

SCADA Data Gateway | Implementation Guide

An example format string: EventLogRecordFormat = %ry4-%02rmr-%02rdm %rtm,%val,%qly,%utg,%dcr


4 d se igit e ye R a D r T_ re Ta po 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 :m ed se m t e :s im R s e D .m T_ s va Ta ec l bl on ue e /o of se f t f, he e e VF t c M D N O _T qu ab : a se lit le 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 de s se cr e ipt IF io N n _T fo ab r M le D
dcr

ry4 %ry4 2000

rmr %02rmr 11

rdm

rtm

val

qly %qly, 0,

utg

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

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

Figure 13 Event Log Record Format

4.24.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 Event Property Value Field Names Description

sval

qly

sqly

rsn

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 180

SCADA Data Gateway | Implementers Guide

Field Name

Event Property 0x0001

Value Field Names Description 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

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

0x0080

0x0100 0x0200

0x0400

0x0800

0x1000 0x8000

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

4.24.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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 181

SCADA Data Gateway | Implementation 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: Update Time Quality (none) I

Utq

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.24.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 rdt rtm ry2 ry4 rmr Page | 182

Event Property Reported Date Reported Time 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

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.24.2.4 Identification Field Names (IFN_Table) The following fields describe properties of a data point that identify the point: 1994 - 2012 Triangle MicroWorks, Inc. All rights reserved. Page | 183

SCADA Data Gateway | Implementation Guide

Field Name dcr ptg

Event Property Description Physical Tag Name

Identification Field Names 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.

utg

User Tag Name Communication Channel Name Link Address Application Address Information Object Address Data Type Protocol Element Index Function Type

prt lnk app

ioa typ pcl eli ftp

Table 10 Identification Field Names Event Description

4.24.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.

Page | 184

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

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.24.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.24.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.24 page 176) 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 0x1000 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. A remote device has responded to indicate an error in a control operation. Page | 185

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

SCADA Data Gateway | Implementation Guide

0x8000

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

4.25 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.25.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.25.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:

Page | 186

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 187

SCADA Data Gateway | Implementation 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.

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.25.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):

Page | 188

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

SCADA Data Gateway | Implementers Guide

This will add the T86 and T87 data type to the configuration (see section 4.25.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:

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

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

Page | 189

SCADA Data Gateway | Implementation Guide

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:

Page | 190

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

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:

4.25.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.25.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):

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

Page | 191

SCADA Data Gateway | Implementation Guide

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.

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

Page | 192

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

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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 193

SCADA Data Gateway | Implementation 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 / Windows 7

When using these operating systems, you install the SCADA Data Gateway by first saving the file locally and then right-clicking 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. In addition, you can disable the User Account Control Settings in the Control Panel.

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

Page | 194

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

SCADA Data Gateway | Implementers Guide

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. 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


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.

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

Page | 195

SCADA Data Gateway | Implementation Guide

6.6

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

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.

Page | 196

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

SCADA Data Gateway | Implementers Guide

If your converter does not support Send Data control, you will need to acquire a different converter before using the SDG in your project. 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.21.5.3 Table of Control Options and the Meaning on page 141 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 197

SCADA Data Gateway | Implementation Guide

7. Configuring a Data Source for the SDGs ODBC Client


1. To configure a data source for use with the SDG ODBC client, you will need to access the Administrative Tools in the Windows Control Panel.

2. Next, on the ODBC Data Source Administrator dialog screen, select the System DNS tab at the top.

3. Scroll through the list and locate the type of driver for your data source, i.e. SQL Server, and then click Finish.

Page | 198

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

SCADA Data Gateway | Implementers Guide

4. Next, enter the Name, Description, and Server location for the data source and click Next.

5. On the next screen, enter the login credentials and click Next.

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

Page | 199

SCADA Data Gateway | Implementation Guide

6. Next, check the box for 'Change the default database to' and select your database from the dropdown list. Click Next to continue.

7. Next, select any items that are appropriate for your environment and then click Finish.

Page | 200

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

SCADA Data Gateway | Implementers Guide

8. Click the Test Data Source button to verify the data source is configured properly.

9. If configured properly, the data source should now appear under the System DNS tab.

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

Page | 201

SCADA Data Gateway | Implementation Guide

8. Glossary of Terms
Term APCI (Application Protocol Control Information) APDU (Application Protocol Data Unit) Application Layer 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
ASDU
Information

ASDU (Application Service Data Unit)

baseband

Client Comma Separated File (CSV) Communication Channels

control direction DNP or DNP3 EPA (Enhanced Performance Architecture)

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 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. 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Ethernet

F-Code Page | 202

SCADA Data Gateway | Implementers Guide

FUN Function Type IEC (International Electrotechnical Commission) IED IEC 101 Information Object

Function type 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 60870-5 protocol standard 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. The direction of transmission from the controlled station to a controlling station. Microsoft Windows platforms Object Linking & Embedding OLE for Process Control 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 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

IOA (Information Object Address) INF (Information Number) interoperability ISO (International Organization for Standardization) Monitoring direction OLE OPC OSI (Open System Interconnection) Physical Tag Name

Point RTU SCADA (Supervisory Control and Data Acquisition)

SDG

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

Page | 203

SCADA Data Gateway | Implementation Guide

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

User Tag Name

10 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.

100 Base T

Page | 204

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

SCADA Data Gateway | Implementers Guide

9. 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 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. Possible values are 'update', or 'reported'. DEFAULT: update InitialWindowMode Specifies whether the SDG starts minimized normal, or maximized. values are 'minimized', 'maximized', or 'normal'. DEFAULT: normal InputPollPrd Minimum amount of time between polling devices for input data. are from 20 to 10000. DEFAULT: 100 ms Possible

Possible values

MaxSOELogSize The maximum number of items allowed in the SOE Log. If this limit is exceeded oldest items are removed. A value of 0 will prevent records from being logged. Possible values are from 0 to 5000. DEFAULT: 500 count MaxSOELogSize

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

Page | 205

SCADA Data Gateway | Implementation Guide The maximum number of items allowed in the Error Log. If this limit is exceeded oldest items are removed. A value of 0 will prevent records from being logged. Possible values are from 0 to 5000. DEFAULT: 500 count 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. 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 where 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. Possible values are 'update', or 'reported'. 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. 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 If

OPCServerPreCreateNamespace if true, then the opc server namespace will be created at startup if false, then the opc server namespace will be created on demand . Possible values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: FALSE 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 OPCServerWriteTimeout The amount of time to wait for a successful write to OPC server in SYNC write mode. Does not apply if using ASYNC write mode . Possible values are from 0 to 600000 (10 minutes). DEFAULT: 90000 ms (1 minute, 30.000 seconds) OPCTimeSource Specifies the source of the time tag for OPC data points. The possible values are Update or Reported where Update means the time, relative to the SDG system clock,

Page | 206

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

SCADA Data Gateway | Implementers Guide 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. Possible values are 'update', or 'reported'. DEFAULT: reported OPCXmlDaServerName Specifies the name used by a OPC XML DA client to connect to the SDG. With the INI file defaults a local opc xml da client can connect to the SDG as follows: http://localhost:8081/SDG. DEFAULT: SDG OPCXmlDaServerPort The TCP/IP port for the OPC XML DA server. With the INI file defaults a local opc xml da client can connect to the SDG as follows: http://localhost:8081/SDG . Possible values are from 0 to 65535. DEFAULT: 8081 xmldaport OpcServerReadyDelay Delay OPC Data Access Server ready (running) state. 100 to 60000 (1 minute). DEFAULT: 1000 ms Possible values are from

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. 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 separate 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. 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 . are 0, 1, 'FALSE', or 'TRUE'. Possible values Possible values are

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

Page | 207

SCADA Data Gateway | Implementation Guide DEFAULT: TRUE RefreshOPCClientsAtStartup if true, then OPC clients will be refreshed at startup . 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE Possible values are 0,

SaveUnmappedPoints if true, then unmapped tags will be saved to the point mapping file. values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE

Possible

UseReportedTime if true, do not update time on static updates this applies to MDOs that can be reported as events . Possible values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: FALSE 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] 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.

Page | 208

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

SCADA Data Gateway | Implementers Guide 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. 'none', 'even', or 'odd'. DEFAULT: none INDICES: [modemIndex=0-249] ModemDataBits Sets the number of data bits for corresponding Modem. or '8'. DEFAULT: 8 INDICES: [modemIndex=0-249] ModemStopBits Sets the number of stop bits for corresponding Modem. or '2'. DEFAULT: 1 INDICES: [modemIndex=0-249] Possible values are

Possible values are '7',

Possible values are '1',

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 response 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 are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [modemIndex=0-249] Available for use. Possible values

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]

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

Page | 209

SCADA Data Gateway | Implementation Guide PhysComChannel Sets the Communication Channel. Examples: "COM1" , "192.168.1.25" or "ROCKYHILLSUBSTATION" (for a TCP/IP channel) On Serial port this is the com port name to use On TCP client this is the host name or IP address to set up TCP connection to On TCP server this is the host name or IP address to accept TCP connection from May be *.*.*.* indicating accept connection from any client May also be a list of ';' separated host names or ip addresses to allow connections from. On TCP Dual End Point Device this is the host names or IP address to accept TCP connection from or to connect to. May also be a list of ';' or ',' separated host names or ip addresses to allow connections from, will only try to connect to the first on the list. . DEFAULT: "" INDICES: [channelIndex=0-249] PhysComLocalIpAddress On Client Address to bind socket to. This allows you to specify which IP address to send as source address in TCP messages if there are multiple IP Addresses, for example when there are multiple Network Interface Cards (NICs). if "0.0.0.0" is used the TCP stack will choose which IP Address to use. If an address that is not present is specified, the bind will fail and the TCP stack will choose which address. This address is also used for DNP Master when sending UDP datagrams. Binding this address does not guarantee sending on a particular NIC. This is determined by the IP Routing Table depending on the destination IP Address. You can display this table by entering "route print" in a command window. It is possible to add manual routes to cause a particular NIC to be used. "route add destIPAddress gateway". Enter "route ?" for more details. On Server not currently used for listeners. (Note: this address IS used for DNP Outstation if configured for UDP ONLY) . DEFAULT: 0.0.0.0 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 608705 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

Page | 210

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

SCADA Data Gateway | Implementers Guide 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] 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. 'none', 'even', or 'odd'. DEFAULT: none INDICES: [channelIndex=0-249] Possible values are

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. values are '7', or '8'. DEFAULT: 8 INDICES: [channelIndex=0-249] PhysComStopBits Sets the number of stop bits for corresponding serial PhysComChannel. values are '1', or '2'. DEFAULT: 1 INDICES: [channelIndex=0-249] Possible

Possible

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).

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

Page | 211

SCADA Data Gateway | Implementation Guide DEFAULT: 5 seconds INDICES: [channelIndex=0-249] PhysComModemRedialLimit 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,

Page | 212

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

SCADA Data Gateway | Implementers Guide 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 INDICES: [channelIndex=0-249] PhysComChnlName Alias name for communications channel. Must be specified and be unique. 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.

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

Page | 213

SCADA Data Gateway | Implementation Guide 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 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]

Page | 214

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

SCADA Data Gateway | Implementers Guide 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: master INDICES: [channelIndex=0-249] PhysComValidateUDPAddress Whether or not to validate source address of received UDP datagram. 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 Possible

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

Page | 215

SCADA Data Gateway | Implementation Guide 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 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 . 'FALSE', or 'TRUE'. DEFAULT: FALSE INDICES: [sessionIndex=0-249] Possible values are 0, 1,

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] MDNPunsolHoldOffTime Specifies the time, in milliseconds, to hold action masks off from firing when unsolicited messages are received on this session. (a value of zero(0) disables this)This parameter is only used for master sessions using the DNP3 protocol.

Page | 216

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

SCADA Data Gateway | Implementers Guide DEFAULT: 0 ms 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] 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 received since the last key change, session keys will be updated. DEFAULT: 1000 count INDICES: [sessionIndex=0-249] DNPAuthAggressiveModeSupport Enable Aggressive mode. Possible values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [sessionIndex=0-249]

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

Page | 217

SCADA Data Gateway | Implementation Guide DNPAuthExtraDiags Output extra diagnostics to protocol analyzer. 'FALSE', or 'TRUE'. DEFAULT: FALSE INDICES: [sessionIndex=0-249]

Possible values are 0, 1,

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). user number DNPAuthUserNumber. DEFAULT: 49C87D5D90217AAFEC8074EB7152FDB5 INDICES: [sessionIndex=0-249][user=0-9] For each key there must be unique

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] 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. 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 useful 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 Possible

Page | 218

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

SCADA Data Gateway | Implementers Guide 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 SFORMAT 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 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

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

Page | 219

SCADA Data Gateway | Implementation Guide 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 multidrop 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 multidrop 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 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.

Page | 220

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

SCADA Data Gateway | Implementers Guide 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?. 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [I61850Index=0-249] Possible values are

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 INDICES: [I61850Index=0-249] I61850ServerAppID Specifies the App ID of the IEC 61850 Server to connect to. DEFAULT: "1,1,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: "00 00 00 01" INDICES: [I61850Index=0-249] I61850ServerSessionAddress Specifies the Session Address of the IEC 61850 Server to connect to. DEFAULT: "00 01" INDICES: [I61850Index=0-249] I61850ServerTransportAddress Specifies the Transport Address of the IEC 61850 Server to connect to. DEFAULT: "00 01" INDICES: [I61850Index=0-249] I61850ClientIPAddress Specifies the IP address of this IEC 61850 Client. a different network adapter. This can be useful to select

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

Page | 221

SCADA Data Gateway | Implementation Guide 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: "1,1,999,1" INDICES: [I61850Index=0-249] I61850ClientAEInvokeID Specifies the AE Invoke ID for this IEC 61850 Client. DEFAULT: 10 unit INDICES: [I61850Index=0-249] I61850ClientAEQualifier Specifies the AE Qualifier for this IEC 61850 Client. DEFAULT: 12 unit INDICES: [I61850Index=0-249] I61850ClientAPInvokeID Specifies the AP Invoke ID for this IEC 61850 Client. DEFAULT: 10 unit INDICES: [I61850Index=0-249] I61850ClientPresentationAddress Specifies the Presentation Address of this IEC 61850 Client. DEFAULT: "00 00 00 01" INDICES: [I61850Index=0-249] I61850ClientSessionAddress Specifies the Session Address of this IEC 61850 Client. DEFAULT: "00 01" INDICES: [I61850Index=0-249] I61850ClientTransportAddress Specifies the Transport Address of this IEC 61850 Client. DEFAULT: "00 01" INDICES: [I61850Index=0-249] I61850AuthEnabled Should IEC 61850 authorization be enabled? (deprecated) . 1, 'FALSE', or 'TRUE'. DEFAULT: FALSE INDICES: [I61850Index=0-249] I61850AuthMechanism IEC 61850 Authorization mechanism ('None' or 'Password'). DEFAULT: None INDICES: [I61850Index=0-249] I61850AuthPWFile IEC 61850 Authorization password file (if I61850AuthPassword is not specified the 1st line in this file is used as the pass word). DEFAULT: "" Possible values are 0,

Page | 222

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

SCADA Data Gateway | Implementers Guide INDICES: [I61850Index=0-249] I61850AuthPassword IEC 61850 Authorization password. DEFAULT: "" INDICES: [I61850Index=0-249] I61850SCLFileIEDName Optional IED model to load in SCL file . DEFAULT: "" INDICES: [I61850Index=0-249] I61850SCLFileName Optional SCL File Name to load model from . DEFAULT: "" INDICES: [I61850Index=0-249] I61850LoadModelFromFileEnabled Should IEC 61850 client load model from file in I61850SCLFileName[]. values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: FALSE INDICES: [I61850Index=0-249] Possible

I61850ClientReconnectTime Specifies the reconnect timeout for the IEC 61850 Client (0 = no reconnect). DEFAULT: 5000 msecs INDICES: [I61850Index=0-249] 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 IEC 61850 server. DEFAULT: 0 count INDICES: [I61850Index=0-249] Tase2ServerLogicalDeviceName Specifies the name of a logical device on a TASE.2 Server. DEFAULT: "" INDICES: [TASE2Index=0-249][logicalDeviceIndex=0-63] Tase2ServerName Name for the Tase2 Server. DEFAULT: "" INDICES: [Tase2Index=0-249] Tase2ServerIPAddress Specifies the IP address of the Tase2 Server. DEFAULT: 127.0.0.1 INDICES: [Tase2Index=0-249] Tase2ServerAppID Specifies the App ID of the Tase2 Server. DEFAULT: "3,41,999,1" INDICES: [Tase2Index=0-249] Tase2ServerAEQualifier Specifies the AE Qualifier for the Tase2 Server. DEFAULT: 12 unit INDICES: [Tase2Index=0-249] Tase2ServerLogicalDeviceDsTransferSetCount Specifies the number of DS Transfer sets. DEFAULT: 5 count

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

Page | 223

SCADA Data Gateway | Implementation Guide INDICES: [TASE2Index=0-249][logicalDeviceIndex=0-63] Tase2ServerPresentationAddress Specifies the Presentation Address of the Tase2 Server. DEFAULT: 0.1 INDICES: [Tase2Index=0-249] Tase2ServerSessionAddress Specifies the Session Address of the Tase2 Server. DEFAULT: 0.1 INDICES: [Tase2Index=0-249] Tase2ServerTransportAddress Specifies the Transport Address of the Tase2 Server. DEFAULT: 0.1 INDICES: [Tase2Index=0-249] I61850GOOSEControlBlockName Specifies the name of a goose control block on an IEC 61850 server. DEFAULT: "" INDICES: [I61850Index=0-249][gooseIndex=0-24] I61850ReportControlBlockDataChange Specifies the Report Control Block's Data Change property. 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [I61850Index=0-249][reportIndex=0-24] Possible values are

I61850ReportControlBlockDatasetName Specifies the name of a report control block Data Set on an IEC 61850 server. DEFAULT: "" INDICES: [I61850Index=0-249][reportIndex=0-24] I61850ReportControlBlockDupChange Specifies the Report Control Block's Data Update Change property. values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [I61850Index=0-249][reportIndex=0-24] Possible

I61850ReportControlBlockIntegPeriodMonitored Specifies the Report Control Block's Integrity period monitored property. Possible values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [I61850Index=0-249][reportIndex=0-24] I61850ReportControlBlockIntegrityPeriod Specifies the period of integrity updates of a Report Control Block. DEFAULT: 0 msecs INDICES: [I61850Index=0-249][reportIndex=0-24] I61850ReportControlBlockName Specifies the name of a report control block on an IEC 61850 server. DEFAULT: "" INDICES: [I61850Index=0-249][reportIndex=0-24] I61850ReportControlBlockQualityChange Specifies the Report Control Block's Quality Change property. are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [I61850Index=0-249][reportIndex=0-24] I61850PolledDataSetName Specifies the name of the polled data set. Possible values

Page | 224

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

SCADA Data Gateway | Implementers Guide 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] I61850PolledPointSetName Specifies the name of the polled point set. DEFAULT: "" INDICES: [I61850Index=0-249][polledDataSetIndex=0-49] I61850PolledPointSetPeriod Specifies the period to read the polled point 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] OPCserverReconnectDelay Specifies the restart delay for the Reconnect Algorithm (0 = no reconnect). DEFAULT: 0 msecs 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

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

Page | 225

SCADA Data Gateway | Implementation Guide INDICES: [opcIndex=0-19] OPCClientFlatMode Display OPC Client items flat in configuration window . 1, 'FALSE', or 'TRUE'. DEFAULT: FALSE INDICES: [opcIndex=0-19] Possible values are 0,

ODBCConnectionString Specifies the connection string for this ODBC connection. DEFAULT: "" INDICES: [clientIndex=0-19] ODBCaliasName Alias Name for this ODBC connection . DEFAULT: "" INDICES: [clientIndex=0-19] ODBCQuery The SQL query to execute on this ODBC connection. DEFAULT: "" INDICES: [clientIndex=0-19][query=0-19] ODBCQueryAliasName The alias name of the query on this ODBC connection. DEFAULT: "" INDICES: [clientIndex=0-19][query=0-19] OPCAEserverNode Specifies the Node name of the OPC AE Server to connect to. DEFAULT: "" 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] OPCAEserverConnectTimeout Specifies the connect timeout for the OPC AE Server (0 = no timeout). DEFAULT: 0 tenth seconds 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.

Page | 226

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

SCADA Data Gateway | Implementers Guide 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 . '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-5-101 or IEC 60870-5-104 protocol profiles. Possible values are from 0 to 255. 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-5101 or IEC 60870-5-104 protocol profiles. Possible values are from 1 to 3. DEFAULT: 2 octets (bytes) INDICES: [sessionIndex=0-249] S101maxASDUSize Possible values are 0, 1,

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

Page | 227

SCADA Data Gateway | Implementation Guide 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 canceled 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 canceled 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 canceled 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] ApplMBAbsRespTimeout Default Modbus application response timeout. This value is the maximum amount of time (in milliseconds) that will be allowed before a command is canceled 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 requestThis parameter is only used for master or slave sessions using the DNP3 protocol. Possible values are: 0x0001 = clear restart upon RESTART IIN 0x0002 = integrity poll upon RESTART IIN 0x0004 = integrity poll upon LOCAL IIN on-then-off 0x0008 = integrity poll upon timeout of previous request 0x0010 = integrity poll upon BUFFER OVERFLOW IIN 0x0020 = use delay measurement within time synchronization 0x0040 = perform time synchronization upon NEED TIME using SERIAL method. NOTE: do not set both serial and lan method choose one 0x0080 = request class 1, 2, or 3 data upon CLASS 1, 2, or 3 IINs 0x0100 = automatically enable unsolicited events upon remote or master device startup 0x0200 = disable unsolicited messages upon RESTART IIN

Page | 228

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

SCADA Data Gateway | Implementers Guide 0x0400 = Enable/Disable automatic generation of application layer confirmations 0x2000 = Enable/Disable automatic integrity poll when connected 0x0800 = perform time sync on NEED TIME using LAN method. NOTE: do not set both serial and lan method choose one 0x1000 = Exchange data set prototypes and descriptors with slave when IIN restart bit is set or when master restarts DEFAULT: 0x26d7 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 IEC608705-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 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 time tags. The default value 60870-5-101 sessions. This parameter sessions. Possible values are 0, 1, include time tags, if false request will not for this parameter should be false for IEC is only used for IEC 60870-5-101 Master 'FALSE', or 'TRUE'.

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

Page | 229

SCADA Data Gateway | Implementation Guide DEFAULT: FALSE INDICES: [sessionIndex=0-249][sector=0-63] ApplM104TimeTagCommands If true requests to this sector will include time tags, if false request will not include time tags. 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. 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]

Page | 230

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

SCADA Data Gateway | Implementers Guide 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] S104MaxCommandAge Specify the maximum delta at which commands will be accepted. If a time tag command is received with a time older than the current time minus the S104MaxCommandAge the command will be discarded, with no response sent. This parameter is only used for slave sessions using the IEC 60870-5-104 protocol profile. DEFAULT: 5000 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 4.2 '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: 0x0000007 INDICES: [sessionIndex=0-249]

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

Page | 231

SCADA Data Gateway | Implementation Guide DNPActionMask1 Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd. DNP 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 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 4.2 '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]

Page | 232

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

SCADA Data Gateway | Implementers Guide DNPActionMask3 Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd. DNP 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 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 4.2 '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]

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

Page | 233

SCADA Data Gateway | Implementation Guide

DNPActionNow Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd. DNP 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 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] 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]

Page | 234

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

SCADA Data Gateway | Implementers Guide DNPChannelActionMask0 Use this mask to force one time event(s) or periodic events in conjunction with the DNPChannelActionPrd. DNP 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 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: [channelIndex=0-249] DNPChannelActionMask1 Use this mask to force one time event(s) or periodic events in conjunction with the DNPChannelActionPrd. DNP 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 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: [channelIndex=0-249]

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

Page | 235

SCADA Data Gateway | Implementation Guide DNPChannelActionMask2 Use this mask to force one time event(s) or periodic events in conjunction with the DNPChannelActionPrd. DNP 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 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: [channelIndex=0-249] DNPChannelActionMask3 Use this mask to force one time event(s) or periodic events in conjunction with the DNPChannelActionPrd. DNP 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 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: [channelIndex=0-249]

Page | 236

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

SCADA Data Gateway | Implementers Guide DNPChannelActionMask4 Use this mask to force one time event(s) or periodic events in conjunction with the DNPChannelActionPrd. DNP 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 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: [channelIndex=0-249] DNPChannelActionNow Use this mask to force one time event(s) or periodic events in conjunction with the DNPActionPrd. DNP 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 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: [channelIndex=0-249]

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

Page | 237

SCADA Data Gateway | Implementation Guide

DNPChannelActionPrd0 Time between actions defined in the DNPChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the DNP3 protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] DNPChannelActionPrd1 Time between actions defined in the DNPChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the DNP3 protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] DNPChannelActionPrd2 Time between actions defined in the DNPChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the DNP3 protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] DNPChannelActionPrd3 Time between actions defined in the DNPChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the DNP3 protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] DNPChannelActionPrd4 Time between actions defined in the DNPChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the DNP3 protocol. DEFAULT: 0 ms INDICES: [channelIndex=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 INTERROGATION 0x0000004 = INTERROGATE GROUP 1 0x0000008 = INTERROGATE GROUP 2 0x0000010 = INTERROGATE GROUP 3 0x0000020 = INTERROGATE GROUP 4 0x0000040 = INTERROGATE GROUP 5 0x0000080 = INTERROGATE GROUP 6 0x0000100 = INTERROGATE GROUP 7 0x0000200 = INTERROGATE GROUP 8 0x0000400 = INTERROGATE GROUP 9 0x0000800 = INTERROGATE GROUP 10 0x0001000 = INTERROGATE GROUP 11 0x0002000 = INTERROGATE GROUP 12 0x0004000 = INTERROGATE GROUP 13 0x0008000 = INTERROGATE GROUP 14 0x0010000 = INTERROGATE GROUP 15 0x0020000 = INTERROGATE GROUP 16

Page | 238

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

SCADA Data Gateway | Implementers Guide 0x0040000 = COUNTER INTERROGATION 0x0080000 = INTERROGATE COUNTER GROUP 1 0x0100000 = INTERROGATE COUNTER GROUP 2 0x0200000 = INTERROGATE COUNTER GROUP 3 0x0400000 = INTERROGATE 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: 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 INTERROGATION 0x0000004 = INTERROGATE GROUP 1 0x0000008 = INTERROGATE GROUP 2 0x0000010 = INTERROGATE GROUP 3 0x0000020 = INTERROGATE GROUP 4 0x0000040 = INTERROGATE GROUP 5 0x0000080 = INTERROGATE GROUP 6 0x0000100 = INTERROGATE GROUP 7 0x0000200 = INTERROGATE GROUP 8 0x0000400 = INTERROGATE GROUP 9 0x0000800 = INTERROGATE GROUP 10 0x0001000 = INTERROGATE GROUP 11 0x0002000 = INTERROGATE GROUP 12 0x0004000 = INTERROGATE GROUP 13 0x0008000 = INTERROGATE GROUP 14 0x0010000 = INTERROGATE GROUP 15 0x0020000 = INTERROGATE GROUP 16 0x0040000 = COUNTER INTERROGATION 0x0080000 = INTERROGATE COUNTER GROUP 1 0x0100000 = INTERROGATE COUNTER GROUP 2 0x0200000 = INTERROGATE COUNTER GROUP 3 0x0400000 = INTERROGATE 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 INTERROGATION 0x0000004 = INTERROGATE GROUP 1 0x0000008 = INTERROGATE GROUP 2 0x0000010 = INTERROGATE GROUP 3 0x0000020 = INTERROGATE GROUP 4 0x0000040 = INTERROGATE GROUP 5 0x0000080 = INTERROGATE GROUP 6

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

Page | 239

SCADA Data Gateway | Implementation Guide 0x0000100 = INTERROGATE GROUP 7 0x0000200 = INTERROGATE GROUP 8 0x0000400 = INTERROGATE GROUP 9 0x0000800 = INTERROGATE GROUP 10 0x0001000 = INTERROGATE GROUP 11 0x0002000 = INTERROGATE GROUP 12 0x0004000 = INTERROGATE GROUP 13 0x0008000 = INTERROGATE GROUP 14 0x0010000 = INTERROGATE GROUP 15 0x0020000 = INTERROGATE GROUP 16 0x0040000 = COUNTER INTERROGATION 0x0080000 = INTERROGATE COUNTER GROUP 1 0x0100000 = INTERROGATE COUNTER GROUP 2 0x0200000 = INTERROGATE COUNTER GROUP 3 0x0400000 = INTERROGATE 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 INTERROGATION 0x0000004 = INTERROGATE GROUP 1 0x0000008 = INTERROGATE GROUP 2 0x0000010 = INTERROGATE GROUP 3 0x0000020 = INTERROGATE GROUP 4 0x0000040 = INTERROGATE GROUP 5 0x0000080 = INTERROGATE GROUP 6 0x0000100 = INTERROGATE GROUP 7 0x0000200 = INTERROGATE GROUP 8 0x0000400 = INTERROGATE GROUP 9 0x0000800 = INTERROGATE GROUP 10 0x0001000 = INTERROGATE GROUP 11 0x0002000 = INTERROGATE GROUP 12 0x0004000 = INTERROGATE GROUP 13 0x0008000 = INTERROGATE GROUP 14 0x0010000 = INTERROGATE GROUP 15 0x0020000 = INTERROGATE GROUP 16 0x0040000 = COUNTER INTERROGATION 0x0080000 = INTERROGATE COUNTER GROUP 1 0x0100000 = INTERROGATE COUNTER GROUP 2 0x0200000 = INTERROGATE COUNTER GROUP 3 0x0400000 = INTERROGATE 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:

Page | 240

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

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 INTERROGATION 0x0000004 = INTERROGATE GROUP 1 0x0000008 = INTERROGATE GROUP 2 0x0000010 = INTERROGATE GROUP 3 0x0000020 = INTERROGATE GROUP 4 0x0000040 = INTERROGATE GROUP 5 0x0000080 = INTERROGATE GROUP 6 0x0000100 = INTERROGATE GROUP 7 0x0000200 = INTERROGATE GROUP 8 0x0000400 = INTERROGATE GROUP 9 0x0000800 = INTERROGATE GROUP 10 0x0001000 = INTERROGATE GROUP 11 0x0002000 = INTERROGATE GROUP 12 0x0004000 = INTERROGATE GROUP 13 0x0008000 = INTERROGATE GROUP 14 0x0010000 = INTERROGATE GROUP 15 0x0020000 = INTERROGATE GROUP 16 0x0040000 = COUNTER INTERROGATION 0x0080000 = INTERROGATE COUNTER GROUP 1 0x0100000 = INTERROGATE COUNTER GROUP 2 0x0200000 = INTERROGATE COUNTER GROUP 3 0x0400000 = INTERROGATE 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 INTERROGATION 0x0000004 = INTERROGATE GROUP 1 0x0000008 = INTERROGATE GROUP 2 0x0000010 = INTERROGATE GROUP 3 0x0000020 = INTERROGATE GROUP 4 0x0000040 = INTERROGATE GROUP 5 0x0000080 = INTERROGATE GROUP 6 0x0000100 = INTERROGATE GROUP 7 0x0000200 = INTERROGATE GROUP 8 0x0000400 = INTERROGATE GROUP 9 0x0000800 = INTERROGATE GROUP 10 0x0001000 = INTERROGATE GROUP 11 0x0002000 = INTERROGATE GROUP 12 0x0004000 = INTERROGATE GROUP 13 0x0008000 = INTERROGATE GROUP 14 0x0010000 = INTERROGATE GROUP 15 0x0020000 = INTERROGATE GROUP 16 0x0040000 = COUNTER INTERROGATION 0x0080000 = INTERROGATE COUNTER GROUP 1 0x0100000 = INTERROGATE COUNTER GROUP 2 0x0200000 = INTERROGATE COUNTER GROUP 3

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

Page | 241

SCADA Data Gateway | Implementation Guide 0x0400000 = INTERROGATE COUNTER GROUP 4 0x1000000 = SEND FREEZE COUNTER COMMAND 0x2000000 = SEND RESET COUNTER COMMAND 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

Page | 242

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

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] IECActionRetryCount4 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

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

Page | 243

SCADA Data Gateway | Implementation Guide 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] 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:

Page | 244

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

SCADA Data Gateway | Implementers Guide 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] 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] MBChannelActionMask0

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

Page | 245

SCADA Data Gateway | Implementation Guide Use this mask to force one time event(s) or periodic events in conjunction with the MBChannelActionPrd. 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] MBChannelActionMask1 Use this mask to force one time event(s) or periodic events in conjunction with the MBChannelActionPrd. 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: [channelIndex=0-249] MBChannelActionMask2 Use this mask to force one time event(s) or periodic events in conjunction with the MBChannelActionPrd. 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: [channelIndex=0-249] MBChannelActionMask3 Use this mask to force one time event(s) or periodic events in conjunction with the MBChannelActionPrd. 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: [channelIndex=0-249] MBChannelActionMask4 Use this mask to force one time event(s) or periodic events in conjunction with the MBChannelActionPrd. MB Action mask Definitions:

Page | 246

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

SCADA Data Gateway | Implementers Guide 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: [channelIndex=0-249] MBChannelActionNow Use this mask to force one time event(s) or periodic events in conjunction with the MBChannelActionPrd. 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: [channelIndex=0-249] MBChannelActionPrd0 Time between actions defined in the MBChannelActionMask. 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] MBChannelActionPrd1 Time between actions defined in the MBChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the Modbus protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] MBChannelActionPrd2 Time between actions defined in the MBChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the Modbus protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] MBChannelActionPrd3 Time between actions defined in the MBChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the Modbus protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] MBChannelActionPrd4 Time between actions defined in the MBChannelActionMask. The period is disabled if set to zero.This parameter is only used for master sessions using the Modbus protocol. DEFAULT: 0 ms INDICES: [channelIndex=0-249] LongPulseLength

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

Page | 247

SCADA Data Gateway | Implementation Guide 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 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-5101 or IEC 60870-5-104 protocol profiles. DEFAULT: 200 events INDICES: [sessionIndex=0-249][sector=0-63] MSPNA_indexed

Page | 248

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

SCADA Data Gateway | Implementers Guide If true, then use index mode else use sequential mode 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] 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] MDPNA_indexed If true, then use index mode else use sequential mode 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] 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] MBONA_transmissionMode Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE INDICES: [sessionIndex=0-249][sector=0-63] MDPNA_transmissionMode Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE INDICES: [sessionIndex=0-249][sector=0-63] MITNA_transmissionMode

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

Page | 249

SCADA Data Gateway | Implementation Guide Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE INDICES: [sessionIndex=0-249][sector=0-63] MMENA_transmissionMode Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE INDICES: [sessionIndex=0-249][sector=0-63] MMENB_transmissionMode Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE INDICES: [sessionIndex=0-249][sector=0-63] MMENC_transmissionMode Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE INDICES: [sessionIndex=0-249][sector=0-63] 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] MSPNA_transmissionMode Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE INDICES: [sessionIndex=0-249][sector=0-63] MSTNA_indexed If true, then use index mode else use sequential mode 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] MSTNA_transmissionMode Selects the transmission mode of 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 'SINGLE', 'DOUBLE', or 'PER_POINT'. DEFAULT: SINGLE 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

Page | 250

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

SCADA Data Gateway | Implementers Guide 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-5101 or IEC 60870-5-104 protocol profiles. DEFAULT: 200 events INDICES: [sessionIndex=0-249][sector=0-63] MMENA_indexed If true, then use index mode else use sequential mode 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] 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] MMENB_indexed If true, then use index mode else use sequential mode 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] 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. 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] MMENC_indexed If true, then use index mode else use sequential mode 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] VirtualTerminal_SDNPeventBufferSize

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

Page | 251

SCADA Data Gateway | Implementation Guide 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] MBONA_indexed If true, then use index mode else use sequential mode 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] 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-5101 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] MITNA_indexed If true, then use index mode else use sequential mode 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] 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 If unsolicited responses are enabled, SDNPunsol#upperMaxEvents specifies the maximum number of events in the corresponding class to be allowed before an

Page | 252

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

SCADA Data Gateway | Implementers Guide 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-5101 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-5101 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-5101 or IEC 60870-5-104 protocol profiles. DEFAULT: 200 events INDICES: [sessionIndex=0-249][sector=0-63]

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

Page | 253

SCADA Data Gateway | Implementation Guide

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-5101 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-5101 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 INDICES: [sessionIndex=0-249][sector=0-63]

Page | 254

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

SCADA Data Gateway | Implementers Guide 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 necessary 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 necessary to set this to TMWDEFS_FALSE for some sectors. This parameter is only used for slave sessions using the IEC 608705-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. 'FALSE', or 'TRUE'. DEFAULT: TRUE EnableSOEQ If true the SOE Queue will be enabled. 'TRUE'. DEFAULT: FALSE Possible values are 0, 1,

Possible values are 0, 1, 'FALSE', or

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"

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

Page | 255

SCADA Data Gateway | Implementation Guide EventLogFileFlushPrd 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 2pass 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 2pass 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

Page | 256

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

SCADA Data Gateway | Implementers Guide 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. 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 2pass 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 2pass 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.

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

Page | 257

SCADA Data Gateway | Implementation 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 2pass 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. 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 2pass 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.

Page | 258

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

SCADA Data Gateway | Implementers Guide 0x0400 = A cancel operation has been transmitted to a remote device to abort a 2pass 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 2pass 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 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 2pass 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

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

Page | 259

SCADA Data Gateway | Implementation Guide Each bit enables(1)/disables(0) a reason to provide MSPNAdata 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 2pass 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 MSPNAdata 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 2pass 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_OpcAElogMask Each bit enables(1)/disables(0) a reason to provide MDPNAdata 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.

Page | 260

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

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 2pass 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 MDPNAdata 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 2pass 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 MSTNAdata 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.

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

Page | 261

SCADA Data Gateway | Implementation 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 2pass 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 MSTNAdata 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 2pass 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 MBONAdata 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.

Page | 262

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

SCADA Data Gateway | Implementers Guide 0x0400 = A cancel operation has been transmitted to a remote device to abort a 2pass 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 Each bit enables(1)/disables(0) a reason to log MBONAdata 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 2pass 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 MMENAdata 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 2pass 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

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

Page | 263

SCADA Data Gateway | Implementation Guide MMENA_logMask Each bit enables(1)/disables(0) a reason to log MMENAdata 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 2pass 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_OpcAElogMask Each bit enables(1)/disables(0) a reason to provide MMENBdata 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 2pass 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 MMENBdata 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.

Page | 264

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

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 2pass 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 MMENCdata 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 2pass 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 MMENCdata 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.

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

Page | 265

SCADA Data Gateway | Implementation 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 2pass 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 MITNAdata 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 2pass 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 Each bit enables(1)/disables(0) a reason to log MITNAdata 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.

Page | 266

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

SCADA Data Gateway | Implementers Guide 0x0400 = A cancel operation has been transmitted to a remote device to abort a 2pass 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 MEINAdata 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 2pass 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 MEINAdata 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 2pass 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

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

Page | 267

SCADA Data Gateway | Implementation Guide CSCNA_OpcAElogMask Each bit enables(1)/disables(0) a reason to provide CSCNAdata 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 2pass 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 CSCNAdata 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 2pass 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 CDCNAdata 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.

Page | 268

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

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 2pass 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 CDCNAdata 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 2pass 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 CRCNAdata 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.

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

Page | 269

SCADA Data Gateway | Implementation 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 2pass 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 Each bit enables(1)/disables(0) a reason to log CRCNAdata 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 2pass 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 CBONAdata 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.

Page | 270

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

SCADA Data Gateway | Implementers Guide 0x0400 = A cancel operation has been transmitted to a remote device to abort a 2pass 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 CBONAdata 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 2pass 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_OpcAElogMask Each bit enables(1)/disables(0) a reason to provide CSENAdata 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 2pass 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

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

Page | 271

SCADA Data Gateway | Implementation Guide CSENA_logMask Each bit enables(1)/disables(0) a reason to log CSENAdata 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 2pass 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 CSENBdata 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 2pass 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 CSENBdata 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.

Page | 272

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

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 2pass 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 CSENCdata 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 2pass 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 Each bit enables(1)/disables(0) a reason to log CSENCdata 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.

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

Page | 273

SCADA Data Gateway | Implementation 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 2pass 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 CCSNAdata 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 2pass 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 CCSNAdata 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.

Page | 274

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

SCADA Data Gateway | Implementers Guide 0x0400 = A cancel operation has been transmitted to a remote device to abort a 2pass 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_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 2pass 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 M103Type1data 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 2pass 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

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

Page | 275

SCADA Data Gateway | Implementation Guide Each bit enables(1)/disables(0) a reason to provide M103Type2data 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 2pass 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 M103Type2data 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 2pass 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 M103Type4data 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.

Page | 276

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

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 2pass 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 M103Type4data 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 2pass 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 M103Type5data 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.

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

Page | 277

SCADA Data Gateway | Implementation Guide 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 2pass 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 M103Type5data 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 2pass 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 Each bit enables(1)/disables(0) a reason to provide M103Type9data 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 2pass 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.

Page | 278

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

SCADA Data Gateway | Implementers Guide DEFAULT: 0x0000 M103Type9_logMask Each bit enables(1)/disables(0) a reason to log M103Type9data 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 2pass 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 M103Type140data 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 2pass 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_logMask Each bit enables(1)/disables(0) a reason to log M103Type140data 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 - 2012 Triangle MicroWorks, Inc. All rights reserved.

Page | 279

SCADA Data Gateway | Implementation 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 2pass 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 M103Type205data 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 2pass 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 M103Type205data 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.

Page | 280

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

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 2pass 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 M103Type20data 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 2pass 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 M103Type20data 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 2pass control operation between the 1st and 2nd passes. 0x0800 = A cancel operation has been confirmed by a remote device.

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

Page | 281

SCADA Data Gateway | Implementation 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 M103Type45_OpcAElogMask Each bit enables(1)/disables(0) a reason to provide M103Type45data 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 2pass 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 M103Type45data 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 2pass 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 M103Type46data updates through the OPC Alarm and Event server. If 0, nothing will be reported. This

Page | 282

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

SCADA Data Gateway | Implementers Guide 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 2pass 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_logMask Each bit enables(1)/disables(0) a reason to log M103Type46data 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 2pass 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 M103Type70data 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.

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

Page | 283

SCADA Data Gateway | Implementation 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 2pass 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 M103Type70data 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 2pass 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 MDNPType1data 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.

Page | 284

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

SCADA Data Gateway | Implementers Guide 0x0400 = A cancel operation has been transmitted to a remote device to abort a 2pass 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 MDNPType1data 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 2pass 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 MDNPType10data 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 2pass 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

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

Page | 285

SCADA Data Gateway | Implementation Guide Each bit enables(1)/disables(0) a reason to log MDNPType10data 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 2pass 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 MDNPType12data 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 2pass 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 Each bit enables(1)/disables(0) a reason to log MDNPType12data 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.

Page | 286

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

SCADA Data Gateway | Implementers Guide 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 2pass 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 MDNPType20data 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 2pass 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 MDNPType20data 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.

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

Page | 287

SCADA Data Gateway | Implementation Guide 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 2pass 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_OpcAElogMask Each bit enables(1)/disables(0) a reason to provide MDNPType21data 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 2pass 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 MDNPType21data 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 2pass 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.

Page | 288

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

SCADA Data Gateway | Implementers Guide DEFAULT: 0x0000 MDNPType30_OpcAElogMask Each bit enables(1)/disables(0) a reason to provide MDNPType30data 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 2pass 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 MDNPType30data 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 2pass 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 MDNPType40data 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.

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

Page | 289

SCADA Data Gateway | Implementation 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 2pass 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 MDNPType40data 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 2pass 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 MDNPType41data 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.

Page | 290

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

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 2pass 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 MDNPType41data 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 2pass 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 Each bit enables(1)/disables(0) a reason to provide MBCoildata 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 2pass control operation between the 1st and 2nd passes. 0x0800 = A cancel operation has been confirmed by a remote device.

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

Page | 291

SCADA Data Gateway | Implementation 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 MBCoil_logMask Each bit enables(1)/disables(0) a reason to log MBCoildata 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 2pass 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 MBDiscreteInputdata 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 2pass 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_logMask

Page | 292

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

SCADA Data Gateway | Implementers Guide Each bit enables(1)/disables(0) a reason to log MBDiscreteInputdata 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 2pass 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 MBInputRegisterdata 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 2pass 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 MBInputRegisterdata 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.

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

Page | 293

SCADA Data Gateway | Implementation Guide 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 2pass 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 MBHoldingRegisterdata 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 2pass 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 MBHoldingRegisterdata 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.

Page | 294

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

SCADA Data Gateway | Implementers Guide 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 2pass 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 608705-104 protocol profiles. Possible values are 0, 1, 'FALSE', or 'TRUE'. DEFAULT: TRUE INDICES: [sessionIndex=0-249][sector=0-63] 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]

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

Page | 295

SCADA Data Gateway | Implementation Guide 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 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 608705-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]

Page | 296

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

SCADA Data Gateway | Implementers Guide 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. 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 608705-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. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 to 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. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 to 3. DEFAULT: 2 variation Obj10DfltVariation Variation in which Object 10 binary output status 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: 1 variation Obj111DfltClass

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

Page | 297

SCADA Data Gateway | Implementation Guide 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. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 to 12. DEFAULT: 1 variation Obj21DfltVariation Variation in which Object 21 frozen counters will be returned when queried using variation 0. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 to 12. DEFAULT: 1 variation Obj22DfltVariation Variation in which Object 22 binary counter events will be returned when queried using variation 0. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 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. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 to 8. DEFAULT: 1 variation Obj30DfltVariation Variation in which Object 30 analog inputs will be returned when queried using variation 0. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 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. Setting this to 0 requires per point configuration. This parameter is only used for slave sessions using the DNP3 protocol. Possible values are from 0 to 7.

Page | 298

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

SCADA Data Gateway | Implementers Guide DEFAULT: 1 variation Obj40DfltVariation Variation in which Object 40 analog output status 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 4. 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 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 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

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

Page | 299

SCADA Data Gateway | Implementation Guide Set the default interrogation group for 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: 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 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

Page | 300

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

SCADA Data Gateway | Implementers Guide 0x00001000 = Group 12 0x00002000 = Group 13 0x00004000 = Group 14 0x00008000 = Group 15 0x00010000 = Group 16 0x10000000 = Reported DEFAULT: 0x10000001 Interrogation Interrogation Interrogation Interrogation Interrogation with Cyclic Data

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 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 60870-5-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

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

Page | 301

SCADA Data Gateway | Implementation Guide 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 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

Page | 302

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

SCADA Data Gateway | Implementers Guide 0x08 = Allows 0x10 = Allows 0x20 = Allows 0x40 = Allows DEFAULT: 0x7f latch control operations paired close control operations paired trip control operations non-standard control operations

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 acknowledgment 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 acknowledgment 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 acknowledgment 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 acknowledgment 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 acknowledgment 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

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

Page | 303

SCADA Data Gateway | Implementation Guide 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 acknowledgment 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. 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] CSETA_useTimeStamp If true, then a time stamp will be included for a CSETA point command to have changed will be reported. If false, then no time stamp will be included for a CSETA 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] CSETB_useTimeStamp If true, then a time stamp will be included for a CSETB point command to have changed will be reported. If false, then no time stamp will be included for a CSETB 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]

Page | 304

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

SCADA Data Gateway | Implementers Guide CSETC_useTimeStamp If true, then a time stamp will be included for a CSETC point command to have changed will be reported. If false, then no time stamp will be included for a CSETC 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. 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 Output" controls. If false, then single-pass control operations will be all initiated "Binary Output" controls. This parameter is only used for sessions using the DNP3 protocol. Possible values are 0, 1, 'FALSE', or DEFAULT: TRUE OBJ41_use2pass If true, then two-pass control operations will be used for all initiated Output" controls. If false, then single-pass control operations will be all initiated "Analog Output" controls. This parameter is only used for sessions using the DNP3 protocol. Possible values are 0, 1, 'FALSE', or DEFAULT: TRUE "Binary used for master 'TRUE'.

"Analog used for master '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

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

Page | 305

SCADA Data Gateway | Implementation Guide 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 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

Page | 306

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

SCADA Data Gateway | Implementers Guide 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. used for master sessions using the DNP3 protocol. DEFAULT: 0 ms INDICES: [sessionIndex=0-249] This parameter is only

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 608705-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] 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

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

Page | 307

SCADA Data Gateway | Implementation Guide 0x000010 0x000020 0x000040 0x000080 0x000100 0x000800 0x001000 0x000200 0x000400 0x020000 0x008000 0x010000 0x040000 0x002000 0x004000 0x080000 0x100000 0x200000 0x400000 DEFAULT: = user layer = man machine Interface = opc = static data = static object headers = cyclic data = cyclic object headers = event data = event object headers = timestamp = transmit direction = receive direction = errors = security data = security object headers = target layer = IEC 61850 = TASE.2 = ODBC 0x77ffff

Page | 308

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

Você também pode gostar