You are on page 1of 620

The e-terrahabitat Overview

Topics
e-terrahabitat and its features
e-terrahabitat Architecture
Operating Systems and Compiler
Portability Model
Types of e-terrahabitat Systems
Subsystems or components of e-terrahabitat
e-terrahabitat Applications
 Starting up e-terrahabitat

What is e-terrahabitat?
 e-terrahabitat is a software product that provides an
environment and a suite of tools for the:

 development
 operations

of highly available real-time control systems and


engineering applications.
NOTE: For additional information on e-terrahabitat, refer to the
e-terrahabitat Users Guide (hab_ug.pdf).

Features of e-terrahabitat (1 of 2)
 e-terrahabitat memory-resident database subsystem allows it
to support large databases where tens-of-thousands of
real-time measurements are scanned every two to ten
seconds.

 Real-time means having to manage:

Large amount of interrelated and interacting pieces of data

Tasks that operate asynchronously

Processing of time-critical events

Demanding availability and fault tolerances

Features of e-terrahabitat (2 of 2)
 The user interface subsystem refreshes the data on the
operators screens at the same rates and supports large
database-driven geographic one-line displays as well as
tabular displays.
 A complete suite of support applications and software tools to
monitor and manage hardware and software as required by
your real-time control systems operating at all times, 365 days
a year.

The e-terrahabitat architecture (1 of 2)


 An e-terrahabitat based real-time control system has a threelayered architecture. The benefits of layering are:

 Isolate e-terrahabitat-based applications from the underlying


operating system (OS).

 Provide portability for e-terrahabitat applications across multiple


OS platforms.

Real-time
Application Layer
e-terrahabitat
Layer
OS Layer

Engineering App i.e., Telephone switching


Distribution Automation Systems
Energy Management Systems i.e., e-terraplatform
Real-time control systems i.e., e-terrascada

e-terrahabitat
environment and development layer
Computer Operating System*
Windows 2003 Server + SP1, Red Hat Linux 4.0 (WS, AS) 64 bit

The e-terrahabitat architecture (2 of 2)


 An example of e-terraplatform (EMP) built in layers as shown
in figure below.
Energy Management System Applications

FEP or
e-terracontrol
Analogs
Statuses
Controls

SCADA
Subsystem
Frequency, time,
plant & tie-line
measurements,
unit controls,
ACE, system load
Unit
Controls

Analogs &
Statuses
Estimated
Values

DTS

Network
Subsystem
External unit MW
schedules, pump
unit limits,
incremental cost
curves

Generation
Subsystem

Unit security limits,


loss sensitivities,
AGC participation
factors

RTUs

Real-Time Control System Environment


e-terrahabitat
NETIO
Web-FG Permit
Configuration Manager MRS

Hdb
Alarm

Operating Systems
Windows 2003 Server, Red Hat Linux 4.0 (WS, AS)
6

Operating Systems and Compiler Support


 e-terrahabitat -based applications can be developed from the
following operating systems and compilers.
VER 5.6

Windows

Linux

OS System

Windows Server 2003 (32 & 64 bit)


Windows XP Pro+ SP1 (UI only)

Red Hat Linux 4.0 Enterprise


Edition (AS & WS) 64 bit

Compiler
Support

Visual Studio .NET 2003


Intel Fortran Compiler 9.0 (Standard
Edition)

GNU Compiler Collection 3.4


(GCC C++)
Intel Fortran compiler 9.0

Other Software

Java 2 Platform Standard Edition 5.0,


Perl 5.8, Acrobat Reader 7.0+

Java 2 Platform Standard Edition


5.0, Perl 5.8, Acrobat Reader 7.0+

NOTE: For more details on the hardware and software


requirements, refer to the e-terrahabitat 5.6 Release Notes.
7

Portability
 Layering allows the real-time control system applications to be
portable.
 Portability means it is available for real-time use and
development on across supported operating systems.
 Portability protects against the operating system becoming
obsolete.
 The databases, displays, and applications are portable within
e-terrahabitat, so the operating system can be changed
without procuring a new control system.

Types of e-terrahabitat Systems


 e-terrahabitat can be used in multiple types of environments,
which affects the techniques used to maintain the installation:

 Real-Time e-terrahabitat systems remain in an up condition at all


times, either in primary mode supporting real-time functions such
as SCADA, or in standby mode waiting to assume the real-time
functions in case the primary machine fails.

 e-terrahabitat simulation-type systems support simulation of a


real-time e-terrahabitat environment for simulation software such
as the e-terrasimulator (DTS). The e-terrahabitat functions are
similar to those of a real-time system, but without the need for
constant availability (i.e., redundancy) of the e-terrahabitat.

 e-terrahabitat program development-type systems (PDS) are


installed to provide application development environments, or to
test areas and examine the effects of software changes.
Development is typically done on Windows platform and
deployed to LINUX, and/or Windows.

Subsystems or components of e-terrahabitat


 The e-terrahabitat environment can be conceptually divided
into four high level subsystems:

 e-terrabrowser (WebFG) User Interface Subsystem


 HDB Database Management Subsystem
 Programming Tools and Portable APIs
 Real-Time Core and Support Applications and Utilities (Alarms,
Configuration Manager, NETIO, Process Manager, Permit, etc.)

10

10

Graphics User Interface (UI) Subsystem


 UI forms a direct link between the users and the database.
 UI is an easy-to-use full graphics user interface consisting of:

 e-terrabrowser (WebFG) for data access (authentication) to


displays

 e-terratrust (optional) for authentication using Kerberos.


 FG Display Builder for building displays

e-terrahabitat
Graphics User
Interface
Subsystem

11

Databases
Management
Subsystem

Programming Tools
and APIs

Real-Time Support
Subsystem

11

Database Management Subsystems


 Hdb is the Database subsystem. There are several concepts
that are unique to e-terrahabitat:

 Clones, clone context, application, database, and savecases


 Hdb consists of many utiltities that allow data to be access,
stored and modified:

 hdbcloner, hdbcopydata, hdbexport, hdbimport, hdbrio


 HdbRdb Tools (hierarchical to relational database utilities)
e-terrahabitat
Graphics User
Interface
Subsystem

12

Databases
Management
Subsystem

Programming Tools
and APIs

Real-Time Support
Subsystem

12

Programming Tools and APIs


 Contains many tools, Application Programming Interfaces
(APIs) that provide essential functions and allow
customization of e-terrahabitat based applications.
 ESCATOOLS directory provides a set of tools to store, build
and link code with consistent and standard methods.
 HABITAT_SRCDIR and HABUSER_SRCDIR are directories
containing the source code (codeset) for
e-terrahabitat and non e-terrahabitat layer applications (e.g.
e-terraplatform).
e-terrahabitat
Databases
Management
Subsystem

13

Graphics User
Interface Subsystem

Programming Tools
and APIs

Real-Time Support
Subsystem

13

Real-Time Support Subsystems


 Within e-terrahabitat there are many applications that provide
real-time operations support to the real-time, highly available
control systems:

 ALARM, NETIO, Process Manager (PROCMAN)


 Permission Manager (PERMIT)
 Configuration Manager (CFGMAN)
 Memory Replication Services (MRS)
e-terrahabitat
Databases
Management
Subsystem

Graphics User
Interface Subsystem

Programming Tools
and APIs

Real-Time Support
Subsystem

The applications listed above will be covered in Module 4. Many


more applications not listed here are covered in other courses.
14

14

What are e-terrahabitat Applications? (1 of 3)


 The e-terrahabitat system
(as well as the real-time
control systems that are built
on it) is a suite of related,
database-driven applications.
 In the e-terrahabitat context,
an application is a uniquelynamed collection of one or
more of each of the following:

 displays how the user


works with and accesses
the application.

 savecases how the


information is archived from
snapshots of data.

 databases what
information is managed by
the application.

 tasks how the data is


processed.

15

15

What are e-terrahabitat Applications? (2 of 3)


 All e-terrahabitat
applications have the same
central organizational
structure.
 Each component (databases,
tasks, displays, and
savecases) of an
e-terrahabitat application is
created (written or built)
separately and reflects its
modularity.

16

16

What are e-terrahabitat Applications? (3 of 3)


 An e-terrahabitat-based application is broken down into
discrete units of work or operations tasks.

 Units could be either standalone or make use of each others


services.

 Allows for prioritization of tasks:




Within a bigger application

Between applications

 An e-terrahabitat application typically includes one or more


tasks, which represent an executable code or script.

NOTE: Tasks are defined in an application definition file called


.appdef located in the HABITAT_APPDEFS directory.

17

17

Task View Utility (1 of 2)


 Tasks can be started with the Task View utility. Task View
allows the user to interactively, start, stop, and view the tasks
running on the e-terrahabitat.
 Task View can be invoked from the command prompt by
typing tview:

 Alternatively, Task View can be used in a command-line, noninteractive fashion as follows:

 tview run procman procman habitat


habitat start and habitat stop can also be used to start and
stop tasks in e-terrahabitat.
18

18

Task View Utility (2 of 2)


 Windows-based e-terrahabitat systems have both a
command line and a GUI version of Task View.
 To launch Task View you can double click on the shortcut or
type the name of executable from the command line.
shortcut

Task View
[Standard]

Task View [GUI]

E:\AREVA\habitat
nn\habitat\bin\
tview.exe (cmd
line version)

E:\AREVA\habitat
nn\habitat\bin\
TaskView.exe

m
co

d
an
m

Windows commands are not case sensitive, unlike UNIX.


19

19

Starting and Stopping e-terrahabitat


 To start e-terrahabitat, you would use Task View utility. For
example, you could type non-interactively:
command

task

application

family

 tview run procman procman habitat


 To stop all tasks, you could do the following:

 tview stop -all


 You could also start individual tasks as follows:

 tview run <task> <application> <family>


 You could also stop individual tasks as follows:

 tview stop <task>_<application>_<family>


Process Manager or PROCMAN is responsible for managing
and starting all tasks for e-terrahabitat, and is covered in the
Managing High Availability System course or the Procman
Users Guide (proc_ug.pdf).
20

20

Summary
1. e-terrahabitat provides an environment for the ________,
and ______ of real-time control systems and engineering
applications.
2. e-terrahabitat memory-resident ______ subsystem allows it
to support large databases where tens-of-thousands of realtime measurements are scanned every two to ten seconds.
3. In the e-terrahabitat context an application is comprised of
the following components:

1.
2.
3.
4.

______________
______________
______________
______________

4. The ____ _____ utility allows the user, interactively, to start,


stop, and view the tasks running on the e-terrahabitat.
21

21

Overview of e-terrahabitat Database


Design and Development
Topics
Data Modeling
Relational and Hierarchical Databases
What is an Application?
What is a Database?
What is a Clone?
HDB Database Management System and Utilities

Data Modeling
 Data modeling is the process of defining the logical structure
of the data in a form that can be prepared for input to a
computer.
 The purpose of data modeling is to develop an accurate
model or graphical representation of the applications needs
and processes.
 Data modeling specifies the following:

 What field data will be stored


 How large each value can be
 What kind of information each field can contain
 Which fields can be left blank
 Which fields are constrained to a fixed range
 Whether or not (and how) various records are linked
2

Overview of e-terrahabitat Database Design and Development

The Relational Data Model


 There are two popular types of databases in data modeling:
relational and hierarchical.

Rows of a
relation are
called
tuples.

Tuples

 A relational database consists of a collection of tables, each


having a unique name. A row in a table represents a
relationship among a set of values. Thus a table represents a
collection of relationships:
Attributes

data

Overview of e-terrahabitat Database Design and Development

Attributes serve as
names for the
data, represented
by each column.
3

Example of a Relation
 Here is an example of a relation that describes employees of
a company populated with data values
 There is an implied relationship because the EMP table has a
Dept_No column that is the same as the ID column in the
DEPT table.

EMP table

Name
Jones
Smith
Thompson
Dilbert

Dept_No
10
20
30
40

Pay
Grade

Pay Rate

50

60.00

42
43
09

Dept_No

Department

10

Engineering

20

Training

30

Support

40

Administrative

45.50
46.75
12.00

DEPT table

Overview of e-terrahabitat Database Design and Development

The Hierarchical Data Model


 The hierarchical data model organizes data in a tree structure.
 There is a hierarchy of parent and child records, which implies
that a record can have repeated information, (generally in the
child records).
 Power system applications commonly use hierarchical data
structures as illustrated below:
SUBSTN
DEVTYP
DEVICE
DEVICE
DEVTYP
5

Overview of e-terrahabitat Database Design and Development

Logical (Hierarchical) Structure


of e-terrahabitat Databases
 Logical structure refers to the
human view of data, i.e., how
records and fields relate to
each other in order to best
model the physical objects that
the data represents.

SUBSTN

DEVTYP

 The HDB model organizes data


using a hierarchical database.

DEVICE

 A database is an instance of a
database schema: the
database source schema file is
created from a data model for
input to a computer.

DEVICE

 In HDB, a clone schema is an


instance of a data model.

DEVTYP
DEVICE
DEVICE

Overview of e-terrahabitat Database Design and Development

 In the context of e-terrahabitat,


an application is a uniquelynamed collection of one or
more of the following:

 Displays: How the user works with


and accesses the application

 Savecases: How the information is


archived from snapshots of data

Overview of e-terrahabitat Database Design and Development

RTGEN
RTNET

 The e-terrahabitat system (as


well as the real-time control
systems that are built on it) is a
suite of related, databasedriven applications.

SCADA

What are e-terrahabitat Applications?

 Databases: What

information is managed
by the application

 Tasks: How the data is


processed

e-terrahabitat Databases
 Databases are a main
component of e-terrahabitat
applications.
 Databases are a collection of
related information organized
in defined structures called
database schema.
 The database schema simply
describes the organizational
structure of the database.
 Database schema broadly
consist of the structure of
tables and their relationships.

scadamom taglog
mescada commlog

databases
displays

tasks
savecases

SCADA Application

Note: The design of database schema (.dbef) will be discussed in


Module 2.
8

Overview of e-terrahabitat Database Design and Development

The Concept of Clones

A clone
is a collection of
one or more
databases used
to retrieve and
store data.

SCADA.XXX clone

Hence, a clone is the


data instance of an
application under a
specified family.

SCADA.DTS clone

Databases are
central to all
e-terrahabitat
applications

SCADA.EMS clone
scadamom taglog
mescada commlog

databases
displays

tasks
savecases

SCADA Application

A *.CLS file defines the clone schema and lists the


applications, databases, and savecases used for the clone.
A clone is a single file (*.car) and contains all databases
owned by the application.
9

Overview of e-terrahabitat Database Design and Development

Clone Context (1 of 3)
 All data operations in an e-terrahabitat environment depend on a
clone context. A clone context is required for all database access
and consists of:

 Application Name: Specifies the application schema involved


 Family Name: Specifies the particular family instance of the clone
 Group Number: Instance of the e-terrahabitat system. Each instances
of e-terrahabitat will be assigned a unique, 2-digit group number (i.e. 60)

 Clone context can be determined as follows:

 From default environment variables using:




HABITAT_APPLICATION, HABITAT_FAMILY, HABITAT_GROUP

 At a CMD prompt/window and typing the CONTEXT command:




context <application> <family> (i.e.. context scada ems)

 Within the user interface login as defined for a given user (mode)
permissions in the PERMIT application

 From within an application programmers code using API functions


(covered in the Programming in e-terrahabitat course)
10

Overview of e-terrahabitat Database Design and Development

10

Clone Context (2 of 3)
 User assignments and permissions are managed by the PERMIT
application. Users can access only one application clone at a time.

CLONE

CLONE

CLONE

(SCADA.DTS)

(NIOSERVE.EMS)

(SCADA.EMS)

PERMIT
Permissions
defined for an
application
determine the
user level of
access to that
applications
clone.

USER1

USER2

APPLICATION FAMILY

RWE A

APPLICATION FAMILY

RWE A

SCADA
NIOSERVE




SCADA
NIOSERVE




DTS
EMS

EMS
EMS

SESSIONS
11

Overview of e-terrahabitat Database Design and Development

11

Clone Context (3 of 3)
 Heres an example of clone context from two user accounts
(dts, demo) with the same application name but a different
family name:
User login as DTS with mode DTSTMPLT

User login as DEMO with mode HABTMPLT

12

Overview of e-terrahabitat Database Design and Development

12

What is HDB Database Management Subsystem?


(1 of 5)
 The database subsystem within e-terrahabitat is called HDB. e-terrahabitat
provides a database subsystem for the creation, manipulation and archival
of the various application databases.
 e-terrahabitat contains many databases there is no one single massive
database. Heres a list of frequently-used utilities:
Data Management Utilities
hdbrio: An interactive, command-based database query and edit program,
for viewing and modifying database data
hdbcopydata: Copies clones, archives, databases, and savecase files
rdbcopydata: Copies to/from hierarchical to/from relational databases
hdbcompare: Compares two databases, zipped archive files, or savecases
hdbexport: Converts data from an HDB database to an ASCII file for export
to HDB or other databases
hdbimport: Loads ASCII files into an HDB database

13

Overview of e-terrahabitat Database Design and Development

13

What is HDB Database Management Subsystem?


(2 of 5)
Administration Utilities

The hdbdirectory is a system administrator utility for managing HDB


groups as they are created, copied (from one computer to another), or
used to repair a corrupt cloning database.

The hdbserver utility is an HDB system administrator program for


placing an HDB group clone server online or offline at system start-up
or shut-down.

14

Overview of e-terrahabitat Database Design and Development

14

What is HDB Database Management Subsystem?


(3 of 5)
Clone and Database Utility

The hdbcloner utility manages database schema and clone instances:

15

create_clone

Creates a new clone or replaces an existing clone

load_schema

Loads new schema or replaces schema in the dictionary

offline_clone

Marks a clone offline

online_clone

Marks a clone online

remove_clone

Removes existing clones

remove_schema

Removes existing schema from the dictionary

rename_clone

Renames a clone file

show_clone

Lists existing clones

show_schema

Lists existing schema defined in the dictionary

hdbcloner h

A complete listing of commands and help

Overview of e-terrahabitat Database Design and Development

15

What is HDB Database Management Subsystem?


(4 of 5)
HdbRdb Tools

emsdictionary_setup: Creates the EMSDictionary database within a


relation database
rdbcloner: Loads and creates the e-terrahabitat-based database
schemas corresponding in a relational database instance
rdbcopydata: Copies an entire e-terrahabitat-based database to a
relational database, or copies in the reverse direction
rdbimport: Imports data into a relational database using the data files
created by the hdbexport utility
rdbexport: Exports data from a relational database. The exported data
can be used by the hdbimport utility to import into e-terrahabitat-based
databases

This course will only focus on hierarchical databases. Additional


info on HdbRdb can be found in the HdbRdb Tools User Guide.
16

Overview of e-terrahabitat Database Design and Development

16

HDB Database Subsystem (5 of 5)


Other Utilities

hdbdocument: Converts a database schema definition file (DBDEF) into


a file containing only the documentation and structure of the database
schema

hdbdump: Dumps clone, archive, and/or save files data to a print file for
printing

hdbformat: Creates Fortran 90 INCLUDE and C-language header files


that define database fields for an application

hdbmemlock: A UNIX-only program that locks database partitions into


physical memory to enhance data access performance

17

Overview of e-terrahabitat Database Design and Development

17

Summary
1. _____ _______ is the process of defining the logical
structure of data in a form that can be prepared for input to a
computer.
2. Power system applications commonly use ___________ data
structures.
3. The term used for describing the data structure of a database
is called a ____________ __________.
4. An e-terrahabitat application is comprised of four
components:
___________, ___________, _____________, and __________.

5. An instance of an applications database space is called a


_________.
6. The application clone __________ source file has the file
extension .________.
18

Overview of e-terrahabitat Database Design and Development

18

e-terraplatform Overview

January 2006

e-terraplatform

AREVA Software
for
Energy Management Systems
(EMS)

January 2006

e-terraplatform Architecture

January 2006

e-terraplatform -1 Platform of Application Software for


the management of Power
Transmission & Generation Systems
 4 major Sub-Systems :

 SCADA e-terrascada, for the control


and monitoring of transmission and
distribution grids

OPERATING SYSTEM
e-terrahabitat
SYSTEM SERVICES
APPLICATIONS
Operations Training

Data
 NETWORK e-terratransmission, forAcquisition

secure network analysis of


transmission grids

 GENERATION e-terrageneration, for


control and dispatch of power
generation

 DTS e-terrasimulator, for the

GENERATION

DISPATCHER
TRAINING
SIMULATOR

SCADA

Supervisory
Control
NETWORK

simulation of control and power


systems

January 2006

e-terraplatform -2 e-terraplatform is designed on a


core foundation that is shared
among all EMS applications; the
core technology includes:

 e-terrahabitat, a real-time
computing and database
environment

OPERATING SYSTEM
e-terrahabitat
SYSTEM SERVICES
APPLICATIONS
Operations Training

Data
Acquisition

 e-terrabrowser, a graphical user


interface for control center
operators

GENERATION

DISPATCHER
TRAINING
SIMULATOR

SCADA

 e-terramodeler, an environment
for managing all your model
changes

NETWORK

 e-terraarchive, an enterprise
database for your historical data
and operational knowledge
5

January 2006

Operating System Support

 Server side

 Windows Server 2003 Win32


 Windows Server 2003 Itanium IA64
 Windows Server 2003 x64
 Red Hat Linux 3.0 (e-terrahabitat 5.5) and 4.0 (e-terrahabitat
5.6)

 Tru64 UNIX and OpenVMS will no longer be supported for any


upcoming releases

 Client side

 Windows XP
 Windows Vista in 2006

January 2006

Hardware Support
 Intel Pentium (x86)

 Windows 2003 Server 32 bits


 Intel Itanium 2 (ia64)

 Windows 2003 Server 64 bits


 Linux_ia64
 Intel EM64T (Extended Memory 64 Technology)

 Linux_x64 & Windows 2003 Server 64 Bits


 e-terrahabitat 5.6
 e-terrahabitat 5.5 not supported in 64-bit mode on this platform
 e-terraplatform 2.3 certified as part of the e-terrahabitat 5.6
certification (until then, not supported)

 Why not AMD?

 Additional testing hardware costs


 Ongoing additional testing costs (releases, patches, etc)
 Hardware cost saving does not justify additional costs
7

January 2006

e-terraplatform: Hardware Support

 INTEL/MS-Windows based Operator consoles

 Low cost
 Multi-source
 Familiar look & feel
 Windows XP Pro or Windows 2000 pro on Pentium X86
 PCI based communication boards (DIGI) or DIGI Terminal
Server

January 2006

e-terraplatform - Content of the platform


 Application codesets
 Documentation set
 Release Notes
 Test Procedures
 Installation and Maintenance Tools
 Software Configuration Management Tools
 Performance Model
 Training
 Demonstration System

January 2006

e-terraplatform in 2006
Upgrade to 3.4

Available upgrades

(and e-terratrust 1.0)


Upgrade to 2.3

Upgrade to 3.4
(and e-terratrust 1.0)

Upgrade to 2.4
Upgrade to 5.6
(and eterratrust 1.0)
10

January 2006

10

EMS Architecture

11

January 2006

11

EMS MODEL
Topics
 Overview

 SCADA Data Model

 Network Data Model

 Generation Data Model

 Dispatcher Training Simulator Data Model

EMS MODEL - Overview


Topics
 Purpose of Modeling
 Entities to be modeled
 Purpose of EMP Subsystems
 Main EMP Databases
 Displays organization
 Modeling tools
 Mapping the Power System Model on EMP databases
 EMP Modeling : common principles

OVERVIEW - Purpose of Modeling


 Deliver a set of data describing

 The equipment for Operation of the Power System


 The electrical characteristics of the Network components
 The technical and economical parameters of the Generation strategy
 The dynamic Simulation of the power system
 Identify entities to be managed by the EMS
 Represent them by database record types and fields
 Modeling versus Populating

 Modeling consists of defining the components structure


 Populating consists of entering values to describe the components of the
power system

OVERVIEW - Entities to be modeled (1/2)


 Equipment for Operation

 Power system description (substation, devices,)


 Data retrieval system (RTU)
 Communications system (Relation between hosts, TFE, CFE, RTU)
 Electrical characteristics of the Network

 Topology of the power system


 Component characteristics
 Load model
 Operating limits

OVERVIEW - Entities to be modeled (2/2)


 Generation strategy

 Operating areas, plants and units


 Tie-lines and transactions between operating areas
 Transaction and fuel cost schedules
 Dynamic Simulation

 Parameters describing the prime movers dynamic


 Parameters describing the various relays

OVERVIEW - EMP Subsystems Purposes


(1/2)
 SUPERVISORY CONTROL AND DATA ACQUISITION

 Subsystem responsible for gathering, processing, displaying information


about the state of a monitored system (i.e. Operate the power system)

 Sending controls
 NETWORK Analysis

 Accurate Assessment of the network state (based on the State Estimator SE)
 Various applications to analyze and enhance network security

OVERVIEW - EMP Subsystems Purposes


(2/2)

 GENERATION

 Adjust generating unit outputs so as to




maintain frequency

control area interchange to the scheduled value

 Produce energy to meet the demand at a minimum cost, while observing all
system constraints (economic, security, and energy constraints)

 DISPATCHER TRAINING SIMULATOR (DTS)

 Offline software sub-system to support training of the power system


dispatchers

 Dynamic power system model used to create a simulated operating


environment

 Provides instructor facilities for modifying the parameters of the power system
model and the simulation.

OVERVIEW - Main EMP Databases


 One main database for each specialized subsystem

 SCADAMOM for SCADA subsystem


 NETMOM for NETWORK subsystem
 GENMOM for GENERATION subsystem
 DTSMOM for DTS subsystem
 Each database contains specific record types and fields

 SCADAMOM: SUBSTN, DEVICE, POINT, CTRL, ANALOG, LIMIT,


 NETMOM: CO, DV, ST, KV, UN, CBTYP, XFMR, LINE, LDAREA,
 GENMOM: OPA, PL, PLC, UNIT, TIE, TYLN, FUELTY,
 DTSMOM: ST, PLC, UN, GT, HYDRO, VRY, VCB, FRY,

OVERVIEW - Displays organization


 Displays are belonging to applications

 Each display shows information stored in EMP databases and allows


entry parameters

 Particular displays (tabular) are immediately available to monitor and


control the system

OVERVIEW - Modeling tools (1/3)


 Database building tools

 Data Base Builder (DBB) - Bulk initial population


 GENESYS - Maintaining and browsing data
 Other tools:

10

SCADAMDL application - Viewing Scada database using RFG displays

Hdbrio - offline database entry tool designed for developers

Hdbimport - imports data from an ASCII file into an Hdb clone

10

OVERVIEW - Modeling tools (2/3)


 Display building tools

 PC Builder


NT application with Windows GUI

Ability to create an interactive view of application data from one or more


application databases

Ability to access Rapport-FG user interaction functions such as:

11

scroll bars
menus
panning
positioning to specific record occurrences
zooming
decluttering

11

OVERVIEW - Modeling tools (3/3)


 Network Placement Editor (NPE)

12

NT application with Windows GUI

Automate the production of one-line displays from the data

Provide easy-to-use, intuitive User Interface

Improve the productivity when building & maintaining schematic displays

Eliminate the potential errors when linking the displays with the databases

Accommodate various data sources

12

OVERVIEW - Mapping of Power System model


on EMP databases

13

Component

SCADAMOM

NETMOM

GENMOM

DTSMOM

Stations
Plant controllers
Generating units
Circuit breakers
Lines
Tie-lines
Transformers
Nodes

SUBSTN
DEVICE
DEVICE
DEVICE
DEVICE
DEVICE
DEVICE
DEVICE

ST
UN
CB
LN
TLN
XF
ND

PL
PLC
UNIT
TYLN
-

Site and/or ST
PLC
UN
VCB, OCCB or FCB
-

13

OVERVIEW - EMP Modeling


Common principles (1/2)
 Building models (example with SCADAMOM)
Modeling application

1- Create Model of a
SCADA System

Data Modeler

2- Validate the model

SCADAMOM

5- Transfer model on line

Real time application

4- Retrieve for
further
modifications

3- Save a version of
the database

SCADA
SCADAMOM

SAVECASE

Disk File
14

14

OVERVIEW - EMP Modeling :


Common principles (2/2)
 Validation program

 Each database has one or more validation (or verify) program


 Activation


Can be activated throughout the development of the database

Must be activated before putting a new version of the database on line

 Purpose

15

Check the data entry consistency

Update existing fields according to the new database

Create new records and/or calculate new fields

15

SCADA OVERVIEW
 TOPICS
1. SCADA OVERVIEW
2. SCADA FUNCTION
3. SCADA APPLICATION INTERFACE
4. SCADA DATABASE
5. FRONT END PROCESSOR

> KESH SCADA/EMS October 2005

SCADA OVERVIEW
SCADA (Supervisory Control and Data Acquisition)

SCADA as the name itself suggests acquires data


from geographically distant remote locations and
makes it central at the Control centre for
supervisory control.
SCADA system, thus connects two distinctly different
environments.
 The Substation
 The Control Centre
A communication pathway connects the two
environments.

> KESH SCADA/EMS October 2005

SCADA OVERVIEW
CONTROL CENTRE SUBSYSTEM
Data acquisition/transfer system (front end system)
Data base Management system
MMI (Man Machine Interface) system
EMS (Energy Management System)
DMS (Distribution Management System)

> KESH SCADA/EMS October 2005

SCADA OVERVIEW
FIELD SUBSYSTEM
Substation mainly will have
 CTs and PTs
 Transducers
 Intelligent Electronic Devices (IEDs)
The substation terminus where the communication
and substation interface interconnect is the
RTU (Remote Terminal Unit)

> KESH SCADA/EMS October 2005

SCADA OVERVIEW
COMMUNICATION SUBSYSTEM
 Any communication circuit with adequate signal to
noise ratio and enough bandwidth may be used.
 VSAT
 Optic Fibers

> KESH SCADA/EMS October 2005

SCADA OVERVIEW
SCADA Workstations

FIELD
FIELDDEVICES
DEVICES

SCADA Servers

FEP

FEP
101 lines

104 line

RTU

RTU

RTU

104
stns

104
stns

101 stns

104 line
FOX PANEL

104 line
FOX PANEL

101 lines
FOX PANEL

FOX PANEL

OPTICAL
COMMUNICATION
NETWORK
6

> KESH SCADA/EMS October 2005

SCADA OVERVIEW
 In Substation , where communication and
substation interface interconnected is the RTU
 In control centre , where communication and control
centre interface interconnected is the FEP

> KESH SCADA/EMS October 2005

SCADA FUNCTIONS
1.

DATA ACQUISITION

2.

DATA PROCESSING

3.

SUPERVISORY CONTROL

4.

DEVICE TAGGING & DISPLAY NOTES

5.

TOPOLOGY PROCESSING

6.

DYNAMIC USER CALCULATIONS

7.

LOAD SHEDING

8.

HISTORICAL DATA RECORDING

9.

DATA MODELLING

10. GRAPHICAL USER DISPLAY


11. USER DISPLAY & OPERATION
12. SCADA FRONT END
13. ALARM MANAGEMENT
14. TRENDING
15. SEQUENCE OF EVENTS (SOE)
16. AREA OF RESPONSIBILITY

> KESH SCADA/EMS October 2005

SCADA Application Interfaces


Instructions
(Controls)

State Estimator Values

RTNET
Measurements,
Status

Frequency

SCADFREQ

SCADAMDL
Copy

Overrides

SCADA
Scans
Controls

LOADSHED
Measurements
Pulses, Setpoints

RTGEN

Measurements Time error,


frequency,
FEP & other sites
tielines, unit MW,
status
Measurements

USERCALC

> KESH SCADA/EMS October 2005

SCADAMOM Database
 SCADAMOM represents the current model of the monitored
system.
 There is no historical information in SCADAMOM .
 Three types of measurements are maintained in
SCADAMOM:

 Analog Values - Continuously variable quantities (volts, watts,


temperature)

 Status Values - Discrete states (tripped/closed, on/off)


 Pulse Accumulations - Usually represent quantities delivered
over time (megawatt hours, gallons)

10

> KESH SCADA/EMS October 2005

10

SCADAMOM Hierarchy
SCADEK

Separator
SUBSTN

Station Data (includes Calculation arguments)

RTU

RTU Data (for TFE download only)

TFE

Communications to RTUs (for TFE download)

FUNC

Calculation Function Definitions

CONV

Status Conversions data

ALTTYP

Alternate Limits

11

> KESH SCADA/EMS October 2005

11

Substation Subtree Hierarchy


SUBSTN
DEVTYP
DEVICE
MEAS
POINT
CTRL
LOCK
PNTMSG
ANALOG
LIMIT
ALTLIM
RATLIM
SETPNT
ANAMSG
COUNT
RCONST
PNTREF
ALGREF
CNTREF
CONREF
CTLREF
SETREF

12

> KESH SCADA/EMS October 2005

Substation level information


Device type: circuit breaker, transformer, pump, valve, etc.
E.g, Line # 1, breaker #2
Group of measurements and controls used by Calculations
A status point: on/off, open/closed, etc.
Controls allowed for the device
Interlocking points on the control
Alternate logging text = 40 characters
A measurement: KV, MW, etc.
Measurement limits used for abnormal and alarm definitions
Alternate limits: Winter/Summer, Day/Night, etc.
Rate-of-change limits
Set Point controls
Alternate logging text = 40 characters
Pulse Accumulators reading: KWH, BBLS, etc.
Constant value for Calculations
Reference to a POINT record under another MEAS record
Reference to a ANALOG record under another MEAS record
Reference to a COUNT record under another MEAS record
Reference to a CONST record under another MEAS record
Reference to a CTRL record under another MEAS record
Reference to a SETPNT record under another MEAS record

12

Naming Conventions
8

Redmond

14

40

MOTR

STTS

------

ID_SUBSTN=REDMOND
ID_DEVTYP=MOTR
ID_DEVICE=1
ID_ANALOG/ ID_COUNT/ ID_POINT=STTS
o

Name is composite key of ID fields (Virtual ID).

Restrictions on names:
- SUBSTN must be unique under the parent SCADEK.
- DEVTYP must be unique under the parent SUBSTN.
- DEVICE must be unique under the parent DEVTYP.
- Measurements must be unique under the parent DEVICE.
- No embedded spaces.

Additional fields which may be used in Alarms and on displays, for more precision:
- NAME_SUBSTN (16 characters) and/or NAME_DEVICE (24 characters); spaces OK in both.
- OR- ANAMSG/PNTMSG = alternate 40 characters -optional alternate name
for alarms, events, and on displays; embedded spaces are OK.

13

> KESH SCADA/EMS October 2005

13

RTU Subtree Hierarchy


RTU
PCLRTU *
ADRS
PCLADR *
CARD
PCLCRD *
CONECT
XDUCER
PULSE
RELAY
ANOUT
XDUREF
CONECR
RTPORT
PATHC

Description of RTU
RTU type-specific option(s)
Grouping associated by type and rate
ADRS-specific modeling option(s)
Set of points wired to one card
CARD-specific modeling option(s)
Raw Status information
Raw Analog measurement
Raw Pulse Accumulator measurement
Output record used for transmitting controls
Analog Output
Reference to XDUCER
Reference to CONECT
Each port, if RTU is multi-ported
Connection of this port to a PATH (comm line)

* PCL* records - RTU protocol-specific modeling

14

> KESH SCADA/EMS October 2005

14

Communication Hierarchy
 SCADA lets you model the way each host device in the system
communicates with each RTU along its communication path.
TFE

Describes each CPU node(s) in which TFEMAIN runs


PCLCHN*
CHANEL

Describes each CFE device(s) assigned to each TFE

PCLPTH*
PATH
RTUC

Describes each communication path to one or more RTUs


Describes the communication aspects of each RTU

RTU Index Into the


SCADAMOM RTU Subtree

* PCL records - configuration - specific modeling option(s)

15

> KESH SCADA/EMS October 2005

15

EMP Front End

e-terrascada
Primary
System

ISD Protocol
e-terracontrol

e-terrascada
System

FEP to FEP
Communications

e-terracontrol

Online SCADA Server


Online Telemetry

Offline SCADA Server


Online Telemetry

R
T
U

16

Secondary

> KESH SCADA/EMS October 2005

R
T
U

R
T
U

R
T
U

16

Front End Processor Functions


 The Front End Processor (FEP) handles protocol specific
details of all normal RTU data retrieval functions,
independently of the EMS / SCADA CPU(s).

 Converts RTU formats to RTU-independent format.


 Provides exception reporting.
 Sequences select-before-operate controls.
 Convert raw data in Engineering unit.
 Interface SCADA server by using ISD protocol
 Provides User-Interface for Communication management
 Provides User-Interface for SOE analysis
 Provides FEP redundancy management

17

> KESH SCADA/EMS October 2005

17

(FEP) Internal Functional Blocks

SCADA Host

LAN/WAN Interface
InterSite Data Links

Gateway
Apps
To UI Client(s)
Display Server

18

> KESH SCADA/EMS October 2005

CFEReader
RTU Protocol
Translator

To RTUs
Protocol Y
To RTUs
Protocol Z

FEP Server
and Database

To RTUs
Protocol X

Device Apps
PLC/Modbus
Reader

To DCS/PLC
Protocol QQQ

18

Line Switching (Physical)


Primary Server

Secondary Server

FEP Server

FEP Server

CFEReader

CFEReader

Winstream (CFE)

Winstream (CFE)

Serial Comm Ports


Bit-to-Byte Converter

Serial Comm Ports


(not needed for some protocols)

Bit-to-Byte Converter

Modem

Ports

Modem

RTU

RTU

RTU

 Scada Server allows only one of two FEP Server online

19

> KESH SCADA/EMS October 2005

19

SCADA Overview

Summary
 SCADA drives the RTU data acquisition done by the Front-End
 SCADA maintains an accurate and up-to-date model of the
system being monitored.
 SCADA maintains three types of measurements:

 Status Values
 Analog Values
 Pulse Accumulations
 The FEP manage the communication lines, receives data from
the RTU, formats the data, and then sends it to the SCADA host.
20

> KESH SCADA/EMS October 2005

20

Layered Applications (SCADA)

Topics
SCADA Data Flow
SCADA Subsystems
SCADA Host Processes

The SCADA Subsystem


 The SCADA subsystem is a set of applications that deal with:

 data acquisition


from RTUs

from other sites

from other programs

 supervisory control
 other miscellaneous functions

historical data recording

tagging

loadshed

generalized calculations

topology processing

The SCADA Subsystem

SCADA Data Flow

Telemetered
Physical
Equipment

Network

scapi users (e.g. psa


apps, dts apps,
customs)

Other
SCADA
dbs

SCADA Apps (e.g.


SCANNER,
CONTROL,
TAGGING, . . .)

Other Sites
& Systems
(e.g.
ISDLINK,
ICCPLINK)

SCADA
dbs

Network

HABITAT SERVICES
PROCMAN
CFGMAN
HDB/MRS
NETIO
ALARM
TIMEDATE

HDR
Outputs
User
Workstation

The SCADA Subsystem

The SCADA Host


 The SCADA Host machine is the repository of acquired data
from various sources:

 telemetry through the front ends to RTUs


 messages sent from SCADA API (scapi) users
 inter-site data (ISD) transfers from other sites
 The data is held in the SCADAMOM database of the SCADA
application clone.
 There are up to 10 SCADA-related processes that own and
write to partitions of this database during real-time operations.

 Some own private partitions which only they read/write.


 Some own public partitions that they write and others read.

The SCADA Subsystem

SCADA Host Processes


(1 of 6)
 SCANNER - the main data processing module in SCADA:

 reads data from:




scapi clients

other sites via ISD

 processes limits and alarms


 processes data quality information
 calculates non-telemetered point values
 writes history files
 outputs ISD to other sites

The SCADA Subsystem

SCADA Host Processes


(2 of 6)
 CONTROL -

 processes supervisory controls from:




operator stations

other scapi API clients (like AGC and Loadshed)

other host sites (via CONTROL-to-CONTROL NETIO link)

 manages control sequence for client through communications to


front-end processors

The SCADA Subsystem

SCADA Host Processes


(3 of 6)
 SCSRV - supports scapi interface by:

 serving as the single point of contact for applications that wish to


read or write SCADA data, or issue controls.

FE

SCADA Host
scapi
client

CONTROL
SCSRV
SCANNER

scapi
client
scapi
client

The SCADA Subsystem

scapi
client

SCADA Host Processes


(4 of 6)
 USERCALC - allows the operator to create new calculations
from existing SCADA data during operations.

 scapi client
 output values may be


directed into SCADAMOM database points


(points must be modeled correctly)

held in a local USERCALC variable

 periodic rate defined for the calculation


 SCADATOP - determines the connectivity and energization of
the electrical network.

 scapi client
 allows alarming for loss of connectivity
 allows conditions to be displayed
8

The SCADA Subsystem

SCADA Host Processes


(5 of 6)
 TAGGING - for marking devices to limit accepted controls
(either locally, or at remote sites.)

 linked directly to CONTROL via NETIO


 messages from TAGGING used by CONTROL to disable and reenable possible controls on devices.

 LOADSHED - sends load shedding controls automatically to


RTUs in emergency situations

 scapi client
 issues messages to CONTROL
 activity based on database modeling and triggers by operator
(automatic triggers possible.)

 also manages restoration after load shed incident (manually only)

The SCADA Subsystem

SCADA Host Processes


(6 of 6)
 HDRCOPY - automatically copies closed historical data files
from SCANNER to an alternate location for redundancy.

 optional
 copies from HABITAT_HDR_RECORD environment location to
HABITAT_HDR_BACKUP

 RECON - allows the operator to examine the state of the


system at a previous time, based on information in
SCANNERs historical data files.

 optional
 can recover snapshot in time
 can playback on scan-by-scan basis
 can show tabular history of selected measurements

10

The SCADA Subsystem

10

Summary
1. SCADA is a major user of ___________ services.
2. Multiple SCADA processes run on the Host CPU where the
_________ ________ repository resides.
3. Many SCADA processes:

a) are started by ___________.


b) are given roles by ____________.
c) connect with other processes using ________.

11

The SCADA Subsystem

11

Proprietary - See Copyright Page

SCADA User Interface


Topics
 Overview and Detailed one-line displays
 Picture Definitions
 SCADA host and other UI

> Displays

Notes:

SCADA Displays
1

Proprietary - See Copyright Page

Station Mapboard Display


HUNTVILL

ECAR
CHENAUX

REDBRIDG

HOLDEN

N
O
R
T
H

THOREAU

CHFALLS
MARTDALE

MITCHELL

CEYLON

NANTCOKE

RICHVIEW

HEARN

W'VILLE

KINCARD
PICTON

PARKHILL

HANOVER
DOUGLAS

STINSON

WALDEN

GOLDEN

LAKEVIEW

COBDEN

B'VILLE

BRIGHTON

M'TOWN

STRATFRD

S
O
U
T
H

EAST

J'VILLE

> Displays

Notes:
Display = MAPBOARD,SCADA

SCADA Displays
2

Proprietary - See Copyright Page

Douglas Substation Schematic


DOUGLAS,40SCADA[ESCA] 1,1
MORE

1314

1516

MW
MVR
MVA

MW
MVR
MVA

400401

GEN
2
401402
MW
MVR
MVA

FDR 402

401403

MW
MVR
MVA

GEN
1

sc056.cvs

> Displays

Notes:
Navigate/Zoom Display/Full

SCADA Displays
3

Proprietary - See Copyright Page

Sample CB Picture
Field A - Identity and condition of circuit breaker
Format: 8 alphanumeric characters
State 1 - WHITE STEADY = NOT SELECTED
State 2 - WHITE BLINKING = SELECTED

Field B - Data quality flag


Format: 1 alphanumeric character

sc024.cvs

AAAAAAAA

Field 1 - Status of circuit breaker


Format: 1 graphic character

Poke-point:
1. Select for control
2. Acknowledge alarm
3. Inhibit/enable alarm
4. Remove from scan/restore to scan
5. Tag/clear tag

State 1 - RED STEADY = CLOSED, NO ALARM


State 2 - GREEN STEADY = OPEN, NO ALARM
State 3 - RED BLINKING = CLOSED, ALARM
State 4 - GREEN BLINKING = OPEN, ALARM

> Displays

Notes:
Display = any substation oneline

SCADA Displays
4

Proprietary - See Copyright Page

SCADA User Interface


 SCADA Host User Interface

 SCADA application displays:




Overview and Substation oneline displays

Tabular displays related to many kinds of summary

 Other SCADA functional displays




HDR / Tagging functions

Maintenance : Log, Calculation, On-line editor

 Other Application displays




Usercalc / Loadshed

 ALARM User Interface


Any Alarm & Event lists and synopsis alarm list

 FEP User Interface


Communication Diagram from FEP or OAG systems
5

> Displays

Notes:

SCADA Displays
5

Proprietary - See Copyright Page

Demonstration & Lab


 SCADA uses three basic types of displays:

 Overview  Mapboard Display


 Schematic Diagrams  Substation oneline
 Tabular Displays  Substation Tabular
 Substation displays analysis

 Displays access : Menus / Summaries / Buttons for


navigation

 Typical pictures : Point / Analog / popup menus


 Detailed pictures : Quality flags / On-line editor
 Other displays

 Communication Diagram from eterra.Control (FEP)


 SCADA utilities : SCADA menus / Related & Analyst
displays

> Displays

Notes:

SCADA Displays
6

Proprietary - See Copyright Page

SCADA Displays
Summary
 SCADA host uses three basic types of displays:

 Overview Displays
 Schematic Diagrams
 Tabular Displays
 Other UI are

 Dedicated applications displays : Alarm , Loadshed


 Other Communication servers : FEP and OAG systems

> Displays

Notes:

SCADA Displays
7

Proprietary - See Copyright Page

Alarms
Topics
 Overview, Definition, Concepts, and Perspective
 Databases
 List Displays
 Synopsis Display
 Major Inputs and Outputs and Software Organization
 SCADA Alarms Defined via Genesys
 Area of Responsibility and Permission Areas

> Alarm

Notes:

Alarms
1

Proprietary - See Copyright Page

Alarm Overview
Application
- Category1
- Category2
- Object definition 1
* exception1
* exception2
- Object definition 2
* Exception1
Alarm
Modelling
Information

Permit

Horn
Archive
(Flat file)

ALARM server processing:


Format event.
Event/Alarm?
Insert in lists?
Insert in Log(s)?
Auto-ack Alarm?
Replicate on standby.
Archive
Sound tone(s)?
Print?
Notify client(s)?
Ack
Notification
(optional)
Event

client

> Alarm

Display
Alarm Lists
Display
Alarm
LOG

- Object (type + handle)


- Time
- Exception
- Category
- Location
- Permission key
- Options
- Formatting data

Notes:
Displays = Alarm app: ALARM and ALARM_SYSTEM_ACTIVITY
SCADA app: TIMEXC (Time Ordered Exception List)

Alarms
2

Proprietary - See Copyright Page

Definitions (1 of 4)

 Event - An event occurs when something notable happens at a


single point in place/time. The only events of relevance here are
those detected by the software. Thus, an event is detected (but
may be declared to have occurred at a previous time) whenever
a particular software criterion is satisfied.
 State Change - Each potentially alarmable event is a state
change of a database object. The state of a database object is
determined by software criteria.
 Abnormal State - When a database object experiences a state
change, it may or may not enter an abnormal state. Its abnormal
state(s) is determined by software criteria.

> Alarm

Notes:

Alarms
3

Proprietary - See Copyright Page

Definitions (2 of 4)
 Exception - A database object becomes an exception when it
experiences a change to an abnormal and/or alarmable state. It
remains an exception if either:

 It is in an abnormal state.
 It has experienced an alarmable state change that is
unacknowledged.

 Exception Display - An application display of exceptions in one or


more categories.
 Alarm - An alarm is an unsolicited indication from an application
to an operator that a new exception(s) has occurred.

> Alarm

Notes:

Alarms
4

Proprietary - See Copyright Page

Definitions (3 of 4)

 Alarm Exception - An exception that requires an alarm.


 Acknowledgment - The action taken by an operator to confirm, via
software, that an alarm has been recognized.
 Permission Area - Each database object that can enter an
alarmable state is assigned to a single permission area.
Permission areas are also assigned to consoles. Alarm
information is conditional on a console basis, using permission
area assignments.

> Alarm

Notes:

Alarms
5

Proprietary - See Copyright Page

Definitions (4 of 4)
 Category - Each exception is assigned to a category. Categories
are used to classify exceptions that have similar attributes, for the
purpose of convenient console presentation and notification
control. Each category is assigned a priority and a severity,
which are used to group alarms within a list display and to order
Category and Location Alarm Line entries.
 Location - All exceptions are assigned to locations, or geographic
area occurrence, typically a substation. Locations are used for
convenient console presentation. When an application does not
specify a location, ALARM uses a default from its database.

> Alarm

Notes:

Alarms
6

Proprietary - See Copyright Page

Alarm Concepts (1 of 3)

 Each database object that can enter an abnormal and/or


alarmable state is assigned:

 Category
 Permission area
 Exception definition
 Optionally to a location (SCADA generally uses substation name)
 The application that owns the database object makes the
assignment.

> Alarm

Notes:

Alarms
7

Proprietary - See Copyright Page

Alarm Concepts (2 of 3)

 Examples of typical SCADA alarm categories:

 230 KV transmission
 Major 13 KV distribution
 Line overload
 Breaker trip
 Low voltage

> Alarm

Notes:
Display = Alarm_Synopsis_List_Default

Alarms
8

Proprietary - See Copyright Page

Alarm Concepts (3 of 3)

 Category synopsis buttons can appear dynamically to represent


unacknowledged alarms. Poking these buttons can bring up an
applications abnormal display or alarm display.
 Location synopsis buttons can appear dynamically with function
and behavior similar to that of category buttons, except that the
displays brought up are usually the corresponding substations
oneline display.
 For SCADA, alarm location is usually a substation name.

> Alarm

Notes:

Alarms
9

Proprietary - See Copyright Page

SCADA as an Alarm User


Abnormal
Power
System
Event

SCADA
Application
Issue

Horn

Indication?
Acknowledgment?

Ack

Exception Display

Printing?

Alarm Utility

Hardcopy
Logger(s)
[Printer(s)]

Acknowledgment?
Acknowledgment?

Logging?

net012.cvs

Alarm Synopsis Lines


10

Alarm List
Displays

> Alarm

System Activity Log(s)


and displays(s)
10

Notes:

Alarms
10

Proprietary - See Copyright Page

Alarm Database Hierarchy


Deck

App

Application that issues alarms

Deflog

Default log for messages

Cat

User process alarm communicates with


Category of exceptions

Objdef

Dbase objects for which alarms are generated

Excdef
Consol

Exception Definition

Ovlog Override log for exception messages

Loc

Location of exceptions

Que

Permission area messages are assigned to

Horn

Horn device to issue audible signals

Tone

11

Audible tone
HABITAT console to hear/silence a horn

> Alarm

11

Notes:
Display = Alarm_Model_Exception_Cat
Then from FG managers command box, do:
find objdef=analog
Also, see Alarm Users Guide,
section Defining Application Exceptions

Alarms
11

Proprietary - See Copyright Page

Three Types of Alarm and Abnormal List Displays (1 of 3)

 Alarm Lists

Maintained by Alarm Utility


Contain alarm events only
Sorted by various combinations of location, priority, unacknowledged
vs. acknowledged, and time

Unacknowledged can be acknowledged; acknowledged can be


deleted

Intended to be kept short

12

> Alarm

12

Notes:
Displays = Alarm
Then to see other sorting sequences and filterings of the alarm list, open the Alarm Displays menu,
select Alarm Lists, then select any or all of the fourteen Alarm list displays.

Alarms
12

Proprietary - See Copyright Page

Three Types of Alarm and Abnormal List Displays (2 of 3)


 System Activity Logs

 Maintained by Alarm utility


 Contain Alarm events, plus operator action events
 Time ordered
 Historical record
 No acknowledgment
 Entries never deleted, except via circular wraparound

13

> Alarm

13

Notes:
Open Alarm Displays menu, select Event Logs, then select any or all of System Activity Log, Log #2,
or Log #3.

Alarms
13

Proprietary - See Copyright Page

Three Types of Alarm and Abnormal List Displays (3 of 3)

 SCADA Exception Lists

 Maintained by SCADA
 Contain unacknowledged alarm events, plus objects that are currently
abnormal

 Unacknowledged can be acknowledged


 Various orders: time, substation, status POINT only, ANALOG only

14

> Alarm

14

Notes:
Open menu, EMP Applications, and select SCADA; then select Substation Tabular Directory. Now open
Related Displays menu, and select Exception Lists, followed by Time Ordered Point/Analog. You can now
navigate, using any of the nineteen exception list displays.

Alarms
14

Proprietary - See Copyright Page

Independence of Alarms and


Abnormals for POINT
 Each POINT is assigned to a PNTTYP (point type record).
 Each PNTTYP record has flags to define abnormal and alarm
status for each state of the POINT.

 ABNORM00, ABNORM01, ABNORM10, ABNORM11


 ALARM00, ALARM01, ALARM10, ALARM11
 Commanded state changes are not alarmed, but may be
abnormal and/or logged (optional).

15

> Alarm

15

Notes:

Alarms
15

Proprietary - See Copyright Page

SCADA Inhibit Flags


 Provided on SUBSTN, DEVICE, POINT, ANALOG, RTU, SITE,
CTRL, and SETPNT records.
 There are two sets of flags:

 INHIBIT DEFINITION - temporary, via operator action in realtime


 INITIAL INHIBIT - permanent, operator can not reenable in realtime
 The restriction of exception reporting is for:

 Logging (alarm issue) - No alarm issued if logging is inhibited


 Unacknowledgment - alarm is issued as pre-acknowledged

16

> Alarm

16

Notes:

Alarms
16

Proprietary - See Copyright Page

Demonstration & Lab


 Generate Alarms

 On Point : NIS / Toggle / Enable again  Change of status


 On Analog : Manual entry crossing a limit  Analog violation
 Review summaries

 Alarm lists / Synopsis lists / System Activity Log


 SCADA exception lists
 Alarms acknowledgment

 On list : individual / by page


 On point : Tabular display or popup menu
17

> Alarm

17

Notes:

Alarms
17

Proprietary - See Copyright Page

Alarms

Summary (1 of 2)
 SCADA is a user of the Alarm application.
 Alarms are issued for events that indicate database objects have
changed states. The state changes may or may not mean
abnormal conditions.
 Events are classified into:

 Categories, which broadly classify the type of alarms


 Exceptions, which specify unacknowledged or abnormal alarms
 Locations, which group alarms according to where they occur

18

> Alarm

18

Notes:

Alarms
18

Proprietary - See Copyright Page

Alarms

Summary (2 of 2)

 Permission areas, which specify the operators areas of


responsibility

 Priorities, for ordering alarm messages by importance


 Severities, for ordering location and category buttons
 The Alarm process maintains a system alarm list for all the
applications and a location alarm list for each location. Alarm
messages on both lists are chronologically ordered.

19

> Alarm

19

Notes:

Alarms
19

Proprietary - See Copyright Page

Data Acquisition and Data Quality


Topics
 Data Acquisition

 RTU Front-End and other sites connection by ISD protocol


 Data Processing
 Data Quality

 Data Quality Flags


 Displaying Data Quality
 HDR - Historical Data Recording
 Topology
1

> Data Acquisition and data quality

Notes:

Data Acquisition and Data Quality


1

Proprietary - See Copyright Page

Data Acquisition

Power System
Devices
Raw
Data

Controls

RTU
(1 or more
RTUs per line)

Bridging

Communications
Front End (FEP)

Modem
(1 per line)

RTU
Data
SCADA Data

Controls

EMS Host
SCADA

SCADAMOM

> Data Acquisition and data quality

Data Acquisition and Data Quality


2

Proprietary - See Copyright Page

RTU Functions
Power System
RTU
Analog-to-digital
converter

Digital inputs

Data to FEP/
Controls from FEP

Control
Logic

Accumulator
counter
Control signals
out
Digital-to-analog
converter

Analog data
(measurements)
Status data
(on/off)
Pulse
accumulations
Control outputs
(trip/close, raise/lower)
MW outputs
(Setpoint outputs)

> Data Acquisition and data quality

Data Acquisition and Data Quality


3

Proprietary - See Copyright Page

SCADA Host Functions


 Primary task is to maintain SCADA databases, using ISD
protocol for exchange with Front-End Processor and other sites
 Performs other functions:

 Manages ISD protocol for exchange with Front-End Processor and


other sites

 Performs limit checks.


 Processes alarms.
 Processes calculations
 Processes HDR recording and SCADA topology
 Secondary tasks

 Interfaces with SCADA utilities by using API


 Front-End Processor down load management about COMM / RTU
models
4

> Data Acquisition and data quality

Data Acquisition and Data Quality


4

Proprietary - See Copyright Page

SCADA Data Processing


 The major function of the data processing module is to place
data from RTUs into the database.
Status Points
Retrieved values
checked for any
status changes.

Analog Values
Retrieved values in
engineering units

Points then checked Engineering value


for a defined
checked against
normal state.
operational limits
and rate of change
limits.

Pulse Accumulators
Last retrieved value is
converted to floating
point and scaled.

Conditionally, difference
with respect to previous
value is computed, with
adjustment if value
negative (counter wraparound)

> Data Acquisition and data quality

Data Acquisition and Data Quality


5

Proprietary - See Copyright Page

Data Quality
 There are three kinds of Data Quality flags:

 Source Flags - Indicate where the data has come from.


 Reliability Flags - Indicate the reliability of the data.
 Composite Flags - Summarize combinations of Source and/or
Reliability Flags.

> Data Acquisition and data quality

Data Acquisition and Data Quality


6

Proprietary - See Copyright Page

Source Flags

 NREMOTE- Value is normally reported by another SCADA site


(i.e Front-End)
 BKUPSITE - If the main site is out of service, value will
automatically be accepted from another SCADA site.
 NCALC - Value is normally calculated from other values in the
database.
 NMANUAL - Value is normally entered manually by the operator.
 NEXTERN - Value is normally supplied by an external source,
such as the State Estimator.

> Data Acquisition and data quality

Data Acquisition and Data Quality


7

Proprietary - See Copyright Page

Reliability Flags (1 of 3)

 UNINIT - Data has never been received for this record (or cold
start).
 OLD - Data not properly retrieved from normal source at last
opportunity.
 BAD - Data came from RTU circuitry determined to be bad.
(Analog-to-Digital converter check values out of limits.)
 OVER - Value may be over or under the capacity of the Analog-toDigital converter (e.g., raw value of -2048 or + 2047 (or 0 or 4095)

> Data Acquisition and data quality

Data Acquisition and Data Quality


8

Proprietary - See Copyright Page

Reliability Flags (2 of 3)

 ABNOMAL - Set by State Estimator if trend of SCADA values


from record do not fit into system state solution

 NIS - Display value is no longer updated by its normal source.


This flag is set only by the operator.

 SEREP - Set by operator to replace value with State Estimated


value. Value must be set as NIS first

 UNREAS - Auxiliary bit to indicate that value was marked OLD


because an analog exceeds reasonability limits or a point returns
an illegal bit combination.

> Data Acquisition and data quality

Data Acquisition and Data Quality


9

Proprietary - See Copyright Page

Reliability Flags (3 of 3)
 REMSUP - Value declared suspect at remote site (OLD, BAD, or
OVER).
 MANREP - Normal value was manually replaced by the operator
(after being set NIS).
 ESTREP - Normal value was replaced by the State Estimator
(after being set NIS).
 REMREPL - Value replaced at remote site (MANREP or
ESTREP).
 GENREP - Value replaced by User Generalized Calculation.

10

> Data Acquisition and data quality

10

Action at
Native
Site

Quality at
Native Site

Quality at
ISD Receiver
Site

Remove
from
Service

NIS

REMSUSP

Manual
Replace

MANREP

(do NOT see


NIS nor OLD)

REMREPL
(do NOT see
MANREP)

Flag, ESTREP, applies only to Analogs.

Data Acquisition and Data Quality


10

Proprietary - See Copyright Page

Composite Flags
 GARBAGE - Meaningless value.

 Set if UNINIT is set.


 SUSPECT - Value probably not reliable.

 Set if OLD, BAD, REMSUSP and/or OVER is set.


 REPLACED - Replaced value.

 Set if MANREP, ESTREP, REMREPL, or GENREP is set.


 GOOD - Reliable, up-to-date value.

 Set if neither GARBAGE, SUSPECT, nor REPLACED is set.

11

> Data Acquisition and data quality

Data Acquisition and Data Quality


11

11

Proprietary - See Copyright Page

HDR: Historical Data Recording

RTU
Status
Analog

Operator
Entry
Other
Site

Count
Limit

SCANNER
Data
Processing

HDR
Files

External
Program
Calculation

12

> Data Acquisition and data quality

Data Acquisition and Data Quality


12

12

Proprietary - See Copyright Page

HDR Reconstruction

Playback
Mode

(Many)
-----------

HDR
Files

RECON

History
Mode
History,RECON[DTS]

CHENAUX,RECON[DTS]

Validate
Chenaux
Gen
G1
MW
1/1/99 00:00:00 32
31
0
0
0
0
0
-

13

> Data Acquisition and data quality

Data Acquisition and Data Quality


13

Build

Time Rq

Hearn
Gen
G1
MW
0
0
0
64
72
86
88

------------

13

Proprietary - See Copyright Page

HDR Recording

 Each HDR file contains a list of all the POINTs, ANALOGs,


LIMITs, and COUNTs being recorded, plus their initial value and
quality.
 Subsequently, each change in value or quality is stored in the file,
along with the time of occurrence.
 Recording is continuous, not based on triggers.
 Recording is compact and files can be archived for off-line
storage.
 Individual POINTs, ANALOGs, COUNTs, and certain LIMITs*
may be selected for recording.

14

> Data Acquisition and data quality

Data Acquisition and Data Quality


14

14

Proprietary - See Copyright Page

HDR Reconstruction
 Allows Historical data to be used to populate a SCADAMOM
database in a RECON application clone. Historical data may
be viewed using the same displays that are used to view realtime data.
 User may reconstruct history to any specific time.
 User may play through the HDR history at any rate, pause
the playback, or single-step through history one scan at a
time.
 User can identify selected measurements by their virtual ID.
RECON then builds a tabular view of the history of those
measurements for any time range

15

> Data Acquisition and data quality

Data Acquisition and Data Quality


15

15

Proprietary - See Copyright Page

SCADA Topology
 Determines energization and connectivity of electrical devices.
 Used to issue alarms, drive mapboards, and drive dynamic
oneline displays.
 Separate from RTNET topology processor to accommodate
SCADA-only sites.

16

> Data Acquisition and data quality

Data Acquisition and Data Quality


16

16

Proprietary - See Copyright Page

Topology Terms
 Connectivity States (apply to both terminals of a
2-terminal device)

 Open - Device terminal is open.


 Connected - Device terminal is connected.
 Grounded - Device terminal is connected to ground.
 Energization States (apply to device)

 Live - Device is in an island where measurements indicate island is


live.

 Dead - Device is in an island where measurements indicate island


is dead.

 Ambiguous - Unknown - Device is in an island where


measurements are not available or consistent.
17

> Data Acquisition and data quality

Data Acquisition and Data Quality


17

17

Proprietary - See Copyright Page

Topology - Buses and Islands


 Node names entered on Device, Point, and Analog records
are used by Topology processor to determine what is
connected to what.
 Buses are formed by grouping nodes that are connected by
closed switching devices. Each valid bus is an island to which
an energization state is assigned, based on measurements in
the island.
 A special node (GRND) indicates electrical ground. All
devices in an island are marked as grounded if any GRND
nodes are present in the island.

18

> Data Acquisition and data quality

Data Acquisition and Data Quality


18

18

Proprietary - See Copyright Page

Topology Example (1 of 2)

230KV
G125

G225

1C

2C

G120

G220

1B

2B

G115

G215

1A

2A

69KV

69KV

Gen 1

19

Bus1

Gen 2

> Data Acquisition and data quality

Data Acquisition and Data Quality


19

19

Proprietary - See Copyright Page

Topology Example (2 of 2)

Devtyp:

Gen
Device:

G1
Point:
Point:
Point
Analog:
Device: G2
Point:
Point:
Point
Analog:
Devtyp: Bus
Device: 230Bus1
Analog:

20

G215
G220
G225
KV

Near:
Near:
Near:
Near:
Node:
Near:
Near:
Near:
Near:
Node:

KV

Node: Bus1

G115
G120
G125
KV

> Data Acquisition and data quality

Data Acquisition and Data Quality


20

1A
1A
1B
1C
1A
2A
2A
2B
2C
2A

Far:
Far:
Far:

1B
1C
Bus1

Far:
Far:
Far:

2B
2C
Bus1

20

Proprietary - See Copyright Page

Demonstration & Lab


 Status / Analog  Quality Flags review
 General controls on SCADA  Command button review

 Not in Service command


 Manual Entry on Status and Analog
 Historical Data recording

 Recording / HDR file management


 Reconstruction : Playback and history modes

21

> Data Acquisition and data quality

Data Acquisition and Data Quality


21

21

Proprietary - See Copyright Page

Data Acquisition and Data Quality


Summary
 The SCADA host interfaces the Frond-End (FEP) as any other
SCADA sites by using the ISD protocol.
 The host maintains the SCADA databases and performs any
necessary checks and calculation on the incoming data.
 There are three kinds of data quality flags: Source, Reliability,
and Composite.
 Additional features include historical data recording and topology
processing.

22

> Data Acquisition and data quality

Data Acquisition and Data Quality


22

22

Proprietary - See Copyright Page

Status Measurements
Topics
 Digital Status Processing
 Display Values
 Momentary Change Flag
 State Definitions
 Status Flags
 Sequence of Events

> Status measurements

Status Measurements
1

Proprietary - See Copyright Page

Status POINT Measurements


FEP side

SCADA host side

STATUS
Data Stream

Raw

Conversion
(if needed)

SRAW

Invert

XRAW

Display
SPREP

SDIS

XPREP

XDIS

sc1513.cvs

Types of Status:
Two-state
Three-state
Four-state

ON/OFF
ON/in-between/OFF
States 1,2,3,4

Data Stream:
Two-state
1 Bit
SDIS
Three & four-states 2 Bits SDIS/XDIS

> Status measurements

Status Measurements
2

Proprietary - See Copyright Page

Digital Status Inputs (Two-State)


 Two-state points use 1 bit to represent whether they are
OPEN/CLOSED, ON/OFF, etc.
SRAW
BIT

STATUS

Open

Closed

(or Closed)
(or Open)

sc214.cvs

 Status meanings for SDIS and XDIS


x=
Dont Care

Meaning

Open

Closed

Values needed by
- RTNET

> Status measurements

Status Measurements
3

Proprietary - See Copyright Page

Digital Status Inputs (Three-State) (1 of 2)

 Three-state points use 2 bits to represent the status of the point.


 A value can have a state between fully opened and fully closed.

SRAW

XRAW

Open

Closed

State

In Between

Not Open/Closed

Open/Not Closed

Open/Closed

Meaningless state = UNREAS

sc215.cvs

> Status measurements

Status Measurements
4

Proprietary - See Copyright Page

Digital Status Inputs (Three-State) (2 of 2)

 Status meanings for SDIS and XDIS

S
0
1
0
1

Meaning

X
0
0
1
1

Open
Closed
In Transit
Illegal State

Values needed by
- RTNET

> Status measurements

Status Measurements
5

Proprietary - See Copyright Page

Persistant Alarming for Status POINTs


 POINT TYPE

 Illegal condition  validity status


 Abnormal position  Exception management
 Alarming transition  Alarm management
 DELAY POINT

 Instead of issuing an alarm as soon as a POINT value


spontaneously goes abnormal, the alarm can optionally be
delayed, and be issued only if the POINT stays abnormal
for a user-specified number of seconds.

> Status measurements

Possible
Indications

Effect When
DELAY = True

Display Value
Immediately updated
and ABNORMAL flag (never delayed)
Issue an Alarm

Delayed

Log event/alarm on
SYSACT display

Conditionally delayed,
based on SCPARM item

Status Measurements
6

Proprietary - See Copyright Page

POINT Flags (1 of 3)
 UNACK - If set, an unacknowledged alarm exists for this point.
 UNACKVAL - If set, an unacknowledged status change exists
on the point.
 UNACKRES - If set, an unacknowledged illegal condition
exists on the point.
 ABNORMAL - If set, the point is not in its normal state.
 INHIBIT - If set, alarm processing is restricted for this value.

> Status measurements

Status Measurements
7

Proprietary - See Copyright Page

POINT Flags (2 of 3)
 TAG1 - TAG14 - These flags are provided to allow multiple userdefined tags.
 NOTAG - If set, none of TAG1 - TAG14 flags is set.
 SELECT - If set, point is reserved by a console while a command
is in progress.
 PENDING - If set, a control on this point has been sent to the
RTU, and the associated telemetry verification is expected.
 DQ1 - DQ5, DA1 - DA5 - User-definable flags.
 CMD - If set, the value is the result of a control command.

> Status measurements

Status Measurements
8

Proprietary - See Copyright Page

POINT Flags (3 of 3)

 BKUPSITE - Point may be received from another site if RTU


scanning it is NIS.
 REMOTE - Another site may control this point.
 FLIP - Point state should be inverted before being used by advanced
applications.
 THREE - Point is represented by S and X bits.
 HDR - Point stored in HDR history files.
 AUTOACK - Point acknowledged when it returns to normal state.

> Status measurements

Status Measurements
9

Proprietary - See Copyright Page

Pending Flag

3) EXECUTE

DEVICE SELECTED FOR TRIP

1) EXECUTE

Control
and
Data Processing

4) Change of State

RTU
Interface

Executed Control
2) PENDING
Bit
Set

5) PENDING
Bit
Reset

SCADAMOM

CONTROL
PENDING

Optional:
If state change does not occur
within a timeout period, there is a
timeout alarm.

sc052.cvs

10

> Status measurements

10

Status Measurements
10

Proprietary - See Copyright Page

Sequence-of-Events
FEP : PCI Bus
C
F
E

C
F
E

T
I
M
E
S
T
D

RTU

Satellite time provided on PCI bus via time standard.

CFE sets RTU clock periodically, based on system time synchronization period

parameter, typically to +/- 10ms of satellite time.

RTU time tags status changes and notifies host when they are available.

CFE retrieves SOE data from RTU, then FEP locally stores iinto SOE files based .csv format.

Data listed by SOEviewer UI which accesses to all related FEP for SOE files reading

Not supported for all RTU protocols.

11

No formal link with the SCADA system, however RTU time is transferred by ISD protocol
> Status measurements

11

Status Measurements
11

Proprietary - See Copyright Page

Status Measurements
Summary
 The Area of Responsibility determines the devices to which a console
can issue commands.
 Status points return one, two, or three bits, allowing the following types
of reports:

 Two State (on/off, open/closed, etc.)


 Three State (open/in-between/closed)
 Four State (open/more than half-open, less than half-open/closed)
 Sequence of events

 Locally managed then stored by FEP server


 Dedicated UI not linked with the SCADA host system

12

> Status measurements

12

Status Measurements
12

Proprietary - See Copyright Page

Analog Measurements

 Analog Limits
 ANALOG and LIMIT Flags
 Limit Processing
 Limit Replacement

> Analog Measurements

Analog Measurements
1

Proprietary - See Copyright Page

SCADA Analog Measurements


 The retrieved values are converted to engineering units, then
transferred to SCADA host and placed in the database.
FEP side

SCADA host side

ANALOG
Data Stream

Normalize to

Raw
RAW
I *4

sc1526.cvs

Conversion
Linear
Non-Linear

Reasonability Check
PREP
R *4

Display
DIS
R*4

2s Complement

> Analog Measurements

Displays = RTU_ANALYST_INFO, on Card Type = XDUCER, and SUBSTN_ANALOG_TABULAR, in


SCADA
and DTSMEAS_PWRFLOW, in DTSPSM application

Analog Measurements
2

Proprietary - See Copyright Page

Analog Reasonability Limits

 Used to check reliability of data.


 Raw value reasonability limits (RAWHIGH_XDUCER,
RAWLOW_XDUCER) : Done by FEP

 Integer values for incoming data that scale to engineering units.


 If the raw value is out of range (0 or 4095, or -2048 or +2047) for the
Analog-to-Digital converter, that value is marked OVER.

 Engineering reasonability limits (HIREAS_ANALOG,


LOREAS_ANALOG) : Done by Host SCADA

 If the converted data value is not within these limits, the data quality
is set to UNREAS and OLD, and the converted value is not
saved.

> Analog Measurements

Analog Measurements
3

Proprietary - See Copyright Page

Analog Operational Limits


 Used to generate exceptions and alarms.
 LIMIT, RATLIM, and ALTLIM records are used to declare
limits:

DEVICE
MEAS
ANALOG
LIMIT

Basic operational limits

sc1527.cvs

ALTLIM
RATLIM

Alternate limits
Rate-of-change limits

> Analog Measurements

Display = SUBSTN_ANALOG_TABULAR, in application SCADA:


from any SCADA display, open Related Displays menu, and
choose Substation Tabular, then Substation Directory, then
desired substations button, and lastly Analogs/Limits radio
button.

Analog Measurements
4

Proprietary - See Copyright Page

ANALOG Flags (1 of 2)
 UNACK - If set, an unacknowledged alarm exists for this point.
 UNACKLIM - If set, a limit violation produced an
unacknowledged exception.
 UNACKRAT - If set, a rate-of-change limit violation produced
an unacknowledged exception.
 UNACKRES - If set, a reasonability limit violation produced an
unacknowledged exception.
 LIM1 - LIM5 - These flags are used to display out-of-limit
status.

> Analog Measurements

From Display = SUBSTATION_ANALOG_TABULAR, select Details button for any analog.

Analog Measurements
5

Proprietary - See Copyright Page

ANALOG Flags (2 of 2)
 NOLIM - If set, no LIM1 - LIM5 flag is set.
 INHIBIT - If set, alarm processing is restricted for this
value.
 SELECT - If set, point is reserved by a console while a
command is being performed.
 PENDING - If set, a setpoint control has been issued on
this point.
 VIOLLIM - If set, an operational limit is violated, i.e., a
LIMIT record.

> Analog Measurements

Analog Measurements
6

Proprietary - See Copyright Page

LIMIT Flags
 VIOL1 - If set, a non-null high or forbidden limit is violated.
 VIOL2 - If set, a non-null low limit is violated.
 FORBIDN
If set, the HIGHVAL_LIMIT, LOWVAL_LIMIT
values specify a forbidden region. An exception is generated
whenever the analog display value lies between HIGHVAL
and LOWVAL.
 IGNORE -

If set, this limit is skipped in the limit processing.

 PERCENT - If set, the deadband for this LIMIT is entered as a


percentage.

> Analog Measurements

Notes:

Analog Measurements
7

Proprietary - See Copyright Page

Limits Processing (1 of 2)
 HIGHVAL_LIMIT and LOWVAL_LIMIT can define upper and
lower bounds of the normal area.

HIGH

OUT HIGH

FORBIDN_LIMIT=0
LOW

OUT LOW

> Analog Measurements

Notes:
Display = SUBSTN_ANALOG_TABULAR,SCADA

Analog Measurements
8

Proprietary - See Copyright Page

Limits Processing (Cont.)


 HIGHVAL_LIMIT and LOWVAL_LIMIT can define upper and
lower bounds of a forbidden area.

HIGH
OUT

FORBIDN_LIMIT=1

LOW

> Analog Measurements

Notes:

Analog Measurements
9

Proprietary - See Copyright Page

Limit Deadbands (Hysteresis)


 A limit deadband is used in the limit comparison to eliminate
extraneous exceptions.
 The deadband is a percentage of the difference between
HIGH and LOW.
 The analog must come back in limits by the value specified in
DEADBAND_LIMIT before it will be set to normal state.

HIGHVAL_LIMIT
} DEADBAND_LIMIT
Alarm
LOWVAL_LIMIT

10

Alarm

> Analog Measurements

10

Notes:
If LOW is null, then deadband is a percentage of HIGH (and vice versa). Deadband may
optionally be defined as a value.

Analog Measurements
10

Proprietary - See Copyright Page

Persistent Alarming for Analogs


 LIMIT TYPE

 Limit bit number / priority  Normal / Emergency


 DELAY ANALOG
Instead of issuing an alarm as soon as an analog value goes
out of a limit, the alarm can optionally be delayed, and be
issued only if the analog stays outside of that limit for a user
specified number of seconds.

11

> Analog Measurements

Notes:

11

ANALOG SCADAMDL

Possible
Indications

Effect When
DELAY = True

Display Value
and LIMx flag

Immediately updated
(never delayed)

Issue an Alarm

Delayed

Log event/alarm on
SYSACT display

Conditionally delayed,
based on SCPARM item

Analog Measurements
11

Proprietary - See Copyright Page

Limit Replacement
 A LIMIT Replacement trigger analog allows the user to specify
an analog whose value is used to determine which ALTSET is
activated. The appropriate ALTSETs are activated as the
analog value changes.
 High and low limits can be replaced individually, and alternate
limits need not be nested, except during the time that they are
the active alternate limit for their level.

12

> Analog Measurements

12

Notes:

Analog Measurements
12

Proprietary - See Copyright Page

Demonstration & Lab

 Analog Limit processing

 Modify analog value across the limits


 Modify Limit value according to the value
 On-line data editor : This isnt a formal SCADA function
(maintenance only)

 Review Analog / Device / Point model


 Disable an analog then modify a setting
 Validate the analog and check the new setting operate

13

> Analog Measurements

13

Notes:

Analog Measurements
13

Proprietary - See Copyright Page

Analog Measurements
Summary
 The Area of Responsibility determines the devices to which a
console can issue commands.
 Analog reasonability limits check the reliability of the analog
values.
 Analog operational limits are used for alarm generation.

 Operational limits include alternate limits and rate-of-change limits.


 Limits can be defined as an allowed area, with out-of-limit values
above and below it; or a forbidden area, with allowed values
above and below it.
 Predefined limit replacement values.

14

> Analog Measurements

14

Notes:

Analog Measurements
14

Proprietary - See Copyright Page

Pulse Accumulators

Topics
 Pulse Accumulator Processing
 Pulse Accumulator Flags

> Pulse Accumulator

Pulse Accumulators
1

Proprietary - See Copyright Page

Pulse Accumulators
 Pulse accumulations usually represent quantities delivered
(e.g. megawatt-hours of electricity, cubic feet of water.)
 COUNT records are complete descriptions of pulse
accumulators.

> Pulse Accumulator

Notes:

Pulse Accumulators
2

Proprietary - See Copyright Page

Types of Pulse Accumulator Hardware

 Note: Accumulators are read infrequently


(generally every 15-60 minutes).
Reset after each Read

Continuous Count

X
0

READ

X1
0

READ

X
3

X + X0
X + X 0 +1

X 0 + X1 + X

READ

READ

sc086.cvs

> Pulse Accumulator

Notes:

Pulse Accumulators
3

Proprietary - See Copyright Page

Pulse Accumulator Flags Example

DIS
METER
READIN
G

INCOMING NOADD=T
READING
RESET=F

DIS

NOADD=F

INCOMING
READING
RESET=T

NOADD=T

NOADD=F

12

112

100

100

100

100

100

100

262

250

150

350

150

150

250

462

450

200

800

200

200

450

762

750

300

1500

300

300

750

> Pulse Accumulator

Notes:

Pulse Accumulators
4

Proprietary - See Copyright Page

Pulse Accumulators

Summary
 COUNT records contain pulse accumulator information.
 Pulse accumulators can be reset periodically, or read as a
continuous count of the flow being monitored.
 Optionally, the previous pulse accumulator reading is subtracted
from the current value and adjusted if the value is negative. The
difference is then converted to floating point and scaled.

> Pulse Accumulator

Notes:

Pulse Accumulators
5

Proprietary - See Copyright Page

Controls

Topics
 Control Processing
 Control Implementation State Table Definition
 Tagging
 Loadshed

> Controls

Notes:

Controls
1

Proprietary - See Copyright Page

Controls to Monitored Systems


 Operator Controls are internally (into RTU) one-step or twosteps. The number of external steps required to issue
controls can be specified on a control by control basis.

 Select-before-operate commands for breakers.


 Direct-operate commands for tap changers.

 Program Control - AGC issues commands that go through the


control module like commands from the operator.
 Generally direct-operate commands.

> Controls

Notes:

Controls
2

Proprietary - See Copyright Page

Multi-Step Controls (1 of 2)
 All operator controls are potentially two steps, or three steps,
externally (driven by the procedure for operator).
 Multi-step controls provide the maximum reasonable amount of
security for the operator.
 Work for both select-before-operate controls, and direct operate
controls.
 Provide step-by-step feedback.
 Aborted by CANCEL selection, by a time-out, or by an invalid step.

> Controls

Notes:
Any substation oneline diagarm

Controls
3

Proprietary - See Copyright Page

Multi-Step Controls (2 of 2)
Operator Actions

System Response

Click on device symbol

Device picture pops up identifying the


device and its current status

Click on Controlsbutton

Control Functions picture pops up,


offering choices of operational actions,
and Device picture reads, SELECTED

Click on action button, e.g. Trip

Device picture reads, SELECTED FOR

or Close

TRIP, for example

Click on Execute button

Control Functions picture popdown, and Device picture soon


shows new status

> Controls

Notes:
Any substation oneline diagarm

Controls
4

Proprietary - See Copyright Page

SCADA to Front-End Communications (1 of 2)


 When the operator has completed the command sequence (e.g.,
the last operator step might be TRIP or EXECUTE),
SCADA checks to see if it is valid to transmit to the RTU.
 Availability & Permission check
 Control Point availability - If control point is out of service, command is rejected.
 Status Point availability - If status point used to monitor the control results, is
SUSPECT, operator is warned that verification of control is not possible; then
command can still be issued.

> Controls

Notes:

Controls
5

Proprietary - See Copyright Page

SCADA to Front-End Communications (2 of 2)


 Tagged
- If point is tagged with a preventive tag, command is rejected.
- If point is tagged with a restrictive tag, the operator is given an
opportunity to override the restriction and issue the control.

 Command interlock - If an optional permissive status point associated with the control
is not in the required state, the command is rejected.

 Control Pending - If another control has been issued, but is not yet verified or timed
out, the command is rejected.

 If the command passes permission checks, it is sent to the front-end


processor.

> Controls

Notes:

Controls
6

Proprietary - See Copyright Page

Front-End to RTU Communications


for Select-Before-Operate
 The front-end sends the first part of the command, SELECT, to
the RTU.
 RTU selects requested control point for operation and responds
to the front-end.
 Improper selection or transmission errors may cause a retransmission of SELECT command by the front-end.
 The front-end sends EXECUTE to RTU.
 RTU operates preselected relay and returns an acknowledgment
to front-end.

> Controls

Notes:

Controls
7

Proprietary - See Copyright Page

Interlocks
 Interlocks allow controls on a point only if the interlocking point
is in a specified state.
 Interlocks act as a dynamic tag for the point.
 Interlock POINT does not need to be telemetered. This allows
testing for conditions specified by a logical calculation.
 Specified by LOCK records, which are children of CTRL
records.

> Controls

Notes:

Controls
8

Proprietary - See Copyright Page

Tagging
ADDTAG

1234

DONE

-----------------------------------------------------

1234

REMTAG

1234
T

-----------------------------------------------------

> Controls

1234

Notes:
Any substation oneline display

Controls
9

Proprietary - See Copyright Page

Tagging Features
 Any number of tag types may be defined and assigned to one of
14 priorities.
 Any number of tags of any type can be placed on any POINT
record
 Tag information is shared between sites.
 Tags can be added, removed, and modified by the operator.
 Tag type definition is flexible.
 Restrict feature allows control action if operator performs an
additional confirmation step.

10

> Controls

10

Notes:

Controls
10

Proprietary - See Copyright Page

Loadshed

 Supports prioritization of loads into categories.


 Can shed load in round-robin order to spread the pain.
 Supports hierarchical multisite operations.
 Provides a summary of loadshed/restoration activities.

11

> Controls

11

Notes:

Controls
11

Proprietary - See Copyright Page

Demonstration & Lab


 Remote Control
 Normal operation
 Timeout on operation

 Tagging
 Place a Tag Types of Tag
 Tag summaries
 Remove a Tag

 Control interlocking by a Tag


 Prevent Control
 Restrict Control

12

> Controls

12

Notes:

Controls
12

Proprietary - See Copyright Page

Controls
Summary
 There are two types of controls to the monitored system:
 Select-before-operate
 Direct-operate

 Interlocks allow control on a point only if the interlocking point is


in a specified state.
 Tagging
 Loadshed

13

> Controls

13

Notes:

Controls
13

Proprietary - See Copyright Page

SCADA and Alarm Features


Course Review
 SCADA Review

 Analog Measurements

 Alarms

 Controls

 Data Acquisition and Data


Control

 Calculations

 Status Measurements

> Review

Notes:

Course Review
1

Proprietary - See Copyright Page

SCADA Overview
 SCADA maintains an accurate and up-to-date model of the
system being monitored.
 SCADA maintains three types of measurements:

Status Measurements

Analog Measurements

Pulse Accumulations

The SCADAMOM database models the system being


monitored, the devices monitoring the system, and the way
each host CPU communicates with each RTU along its
communication path.

> Review

Notes:

Course Review
2

Proprietary - See Copyright Page

Alarms
 SCADA is a user of the Alarm application.
 Alarms are issued for events that indicate database objects have
changed states. The state changes may or may not mean
abnormal conditions.
 Events are classified according to categories, exceptions,
locations, permission areas, priorities, and severities.
 The Alarm process maintains a system alarm list for all the
applications and a location alarm list for each location. Alarm
messages are chronologically ordered on both lists.

> Review

Course Review
3

Proprietary - See Copyright Page

Data Acquisition and Data Quality


 There are three kinds of data quality flags:


Source

Reliability

Composite

 Additional features include historical data recording, topology


processing, and intersite operations.

> Review

Notes:

Course Review
4

Proprietary - See Copyright Page

Status Measurements
 Status points return one, two, or three bits, allowing the
following types of reports:


Two State (on/off, open/closed)

Three State (open/in-between/closed)

Momentary Change (two or more changes since last scan)

 Sequence of events

> Review

Notes:

Course Review
5

Proprietary - See Copyright Page

Analog Measurements
 The Area of Responsibility determines the devices whose alarms
can be viewed, and to which a console can issue commands.
 Analog reasonability limits check the reliability of the analog
values.
 Analog operational limits are used for alarm generation.


Operational limits include alternate limits and rate-of-change limits.

 Limits can be defined as an allowed area (with out-of-limit values


above and below it) or a forbidden area, with allowed values
above and below it.
 Alternative limit values can be predefined.

> Review

Notes:

Course Review
6

Proprietary - See Copyright Page

Controls
 There are two types of controls to the monitored system:


Select-before-operate

Direct-operate

 Interlocks allow control on a point only if the interlocking point is


in a specified state.
 Tagging
 Loadshed

> Review

Notes:

Course Review
7

Proprietary - See Copyright Page

Calculations
 Special calculations allow calculations to be performed on
measurements retrieved by SCADA.
 A calculation can be dependent on the results of another
calculation.
 The database can be configured to set up special control
sequences.
 Generalized calculations

> Review

Notes:

Course Review
8

DBB
AREVAs solution SCADA / EMS
databases
Software Version DBB 3.1 March 2005

> KESH SCADA/EMS October 2005

DBB TOPICS
 What is DBB
 Why we use DBB
 Requirement for modeling activities & how DBB recognized
these needs.
 Data base development steps. (Flow chat)
 4 Major Databases.
 DBB Components.
 General organization of DBB files.
 DBB Configuration.

> KESH SCADA/EMS October 2005

What is DBB

 DBB stands for Data Base Builder.

 Based on Microsoft Excel

 Excel technology is used because:


1) Highly Flexible
2) User friendly
3) Familiar user interface

> KESH SCADA/EMS October 2005

WHY WE USE DBB


Allow bulk data entry within a limited time period
 Use of Microsoft Excel
Take advantage of the similarity of the substation structures
 Definition of "Typical Bays"
Minimize data entry effort
 Create template Excel sheets for all typical bays
Common characteristics do not have to be entered by the
customer
 Typical bays templates already contain the common characteristics

> KESH SCADA/EMS October 2005

WHY WE USE DBB


Propose a way to populate data as close as
possible to the documents used to collect those
data.
 Substation survey documents are organized by bay
Ensure the global consistency of data
 Most data are pre-defined using Excel formulas
 Run-time database VERIFY procedures
Minimize data entry errors.
Validate the Database.

> KESH SCADA/EMS October 2005

WHY WE USE DBB


 Create the data model required by the application in real time
or near real time environment.
 DBB enable creation and maintenance of data in single
environment, although application specific data resides in
multiple HABITAT/HDB database.
 Use excel work books to populate the main database
(scadamom, genmom,netmom,dtsmom)
 DBB use FTP and RSH service to communicate with data
server.
 Data entered in the excel workbooks are exported into ASCII
files using a set of excel macro programs, then ASCII files are
imported in the habitat database using HDB import.

> KESH SCADA/EMS October 2005

Requirment for modeling activities


 Data Population

 Massive amount of data to be entered in short period of time.

 Data availability is often on critical path of the project.

 Correctness of the data

 Survey documents are usually organized per substation


distribution area and show similarity in the connectivity
schemes.

> KESH SCADA/EMS October 2005

DBB - Database development steps


1

Typical bay I/O list

Naming
Conventions

Data Collection

DBB
Customization

Data Entry in
DBB

Data Population

DataBase
Validation

> KESH SCADA/EMS October 2005

DBB - Database development steps


 Identify all the typical bays

 Based on the substation one-line diagrams


 Define a naming convention for all equipment
 Customize DBB

 Based on the list of typical bays




create a template sheet for each typical bay

for each typical bay, define all the measurements

for each measurement, define the common SCADA/EMS characteristics

 Train all DB builders on the use of DBB


 Collect the data
 Enter and Validate the data

> KESH SCADA/EMS October 2005

4 Major Databases
EMP data are organized by domains in 4 major databases

 The SCADAMOM database, containing essentially the


measurement data attached to the SUBSTATIONS and
SUBNETWORKS devices
 The NETMOM database, containing the core electrical
attributes of the NETWORK devices
 The GENMOM database, containing the additional attributes
specific to the GENERATION domain (eg: fuel costs)
 The DTSMOM database, containing the additional attributes
of the Dispatcher Training Simulator (DTS) domain needed for
the dynamic simulation of the Power System (eg: relays
parameters).

10

> KESH SCADA/EMS October 2005

10

DBB - Components
 The main DBB components are :

 DBB on disk of your PC (Windows 2000 and Excel)


 Perl and remote shell to transfer and import on Habitat DBB files
from your PC to the development server

 The HABITAT import/export utility


 The EMP database VERIFY / VALIDATE programs

11

SCADAMDL

for the SCADA database

NETMODEL

for the Network database

GENMODEL

for the Generation database

DTSMODEL

for the DTS database

> KESH SCADA/EMS October 2005

11

DBB - Components

Excel files

VB macro

Import files

PC
Perl and
Remote shell

Data
Entry

Development

HABITAT

server

databases

Import Utility

Import files

VERIFY

12

> KESH SCADA/EMS October 2005

12

DBB - Organization
 DBB directory on your PC contains :

 MACROS folder : VB Macros


 "PROJECT" folder,
each with sub-folders
with the various files for each database


SCADA folder

NETWORK folder

GENERATION folder

DTS folder

 FormHeader files = templates that can serve


to initialize "project" files

 Running the DBB VB macros will create the


files ready for import to HABITAT databases
in ...

13

> KESH SCADA/EMS October 2005

13

DBB Configuration
 Copy and paste DBB folder into respective Directory

 Modify the path in local_dbb_open.bat file

 Create shortcut to Desktop

14

> KESH SCADA/EMS October 2005

14

DATA BASE BUILDER


Summary
 Allows bulk data entry within a limited time period
 Minimize data entry efforts and errors
using typical bays with pre-defined characteristics
 Allows to perform all database population operations from
your PC

15

> KESH SCADA/EMS October 2005

15

DBB - Data Base Builder

DBB
Typical Bays

> KESH SCADA/EMS October 2005

DBB

- TYPICAL BAYS

Topics
 What is a typical BAY
 BAY customization
 Case of a non typical BAY
 Some examples of typical BAY

> KESH SCADA/EMS October 2005

DBB - What is a Typical Bay


Bay ID

P and Q

measurements

Line Isolator

Circuit Breaker

Bus Isolator 1

Bus Isolator 2

Bus Bar #1
Bus Bar #2

> KESH SCADA/EMS October 2005

DBB - What is a Typical Bay


In the SCADA database
 SUBSTN = Sub-station ID

 DEVTYP = BIS


DEVICE = Bus Isolator 1 ID

POINT = Status ID

DEVICE = Bus Isolator 2 ID

POINT = Status ID

 DEVTYP = CB


DEVICE = Circuit Breaker ID

POINT = Status ID

 DEVTYP = LIS


DEVICE = Line Isolator ID

POINT = Status ID

In the NETWORK database


 ST = Sub-station ID

 kV = the Voltage Level for the Line


bay

 CBTYP = LIS


CB = Line Isolator ID

 CBTYP = CB


CB = Circuit Breaker ID

 CBTYP = BIS


CB = Bus Isolator 1 ID

CB = Bus isolator 2 ID

 LINE = Line ID

 LN = the Line Segment (usually 1)

 DEVTYP = LINE


DEVICE = Line ID

ANALOG = MW
ANALOG = MVAR

> KESH SCADA/EMS October 2005

DBB - What is a Typical Bay


 The SCADA and NETWORK , GENERATION models for
each typical bay are represented in Excel sheet
 All the IDs are predefined in the Excel sheet according to the
Naming Conventions document
 The electrical connection (topology) is predefined in the Excel
sheet (Local and Far node IDs)
 If the bay you have to create is identical as this one, you just
have to copy the Excel sheet and fill some data at the top of
the sheet to instantiate it

> KESH SCADA/EMS October 2005

DBB - What is a Typical Bay


Partial view of a bay sheet : Data Base

> KESH SCADA/EMS October 2005

DBB
DBB
- What
- BAYisCustomization
a Typical Bay
Partial view of a bay sheet : Personalization

> KESH SCADA/EMS October 2005

DBB - BAY Customization


 Bay Designation : Name of the typical bay (pre-defined)
 Bay Type Reference : ID of the typical bay (pre-defined)
 Voltage Level (kV) / Mark :
Predefined since typical bays are defined for a given kV level.
Voltage levels are identified according to naming convention.
 Bay name : enter the bay name
 Nodal Bay Mark : enter the number of the bay
 Bay Not In Service : enter Yes if not yet in service
 Connected Bus Bars : enter the Bus Bars to which this bay
connects (or leave blank)

> KESH SCADA/EMS October 2005

DBB - BAY Customization


 Area of Responsibility : Predefined on SUBSTN sheet
 Site : Predefined on SUBSTN sheet
 Bay Device Name : enter the name of the Bay
 If Line, Far Station ID/Company ID : enter the name of the
substation and the company to which this line bay connects
(see predefined list)
 If Line Bay Far Node : enter the bay number in the far
substation to which this line bay connects

> KESH SCADA/EMS October 2005

DBB - BAY Customization


 Bay Nominal Current Value (A) : enter the bays nominal
current (if applicable)
 Measurement used CT's ratio (A/A) : enter the CT
 Measurement used VT's ratio (kV/V) : enter the VT

10

> KESH SCADA/EMS October 2005

10

DBB - If your bay is NOT typical


 If your bay is close to an existing typical bay but it has
something less (i.e. no MVAR measurement)

 let it there (it will be manually enterable)


 suppress it by putting # in front of the associated line in the Excel
sheet (But impossible to used options update bays)

 Or created an option to inhibit this analogue.

11

> KESH SCADA/EMS October 2005

11

DBB - Data Base Builder

DBB
User Interface

> KESH SCADA/EMS October 2005

DBB - User Interface


 Master Menu (DBB_MAIN.XLS file)

> KESH SCADA/EMS October 2005

DBB - User Interface


 Master Menu (DBB_MAIN.XLS file)

 Column Name - Not used by DBB


 Column ID - Used by DBB to build the substation list
 Column Filename - Substation source file name entered by the
data administrator (allow to manage different versions of a
substation configuration).

 Column Multiple - According to the treatment option DBB


process one (option SINGLE) or all the Substation which have
this field set to Y (option MULTIPLE)

 Other columns - Not used by DBB. Can be used by the customer


as comments, history, .

> KESH SCADA/EMS October 2005

DBB - User Interface


 Source Manager master
display

 Specify the development


server

 Specify the treatment


selectivity

 Define, export, load the


database hierarchy

 Define, export, load the


database parameters

 Define, export, load the


database tables

 Specify the subsystem of


interest

 Command execution of the


database verification and
validation tools

> KESH SCADA/EMS October 2005

DBB - User Interface


 Source Manager - Development server parameters

To change the Server parameters


click on Modify button and enter
the new values

To validate new entries, click on


Apply button

> KESH SCADA/EMS October 2005

DBB - User Interface


 Source Manager - Development server parameters

Family Name define


the clone SCADAMDL, DTS,

Server name
Habitat account
Password

The Environment Name allows to


access different DBB environment
on the development server

> KESH SCADA/EMS October 2005

Work Path
Directory where we stock
the import files created by DBB

DBB - User Interface

 Source Manager functions


Open

DBB_main

CTRL+D

Source
Manager
Menu

Export

Load

Verify

> KESH SCADA/EMS October 2005

Substn,
Valtab,
Netparm,...
Excel source files
Create the Import
ASCII files on the
Export directory
Copy the import files
on the Server and
Import on Database
Database verify

SCADA

> KESH SCADA/EMS October 2005

NETWORK

> KESH SCADA/EMS October 2005

GENERATION

10

> KESH SCADA/EMS October 2005

10

DTS

11

> KESH SCADA/EMS October 2005

11

VERIFY

12

> KESH SCADA/EMS October 2005

12

DBB - User Interface


 Source Manager MISC display

 Allow to update SUBSTN file


after an update of the typical
bays.

 Allow to replace value of a


defined field of records.

13

> KESH SCADA/EMS October 2005

13

DBB - User Interface


 Shortcut key command

 CTRL+D
 CTRL+SHIFT+C
 CTRL+SHIFT+P
 CTRL+SHIFT+U
 CTRL+SHIFT+N
 CTRL+SHIFT+G

14

> KESH SCADA/EMS October 2005

Dbb User Interface activation


Dbb Copy sheet
Protect workbook sheets
Unprotect workbook sheets
Insert name define on an excel cell
Go to one DBB sheet

14

DBB - Data Base Builder

DBB
Building SCADAMOM

DBB - Building SCADAMOM

Topics
 Substation definition
 VALTAB
 Create & Copy SCADA SUBTOP
 Import SCADA SUBTOP
 Create and Copy SCADA Validation tables (VALTAB)
 Import SCADA Validation tables

DBB - User Interface


 Source Manager master
display for SCADAMOM

DBB - Building SCADAMOM

 Substation definition

 Substn selection


The Substation list is defined in


the Excel sheet DBB_MAIN
To create a new Substation
record

Create the new substation file


copying the template file
DBB\FDP\FDP_SUBSTN.XLS to
the project directory
DBB\Project\SCADA\SUBTOP\<
file_name>.XLS

Insert a new line in SUBSTN


sheet of DBB_MAIN and fill the
fields

Select the substation


in the list

DBB - Building SCADAMOM


 Substation definition

 Open Substation source file

Click on this button


to open the
substation
configuration file
(This file must be
existing)
5

DBB - Building SCADAMOM

 Substation Source file


 One Excel workbook per substation
 One Excel sheet to define the SUBSTN record (sheet SUBSTN)
 One Excel sheet per bay including SCADA and NETWORK records according

to the corresponding typical bay definition


 for SCADA devices :

DEVICE, MEAS, POINT, CTRL, LOCK, PNTMSG, ANALOG, LIMIT, ALTLIM, RATLIM,
SETPNT, ANAMSG, COUNT, RCONST, PNTREF, ALGREF, CNTREF, CONREF,
CTLREF,SETREF
 for Network topology :

UN, AUX, LD, CP, SVC, DCCNV, ND, NDLIM, CB, XF, PS, XFLIM, LN, LEN, LNLIM,
UNLIM, ZBR, ZBLIM, DCLN

DBB - Building SCADAMOM


 Substation definition
 SCADAMOM - Subtop hierarchy
SUBSTN
DEVTYP
DEVICE
MEAS
POINT
CTRL
Lock
Pntmsg
ANALOG
Limit
Altlim
Ratlim
Setpnt
Anamsg
COUNT
7

DBB - Building SCADAMOM


 Substation definition - View of a Substation sheet

DBB - Building SCADAMOM


 Substation definition - View of a Bay sheet (Fields ID)

DBB - Building SCADAMOM


 Substation definition - View of a Bay sheet
(fields Meas & References)

10

10

DBB - Building SCADAMOM


 Substation definition - View of a Bay sheet (Fields Parameters)

11

11

DBB - Building SCADAMOM


 VALTAB definition
 This file defines mainly the usable names (ID) for different SCADA entities
 TYPNAM list for DEVTYP IDs
 KVNAM list for KVNAM level of DEVICE
 ALGNAM list for ANALOG IDs
 PNTNAM list for POINT IDs and status point alarm messages
 LMTNAM for LIMIT ID and limit alarm messages


 They define the order of DEVTYP and DEVICE objets in SCADAMOM


 The line order in TYPNAM list defines the order of DEVTYP records

(sort by TYPNAM line order)


 The line order in KVNAM list defines the order of DEVICE records

(sort by KVNAM line order and ID_DEVICE)

12

12

DBB - Building SCADAMOM


 VALTAB definition - User Interface

Select the Substation

Select the Valtab button

Select the Validation table

13

13

DBB - Building SCADAMOM


 VALTAB definition - View of KVNAM sheet

14

14

DBB - Building SCADAMOM


 VALTAB definition - View of TYPNAM sheet

15

15

DBB - Building SCADAMOM


 Create and Copy SCADA SUBSTN

Click on this button to run the macro


creating the substn Ascii file
(Sub_<Id_Substn>.imp) in
DBB/Project/Scada/Subtop/Export
directory and send this file to the
development server
16

16

DBB - Building SCADAMOM


 Create and Copy SCADA SUBSTN
Click on this button to run the macro creating
the substn Scr and Raw files
(Sub_<Id_Substn>) in
DBB/Project/Scada/Subtop/Export
directory and send these files to the
development server

17

17

DBB - Building SCADAMOM


Close this
window

 Import SCADA SUBSTN

Click on this button to load the


substn ASCII file
Sub_<Id_Substn>.imp into
the Scadamom Data Base

Check the import


completion status
18

18

SCADA Model - Topics

SCADA Model Basics


SCADAMOM Building procedures
SCADA Model Summary
Mapping Overview

SCADA Model Basics


Modeling Application

Data Modeler

Databases Used By

SCADAMOM
Model of monitored system.
Model of data retrieval system.

SCADA

Loadshed

Calculations records.
Model of communications
network used by RTUs.
System data.

HDR

Alarm

SCADAMOM Database

Measurements

SCADAMOM
Database

Substation

Controls

sc1004.cvs

Console

SCADAMOM Structure (1of 3)


Sub-Station Hierarchy
SCADEK
SUBSTN
DEVTYP
DEVICE
MEAS
POINT
CTRL
LOCK
ANALOG
LIMIT
ALTLIM
RATLIM
SETPNT
COUNT
RCONST
ALGREF
PNTREF
CNTREF
CONREF
CTLREF
SETREF

SCADAMOM Structure (2of 3)


RTU Hierarchy

RTU
PCLRTU
ADRS
PCLADR
CARD
PCLCRD
CONECT
XDUCER
PULSE
RELAY
ANOUT
XDUREF
RTPORT
PATHC

SCADAMOM Structure (3of 3)


Other Hierarchies

TFE
CHANEL
PCLCHN
PATH
PCLPTH
RTUC
FUNC
ARG
CONV
DATA
ALTTYP
ALTSET
ALTCHK
SRTMEZ
ARGREF
DISSUB
DISDTY

SCADA Model - Procedure


Building models (example with SCADAMOM)
Modeling application
1- Create Model of a
SCADA System

2- Validate the model

Data Modeler

5- Transfer model on line

SCADAMOM

Real time application


4- Retrieve for
further
modifications

3- Save a version of
the database

SCADA

SCADAMOM
SAVECASE

Disk File
7

SCADA Model - Initializing


clone
To initialize the clone either:
 Copy online data into clone Copy online data into clone
 Retrieve an existing savecase
 Retrieve NEWCASE to begin a model database from scratch
Data Modeler

SCADA

1
SCADAMOM

SCADAMOM

Savecases
SCADAMOM
TEST

sc1012.cvs
8

3
SCADAMOM
NEWCASE

Validating SCADA Model Data


You may run the validation program (VERIFY) any time while building
or modifying a database.

You must run VERIFY before installing the dataset


into SCADA.

VERIFY establishes linkages both within and between SUBSTN, RTU,


and communications structures.

Error and warning messages from VERIFY appear on the LOG of the
Data Modeler display.

SCADA Model - Log Messages

LOG

SMnnn x
Message Type
sc126.cvs

10

Message Severity:
I
W
E
F

=
=
=
=

Informative
Warning
Error
Fatal

SCADA Model Basics

Questions

What does the SCADAMOM database contain?


What records do you use to define a status
measurement?

Is the Data Modeler an online or an offline application?


What are the 3 ways to initialize a clone?
When should you run validation?

11

DBB - Data Base Builder

DBB
Building Sub Station
database

> KESH SCADA/EMS October 2005

DBB

- TYPICAL BAYS

Topics
 How to make Subtop

 Sub Station Topology from SLD and Typical BAY


 Special Copy from typical sheet to sub station sheet and filling the
required data.

 Updating DBB Main sheet


 Case of a non typical BAY

> KESH SCADA/EMS October 2005

Sp. Copy from typical sheet to sub station sheet


 Create a new excel file in XXX\Project\Scada\Subtop
Directory.
 Create the new substation file copying the template file
DBB\FormHeader\FH_SUBSTN.XLS to the project directory
DBB\Project\SCADA\SUBTOP\<file_name>.XLS

> KESH SCADA/EMS October 2005

Sp. Copy from typical sheet to sub station sheet


 Open Typicalbays.xls file
 With CTRL+Shift+C, copy the SUBSTN and C264_IS00
and fill the respective fields in the SUBSTN sheet.
 With CTRL+Shift+C, copy the particular typical bay to the
new excel file and fill the respective fields marked in yellow
colors.
 Repeat for all bays to model in the sub station.

> KESH SCADA/EMS October 2005

DBB - Updating DBB Main sheet

 Open the dbb_main.xls file from shortcut (batch file/desktop


shortcut) or directly opening from the directory as given below.

> KESH SCADA/EMS October 2005

DBB - Updating DBB Main sheet


 Fill the IDENTIFIER and DB_FILE_NAME of the sub-station

> KESH SCADA/EMS October 2005

DBB - Data Base Builder

DBB
Building RTUTOP &
COMTOP

> KESH SCADA/EMS October 2005

DBB - Data Base Builder


Topics
 Understanding Wiring file
 Creating RTUTOP
 Create & Copy SCADA RTUTOP
 Import SCADA RTUTOP
 Create and Copy SCADA COMTOP
 Import SCADA COMTOP

> KESH SCADA/EMS October 2005

DBB - Organization
 DBB directory on your PC contains Comtop and Rtutop folder:

Contains the COMTOP file

Contains the RTUTOP file ( for CC )


Contains the RTU Configuration file
Contains the RTU S9R files ( for RTU )
Contains the RTU Wiring files

> KESH SCADA/EMS October 2005

Wiring File
 Salient features of Wiring file

 Defines the complete configuration of RTU


 Describes the wiring between RTU and Control Panel
 Single source to create database for RTU and Control Center
 Easy to maintain and update

> KESH SCADA/EMS October 2005

View of Wiring File


 RTU Configurator sheet View

This sheet describes the total number of racks available in the RTU and the
slot position of each type of card on each RTU rack

> KESH SCADA/EMS October 2005

View of Wiring File


 Data List Table sheet View

> KESH SCADA/EMS October 2005

View of Wiring File


 DIU card View

The Mapping of Data between RTU and SUBTOP is done based on


three set of keys.

 KV
 Bay No
 Data ID As seen from the Data List Table (previous slide)
7

> KESH SCADA/EMS October 2005

View of Wiring File


 DOU card View

> KESH SCADA/EMS October 2005

View of Wiring File


 AIU card View

> KESH SCADA/EMS October 2005

SUBSTATION SUBTREE HEIRARCHY

SUBSTN
DEVTYP
DEVICE
MEAS
POINT
CTRL
LOCK
ANALOG
LIMIT
SETPNT
COUNT

10

> KESH SCADA/EMS October 2005

10

RTU Subtree Hierarchy


RTU
PCLRTU *
ADRS
PCLADR *
CARD
PCLCRD *
CONECT
XDUCER
PULSE
RELAY
ANOUT
XDUREF
CONECR
RTPORT
PATHC

Description of RTU
RTU type-specific option(s)
Grouping associated by type and rate
ADRS-specific modeling option(s)
Set of points wired to one card
CARD-specific modeling option(s)
Raw Status information
Raw Analog measurement
Raw Pulse Accumulator measurement
Output record used for transmitting controls
Analog Output
Reference to XDUCER
Reference to CONECT
Each port, if RTU is multi-ported
Connection of this port to a PATH (comm line)

* PCL* records - RTU protocol-specific modeling

11

> KESH SCADA/EMS October 2005

11

RTU SUBTREE HEIRARCHY

RTU
ADRS
CARD
CONECT
XDUCER
PULSE
RELAY
ANOUT

12

> KESH SCADA/EMS October 2005

12

RTU SUBTREE DESCRIPTION

 RTU: description of RTU


 ADRS: grouping associated by type and rate
 CARD: set of points wired to one card
 CONNECT: status information
 XDUCER: analog measurement
 PULSE: pulse accumulator measurement
 RELAY: output records used for transmitting controls
 ANOUT: analog output

13

> KESH SCADA/EMS October 2005

13

CORRESPONDENCE BETWEEN RTU AND


SUBSTN DATABASE

Models Dispatching System


SUBSTN

Models Data Retrieval System


RTU

DEVTYP

ADRS

DEVICE

CARD

MEAS

14

POINT
CTRL
ANALOG
LIMIT
SETPNT

CONECT
RELAY
XDUCER

COUNT

PULSE

> KESH SCADA/EMS October 2005

ANOUT

14

DBB - User Interface


 Source Manager master display for SCADAMOM

15

> KESH SCADA/EMS October 2005

15

DBB - Building Rtutop


 RTUTOP definition

 RTU selection


The RTU list is defined in the Excel sheet


DBB_MAIN
To create a new RTU record

16

Select the RTU in the


list

Insert a new line in RTU List sheet of


DBB_MAIN and fill the fields

> KESH SCADA/EMS October 2005

16

DBB - Building Rtutop


 RTUTOP definition

 To create a new RTUTOP

Select Rtutop

Click on this button

17

> KESH SCADA/EMS October 2005

17

DBB - Building Rtutop


 RTUTOP definition

Click to create the


configuration file

18

> KESH SCADA/EMS October 2005

Click to open the


Wiring file

18

DBB - Building Rtutop


 RTUTOP definition

Click to open the


Mapping Log file
and check for
errors before
proceeding further

Click to open the


Configuration file

19

> KESH SCADA/EMS October 2005

19

DBB - Building Rtutop


 RTUTOP definition

 Mapping Log file :


If errors are
observed, correct
the same in either
Wiring file or
Subtop file and
repeat the above
procedure till there
is an error free log
as shown in the
figure.

20

> KESH SCADA/EMS October 2005

20

DBB - Building Rtutop


 RTUTOP definition

Click to
create the
S9R file

Click to open the


Error Log file and
check for errors
during S9R creation

Click to open the


S9R file

21

> KESH SCADA/EMS October 2005

21

DBB - Building Rtutop


 RTUTOP definition

Click to create
the RTUTOP file

22

> KESH SCADA/EMS October 2005

Click to open the


RTUTOP file

22

DBB - Building Rtutop


 RTUTOP definition : RTU Sheet

23

> KESH SCADA/EMS October 2005

23

DBB - Building Rtutop


 RTUTOP definition : Double Status Point sheet

24

> KESH SCADA/EMS October 2005

24

DBB - Building Rtutop


 RTUTOP definition : Single Status Points sheet

25

> KESH SCADA/EMS October 2005

25

DBB - Building Rtutop


 RTUTOP definition : Analog sheet

26

> KESH SCADA/EMS October 2005

26

DBB - Building Rtutop


 Create RTUTOP import file

Click on this button to run the


macro creating the RTUTOP
ASCII file
(Rtu_<Id_Substn>.imp) in
DBB/Project/Scada/RTUTOP/
Export directory

27

> KESH SCADA/EMS October 2005

27

DBB - Building Rtutop


 Copy and Import RTUTOP
Close this
window

Click on this button to load the


RTUTOP ASCII file
Rtu_<Id_Substn>.imp into
the Scadamom Data Base

Check the import


completion status
28

> KESH SCADA/EMS October 2005

28

DBB - Building Comtop


 COMTOP definition
Select the Comtop

Click to open the


Comtop file

29

> KESH SCADA/EMS October 2005

29

DBB - Building Comtop


 COMTOP definition

 To add a new RTU, Copy and insert three rows ( Path , PCLPTH &
RTUC )
 Enter the Com port address in the Path ID & Address columns
 Enter the Baud rate in the Baud column
 Station / Rtu name under the RTUC ID column
30

> KESH SCADA/EMS October 2005

30

DBB - Building Comtop


 COMTOP definition

31

> KESH SCADA/EMS October 2005

31

Communication Hierarchy
 SCADA lets you model the way each host device in the system
communicates with each RTU along its communication path.
TFE

Describes each CPU node(s) in which TFEMAIN runs


PCLCHN*
CHANEL

Describes each CFE device(s) assigned to each TFE

PCLPTH*
PATH
RTUC

Describes each communication path to one or more RTUs


Describes the communication aspects of each RTU

RTU Index Into the


SCADAMOM RTU Subtree

* PCL records - configuration - specific modeling option(s)

32

> KESH SCADA/EMS October 2005

32

DBB - Building Comtop


 Create COMTOP import file

Click on this button to run


the macro creating the
comtop ASCII file
(com_tfe.imp) in
DBB/Project/Scada/Comtop/
Export directory

33

> KESH SCADA/EMS October 2005

33

DBB - Building Comtop


 Copy and Import Comtop
Close this
window

Click on this button to load the


Comtop ASCII file com_tfe.imp
into the Scadamom Data Base

Check the import


completion status
34

> KESH SCADA/EMS October 2005

34

Introduction
Contents
 Network Model
 Generation Model
 Network application

 Generation Application

 DTS

Network Model
 Overview
 NETWORK Database Structure
 Defining NETMOM Database
 Modeling Units
 Modeling Transformers

 Modeling Lines
 Modeling Switching Devices
 Defining Load Areas
 Modeling Shunt Capacitors
2

Generation Model
 Overview

 Describe operating areas

 Describe plant controllers and their units

 Describe tie-lines and tie corridors

 Describe allowable transactions between operating areas

Network Application
 Overview of Network subsystem

 Introduction to the NETWORK functions


 NETWORK subsystem in EMP
 Real-time Network : RTNET

 State Estimation
 Powerflow
 Optimal power flow
 Contingency Analysis
 Security enhancement

Generation Application
 Overview of GENERATION subsystem

 Introduction to the generation functions


 Generation subsystem in EMP
 Real-time generation : RTGEN

 RTGEN Overview - basic displays


 AGC operating status and modes
 PLC operating status and modes
 Generation scheduling
 Interchange functions
 Reserve monitoring
 Load Forecasting

Dispatcher Training Simulator (DTS)


 Describe the components, functions, and capabilities of the DTS
system.

 Demonstrate procedures to load and initialize the DTS.

 Controlling the DTS

 Build, modify, save, and retrieve event scenarios.

 Monitoring the training

DBB - Data Base Builder

DBB
Building NETMOM

DBB - Building NETMOM


Topics
 Substation Definition (NETMOM)
 Create and Copy NETWORK TOPOLOGY
 Import NETWORK TOPOLOGY
 NETWORK Parameters Definition
 NETWORK Tables Definition
 Create and Copy NETWORK Parameters
 Import NETWORK Parameters
 Create and Copy NETWORK Tables Topology
 Import NETWORK NETWORK Tables Topology

DBB - Building NETMOM


 Substation definition
 NETMOM - Topology part
CO
DV

ST
KV
UN

AUX

LD

CP

DCCNV

SVC

ND
NDLIM

CBTYP
CB
XFMR
XF
PS

XFLIM

LEN

LNLIM

LINE
LN
3

DBB - Building NETMOM


 Create and Copy NETWORK SUBSTN Topology
Select a substation

Select the NETWORK button


4

DBB - Building NETMOM


 Create and Copy NETWORK SUBSTN Topology
Select a substation

Select the NETWORK button


5

DBB - Building NETMOM


 Import SUBSTN Topology

Close this
window

Click on this button to load the


substn ASCII file
Top_<Id_Substn>.imp into
the Netmom Data Base

Check the import


completion status
6

DBB - Building NETMOM


 NETWORK equipment parameters
 The file contains the characteristics of network equipment :
 UNITS
 Unit Auxiliaries
 Loads
 Shunts
 Transformers
 Lines
 AC/DC converters
 DC lines

 The object records are automatically created from the Substation Topology

sheet

DBB - Building NETMOM


 NETWORK Parameters Mechanism

SUBSTN Source File


(Excel)

Subtop Import

Nettop Import

Nettop Import

file

file

file

Import in
create
mode

Import in
update
mode

SCADAMOM
8

NETPARM File (Excel)

NETMOM
8

DBB - Building NETMOM


 NETWORK Parameters File (Line)

These fields are initialized from the Substn Source


file
Running Status:

E
N
#

Device Already existing


New Device
Not found, Device Inhibited
9

DBB - Building NETMOM


 NETWORK Parameters

Click on Select button

Select Parameter

Open the Parameter file

Import the selected Parameter


into NETMOM Database

Create the import file


& transfer it to the server
10

10

DBB - Building NETMOM


 Network Parameters - View of UNITS sheet

11

11

DBB - Building NETMOM


 Network Parameters - View of LINES sheet

12

12

DBB - Building NETMOM


 Network Table Management

 The file defines mainly the typical characteristics for different


NETWORK objects


Tap types

Line types

Voltage levels

load types

 it defines also the curves of electric characteristics of network devices




Unit tables

Voltage limit table


Capability curve

Tap tables

13

Auxiliary load table

Phase shifter
Voltage variations
X variations

13

DBB - Building NETMOM


 Source Manager - NETWORK TABLE
Click on select button

Select table

Open Nettab.xls file


Create the import file
from the selected table
and transfer it to the
server

14

Import the selected


table into Netmom
Data Base

14

DBB - Building NETMOM


 Network Table - View of TAP TYPES sheet

15

15

DBB - Building NETMOM


 Network Table - View of LINE TYPES sheet

16

16

DBB - Building NETMOM


 Network Table - View of TABLE XFTAP sheet

17

17

DBB - Data Base Builder

DBB
Building GENMOM

DBB - Building GENMOM

Topics
 Generation Topology Definition
 Create, Copy GENERATION TOPOLOGY
 GENERATION parameters and tables mechanism
 GENERATION Parameters Definition
 Create, Copy GENERATION Parameters
 GENERATION Tables Definition
 Create, Copy and Import GENERATION Tables

DBB - Building GENMOM


 Generation topology - Database hierarchy
GENDEK
OPA

Operating Area
PL

Plant

PLC

Plant Controller
UNIT

Unit

FUEL

Fuel List

FZONE

Forbidden zones List

HRATE

Heat rate Curves

HRATEP

TRA

Heat rate points

Transacting Area
TRTYP

Transaction type

UTIL

Utility

TIE

Tie Corridor

TYLN
FUELTY

Tie Lines
Fuel Type List

DBB - Building GENMOM


 Generation Topology - IDs

DBB - Building GENMOM


 Generation Topology - Mapping SCADA measurements

DBB - Building GENMOM

 Generation Topology - Unit

DBB - Building GENMOM


 Generation Topology - Jointly Owned Unit

DBB - Building GENMOM


 Generation topology -

Model for the PLC hierarchy in DTSMOM

DBB - Building GENMOM

 Create and Copy GENERATION Topology

Select the GENERATION


Tab
9

Select the GENTOP


button

View of the import file


9

DBB - Building GENMOM

 Create and Copy GENERATION Topology

Select the GENERATION


Tab
10

Select the GENTOP


button

View of the import file

10

DBB - Building GENMOM


 GENERATION Parameters & Tables mechanism

GENTOP Source File


(Excel)

Create & Copy

GENPARM File (Excel)


Create &
Copy

Gentop Import file

Import in
create
mode

Create &
Copy

GENTAB File (Excel)


Create &
Copy

Genparm Import file


Import in
update
mode

Gentab Import file


Import in
update
mode

GENMOM
11

11

DBB - Building GENMOM

 GENERATION parameters

 The file contains the characteristics of the generation entities :


 Operating Areas
 Plant Controllers
 Units
 Tie Corridors
 Tie Lines

 The object records are automatically created from the Generation

Topology

12

12

DBB - Building GENMOM


 Generation parameters file (Tie-Lines)

These fields are initialized from the Gentop


Source file
These fields are entered
manually

Running Status :

13

E
N
#

Device already existing


New device
Not found, Device inhibited

13

DBB - Building GENMOM

 GENERATION parameters

Click on Select button


to deal with parameters

Select entity
for which parameters
have to be modified

Open
the desired parameter file

Create the import file


& transfer it to the server

14

Import
the selected parameter file
into GENMOM

14

DBB - Building GENMOM

 Generation Table management

 The file defines the main characteristics for the various generation

entities
 Operating area (analog measurements)
 Forbidden zones
 List of fuels for each unit
 List of fuel types
 Heat rate curves for each unit
 List of generation types

15

15

DBB - Building GENMOM


 Source Manager - GENERATION tables
Click on Select button

Open the selected


table
(specific sheet in
GENTAB.XLS

Select table

16

Create the import file


from the selected table
and transfer it to the
development server

Import the selected


table into
GENMOM
16

DBB - Building GENMOM

 Generation Tables - View of Fuel list sheet

17

17

DBB - Building GENMOM

 Generation Tables - View of Fuel Types

18

sheet

18

DBB - Data Base Builder

DBB
Building

DTSMOM

DBB - Building DTSMOM

Topics
 DTS database topology / hierarchy
 Create & Copy DTSMOM topology
 DTS parameters and tables mechanism
 DTSMOM parameters
 Create & Copy DTSMOM parameters
 DTSMOM tables
 Create & Copy DTSMOM tables

DBB - Building DTSMOM

 DTS topology - Prime Mover data


DTSDECK
ST

Station
UN

Unit

PLC

Plant Controller
GAST

Gas turbine

HY

Hydro Plant

GST

Generic Steam Plant

DST

Detailed Steam Plant

BOIL

Boiler

TURB

Turbine

DBB - Building DTSMOM


 DTS topology - Prime Movers

This button allows to initialize the


DTS topology (only for Prime Movers)
from the generation topology

DBB - Building DTSMOM


 DTS topology - Station / Unit part
Select the ST
topology

Open the DTSTOP


source file to display
ST sheet

View of the ST Sheet

DBB - Building DTSMOM


 DTS topology - Plant Controller part
Select the PLC
topology

Open the DTSTOP


source file to display
PLC sheet

View of the PLC Sheet

DBB - Building DTSMOM

 DTS topology - Relays


DTSDECK
SITE

Station where relay is located

VRY

Voltage relay

VCB
FRY

Circuit Breaker
Frequency relay

FCB
OCRY

Over Current Relay

OCCB

Circuit Breaker
Circuit Breaker

DBB - Building DTSMOM


 DTS topology - Relays
Select the RELAYS
topology

Open the DTSTOP


source file to display
RELAYS sheet

The RELAYS topology


is provided empty

DBB - Building DTSMOM


 Create & Copy the DTS topology

( PLC part )
Select the ST, PLC
or RELAYS topology.
The "Multiple" option can
be used to build up to
three import files.

Activate
the Create & Copy
function

View of the PLC import


file

DBB - Building DTSMOM


 DTS

Parameters & Tables mechanism

DTSTOP Source File


(Excel)

Create & Copy

DTSPARM File (Excel)


Create &
Copy

Create &
Copy

Dtstop Import file


Import in
create
mode

Add
default values

Dtsparm Import file


Import in
update
mode

DTSTAB File (Excel)


Create &
Copy

Add
default values

Dtstab Import file


Import in
update
mode

DTSMOM

10

10

DBB - Building DTSMOM

 DTS Parameters file


 The file contains the characteristics of :
 Voltage relays

& associated Circuit Breakers

 Frequency relays & associated Circuit Breakers




Over-current relays

& associated Circuit Breakers

 The relay and CB records are automatically created in the

corresponding parameters sheets from the DTS topology


 Some of the relay parameters can be modified on-line via the RFG

displays of the DTSPSM application

11

11

DBB - Building DTSMOM


 DTS parameters file (Voltage Circuit Breaker)

Fields initialized from Dtstop Source file


Running Status:

12

E
N
#

Fields entered manually

Device Already existing


New Device
Not found, Device Inhibited
12

DBB - Building DTSMOM


 Create & Copy the DTS parameters

Click on Select
button

Select Parameter

Open the Parameter


file

Create the import file


& transfer it to the server

13

Import the selected


Parameter sheet into
DTSMOM

13

DBB - Building DTSMOM

 DTS Tables management

 The DTSTAB.xls file defines the following characteristics of relays :


 Synchro-check types
 Generic under-frequency relays
 Reclosure schedules

14

14

DBB - Building DTSMOM


 DTS TABLES - View of GENUFR sheet

15

15

DBB - Building DTSMOM


 Source Manager - DTS Tables
Click on select button

Open the selected


table
( specific sheet in
DTSTAB.XLS )

Select table

16

Create the import file from


the selected table and
transfer it to the
development server

Import the selected


table into DTSMOM

16

EMS Datamodel
Database and Display Course for SCADA/EMS Engineers

NETMODEL

NETMOM
DECKCO

Database structure
Company

DV

Division
Substation
Voltage level

ST
KV

Switching device type

CBTYP
CB

Switching device

XFMR
XF
PS
LINE
LN
ZBR
DCLN
LDTY
LDAREA
SKEDTY
AREA
EQUIV

(component group)

Unit (generator)
Station auxiliary load
Demand load
Shunt (capacitor or reactor)
DC converter
Node

UN
AUX
LD
CP
DCCNV
ND

(partial)

Transformer

(physical device)

Transformer

(winding pair)

Phase-shifting tap
Transmission line
Two terminal line segment
Zero impedance branch
DC line
Load type
Load-area
Forecast schedules (by type)
Operating area
Equivalent impedances
5

AC NETWORK components
Generators

Stepups

Load

Busbar (node / bus)

Line equivalent PI
R+jX

( through
stepdowns )

( inductive )

BCH
2

Shunt
reactance

BCH
2

( capacitive )

Shunt
reactance
( inductive )

( reactor )

MW sign conventions :
Generators : positive to bus
Branches and loads : positive from bus
6

( capacitor )
Line
compensation

MVAr sign conventions :


Generators and shunts : positive to bus
Branches and loads : positive from bus
6

Modeling generating units


 Insert UN records
 Enter unit parameters :


rated MVA

regulation schedule name

base MW

PG + j QG

min, max MW

capability curve table name

participation factor (3 sets)

ramp rate

corresponding GENMOM unit

 DTS fields

time delays (to switch V / MVAr mode)

inertia

damping

 Define unit regulation schedules and enter schedule values

Unit Tables
 Three quantities can be expressed as functions of a unit MW
output :
 Associated station service load ( Auxiliary Load)
 Voltage limits of its station service load reflected to the generator
terminal
 Units MVAR capability

 Each Table consists of a set of points that define a piece-wise


linear function
TABTY
TAB

Defines individual tables within a table type


TABPT

Specifies X coordinates

TABVAL

Specifies Y coordinates

Line parameters
PI model for a line segment
FROM Bus k

TO Bus m

Rkm + j Xkm
0.5 BCHkm

Resistance
Reactance
Line Charging

R%
X%
BCH %

0.5 BCHkm

(on a 100 MVA / nominal voltage base)


(on a 100 MVA / nominal voltage base)
(on a 100 MVA / nominal voltage base)

NETWORK components : series compensators

Bus B

Bus A

Line A-B

Series compensator
(capacitor or reactor)
Modeled as line segments with no resistance and no shunt susceptance
Can be modeled separately ( as a line in substation A )
or
combined with the line

10

10

Modeling transformers
 Insert XFMR, XF

records

 Define transformer tap types :




tap type name

min, max, nominal tap position

per unit step size

max rate of change

time delay before tap can move

FROM
LTC side
I side

TO
FIXED side
Z side

 Define transformer regulation schedules


 Enter transformer parameters :


nameplate transformation

tap type for each side

normal tap position

voltage sensitivity

master / follower

11

for each side

and current balancing flag

regulation schedules

11

Defining transformer Tap Types


 For a voltage transformer, the tap
model refers to voltage magnitude
 Tap type :

Example :

max tap

Step size = + 0.005


MaxTap = +16 ===> V1/V2 = 1.08
nominal tap
(causes no
change in voltage)

Nominal = 0

===> V1/V2 = 1.00

MinTap = -16

===> V1/V2 = 0.92

per unit step size


min tap

Per unit step size for a transformer =


per unit increase in voltage transformation
k = ( V1 / V2 )
that occurs with each increase of the tap position.

Tables can be created to describe


non linear step model :
 ratio table
 impedance table

Step size is positive if k (MaxTap) > k (MinTap)


negative otherwise
12

12

GENMODEL

13

13

GENERATION data base : GENMOM


Hierarchy defines the
existence of generation
system components :
Operating areas ( OPA )

GENMOM
GENDECK
OPA
PL
PLC

Plant controllers ( PLC )


- Generating units ( UNIT )

UNIT
UTIL

Utilities ( UTIL )

TIE

- Tie corridors ( TIE )

Tie lines ( TYLN


)
Transacting areas ( TRA )

Fuel types
14

Generation types

TYLN
TRA

FUELTY
GTYPE

14

Defining Generating UNITS


GENMOM
GENDECK

 Unit generation cost


parameters and fuel data

OPA
PL
PLC

 Unit operating constraints

UNIT

 Various other unit parameters


UTIL

 Unit startup cost parameters


and constraints

TIE
TYLN
TRA

FUELTY
GTYPE
15

15

Defining PLCs

( Plant Controllers )

GENMOM
GENDECK

 PLC regulation priority


 PLC control module
overview

OPA
PL
PLC

 PLC status
 PLC mode
 Various other PLC
parameters

UNIT
UTIL
TIE
TYLN
TRA

FUELTY
GTYPE
16

16

DTSMODEL

17

17

DTSMOM
Combined cycle plant
CCGST

DTSMOM
structure
overview

CCGT
CCGT

Station
Unit
CB
Plant controller
Prime-mover

Fuel/air auxiliary tables for voltage/frequency deviations


Feedwater auxiliary tables for voltage/frequency deviations

Substation (site) where relay is located


Relay
Switching devices controlled by the relay
Reclosure schedules
Reclosure time points
Synchro-check relays
Generic under-frequency relay (non hierarchical )
18

18

DTSMOM validation by DTSMODEL


 DTSMOM - GENMOM validation
 Verifies that PLC records in DTSMOM
match PLC records in GENMOM

 DTSMOM - NETMOM validation


Verifies that :
 CB and nodes referred to in DTSMOM
exist in NETMOM
 UNIT records in DTSMOM match UNIT
records in NETMOM

 Prime-mover validation
Verifies :
 user-entered parameters
 consistency of prime-movers and unit
linkages
 Relay validation

19

 Verifies that user-entered relay data


are complete
and within established bounds

 Validation can be run


at any stage of the
DTSMOM
development
 See the DTSMODEL
LOG display for error
messages
 Message severity
 I : Informative
 W : Warning
 E: Error
 F

: Fatal
19

DTS database building

DTSMOM

Defining Prime Movers


20

20

DTS : Realistic simulation of prime movers


 Accurate dynamic model of prime movers
 Gas turbines
 Hydro turbines
 Generic steam turbine model

( throttle pressure is constant)

 Detailed steam turbine model

( throttle pressure varies )

 Linkages for combined cycle plants

 Differential equations are integrated every 1 second


 Yield the mechanical power on the alternator shaft
 Remark :
 Equations and parameters are all in perunit of the generator's
MVA rating

21

21

DTSMOM : Defining Prime Movers

DTSDECK
ST

Station
owning PLC
Unit ( has a pointer to : turbine type
turbine ID

UN
PLC

Plant controller
GAST

22

Gas turbine

HY

Hydro turbine

GST

Generic steam turbine

DST

Detailed steam turbine


BOIL

Boiler

TURB

Turbine

One prime
mover
record to
be inserted
for each
unit under
the PLC

FAX, FAY

Fuel/air auxiliary deration tables for voltage/frequency deviations

FWX, FWY

Feedwater auxiliary deration tables for voltage/frequency deviations


22

23

23

Generic steam turbine : steam control model

24

24

Generic steam turbine : turbine model

25

25

DTS database building

DTSMOM

Defining Relays
26

26

DTSMOM : Defining Relays


DTSDECK
SITE

Substation where relay is located


VRY

Voltage relay
VCB

FRY

Frequency relay
FCB

OCRY

Switching devices controlled by the FRY

Overcurrent relay
OCCB

RECSK
RECPT

27

Switching devices controlled by the VRY

Switching devices controlled by the OCRY


Reclosure schedules
Reclosure time points

GUFRY

Generic under-frequency relay

SYNCRY

Synchro-check device
27

DTS : Relay characteristics


 Frequency relays

and

voltage relays

 Sensed node
 Tripping thresholds ( high and low )
 Min. violation time for relay to trip
 Action on controlled circuit breakers for OVER or UNDER
 Lockout of relay for OVER or UNDER
lockout time = time before automatic reset ;
can be infinite ( = -1)

28

28

DTS Relays : Frequency Relay

29

29

DTS : OCRY relay characteristics


 Over-current relays
 directional or not
 disk winding speed is function of over-current
magnitude
 constant unwinding speed
 lockout time
 can have a reclosure schedule
(applies to breakers with AUTO flag on)

30

30

OCRY : Inverse Time Curve


T = Time until relay trips
[Seconds]
160
Inverse Time Curve for over-current relays
K
T = ----------------------( i - AMPPICK )2

60
Instantaneous
trip setting

1
Minimum
pickup current
31

3
2.25

i = Current
[perunit A]
31

Modeling synchrocheck relays

 Define the characteristics of the synchro-check relay


types
Freq. diff. across breaker

Angle diff. across breaker

Time delay

Time delay

Delta V max

32

 Specify for each synchrocheck protected CB which type


applies

32

Thank you

33

33

Overview of Building FG Displays

Topics
 What is e-terrabrowser?
 e-terrabrowser subsystem consists of:

Client
Data server
Display server
Display builder

How e-terrabrowser Subsystem


Fits into e-terrahabitat
e-terrahabitat

User Interface

Databases

Programming
Environment

Display
Builder

e-terrabrowser

Data Server

Overview of Building FG Displays

Display
Server

Client

e-terrabrowser Configuration
 e-terrabrowser User interface
subsystem consists of three
components:

 Client
 Display server
 Data server

Overview of Building FG Displays

e-terrabrowser Display Server


 Display binaries (*.fgdisplay) are stored on a display server.
Display servers can be:

 Web Servers


Internet Information Services (Windows)

Apache (VMS or Tru64 UNIX)

 Systems that have a shared drive other than the data server
 Data servers (not recommended)
 The display server contains a number of resource files
(charts, menus, rooms, scripts, toolbars) that are shared by
the e-terrabrowser clients.
 Client access to the display server is through the clients
default configuration file (i.e. localhabitat_config.txt).

Overview of Building FG Displays

e-terrabrowser Data Server


 e-terrebrowser Data Server supplies the data that will be
included in the WebFG displays.
 e-terrebrowser Data server can be configured as a:

 Standalone server data server and client e-terrabrowser


software is installed and operates independently on each
workstation.

 Networked client/server architecture client has e-terrabrowser


installed and connects to the data server.
Data server

Standalone
server

WebFG
clients
Networked client/server

Overview of Building FG Displays

Display Builder
 Designed to run on Windows platform PCs
 Contains the e-terrabrowser compiler (built-in)
 Creates, modifies, and compiles e-terrabrowser displays:

 Displays can be compiled and viewed within the Display Builder.


 Some display elements such as menus must be tested outside
of the Display Builder.

Binary files

*.FGDISPLAY
DDLS

Display Builder Software

Display Server

Overview of Building FG Displays

Display Source/Binary files (1 of 2)


 Source files are the Display Definition Language (DDL) files:

 *eset.ddl


Input ASCII file used to define elements placed in displays

Definitions are updated with the save/all command

Usually stored in the %HABITAT_DDLS% folder

 *dset.ddl


Input ASCII file used to create displays

Definitions are updated with the save/all command

Usually stored in the %HABITAT_DDLS% folder

 Some display developers use the naming convention below:

 Application_name_eset.ddl, Application_name_dset.ddl
 Example: Alarm_eset.ddl and Alarm_dset.ddl

Overview of Building FG Displays

Display Source/Binary files (2 of 2)


 Binary files are the output files from the FG Display Builder

 Display_name.fgdisplay


Created when the DDLs are compiled

Compile command is save/binary

Output path is defined in the FG Display Builder, usually a standalone development server

Binary files are transferred to a display server

 Example: Alarm_acknowledgment_activity.fgdisplay
Binary files

*.FGDISPLAY
DDLS

Display Builder Software

Display Server
8

Overview of Building FG Displays

Example Database Set and Element Set

DSET

Overview of Building FG Displays

ESET

e-terrabrowser Client Display Access


 Three ways to access displays:

 Any standard browser using HTTP (webfg.exe)




Clients in a control room typically would not use this method for
display access.

Webfg.exe is an AREVA-supplied plug-in that is used to translate


the displays in the browser, similar to Microsoft Word or Adobe
Acrobat.

 e-terrabrowser Display Viewer (webfgviewer.exe)




AREVA-Proprietary component of e-terrabrowser

Preferred method for viewing displays

 Online option in the Display builder




10

Used to test displays

Overview of Building FG Displays

10

Displays in e-terrabrowser Viewer


 Displays are used to view and manipulate data in application
databases.
 Displays are composed of elements and primitives.

One line Display


Tabular Display
11

Overview of Building FG Displays

11

Features of Displays (1 of 3)
 Displays can be zoomed and decluttered.
 Operators can continuously pan through large displays (overview).
 Pictures and menus can be defined to pop up from displays.

12

Overview of Building FG Displays

12

Features of Displays (2 of 3)
 Displays can show an interactive view of application data from one or
more application databases.
 Displays can be built in layers.
 Displays can incorporate graphical attributes such as viewport scroll bars,
menus, and a command text box.

toolbar

status bar

13

Overview of Building FG Displays

scrollbar

13

Features of Displays (3 of 3)
 Displays can have the following:

Tool tips
Conditional tests
Permission area tests
Background images
ActiveX controls

14

Overview of Building FG Displays

14

e-terrabrowser Navigation
 Users navigate between viewports and through e-terrabrowser
displays using a mouse to interact with:
command text boxes

pop-up
and
pull-down
menus

15

Overview of Building FG Displays

poke-points
and push
buttons

15

e-terrabrowser UI Development
 An e-terrabrowser User Interface is developed using the
e-terrahabitat and e-terrabrowser applications and
subsystems as follows:

Tasks

Subsystem or Application

Define Databases
Create Applications
Create Instances of Data
Create Elements (ESETs)
Create Displays (DSETs)
Save/Binary Displays

HDB
Application Manager/HDB
hdbcloner/hdbcopydata
Display Builder
Display Builder
Display Builder (Built-in
Compiler)
Client and Server

Call up Displays

16

Overview of Building FG Displays

16

Summary
1. e-terrabrowser (WebFG) is composed of four components:

a)
b)
c)
d)

Display _________ (ESET and DSET)


Display ________ (*.fgdisplays)
Data __________ (wfgserver.exe)
e-terrabrowser _________

2. Display Builder can be used to create, modify, and _____


displays and view them online.
3. Displays can be viewed using several methods:

a) _______ browser (for example, Internet Explorer)


b) ______________ Display Viewer (proprietary viewer)
c) Display _______ (online option)

17

Overview of Building FG Displays

17

Introduction to the Display Builder

Topics
 An Overview of the Display Builder
 Simple and Layer Displays
 Primitives and Graphic Attributes Bundles (GABs)
 Element and Display Sets
 Element and Display Editors

Overview of the Display Builder (1 of 2)


 FG Display Builder is used to build displays. Displays provide
the means to access, display, and interact with application
data.
 The FG Display Builder is an offline tool that runs on a
Microsoft Windows platform:

 Microsoft Windows 2000 + SP1 (or above)


 Microsoft Windows XP +SP1 professional (or above)

Introduction to the Display Builder

Overview of the Display Builder (2 of 2)


 The Display Builder is used to create the displays for a user
interface to an application developed in e-terrahabitat.
 Displays are composed of primitives and elements.
 Primitives have sets of definable visual characteristics known
as graphic attributes.

AAAA

AAA
x

Fill

y
Field

Display

Introduction to the Display Builder

Color

XXXX

Display Editor

Field XXXX

Font Helvetica

Element Editors

Graphic Attributes

Displays (1 of 2)
 Displays are constructed with two types of layers: Simple and
Tabular.
 A typical display that uses simple layers is a system one-line
display.

Simple

Introduction to the Display Builder

Displays (2 of 2)
 Both types are similar in that they can display information from
application databases.

 They differ in how they are constructed and in how the


appearance of elements in the display is driven.

Tabular

Introduction to the Display Builder

Displays Using Simple Layers


 Show data from the application database for specific records
or provide purely diagrammatic data.
 Are composed of elements and primitives.
 A typical display that uses simple layers is a system one-line
display.

Introduction to the Display Builder

Displays Using Tabular Layers


 The appearance of elements is not fixed, but is determined by
the current information in application databases.
 Composed of Picgroups, which are composed of elements
and primitives.
 A typical display that uses tabular layers is a list of field values
arranged in the hierarchical order of the database.

Introduction to the Display Builder

Primitives
 Primitives are background items defined directly on the
scratch pad of elements and displays and are of two types:

 Rectangles, circles, ellipses, arcs, polygons, and polylines.


 Static text: Letters and numbers.

Introduction to the Display Builder

Graphic Attributes
 All primitives are defined with a set of visual characteristics
called a Graphic Attribute Bundle(GAB).
 The GAB of a primitive is set by either:

 The Default GAB, which is initial default values for all primitives.

A Shared GAB, which is a named


and shareable set of attributes.
A Private GAB, which is
exclusive to one primitive

Introduction to the Display Builder

Elements
 There are eight different types of elements.
Pictures

Conditional text

Symbols

Key Sets

Shared Gabs

Menus

Cams

Gems

 Elements are named items that can be combined to form


displays.
 Elements can be placeable or attachable.

10

Introduction to the Display Builder

10

Placeable Elements
 Placeable elements are defined in their own editor and then
positioned (placed) directly on a display or on another
element.

11

Introduction to the Display Builder

11

Attachable Elements
 Attachable elements are defined in their own editors and
associated with (attached to) other elements or displays.
 They can be attached as either:

 A local attachment to primitives or placed elements in an editor.


 An overall attachment to the item being defined.

+
Local Attachment

12

Introduction to the Display Builder

+
Menu

Overall Attachment

12

The Display Builder Editors (1 of 2)


 Scratch Pad Editors - Primitives are drawn and elements are placed at a
fixed location on a gridded scratch pad.

13

Introduction to the Display Builder

13

The Display Builder Editors (2 of 2)


 Dialog Box Editors - Typical dialog box mechanism, such as tabs, list
boxes, radio buttons, option buttons, sliders, and text entry boxes, are
used to define the element.

14

Introduction to the Display Builder

14

Display Builder Sets


 Elements and displays are grouped separately in sets and
stored in DDL files.
 Element and display names must be unique within each set.
Picture:
CB
PopUp
CAM:
CB

Element
Set DDL
File

CT:
Quality
Keysets:
PopUp
Symbols:
CB
Shared Gab:
Line

15

Introduction to the Display Builder

DISPLAYS
LAKEVIEW (simple)
MAPBOARD (simple)
SUBSTN_LIST (tabular)
PICGROUPS:
ANALOG
COUNT
APP_FAM

Display
Set DDL
File

15

How Element Sets Relate to Display Sets


 Displays can be composed of elements from more than one
element set.
 Displays from different sets can use the same element set(s).
 Displays using tabular layers can not contain Picgroups from
other display sets.
Element Set A
Picture A1
Symbol A1
CAM A1

Display
Editors

Element Set B
Picture B1
Picture B2
Keyset B1
Element Set C
Picture C1
Symbol C1
CAM C1
16

Introduction to the Display Builder

16

Summary
1. There are displays that use ____and ____layers. They differ
in how they are constructed and in how their appearance is
driven.
2. Displays are composed of _____ and ______.
3. All primitives have an associated ______.
4. Elements are named and saved items that are either ______
or _________.
5. ________elements are positioned in the scratch pad of other
elements and displays.
6. ______elements accompany other elements and displays,
providing additional properties or attributes.
7. The ____ _____uses scratch pad and dialog box editors to
create displays and elements.
8. Displays can be composed of _____from many different sets.
17

Introduction to the Display Builder

17

Managing the Display Builder

Topics
 Opening the Display Definition Language (DDL) set
 Transferring files
 Customizing the FG Display Builder
 Customizing the Scratch Pad Editor
 Opening and closing DSETs and ESETs

The Display Builder


 The main window of a Display Builder session is used to manage and
customize Display Builder sessions, access and manage Display Builder
sets, and access and manage element and display set editors.

Managing the Display Builder

The Display Definition Language


 Display Definition Language (DDL) is an ASCII text format of
element and display set definitions.
 Sets are stored in DDL files, and can be merged or separated
using the Display Builder copy-and-paste or drag-and-drop
features.

Managing the Display Builder

Transferring Files Into a Builder Session


(1 of 2)
 The HABITAT_DDLS environment variable on your host or
development system points to the directory that contains the
DDL files.
 You may also find the DDL DSET and ESET files from the
HABITAT_SRCDIR and HABUSER_SRCDIR subdirectories.

Managing the Display Builder

Transferring Files Into a Builder Session


(2 of 2)
 The File Transfer option from the File menu provides a way to
transfer files into your local directory for Builder session access.
 FTP (File Transfer Protocol) also gives the user the ability to lock a
file during use to ensure other users cannot simultaneously edit it.
 Multiple users can copy from the source directory, but only the user
with the lock can write to the source directory.

Managing the Display Builder

Accessing Element and Display Sets


 Element and Display sets are opened and managed through
the File menu.

Managing the Display Builder

Accessing Element Set Editors


 ESET editors are opened and managed through the Element Set
window.

Managing the Display Builder

Accessing Display Set Editors


 DSET editors are opened and managed through the Display Set
window.

Managing the Display Builder

Display Builder - Scratch Pad Editors


 The menus, tool bars, and title bar dynamically adjust to the context
of the editor and the Display Builder set activated by the user.

picture editor

Managing the Display Builder

Customizing the Display Builder Session


 View > Options allows users to customize the Display Builder session.

NOTE: Changes made in FG Display Builder settings do NOT affect


the on-line display output or appearance.
10

Managing the Display Builder

10

Options Tab (1 of 4)
 Draw lines with flat ends can be activated, which blunts the
end-points of polylines.
 Auto-Save Directory defines a location for the backup files.
 Activate the Auto Save Every feature to save in specified
minute intervals.

11

Managing the Display Builder

11

Options Tab (2 of 4)
 The Auto-Save feature periodically saves changes to all sets
with modified data in temporary files with the format:

 SETNAME_BACKUP_ESET.DDL
 SETNAME_BACKUP_DSET.DDL
 To recover unsaved changes, open both the original set and
the backup set in the Display Builder copy, then paste the
items from the backup set into the original, and save the
original set.
NOTE: Auto-Save feature saves only incremental changes.
It does not save the entire ESET and DSET.

12

Managing the Display Builder

12

Options Tab (3 of 4)
 FG compatibility is defined to provide options for selecting
different compiler versions.
 Compatibility warnings can be generated or disabled.
 Click Help to get a complete listing of features supported for
each version.

13

Managing the Display Builder

13

Options Tab (4 of 4)
 WebFG Root Output Directory is the location for the compiled
display binaries (*.fgdisplay).
 WebFG Image Directory has two options:

 Location of image files used as background images.


 Images may be embedded in the compiled display binary (*.fgdisplay).

14

Managing the Display Builder

14

Customize Colors
 Customize Colors is used to customize the drawing
background and alignment grid.

15

Managing the Display Builder

15

Font Mapping
 The Font Mapping tab is used to map the available FG Font
Family fonts to a True Type Font Family.

16

Managing the Display Builder

16

Scratch Pad Options (1 of 3)


 Scratch pad editor Options allows users to change the grid settings.

17

Managing the Display Builder

17

Scratch Pad Options (2 of 3)


 Selection Size is the size of the handles, in pixels, of selected items in the
scratch pad editor.

18

Managing the Display Builder

18

Scratch Pad Options (3 of 3)


 Display Margin specifies any margin, (in pixels) for separating the grid
from the edge of the editor window.

Zoom level specifies the magnification (%) of the scratch pad.


All of these settings are applied to the current scratch pad editor
and are persistent over future sessions.
19

Managing the Display Builder

19

The Default Graphic Attribute


Bundle (GAB) Tool Bar
 Select the Shared GAB as the default for all drawing (graphics
or text)
 You can also choose to use a Private GAB by default.
 You can modify the Private GAB or change Shared GABs at
any time after drawing.

Default GAB

20

Default Element Set

Managing the Display Builder

20

Browser Window
 The browser window
presents a schematic view
of the selected objects
definition, complete with
icons and names of the
various components.

 The browser window


provides a way to dissect a
display definition, which can
greatly enhance display
maintenance and
troubleshooting.

21

Managing the Display Builder

21

Display Builder Save Features


 Sets and editors can be
saved to disk using
Display Builder options:

 The active editor and its


set can be saved,
File>Save

 The active editor and its


set can be saved to a
new file,
File>Save As

 To save all current open


sets and editors,
File>Save All
NOTE: Save affects only the DDL
files (ESET, DSET), not the compiled
binaries (*.fgdisplay).
22

Managing the Display Builder

22

Closing Editor Windows


 There are three ways to
close a scratch pad or
form editor:

 File>Close
 Window>Close All
 Right-click on the editor
and select Close Editor

 The Display Builder


prompts you to save or
discard changes if the
data in the editor has
been changed and not
yet saved.

23

Managing the Display Builder

23

Closing Set Windows


 There are three ways to
close a set window:

 File>Close
 Right-click on the window and
select Close

 Click the close icon

on the

editors title bar.

24

Managing the Display Builder

24

Summary
1. The _______ window provides a schematic view of the
displays objects definitions.
2. The ____ _____ ______ is an ASCII text format of ESET and
DSET definitions.
3. The _________ environment variable points to the directory
that contains the DDL files.
4. The menus, tool bars, and the title bar dynamically adjust to
the context of the _____.

25

Managing the Display Builder

25

Building a Schematic Display

Topics
 Creating a Display Using Simple Layers
 Define Primitives
 Defining Database Linkages
 Specifying the Overall Attributes of Displays
 Compiling and Linking Displays

Displays Using Simple Layers


 Shows data from application databases or provides purely
diagrammatic data
 Format and content is determined by the fixed placement of
elements on the display

Building a Schematic Display

Creating a New Display Using Simple Layers


 Give focus to the DSET and select New>Display
 Name the display

Building a Schematic Display

Modifying an Existing Display Using Simple


Layers
 From the DSET, double-click on a display:

Building a Schematic Display

Creating a Display Using Simple Layers (1 of 2)


 Drag and drop elements onto your display, or select Draw > Add Placement

Use the filter


to limit your list
of elements.

Building a Schematic Display

Creating a Display Using Simple Layers (2 of 2)


 Add any primitives to your
display
 Add any attachable
elements to your picture
 Define database links for
each picture placement

Building a Schematic Display

Primitives
 Background items defined directly on the scratch pad of elements
and displays are of two types:

 Drawn: Rectangles, circles, ellipses, arcs, polygons, and polylines


 Static Text: Letters and numbers

Building a Schematic Display

Database Linkages
 Pictures are linked to
database records and fields.
These links are called
database linkages.
 Pictures are composed of
composite or primary keys,
which are the records and
their key field values that
uniquely identify a specific
record occurrence.

Building a Schematic Display

Defining Database Linkages


(1 of 2)
 There are two simple ways to create or modify a database linkage
on a display:

 Right-click on a placed item in the display editor and select Picture


Placement Properties, or

 Double-click on the selected picture element on the display.

Building a Schematic Display

Defining Database Linkages


(2 of 2)
 Enter the record name and composite or primary key value

10

Building a Schematic Display

10

Specifying the Overall Attributes


of Displays Using Simple Layers (1 of 2)
 Display>Display Properties

11

Building a Schematic Display

11

Specifying the Overall Attributes


of Displays Using Simple Layers (2 of 2)
 Name and Title
 Call-Up/Down Commands
 Refresh Rate
 Default Zoom Factor
 Other Definable Attributes:

 Applications
 Viewport
 Menus
 Background/Image
 Permission Test

12

Building a Schematic Display

12

Compiling Displays
 There are three different ways to compile displays:

 A single display within the builder


 Multiple displays within the builder
 Batch mode from the builder
 There are two ways to involve the compiler:

 Use the Display Builder GUI interface


 Use the command line option fgb_builder_app.exe

13

Building a Schematic Display

13

Compiling a Single Display (1 of 2)


 Compiling a single display:

 Call up a display into the editor


 Right-click the in the editor and select Save Binary
 File > Save Binary

14

Building a Schematic Display

14

Compiling a Single Display (2 of 2)


 Compiling a single display:

 Any warnings or errors will appear in an error window.


 Warnings or errors can be highlighted to locate an object in the display for
debugging.

15

Building a Schematic Display

15

Compiling Multiple Displays (1 of 2)


 Compiling multiple displays:

 File>Save Binary
 All displays in the DSET may be compiled

16

Building a Schematic Display

16

Compiling Multiple Displays (2 of 2)


 Compiling multiple displays:

 Any warnings or errors will be stored in a log file.


 The window below will appear to allow you to view any warnings or errors:

17

Building a Schematic Display

17

Compiling Displays in Batch


 Compiling in Batch Mode from FG Builder

 Do not bring in any DSETs/ESETs


 File>Batch Compile

A popup window will appear


where you can select a
directory that contains the
displays you would like to
compile.

A text file will be created


to identify any warnings
or errors.
18

Building a Schematic Display

18

Linkage Verification
 Linkage verification is a process that simply checks that the
data queries embedded in the run-time binary display file will
be successful against a particular clone.
 Linkage verification should be done before run-time to prevent
errors from being displayed.
 There are two methods of linkage verification:

 Use the on-line option in the Display Builder


 Use the WebFGUtils Utility

19

Building a Schematic Display

19

Online option (1 of 2)
 Requires a data server
 Select a display in the builder
 Right-click within the display and select Online

20

Building a Schematic Display

20

Online option (2 of 2)
 This method allows you to see the display and functionally check
the objects in the display.

21

Building a Schematic Display

21

WebFGUtils Utility (1 of 2)
 WebFGUtils

 Launched as a
GUI
application

 Can run from


the command
line

 Allows users to verify a set of displays against real-time data they


are linked to, off-line, before putting them on-line on a production
system.

 The result of the linkage verifications could be recorded in a log file


as well as in the message log window of the GUI application.
22

Building a Schematic Display

22

WebFGUtils Utility (2 of 2)
 WebFGUtils is launched from
Start>Programs>AREVA>e_terrabrowser >WebFGUtils.
 This requires access to a data server which will resolve the
data queries built into the display.

23

Building a Schematic Display

23

FGLinker Overview (1 of 3)
 FGLinker Utility:

 Provides the availability of e-terrahabitat database linkages.


 Reduces the time required to build simple displays.
 Reduce the chances for incorrect linkages.
 Can only be used with one-line displays.
 Allows you to drag and drop database linkages onto picture
placements in a Display within the full Graphic display builders
tool.

NOTE: FGLinker requires the Sampler Application to be running.


Use Task View (tview.exe) to start Sampler task if necessary.
24

Building a Schematic Display

24

FGLinker Overview (2 of 3)
 The traditional method is to run the FG Display Builder and bring up
the display where picture placements need database linkages.

Composite keys are


manually typed in.

25

Building a Schematic Display

25

FGLinker Overview (3 of 3)
 The preferred method is to drag and drop using FGLinker.

Locate the database link


in the list of links
available to the FGLinker.

Left-click on the link, and


drag and drop it onto the
picture placement.

26

Building a Schematic Display

26

Summary
1. _______layers are created by drawing primitives, placing
elements, and defining ________ links, and other elements
to specific record and field occurrences.
2. _______ are the only elements that can be used to link to a
specific database and record.
3. When pictures are placed on a simple layer, they are linked
to specific occurrences of their records type via a________
key.
4. There are 3 ways to compile: ______, _______, and ______
mode compiling.
5. ________ verifies database linkages from a set of displays
against a set of clones.
6. ________ is a tool that allows Display Builder easy access to
e-terrahabitat database linkages which can be dragged and
dropped onto picture placements in a display.
27

Building a Schematic Display

27

Defining the Windows to the Database

Topics
 Defining a Picture
 Using Formatted Fields
 Specifying the Overall Attributes of Pictures
 Creating Pop-up Pictures

Defining a Picture
 A picture is:

 A collection of primitives and other elements, all linked to a single


record-type in an application database.

 Linked to a specific occurrence of the record-type, when placed


on a simple layer.

Multiple Pictures on a Display

Defining the Windows to the Database

Unique Picture Features


 Actual field values can be displayed through formatted fields.
 Conditional text and scale factors can represent field values.
 Pop-up pictures are attached pictures that are also linked to
the parent picture record-type.
Pop-Up Picture
Formatted
Fields

Conditional Text

Scaled
Rectangle
Conditional Text

Defining the Windows to the Database

Creating a New Picture (1 of 2)


 Give focus to the ESET
 New>Picture

Defining the Windows to the Database

Creating a New Picture (2 of 2)


 Name the picture in the popup window.
 The picture editor will appear:

 Background and grid color can be


changed

 View>Options>
 Click Customize Colors

Defining the Windows to the Database

Modifying an Existing Picture


 Click the picture tab on the ESET
and select a picture.
 The picture editor will appear:

 Background and grid color can be


changed

 View>Options>
 click Customize Colors

Defining the Windows to the Database

Adding Placeable Elements to Pictures (1 of 2)


 Several ways to add a placeable element:

 On the Toolbar, click the Add Placement icon:


 Draw>Add Placement...
 Drag and drop elements onto the picture scratchpad

Defining the Windows to the Database

Adding Placeable Elements to Pictures (2 of 2)


 Symbols and conditional text may be added as placeable
elements to pictures.
 Pictures can not be placed on pictures (grayed out).

Defining the Windows to the Database

Specifying the Overall Attributes of Pictures


1. Database Information

2. Comment
3. Record(s)
4. Declutter Zoom
Factors
5. Picture Size


9

Defining the Windows to the Database


9

Using Formatted Fields


 Provides the means of displaying actual field values from
record occurrences

Analog:
111111

10

Defining the Windows to the Database

10

Defining Formatted Fields (1 of 2)


 From the tool bar, click on the formatted field icon:

 Click on an area within the picture editor for placement


of the formatted field.

11

Defining the Windows to the Database

11

Defining Formatted Fields (2 of 2)


1. Specify the field to display
2. Specify the field attributes
3. (Optional) Specify the text
pair format




Indirect pointer fields such
as P$MEAS_POINT can be
specified using a $ symbol
or two underscores.
12

Defining the Windows to the Database

12

Pop-up Pictures
 Pop-up pictures are pictures that can pop up on the screen
from other pictures.
 When the pop-up picture displays data from a record, its
record-type must match the parent picture record-type.

Pop-Up
Picture

13

Defining the Windows to the Database

13

Creating Pop-Up Pictures


 Steps for creating pop-up pictures:

1.
2.
3.
4.

Select and place elements


Define any primitives and static text
Define formatted fields
Select and attach keysets, menus, CAMs, and other attachable
elements

MAIL/USER= 
control_%disapp
%_%disfam%
TRIP

14

Defining the Windows to the Database




14

Attaching Pop-Up Pictures


 Pop-Up Pictures are attached
from pictures as follows:
1. From the Draw Toolbar, click the
Add Attachment icon:
or, use Draw>Add Attachment
1. Click the Popup Picture option.
2. Select Popup Picture.

 Pop-up options are defined in


the Pop-up Picture Properties
Form dialog box:

 Pop-up picture viewport is


Modeless or Modal

15

Defining the Windows to the Database

15

Modal, System Modal, and Modeless Pop-Up


Pictures
 Modal and system modal pop-up pictures cannot be moved or
closed by the user.

 With system modal pop-up pictures, all keyboard actions not


associated with the picture are ignored until the picture is popped
down,however, current implementation forces system modal to
behave like a modal pop-up.

 With modal pop-up pictures, only keyboard actions associated


with WebFG are ignored. Non-WebFG applications are not
affected.

 A modeless pop-up picture can be moved and closed, and the


keyboard is not locked.

Modal
16

Defining the Windows to the Database

Modeless
16

Summary
1. Through the picture, the display is associated with a specific
occurrence of the ____ ______in an application database.
2. ______ ______ are placed in pictures to link to and to display
database field values.
3. Pictures can contain all other types of drawn, placed, or
attached _______.
4. Scale factors, conditional text, and _____ ____ are unique to
the picture.

17

Defining the Windows to the Database

17

Defining Keymaps,
Keysets, and Proxy Strings
Topics

 Defining Keysets and Keymaps


 Using Proxy Strings in Commands
 Adding Tool Tips with Proxy Strings
 Using Command Synchronization

Keysets, Keymaps, and Proxy Strings

Relating the Keyset


to Virtual Keys
 A keyset maps WebFG commands to named physical mouse
or key strokes executed by the operator.
 The physical key used may be changed through use of a
keymap, but the name of the key stroke is constant and
embedded in the displays themselves

Keysets, Keymaps, and Proxy Strings

Poke-Points
 Poke-points are created by attaching a keyset to an element
or primitive that will be visible to the user.

Keysets, Keymaps, and Proxy Strings

Creating a Keyset (1 of 2)
 Define the key name and associated command in the keyset
editor:

Keysets, Keymaps, and Proxy Strings

Creating a Keyset (2 of 2)
 Define the attributes of the keyset in the definition tab of the
keyset editor.

Savecase Manager is an example of an application that uses the


Use command line to complete.
5

Keysets, Keymaps, and Proxy Strings

Using Proxy Strings in Commands


 Variable data can be substituted in Web-FG commands using
two types of proxy strings:

 Context Proxy Strings - Substitutes current context data from


host

 Key Proxy Strings - Substitutes values from one of 10 userdefinable keys, local to remote

 Use the command SHOW CONTEXT to display the context and


key proxy strings

Keysets, Keymaps, and Proxy Strings

Levels of WebFG Context


 Session Context:

 Client workstation name, server workstation name, viewport


name

 Viewport Context:

 The name of the display in the active viewport, its application,


family, zoom level, etc.

 Pointer Context (of active viewport):

 The layer, display page, database, application, family, record,


subscript, field value, etc.

 Mark Context

 Similar to pointer context but for screen position that has been
marked with the MARK command

Keysets, Keymaps, and Proxy Strings

Context Proxy Strings


(1 of 4)
PROXY
STRING

%APP%

%CK%

LEVEL

CLIENT

DESCRIPTION

EXAMPLE(S)

Pointer

WebFG/
RapportFG

The application of the


item at the pointer
location.

WATERSYS

WebFG

The composite key of


record at the pointer
location.

SCADEK=SUBSTN
SUBSTN=CHFALL
S DEVTYP=BUS

WebFG

The command line of


the viewport, same
as %CMD%.

%COMMAND%

Session

WebFG/
RapportFG

Permission Console
name assigned by
the Permission
subsystem at login.

USRDTS

Pointer

WebFG/
RapportFG

The database of the


item at the pointer
location

SCADAMOM

Pointer

%COMMAND% Viewport

%CON%

%DB%

Keysets, Keymaps, and Proxy Strings

Context Proxy Strings


(2 of 4)
PROXY
STRING

%DIS%

%DISAPP%

%DISFAM%
%FAM%
%FLD%
%FV%

LEVEL

DESCRIPTION

EXAMPLE(S)

WebFG/
Viewport Rapport-FG

The name of the


display in the active
viewport.

CHFALLS,
DATAENTRY

WebFG/
Viewport Rapport-FG

The application of the


display in the active
viewport.

SCADA,
WATERSYS

WebFG/
Viewport Rapport-FG

The family of the


display in the active
viewport.

DTS, EMS

Pointer

WebFG/
Rapport-FG

The family of the item


at the pointer location.

DTS, TRAIN

Pointer

WebFG/
Rapport-FG

The field name at the


pointer location.

ID_DEVICE,
DIS_ANALOG

Pointer

WebFG/
Rapport-FG

The value in the field at


the pointer location.
353.2

Keysets, Keymaps, and Proxy Strings

CLIENT

Context Proxy Strings


(3 of 4)
PROXY
STRING

%HOST%

%KEYn%

%LAY%

%NODE%

%PGT%
10

LEVEL

CLIENT

DESCRIPTION

EXAMPLE(S)

WebFG/
Rapport

The name of the


current data server
node.

PC1203

Viewport

WebFG/
RapportFG

Variable fields that can


be SET to any value
from 0 65535 and be
used by any display in
any viewport.

KEY1=DTSTMPLT,
KEY7=1

Pointer

WebFG/
RapportFG

The layer of the item at


the pointer location.

DEFAULT

Session

WebFG/
RapportFG

The node name on


which the Remote is
running.

PC1203

Viewport

WebFG/
RapportFG

The page number of


the tabular display in
the active viewport.

Session

Keysets, Keymaps, and Proxy Strings

10

Context Proxy Strings


(4 of 4)
PROXY
STRING

%REC%

%SUB%

%URL%
%VP%

%ZOOM%

LEVEL

Pointer

Pointer

CLIENT

DESCRIPTION

EXAMPLE(S)

WebFG/
Rapport-FG

The record name of


the item at the pointer
location.

ANALOG

WebFG/
Rapport-FG

The subscript of the


record at the pointer
location.

824
file://D:\AREVA\hab
web60\display\SCA
DA\substn_list.fgdis
play

Viewport

WebFG

The URL of the


display.

Session

WebFG/
Rapport-FG

The active viewport


name.

TRB

WebFG/Ra
pportFG

The zoom factor of


the display in the
active viewport.

Viewport

NOTE: For a complete listing of proxy strings, refer to the Full


Graphics Reference Manual (rfg_rm.pdf).
11

Keysets, Keymaps, and Proxy Strings

11

Key Proxy Strings (1 of 3)


 WebFG support substitution on a known collection of variable
fields, KEY0, KEY1, through KEY65535 called key proxy
strings.
 %KEY0%

%KEY99%

 Reserved for AREVA use


 %KEY100%

%KEY199%

 Reserved for CUSTOMERS


 %KEY200% and ABOVE

 Reserved for future use

12

Keysets, Keymaps, and Proxy Strings

12

Key Proxy Strings (2 of 3)


 They can be set using the SET command with any numeric,
character value, or proxy string substitution as follows:

 SET KEY1=12345
 SET KEY2="Lakeview
 SET KEY3=%dis%
 Multiple SET commands can be used together as follows:

 SET KEY3 = %sub%; SET KEY4 = %fv%;

13

Keysets, Keymaps, and Proxy Strings

13

Key Proxy Strings (3 of 3)


 By using the %KEY100% to %KEY65535% key proxy strings,
the values in the fields can be substituted in any WebFG
command, display title, composite key, and in driving
multidimensional tabular layer.

 Example in commands:
POSITION SUBSTN=%KEY1%
FIND SUBSTN=%KEY3%

 Example in composite keys:


SUBSTN=%KEY3%
DEVTYP=BUS
DEVICE=%KEY5%

 Example in keysets or menus:


SET KEY201=%fv%; display/app=%disapp% %KEY201%

14

Keysets, Keymaps, and Proxy Strings

14

Adding Tool Tips


 A tool tip is a small pop-up window
that appears when the cursor
hovers over a location.
 A tool tip shows a textual
description of the function of the
button or any other desired object,
to aid the user in their
navigation/operation.
 Tool tips should be added to
elements (symbols, formatted
fields, static and conditional text,
CAM, primitives) where a long
description of what to expect would
be useful.
 Tool tips can be:

 STATIC TEXT
 PROXY STRINGS %proxystring%
ie. %APP% for application

 DATABASE fields %%field%%, ie.


%%ID_SUBSTN%%

15

Keysets, Keymaps, and Proxy Strings

15

Command Synchronization
(1 of 2)
 MAIL, MASK and DICE commands can be set to "busy" the
viewport until the command has completed processing and
before allowing the execution of any other user or userprocess activated command.
 The /[NO]WAIT qualifier is used for command
synchronization.
 /NOWAIT is the default for all of the previous commands.
 The "cancel key," defined in the Key Map Definition dialog
box, is used to cancel a command that is busying a viewport.

16

Keysets, Keymaps, and Proxy Strings

16

Command Synchronization (2 of 2)
 The following commands allow the [NO]WAIT qualifier:
COMMAND

EXAMPLE(S)

Sends a user-specified message to a


specified Rapport User Interface (RUSER)
process

MAIL/USER=control
_%disapp%_%disfa
m% TRIP

MASK

Sets, clears, and toggles mask fields

MASK/TOGGLE=sta
ndby

DELETE

Removes one or more records from a


database or viewport

DELETE/viewport
=%vp%

INSERT

Inserts a selected record at a marked or


specified location in the same or different
database

INSERT/nopopup
TFLAG

COPY

Copies selected record to a marked location


in the same or different database

COPY/MARK

ENTER

Causes the new text in edited formatted


fields to be entered into the application
database

Hit key <RETURN>

MAIL

17

DESCRIPTION

Keysets, Keymaps, and Proxy Strings

17

Summary
1. The ______associates WebFG commands with virtual keys,
which are arbitrary names given to keystrokes and defined in
the Key Map.
2. ____ ____are created by attaching a keyset to an element or
primitive which will be visible to the user.
3. Variables can be substituted in commands using context and
____ ______strings.
4. The ____ command define key proxy strings.

18

Keysets, Keymaps, and Proxy Strings

18

Menus, Layers, Placeholders,


Zoom and Declutter Levels

Topics
 Pop-up and Pull-down Menus
 Resource Menu Files
 Layers
 Placeholders
 Zoom and Declutter

Overview
 There are two kinds of menus:

 Pop-up menus
 Pull-down menus
 Two resource files affect menus:

 Webfg_menus.txt
 Webfg_config.xml
 Layers can hide or show more details of a display.
 A placeholder allows quick navigation to a coordinate.
 Zoom and declutter levels can reduce the refresh load of
displays and increase performance.

Menus, Layers, Placeholders, Zoom and Declutter Levels

Pop-up and Pull-down Menus


 Pop-up menus use a keyset with the command MENU to
popup a menu.
 Pull-down menus are attached to the display and accessible
from the viewport menu bar.
 Both type of menus can be defined with submenus.

Pull-down Menus
Pop-up Menu

Menus, Layers, Placeholders, Zoom and Declutter Levels

Creating a Menu (1 of 3)
 New > Menu

 Name the new menu

Menus, Layers, Placeholders, Zoom and Declutter Levels

Creating a Menu (2 of 3)
 Lists of items are called labels. Each label is defined with FG
command(s) that will execute when the label is selected from
the menu.
 Define labels and their commands or submenus, and add
them to the list box in the menu editor.

Menus, Layers, Placeholders, Zoom and Declutter Levels

Creating a Menu (3 of 3)
 Define the overall attributes of the menu in the menu definition
dialog box:

Menus, Layers, Placeholders, Zoom and Declutter Levels

Attaching Menus to Displays (1 of 2)


 The Menus tab on the
Display Definition form is
used to specify the userdefined menus that will
appear in the menu bar
when the display is called
up in the viewport.

Use Sequencing
arrow buttons to
modify the sequence
of the menus in the
menu bar.

 The attributes of the Menus


tab are as follows:

 Label: The menu label


that the user will see in the
menu bar. The menu bar
label is enterable when a
menu is added and
modifiable using the Edit
Label button.
7

Menus, Layers, Placeholders, Zoom and Declutter Levels

Attaching Menus to Displays(2 of 2)


 No Default Menu Bar
Menus: Check ON to
disable the menu toolbar.
CAUTION: Do not attach
any menus to the display.

 Application: By defining
an application attribute of a
menu bar item, that menu
bar item will only be
included for that
application.


If no application is
specified, the menu
can be shared among
many applications.

Menus, Layers, Placeholders, Zoom and Declutter Levels

A display with no default menus

WARNING: If the user does


not have authorization for
that application, menu item
will not be visible.

e-terrabrowser
Resource Files
 The e-terrabrowser user can define other menus for the
viewport using a resource file (webfg_menus.txt).

 Menus defined in the resource file will be applied to every display


called up in e-terrabrowser ( WebFG).

 Default resource menu file is located in

%habitat_webroot%\config\menus\webfg_menus.txt.

 The name and path of a resource file (ie. webfg_menus.txt) is


specified in a configuration file called webfg_config.xml.

 Default configuration file is located in

%habitat_webroot%\config\webfg_config.xml.

 WebFG supports any number of menu files containing any


number of menus.

 If the resource file is not defined in webfg_config.xml:

 Look in location of the display being called.


 Check parent directory (recommended configuration).
9

Menus, Layers, Placeholders, Zoom and Declutter Levels

Display Layers
 Layers are like a set of overhead transparencies. One or all
can be viewed at the same time, creating a simple way to add
or remove detail on a display.
 Each display has a default layer that appears below all other
layers.
 Access to layers can also be limited with separate permission
area tests.

Layer Hidden
10

Menus, Layers, Placeholders, Zoom and Declutter Levels

Layer Shown
10

Layer Features
 Each layer has its own set of driving data.
 Each layer can access data from separate clones:

 Tabular Layer Properties Form > Tabular Definition > Secondary


Application

 Each layer is defined like a separate display.


 Tabular layers can be defined to display on call-up, but must
be specified whenever the /LAYER qualifier is used.

11

Menus, Layers, Placeholders, Zoom and Declutter Levels

11

Calling Displays With


Layers (1 of 2)
 On initial call-up, the default layer and all layers marked for
display call-up will automatically be called to the workstation.

12

Menus, Layers, Placeholders, Zoom and Declutter Levels

12

Calling Displays With Layers (2 of 2)


 For a display call-up using the LAYER command/qualifier, you
must specify all layers you want displayed, including the
default layer.

 Example: display/app=scada/layer=(default,estimator) chfalls


 Example: layer default, estimator
 The user cannot hide non-removable layers when using the
LAYER command or /LAYER qualifier. They remain visible on
the display.

13

Menus, Layers, Placeholders, Zoom and Declutter Levels

13

Defining Layers (1 of 2)
 Display > Layers & Driving Data

14

Menus, Layers, Placeholders, Zoom and Declutter Levels

14

Defining Layers (2 of 2)
 Layers are defined from the
Layers tab of Layer
Properties.
 Layers contains the list of
layers defined for a display.
 Layers are listed by name,
type, and visibility.
 The user can specify
whether a layer is called up
on initial display call-up.
 The user can change the
layer sequence.

15

Menus, Layers, Placeholders, Zoom and Declutter Levels

 A layer can also be set as


Not Removable, meaning it
cannot be deleted (hidden)
by users during viewing.

15

Placeholders
 Placeholders are named coordinate locations in a simple
layer. Use the placeholder drawing tool to add a placeholder
on a simple layer.

 A placeholder is invisible to the end user.


 Position a placeholder by specifying its name as a qualifier to
the DISPLAY command, e.g.:

 DISPLAY/PLACEHOLDER=PICTON MAPBOARD

Placeholder = PICTON

16

Menus, Layers, Placeholders, Zoom and Declutter Levels

16

Defining a Placeholder (1 of 2)
 Click on the placeholders icon
within the display editor.

17

Menus, Layers, Placeholders, Zoom and Declutter Levels

and then click on a location

17

Defining a Placeholder (2 of 2)
 After naming the placeholder, the named location will be
visible in the display editor.

18

Menus, Layers, Placeholders, Zoom and Declutter Levels

18

Zoom and Declutter


 Zoom is the capability to magnify or shrink the display view.
 The Default Zoom Factor is the zoom factor at which the
display will appear when first called to the display device.
 Pictures and placements on pictures can be set to declutter at
specific zoom factors.

ZOOM 2

19

Menus, Layers, Placeholders, Zoom and Declutter Levels

19

Picture Declutter
 Picture declutter is specified in the Picture Definition form.

20

Menus, Layers, Placeholders, Zoom and Declutter Levels

20

Declutter Tab
 Declutter of placements on pictures is specified in the
Declutter tab of the Placements Properties form.

21

Menus, Layers, Placeholders, Zoom and Declutter Levels

21

Summary
1. Menus are lists of items called______.
2. Each label is defined with a FG ______ that will execute
when selected from the menu.
3. Menus can _____ within a display or ___-____ from the
viewport menu bar and can be defined hierarchically with
________.
4. Menus can be defined as application-specific by attaching
them in a _____ or globally in a default resource file called
______.
5. ______ can be defined for simple and tabular displays.
Access to layers can be limited by ________ area test.
6. Positioning to coordinate locations on the display can be
done using ______________.
7. Simple displays allow you to zoom in or out and to ______ as
you zoom. Pictures and placement on pictures can be set to
declutter at specific _______ factors.
22

Menus, Layers, Placeholders, Zoom and Declutter Levels

22

Defining Conditional Elements

Topics
 Conditional Attribute Modifiers and Conditional Text
 Conditional Statements and Logic
 Scale Factors
 Permission Area (Class) Tests

Providing Conditionality in WebFG


 Conditional attribute modifiers (CAMs) change an elements
graphic attributes.
 Conditional text (CT) modifies the text value.
 Scale factors shrink or enlarge primitives placed in a picture.
 Area permission tests restrict access to displays, layers,
and/or pictures.
Conditional Text
If the field
SUSPECT_ANALOG
is TRUE then display
the text Suspect.
CAM
If the value in the
G3_UNIT field > 90,
then display the
stippled rectangle.
2

Defining Conditional Elements

Permission Test
If the STATION has
proper permissions,
then okay to view the
display.

Scale Factor
Size the rectangle
proportional to the
G2_UNIT field.
2

Conditional Attribute Modifiers


 CAMs are used to modify the graphic attributes of any
primitive or element, based on a conditional test of database
values.
 They can be attached as a local attachment to any primitive or
element, or as an overall attachment to placeable elements.

CAM
If the value in the G3_UNIT
field is greater than 90, then
display the stippled rectangle

Defining Conditional Elements

Conditional Text
 CT is used to display various text strings, based on a
conditional test of database values.
 A true test results in a pre-defined text string being displayed
at the location the CT was placed.

 Can only be placed on pictures

Conditional Text
If the field
SUSPECT_ANALOG is
TRUE then display the
text Suspect

Defining Conditional Elements

Defining Conditional Tests


 Define the overall attributes and the conditional tests for both
CAMs and CT as follows:

1. Use the Conditional Wizard OR


2. Manually type the conditional statements.
 Each conditional test will have a SET graphic or text attribute.

Defining Conditional Elements

Conditional Statements in WebFG


 Can be defined to test the value in any database field against
any literal value or field value
 Consist of TEST CLAUSES and a set of OVERRIDE
ATTRIBUTES
 Each test begins with an IF test clause, can be supported by
one or more ELSE IF test clauses and no more than one
ELSE test clause, and has only one true outcome.

IF GOOD_ANALOG TRUE SET A


ELSE IF REPLACED_ANALOG TRUE SET B
ELSE IF <TEST CLAUSE> SET C
ELSE SET D

Defining Conditional Elements

Creating CAM and CT Tests


 An IF statement starts the
conditional test.
 ELSE IF and ELSE statements
support a given IF statement
and do not stand alone:

 DEFAULT keyword sets the


default attributes or
appearance of the CAMs and
CT.

 An IF statement may have as


many ELSE IF statements

 Only one ELSE statement is


allowed

 AND operations join two


conditions, both must be true to
be evaluated.
 OR operations join two
conditions; one or both
conditions must be true to be
evaluated.
7

Defining Conditional Elements

Types of Fields
 Database fields, indirect or
parent/child pointers, and proxy
strings can be used in a
conditional test.
 Below are some examples:

EXAMPLES

Database Fields

Indirect/parent/
child pointer

REPLACED_
ANALOG

I__DISP_POINT
%DISAPP%
POPUPPIC_DISP

Defining Conditional Elements

Proxy String

Supplying Logic
 The logic dialog allows user to
enter comparisons such as
Equals, Not Equal To, etc

 Select TRUE and FALSE for


boolean fields.

 Select Read, Write, Execute,


and Audible for comparison of
permission fields.

 Depending upon the type of


comparison (i.e. Equals), you
may get an additional logic
dialog box to enter the
Database Field, the Literal
value, or the Proxy string to
complete the conditional
statement.
9

Defining Conditional Elements

Scale Factors
 Scale factors are used to cause primitives and symbols in a
picture to grow or shrink in relation to database field values.

 Only primitives and symbols placed in pictures can be scaled.


Scale Factor
Size the rectangle
proportional to the
G2_UNIT field.

10

Defining Conditional Elements

10

Defining Scale Factors


 Select or define the object
to be scaled in the Picture
Editor
 Right-click on the object and
select Properties
 Select the Scale Factor tab
 Specify the field from the
picture that will be the
scaling field
 Specify proportionality literal
values or fields
 Specify the growth direction
and boundaries.

11

Defining Conditional Elements

11

Permission and Permission Class Tests


 Standard session permissions limit access to displays, layers,
or pictures.
 Permission class tests can be defined for displays, layers, and
pictures to further limit access, based on a test of the
sessions permissions to a defined permission class.
Permission Test
If the session has proper
permissions, then okay to
view the display.
Permission Class Test
If the session has READ
permission for ANALYST Class,
then display will be visible for
READ access only.

12

Defining Conditional Elements

12

Defining Permission Class Tests


 Specify whether AREA
permission is granted when:

 All AREA classes are valid


(AND operator).

 Any AREA class is valid


(OR operator).

 Area permission can be


defined by:

 AREAS defined in the


PERMIT application.

 Fields and indirect pointers


that contains area values.

13

Defining Conditional Elements

13

Summary
1. The ____ _______ _______is used to modify the graphic
attributes of any primitive or element, based on a conditional
test of database values.
2. The _____ ________is used to display various text strings,
based on a conditional test of database values.
3. Each test begins with an ____ test clause, which can be
supported by one or more _____ test clauses and no more
than one ELSE test clause, and has only one true outcome.
4. Primitives and symbols in pictures can be defined to grow
and shrink in relation to database values through the ____
_____.
5. _____ _____are used to limit access to displays, layers, or
pictures, based on a test of the established permissions for
the session.
14

Defining Conditional Elements

14

Using ActiveX Controls


Topics

 What are ActiveX Controls?


 How ActiveX Works
 Adding ActiveX Controls
 Example of an ActiveX Control: WebFGComboBox

Using Active X Controls

What are ActiveX Controls?


 Microsoft developed ActiveX for interactive content:

 Components are called ActiveX controls.


 Complete application modules are called Active Documents.
 Every ActiveX control requires a container object in which to execute:

 FG Displays act as a container and allow display designers to place any


ActiveX controls on one-line and tabular displays, and pictures.

TabStrip

Using Active X Controls

ComboBox

How ActiveX works


 ActiveX controls have three characteristics: Properties, Methods
(built-in control functions), and Events. A given ActiveX control may
have some or all of these characteristics.
FG Display

Event Click to call


VT_VOID
OnTextChange

Methods are builtin functions within


the ActiveX
control, such as
ComboBox1.
Refresh().
Events are results
from actions, such
as clicking a
Result
button.

Using Active X Controls

Event
handler
display/app=
%disapp% %arg0%

Display/app=
SCADA BRIGHTON

Arg0 is the
argument of the
ComboBox. In
this case, the
selection is
BRIGHTON.

Adding ActiveX Controls


 The display builder allows a
number of predefined
ActiveX controls to be
integrated into a display.
 Controls fall into two
groups:

 Controls designed to be
placed or embedded within
a FG display

 Controls supported by
WebFG Viewer, but not
designed for placement
within FG displays

Using Active X Controls

 More commonly used


ActiveX controls for
embedding within a FG
display are shown below:

 WebFGComboBox
 WebFGTabStrip
 WebFGCmdButton
4

Example of ActiveX Control:


WebFGComboBox
 ActiveX controls can be
customized as follows:

 ActiveX Control Properties


define the properties of the
objects. The properties
vary with each ActiveX
controls.

 ActiveX Events define the


handler of the controls,
such as clicking on a
button.


A handler may be a script


function or a FG
command.

NOTE: The following slides will be based upon


WebFGComboBox control as an example.
5

Using Active X Controls

WebFGComboBox Properties: Query


 WebFGComboBox has a
Query tab where the user
may paste an XML
statement that specifies
what data will be loaded
into the ComboBox.
 To paste an XML statement
to load into the ComboBox,
do the following:
1. DSET menu>Edit>Copy
Query and copy the XML
query into the buffer.

3. Select the Query tab. Use


Ctrl - V to paste the query
into the ComboBox.

2. Right-click on the
ComboBox control and
select ActiveX Control
Properties.
6

Using Active X Controls

WebFGComboBox Properties: Misc


 If ShowAll is checked,
WebFG adds an additional
line with the value ---All--- in
the combo box, as shown in
the figure on the right.

 If DelayExecute is true, it
will not automatically
execute the query when the
display is called up, but
waits until the refresh
method is called in the
combo box.

 This can be set to true for


lower levels of a set of
cascading combo boxes.
7

Using Active X Controls

WebFGComboBox Properties: Font & Color


 The Font tab allows the
size of the text to be
specified.

 The Color tab allows the


color of the text to be
specified.

Using Active X Controls

WebFGComboBox Properties: Extended


 Name allows the developer
to differentiate between
specific instances of a
control:

 Used in a FGScript
command and/or thirdparty scripting functions to
identify the control in the
display

 Must be unique within a


given display

 Locking locks the control


placement in the X and/or Y
dimensions when the
display is scrolled.

Using Active X Controls

WebFGComboBox Events
 Events are actions. To view
the events, right-click on the
ActiveX control.
 Combo boxes have the
following actions or events:
 OnTextChange activated
when the user updates the
selection in the combo box

 OnAutoTextChange activated
when the contents change due
to refresh or new query
execution

 OnGotFocus activated when


the ComboBox is given focus
by the user

10

Using Active X Controls

10

Summary
1. ActiveX controls can be placed on _____ and _____displays,
and ________.
2. ActiveX Control have three characteristics:
___________
___________
___________

3. ActiveX _______ sets the handler of the controls, such as


clicking on a button.

11

Using Active X Controls

11

Primitives, Shared GABs, Symbols and


Background Images

Topics
 Primitives
 Graphic Attribute Bundles (GABs)
 Symbols
 Background Images

Primitives

 Primitives are graphical elements that are drawn or typed in a


scratch pad editor.

 There are two types of primitives:

 Drawn - lines, ellipses, rectangles, circles, polylines, polygons,


and arcs

 Typed - Static text such as characters and numbers

CAUTION: Not all primitives can be used in


elements. For example, symbols cannot use static
text.

Altering Symbols and Graphic Attributes

The Shared Gab

 Shared GABS:

 Are named and saved sets of a graphic attribute bundle (GAB)


that can be applied to primitives

 Allow for uniform and consistent application of graphic attributes


to primitives and elements in any editor

 Reduces maintenance, as one change will affect all usages


Shared GAB = BLUE_FILL
Fill the primitive
Fill pattern is solid
Color is Blue

Altering Symbols and Graphic Attributes

Creating a Shared Gab


 Give focus to the ESET
 New>Shared Gab
 Name the GAB and define your attributes

2
4

Altering Symbols and Graphic Attributes

Shared and Private GABs

 When primitives are defined, the Default GAB is automatically


applied. It can be a shared or a private GAB.
 The graphic attributes of primitives are modified by applying a
Shared GAB (recommended) or by modifying the private
GAB.

- OR -

Define

Altering Symbols and Graphic Attributes

Modify

The Symbol

 One or more primitives used to represent an object used in


many displays
 Cannot include text, but may contain a background image
 Can be rotated
 Can be scaled once they are placed on pictures

Altering Symbols and Graphic Attributes

Creating a Symbol

 Select a primitive
 Position and size primitive
 Apply a shared or a private GAB

Altering Symbols and Graphic Attributes

Background Images-1

 A display builder may


specify an image to appear
as a backdrop in:

 Oneline, tabular displays


 Pictures
 Symbols
 Background Images can be
scaled as follows:

One-line display with a


background image

none(normal)

tile
background

Altering Symbols and Graphic Attributes

center

view

Background Images-2

 To apply a background
image, do the following:

1. Select the Background


Image tab

2. Check Apply
Background Image

3. Select an Image Scaling


4. Click the Browse
button to select the image
file.

5. Click the Apply button.


6. Click OK.

Altering Symbols and Graphic Attributes

The FG Display Builder


supports the following file
formats as images:
bmp jpeg ico (icon)

Background Images-3

 Images can be compiled into the display OR the display can


be linked to an image in a specified directory.

 Displays containing compiled image files will have a larger file


size and will take longer to load.

 Displays that reference external image files should not incur


noticeable performance degradation during display call-up.

10

Altering Symbols and Graphic Attributes

10

Summary

1. Primitives are graphic objects and static text that are drawn
directly on a scratch pad.
2. When primitives are defined, the Default GAB is
automatically defined, which can be a shared GAB or a
private GAB.
3. The Graphic Attribute Bundle is used to name and save a set
of graphic attributes that can be applied to primitives.
4. Shared GABs are highly recommended over Private GABs
for display call-up efficiency and ease of maintenance.
5. Symbols are elements that are composed solely of drawn
primitives, which represent some common object on displays.
6. Name two types of files that can be used as backdrops for
displays:
BMP, JPEG, ICO
11

Altering Symbols and Graphic Attributes

11

Introduction to Displays
Using Tabular Layers
Topics
 Overview of Tabular Layers
 The Role of Picgroups
 Repeat Placement
 Hierarchical Placement
 Indexed Placement
 Multidimensional Placement
 Link List Placement
NOTE: This course will focus on the repeat, hierarchical, and indexed
tabular types.

Overview of Tabular Layers


 Tabular layers are displays whose appearance is driven by
data in application databases.
 Tabular layers consist of groupings of pictures and other
elements called picgroups.
 Each picgroup is associated with a specific record-type in an
application database.

Introduction to Tabular Layers

The Role of Picgroups


 A picgroup is associated with a specific record-type (called
the primary record-type) by specifying one of its pictures as
the primary picture.
 The primary record-type is used by e-terrabrowser to drive
the multiple occurrences of the picgroup in the display.

Database

Introduction to Tabular Layers

Picgroup Editor

Tabular Definition Dialog Box

Tabular Layer Types


 There are five types of tabular layers:

 Repeat contains one picgroup.


 Hierarchical contains one or more picgroups.
 Indexed - contains one or more picgroups.
 Multidimensional - contains one picgroup.
 Link List - contains one or more picgroups.

Introduction to Tabular Layers

Repeat Placement
 Repeat Placement - Automatically displays a set of
occurrences of a single record-type.
 Contains only one picgroup.

A list of substations is an example of a repeat placement display.


5

Introduction to Tabular Layers

Hierarchical Placement
 Hierarchical Placement - Automatically displays all or part of
a record hierarchy.
 Contains one or more picgroups.

A station tabular display is an example of a hierarchical placement.


6

Introduction to Tabular Layers

Indexed Placement
 Indexed Placement- displays a query based upon a defined
set of parameters and a data structure supported by the
WebFG data server.

 Presently, the supported structures all are related to alarms,


events, and SCADA exception lists.

 Contains one or more picgroups.

What the
operators see is
based upon their
area permissions.
Alarm displays are indexed placement displays.
7

Introduction to Tabular Layers

Multidimensional Placement
 Multidimensional Placement - Displays one or two
dimensions of a 2-dimensional or 3-dimensional array.
 Contains one picgroup.
C
C
B
C

A(1) B(1) C(1) A

Multi-D
Picture

A(1)_B(1)_C(1)

A(1)_B(2)_C(1)
B

:
:

Permit and Load Forecast displays are multidimensional placement

Introduction to Tabular Layers

Link List Placement


 Link List Placement - Displays record occurrences in any
customized order based upon a backward and forward pointer
list.
 Contains one or more picgroups.

Exception Topology display is an example of a link list placement


9

Introduction to Tabular Layers

Defining a Picgroup (1 of 2)

Give focus to the DSET. Select


the Picgroups tab to list existing
picgoups that you wish to modify.

OR

Give focus to your DSET.


Select New>Picgroup

10

Introduction to Tabular Layers

10

Defining a Picgroup (2 of 2)

Select and
Place elements

Select and
Attach elements

11

Introduction to Tabular Layers

11

Specifying the Overall Attributes of Picgroups

Define primary picture


Select DICE attributes
Define margins
Define picgroup size

12

Introduction to Tabular Layers

12

Defining Tabular Type


 Tabular layer types are defined from the Tabular Definition
tab of the Tabular Layer Properties form.

13

Introduction to Tabular Layers

13

Placing a Constant Picgroup


 Constant picgroups are
used as headers or titles for
the display.
 A constant picgoup is
always visible in the
viewport, regardless of how
the user scrolls through the
display.

There can be
only ONE
constant
picgroup per
layer.

14

Introduction to Tabular Layers

14

Tabular Layer Properties


 Page Breaks - Divides a tabular display or layer into sections,
based on the total number of primary record-types of
picgroups.

15

Introduction to Tabular Layers

15

Placing Data-Oriented Picgroups


 Depending upon the type of tabular selected, hierarchical, link
list, and indexed placements can have multiple picgroups.
 Repeat and multidimensional placements have only one
picgroup.

16

Introduction to Tabular Layers

16

Specifying the Attributes of Tabular Displays


 Name and Title
 Call Up/Down Commands
 Refresh Rate
 Default Zoom Factor
 Other Definable Attributes:

 Applications (required)
 Viewport
 Menus
 Background
 Permission Test
 Background image

17

Introduction to Tabular Layers

17

Summary
1. A tabular layer consists of elements called _________, which
are groupings of _______.
2. Picgroups consist of at least one picture, called the ______
picture, and any number of other elements.
3. A data-oriented picgroup is associated with a specific _______ in an application database.
4. Tabular layers are defined as:
__________Placement, i.e.. SUBSTN_TABULAR display (SCADA)
__________Placement, i.e.. SUBSTN_LIST display (SCADA)
__________Placement, i.e.. MODE_APPLICATIONS display
(PERMIT)
__________Placement, i.e..
ALARM_WEBFG_ALL_LATEST_FIRST display (ALARM)
__________Placement, i.e.. EXCEPTION_TOPOLOGY display
(SCADA)
18

Introduction to Tabular Layers

18

Tabular Layer Driving Data

Topics
 What is Driving Data?
 How WebFG Process a Tabular Display
 Specifying the First and Last Driving Record
 Displaying a Single Subtree in a Hierarchical Layer

What is Driving Data?


 Driving data is the information that e-terrabrowser requires to
paint the tabular layer:

 The record-types and databases are specified by pictures placed in


the picgroups. The order is determined by the record list, or indexed
data structures attained by the WebFG server.

 The definition of the picture specifies:




What data from the record-type to display

What forms (i.e., formatted fields) and associated elements (i.e.,


CAMs, CTs, etc.)

 The definition of the spatial relationships between picgroups


determines How repeating instances of the data should be spaced,
blocked, and oriented,

Tabular Layer Driving Data

Default Driving Data


 The default sequence of primary record-types is their order in
the database, according to the record list.
 The default driving data shows all occurrences of the primary
record-types.

Tabular Layer Driving Data

How Web-FG Processes a Tabular Display


 One occurrence of the
driving record is processed
at a time.
For each occurrence:

SUBSTN(1) = TEST_RTU
DEVTYP(1) = RTU
DEVICE(1) = STA_REM_LOC
DEVICE(2) = VOLTAGE_REF
DEVTYP(2) = STN

1. One and only one picgroup is


painted.

2. The current occurrence of


the primary record-type is
painted according to the
primary picture definition.

 The next occurrence of the


driving record is
processed.

Tabular Layer Driving Data

Specifying Start and End Records (1 of 2)


 First and last records can
be specified by:

 First/Last default - Displays


all record occurrences.

 Literal - Where a user must


provide literal subscripts for
beginning and end of
record occurrences.

 Composite Key Where a


user must provide a
composite key for the
system to find starting and
ending occurrences at runtime.

Tabular Layer Driving Data

Specifying Start and End Records (2 of 2)

 Field/Global Field/Field
with Composite Key
Where a user must specify
database fields containing
subscript values which
specify first or last record
occurrences.

Global field uses the fields from the ITEMS record.


6

Tabular Layer Driving Data

Displaying a Single Subtree


on a Hierarchical Layer
 Using a Composite Key

 The CompositeKey function of the hierarchical dialog box can


also be used to limit the display of hierarchical data to a single
occurrence and its subtree.

Tabular Layer Driving Data

Summary
1. ____ _____is that information needed by Web-FG to paint a
tabular layer.
2. Default driving data is established by the primary ______of
picgroups and the database record list.
3. A ________ _____ can be used to limit the display of
hierarchical data to a single occurrence and its subtree.
4. The _____ field should be selected if using subscript fields
from the ITEMS record.

Tabular Layer Driving Data

Defining Tabular Layout


Topics

 Tabular Simulation Data


 Tabular Layout Form
 Types of Spatial Relationships
 Page Header, Page Ender, Free Record
 Locking in X and Y

Defining Tabular Layers

Tabular Simulation Data (1 of 2)


 The Tabular Simulation Data dialog box allows the Builder to
simulate the order and quantity of occurrences of picgroups
that are expected to be seen on the run-time display.

Defining Tabular Layers

Tabular Simulation Data (2 of 2)


 By changing the order and quantity of picgroups, the builder
can see and modify the spatial relationship parameters for the
layer.

Defining Tabular Layers

The Types of Spatial Relationships

SPACING
The distance between
picgroups in the
display.

Defining Tabular Layers

BLOCKING
How picgroups are
grouped as they
repeat in the display.

ORIENTATION
The direction that
picgroups repeat in
the display.

Types of Spacing
 Spacing needs to be set as follows:

 Top Left Offset is the starting point of the picgroup.


 Instances of blocks of the same picgroup is called Between Block
Offset.

 Instances of identical picgroups within a block of picgroups is


called Within Block Offset.

Block Count = 1

Defining Tabular Layers

Picgroup/Block Count = 2

Between and Within Block Offset


 Block offset can be spaced between and/or within as in the
example below (changing Y and holding X constant):

Defining Tabular Layers

Tabular Layout Form


Tabular Layout can be set:
Display > Tabular Layout ...
 Picgroups can be blocked
by defining the block count.
 Spacing can be set by
setting the X and Y offsets
and defining the picgroups
glue direction.
 The glue buttons are used
to set the orientation of the
picgroups

Defining Tabular Layers

Types of Orientation
 Glue buttons can be used to specify the repeat orientation of a
picgroup by selecting the Down,
Right,
or Both
(Diagonal) buttons.

Down

Defining Tabular Layers

Right

Both

Picgroup Relationships and Blocking


 Picgroups for hierarchical or link list layers can be defined in a
sibling or parent-child relationship in the Tabular Layer
Properties form.

Sibling

Defining Tabular Layers

Parent-Child

Default Spatial Relationships


 The default spatial
relationships are:

 Spacing - The space


between the picgroups is
set at zero (0).

 Blocking - The block count


is one (each copy is a
block of one).

 Orientation - The picgroups


will repeat down.

10

Defining Tabular Layers

10

Page Header, Ender, Free Record


1. Page Header: Only one
picgroup per page
appearing at beginning of
data
2. Page Ender: Only one
picgroup per page
appearing at end of data
3. Free Record: This picgroup
can appear anywhere in the
data stream. This attribute
is only used with record
types that have the flag set
as FREE.

11

Defining Tabular Layers





11

Locking in X and Y
 Items within picgroups are
locked in X and Y using the
items Placement Properties
form from the picgroup
editor.
 Entire picgroups can also
be locked in X and Y.
 All placements on a layer
can be held constant using
the Tabular Definition tab
of the Tabular Layer
Properties form.

12

Defining Tabular Layers

12

Locking in X and Y - The "L" Rule


 The picgroups, items within picgroups, and "held constant"
layers that are locked in X and Y must be adjacent to the top
and left edges of the resulting display (or page) forming a
rotated "L."
 A display can have all three types of locked items, provided
the "L" rule is not violated.

13

Defining Tabular Layers

13

Summary
1. The Tabular Layer ________ Data form allows the user to
see what the display will look like without going online.
2. The _____ _______ form is where the spatial relationships
between picgroups are defined.
3. The top left offset is the _______ point of the picgroup.
4. ______ ______ can be used to display only one picgroup per
page, appearing at the beginning of the data.
5. Locked in _____ or ____ can be used to keep the picgroup
from scrolling vertically or horizontally, respectively.

14

Defining Tabular Layers

14

Indexed Placement Displays

Topics
 Defining an Indexed Display
 Three Types of Indexes Supported
 Defining an Indexed Layer
 Defining a Query

Defining an Indexed Display


 An indexed display is used to control how partially
acknowledged and deleted alarms appear based on area of
responsibility.
 An index is a data structure supported by the WebFG data
server. Sorting and filtering by area of responsibility is done
by the WebFG Data server. This eliminates the need to use
CAMs to do permission tests.
 Three indexes are currently supported:
INDEX TYPE

DATABASE

RECORD(S)

ALARMS

ALARMLST,
ALARM

ALMQ

EVENTS

ALARMLST,
ALARM

SYSACT

SCADA_EXCEPTIONS

SCADAMOM

ANALOG, POINT

Indexed Placement Displays

Types of Indexed Displays


 Each index has a different purpose:

 EVENTS are changes to the systems state that are detected by


a particular application (ie. SCADA) and forwarded to the ALARM
server.

 ALARMS are visual and/or audible indications that an event


occurred. An alarm is an event that requires operator
acknowledgement and/or deletion.

 SCADA_EXCEPTIONS are measurements (point or analog) in


an abnormal or unacknowledged alarm state. A point or analog
that goes abnormal and then returns to normal will stay on the
exception list until the operator has acknowledged the alarm.


If an analog or point goes abnormal and is acknowledged, then it


will stay on the exception list until it returns to normal.

Indexed Placement Displays

Defining an Indexed Layer


 To define an indexed layer, select Layers and Driving Data
from the menu or click the
icon.
1. Enter the proper database according to the type of index.
2. Select Indexed Placement from the Tabular Definition tab.

Indexed Placement Displays

Defining Indexed Layers


 All indexed layers contain data from a query resolved by the
WebFG data server. Defining indexed layers requires:
1. Selecting the type of index.
2. Entering a parameter string for sorting and filtering (query).
3. Selecting the picgroups associated with the index.

Indexed Placement Displays

Defining a Query
 Each index type has its own query syntax:

INDEX TYPE

SYNTAX

EXAMPLE

ALARMS

<sortOrder> [filter
filterValues]

unacked_first_desc_time
priority_location
1,2,3,4,5,6,7,8
%key201%

EVENTS

<sortOrder> [start time]


[filter filterValues]

desc_time ALL category


%key4%

SCADA_EXC
EPTIONS

<sortOrder>
<recordType> [filter
filterValues]

desc_time analog
location %key201%

NOTE: The list of parameter values for each index is too


long to include in this slide. Reference the lab for more
detailed information or see Alarm Users Guide, chapter 7.
6

Indexed Placement Displays

Defining an Indexed Layer


 An example of a ALARM indexed display based upon a
category query:

Indexed Placement Displays

Summary
1. Name the three types of indexes that are currently supported:
INDEX
ALARMS

DATABASE

RECORDS

ALARMLST

EVENTS

SYSACT

SCADA_EXCEPT SCADAMOM
ION

2. All indexes are automatically filtered by area of _________.


3. Each index has a different ________ string syntax.

Indexed Placement Displays

You might also like