Você está na página 1de 86

Symphony Plus

S+ Operations 2.0
Scanner Reference Guide










Symphony Plus Operations
S+ Operations 2.0
Scanner Reference Guide




























































NOTICE
This document contains information about one or more ABB products and may include a description of or a
reference to one or more standards that may be generally relevant to the ABB products. The presence of
any such description of a standard or reference to a standard is not a representation that all of the ABB
products referenced in this document support all of the features of the described or referenced standard. In
order to determine the specific features supported by a particular ABB product, the reader should consult the
product specifications for the particular ABB product.
ABB may have one or more patents or pending patent applications protecting the intellectual property in the
ABB products described in this document.
The information in this document is subject to change without notice and should not be construed as a
commitment by ABB. ABB assumes no responsibility for any errors that may appear in this document.
In no event shall ABB be liable for direct, indirect, special, incidental or consequential damages of any nature
or kind arising from the use of this document, nor shall ABB be liable for incidental or consequential
damages arising from use of any software or hardware described in this document.
This document and parts thereof must not be reproduced or copied without written permission from ABB,
and the contents thereof must not be imparted to a third party nor used for any unauthorized purpose.
The software or hardware described in this document is furnished under a license and may be used, copied,
or disclosed only in accordance with the terms of such license. This product meets the requirements
specified in EMC Directive 2004/108/EC and in Low Voltage Directive 2006/95/EC.
TRADEMARKS
Symphony is a registered or pending trademark of ABB S.p.A.
All rights to copyrights, registered trademarks, and trademarks reside with their respective owners.
Copyright 2013 ABB.
All rights reserved.
Release: July 2013
Document number: 2VAA000725E
TABLE OF CONTENTS

1. OVERVIEW ................................................................................................. 11
1.1 S+ OPERATIONS SCANNER ........................................................................ 11
1.2 Scanner Behavior .......................................................................................... 12
2. CONFIGURATION ...................................................................................... 13
2.1 S+ Operations Tag Database ....................................................................... 13
2.1.1 General Fields ........................................................................................... 13
2.1.2 Scanner Diagnostic Tag ............................................................................ 14
2.1.3 Scanner Watchdog Configuration .............................................................. 15
2.1.4 System Registers ....................................................................................... 16
2.2 Files ................................................................................................................ 19
3. TRACE MANAGER .................................................................................... 21
3.1 Trace Tab ....................................................................................................... 22
3.2 Special Tab .................................................................................................... 23
3.3 Driver Tab ...................................................................................................... 24
4. INSTALLING THE DRIVERS ..................................................................... 26
5. IEC 60870-5-104 DRIVER .......................................................................... 27
5.1 Registers ........................................................................................................ 27
5.2 Online Configuration .................................................................................... 28
5.3 Device Type ................................................................................................... 28
5.4 Files ................................................................................................................ 29
5.4.1 Log Files .................................................................................................... 29
5.4.2 File Transfer ............................................................................................... 29
5.5 Database ........................................................................................................ 30
5.5.1 Data Uniqueness ....................................................................................... 31
5.5.2 Tag Configuration ...................................................................................... 31
5.6 Commands .................................................................................................... 32
5.6.1 Command Configurationyes ...................................................................... 32
5.6.2 Command Sessions ................................................................................... 33
5.6.3 Command/Response Codes ...................................................................... 33
6. IEC 60870-5-101 DRIVER .......................................................................... 35
TABLE OF CONTENTS

6.1 Registers ........................................................................................................ 35
6.2 Online Configuration .................................................................................... 36
6.3 Device Type ................................................................................................... 37
6.4 Files ................................................................................................................ 37
6.4.1 Log Files .................................................................................................... 37
6.5 Database ........................................................................................................ 37
6.5.1 Device Diagnostics .................................................................................... 37
6.6 Commands .................................................................................................... 38
7. IEC 60870-5-103 DRIVER .......................................................................... 39
7.1 Registers ........................................................................................................ 39
7.2 Online Configuration .................................................................................... 40
7.3 Device Type ................................................................................................... 41
7.4 Files ................................................................................................................ 41
7.4.1 Log Files .................................................................................................... 41
7.5 Database ........................................................................................................ 41
8. MODBUS DRIVER ...................................................................................... 43
8.1 Registers ........................................................................................................ 43
8.2 Online Configuration .................................................................................... 44
8.3 Files ................................................................................................................ 44
8.4 Database ........................................................................................................ 44
8.4.1 Data Uniqueness ....................................................................................... 45
8.4.2 Device Diagnostics .................................................................................... 45
8.4.3 SEPAM80 Events and Time Synchronization Management ...................... 46
9. MODBUS TCP DRIVER ............................................................................. 47
9.1 Registers ........................................................................................................ 47
9.2 Online Configuration .................................................................................... 48
9.3 Files ................................................................................................................ 48
9.4 Database ........................................................................................................ 48
9.4.1 Data Uniqueness ....................................................................................... 49
TABLE OF CONTENTS

9.4.2 Device Diagnostics .................................................................................... 49
10. SPABUS DRIVER .................................................................................... 51
10.1 Registers ........................................................................................................ 51
10.2 Online Configuration .................................................................................... 52
10.3 Files ................................................................................................................ 52
10.4 Database ........................................................................................................ 52
10.4.1 Data Uniqueness ..................................................................................... 53
11. TELEPERM XP DRIVER .......................................................................... 54
11.1 Registers ........................................................................................................ 54
11.2 Online Configuration .................................................................................... 54
11.3 Files ................................................................................................................ 55
11.4 Database ........................................................................................................ 55
11.4.1 Data Uniqueness ..................................................................................... 55
11.4.2 Device Diagnostics .................................................................................. 55
12. GE MARK V / MARK VI DRIVER ............................................................ 56
12.1 Typical Registers for the Mark Driver .......................................................... 56
12.2 Online Configuration .................................................................................... 57
12.3 Configuration of Point Acquisition from Mark ........................................... 57
13. TEXT DRIVER .......................................................................................... 58
13.1 Installation ..................................................................................................... 58
13.2 Typical Registers for the Text Driver ........................................................... 58
13.3 Online Configuration .................................................................................... 59
13.4 Database ........................................................................................................ 59
14. SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER ... 60
14.1 Introduction ................................................................................................... 60
14.1.1 Definitions and Acronyms ........................................................................ 60
14.2 Generality ...................................................................................................... 60
14.2.1 SNMPv1 .................................................................................................. 61
14.2.2 SNMPv2 .................................................................................................. 62
TABLE OF CONTENTS

14.2.3 SNMPv3 .................................................................................................. 62
14.2.4 Net-SNMP Library .................................................................................... 62
14.3 Windows Registry Configuration................................................................. 62
14.3.1 S+ Database configuration ...................................................................... 63
14.3.2 File XML .................................................................................................. 63
14.4 System Configuration ................................................................................... 64
14.4.1 Registers.................................................................................................. 64
14.4.2 File XML .................................................................................................. 64
15. SYSLOG DRIVER .................................................................................... 67
15.1 Introduction ................................................................................................... 67
15.1.1 Definitions and Acronyms ........................................................................ 67
15.2 Generality ...................................................................................................... 67
15.2.1 SysLog Message format .......................................................................... 67
15.3 Configuration ................................................................................................ 68
15.3.1 Windows Register Configuration .............................................................. 68
16. MELODY DRIVER .................................................................................... 71
16.1 Registers ........................................................................................................ 71
16.2 Database ........................................................................................................ 72
17. IEC 61850 DRIVER .................................................................................. 73
17.1 Driver Configuration ..................................................................................... 73
17.2 Registry Entries ............................................................................................ 73
17.3 Configuration ................................................................................................ 74
17.4 Acquisition .................................................................................................... 74
17.5 Process .......................................................................................................... 75
17.6 Files ................................................................................................................ 75
17.7 Driver Configuration ..................................................................................... 75
17.8 Commands .................................................................................................... 76
17.9 Databases ...................................................................................................... 76
17.10 Usage of Driver with Scanner .................................................................... 77
TABLE OF CONTENTS

18. P14 DRIVER ............................................................................................. 78
19. PERFORMANCE DRIVER ....................................................................... 79
20. COMLI DRIVER........................................................................................ 80
20.1 Installation ..................................................................................................... 80
20.2 Driver Specific Registers .............................................................................. 80
21. APPENDIX ............................................................................................... 82
21.1 Appendix A - Data Format ............................................................................ 82
21.2 Appendix B Tag Type Table ...................................................................... 84
21.3 Appendix C Quality Code Table ................................................................ 84



SPlus Operations Scanner Reference Guide OVERVIEW
2VAA000725E 11
1. OVERVIEW
The document provides basic understanding of all SW modules in Symphony Plus Operations (S+ Operations) system
that performs I/O data exchange with external devices, like RTUs or local process controllers
To be a little more specific, this document deals with I/O operations being implemented by drivers performing direct data
acquisition and control from/on RTUs or controllers, via standard SCADA protocols, like the IEC 60870 suite, Modbus,
SPAbus etc.
The drivers represent the field oriented layer of S+ Operations Scanner, which is the main software subsystem in charge
of I/O communications with plant devices.
1.1 S+ OPERATIONS SCANNER
The scanner subsystem is a layer between S+ Operations and different external devices, no matter which protocol is used
to access them. The protocol layer is assigned to a specific driver library (dll), which provides the scanner with a
mandatory and predefined interface. There is data flow between the scanner and S+ Operations and also between the
scanner and the driver dll.
In the following figure the input data flows (from field towards S
+
Operations) are outlined in blue and the output data flows
from S
+
Operations towards external devices are outlined in red.
The scanner creates a process for each configured driver instance (called driverHostProcess) and in this process there
are two I/O threads which manages the input and output of the data flows separately (either in synchronous or
asynchronous way). For each DriverHostProcess in task monitor the command line contains the name of the driver
instance managed by the process.
At startup the scanner creates a thread (Output queue thread) which processes all the output messages from S+
Operations into the Output queue. In this queue, S+ Operations puts commands, output values and configuration
information. The thread dequeues the packets and dispatches them to the destination driver main thread.
During startup the scanner creates another thread in addition (Mailslot thread) which controls a common mailslot through
which drivers can send data directly to the S+Operations RTDB, without waiting for the polling cycle scan to get active.
Scanner Subsystem

Figure 1-1: Scanner Subsystem

SPlus Operations Scanner Reference Guide OVERVIEW
12 2VAA000725E
1.2 Scanner Behavior
At startup the scanner searches for tags in the S+ Operations tag Database that needs to be processed, according to their
configuration data. It maps these tags to the driver which they belong to and, after creating the driver instance loading the
driver dll runtime, forwards this map to the driver dll. Then it requests the driver dll to open the communication channel
with the external device. If the driver establishes the connection, a general interrogation (i.e. a scan of all input points) is
requested from the device being connected and, optionally, the scanner can send the device a snapshot of the RTDB for
the tags which are configured as outputs.
After the initialization phase the scanner enters running mode. During the running mode the scanner processes I/O points
using polling classes. According to registry settings about the frequency of each class, the scanner checks the driver for
the values of the tags belonging to the class, whose timeout has expired.
The driver returns all the tags of the class to the scanner, but the scanner writes into S+ Operations RTDB only the tags
whose value or status has changed significantly from the last stored value or status (exception report).
Same as input values the output values is also sent from scanner to driver according to exception report logic. However in
both cases it is possible to change this behavior and force the scanner to write (input points) and to send (output points)
always the values.
By default the scheduling period corresponds to the period of required frequency plus the time of interrogation in order to
avoid overlapping requests, but it is possible to change this behavior, switching to a true scheduling period (in this case
the request is sent every t msec., where t is the period of the class) or to a continuous request (the request is posted and
queued). For the last two behaviors a good tuning of the frequency of the class is needed. The interrogation time should
always be smaller than the scheduling period. To tune correctly this parameter the statistic window in the scanmonitor tool
can be quite helpful.
It is also possible to perform the I/O operation directly, with no regard for the polling classes. Through the common mailslot
the driver can write to the RTDB database and using a particular flag some values can be transmitted from the scanner to
the driver (ForceWriteTag). These privileged paths are useful when a tag represents a command or a feedback or when
the value of a tag changes very quickly (usually in less than 100 msec.).
SPlus Operations Scanner Reference Guide CONFIGURATION
2VAA000725E 13
2. CONFIGURATION
The scanner has two different levels of configuration:
S+ Operations tag Database
Windows registry
2.1 S+ Operations Tag Database
To assign a tag to the scanner subsystem, a correspondence between registry settings and S+ Operations tag database
must be established. The correspondence is between the Scanner subfolder name (the name of the driver) in the Windows
registry of S+ Operations and at least one of these fields:
FIELD_DRV
OUT1_DRV (OUT2_DRV, OUT3_DRV, OUT4_DRV, OUT5_DRV)
A tag belongs to a specific driver, at least one of these two fields is filled with the same name of the Scanner subfolder in
the Windows registry. The first field tells the scanner that the tag is in input (from the external device to S+ Operations)
from a specific driver. The second field tells the scanner that the same tag is in output (from S+ Operations to the external
device) to a specific driver. The values of these two fields can be the same and that means that the same tag is both an
input and an output for the driver, or they can be different and, in this case, the scanner acts as a gateway.
Furthermore there are 10 numeric (integer) fields and 5 text fields both for input and output, whose use is customized by
each driver.
FIELD_Adn, FIELD_TXn (input related fields)
OUT_Adn, OUT_TXn (output related fields)
2.1.1 General Fields
The following table shows the general fields used in the manual:
Figure 2-1: General Fields used in the Manual
TAGTYPE Defines the point type. For acquired tags, the following types are normally used:
DIGITAL for single digital inputs/outputs;
BITMASK four double digital inputs/outputs;
ANALOG for analog inputs/outputs.
TEXTSTR for string-type inputs/outputs (32 char)
TAGSRC Indicates the data source (for acquired tags it must always be set to EXT).
FACEPLATE For a command it can contain the name of the command pop-up faceplate.
ZEROSTATE Logic State Descriptor of the 0 status of the digital point (NORMAL, ALARM, etc).
ONESTATE Logic State Descriptor of the 1 status of the digital point.
TWOSTATE Logic State Descriptor of the 2 status of the digital point.
THREESTATE Logic State Descriptor of the 3 status of the digital point.
ISALARMx [0 3] Flag indicates whether an ISA alarm sequence is generated (yes Y or not N) when the
relevant Logic State Descriptor is corresponding to the digital input status.
I4_DATA (Y/N) it indicates whether the data is an integer or a real number.
INITVAL The initial value of the tag at S+ Operations start-up.
VAL0 0 value of the instrument in engineering units.
SPAN Instrument span in engineering units.
CONVCODE Defines the type of conversion to be performed on the analog data. The conversion of
input data is performed by S+ Operations (Dip process), while for output data it is
performed by the Scanner.
CONVMIN Raw value corresponding to the zero value in engineering units
CONVMAX Raw value corresponding to the maximum value in engineering units
SPlus Operations Scanner Reference Guide CONFIGURATION
14 2VAA000725E
Table 2-1: General Fields in CONVCODE
CONVCODE DESCRIPTION
L0, IL0, OL0 Low level linear: i/o, input only, output only
L1, IL1, OL1 Elevated linear: i/o, input only, output only
L1CO
L2, IL2, OL2
Elevated linear with cutoff
From - full scale to + full scale: i/o, only input, only output
SQRT Square root
SQRTCO
MC
Square root with cutoff
Special motor current curve
ISAJ Type-J thermocouple compensation
ISAJC
ISAKC
Type-J thermocouple compensation for Celsius units
Type-K thermocouple compensation for Celsius units
ISATC Type-T thermocouple compensation for Celsius units
ISAEC
RTD1
Type-E thermocouple compensation for Celsius units
Linear RTD, engineering range R1
RTD2 Linear RTD, engineering range R2
RTD3
RTD4
Nonlinear RTD
Nonlinear RTD
LNDRD Nth-order fixed point
GEN
LINV
Generic
Inverted elevated linear
BCD, BCDRFX BCD and reflected BCD
2.1.2 Scanner Diagnostic Tag
Every driver instance can have one tag configured to report driver status.
The tag must be of Analog type, with the first 10 values (0-9) reserved for status information and another 11 values (10-20)
for error conditions. Driver status can get any of the following values:
Table 2-2: Driver Status and Values

Status Description Actions
0 Driver disabled Active registry is set to NO
1 Driver running Driver is connected to field (in a
master/slave environment it refers to the
master)

2 Driver suspended Driver is suspended
3 Driver stand by Driver in stand by (only in master/slave
environment: it refers to the slave)

4 Driver initializing Driver is initializing (registry reading, driver
instance and timers creation)

5 Driver connecting Driver is trying to setup a connection to
field

6 Driver waits for
Master/Slave confirm
Driver is waiting acknowledge during
mastership evaluation

7 Driver mapping tags Driver is mapping all its tags
8 Driver evaluating
mastership
Driver is evaluating mastership
9 Driver not connected Driver is not connected to field Verify channel and devices.
10 Generic error Exception intercept Restart scanner
11 Registry configuration
error
Errors found in the scanner registry Verify registry and re-init
driver
12 Driver stopped Driver is stopped
13 Driver not licensed Driver not licensed Verify license and re-init
driver
14 Driver fails to create
COM interface
Driver not registered Run installation procedure
described at chapter 3
15 No tags configured There are no configured tags for this
drivers instance.
Verify S
+
Ops. database
fields
FIELD_DRV e OUTn_DRV
SPlus Operations Scanner Reference Guide CONFIGURATION
2VAA000725E 15
and restart scanner
16 No network (ping failed) The master cannot be reached by means
of a ping command.
Network problems: verify
cables, hub, switch.
The driver tries to get the
mastership
17 Keep alive timeout No answer to keep alive message. Verify remote scanner
instance
18 Channel failure In a master/slave environment, on the
slave machine, the channel is not ready.
Verify channel and devices.
19 Unknown error Unknown error Restart scanner.
20 No network (ping failed) The master cannot be reached by means
of a ping command.
Network problems: verify
cables, hub, switch.
The driver tries to get the
mastership
21 Keep alive timeout No answer to keep alive message. Verify remote scanner
instance
2.1.3 Scanner Watchdog Configuration
TntScanner watchdog function is used to monitor the activity of driver instances using life cycle counter or tag values. The
watchdog functions are enabled and tuned using some registries both in a Scanner registry key (for general settings) and
in a different registry key for each instance (for instance specific settings).
The registries for Scanner key are as follows:
Table 2-3: Scanner Key Registers
Registry name Type Default Value Description
WDEnabled String NO Watchdog enable flag.
WDStartupDelay DWORD 30000 Watchdog startup delay in milliseconds.
WDTimer DWORD 1000 Watchdog main thread cycle time in
milliseconds.
WDEchoTag String Analog tag to signal the index of the last
instance managed by a scanner watchdog. Tag
is reset (0) at scanner startup.

The registries for instance specific settings are as follows:
Table 2-4: Instance Specific Settings Registers
Registry name Type Default Value Description
WDType DWORD 0 Watchdog type, see following table for value
details.
WDAction DWORD 0 Watchdog triggered action type, see following
table for details.
WDTimeout DWORD 5000 Watchdog service period in milliseconds.
WDTag String Name of the tag used in watchdog service (if
needed).
WDRefValue DWORD 0 Reference value for watchdog service (if needed).
WDScanClass DWORD 0 Scan class number for watchdog functions having
a Reg. value 9 and 10

The scanner watchdog executes its function in a cyclical manner with a period set in WDTimeout registry. If the watchdog
fails to be serviced, it triggers an action to be performed (specified in WDAction registry) on the driver instance being
monitored. Some types of watchdog service functions require a tag name to be checked and/or a reference value.
Table 2-5: Scanner Watchdog Functions
Function Register.
value
Tag Required Reference.
required.
Description
NONE 0 NO NO Instance watchdog is disabled.
LIFECYCLE 1 NO NO Checks that instance scanner internal
lifecycle is incremented.
TAGDIG 2 YES YES Checks that the digital tag set in
registry has the reference value.
TAGANG_MID 3 YES YES YES Checks that the analog tag set in
SPlus Operations Scanner Reference Guide CONFIGURATION
16 2VAA000725E
registry is in a +/- 5%
range of the reference value.
TAGANG_OVR 4 YES YES Checks that the analog tag set in
registry is greater than
the reference value (5% tolerance).
TAGANG_UND 5 YES YES Checks that the analog tag set in
registry is smaller than
the reference value (5% tolerance).
TAGWD 6 YES YES Checks that the digital tag set in
registry changes its value faster than
the rate (in ms) specified by reference
value.
TAGALARM 7 YES NO Checks that the digital tag set in
registry is not in alarm state.
TAGCOUNT 8 YES NO Checks that the analog tag set in
registry increments its
value at each cycle (long integer I4
values are accepted).
INPUT CLASS 9 NO NO Checks that the scan class specified in
WDScanClass registry increments its
input cycles counter
INPUT CLASS 10 NO NO Checks that the scan class specified in
WDScanClass registry increments its
output cycles counter
Table 2-6: Scanner Watchdog Actions
Action Register. value Description
NONE 0 No action is executed once the watchdog has triggered.
STOP 1 The driver instance is stopped once the watchdog has triggered.
REINIT 2 The driver instance is reinitialized once the watchdog has triggered.
DISABLE 3 The driver instance is disabled once the watchdog has triggered.

The scanner watchdog generates a log file (<date>-SCAN_WD.log) to trace its activities, the logging is activated using the
scanners log enabling registry. Even if the scanner logging is disabled when a scanner watchdog triggers an action (stop,
reinit or disable an instance) a message is appended to the S+ Operations error log, which is always enabled.
2.1.4 System Registers
At initialization time, the TntScanner reads the number and the type of protocols to be used from the information contained
in the register
HKEY_LOCAL_MACHINE \ SOFTWARE \ ABB Symphony Plus \ Operations \ Scanner
There are two different layers of information in registry settings: the scanner registry entries and the driver general entries.
The scanner registry entries are as follows:
Table 2-7: Scanner Registry Entries
Entry Type Default Description
TraceLevel DWORD 0xFFFF
(65535)
Degree of detail for logging
StartupDelay DWORD 0x000F (15) Delay, in sec., between S
+
Ops.
startup and scanner startup
MailslotTimeoutOnExit DWORD 0x000A (10) Mailslot timeout during the scanner
shutdown
KillMailslotAfterThreads String NO If it is needed to close the common
mailslot after closing all threads set
this entry to YES (es: Mark driver)
OutQueuePollFreq DWORD 0x01F4 (500) Output queue polling period (msec).
SkipOutputDrvCheck String NO To avoid checking the OUT_DRV
before sending an output value to a
driver set this entry to YES. (es:
Driver 104, Driver 101)
IsGateway String NO To avoid checking the source mask of
a tag, set this registry to YES
SPlus Operations Scanner Reference Guide CONFIGURATION
2VAA000725E 17
Enable String YES If this registry is set to NO the
TntScanner doesnt
Start
TntAlignWaitTimeout DWORD 0x0 (0) In a master/slave environment and if
this value is not 0, the scanner doesnt
start until S
+
Ops.has finished
synchronizing. The scanner starts after
the number of seconds set in this
registry has expired.
PlbTimeLimit DWORD 0x0 (0) (min.) If the timestamp of a value
coming from an external device is
smaller than (present time
PlbTimeLimit) the value is inserted
directly into Playback without DIP
processing.
KillThreadTimeout DWORD 0x000A (10) During shutdown the scanner waits
that all drivers are properly closed.
This entry is the maximum wait (sec.)
for each driver. When this timeout has
expired the scanner shutdown also if a
driver is not properly closed.
PropagateHistoricalValues String NO Enables forwarding historical values to
redundant standby nodes.

The general driver entries are related to each driver and can be different from one instance to another. Some of them are
mandatory entries, while many of these entries are optional and the default value is usually the best choice. Any change to
this optional value is a customization of a driver or is the result of a tuning with the real external device in operation. The
mandatory driver entries are as follows:
Table 2-8: List of Mandatory Drivers
Entry Type Default Description
Active String NO Enable/disable driver
BusType String Type of bus used by the driver (es: COM, TCP)
BusAddress String Depends on driver (es: 9600,8,e,1 or 127.0.0.1)
BusPort DWORD 0x0 (0) Port of communication (es : physical port or a TCP
port)
DeviceTimeout DWORD 0x0 (0) This timeout is used by the driver and it has different
meanings according to the driver.
Priority String NORMAL The driver thread priority.
ProgID String The ProgID of the driver
imeoutClassn DWORD This range of entries (where n is the number of polling class,
from 1 to 10) sets the polling period (msec) of each scan
class. If an entry is missing, the class corresponding to it is
not used and its tag is not mapped.
The value 0xFFFF identifies a snapshot class being read at
driver startup and after reconnections (used for events).

The optional driver entries are as follows:
Table 2-9: List of Optional Drivers
Entry Type Default Description
TraceLevel DWORD 0x0 (0) Degree of detail for logging
UseDstAdjust String NO If the timestamps coming from the driver need
to be adjusted according to DST set this entry
to YES
SynchronousIO String YES I/O through the channel is to be controlled by
semaphore. Serial communication needs to be
synchronous. Usually TCP protocols can be
asynchronous though Modbus TCP driver must
be synchronous).
MasterSlave String NO Enable/disable master-slave environment
UseMarkTagsOld String YES Set this entry to NO if the scanner should not
mark the tag as OLD during shutdown.
SPlus Operations Scanner Reference Guide CONFIGURATION
18 2VAA000725E
CheckMSTimeout DWORD 0x01F4 (500) Period (msec) to check for new message in the
common mailslot.
EnablePingTest String YES (For master/slave environment) Enable/Disable
the ping test
PingTimeout DWORD 0x0BB8
(3000)
(For master/slave environment) Ping test
period
(msec) of the master
PingMaxAttempt DWORD 0x0003 (3) Number of failed pings before the connection
with the master is regarded as lost.
CheckConnTimeout DWORD 0x03E8
(1000)
Driver diagnostic test period (msec.)
CheckConnAttempt DWORD 0x001E (30) Number of failed diagnostic tests before the
channel connection is regarded as lost
MSAckTimeout DWORD 0x0BB8
(3000)
(For master/slave environment) Maximum wait
(msec)
for an acknowledge message from the
addresser.
DiagnosticTag String It is the tag name of the driver diagnostic tag.
Its value correspondes to the current driver
status.
GIAtStartup String YES Enable/Disable the request for a general
interrogation
during driver startup
InitOutputValues String NO Enable/Disable S+ Ops. from sending a
snapshot to the field. Be careful because it
might send also command (output) values.
DriverStartupDelay DWORD 0x0 (0) Is the sleep period (msec) during the driver
startup or driver switching (master/slave
environment). 0 means no delay.
SlaveChannelTest String NO (For master/slave environment) Enable/Disable
secondary channel diagnostic.
TestChannelTimeout DWORD 0x001E (30) Secondary channel diagnostic test period
(sec.)
WriteAlwaysToTnt String NO Always write values to S+ Ops. ignoring
exception report.
MaxWriteAlways DWORD 0x000A (10) Number of direct write operations ignoring
exception report. 0 means write always
SwitchDelay DWORD 0x0064 (100) (For master/Slave environment) Delay (msec.)
during the switching between servers.
ConnectionAttempt DWORD 0x000A (10) Number of attempts to establish connection
during driver initialization
InitTimeout DWORD 0x000A (10) Delay between an initialization attempt and the
next one.
RestartOnDisconnect String YES The driver restarts when the connection with
the external device is re-established.
RedundantDevice String NO It must be set to YES if the device has a
redundant communication channel
InputInhibitTag String If this registry is set to a valid tagname
(DIGITAL) the driver discards all input values
when the tag value is not zero.
OutputInhibitTag String NO If this registry is set to a valid tagname
(DIGITAL) the driver discard all output values
when the tag value is not zero.
UseHCF String NO The tags of the driver is set to CF instead of
OLD when the connection is lost or when the
driver is stopped.
UseKeepAlive String NO Enable the keep alive timeout check (only in
Master/Slave environment). Each server sends
a keep alive message to other servers every
second. When a server fails to receive the
keep alive message from another one for a
time longer than the KeepAliveTimeout
(registry), the server status is declared Keep
Alive timeout.
KeepAliveTimeout DWORD 30 Maximum time (seconds) a server waits for the
keep alive message from another server before
declaring it in Keep alive timeout status.
SPlus Operations Scanner Reference Guide CONFIGURATION
2VAA000725E 19
UseControlInhibitTag String NO Enables checking an inhibit tag value for a
command before sending it to the output driver.
ControlInhibitTagTimeout DWORD 5 Polling period (seconds) for the control inhibit
tag values
WaitForSynchro DWORD 1000 Max wait time (in milliseconds) for channel
availability. Used only for synchronous (serial)
drivers.
SendAlwaysOutputVal String NO If set to YES the driver always sends output
values even if they have not changed.

There is a DWORD entry called PatchBits, a bitmask value which allows to enable/disable (according to the bit set) some
advanced features.
The value of this entry can be an ORed(combination of bits is a OR of bit) combination of the following values.
Table 2-10: PatchBits Values
Mask Description
0x00000001 With this bit set the scanner continuously query the driver for values from field devices
(ReadTagList) if the field query duration is greater than the polling period
0x00000002 With this bit set the scanner recalculates the polling period as the configured polling
period minus the field query duration. If the field query duration is greater than the polling
period that results in posting a continuous request message. In this case a tuning of the
polling period is requested, since it should always be greater than the query duration. To
achieve such tuning this bit enables time statistics so that the relevant counters are
available through the scanmonitor tool.
0x00000004 If set, only the running instance calls the IsConnected method of the driver
0x00000008 If set in a master/slave environment, the ReadTagList method writes also atoms
0x00000010 If set in a master/slave environment, the instances of the same driver on different PCs
exchange driver status message only when it has changed.
0x00000020 Not used
0x80000000 Not used
2.2 Files
The scanner subsystem includes the following files:
Figure 2-2: Scanner Subsystem Files
File Names Description
TntScanner.exe Main application file. It starts automatically when S+ Operations starts.
ScanMonitor.exe Scanner tool for diagnostics, monitoring and configuration.
ScnrUtil.dll Contains miscellaneous utility classes used by the scanner and its drivers.
ComDriver.dll Physical interface for serial protocols.
TcpDrv.dll Physical interface for TCP/IP protocols.
MBLib.dll Application interface for the Modbus protocol.
Driver101.dll IEC60870-5-101 master driver.
Driver104.dll IEC60870-5-104 master/slave driver.
DriverTXP.dll Driver for Siemens Teleperm systems.
MarkDrv.dll Driver for GE Mark V and Mark VI systems
MBDriver.dll Standard Modicon Modbus master driver
SpaBus.dll Driver for SPA-BUS protocol
TextDrv.dll Driver for CSV or fixed length text files
DriverHostProcess.exe Shell where the driver dll is running into
DriverAc870P.dll Melody driver.
DriverP14.dll P14 driver dll.
Comli driver for Comli communication
SPlus Operations Scanner Reference Guide CONFIGURATION
20 2VAA000725E
DriverSNMP.dll Driver for the SNMP polling protocol
DriverSnmpTrap.dll
Driver for the SNMP trap protocol

DriverPerfMon.dll Driver to retrieve process performance parameters

The log file is created in S+ Operations default log folder, if it is enabled by setting the EnableTrace register to YES it is
called TraceScanner.txt. The TraceLevel bits allow to select the details of the trace to be enabled. These registers are
read by the Scanner at each cycle.
SPlus Operations Scanner Reference Guide TRACE MANAGER
2VAA000725E 21
3. TRACE MANAGER

Trace Manager is used to automatically enable/disable and configure trace level for different processes/threads/drivers in
S+ Operations. For each driver there is decription of the Trace levels and these levels has to be configured using Trace
Manager, and not manually by registry keys.
The file placed in the following location:
\ABB Symphony Plus\Operations\deck\RegConf.xml is called RegConf.xml .
1. To open the TraceManager right click on PwMonitor select System Operations and then select Trace Manager
as shown in the following figure.


2. The Trace Manager window as shown in the following figure appears.

.

SPlus Operations Scanner Reference Guide TRACE MANAGER
22 2VAA000725E
The Window has three different tabs as listed below. The tabs contains all the different processes/thread/drivers that you
can configure:
Trace Tab
Special Tab
Driver Tab
The two buttons at the bottom are as follows:
Restore Target Default Button With this button is used to restore registry situation to default values. The default values
are contained in the [RegConf.xml] file in the target attribute.
Commit Changes When all changes are done by writing in the registry with this button you commit changes and restart
the trace process to immediately enable your modifications.
3.1 Trace Tab
The Trace Tab in the trace Manager is used to enable/disable trace and set trace level.
The list of processes/threads is listed here by reading directly from the RegConf.xml file. And it searchs the registry key
path [APPS\Trace] for every couple of sub keys like as follows:

<REGENTRY>
path = APPS\Trace\<process/thread
name>
name = Trace
server = Y or N
memo = <DESCRIPTION>
target = <DEC VALUE>
type = BOOL
descr = <process/thread name> Debug
Messages

<REGENTRY>
path=APPS\Trace\<process/thread name>
name = TraceLevel
server = Y or N
memo = Accuracy of log tracing
target = <DEC VALUE>
type = DWORD
descr = Accuracy of log tracing
min = <DEC VALUE>
max = <DEC VALUE>

To make changes to any of the Application Trace, select the checkbox of the required Process whose Trace value needs to
be changed and set the required value.
The details of the tabs in the Trace page are as listed below.
Process . These are the list of Proceses in the system. Select the CheckBox of the required process/thread name to
enable/disable trace.
Trace Lev - Set the Trace value . The trace level set should be a HEX Value.
Trace Lev - Set the Trace value here . The trace level set should be a DECIMAL Value
Button [ ]Select this button to open a window as follows. This window sets a previously defined trace level


Button [ ? ] = Click on this button to populate a description about process/thread at the lower left part of the window. This
description is <DESCRIPTION> contained in the relative memo attribute of [RegConf.xml] file.
An example of the Trace tab of Trace Manager is as shown in the following figure.
SPlus Operations Scanner Reference Guide TRACE MANAGER
2VAA000725E 23


3.2 Special Tab
Special tab is used to enable/disable TagsToTraceUpdate feature and is used to trace the tag value.
The list of processes/threads is listed here by reading directly from the [RegConf.xml] file. And it searchs the registry key
name [TraceTagUpdate].for every couple of sub keys like as follows:

<REGENTRY>
path = APPS\<process/thread name>
name = TraceTagUpdate
server = Y or N
memo = <DESCRIPTION>
target = <DEC VALUE>
type = BOOL
descr = Trace <process/thread name>
tags update in the ErrorLog file
<REGENTRY>
path=APPS\<process/thread name>
name = TagsToTraceUpdate
server = Y or N
memo = Used by <process/thread name>
to retrieve tags to be traced
target = <DEC VALUE>
type = STRING
descr = Used by <process/thread name>
to retrieve tags to be traced
min = <DEC VALUE>
max = <DEC VALUE>

SPlus Operations Scanner Reference Guide TRACE MANAGER
24 2VAA000725E

The Special tab of the Trace Manager window is as shown in the following figure. The Special page has the following details:
Process/thread name
CheckBox to enable/disable the entire feature
Text Box to write (comma/blank separated) the tag names to be traced.


3.3 Driver Tab
Driver tab is used to enable trace l/disable trace and set level for drivers.
The list of processes/threads is listed here by reading directly from the machine registry under the key [Scanner].
For every sub key found a relative line has set.
Columns in the tab are:
Driver is the checkbox to select driver trace | driver name
Trace Lev - Set the Trace value . The trace level set should be a HEX Value
Trace Lev - Set the Trace value here . The trace level set should be a DECIMAL Value


SPlus Operations Scanner Reference Guide TRACE MANAGER
2VAA000725E 25


SPlus Operations Scanner Reference Guide INSTALLING THE DRIVERS
26 2VAA000725E
4. INSTALLING THE DRIVERS
The drivers are all installed under the path C:\Program Files\ABB Symphony Plus\Operations\bin\drivers. Drivers are
simple dll and need not be registered.
If necessary, follow the procedure used to register the dll for the communication with the physical level:
Regsvr32 C:\Program Files\ABB Symphony Plus\Operations\bin TcpDrv.dll
or
Regsvr32 C:\Program Files\ABB Symphony Plus\Operations\bin ComDriver.dll
(TcpDrv.dll in case of TCP/IP communication, ComDriver.dll in case of serial communication).
The drivers implemented are listed in the following table:
Table 4-1:List of Drivers
Driver DLL name Phys. level Features
Iec104 Driver104.dll TcpDrv.dll Data exchange as per standard IEC 60870-5-104
Iec101 Driver101.dll ComDriver.dll Data exchange as per standard IEC 60870-5-101
Modbus MBDriver.dll MbLibd.dll Data exchange as per serial Modbus protocol
(both RTU and ASCII modes are supported)
Spabus Spabus.dll ComDriver.dll Data exchange as per serial SPAbus protocol
Textdrv Textdrv.dll -- Data exchange from/to text file
Txp DriverTXP.dll TcpDrv.dll Data acquisition from Siemens Teleperm XP
Mark MarkDrv.dll TcpDrv.dll Data exchange from/to GE Mark V and
Mark VI
Modbus TCP MBTCPDriver.dll TcpDrv.dll Data exchange as per TCP/IP Modbus protocol
SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
2VAA000725E 27
5. IEC 60870-5-104 DRIVER
5.1 Registers
The driver-specific registers are as listed in the following table.
Table 5-1: Driver Specific Registers
Name Type Values Description
ProgID Char Driver104
BusAddress Char [tcp/ip address or node name]
(192.1.1.1)
Address of the main node
BusAddress2 Char [tcp/ip address or node name] () Address of the redundant node ( if it doesn't
exist).
BusPort Int 2404 Standard port reserved for the IEC protocol
BusProgID Char TcpDrv.TcpApi
BusType Char TCP
UseAtoms Char Yes Required if at least one command is provided
(it uses atoms for the exchange of select /
execute / termination information)
TraceLevel Int [bit mask]
0xFFFF
Bit mask for trace enabling:
TRC_HIGH 0x001 errors
TRC_LOW 0x002 Tcp log
TRC_CONN 0x004 connection
TRC_VAR 0x008 vS vR variables
TRC104_REG 0x010 register warning
TRC104_LOW 0x020 low level info
TRC104_CFG 0x040 configur. warning
TRC104_CMD 0x080 command trasm.
TRC104_FILE 0x100 file transfer

The following registers are only used by IEC 104 driver:
Table 5-2: Registers for IEC 104 Drivers
Name Type Values Description
OperateTimeout Int [sec] (0) Timeout for an Execute command confirmation to
be sent (0=disabled)
UseCorrelator Char [YES/NO] Use of command correlation atoms
UseCmdAlarms Char [YES/NO] An alarm is generated for command related tags in
case control operation is not properly executed
ClockSyncDevice Int [device address] (0) Address of the device that sends the external
synchronization message (0 = disabled)

DeviceType Char [device type] () Check table 4.3 for Device Type info
UseDoubleSearch Char [YES/NO] It performs a double search for tags in the DB
based on the message type code: with and without
timestamp (see field_AD5)
UseSeqControl Char [YES/NO] It sequences control direction commands to avoid
sending more than one command at a time
MonitorDir Char [YES/NO] Driver used in Monitor Direction
MaxConnAccept Int [num] (0) Maximum number of input connections accepted ( if
MonitorDir enabled). 0 = no limit.
ConnRetries Int [num] (1) Connection attempts before switching between
BusAddress1 and BusAddress2
AttemptDelay Int [num] (0) Time between connection attempts during a
switching between BusAddress1 and BusAddress2
DependsOnGI Char [YES/NO] Status of connection depends on General
Interrogation result (success or failure).
CSTime Int [num] (1) Hour (0:23) for sending daily clock sync. If > 23 then
clock sync is disabled.
SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
28 2VAA000725E
GISecDelay Int [num] (5) Number of seconds to wait before sending a GI,
after a Connection has been established (if
required)
BusAddrControlTag Char [char] Name of the analog tag used to control
BusAddress1 and BusAddress2 management.
BusAddr1Enable Value Int [num] (0) When BusAddrControlTag has a value equal to this
registry BusAddress1 is enabled.
BusAddr2 EnableValue Int [num] (0) When BusAddrControlTag has a value equal to this
registry BusAddress2 is enabled
TimComplete Int [msec]
(DeviceTimeout)
Completion time of a blocking receive on the device
in case acquisition has failed
TimTxRx Int

[msec]
(DeviceTimeout/10)
Maximum wait time to elapse between the signaling
and the reception of the messages expected at the
port
TimT0 Int [msec] (30000) Timeout for connection to be established
TimT1 Int

[msec] (15000) Timeout for receiving the acknowledge of a frame
that was previously sent
TimT2 Int [msec] (10000 Timeout for sending an acknowledge in case no
information frame is received (TimT2 < TimT1)
TimW Int

[num] (8) Maximum number of frames received before
sending an acknowledge (in combination with T2)
TimK Int [num] (12) Maximum number of frames sent before receiving
an Acknowledge
5.2 Online Configuration
The driver registry key can also contain some registers that stores the strings with the online configuration and shows
when a tag is displayed or changed in the Acquisition and Output Tables.
Table 5-3: Registers for Online Configuration
Name Type Values
Label_ad1 and/or Label_out_ad1 Char ASDU comm addr
Label_ad2 and/or Label_out_ad2 Char Info obj addr
Label_ad3 and/or Label_out_ad3 Char Data Type code
Label_ad4 and/or Label_out_ad4 Char Scan class
Label_ad5 and/or Label_out_ad5 Char Type identification
Label_ad6 and/or Label_out_ad6 Char Cmd Qualifier
Label_ad7 and/or Label_out_ad7 Char T.o. wait select
Label_ad8 and/or Label_out_ad8 Char T.o. wait confirm
Label_ad9 and/or Label_out_ad9 Char T.o. wait termin.
Label_ad10 and/or Label_out_ad10 Char n.u.( not used)
Label_text1 and/or Label_out_text1 Char Mask flags Y/N
5.3 Device Type
The driver manages some automatic operations, depending on the device that is being scanned. The following automatic
checks/operations can specified, by configuring the DeviceType register:
Table 5-4: Automatic Check Operations
DeviceType Event Actions
All Connection is established Reset command tags having OLD quality
status
Clock synch is received Set system date and time (only if synch
message is coming from the device
enabled in ClockSyncDevice)
Cyclically (every day at
CSTime)
Send clock synch to DevAddronly if not in
Monitor Direction
Connection is established Send clock synch to DevAddr
Send general interrogation to DevAddr
DEVICE_TYPE_01 (PCG) End of initialization is received Send reset with in service qualifier
SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
2VAA000725E 29
Send clock synch
Send general interrogation
"Rtu operable" / "Rtu in
service" is received
Set / reset OLD quality tags of the device
Send clock synch
Send general interrogation
"Modem is up" is received Send clock synch
FW or DB release info is
received
Send general interrogation
store it in string-type tags

DEVICE_TYPE_02
(SOTTOCENTRO_PCG)
connection is established Send clock synch to DevAddr
Send general interrogation to broadcast
address
"Rtu operable" / "Rtu in
service" is received
Set / reset OLD quality devices
FW or DB release is received Store it in string-type tags


DEVICE_TYPE_03
(CENTRO_PCG)
connection is established
clock synch is received Set system date and time (only if coming
from the device enabled in
ClockSyncDevice)
general interrogation is received Send all configured tags (only if addressed
to
DevAddr, otherwise ignore the request)
FW or DB release info is
received
Store it in string-type tags
DEVICE_TYPE_04 (UP02) connection is established Send clock synch to DevAddr
Send general interrogation to DevAddr
a debug message is received write debug data into a file
DEVICE_TYPE_05
(RTU560)
connection is established Send clock synch to DevAddr
Send general interrogation to DevAddr
"RTU active" is received set / reset OLD quality tags of the device


DEVICE_TYPE_06 (STCE)
connection is established Reset OLD quality commands
Send clock synch
Send general interrogation
a counter containing the date
of RTU last reading is received
Store it in string-type tags
5.4 Files
5.4.1 Log Files
The log files are created in the Logs folder if they are enabled by setting the Trace register to YES and are named
Trc_<key name>.log and TrcTcp_<TCP address>.log. Furthermore the TraceLevel bits allow to select the details of the
trace to be enabled. These three registers are cyclically read by the driver.
5.4.2 File Transfer
The files are located in the FileConfPath folder and are named according to the following scheme:
The file naming scheme is listed in the following table.
Table 5-5: File Naming Scheme
Name Type Values Description
FileConfPath Char [folder name] () Directory for file reading/writing
FileConfPref Char [file prefix] (D_%03d_%03d_%02d) File prefix formatted with: Common Address,
Information Object Address, File number
FileConfSuff Char [file suffix] (.iod) File suffix
FileMultiple Char [YES/NO] File name is distinguished also by time
stamp (allowing more than one file for same
CA, IOA and file name).
FileDelete Char [YES/NO] File is to be deleted after it has been sent.
LenSegment Int [bytes] (1..236) Length (in bytes) of File Transfers single
segment
TimFileTrx Int msec] (100) Time between two consecutive transmissions
of file transfer segments.
Before sending the final segment this timeout
is multiplied by 20
SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
30 2VAA000725E
5.5 Database
The database fields of IEC 104 driver arelisted in the following table:
Field Description
FACEPLATE String contains the name of the command faceplate
For example:
Prctrl.Pop_1s for a single digital command with select before execute
Prctrl.Pop_2s for a double digital command with select before execute
Prctrl.Pop_1e for an execute-only single digital command (direct command)
Prctrl.Pop_2e for an execute-only double digital command (direct command)
FIELD_DRV For both inputs and inputs/outputs
OUTn_DRV For both outputs and inputs/outputs
AD1 Common address of the ASDU. (for example: 511= 0x1FF= PCG1, 767= 0x2FF= PCG2, 257=
0x101= RTU1 of PCG1, etc.)
AD2 Information Object Address (only the two lowest bytes without Data Type Code ).
AD3 Data Type Code (or the highest byte of the Information Object Address for devices that use
three bytes.)
AD4 Scan class
AD5 Message type identifier
AD6 Command qualifier
Single command, Double command and Regulation Step
0 = No indication
1 = Short pulse
2 = Long pulse
3 = Persistent output
16 .. 31 = special use (private range)
Set point
0 = No indication
64..127 = special use (private range)
General interrogation
20 = station interrogation
Counter interrogation
0 = no count
1 .. 4 = group n. 1..4 counter request
5 = general count request
6 .. 31 = special use (compatible range)
32 .. 63 = special use (private range)
AD7 Control direction - command selection confirmation waiting time-out (in seconds) Monitor
Direction Time (in seconds) for cyclic sending
AD8 Command execution confirmation waiting time-out (in seconds)
AD9 Command termination waiting time-out (in seconds)
TX1 Flag mask (Y/N), indicating:
Input point
Output point
Skip Old---if Y the tag is not set to old in case of Rtu becoming inoperable
Event---if Y the tag is sent directly to the scanner, to be stored in the database (mainly used for
commands or inputs/outputs)
Multiple values---if Y contiguous addresses can be stored in atoms from 2 to 5.
Auto--- send ACTCON if Y ACTCON is automatically sent by slave when a command is
received
Auto---end ACTTERM if Y ACTTERM is automatically sent by slave when a command is
received
Table 5-6: List of Input Message Type Identifer
Input Monitor direction code with timestamp CP56Time2a
single point information 1 30
double point information 3 31
step position information 5 32
bit string information 7 33
measured value, normalized 9 34
measured value, scaled 11 35
measured value, short floating 13 36
integrated totals 15 37
packed single point 20
SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
2VAA000725E 31
measured value, normalized 21
without quality descriptor
event protection 38,39,40
Table 5-7: List of Output Message Type Identifier
Output control direction code Timestamp CP56Time2a
single command 45
double command 46
regulating step 47
normalized set point command 48
scaled set point command 49
bitstring command 51
single command 45
Table 5-8:List of Controls
Control Control direction code Timestamp CP56Time2a
General interrogation 100
Counter interrogation 101
Clock synch 103
Reset command 105
File transfer (start) 120
Directory call 126
5.5.1 Data Uniqueness
The tags passed to the driver must not be duplicate. Uniqueness is ensured by the combination of the fields AD1, AD2,
AD3 and AD5.
5.5.2 Tag Configuration
The information (tag) in the S+ Operations database must be treated differently according to the protocol message which
carries the data.
The following tables list the significant information to be configured for each type of data, except for addressing and scan
class. The differentiating parameter is the field AD5.
Table 5-9: List of Inputs Monitors
Input Monitor direction AD5 TYP I4 AD6 AD7,8,9 TX1 ATOM1
Single point information 1, 30 Dig - 0 No YN?N
Double point information 3, 31 Bitmask - 0 No YN?N
Step position 5, 32 Ana Y 0 No YN?N
Information
Bit string information 7, 33 Bitmask Y 0 No YN?N
Measured value, 9, 34 Ana - 0 No YN?N
Normalized
Measured value, scaled 11, 35 Ana - 0 No YN?N
Measured value, short 13, 36 Ana N 0 No YN?N
Floating
Integrated totals 15, 37 Ana Y 0 No YN?N Cmd, 9
Packed single point 20 Dig 0 No YN?N Cmd, 9
Measured value, 21 0 No YN?N
Normalized without
Quality descriptor
Event protection 38,39, Dig 0 No YN?N
40
Table 5-10: List of Output Controls
Output Control Direction AD5 TYP I4 AD6 AD7,8,9 TX1 ATOM1
Single command 45 Dig 1..31 Yes YYNY Cmd, 9
Double command 46 Bitmask 1..31 Yes YYNY Cmd, 9
Regulating step 47 Dig 1..31 Yes YYNY Cmd, 9
Normalized set point 48 Ana 1..127 Yes YYNY Cmd, 9
Command
Scaled set point 49 Ana 1..127 Yes YYNY Cmd, 9
Command
SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
32 2VAA000725E
Bitstring command 51 Bitmask 1..31 Yes YYNY Cmd, 9
Table 5-11:List of Controls
Control Control
Direction
AD5 TYP I4 AD6 AD7,8,9 TX1 ATOM1
General interrogation 100 Dig 20 Yes YYNY Cmd, 9 Ad2 = Ad3 = 0
Counter interrogation 101 Dig 1..64 Yes YYNY Cmd, 9
Clock synch 103 Dig 1..31 7 & 8 YYNY Cmd, 9
Reset command 105 Dig 1 7 & 8 YYNY Cmd, 9 Ad2 = Ad3 = 0
File transfer (start) 120 Yes YYNY Cmd, 9
Directory call 126 Yes YYNY Cmd, 9
Table 5-12: Connection Tags
Connection tag TYP I4 AD1 AD2 AD3 TX1 ATOM1 ZERO SPAN
Slave connection counter Ana N 0 2 0 YN?N No 0 65535
5.6 Commands
5.6.1 Command Configurationyes
For command-type tags and counters configuration of the atom fields is mandatory:
Atom Field Description
ATOM1NAM Atom name
For commands to be used in pop-ups for operators action. For ex. CMD For
the counters it contains the counter's sequence number. For ex. SEQ
ATOM1TYP Atom type (9 = digital)
ATOM1VAL Initial value (0)

The digital status and step commands (control direction) use in the database the 24 most significant bits (bits 8:31) of the
double word value of ATOM1 of the tag. In particular the bits 16:23 (byte 2 of the double word) contain the value of the
command Qualifier, while the bits 0:15 (bytes 0 and 1 of the double word) contain the Command codes to issue the
commands and control the command sessions.


The value of the Command Qualifier is transferred directly to the command message itself. If the value of the field
Command Qualifier is 0, the Command Qualifier located in field _AD6 of the configuration database is included within the
message for transmission. The bit configuration in the command word is defined as follows:

SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
2VAA000725E 33
At system start-up, the value of these control bits in the database is 0.
After the system has started the value of these bits, normally found in the database after a command session has
terminated, depends on the result of the last command session performed (if at least one has been executed).
The command session is closed and the channel is freed if the value of the bits 0, 1, 2, 3, 4 and 5 of the double word of
ATOM1 is 0 while a valid code is present in the Session Closed Exit code field.
No new command session can be started before the previous one has terminated, and only commands belonging to the
ongoing session can be sent. The Operator interface must ensure that the above rules are strictly observed.
For Set Point commands (_AD5 = 48) the double word of ATOM1 represents the analog set point value for the tag.
5.6.2 Command Sessions
Command session means the cycle of commands sent by the two stations for the actual execution of a field command.
The number of commands inside a command session is variable and depends on both the type of session and on the
protocol rules followed by the stations. Therefore a command session can include the transmission of one or more
commands and the reception of one or more responses.
The driver also comes with 3 user-configurable timeouts, that interact with the command sessions:
The Select Timeout (field _AD7 of the configuration database) is the timeout for the driver to receive a Select
Confirmation after having sent a Select command.
The Confirm Timeout (field _AD8 of the configuration database) is the timeout for the driver to receive an Execution
Confirmation after having sent an Execute command.
The Operate Timeout (register key OperateTimeout) is the timeout for the user to go on with the session, issuing either
an Execute or a Break (Deselect) command, after having received the Select Confirmation, that follows the transmission
of a Select command.
The Termination Timeout (field _AD9 of the configuration database) is the timeout for the driver to receive a Control
Operation Terminated after having received the Execution Confirmation, following the transmission of an Execute
command. If the value of this timeout is 0 the Operation Terminated is not waited for, and the command session is closed
with the Execution Confirmation.
Timeouts are expressed in seconds. As soon as one of them has elapsed the command session is closed.
5.6.3 Command/Response Codes
The following tables contain all the accepted codes that can appear in the Command code field of doubleword ATOM1
(least significant word, bits 0-15).
Table 5-13: Accepted Codes
Select command decimal hex
Select 0 Command 1 0001
Select 1 Command 2 0002
Select 2 Command 4 0004
Select 0 Positive Confirm 9 0009
Select 1 Positive Confirm 10 000A
Select 2 Positive Confirm 12 000C
Select 0 Negative Confirm 4352 1100
Select 1 Negative Confirm 4608 1200
Select 2 Negative Confirm 4864 1300
Select 0 Confirm Timeout 8448 2100
Select 1 Confirm Timeout 8704 2200
Select 2 Confirm Timeout 8960 2300
Deselect command decimal hex
Deselect 0 Command 41 0029
Deselect 1 Command 42 002A
Deselect 2 Command 44 002C
Deselect 0 Positive Confirm 1024 0400
Deselect 1 Positive Confirm 1280 0500
Deselect 2 Positive Confirm 1536 0600
Deselect 0 Negative Confirm 5120 1400
Deselect 1 Negative Confirm 5376 1500
Deselect 2 Negative Confirm 5632 1600
Deselect 0 Confirm Timeout 9216 2400
Deselect 1 Confirm Timeout 9472 2500
Deselect 2 Confirm Timeout 9728 2600
Deactivate command decimal hex
SPlus Operations Scanner Reference Guide IEC 60870-5-104 DRIVER
34 2VAA000725E
Deactivate 0 Command 57 0039
Deactivate 1 Command 58 003A
Deactivate 2 Command 60 003C
Deactivate 0 Positive Confirm 2560 0A00
Deactivate 1 Positive Confirm 2816 0B00
Deactivate 2 Positive Confirm 3072 0C00
Deactivate 0 Negative Confirm 6656 1A00
Deactivate 1 Negative Confirm 6912 1B00
Deactivate 2 Negative Confirm 7168 1C00
Deactivate 0 Confirm Timeout 10752 2A00
Deactivate 1 Confirm Timeout 11008 2B00
Deactivate 2 Confirm Timeout 11264 2C00
SPlus Operations Scanner Reference Guide IEC 60870-5-101 DRIVER
2VAA000725E 35
6. IEC 60870-5-101 DRIVER
6.1 Registers
The driver-specific registers are as listed in the following table:
Table 6-1: Driver Specific Registers
Name Type Value Notes
Active REG_SZ [YES/NO] The driver is activated if this flag is
YES.
DiagnosticTag REG_SZ TAGNAME The name of the diagnostic tag of
the driver.
ProgID REG_SZ Driver101.

Not to be changed.
BusPort REG_DWORD [serial port number] Number of the serial port used for
communication.
BusProgID REG_SZ ComDriver. ComDrv Not to be changed.
BusType REG_SZ COM Not to be changed.
BusAddress REG_SZ [baud rate, parity, n.bits, stop
bit] (9600,n,8,1)
Serial port communication
parameters.
UseAtoms REG_SZ [YES/NO] Required if at least one command
is provided (the atoms are used
for the exchange of select /
execute / termination information).
InitTimeout REG_DWORD [sec] (10) Delay between an initialization
attempt and the next one.
DeviceTimeout REG_DWORD [sec](10 ) Timeout in milliseconds used for
Tx/Rx in serial communication
TraceLevel REG_DWORD [bit mask]
0xFFFF
Bit mask to enable different trace
levels:
TRC_HIGH 0x001 errors
TRC_LOW 0x002 Serial
port (ComDriver) log
TRC_CONN 0x004
connection
TRC101_REG 0x010 register
warning TRC101_LOW 0x020
low level info
TRC101_CFG 0x040
configuration warnings
TRC101_CMD 0x080
command transmission
TRC101_FILE 0x100 file
transfer
MonitorDir REG_SZ [YES/NO] Sets Control (Master, Central
Station) or Monitor (Slave, RTU)
direction for the driver.

The following registers are used only by driver IEC 101 :
Table 6-2: Registers for IEC 101 Drivers
Name Type Values Description
LenCommonAddr REG_DWOR D [1/2] Length (in bytes) of the Common Address.
LenCoT REG_DWOR D [1/2] Length (in bytes) of the Cause of Transmission. [1/2/3]
LenObjectAddr REG_DWOR D Length (in bytes) of the Information Object Address.
[sec]
OperateTimeout REG_DWOR D (0) Timeout for an Execute command confirmation to be
sent (0=disabled).
UseCorrelator REG_SZ [YES/NO] Use of command correlation atoms .
UseCmdAlarms REG_SZ [YES/NO] An alarm is generated for command related tags in case
control operation is not properly executed.
DeviceType REG_SZ [device
type]
Type of device to which this driver must connect to; it
can be (UP02, RTU560, STCE).
UseDoubleSearch REG_SZ [YES/NO] It performs a double search for tags in the DB based on
the message code: with and without timestamp (see
field_AD5).
SPlus Operations Scanner Reference Guide IEC 60870-5-101 DRIVER
36 2VAA000725E
UseSeqControl REG_SZ [YES/NO] It sequences control direction commands to avoid
sending more than one command at a time.
UseDstAdjust [YES/NO] DST corection for received timestamps.
UseListenData REG_SZ [YES/NO] The driver uses data coming from the RTUs in listen
mode to update S+ Ops.database.
CntDelayListen REG_DWOR D [num] (1) Cycle delay for checking messages coming from RTUs
in listen mode.

Table 6-3: List of Registers
Name Type Values Description
TimComplete REG_DWORD [msec] (DeviceTimeout) Completion time of a blocking receive on
the device in case acquisition has failed
TimTxRx REG_DWORD [msec]
(DeviceTimeout/10)
Maximum wait time to elapse between the
signaling and the reception of the
messages expected at the port
TimT0 REG_DWORD [msec] (30000) Timeout for the connection to be
established
TimT2 REG_DWORD [msec] (10000) Multiplier for the calculation of the silence
time
required to determine the end of a single
message.
FlowCtrl REG_DWORD FC_NONE=0,
FC_DSR=0x01,
FC_CTS=0x02,
FC_DTRD=0x04,
FC_DTRH=0x08,
FC_RTSD=0x10,
FC_RTSH=0x20,
FC_RTST=0x40,
FC_XONXOFF=0x80
Combination of the flow control bits:
Data Set Ready (Disable / Enable)
Clear To Send (Disable / Enable)
Data Terminal Ready (Enable / Disable)
Data Terminal Ready (Enable /
Handshake)
Req. To Send (Enable / Disable)
Req. To Send (Enable / Handshake)
Req. To Send (Enable / Toggle)
Xon-Xoff (Disable / Enable)
FileConfPath REG_SZ [folder name] () Directory to write the received files into.
FileConfPref REG_SZ [file prefix]
(D_%03d_%03d_%02d)
File prefix formatted with: Common
Address, Information Object Address, File
name.
FileConfSuff REG_SZ [file suffix] (.iod) File suffix
FileMultiple REG_SZ [YES/NO] File name is distinguished also by time
stamp (allowing more than one file for
same CA, IOA and file name).
LenSegment REG_DWORD [bytes] (235) Length of a data segment in F_SG_NA_1
messages (file transfer).
TimFileTrx REG_DWORD [msec] (100) Number of milliseconds to wait between
the transmission of two consecutive
F_SG_NA_1 messages (file transfer).
UseModem REG_SZ [YES/NO] The driver uses a modem to reach the
devices.

This set of registers is needed only when the driver uses a modem to connect to the RTUs (UseModem = YES):
Table 6-4: Registers for RTUs
Name Type Values Description
MdmInit REG_SZ [string] (ATE0V0) Modem init string (AT commands).
MdmCarrierWait REG_DWORD [sec] (30) Timeout for the modem carrier signal (DCD) to
become active after the phone number has been
dialed.
MdmIdleTime REG_DWORD sec] (0) Maximum idle time before automatic hang-up
MdmIdleTime (0 = manual hang-up only).
MdmRetry REG_DWORD [num] (3) After MdmRetry failed calls, the device is declared
inoperable.
MdmStopTime REG_DWORD [min] (30) After MdmStopTime minutes connection
automatically hangs-up.
6.2 Online Configuration
The driver register key can contain some registers storing the strings that the online configurator shows when a tag is
displayed or changed in the Acquisition and Output tables.
SPlus Operations Scanner Reference Guide IEC 60870-5-101 DRIVER
2VAA000725E 37
Table 6-5: Registers for Online Configuration
Name Type Values
Label_ad1 and/or Label_out_ad1 REG_SZ Common address
Label_ad2 and/or Label_out_ad2 REG_SZ Info obj addr
Label_ad3 and/or Label_out_ad3 REG_SZ Not used
Label_ad4 and/or Label_out_ad4 REG_SZ Scan class
Label_ad5 and/or Label_out_ad5 REG_SZ Type identification
Label_ad6 and/or Label_out_ad6 REG_SZ Cmd. Qualifier
Label_ad7 and/or Label_out_ad7 REG_SZ T.o. wait select
Label_ad8 and/or Label_out_ad8 REG_SZ T.o. wait confirm
Label_ad9 and/or Label_out_ad9 REG_SZ T.o. wait termin.
Label_ad10 and/or Label_out_ad10 REG_SZ Not used
Label_text1 and/or Label_out_text1 REG_SZ Mask flags Y/N

Note that the Values field can be changed, if needed, by simply re-editing the string value (no need to reinit the driver to
activate these changes). Note also that the maximum length for these strings is 16 characters.
6.3 Device Type
This driver supports the following device types:
UP02 (also known as CTU800);
RTU560
STCE
When a connection with a UP02 device is requested on a dial-up telephone line, the driver performs a proprietary
authentication procedure before establishing connection. Such procedure does not apply for the other device types,
neither is it used in case of a direct link exists to UP2 (leased line).
6.4 Files
6.4.1 Log Files
The log files are created in the Logs folder if they are enabled by setting the Trace register to YES and are named
Trc_<driver name>.log e ComDrv_<port num>.log. Furthermore the TraceLevel bits allow to select the details of the
trace to be enabled. These two registers are read cyclically by the driver (i.e. no need to reinitialize the driver if they are
changed).
6.5 Database
The database fields have the same meaning of the fields used by Driver104 in control direction with the exception of
FIELD_AD3 that is not used.
6.5.1 Device Diagnostics
A few diagnostic-type tags can be configured to monitor the proper operation of the devices connected to the serial line.
These tags are distinguishable by the content of field AD5. As it doesnt contain any type of configured message (0), it
cannot be sent/received to/from t a field device.
In addition to the serial line diagnostic tag , the following tags should be configured to get information about the status of
the driver and of the devices being connected. There can be one of these tags for each driver instance.
Table 6-6: Driver Connection Tags
Drivers Connection
Tags
TYPE I4 AD1 AD2 AD3 TX1 ATOM1 ZERO SPAN
Polling cycle counter Ana N 0 0 0 YN?N no 0 65535
Rtu in poll ID Ana N 0 1 0 YN?N no 0 65535
Opened connections
counter
Ana N 0 2 0 YN?N no 0 65535
Common address of
an unauthorized RTU
Ana N 0 3 0 YN?N no 0 65535
Backup connection
status
Dig 0 4 0 YN?N no OK ERROR
Connection status Ana N 0 5 0 YN?N no 0 65535

SPlus Operations Scanner Reference Guide IEC 60870-5-101 DRIVER
38 2VAA000725E
The polling cycle counter provides a running total of the poll (interrogation) cycles, and its value is increasing when at least
one device is connected to the driver.
RTU in poll ID provides the common address of the RTU that is currently being polled. For each device to be connected by
the driver a set of tags is available for monitoring the connection status.
Table 6-7: RTU Diagnostic Tags
Rtu diagnostic tags TYPE I4 AD1 AD2 AD3 TX1 ATOM1 ZERO ONE
Inoperability status Dig addr 0 0 YN?N no OK ERROR
Rtu connections counter Ana N addr 2 0 YN?N no 0 65535
RTU type Ana N addr 3 0 YN?N no 0 65535
RTU usage Ana N addr 4 0 YN?N no 0 65535
RTU Identifier Text N addr 5 0 YN?N no
RTU unreachable Dig N addr 6 0 YN?N no YES NO
Last connection
timestamp
Ana N addr 7 0 YN?N no 0 65535

Inoperability status marks the current RTU status (operable / not operable).
RTU connections counter is a counter of the number of times a given RTU (equipped with a modem) has been connected
to S
+
Operations, either by a direct call from S+ or after a spontaneous call made by the RTU itself.
6.6 Commands
For the general configuration and command transmission methods see the similar paragraph for IEC 104 driver. Hereafter
info is given regarding the Poll Command tag only:
In an environment where a modem is used to connect RTUs, this tag is used to start dialing the RTU to be
reached, using the telephone number to be stored in field _TX2
In an environment where the RTU is connected either on a point-to-point or on a multipoint line (no modem), this
tag is used to start the poll (interrogation) of the RTU.
Table 6-8: Poll Command Tag
Rtu poll tag TYPE I4 AD1 AD2 AD3 TX1 ATOM1 ZERO ONE
Poll Command Dig Addr 1 0 YYNY cmd, 9 LISTEN POLLING

SPlus Operations Scanner Reference Guide IEC 60870-5-103 DRIVER
2VAA000725E 39
7. IEC 60870-5-103 DRIVER
7.1 Registers
The driver-specific registers are as listed in the following table.
Table 7-1: Driver Specific Registers
Name Type Value Notes
Active REG_SZ [YES/NO] The driver is activated if this flag is YES.
DiagnosticTag REG_SZ TAGNAME The name of the diagnostic tag of the driver.
ProgID REG_SZ Driver103 Class ID of the COM object that implements
the driver
BusPort REG_DWORD [serial port number] Number of the serial port used for
communication
BusProgID REG_SZ ComDriver.ComDrv Class ID of the COM object used for the
physical layer
BusType REG_SZ COM Type of communication device
BusAddress REG_SZ [baud rate, parity, n.bit,
stop bit] (9600,n,8,1)
COM port settings
TraceLevel REG_DWORD [bit mask]
0xFFFF
Bit mask to enable different detail degrees:
TRC_HIGH 0x001 errors
TRC_LOW 0x010 Serial port
TRC103_REG 0x020 register warning
TRC103_CFG 0x040 configuration
warnings TRC103_CMD 0x080 command
transmission TRC103_FILE 0x100
file transfer
Table 7-2: IEC 60870-5-103 Registers and Description
Name Type Values Description
OperateTimeout REG_DWOR D [sec] (0) Timeout for an Execute command
confirmation to be sent (0=disabled).
UseCorrelator REG_SZ [YES/NO] Use of command correlation atoms .
UseCmdAlarms REG_SZ [YES/NO] An alarm is generated for command
related tags in case control operation is
not properly executed.
DeviceType REG_SZ [device type] () Type of device to which this driver must
connect to; it can be (UP02, RTU560,
STCE).
UseDoubleSearch REG_SZ [YES/NO] It performs a double search for tags in the
DB based on the message type code:
with and without timestamp (see field
_AD5)
UseSeqControl REG_SZ [YES/NO] It sequences control direction commands
to avoid sending more than one
command at a time.
UseDstAdjust [YES/NO] DST correction for received timestamps
UseListenData REG_SZ [YES/NO] The driver uses data coming from the
RTUs in listen mode to update S+
Ops.database.
CntDelayListen REG_DWORD [num] (1) Cycle delay for checking messages
coming from RTUs in listen mode.
TimComplete REG_DWOR D [msec] (DeviceTimeout) Completion time of a blocking receive on
the device in case acquisition has failed.
A blocking receive is not sent in async
mode, but it is forced to wait for a certain
time before being processed, to
eventually detect that send /receive has
not been successfully completed. This
timeout is represented by TimComplete
TimTxRx REG_DWOR D [msec]
(DeviceTimeout/10)
Maximum wait time to elapse between the
signaling and the reception of the
messages expected at the port.
TimT0

TimT2
REG_DWORD

REG_DWORD
[msec] (30000)

[msec] (10000)
Timeout for connection to be established

Multiplier for the calculation of the
SPlus Operations Scanner Reference Guide IEC 60870-5-103 DRIVER
40 2VAA000725E


FlowCtrl


REG_DWOR D


FC_NONE=0,
FC_DSR=0x01,
FC_CTS=0x02,
FC_DTRD=0x04,
FC_DTRH=0x08,
FC_RTSD=0x10,
FC_RTSH=0x20,
FC_RTST=0x40,
FC_XONXOFF=0x80
silence time
required to determine the end of a single
message

Combination of the flow control bits:
Data Set Ready (Disable / Enable)
Clear To Send (Disable / Enable)
Data Terminal Ready (Enable / Disable)
Data Terminal Ready (Enable /
Handshake)
Req. To Send (Enable / Disable)
Req. To Send (Enable / Handshake)
Req. To Send (Enable / Toggle)
Xon-Xoff (Disable / Enable)
FileConfPath REG_SZ [folder name] () Directory to write the received files in.
FileConfPref REG_SZ [file prefix]
(D_%03d_%03d_%02d)
File prefix formatted with: Common
Address, Information Object Address, File
name.
FileConfSuff REG_SZ [file suffix] (.iod) File suffix
FileMultiple REG_SZ [YES/NO] File name is distinguished also by time
stamp (allowing more than one file for
same CA, IOA and file name).
LenSegment REG_DWOR D [bytes] (235) Length of a data segment in F_SG_NA_1
messages (file transfer).
TimFileTrx REG_DWOR D [msec] (100) Number of milliseconds to wait between
the transmission of two consecutive
F_SG_NA_1
UseModem REG_SZ [YES/NO] The driver uses a modem to reach the
devices.

This set of registers is needed only when the driver uses a modem to connect the RTUs (UseModem = YES):
Table 7-3: List of Registers for connecting to RTUs
Name Type Values Description
MdmInit REG_SZ [string] (ATE0V0) Modem init string (AT commands).
MdmCarrierWait REG_DWORD [sec] (30) Timeout for the modem carrier signal
(DCD) to become active after the phone
number has been dialed.
MdmIdleTime REG_DWORD [sec] (0) Maximum idle time before automatic
hang-up (0 = manual hang-up only).
MdmRetry REG_DWORD [num] (3) After MdmRetry failed calls, the device
is declared inoperable.
MdmStopTime REG_DWORD [min] (30) After MdmStopTime minutes connection
automatically hangs-up
7.2 Online Configuration
The driver register key can contain some registers that stores strings with online configuraton when a tag is displayed or
changed in the Acquisition and Output tables.
Table 7-4: Registers for Online Configuration
Name Type Values
Label_ad1 and/or Label_out_ad1 REG_SZ ASDU Common address
Label_ad2 and/or Label_out_ad2 REG_SZ Function type
Label_ad3 and/or Label_out_ad3 REG_SZ Information number
Label_ad4 and/or Label_out_ad4 REG_SZ Scan class
Label_ad5 and/or Label_out_ad5 REG_SZ Message Type identification
Label_ad6 and/or Label_out_ad6 REG_SZ Packet measure index
Label_ad7 and/or Label_out_ad7 REG_SZ Unused
Label_ad8 and/or Label_out_ad8 REG_SZ T.o. wait confirm
Label_ad9 and/or Label_out_ad9 REG_SZ T.o. wait termin.
Label_ad10 and/or Label_out_ad10 REG_SZ Not used

Note that the values field can be changed, if needed, by simply re-editing the string value (no need to reinit the driver to
activate these changes). Note also that the maximum length for these strings is 16 characters.
SPlus Operations Scanner Reference Guide IEC 60870-5-103 DRIVER
2VAA000725E 41
7.3 Device Type
This driver supports the following device types:
REL316
REB500
7SA522
SIEMENS
7.4 Files
7.4.1 Log Files
The log files are created in the Logs folder. And they are enabled by setting the Trace register to YES and are named
Trc_<driver name>.log e ComDrv_<port num>.log. The TraceLevel bits allows to select the details of the trace to be
enabled. These two registers are read cyclically by the driver (i.e. no need to reinit the driver if they are changed).
7.5 Database
Tag database fields are as listed in the following table:
Field Description
AD1 ASDU common address . For IEC 103 protocol common address has a 1 byte
fixed length
AD2 Function Type (FUN), 1 byte fixed length
AD3 Information Number (INF), 1 byte fixed length
AD4 Scan class
AD5 Message type identifier (TYP):
AD6 Packet measure index for data transmitted using ASDU 3 and 9. Value is 0 for
any other data
AD7 Not used
AD8 Timeout for Execute command confirmation in seconds (must be 0 for general
interrogation command).
AD9 Timeout for command execution termination in seconds
Table 7-5: Message Type Identifier Input Monitor Direction
Input Monitor direction Type Format Timestamp
CP32Time2a
Timestamp relative stamp
Time tagged message 1 DPI YES NO
Time tagged message with relative
time
2 DPI YES YES
Measurands I 3 MEA NO NO
Time tagged measurands with
relative time
4 MEA YES YES
Identification message 5 NO NO
Measurands II 9 MEA NO NO
Table 7-6: Message Type Identifier Service Monitor Direction
Service Monitor direction Type Timestamp
CP32Time2a
Timestamp
CP56Time2a
Timestamp relative
stamp
Time sync 6 NO YES NO
Termination of General
Interrogation
8 NO NO NO
List of recorded disturbances 23 NO YES NO
Ready for transmission of
disturbance data
26 YES NO NO
Ready for transmission of a
channel
27 NO NO NO
Ready for transmission of tags 28 NO NO NO
SPlus Operations Scanner Reference Guide IEC 60870-5-103 DRIVER
42 2VAA000725E
Transmission of tags 29 NO NO NO
Transmission of disturbance
values
30 NO NO NO
End of transmission 31 NO NO NO
Table 7-7: Message Type Identifier
Service. Monitor direction Type Timestamp
CP56Time2a
Timestamp relative stamp
Time sync 6 YES NO
General Interrogation 7 NO NO
Order for disturbance data
transmission
24 NO NO
Ack for disturbance data
transmission
25 NO NO
Table 7-8: Message Type Identifier Output Monitor Direction
Output Monitor direction Type Timestamp
CP56Time2a
Timestamp relative stamp
General Command 20 NO NO
Generic Command 21 NO NO

SPlus Operations Scanner Reference Guide MODBUS DRIVER
2VAA000725E 43
8. MODBUS DRIVER
8.1 Registers
The driver-specific registers as listed in the following table:
Table 8-1: Driver Specific Register
Name Type Values Notes
ProgID Char MBDriver
BusPort Int [serial port number]
BusProgID Char n.u.
BusType Char COM
BusAddress Char [baud rate, parity, n.bit, stop bit]
(9600,n,8,1)

DeviceType Char GENERIC
RTU211
SEPAM80
Default value if the register is not present
Used for ABB RTU 211 management
Used for SEPAM80 event management
TraceLevel Int 0xFFFF Bit mask for trace details enabling:
TRCMDB_HIGH 0x001 errors
TRCMDB_LOW 0x002 diagnostics
TRCMDB_INP 0x004 reading
TRCMDB_OUT 0x008 writing
TRCMDB_REG 0x010 register warning
TRCMDB_CNV 0x020 conversion warning
TRCMDB_CFG 0x040 configur. warning
TRCMDB_CMD 0x080 command transm.

The following registers are only used by the Modbus driver:
Table 8-2:Registers for Modbus Drivers
Name Type Values Description
AddrOffs Char [+/- num] (0) Offset of the modbus driver (to be algebraically summed to
the contents of field _AD2).
N.B. the register is of string type to accept negative
numbers.
FlowCtrl Int FC_NONE=0,
FC_DSR=0x01,
FC_CTS=0x02,
FC_DTRD=0x04,
FC_DTRH=0x08,
FC_RTSD=0x10,
FC_RTSH=0x20,
FC_RTST=0x40,
FC_XONXOFF=0x8
0
Combination of the flow control bits:
Data Set Ready (Disable / Enable)
Clear To Send (Disable / Enable)
Data Terminal Ready (Enable / Disable)
Data Terminal Ready (Enable / Handshake)
Req. To Send (Enable / Disable)
Req. To Send (Enable / Handshake)
Req. To Send (Enable / Toggle)
Xon-Xoff (Disable / Enable)
InputInterval Int [millisecond] (0) Time interval between consecutive modbus telegrams
ModbusMode Char RTU
ASCII
RTU mode (default)
ASCII mode
nRetry Int [num] (3) Number of attempts in case of send receive failure
SyncFunc Int [function] (70) Function code for time synchronization
(it has to be 100 for SEPAM80 synchronization)
SyncHour Int [hours] (0) Hours for time synchronization
SyncMin Int [minutes] (0) Minutes for time synchronization
SyncSec Int [seconds] (0) Seconds for time synchronization. If all 3 registers are set to
zero synchronization is disabled.
SyncOffs Int [milliseconds] (0) Offset to be summed to the current time for taking care of
the time-offset due to transmission duration
TestTime Int [sec] (0) Test cycle in seconds (0= no test)
TestType Int
[ 0= TEST_NONE
1= TEST_LOOP
2= TEST_MASK

3= TEST_OUT ]

Type of test to be performed
- no test
- loopback test (for the devices where it is available)
- writing and reading of a test pattern in fixed register (for
Device Diagnostic tags only)
- writing and reading of the first output tag for each
device, in order of address
BQualUse REG_SZ [YES/NO] Enable bad quality management for signals. The value
SPlus Operations Scanner Reference Guide MODBUS DRIVER
44 2VAA000725E
specified in registry BqualVal is used to set the signal in bad
(or good) quality.
BqualVal Int (0) Value used to set bad quality (see BqualUse)
DelayTxRx Int [msec](0) Delay between tx and rx of a modbus telegram
8.2 Online Configuration
The driver's register key can also contain some registers storing the strings that the online configurator shows when a tag
is displayed or changed in the Acquisition and Output tables.
Table 8-3: Registers for Online Configuration
Name Type Value
Label_ad1 and/or Label_out_ad1 Char Slave number
Label_ad2 and/or Label_out_ad2 Char register address
Label_ad3 and/or Label_out_ad3 Char Bit position
Label_ad4 and/or Label_out_ad4 Char Scan class
Label_ad5 and/or Label_out_ad5 Char Signal type
Label_ad6 and/or Label_out_ad6 Char Data type
Label_ad7 and/or Label_out_ad7 Char Bit number
Label_out_ad8 Char Pulse command duration/Event
table for SEPAM80
Label_ad9 Char Reading queue
8.3 Files
The log files are created in the Logs folder if they are enabled by setting the Trace register to YES and are named
Trc_<key name>.log. Furthermore the TraceLevel bits allow to select the details of the trace to be enabled. These three
registers are read cyclically by the driver.
8.4 Database
The database fields of the Modbus driver can take the following values:
Table 8-4: Database Fields for Modbus driver
Field Description
AD1 Device Number (Slave address).
AD2 Address of the Modbus register (starting from the AddrOffs register, if used). in case of a
Special Event, code of the function to be used.
AD3 Bit Position [0-15] (for Packed Data only) in case of a Special Event, event code
AD4 Scan class
AD5 Modbus signal type
The function to be used to read or write data depends on the value of this
field:
1. READ_OUTPUT_STATUS
2. READ_INPUT_STATUS
3. READ_OUTPUT_REGISTERS
4. READ_INPUT_REGISTERS
5. FORCE_SINGLE_COIL
6. PRESET_SINGLE_REGISTER
7. LOOP_BACK_TEST
8. FORCE_MULTIPLE_COILS
9. PRESET_MULTIPLE_REGISTERS
AD6 Modbus data type. See Appendix A for further details
AD7 number of bits to be written/read on consecutive addresses, in order to manage the
bitmask-type tags mapped on the packed data. For double digital points, for example, its
value is 2, to write on / read from Modbus two consecutive points, processed as a double-
point status on the S+ Operations side (see modbus data type 13 in the table at point
_AD6), starting from the bit specified in _AD3.
SPlus Operations Scanner Reference Guide MODBUS DRIVER
2VAA000725E 45
AD8 Duration (in seconds) of the pulse command (for _AD5 = 3 only). If DeviceType is
SEPAM80, this field is 0 for all the tags except for the Event table exchange word: if
such field is non zero the tag is the exchange word for the table, whose number is
specified by the field itself.
AD9 Length of the reception queue (number of elements). It s used for type 4 events (SOE
event). Default value is 4.
AD10 Registry data length, 0 (default) for a standard 2 bytes register, 1 for a 4 bytes register

The Values Modbus Signal are as listed below:
Table 8-5: Values for Modbus Signal Type Function
Val Type Read Funct Write Funct
0 INPUT/STATUS Analog/Digital 4/2 ---
1 HOLDING/COIL Analog/Digital 3/1 Analog/Digital 6,16/5,15
2 spare
3 PULSE COMMAND --- Digital 5
4 SOE EVENT Digital v. AD2 ---
5 DEVICE DIAGNOSTIC Analog/Digital 1-8
Table 8-6: Data Types for Modbus Registers
Type Const DESCRIPTION
0 DT_USHORT Unsigned short (1 register, HO LO, that stands for: High Order -Low
Order)
1 DT_SSHORT Signed short (1 register, HO LO)
2 DT_ULONG_HL Unsigned long (2 register, HO LO)
3 DT_SLONG_HL Signed long (2 register, HO LO)
4 DT_IEFLOAT_HL IEEE float (2 register, HO LO)
5 DT_ULONG_AEG Unsigned long (2 registers, AEG Modicon)
6 DT_SLONG_AEG Signed long (2 registers, AEG Modicon)
7 DT_IEFLOAT_LH IEEE float (2 register, LO HO)
8 DT_IEFLOAT_SW IEEE float (2 register, word swap)
9 DT_ULONG_LH Unsigned long (2 register, LO HO)
10 DT_SLONG_LH Signed long (2 register ,LO HO)
11 DT_PACKED Packed Data (1 register each bit 1 digital point)
12 DT_BIT0 Read/Write only bit 0
13 DT_MASK Read/Write on consecutive Modbus addresses the n. of bits defined in
_AD7
8.4.1 Data Uniqueness
The tags passed to the driver must not be duplicate. Uniqueness is ensured by the combination of the fields
_AD1, _AD2, _AD3 e _AD5
8.4.2 Device Diagnostics
The registers TestTime and TestType contribute to the status of the protocol diagnostic tag. For a more detailed
communication test, instead of using the content of TestType, which is forced to TEST_NONE, some read-only tags
(fields FIELD_) can be configured to perform a diagnostic test on the slaves connected by the Modbus protocol. The
following fields are defined:
Table 8-7: Device Diagnostic Fields for Modbus Signals
Field Description
AD1 Device Number (address of Slave) (direct command)
AD2 address to be tested
AD3 Type of test to be performed:
TEST_LOOP loopback test (if function 8 is enabled)
TEST_MASK writing a test pattern (see fields _AD7 e _AD8)
TEST_OUT writing a test pattern and reading it back (see field _AD7)
AD4 Scan class
AD5 Modbus signal type
5 = DEVICE DIAGNOSTIC
AD6 Modbus data type
AD7 Value / pattern to be written
AD8 Value / pattern to be read
SPlus Operations Scanner Reference Guide MODBUS DRIVER
46 2VAA000725E

If different from zero (for example in case of MasterSlave management), the TestTime register indicates the maximum
time interval for the test of the diagnostic tag to be performed.
For example, in order to poll every 10 seconds the status of the slaves 1, 2 and 3 for the MDB1 Modbus connection, three
different diagnostic tags could be configured as follows:
DEV1 with TEST_OUT on slave 1 at address 100 to write and read the word 0x01;
DEV2 with TEST_LOOP on slave 2;
DEV3 with TEST_MASK on slave 3 at address 100 to write the value 0x55 and read 0xAA;
Table 8-8: Diagnostic Tags for Modbus Connection Status
TAG FIELD_ STATE
NAME TYPE SRC DRV AD1 AD2 AD3 AD4 AD5 AD6 AD7 AD8 ZERO ONE
DEV1 DIGITAL EXT MDB1 1 100 3 7 5 0 0x01 -- NOK OK
DEV2 DIGITAL EXT MDB1 2 -- 1 7 5 -- -- -- NOK OK
DEV3 DIGITAL EXT MDB1 3 100 2 7 5 0 0x55 0xAA NOK OK
8.4.3 SEPAM80 Events and Time Synchronization Management
Standard communication is configured as for any other Modbus device, except for event acquisition and time
synchronization.
SEPAM80 has two internal event queues, the status of each queue can be checked reading a Modbus register at a fixed
address, the value of the register indicates that events are available to be downloaded from the device. In S+ Operations
database a non-zero value in FIELD_AD8 defines the event exchange word and represents the number of event table to
be downloaded.
For example FIELD_AD8 = 1 means that the tag is the exchange word for event table 1.
If the events have FIELD_AD8 = 0, and FIELD_AD6 = 11, that means there are packed data. The scan class of the events
must be configured using a timeout = 0xFFFF (a snapshot class), so that the events are read just once at driver start up or
after reconnection.
SEPAM80 time synchronization is performed executing a broadcast multiple registers write at a fixed address, using
8 word IEC 60870-5-4 format timestamps. The register SyncFunc must be set to 100 for SEPAM devices while the
frequency is set as for standard devices using registers SyncHour, SyncMin, SyncSec.

SPlus Operations Scanner Reference Guide MODBUS TCP DRIVER
2VAA000725E 47
9. MODBUS TCP DRIVER
9.1 Registers
The driver-specific registers are as listed in the following table.
Table 9-1: Driver Specific Registers
Name Type Values Notes
ProgID Char MBTcpDriver
BusPort Int [TCP port number]
BusProgID Char n.u.
BusType Char TCP
BusAddress Char Slave IP address
TraceLevel Int 0xFFFF Bit mask for trace enabling:
TRCMDB_HIGH 0x001 errors
TRCMDB_LOW 0x002 diagnostics
TRCMDB_INP 0x004 reading
TRCMDB_OUT 0x008 writing
TRCMDB_REG 0x010 register warning
TRCMDB_CNV 0x020 conversion warning
TRCMDB_CFG 0x040 configur. warning
TRCMDB_CMD 0x080 command transm.

The following registers are only used by the Modbus TCP driver:
Table 9-2: Drivers for MODBUS TCP
Name Type Values Description
AddrOffs Char [+/- num] (0) Offset of the modbus driver (to be algebraically
summed to the contents of field _AD2).
N.B. the register is of string type to accept negative
numbers.
FlowCtrl Int FC_NONE=0,
FC_DSR=0x01,
FC_CTS=0x02,
FC_DTRD=0x04,
FC_DTRH=0x08,
FC_RTSD=0x10,
FC_RTSH=0x20,
FC_RTST=0x40,
FC_XONXOFF=0x80
Combination of the flow control bits:
Data Set Ready (Disable / Enable)
Clear To Send (Disable / Enable)
Data Terminal Ready (Enable / Disable)
Data Terminal Ready (Enable / Handshake)
Req. To Send (Enable / Disable)
Req. To Send (Enable / Handshake)
Req. To Send (Enable / Toggle)
Xon-Xoff (Disable / Enable)
MaxAnalogBlockGap Int [registers] (0) Maximum allowed gap size in a Modbus analog block
MaxDigitalBlockGap Int [coils](0) Maximum allowed gap size in a Modbus digital block
MaxAnalogPerBlock Int [registers](50) Maximum size of a Modbus analog block
MaxDigitalPerBlock Int [coils](50) Maximum size of a Modbus digital block
nRetry Int [num] (3) Number of attempts in case of send receive failure
SyncFunc Int [function] (70) Function code for time synchronization
SyncHour Int [hours] (0) Hours for time synchronization
SyncMin Int [minutes] (0) Minutes for time synchronization
SyncSec Int [seconds] (0) Seconds for time synchronization. If all 3 registers are
set to zero synchronization is disabled.
SyncOffs Int [milliseconds] (0) Offset to be summed to the current time for taking care
of the time-offset due to transmission duration
TestTime Int [sec] (0) Test cycle in seconds (0= no test)
TestType Int
[ 0= TEST_NONE
1= TEST_LOOP
2= TEST_MASK

3= TEST_OUT


4= TEST_PING]
Type of test to be performed:
No test performed, look for device diagnostic tag in
DB
loopback test (for the devices where it is available)
writing and reading of a test pattern in fixed register (for
Device Diagnostic tag only)
writing and reading of the first output tag for each
device in order of address
Ping BusAddress
BQualUse REG_
SZ
[YES/NO] Enable bad quality management for signals. The value
specified in registry BqualVal is used to set the signal in
bad (or good) quality
BqualVal Int (0) Value used to set bad quality (see BqualUse)
SPlus Operations Scanner Reference Guide MODBUS TCP DRIVER
48 2VAA000725E
9.2 Online Configuration
The driver's register key can also contain some registers storing the strings that the online configurator shows when a tag
is displayed or changed in the Acquisition and Output tables.
Table 9-3: Registers for Online Configuration
Name Type Value
Label_ad1 and/or Label_out_ad1 Char Slave number
Label_ad2 and/or Label_out_ad2 Char register address
Label_ad3 and/or Label_out_ad3 Char Bit position
Label_ad4 and/or Label_out_ad4 Char Scan class
Label_ad5 and/or Label_out_ad5 Char Signal type
Label_ad6 and/or Label_out_ad6 Char Data type
Label_ad7 and/or Label_out_ad7 Char Bit number
Label_out_ad8 Char Pulse command duration
Label_ad9 Char Reading queue
9.3 Files
The log files are created in the Logs folder if they are enabled by setting the Trace register to YES and are named
Trc_<key name>.log. Furthermore the TraceLevel bits allow to select the details of the trace to be enabled. These three
registers are read cyclically by the driver.
9.4 Database
The database fields of the Modbus driver can take the following values:
Table 9-4: Database fields of the Modbus driver
Field Description
AD1 Device Number (Slave address).
AD2 Address of the Modbus register (starting from the AddrOffs register, if used). in
case of a Special Event, code of the function to be used
AD3 Bit Position [0-15] (for Packed Data only) in case of a Special Event, event
code.
AD4 Scan class
AD5 Modbus signal type
The function to be used to read or write the data is determined according to the
value of this field:
1 READ_OUTPUT_STATUS
2 READ_INPUT_STATUS
3 READ_OUTPUT_REGISTERS
4 READ_INPUT_REGISTERS
5 FORCE_SINGLE_COIL
7 PRESET_SINGLE_REGISTER
8 LOOP_BACK_TEST
15 FORCE_MULTIPLE_COILS
16 PRESET_MULTIPLE_REGISTERS
AD6 Modbus data type. See also Appendix A
AD7 Number of bits to be written/read on consecutive addresses, in order to manage
the bitmask-type tags mapped on the packed data.
For double digital points, for example, its value is 2, to write on / read from
Modbus two consecutive points, processed as a double-point status on the S+
Operations side (see Modbus data type 13 in the table at point _AD6), starting
from the bit specified in _AD3.
AD8 Duration (in seconds) of the pulse command (for _AD5 = 3 only).
AD9 Length of the reception queue (number of elements). It s used for type 4 events
(SOE event). Default value is 4.
TX1 Flag mask (Y/N), indicating:
1. Single write function used.

SPlus Operations Scanner Reference Guide MODBUS TCP DRIVER
2VAA000725E 49

The values for Modbus TCP Signal are as listed in the following table:
Table 9-5:Values for Modbus TCP Signal Type Function
Val Type Read Funct. Write Funct.
0 INPUT/STATUS Analog/Digital 4/2 ---
1 HOLDING/COIL Analog/Digital 3/1 Analog/Digital 6,16/5,15
2 spare
3 PULSE 3
4 SOE EVENT Digital v. AD2 ---
5 DEVICE DIAGNOSTIC Analog/Digital 1-8
Table 9-6: Data Types for Modbus TCP Registers
Type Const DESCRIPTION
0 DT_USHORT Unsigned short (1 register, HO LO)
1 DT_SSHORT Signed short (1 register, HO LO)
2 DT_ULONG_HL Unsigned long (2 register, HO LO)
3 DT_SLONG_HL Signed long (2 register, HO LO)
4 DT_IEFLOAT_HL IEEE float (2 register, HO LO)
5 DT_ULONG_AEG Unsigned long (2 registers, AEG Modicon)
6 DT_SLONG_AEG Signed long (2 registers, AEG Modicon)
7 DT_IEFLOAT_LH IEEE float (2 register, LO HO)
8 DT_IEFLOAT_SW IEEE float (2 register, word swap)
9 DT_ULONG_LH Unsigned long (2 register, LO HO)
10 DT_SLONG_LH Signed long (2 register ,LO HO)
11 DT_PACKED Packed Data (1 register each bit 1 digital point)
12 DT_BIT0 Read/Write only bit 0
13 DT_MASK Read/Write on consecutive Modbus addresses the n. of bits defined
in _AD7
9.4.1 Data Uniqueness
The tags passed to the driver must not be duplicate. Uniqueness is ensured by the combination of the fields _AD1, _AD2,
_AD3 e _AD5.
9.4.2 Device Diagnostics
The registers TestTime and TestType contribute to the status of the protocol diagnostic tag. For a more detailed
communication test, instead of using the content of TestType, which is forced to TEST_NONE, some read-only tags (fields
FIELD_) can be configured to perform a diagnostic test on the slaves connected by the Modbus protocol. The following
fields are defined:
Table 9-7: Device Diagnostic for Modbus TCP
Fields Description
AD1: Device Number (address of the Slave)
AD2 Address to be tested
AD3: Type of test to be performed:
4 TEST_LOOP loopback test (if function 8 is enabled)
5 TEST_MASK writing of a pattern (see fields _AD7 e _AD8)
6 TEST_OUT writing of a pattern and reading it back (see field _AD7)
AD4: scan class
AD5: Modbus signal type:
5 = DEVICE DIAGNOSTIC
AD6: Modbus data type
AD7: Value / pattern to be written
AD8: Value / pattern to be read

If different from zero (for example in case of MasterSlave management), the TestTime register indicates the maximum
time interval for the test of the diagnostic tag to be performed.
For example, in order to poll every 10 seconds the status of the slaves 1, 2 and 3 for the MDB1 Modbus connection, three
different diagnostic tags could be configured as follows:
DEV1 with TEST_OUT on slave 1 at address 100 to write and read the word 0x01;
DEV2 with TEST_LOOP on slave 2;
SPlus Operations Scanner Reference Guide MODBUS TCP DRIVER
50 2VAA000725E
DEV3 with TEST_MASK on slave 3 at address 100 to write the value 0x55 and read 0xAA;
Table 9-8: Diagnostic tags for MDB1 Modbus Connection
TAG FIELD_ STATE
NAME TYPE SRC DRV AD1 AD2 AD3 AD4 AD5 AD6 AD7 AD8 ZERO ONE
DEV1 DIGITAL EXT MDB1 1 100 3 7 5 0 0x01 -- NOK OK
DEV2 DIGITAL EXT MDB1 2 -- 1 7 5 -- -- -- NOK OK
DEV3 DIGITAL EXT MDB1 3 100 2 7 5 0 0x55 0xAA NOK OK

SPlus Operations Scanner Reference Guide SPABUS DRIVER
2VAA000725E 51
10. SPABUS DRIVER
The communication protocol SPABUS is described in the document ABB no. 1MRS 750076-MTD (SPABUS
Communication Protocol V2.5).
10.1 Registers
The driver-specific registers are as listed in the following table.
Table 10-1: Device Specific Registers
Name Type Values Notes
ProgID Char Spabus
BusPort Int [serial port number]
BusProgID Char ComDriver.ComDrv
BusType Char COM
BusAddress Char [baud rate, parity, n.bit, stop bit]
(9600,e,8,1)

TraceLevel Int [bit mask]
0x
Bit mask for trace details enabling:
HIGH 0x001 errors
FILE_MESS 0x002 disturbance recorder
ERRTYPE 0x004 connection test
PREST 0x008 performance
LOW 0x010 messages
REG 0x020 register conf.
CFG 0x040 point conf.
EVE 0x080 event reception
CMD 0x100 commands

The following registers are only used by the Spabus drive
Table 10-2: Registers for SAPBUS Driver
Name Type Values Description
FlowCtrl Int FC_NONE=0,
FC_DSR=0x01,
FC_CTS=0x02,
FC_DTRD=0x04
FC_DTRH=0x08,
FC_RTSD=0x10,
FC_RTSH=0x20,
FC_RTST=0x40,
FC_XONXOFF=0x80
Combination of the flow control bits:
Data Set Ready (Disable / Enable)
Clear To Send (Disable / Enable)
Data Terminal Ready (Enable / Disable)
Data Terminal Ready (Enable / Handshake)
Req. To Send (Enable / Disable)
Req. To Send (Enable / Handshake)
Req. To Send (Enable / Toggle)
Xon-Xoff (Disable / Enable)

nRetry Int [num] (3) Number of attempts in case of send receive
failure
SyncHour Int [hours] (0) Hours for time synchronization
SyncMin Int [minutes] (0) Minutes for time synchronization
SyncSec Int [seconds] (0) Seconds for time synchronization. If all 3
registers are set to zero synchronization is
disabled.
SyncOffs Int [milliseconds] (0) Offset to be summed to the current time to
take care of the transmission delay
UseBlocks Char [YES/NO] If Yes the driver uses blocks of data for
writing, otherwise it treats each data
individually
MaxPointIn Block int 30 Maximum number of points per block allowed
SleepAfterSend int [millliseconds] 100 Wait time between a send and the
subsequent receive on the serial channel
CompleteTimeout int [seconds] 300 Response waiting timeout on the serial
channel
SilentMoltiplicator int 10 Multiplier of the Byte time for the calculation
of the silence time during transmission
SleepOnDSRead_msec Int 100 Further wait between send and receive (in
addition to SleepAfterSend) for data
downloading from the disturbance recorder
UseDstAdjust Char [YES/NO] DST correction for received timestamps
UseEcho Char [YES/NO] Echo on the serial channel
SPlus Operations Scanner Reference Guide SPABUS DRIVER
52 2VAA000725E
UseEcho Char [YES/NO] Eco on the serial channel for the
synchronization message
EventReadFrequency Int [seconds]5 Event register reading period
10.2 Online Configuration
The driver's register key can also contain some registers storing the strings that the online configurator shows when a tag
is displayed or changed in the Acquisition and Output tables.
Table 10-3: Register for Online Configuration
Name Type Values
Label_ad1 Char Slave
Label_ad2 Char Channel
Label_ad3 Char Address
Label_ad4 Char Scan class
Label_text1 Char Type
Label_text2 Char Data category
Label_text3 Char Event list
Label_text4 Char Alternative channel for events (optional)
10.3 Files
The log files are created in the Logs folder if they are enabled by setting the Trace register to YES and are named
TrcSB_<key name>.log. Furthermore the TraceLevel bits allow to select the details of the trace to be enabled. These
three registers are read cyclically by the driver.
A file named TrcSB_<key name>_Ev.log is created as well, containing the text description of all received events.
10.4 Database
The database fields of the Spabus driver can take the following values:
FIELD_AD1: Device number (Slave address: 1 - 999)
FIELD _AD2: Channel number (0 999)
FIELD_AD3: Data address (1 999999)
FIELD_AD4: scan class (1-10) or 0 for event acquisition
FIELD_TX1: Type :
R = Read
W = Write
DIAG = device diagnostics
FIELD_TX2: Data category (1 ASCII character) or, if set to F, request to download data from disturbance
recorder
FIELD_TX3: List of events associated with the point, separated by ;
FIELD_TX4: Number of the alternative channel for the events
There are various types of points, listed below along with their configuration: (unlisted fields are ignored)
1. DEVICE DIAGNOSTICS:
o FIELD_AD1: Device number (Slave address: 1 - 999)
o FIELD_AD4: Scan class
o FIELD_TX1: DIAG
2. REGISTER READING OR WRITING:
o FIELD_AD1: Device number (Slave address: 1 - 999)
o FIELD_AD2: Channel number (0 999)
o FIELD_AD3: Data address (1 999999)
o FIELD_AD4: Scan class.
o FIELD_TX1: Type (R = Read or W = Write)
o FIELD_TX2: Data category (1 ASCII character)
SPlus Operations Scanner Reference Guide SPABUS DRIVER
2VAA000725E 53
3. EVENT ACQUISITION:
o FIELD_AD1: Device number (Slave address: 1 - 999)
o FIELD_AD2: Channel number (0 999)
o FIELD_AD3: Data address (1 999999)
o FIELD_AD4: 0
o FIELD_TX1: empty
o FIELD _TX3: List of events associated with the point, separated by ;
Example 1:
open switch event 120E1, closed switch event 120E3
==> AD2 = 120, TX3 = 1;3; ==> open switch (status = 0) and closed switch (status = 1)
Example 2:
open switch event 120E1, close switch event 120E3, inconsistent status 120E6
==> AD2 = 120, TX3 = 1;6;3; ==> open switch (status = 0), inconsistent (status= 2) and closed switch (status = 3)
4. EVENT ACQUISITION WITH INITIAL VALUE READ FROM REGISTERS:
o FIELD_AD1: Device number (slave address: 1 - 999)
o FIELD_AD2: Channel number (0 999)
o FIELD_AD3: Data address (1 999999)
o FIELD_AD4: 0
o FIELD_TX1: R
o FIELD_TX2: Data category (1 ASCII character)
o FIELD_TX3: List of events associated with the point, separated by ;
o FIELD _TX4: Number of the alternative channel for events (if omitted the register channel and the
corresponding event channel are assumed to be the same, if present it represents the channel used for
events while registers are read from the channel indicated in AD2)
5. ACQUISITION FROM DISTURBANCE RECORDER (OSCILLOPERTURBOGRAPHY):
FIELD_AD1: Device number (slave address: 1 - 999)
FIELD_AD4: Scan class.
FIELD_TX1: W
FIELD_TX2: F
10.4.1 Data Uniqueness
The tags passed to the driver must not be duplicate. Uniqueness is ensured by the combination of the fields
_AD1, _AD2, _AD3, _TX1 and TX2
SPlus Operations Scanner Reference Guide TELEPERM XP DRIVER
54 2VAA000725E
11. TELEPERM XP DRIVER
11.1 Registers
Table 11-1: Driver Specific Registers
Name Type Values Notes
ProgID Char DriverTXP
BusPort Int [TCP port number:18000]
BusProgID Char TcpDrv.TcpApi
BusType Char TCP
BusAddress Char [computer TXP name (XU)]
TraceLevel Int 0xFFFF Bitmask for trace enabling:
TRCMDB_HIGH 0x001 errors
TRCMDB_LOW 0x002 diagnostics
TRCMDB_INP 0x004 reading
TRCMDB_OUT 0x008 writing
TRCMDB_REG 0x010 register warning
TRCMDB_CNV 0x020 conversion warning
TRCMDB_CFG 0x040 configur. warning
TRCMDB_CMD 0x080 command transm.

The following registers are only used by the Teleperm XP driver:
Table 11-2:Registers for Teleperm XP Driver
Name Type Values Description
AckFlag Int 0 Enabling of ACK messages from XU not linked to errors (0=no ;
1=yes).
ActCycle Int [sec] (0) Timeout between two messages from XU if
GetActFlag = 1 (message send on variation).
Update cycle time if GetActFlag = 2. If = 0 infinite time (not used).
BlockingCount Int [num] (1000) Maximum number of signals per message.
ClientId Int [num] (2) Client identification code set to XU
CompleteTimeout Int [msec] (3000) Max time for the reception of all the signals
DiagLinkAltName Char [Secondary line
diagnostic tag]

DiagLinkName Char [Primary line
diagnostic tag]

EndTime Int [seconds] (0) End time for historical data retrieval. (not used)
GetActFlag Int [num] (0) Type of signal transmission by XU:
0 = on request
1 = on variation
2 = at time interval defined in ActCycle
GetImageFlag Int 1 Signal image requested (0=no; 1=yes)
SigListId Int [num](2) Selection of signals requested to XU:
2 = signals contained in a list (in S+ Ops. DB)
3 = all signals available on XU server (Not recommended)
StartTime Int [sec] (0) Start time for historical data retrieval.(not used)
TestTime Int [sec](3) Cycle time for XU status request
TimeDifference Int [sec](662688000) Difference between XU and S+ Ops. time base
TxpStatusAltName Char [XU status tag on
secondary line]

TxpStatusName Char [XU status tag on
primary line]

11.2 Online Configuration
The driver's register key can also contain some registers storing the strings that the online configurator shows when a tag
is displayed or changed in the Acquisition and Output tables.
Table 11-3: Register for Online Configuration
Name Type Values
Label_text1 Char Signal identification on XU(KKS methodology)
SPlus Operations Scanner Reference Guide TELEPERM XP DRIVER
2VAA000725E 55
11.3 Files
The log files are created in the Logs folder if they are enabled by setting the Trace register to YES and are named
Trc_<key name>.log. The TraceLevel bits, besides, allow to select the details of the trace to be enabled. These three
registers are read cyclically by the driver.
11.4 Database
The database field of the Teleperm XP driver can take the following values:
FIELD_AD4: Scan class.
FIELD_TX1: Signal identification on XU (KKS methodology).
11.4.1 Data Uniqueness
The tags passed to the driver must not be duplicate. The uniqueness is ensured by the field FIELD_TX1
11.4.2 Device Diagnostics
The TestTime registers take part in computing the status tag of the connected XU server that can take the following
values:
0, -1 = Status of the connected XU is unavailable
1 = XU starting up
2 = XU stand-by
3 = XU leading
4 = XU shutting down
SPlus Operations Scanner Reference Guide GE MARK V / MARK VI DRIVER
56 2VAA000725E
12. GE MARK V / MARK VI DRIVER
12.1 Typical Registers for the Mark Driver
The following registers are used by all drivers; the table here shows the values to be assigned for the Mark driver:
Table 12-1: Values for Mark Drivers
Name Type Values Description
Active Char [YES/NO] Driver activation
ProgId Char MarkDrv Driver ID
BusPort Int 768 Logical (Tcp/Ip) or physical (com) port address
BusProgID Char TcpDrv.TcpApi ID of the Tcp/Ip communication dll
BusType Char TCP Ethernet, serial or ascii file bus type
TraceLevel Int [0x....] Bitmask for trace details enabling:
HIGH 0x0001 errors only
LOW 0x0002 all traces
TAGTRACE 0x0004 traces of points
HEARTBEAT 0x0008 life messages
MESS 0x0010 tcp messages
ANALOG 0x0020 periodic acquisition
ISCONN 0x0040 connect. diagnostics
CFG 0x0080 configuration
CMD 0x0100 commands
MasterSlave Char NO Disabling of the standard master-slave
environment
UseMarkTagsOld Char NO Disabling of standard quality processing
SyncronousIO Char YES I/O synchronization
InitOutputValues Char YES Value initialization
PatchBits Int 0x0008 Patch activation

The following registers are only used by the Mark driver (if not specified, all times are expressed in seconds):
Table 12-2: Registers for Mark Driver
Name Type Typical values Description
HeartBeatPeriod Int 20 Transmission frequency of the life signal required to
keep the communication open (if the GE gateway
doesn't receive the life message for 60 seconds, the
connection is closed)
ScanClassForOutput Int 1 Scan class for output points
ScanClassForAck Int 2 Scan class for acknowledge transmission
PollingFreq Int 5 Reading frequency of periodical data
TimeoutOnCommad Int 90 Command result wait timeout
MaxNumOfList Int 300 Maximum number of point lists that can be
configured for periodic acquisition
Max. values: 32 for Mark V, 64 for Mark VI
MaxPointPerList Int 100 Maximum size of point lists for periodic acquisition
Max. values: 96 for Mark V, 300 for Mark VI
BusAddress1 Char CRM1_SVR Name of the primary GE gateway
BusAddress2 Char GT1_SVR Name of the secondary GE gateway (in case of
multimaster acquisition on S+

Ops. side, the primary
gateway of a server must be the secondary of the
other and vice versa)
UnitName1 Char G1 GE database for the acquisition of alarms and
periodical points
UnitName2 Char E1 GE database for the acquisition of alarms alone
UseTimestamp Int YES Use of the time mark from GE (if it is set to NO, the
time information from GE is ignored)
ReconnectFreq Int 60 Frequency for connection attempts (sec)
StatusTag Char MARK_STAT_1 Local diagnostic tag. Values:
0 NOT CONNECTED
1 CONN. TO THE PRIMARY SERVER
2 CONN. TO THE SECONDARY GATEWAY
3 CONN. IN PROGRESS
RemStatusTag Char MARK_STAT_2 Remote diagnostic tag (in case of multimaster
acquisition on S+ Ops. side, the remote diagnostic
SPlus Operations Scanner Reference Guide GE MARK V / MARK VI DRIVER
2VAA000725E 57
tag on a server is the local diagnostic tag on the
other server and vice versa)
ManageSoe Char [YES/NO] Enabling of SOE point reading (for Mark VI only)
ManageEvent Char [YES/NO] Enabling of event reading (for Mark VI only)
DisableCommand Char [YES/NO] Disabling of command transmission to field (test)
DataFiltering Char [YES/NO] Filter for data transmission to S+Ops. ( if it is set to
YES only variations from the field are sent)
PeriodicTimeout Int 10 Maximum time allowed between the reception of two
messages containing periodical data; if it elapses,the
GE gateway is disconnected
TimeDrift Int 0 Difference between the GE and S+Ops. system
times
12.2 Online Configuration
The driver's register key can also contain some registers storing the strings that the online configurator shows when a tag
is displayed or changed in the Acquisition and Output tables.
For the Mark drivers these registers are:
Table 12-3: Register for Online Configuration
Name Type Values
Label_ad1 Char Point type
Label_ad2 Char Reading/Writing
Label_text1 Char GE ID
Label_text2 Char Gain (analog) or Source (alarms)
Label_text3 Char Offset (analog)
Label_text4 Char Feedback (commands)
12.3 Configuration of Point Acquisition from Mark
FIELD_DRV: Name of the acquisition driver instance selected for point management
FIELD_AD1: Point type:
Table 12-4: List of Point Types
Point type AD1 Reading
(FIELD_AD2 = 1)
Writing
(FIELD_AD2 =2
Valid for
MARK VI
Valid for
MARK V
REAL 1 YES YES YES NO
WORD 2 YES YES YES NO
DWORD 3 YES YES YES NO
BOOL 4 YES YES YES YES
ALARM 5 YES NO YES YES
PUSHBUTTON 6 NO YES YES YES
SOE 7 YES NO YES NO
EVENT 8 YES NO YES NO
SIGN16 9 YES YES NO YES
USIGN16 10 YES YES NO YES
BOOLVAL 11 YES YES NO YES
FIELD_AD2: Reading (1) or writing (2) point;
FIELD_TX1: Point name in the GE system.
FIELD_TX2: Gain for analog points or Source of the point in the GE Alarm System.
FIELD_TX3: Offset for analog points.
FIELD_TX4: Feedback tag (NOTE: for a GE command of any type except PUSHBOTTON you must configure two
tags on the S+ Operations side, one for reading and one for writing, both with the same FIELD_TX1. In
FIELD_TX4 of the writing tag you need to specify the name of the reading tag)

SPlus Operations Scanner Reference Guide TEXT DRIVER
58 2VAA000725E
13. TEXT DRIVER
13.1 Installation
Text driver is automatically installed by S+ Operations server setup, the corresponding dll file (txtdrv.dll) is stored in
C:\Program Files\ABB Symphony Plus\Operations\bin folder and is automatically registered by S+ SysSetup utility.
13.2 Typical Registers for the Text Driver
The following registers are typically used by all drivers; the table shows the values to be assigned for the Text driver:
Table 13-1: Values for Text Drivers
Name Type Values Description
Active Char [YES/NO] Driver activation
ProgId Char TextDrv.TxtDrv Driver ID
TraceLevel Int [0x....] Bitmask for trace details enabling:
HIGH 0x0001 errors only
LOW 0x0002 all traces
MasterSlave Char NO Disabling of the standard master-slave environmentt
SyncronousIO Char YES I/O synchronization
InitOutputValues Char YES Value initialization
TimoutClass<n> DWORD Refresh period in [ms] of the scan class <n>

The following registers are only used by the Text driver:
Table 13-2: Registers for Text Driver
Name Type Typical values Description
FilePath Char Complete path of the text/xml file used
for values reading
OutputFilePath Char Complete path of the text/xml file used
for values writing
FileType Char CHAR_SEPARATOR
FIXED_LENGTH
A char separated file is used
A fixed fields length file is used
FieldSep Char ; Char separator used for
CHAR_SEPARATOR file acquisition
type
TagNameLen Int Length of the tag name field used for
FIXED_LENGTH acquisition type
TagValueLen Int Length of the tag value field used for
FIXED_LENGTH acquisition type
QualityLen Int Length of the tag quality field used for
FIXED_LENGTH acquisition type
TimeLen Int Length of the tag timestamp field used
for
FIXED_LENGTH acquisition type
TagNameOrd Int 0 Position of the tag name field in the
input file (1 based)
TagValueOrd Int 0 Position of the tag value field in the
input file (1 based)
QualityOrd Int 0 Position of the tag quality field in the
input file (1 based)
TimeOrd Int 0 Position of the tag timestamp field in
the input file (1 based)
OutputAppend Char [YES/NO] Append output to the file (if it exists)
DateFormat Char DD/MM/YYYY
hh:mm:ss
Date format string used to parse
timestamps
DeleteInputFile Char [YES/NO] Delete input file after value reading

SPlus Operations Scanner Reference Guide TEXT DRIVER
2VAA000725E 59
13.3 Online Configuration
The driver's register key can also contain some registers that store the strings the online configurator shows when a tag is
displayed or changed in the Acquisition and Output tables.
For the Text driver these registers are:
Table 13-3: Registers for Online Configuration
Name Type Values
Label_ad4 Char Scan class
13.4 Database
The database fields of the Text driver can take the following values:
FIELD_AD4: Scan class.

SPlus Operations Scanner Reference Guide SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
60 2VAA000725E
14. SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
14.1 Introduction
The SNMP traps enable an agent (usually a network device) to notify the management station (the SNMPTDRV in this
case) of significant events by way of an unsolicited SNMP message.

Figure 14-1: SNMP Trap Driver
This section concerns the configuration of the S+ SNMP Trap Driver capable of capture SNMP Trap messages from
network devices and put them in the S+ System Events
14.1.1 Definitions and Acronyms
Table 14-1: List of Acronyms and Description for SNMP Driver
Acronym Description
UDP User Datagram Protocol
HW Hardware
SW Software
S+ ABB Symphony Plus
SnmpTD S+ SNMP Trap Driver
MS Microsoft
OS Operating System
SNMP Simple Network Management Protocol
OID Object Identifier
MIB Management Information Base
COM Component Object Model
IETF Internet Engineering Task Force
14.2 Generality
The Simple Network Management Protocol (SNMP) belongs to the suite of Internet protocols defined by IETF (Internet
Engineering Task Force). The protocol operates at the application layer of the OSI model. It allows the management and
supervision of equipment connected to a network, relatively to all aspects that require administrative actions.
In a common SNMP, one or more computers are responsible for monitoring or managing a group of hosts or other devices
on the same network. Each managed device is running a software component, called AGENT, which exposes some
information on the state of the monitored systems to the SNMP MANAGER.
An SNMP agent exposes the data for the management systems as variables (such as the name of the computer, free
memory, the number of processes running, the status of a network interface, etc.). The protocol offers the possibility to
perform an active control, giving the possibility of new configurations of managed systems.
The protocol provides certain methods (such as Get, GetNext or Get Bulk). The manager can use these methods to obtain
information or obtain the information without any previous request using the TRAP or INFORM operation the the agent
sends. The manager can use SET operations with actively managing the configuration of equipments to change the
configuration of some parameters
The SNMP agent sends the SNMP notifications in the form of asynchronous messages to report the events that occurred
in the managed system (for example, alarms in case of failures). The SNMP notifications without acknowledgment are
SPlus Operations Scanner Reference Guide SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
2VAA000725E 61
commonly called TRAP, although the exact terminology varies depending on the version of SNMP. The SNMP
notifications with acknowledgment are called INFORM.
Then the three basic components of the SNMP framework are:
managed system (managed objects)
management agent (agent)
management system (manager)

Figure 14-2:SNMP Framework
Any managed system (for example, a simple node, a router, a printer or other device that provides a management
interface SNMP) hosts a management agent that can be controlled by management system.
Variables available via SNMP are organized into hierarchies. These hierarchies, and other metadata (such as type, size
and description of the variable), are described in a database called MIB.
Each MIB, managed by a corresponding agent, represents the state of the managed system, or, rather, a projection of
that, limited to the aspects that we want to allow management.
Access to the MIB (with read and write privileges) is the interface, provided to the manager, to manage the system. Each
MIB, although varying in specific content, has the same general structure and the same general mechanisms for access
by the manager (reading and writing data).
14.2.1 SNMPv1
This is the first version of the protocol, specified in the following RFC:
RFC 1155 - Structure and Identification of Management Information for TCP / IP-based internets
RFC 1213 - Management Information Base Version 2 (MIB-2) for network management of TCP / IP-based
internets
RFC 1157 - A Simple Network Management Protocol
Types of data provided may be split in two categories:
Simple data types
o Integer: integers between -2 31 and 2 31 -1.
Strings of octets: are ordered sequences between 0 and 65.535 octets.
o Object ID (OID): derived from the collection of OID allocated in accordance with the rules described in
ASN.1 .
Application-level data types
o IP addresses
o 32-bit counters
SPlus Operations Scanner Reference Guide SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
62 2VAA000725E
o Intervals
o Time Ticks in milliseconds
o Signed or unsigned Integers
SNMPv1 also defines structured tables that are used to group instances of objects with table type, an object that contains
multiple variables. The tables consist of zero or more rows and they are indexed to allow SNMP to read or modify a value
or an entire row.
14.2.2 SNMPv2
The Version 2 of the SNMP protocol as described in RFC 1441, RFC 1452, represents mprovement of the version 1 in
security, performance, confidentiality and communication between SNMP managers.
The protocol version became a de-facto standard version: SNMPv2c.
This version, as defined in RFC 1441, RFC 1452, is a version that uses for safety the community concept. Under this
protocol the systems part of a SNMP network are grouped into a community. The community is identified by a string of 32
bytes and each system can belong to one of them. The SNMP agent accepts only a requests from a SNMP manager of
the same community. The authorization of the members of a community that works on an object can be of three types:
Read: the manager can query the agent only to know the status of the system (GET only)
Write: where the manager can also change technical approach (GET and SET)
Trap: the agent can send trap to the manager
This version of the protocol is the most commonly implemented on the devices currently in the market.
14.2.3 SNMPv3
The Version 3 of this protocol represents the current standard, specified in RFC 3411, RFC 3418.
Message integrity.
Authentication.
Encryption of messages.
14.2.4 Net-SNMP Library
Net-SNMP is an Open Source Project, released under BSD license, that provides a library for developing new SNMP
applications, with both C and perl APIs. It support SNMP v1, v2c and v3 and offer many sample code and tutorials..
14.3 Windows Registry Configuration
Using the records of MS Windows, from the root key:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ABB Symphony Plus\Operations\Scanner\<driver_instance\>
You can specify the following parameters:
Nome Tipo Valori Descrizione
ProgID String DriverSNMP This value specifies the required class
to be loaded dynamically.
Active String [ YES | NO ] Allows you to enable / disable the driver
instance.
DiagnosticTag String <TAGNAME> It allows you to specify the value of the
TAG that MUST diagnostic the instance
of the driver.
You MUST specify this value.
BusAddress Stringa xxx.xxx.xxx.xxx IP address of monitored device.
BusPort DWORD 161 SNMP listen port on the monitored
device.
DriverStartupDelay DWORD 0 Time, in milliseconds, of the startup
delay of the driver.
ReadCommunity String Public Read Community.
SnmpVersion DWORD [1 | 2 | 3] Protocol version:
1 = SNMPv1
2 = SNMPv2c
3 = SNMPv3 not supported
SnmpTimeout DWORD 1000 Value, in milliseconds, that represent
the waiting timeout for the response to a
SPlus Operations Scanner Reference Guide SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
2VAA000725E 63
request.
CheckOidAtStartup String [ YES | NO ] Specifies if check or not via SNMP the
validity of any OID by a single query.
The quality of tags that correspond to
invalid OID will be forced to the value
specified in BadTagValue field.
OidsFileName String <filename> Indicates the name of the xml file that
contains the possible mapping
OID<->TAGNAME
to use. The root of the file is:
$PGPRoot\config\tag\.
TimeoutClassx DWORD nnnn Indicates the frequency (in milliseconds)
of SNMP query for the X-th class of
scanning
BadTagValue DWORD [GOOD | BAD | CF |
OLD | OC]
Indicates the quality value to be
assigned to the TAG considered invalid.

14.3.1 S+ Database configuration
Some parameters are configurable using S+ database file. In particular you can specify the following parameters:
Field_DRV: Specifies the instance of the driver to use for the SNMP query.
Field_AD2: With this field you can specify if the OID to query is in the field
_TXn (with n = 1.2) of the S+ database, or in to XML files specified in the Windows registry. In particular:
0: OID is read from a database of SPlus.
1: OID is read from xml file
Field_AD4: Using this field you can specify the scanning class of the TAG (1 .. 10). The period (in milliseconds)
between two queries must be specified in the fields of configuration in the Windows registry.
Field_TXn: in alternative to XML configuration file you can specify the OID to query by the fields: Field_TXn (with
n = 1,2).
For each field you can specify 80 characters of the OID and the two fields are concatenated to obtain the resulting OID
(max 160 characters).
14.3.2 File XML
For the configuration of OID to query you can use a specially formatted XML file which is parsed during the MAP phase of
the tags. You can create a single file common to a subset or to all instances of SNMP driver. You can also create a file for
each instance according to what specified to the configuration of Windows registry.


SPlus Operations Scanner Reference Guide SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
64 2VAA000725E
As shown in the above figure you can configure one or more instances of driver setting in the "Name" attribute the name of
the instance to which it refers. The child node of an istance is the node "Tags". In this, child, node all matches TagName
<-> OID must be specified.
It is also possible to specify some "TagGroup". Groups of TAGs that have in common the same index in a structure of MIB
organized in a table. This kind of configuration is useful when a priori is not possible to determine which index will have
some OID to query and these are contained within a table. To derive the index, then you can query a certain property
having as its basic OID the value of the "baseOid attribute. The search of the index is done looking through the results
obtained from "baseOid" with the SNMP command GET_NEXT one that contains the string or the value specified in the
"matchValue attribute.
If the index is found then will be assigned to all oid contained within the group and then used to enhance the
corresponding tags. If not found then the quality of all TAG group will be set to the value specified in the "BadTagValue"
registry.
14.4 System Configuration
This section give examples of system configuration.
14.4.1 Registers
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ABB Symphony Plus\Operations\Scanner\DRVSNMP_1]
"ProgID"="DriverSNMP"
"Active"="YES"
"DiagnosticTag"="DRVSNMP_1_DIAG"
"TimeoutClass1"=dword:000003e8
"TimeoutClass2"=dword:00002710
"TimeoutClass3"=dword:00002710
"TimeoutClass4"=dword:00002710
"TimeoutClass5"=dword:00002710
"TimeoutClass6"=dword:00002710
"TimeoutClass7"=dword:00002710
"TimeoutClass8"=dword:00002710
"TimeoutClass9"=dword:00002710
"TimeoutClass10"=dword:00002710
"BusAddress"="127.0.0.1"
"BusPort"=dword:000000a1
"DriverStartupDelay"=dword:00000000
"Label_ad1"="n.u."
"Label_ad2"="OID from file"
"Label_ad3"="n.u."
"Label_ad4"="Scan class"
"Label_ad5"="n.u."
"Label_ad6"="n.u."
"Label_ad7"="n.u."
"Label_ad8"="n.u."
"Label_ad9"="n.u."
"Label_ad10"="n.u."
"Label_text1"="OID1"
"Label_text2"="OID2"
"Label_text3"="OID3"
"Label_text4"="OID4"
"Label_text5"="OID5"
"ReadCommunity"="public"
"SnmpTimeout"=dword:000003e8
"OidsFileName"="oids.xml"
"CheckOidAtStartup"="YES"
"BadTagValue"="3"
"Reload"="N"
"ServersInfo"=hex:53,00,52,00,56,00,2d,00,50,00,47,00,50,00,31,00,30,00,37,00,\
00,00,00,00,00,00,00,00,00,00,00,00,0f,00,00,00,00,00,00,00,00,00,00,00
14.4.2 File XML
<?xml version="1.0" encoding="utf-8"?>
<instances xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<instance name="DRVSNMP_1">
<tags>
<!-- General informations -->
<tag name="SNMP_D01_DESCR" oid=".1.3.6.1.2.1.1.1.0" />
<tag name="SNMP_D01_UPT" oid=".1.3.6.1.2.1.1.3.0" />
SPlus Operations Scanner Reference Guide SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
2VAA000725E 65
<tag name="SNMP_D01_NAME" oid=".1.3.6.1.2.1.1.5.0" />
<tag name="SNMP_D01_INTN" oid=".1.3.6.1.2.1.2.1.0" />
<!-- Network interface 1 -->
<tag name="SNMP_D01_P01_DESCR" oid=".1.3.6.1.2.1.2.2.1.2.1" />
<tag name="SNMP_D01_P01_MAC" oid=".1.3.6.1.2.1.2.2.1.6.1" />
<tag name="SNMP_D01_P01_AST" oid=".1.3.6.1.2.1.2.2.1.7.1" />
<tag name="SNMP_D01_P01_OST" oid=".1.3.6.1.2.1.2.2.1.8.1" />
<tag name="SNMP_D01_P01_IN" oid=".1.3.6.1.2.1.2.2.1.10.1" />
<tag name="SNMP_D01_P01_OUT" oid=".1.3.6.1.2.1.2.2.1.16.1" />
<!-- Network interface 2 -->
<tagGroup baseOid=".1.3.6.1.2.1.2.2.1.2" matchValue="Ethernet">
<tag name="SNMP_D01_P02_DESCR" oid=".1.3.6.1.2.1.2.2.1.2" />
<tag name="SNMP_D01_P02_MAC" oid="1.3.6.1.2.1.2.2.1.6" />
<tag name="SNMP_D01_P02_AST" oid=".1.3.6.1.2.1.2.2.1.7" />
<tag name="SNMP_D01_P02_OST" oid=".1.3.6.1.2.1.2.2.1.8" />
<tag name="SNMP_D01_P02_IN" oid=".1.3.6.1.2.1.2.2.1.10" />
<tag name="SNMP_D01_P02_OUT" oid=".1.3.6.1.2.1.2.2.1.16" />
</tagGroup>
<!-- Storage unit -->
<tagGroup baseOid=".1.3.6.1.2.1.25.2.3.1.3" matchValue="C:">
<tag name="SNMP_D01_ST01_DESCR" oid=".1.3.6.1.2.1.25.2.3.1.3" /><!-- Descrizione -
->
<tag name="SNMP_D01_ST01_AU" oid=".1.3.6.1.2.1.25.2.3.1.4" /> <!-- Allocation units
-->
<tag name="SNMP_D01_ST01_SS" oid=".1.3.6.1.2.1.25.2.3.1.5" /> <!-- Storage size --
>
<tag name="SNMP_D01_ST01_SU" oid=".1.3.6.1.2.1.25.2.3.1.6" /> <!-- Storage Used -
->
</tagGroup>
<!-- Storage unit -->
<tagGroup baseOid=".1.3.6.1.2.1.25.2.3.1.3" matchValue="Physical Memory">
<tag name="SNMP_D01_ST02_DESCR" oid=".1.3.6.1.2.1.25.2.3.1.3" /><!-- Descrizione -
->
<tag name="SNMP_D01_ST02_AU" oid=".1.3.6.1.2.1.25.2.3.1.4" /> <!-- Allocation units
-->
<tag name="SNMP_D01_ST02_SS" oid=".1.3.6.1.2.1.25.2.3.1.5" /> <!-- Storage size -->
<tag name="SNMP_D01_ST02_SU" oid=".1.3.6.1.2.1.25.2.3.1.6" /> <!-- Storage Used -
->
</tagGroup>
</tags>
</instance>
<instance name="DRVSNMP_2">
<tags>
<!-- General informations -->
<tag name="SNMP_D02_DESCR" oid=".1.3.6.1.2.1.1.1.0" />
<tag name="SNMP_D02_UPT" oid=".1.3.6.1.2.1.1.3.0" />
<tag name="SNMP_D02_NAME" oid=".1.3.6.1.2.1.1.5.0" />
<tag name="SNMP_D02_INTN" oid=".1.3.6.1.2.1.2.1.0" />
<!-- Network interface 1 -->
<tagGroup baseOid=".1.3.6.1.2.1.2.2.1.2" matchValue="82567LM">
<tag name="SNMP_D02_P01_DESCR" oid=".1.3.6.1.2.1.2.2.1.2" />
<tag name="SNMP_D02_P01_MAC" oid=".1.3.6.1.2.1.2.2.1.6" />
<tag name="SNMP_D02_P01_AST" oid=".1.3.6.1.2.1.2.2.1.7" />
<tag name="SNMP_D02_P01_OST" oid=".1.3.6.1.2.1.2.2.1.8" />
<tag name="SNMP_D02_P01_IN" oid=".1.3.6.1.2.1.2.2.1.10" />
<tag name="SNMP_D02_P01_OUT" oid=".1.3.6.1.2.1.2.2.1.16" />
</tagGroup>
<!-- Network interface 2 -->
<tagGroup baseOid=".1.3.6.1.2.1.2.2.1.2" matchValue="VMnet1">
<tag name="SNMP_D02_P02_DESCR" oid=".1.3.6.1.2.1.2.2.1.2" />
<tag name="SNMP_D02_P02_MAC" oid="1.3.6.1.2.1.2.2.1.6" />
<tag name="SNMP_D02_P02_AST" oid=".1.3.6.1.2.1.2.2.1.7" />
<tag name="SNMP_D02_P02_OST" oid=".1.3.6.1.2.1.2.2.1.8" />
<tag name="SNMP_D02_P02_IN" oid=".1.3.6.1.2.1.2.2.1.10" />
<tag name="SNMP_D02_P02_OUT" oid=".1.3.6.1.2.1.2.2.1.16" />
</tagGroup>
<!-- Storage unit -->
<tagGroup baseOid=".1.3.6.1.2.1.25.2.3.1.3" matchValue="C:">
<tag name="SNMP_D02_ST01_DESCR" oid=".1.3.6.1.2.1.25.2.3.1.3" /> <!--
Descrizione -->
SPlus Operations Scanner Reference Guide SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) DRIVER
66 2VAA000725E
<tag name="SNMP_D02_ST01_AU" oid=".1.3.6.1.2.1.25.2.3.1.4" /> <!-- Allocation units
-->
<tag name="SNMP_D02_ST01_SS" oid=".1.3.6.1.2.1.25.2.3.1.5" /> <!-- Storage size --
>
<tag name="SNMP_D02_ST01_SU" oid=".1.3.6.1.2.1.25.2.3.1.6" /> <!-- Storage Used -
->
</tagGroup>
<!-- Storage unit -->
<tagGroup baseOid=".1.3.6.1.2.1.25.2.3.1.3" matchValue="Physical Memory">
<tag name="SNMP_D02_ST02_DESCR" oid=".1.3.6.1.2.1.25.2.3.1.3" /> <!--
Descrizione -->
<tag name="SNMP_D02_ST02_AU" oid=".1.3.6.1.2.1.25.2.3.1.4" /> <!--
Allocation units -->
<tag name="SNMP_D02_ST02_SS" oid=".1.3.6.1.2.1.25.2.3.1.5" /> <!-- Storage
size -->
<tag name="SNMP_D02_ST02_SU" oid=".1.3.6.1.2.1.25.2.3.1.6" /> <!-- Storage Used -
->
</tagGroup>
</tags>
</instance>
</instances>



SPlus Operations Scanner Reference Guide SYSLOG DRIVER
2VAA000725E 67
15. SYSLOG DRIVER
15.1 Introduction
SysLog notifications are an asynchronous mechanism that the network devices use to provide diagnostic information.
15.1.1 Definitions and Acronyms
Table 15-1: List of Acronyms and Descriptions for Syslog Driver
Acronym Description
UDP User Datagram Protocol
HW Hardware
SW Software
S+ ABB Symphony Plus
SLD S+ SysLog Driver
MS Microsoft
OS Operating System
IETF Internet Engineering Task Force
15.2 Generality
SysLog is a protocol for network logging made in 1980 as component of Sendmail. It has been standardized by the IETF in
2001 with RFC 3164 and RFC 3195. It uses User Datagram Protocol (UDP), port 514, and messages are sent from the
client (device) to the server (collector). The SysLog packet size is limited to 1024 bytes. Special implementations of the
protocol are also able to use TCP and / or encryption. The RFC 5424 replaced RFC 3164 in March 2009.
15.2.1 SysLog Message format
Each SysLog message starts with a priority value at the beginning of the text inserted into the characters < and >. The
priority value ranges from 0 to 191 and is made up of a Facility value and a Severity value:
Facility: SysLog messages are broadly categorized on the basis of the sources that generate them. These sources can
be the operating system, the process, or an application. These categories, called facility, are represented by integers, as
shown in Error! Reference source not found.. The local use facilities are not reserved and are available for general use.
Hence, the processes and applications that do not have pre-assigned facility values can choose any of the eight local use
facilities. As such, Cisco devices use one of the local use facilities for sending SysLog messages.
Severity: the source or facility that generates the SysLog message also specifies the severity of the message using a
single-digit integer, as shown in Error! Reference source not found..
The priority value is calculated using the following formula:
Priority = Facility * 8 + Severity
This value, if present, is converted into a human readable string.
For example <27> = 3 * 8 + 3 is converted into <SYSTEM,ERROR>.
If message doesnt contain the priority field a default value is used.
Table 15-2: SysLog Facility Values
Numerical Code Facility
0 Numerical Code
1 user-level messages
2 mail system
3 system daemons
4 security/authorization messages
5 SysLogd
6 line printer subsystem
7 network news subsystem
8 UUCP subsystem
9 clock daemon
10 Security/authorization messages
11 FTP daemon
12 NTP subsystem
13 log audit
14 log alert
15 clock daemon
SPlus Operations Scanner Reference Guide SYSLOG DRIVER
68 2VAA000725E
16 local use 0 (local0)
17 local use 1 (local1)
18 local use 2 (local2)
19 local use 3 (local3)
20 local use 4 (local4)
21 local use 5 (local5)
22 local use 6 (local6)
23 local use 7 (local7)
Table 15-3: SysLog Severity Values
Numerical Code Severity Description
0 Emergency system is unusable
1 Alert action must be taken
immediately
2 Critical critical conditions
3 Error error conditions
4 Warning warning conditions
5 Notice normal but significant
condition
6 Informational informational messages
7 Debug debug-level messages
Operating Environment
This driver is developed as a module of ABB S+ Server on MS Windows operating system
Network Environment
Firewalls must be configured to allow network traffic to the S+ server's configured port. The default Syslog listening port
number is 514.
15.3 Configuration
15.3.1 Windows Register Configuration
The SysLog Drivers main configuration is done through windows registers as for others S+ drivers. Specific mandatory
parameters are:
BusPort: Listening port (for SysLog standard port is 514)
BusAddress: Listening IP address (default 127.0.0.1 = ANY)
BusProtocol: Listening protocol [UDP|TCP]
IpFilterFileName: Xml device authorization file
SysLogLevel: Maximum SysLog Severity level (max 0, min 7).
In addition to the parameters mentioned here there are some parameters that the drivers normally use, like status TAG etc
Registry Example
[HKEY_LOCAL_MACHINE\SOFTWARE\ABB Symphony Plus\Operations\Scanner\DRVSYSLOG_1]
"DriverSysLog. SysLogDrv "
"Active"="YES"
"DiagnosticTag"="DRVSYSLOG_1_DIAG"
"Trace"="YES"
"TraceLevel"=dword:0000ffff
"BusAddress"="192.168.1.68"
"BusPort"=dword:00000202
"DriverStartupDelay"=dword:00000000
"IpFilterFileName"="D:\\Program Files\\ABB Symphony Plus\\Operations\\deck\\SysLogFilter.xml"
"SysLogLevel"=dword:00000005
"BusProtocol"="UDP"
SPlus Operations Scanner Reference Guide SYSLOG DRIVER
2VAA000725E 69
Xml configuration file
For the configuration of this driver, as well as for others, a part of configuration is not possible through windows registers
because of its complexity, and requires additional files. The file type used is an xml file specified with the
IpFilterFileName parameter. This file contains the following sections:
Devices: contains a list of authorized devices.
In the Devices section of the xml configuration file, the following attributes are defined for each device:
IpAddress specifies the IP address of the device.
Description [optional] description of device
SysLogLevel [optional] a specific SysLog max severity level used instead of the one configured by registers.
The following figure shows the XML-Schema of the configuration file.

Figure 15-1: XML Schema of Configuration File
Schema.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="SysLogDriver">
<xs:complexType>
<xs:sequence>
<xs:element ref="Devices"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Devices">
<xs:complexType>
<xs:sequence>
<xs:element ref="Device" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Device">
<xs:complexType>
<xs:attribute name="IpAddress" use="required">
<xs:simpleType>
<xs:restriction base="xs:string"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Description" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string"/>
</xs:simpleType>
SPlus Operations Scanner Reference Guide SYSLOG DRIVER
70 2VAA000725E
</xs:attribute>
<xs:attribute name="SysLogLevel" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string"/>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>
Configuration xml example file
<?xml version="1.0" encoding="UTF-8"?>
<SysLogFilter xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Devices>
<Device IpAddress="192.168.1.66" Description="DEV1" SysLogLevel="6"/>
<Device IpAddress="192.168.1.68" Description="DEV2"/>
<Device IpAddress="192.168.1.69" Description="DEV3"/>
</Devices>
</SysLogFilter>

SPlus Operations Scanner Reference Guide MELODY DRIVER
2VAA000725E 71
16. MELODY DRIVER
Melody driver registries and tag configuration are already created automatically during the import from Melody composer,
so the purpose of this chapter is just to explain the meaning of them. The IP addresses of the controllers are automatically
retrieved from the host file if available otherwise check the registries.
16.1 Registers
The driver-specific registers are as listed in the following table.
Table 16-1: Driver Specific Registers
Name Type Values Notes
ProgID Char DriverAC870P
BusPort Int 9999
BusAddress

Char

xxx.yyy.zzz.www IP address of primary address

TraceLevel Int 0xFFFF Bitmask for the level of tracing.
0x001 // general trace high priority
0x002 // trace high priority for mapping instruction
0x004 // trace high priority for signal server
0x008 // trace high priority for command server
0x010 // trace high priority for alarm server
0x020 // general trace low priority
0x040 // trace low priority for mapping instruction
0x080 // trace low priority for signal server
0x100 // trace low priority for command server
0x200 // trace low priority for alarm server


The following registers are only used by the Melody driver:
Table 16-2: Registers for Melody Drivers
Name Type Values Description
AlarmConnectionUsed Char YES/NO Enable to get data also from melody alarm
connection, could be set to NO in case of having
more than 2 drivers running because the controller
does not allow more than 2 alarm connections.
UseGMT Char YES/NO Default is YES because usually the controller time is
set GMT
FailIfNoAlarmServer Char YES/NO If Yes to be able to run the driver need the alarm
connection otherwise even if it is requested the driver
can go to running mode even without the alarm
connection available.
AlwaysAckAlarm Char YES/NO YES means that even if one alarm is not configured
like a tag in S+ the driver sends the acknowledge to
the controller for this driver. If it is set to NO there is
the possibility to fill the alarm queue on the controller
and stuck it.
EnableGuardLog Char YES/NO Very heavy log that print every time that a method is
called. Used only for very deep debug.
MaxPollingTime Int [msec] (60000) The data access is done on exception and even if the
data is not changing the controller sends the data to
driver periodically according to this registry.
(min 1000 msec and max 120000 msec).
PingRetry Int 1 In case of driver not connected to restart the
communication a ping test is issued waiting for ping
available. This is the number of retry on each
controller (1 min and 5 max).
ControllerPingTimeout Int [msec] (1000) In case of driver not connected to restart the
communication a ping test is issued waiting for ping
available. This is the timeout of the ping test (500
msec min and 10000 msec max).
TraceLevel Int 0x0000 Level of tracing.
0x001 // general trace high priority
0x002 // trace high priority for mapping instruction
0x004 // trace high priority for signal server
SPlus Operations Scanner Reference Guide MELODY DRIVER
72 2VAA000725E
0x008 // trace high priority for command server
0x010 // trace high priority for alarm server
0x020 // general trace low priority
0x040 // trace low priority for mapping instruction
0x080 // trace low priority for signal server
0x100 // trace low priority for command server
0x200 // trace low priority for alarm server

RedundantIPAddress Char xxx.yyy.www.zzz The IP address of the redundant controller.
16.2 Database
The database fields of the Modbus driver can take the following values:
Database Fields Values
AD1 Signal type
BPP_BOOL_TYP = 0x1
BPP_INT4_TYP = 0x2
BPP_REAL4_TYP = 0x4
BPP_P32BOOL_TYP = 0x5
BPP_DT_TYP = 0x7
BPP_DURATION_TYP = 0x6
BPP_ERR_TYP = 0x8
BPP_STRING_TYP 0x9
BPP_SIG_BOOL_TYP 0x21
BPP_SIG_INT4_TYP 0x22
BPP_SIG_REAL4_TYP 0x24
BPP_SIG_P32BOOL_TYP 0x25
BPP_SIG_DURATION_TYP 0x26
BPP_SIG_DT_TYP 0x27
AD2 It is a bitmask set according to the controller connection used for the signal
Signal connection = 1
Command connection = 2
Alarm connection = 4
AD3 If the command connection is selected then it means
1 it is used the WRITE_ABS method (for absolute value writing)
2 it is used the WRITE_INC method (for incremental value writing)
AD4 Scan class.
TX2 Signal Mark: the name of the tag on the controller

SPlus Operations Scanner Reference Guide IEC 61850 DRIVER
2VAA000725E 73
17. IEC 61850 DRIVER
17.1 Driver Configuration
The driver registry configuration is set in CO61850, the user can change the values as required.

Figure 17-1: Driver Configuration
NOTE: TraceEnabled field is not being used at the moment.
17.2 Registry Entries
The driver-specific registers are as listed in the following table.
Table 17-1: IEC 61850 Driver Registers
Name Type Values Description
ProgID Char Driver61850Com Driver ID
Active char YES Is Driver Active/Inactive
Master Slave char NO Discovery of IEC61850 Server(Not used at the moment)
TraceLevel Int Bit mask If a user needs only error logs, only information logs,
etc, then one of the following trace level has to be set
according to the values provided. It is for the users
convienience so that the log file does not become too
huge. If all logs are to be anabled then the TraceLevel
registry entry has to be set to 2.

ERROR_LOG 0X0000 error logs

LOG_ALL 0X0002 write all logs

LOG_THREAD_
HEARBEAT

0X0004 log thread
health.
LOG_INFO 0X0008 User
Information
logs.

LOG_WARN 0X0010 Warnings

LOG_WRT_REQ 0X0020 write request
to driver

LOG_CMD_SEND 0X0040 Command
transmission.

LOG_RECV_IAL 0X0080 IEC61850
Signal
transmission.
SPlus Operations Scanner Reference Guide IEC 61850 DRIVER
74 2VAA000725E

LOG_CMD_ACK 0X0100 IEC 61850
Command
Ack signal
transmission.

LOG_
HEALTH_UPDATE_PROC

0X0200 log thread
health
Update.

LOG_DIAGNOSTIC 0x400 Diagnostic
Logs
CCF File Name Char IEC61850\CCF\ IEC61850 configuration Directory.
PollingFreq Int 5 Reading of periodical data(in ms)
TimeoutOnCommand Int Command Timeout in seconds
UTCTime Char NO Enable/disable UTC time. This should be enabled
during driver startup.

Other registry entries which the scanner uses, but are not present in the user interface are as follows:
Table 17-2: Registry Entries
UseKeepAlive Char YES
UseHCF Char YES
SynchronousIO Char NO
InitOutputValues Char NO
DriverName Char IEC61850
TagOnFly Char YES
CheckConnTimeout Int 3e8
CheckConnAttempt Int 1e
KeepAliveTimeout Int 1e
DeviceTimeout Int 0
ConnectionAttempt Int 3
InitTimeout Int a
DriverStartupDelay Int 0

Please refer to the above Table 3.9 for details about the drivers mentioned above. There are 10 timeouts for the scan
classes from 1 to 10:
Table 17-3: Timeouts for Scan Classes
TimeoutClass1 Int 64
TimeoutClass2 Int c8
TimeoutClass3 Int 1f4
TimeoutClass4 Int 3e8
TimeoutClass5 Int 7d0
TimeoutClass6 Int bb8
TimeoutClass7 Int 1388
TimeoutClass8 Int 2710
TimeoutClass9 Int 7530
TimeoutClass10 Int ea60
17.3 Configuration
User need not configure the fields, it is already configured by the CO61850 Application.
17.4 Acquisition
Field Description
Field driver name The field driver name in the Configuration of the Tag should be the same as that in
the registry entry under Scanner
Field Address 1 Scan Class Name(presently scanclass 1 is used)
Field Address 2 IALAdress
Field Address 3 Indicates the type of tag
Input=1 ; for normal tags
Command=2
OutputTag=3(Not used currently)
SPlus Operations Scanner Reference Guide IEC 61850 DRIVER
2VAA000725E 75
File Transfer=4(Not used currently)
IEDInfo=5 (manufacture,version etc.) (Not used currently)
MainTags=6
AcknowledgementTags=7
Field Address 4 Holds the IAL-Type information i.e DMCD (e.g. Single info. with time, Single
command) The IAL-Type tells something about how the data should be exchanged
between the ISS-BP and the application.
Field Address 5
Holds the Quallifier - Tells exactly which IEC 61850 data attribute value has
to update which qualifier in the IAL frame
Field Address 6 Reserved
Field Address 7 Control Model
0-Status
1-Oper
2-SBO
3. SBOW
4. Cancel
Field Address 8 It is set to 1 from, if the command type is a direct operate command, else it is set to
a default value of 0 for the normal command for SBOW(Select before operate
command). For this the IAL path contains SPC instead of DPC in the CCF file e.g.
/SPC/CO/BOOLEAN/+/none/+/7,46,20
Field Address 9 Reserved
Field Address 10 Common Data Classes (CDC) Type. Each element of data within the logical node
conforms to the specification of a common data class (CDC). Each CDC describes
the type and structure of the data within the logical node. For instance, there are
CDCs for status information, measured information, controllable status information,
controllable analog set point information, status settings, and analog settings. Each
CDC has a defined name and a set of CDC attributes each with a defined name,
defined type, and specific purpose.
Field driver text 1 Name of the IED e.g. AA1L1Q03A1 (Specified in SCD file)
Field driver text 2 Logical Device e.g. LD0
Field driver text 3 Logical Node e.g. SCSWI2
Field driver text 4 Signal (channel name=DO.DA) e.g Pos.Cancel.ctlVal
Field driver text 5 IEC Datatype e.g BOOLEAN, INTEGER
Field driver text 6 S+ Node Name e.g AA14
Field driver text 7 Subnet Name AA1WA2(provided in SCD)
Field driver text 8 Complete IAL Path e.g. /DPC/CO/BOOLEAN/+/none/+/7,46,20
Field driver text 9 Type of IED e.g. IED670(specified in SCD and CCF)
Field driver text 10 Reserved

Note - Example : The Complete signal is AA1L1Q03A1_CTRL_QA1_POS_Cancel
17.5 Process
Faceplate Name : Associated Faceplate Name.
The faceplate names are pre defined. The CO61850 driver associates the names of the faceplates with the main tags.
When the user right clicks on the Main tag in the tag summaries, a drop down menu appears which has the menu item
Control. When this menu item is clicked the faceplate comes up.
e.g For the Main tag for the Bay the faceplate would be - Prctrl.POP_BAY,T=QA1.
For the Circuit Breaker, the faceplate would be Prctrl.POP_CBR
17.6 Files
Log files
The log files are created in the Logs folder if they are enabled by setting the Trace register to YES and are named
SystemDate. Furthermore the TraceLevel bits allow to select the details of the trace to be enabled. These three registers
are cyclically read by the driver.
17.7 Driver Configuration
IEC61850 Driver configuration forms the basic entity for initiating the driver. CO61850 generates a XML based registry file
and send to the Composer Operation via ESC. Composer Operation updates the S+ Operation registry while performing
the deployment operation.
SPlus Operations Scanner Reference Guide IEC 61850 DRIVER
76 2VAA000725E
17.8 Commands
1. The user issues a command from the faceplate. Each faceplate object have an associated tag.
This tag looks like : AA17_Ctrl_QA1_Pos_Select, if a select command has to be issued.
2. Command signals can be one or a combination of the following :
i. Operate = Tag corresponds to Oper.ctlVal
ii. Select= Tag corresponds to SBO.ctlVal/ SBOw.ctlval
iii. Cancel= Tag corresponds to Cancel.ctlVal
iv. AckCmd = For a command there is one acknowledgement tag which gets created by CO61850.
3. These command signals are mapped to main tags. E.g Q1_CTRL
Command Main tags are formed usually to group together all the command tags.
So if we have a signal for operate, and if the associated signals for cancel and select are present then the main tag
is created as : Bayname_CTRL_QA1_POS.
Bayname is associated during the CO61850 Export using a Bay file, which has theBay name, IED name and
Faceplate name.
4. The main tags are made up of atoms
E.g Under the command main tag : Bayname_CTRL_QA1_POS we have the different atoms like,
AA1L1Q03A1_CTRL_QA1_POS_Cancel, AA1L1Q03A1_CTRL_QA1_POS_Select,
AA1L1Q03A1_CTRL_QA1_POS, Bayname_Ctrl_QA1_Pos_CmdAck
5. These atoms are created with the help of signals provided in the SMT(Signal mapping) file. This is a part of
CO61850.
The smt file contains the signal group, S+ Tag atom and the IED Type(under which the signal appears). The signal is
mapped to a particular S+ Tag Atom i.e if it is cancel command it is mapped to Ctrl_QC1_Pos_Cancel. This signal
falls under thr Group : CTRL.

Figure 17-2: Signal Mapping File
6. The CCF file has the corresponding value :
<ExtRef iedName = "AA1L1Q03A1" ldInst = "LD0" prefix = "S" lnClass = "CSWI" lnInst = "1" doName = "Pos"
daName = "Cancel.ctlVal" intAddr = "/DPC/CO/BOOLEAN/+/none/+/4,46,20"/>
7. The corresponding Tag Summaries(in S+ Operations) is as follows :

Figure 17-3:Tag Summaries
NOTE: For SMT and IEC61850 configuration related information pleae refer to SPlus Operations IEC61850 manual.
17.9 Databases

Field Description
INDEX Index number of the tag
NAME Name of the tag e.g AA17_Ctrl_QA1_Pos_Select
UID Unique identity number
TAGTYPE Type of the tag e.g ANALOG/DIGITAL
TAGSRC e..g EXT
FACEPLATE String containing the name of the command faceplate e.g.POP_BAY
FIELD_DRV String containing name of the driver(same as in registry) e.g. IEC61850.Drv
FIELD_AD1 String containing Scanclass for Scanner
FIELD_AD2 String containing IALAdress Holds the IAL-Type information (e.g. Single info.
with time, Single command)
SPlus Operations Scanner Reference Guide IEC 61850 DRIVER
2VAA000725E 77
FIELD_AD3 String containing Indication of the type of the tag e.g. Input, Command, etc.
FIELD_AD4 String which holds the IAL-Type information i.e DMCD (e.g. Single info. with
time, Single command)
FIELD_AD5 String which holds the Qualifier
FIELD_AD6 Reserved
FIELD_AD7 String for Control Model
FIELD_AD8 Value is set to 1 or 0.If the command type is a direct operate command it is set
to 1, else it is set to a default value of 0 for the normal command for SBOW
FIELD_AD9 Reserved
FIELD_AD10 CDC Type
FIELD_TX1 String value for Name of the IED e.g. AA17
FIELD_TX2 String value for Logical Device e.g. LD0
FIELD_TX3 String value for Logical Node e.g. SCSWI2
FIELD_TX4 String value for Signal e.g. Pos.SBOw.ctlVal
FIELD_TX5 String value for IEC Datatype e.g. BOOLEAN, INTEGER
FIELD_TX6 String value for S+ Node Name e.g. INWITNIS00281
FIELD_TX7 String value for Subnet Name e.g. AA1WA2
FIELD_TX8 String value for complete IAL Path e.g. /DPC/CO/BOOLEAN/+/none/+/7,46,20
FIELD_TX9 String value for IED Type e.g. REC670, IED670
FIELD_TX10 Reserved
17.10 Usage of Driver with Scanner
If Stop command is given from the Scanner in order to stop the IEC61850 Driver, wait for 60-70 seconds for issuing a Start
command again.
SPlus Operations Scanner Reference Guide P14 DRIVER
78 2VAA000725E
18. P14 DRIVER
P14 Driver registries and tag configuration are already created automatically during the import from P14Importer, so the
purpose of this chapter is just to explain the meaning of them and no tuning is necessary. The configuration for the
acquisition has also to be done according to the SlimCPS configuration.
Table 18-18-1: Driver Specific Registers
Name Type Values Notes
ProgID STRING DriverP14 Name of the driver
P14_STATUS_TAG_SRV1 STRING Name of the diagnostic tag for the first
connectivity server

P14_STATUS_TAG_SRV2 STRING Name of the diagnostic tag for the
second connectivity server
DisconnectOnAcquisitionFailure STRING NO The driver status is running even if the
SlimCPS is not getting data, the logical
status of the acquisition is only effected
by the SlimCPS status
SlimCpsWatchDogTimeoutSec DWORD 30 Number of seconds without receiving
any status notification from the
SlimCPS before restarting it via driver
watchdog
SlimCpsStopStartWaitSec DWORD 300 In case of SlimCPS watchdog restart
number of seconds between sending
the StopCPS and the StartCPS
DataLoopSleep DWORD 200 In case of data queue empty the
number of mSec to sleep in the loop
StatusLoopSleep DWORD 100 In case of status queue empty the
number of mSec to sleep in the loop
PropagateDisturbance DWORD 1 With this registry is possible to inhibit
the disturbance propagation from the
driver to the system
ReconnectionTriggerAfterNewTags DWORD 0 If new tags are added to the driver then
a reconnection trigger is sent to

The following registers are only used by the P14 driver:
SPlus Operations Scanner Reference Guide PERFORMANCE DRIVER
2VAA000725E 79
19. PERFORMANCE DRIVER
Performance driver is used to check system parameters about processes like CPU usuage, memory usage , number of
threads or handle.
To check the performance about the processes, a tag has to be created for each process and the tag has to be linked to a
data processor that specify which are the parameters to be checked.
To create the driver register use Scanmonitor with the wizard.
IbdBase can be used to create tags and field to be filled are as follows.
Tag source type: DEVSTA
Data Processor name Enter the data processor name that defines the parameters to be checked
In the Acquistion tab:
Field Driver name Name of the Driver instance
Field Driver Text1 Name of the process to be checked
Field Driver Text2 Optional (Name of the server where process is running)
In the normal installation, when you browse for the file RemoteServiceLib.xml, an example(ProcPerfStd) for the
performance tags can be found.This example can be tuned adding or removing counters according to system needs.
Table 18-19-1: Driver Specific Registers
Name Type Values Notes
ProgID Char DriverPerfMon
TraceLevel Int 0xFFFF Bitmask for the level of tracing.


The following registers are only used by the Performance driver:







SPlus Operations Scanner Reference Guide COMLI DRIVER
80 2VAA000725E


20. COMLI DRIVER
The communication protocol COMLI is described in the document no 493-0192-11 (COMLI System Description). The current
COMLI driver implementation is for Read/Write of I/O bits, Read/Write of Registers/High Registers and Time Synchronization.
20.1 Installation
After installing S+ Operations you must register the DLL ComDriver.dll located in C:\Program Files(x86)\ABB Symphony
Plus\Operations\bin using the following command from a DOS window:
Regsvr32 C:\Program Files(x86)\ABB Symphony Plus\Operations\bin\Comdriver.dll
[This DLL is required for physical layer communication (Serial communication).]
Post installation the COMLI driver (ComLiDriver.dll) in location
C:\Program Files(x86)\ABB Symphony Plus\Operations\bin\drivers
20.2 Driver Specific Registers
The driver-specific registers as mentioned in the following table:
Table 20-1: Driver Specific Registers
Register Name Type Values
ProgID Char ComLiDriver
BusPort Int [SerialPortNumber]
BusProgID Char ComDriver.ComDrv.1
BusType Char COM
BusAddress Char [baud rate, parity, n.bit, stop bit] (9600,e,8,1)


Table 20-2: Registers for COMLI Driver
Register Name Type Values Notes
nRetry Int [number] (3) Number of attempts in case of send
failure.
TimeSyncInterval Int [In minutes 0 and above]
(60)
For Time synchronization Values are in
minutes (Example: Every 60 minutes the
synchronization happens with slave. In
order to disable time synchronization, set
0 value.
Files
For the log files you need to set the trace level under the driver tab in Tracemanager.exe, we have two trace levels for
COMLI driver. Once this is enabled the log file by name <DriverName>.log is generated.

Trace Level Values
1 (0x00000001) TRACE HIGH: Detailed log are generated for tracking purpose and
knowing driver status.
2 (0x00000002) TRACE LOW: General logs for knowing driver status.
Driver Configuration
The driver's register key can also contain some registers storing the strings that the online configurator shows when a tag
is displayed or changed in the Acquisition and Output tables.

Register Name Type Values
Label_ad1 and/or Label_out_ad1 Char Slave number
Label_ad2 and/or Label_out_ad2 Char Register address
Label_ad3 and/or Label_out_ad3 NA NOT APPLICABLE
Label_ad4 and/or Label_out_ad4 Char Scan class
SPlus Operations Scanner Reference Guide COMLI DRIVER
2VAA000725E 81
Tag Database Configuration:
The database fields of the COMLI driver can take the following values:
Label _AD1: Device number (Slave address: 1 - 216)
Label _AD2: Register Address (I/O bits, Register & High Registers)
a) I/O Bits Range 0-3777 only OCTAL values (Digital Tags).
b) Registers Range: 0 to 3071 only Decimal values (Analog Tags).
c) High Registers: 0 to 65535(Decimal values - starts from address 3072) (Analog Tags)
Label _AD3: Currently Not applicable.
Label _AD4: Scan class (Range 1 to 10)



SPlus Operations Scanner Reference Guide APPENDIX
82 2VAA000725E



00

01

00

01


00

00

00

01

00

00

00

01


3F

80

00

0
0
3F

80

00

0
0
21. APPENDIX
21.1 Appendix A - Data Format



2 byte short:
Original byte transmission order


4 byte long:

4 byte IEEE float:
msb
byte1
lsb
byte2
msb
byte1
lsb msb
byte2 byte3 byte4 byte1


byte2 byte3
lsb
byte4




16-9 8-1 32-25 24-17 16-9 8-1 32-25 24-17 16-9 8-1


point type 0 - Unsigned short (1 register, HO LO) HO LO stands for HighOrder LowOrder

Byte1 Byte2
00 01
16-9 8-1




point type 1 - Signed short (1 register, HO LO)


Byte1 Byte2
00 01
16-9 8-1



point type 2 - Unsigned long (2 registers, HO LO)


Byte1 Byte2 Byte3 Byte4
00 00 01 00
32-25 24-17 16-9 8-1




point type 3 - Signed long (2 registers, HO LO)


Byte1 Byte2 Byte3 Byte4
00 00 01 00
32-25 24-17 16-9 8-1

SPlus Operations Scanner Reference Guide APPENDIX
2VAA000725E 83


point type 4 - IEEE float (2 registers, HO LO)


Byte1 Byte2 Byte3 Byte4
3F 80 00 00
32-25 24-17 16-9 8-1




point type 5 - Unsigned long (2 registers, AEG Modicon)


Byte1 Byte2 Byte3 Byte4
00 01 00 00
16-9 8-1 32-25 24-17



point type 6 - Signed long (2 registers, AEG Modicon)


Byte1 Byte2 Byte3 Byte4
00 01 00 00
16-9 8-1 32-25 24-17



point type 7 - IEEE float (2 registers, LO HO)


Byte1 Byte2 Byte3 Byte4
00 00 80 3F
8-1 16-9 24-17 32-25



point type 8 - IEEE float (2 registers, word swap)


Byte1 Byte2 Byte3 Byte4
00 00 3F 80
16-9 8-1 32-25 24-17



SPlus Operations Scanner Reference Guide APPENDIX
84 2VAA000725E


point type 9 - Unsigned Long (2 registers, LO HO)


Byte1 Byte2 Byte3 Byte4
01 00 00 00
8-1 16-9 24-17 32-35



point type 10 Signed Long (2 registers, LO HO)


Byte1 Byte2 Byte3 Byte4
01 00 00 00
8-1 16-9 24-17 32-25
21.2 Appendix B Tag Type Table



21.3 Appendix C Quality Code Table
Value Power of 2 Description
1 2^0 application specific 2
2 2^1 application specific 1
4 2^2 hardware channel failure
8 2^3 red tagged
16 2^4 application specific 3
32 2^5 bad calculated value
64 2^6 reserved
128 2^7 alarm inhibit active
256 2^8 alarm monitoring inhibited
512 2^9 operator inserted value
Index Type
1 ANALOG
2 CLIF
3 DAANALG
4 DADIG
5 DADIGTL
6 DANG
7 DD
8 DEVSTAT
9 DIGITAL
10 INTANG
11 INTDIG
12 MSDD
13 N90STA
14 RCM
15 RMCB
16 RMSC
17 STATION
18 TEXT
19 TEXTSTR
20 UNDEF
21 EXTANG

Index Type
22 EXTDIG
23 ANGRPT
24 DIGRPT
25 LABANG
26 LABDIG
27 CALCANG
28 CALCDIG
29 APMSSTA
30 NODESTA
31 BITMASK
32 COMPOSITE
33 INTEGER
34 UINTEGER
35 BYTEARR
36 ANAEIN
37 ANAEOUT
38 DIGEIN
39 DIGEOUT
40 DATETIME
41 DATETIMEX
SPlus Operations Scanner Reference Guide APPENDIX
2VAA000725E 85
1024 2^10 reserved
2048 2^11 off scan
4096 2^12 old data
8192 2^13 alarm
16384 2^14 unacknowledged
32768 2^15 implemented
65536 2^16 dummy packet (playback only)
131072 2^17 auto/manual
262144 2^18 signif low alarm
524288 2^19 signif high alarm
1048576 2^20 tracking
2097152 2^21 i4 format
4194304 2^22 low deviation alarm
8388608 2^23 high deviation alarm
16777216 2^24 decreasing rate of change
33554432 2^25 increasing rate of change
67108864 2^26 low instrument range
134217728 2^27 low-low alarm
268435456 2^28 low alarm
536870912 2^29 high alarm
1073741824 2^30 high-high alarm
2147483648 2^31 high instrument range


ABB Inc.
Power Generation
Wickliffe
OHIO, USA
E-Mail: powergeneration@us.abb.com
www.abb.com/controlsystems

ABB AG
Power Generation
Mannheim
GERMANY
E-Mail: powergeneration@de.abb.com
www.abb.com/controlsystems

ABB Pte. Ltd.
Power Generation
Singapore
SINGAPORE
E-Mail: powergeneration@sg.abb.com
www.abb.com/controlsystems


D
o
c
u
m
e
n
t

N
u
m
b
e
r

2
V
A
A
0
0
0
7
2
5
E

Você também pode gostar