SCADA Software
Contents
Architecture & Software Architecture
Functions Sub-systems
Operator Interface
System Management
by Add-on Systems
Anil Sinha, Consultant/ Advisor SCADA Functions
Operator Interface
Other Functions
Notice
Some of the diagrams and the text have
been taken from the World-wide-web, purely
for illustrative purposes. These remain the
copyright/ property of their respective owners
SOFTWARE ARCHITECTURE
1
SCADA Software Architecture SCADA Software Architecture
The SCADA System is generally an Application
Level Set of Software modules or programs Field
Exception Handling
Processing Control
It has the following major Components: Field Interface
SCADA System
• Database Data Processing/ Event/ Alarm Control/ Command
• Field Interface
• Data Processing Function/ Alarm-Event Function
• Control/ Command Function Database Management
• Display Function/ Report Function
• Exception Handling Operator Interface/ Reports Configuration Management
• Configuration Management
• Processing/ Flow Control
Human Interface
Field Interface
Takes care of the communication towards the Process
Main partners are:
• PLC
• RTU
• DCS
• IED
Is responsible for fulfilment of the Process or Protocol in use (to the extent,
it is not handled by the Hardware Interface, i.e. Layer 3 and above)
SUBSYSTEMS Keeps track of cyclic transmissions, polling, dead or alive
Sends out commands and awaits acknowledgement
2
Data Processing Alarm/ Event Processing
Checks the incoming status
Filters incoming data for valid information General Events are recorded in Database and are also included in the Event
List
Identifies individual data and sends it to the Database for storage
Events are classified under various headings
Flags data for its current status, including time-stamp
• Process
Processes data • Operator
• System
• Conversion
• Communication
• Limit Checks
• Arithmetic/ Logic operations Alarms are recorded in Database and also in the Alarm List
• Gradient check
• Comparison with previous status
Alarms may trigger further activities, e.g. Sequence of Events
Any event or Alarm detected is forwarded to the Alarm/ Event Process
Alarms await operator acknowledgement
Database Management Control/ Commands
Control actions may be initiated by:
Database stores all the relevant data in an ordered fashion
• A trigger event
• Process Data • An interval alarm
• Operator created Data • A schedule
• Results of Arithmetic/ Logic Processing • Operator command
• Communication Status The Command process does an initial ‘Check-before-Execute’ action with
• Configuration data the available data
Enables structured retrieval of stored data
It will check the peripheral conditions defined for the Command
Provides strategies for:
After initiating the command, the process waits for the ‘Execute
• Data Security and Authentication Acknowledge’ from the field equipment
• Data Reliability
• Data Backup
The command is declared successful with all conditions fulfilled
3
Report Subsystem
Report generation is initiated by:
• A schedule
• An event trigger
• Operator command
When required, the report process picks up the predefined template created/
configured by the user and fills in the values of the therein included variables
The end result is the desired report
As per configuration/ command, the report may be: OPERATOR INTERFACE
• Printed Locally/ Printed remotely/ Printed to File
• Transmitted over LAN/ WAN/ Published on Web/ Sent as Email
Operator Interface Operator Interface
The Operator Interface Process takes care of the It coordinates with the Processing Control for
interaction between the rest of the SCADA System Administrative actions
processes and the Human Operator On Operator’s request (and sometimes on an alarm)
It allows bi-directional communication with the Operator the associated display template is fetched from the
In a large number of cases, it is implemented as database and completed with the associated variables,
Server-(Thin) Client system in line with the pre-definition and sent out for display
Its major interface is the Database to retrieve The operator’s commands for Display zooming,
information for display panning, etc, are carried out within the defined limits
It also interfaces to the Alarm Process for urgent The Operator’s commands relating to the information
notifications on display, e.g. Field command, Manual entry,
Blocking, Resetting, etc, are passed on to the
It interfaces with the Command Subsystem to initiate
respective subsystem for compliance
Field Commands and compliance
4
Operator Interface Operator Interface
Operator Commands not related to the current The Operator Subsystem provides the facility for
display, e.g. Reports, Authentication, Master-Slave the Operator to interact with other (non-SCADA
interchange, etc are carried out system) processes by diverting the additional
The Operator Subsystem provides the facility for commands, after authentication, to the pre-defined
the Operator to interact with other (non-SCADA external process, provided both have a bi-
system) processes by diverting the additional directional acceptable common interface
commands, after authentication, to the pre-defined Normally the Processing Control is a party to such
external process, provided both have a bi- exchanges, as is the Exception Handling Process
directional acceptable common interface
Normally the Processing Control is a party to such
exchanges, as is the Exception Handling Process
Processing Control
This is the Thread that binds the full SCADA System
Software together
This process Supervises the interaction amongst the various
subsystems, determines the priority of processing/ actions
It keeps track of the health and availability of every
component in the software system, both Software and
Hardware
It has the responsibility of ‘System Startup’, Synchronisation
among the Servers, Change of Master, Online change of
SYSTEM MANAGEMENT
Configuration, etc
In the case of external Processes being added to the
SCADA System, it takes care of the bi-directional interfacing
issues
5
Exception Handling Exception Handling
The Software Creator attempt to take care of all In case of an unmanageable error (exception!), the total
imaginable functional situations likely to be system would need to be brought to a defined state, and the
source of the error needs to be identified for future reference
encountered while operational and rectification
These conditions include: The Exception Handling subsystem is responsible for
Hardware Malfunction reporting any and all errors identified by any part of the
Communication Faults SCADA System (at times, also those identified by the add-on
Process Data Errors functions)
Database inconsistencies
The subsystem reports the error, in the first place, as an
Software Bugs
error event and adds it to the general event list or the system
Configuration Mistakes
error list
Some of these errors may be manageable, e.g. by In the case of manageable error, it initiates the pre-decided
Blocking a Data point, switching over to an action, as per configuration
alternate configuration, etc Else, it initiates a system shutdown, with system status
recording
Add-on Systems
In case the SCADA System is supplemented by additional
functions, these could be:
Stand-alone system
Integrated with the SCADA System
Stand-alone systems are independent, may only need
access rights to the database, and are not considered here
Integrated systems need to interface to the SCADA System
closely, acting as one of the subsystems
This may involve interfacing to Alarms, Commands,
ADD-ON SYSTEMS Database, Operator Interface, Exception Handling,
Processing Control, Reports, etc
6
SCADA Systems
Enable Monitoring and Supervision of a Process
Make available all relevant information at one point
‘Easy-to-Understand’ representation of the field information
Store relevant data for future processing and analysis
Process and sift inferences out of a large volume of data
Special processing functions by providing timely useful data
SCADA FUNCTIONS Simplify Operator interaction with the Process
Reduce the need for specialist operators
Functions of SCADA System Basic SCADA Tasks
Real Time Monitoring and control
Input/ Output • Data Acquisition/ Commands
Assist is meeting Regulatory Requirements
Early restoration of production in cases of • Acknowledgement
abnormality Alarm/ Event • Including Events
Improve quality
• On screen presentation of
Planning of the future developments for growth Displays Process Data
Keep the Process in Stable Operation
• Scheduled/ Event-driven/ On
Reports Demand
Provide information for Analysis/ Reporting
7
Basic SCADA Task: Input/ Output Basic SCADA Task: Alarm/ Event
Data Acquisition Input from Data Acquisition
Communication/ Protocol Management Processing
Identification of Data and Data Type Hardware Alarms (e.g., Temperature High)
Transfer of Data to Processing Function Processed Alarms
Transfer of Data to Data Base Digital Inputs (e.g., CB Trip, Failed Commands)
Analog Inputs (e.g., Limit Checks, Gradient)
Command Transmission
Communication/ Protocol Management Include all Events in Event List
Start Timer for Command Completion All Alarms are Events
Transfer Command to Data Base Include all Alarms in Alarm List
Alarm List needs acknowledgement
Basic SCADA Task: Displays Example of an SLD
Presentation of SCADA Information on HMI
Types of Displays:
Single Line Diagrams (SLD)
Event List
Alarm List (with acknowledgement, list
compression)
Trends (x-t, x-y)
On-screen Reports
Special Displays for EMS
8
Example of Trend Display Basic SCADA Task: Reports
Scheduled/ Event-driven/ On-demand
Primarily, meant for Printing, Local or
Remote
Usually, width limited by paper size, no
specific length restriction
May include Text and graphics
Pre-formatted; Actual Data included at the
time of creation of the report
Any Data Base content may be included
Example of a Report SCADA Processing
Conversion to • Reversing the effect of scaling
physical quantities
• Up to four limits are monitored, usually as
Limit checks one warning pair & one alarm pair
• Limit monitoring on the Rate of Change of a
Gradient check value
Summations • Adding multiple values together
Averaging over • Finding the average of multiple values at
data points one time-point
9
SCADA Processing SCADA Processing
Averaging over • Average of the values of one monitored point in • Server-level metering
time a sliding time window Count processing • Integration of ‘units’ to get ‘total quantity’
Accumulation • Integration of the values of one monitored point,
over time normally in a defined interval Command Output
• Check-before-execute function; Result
for Process monitoring
operation
• Replace the suspected/ missing acquired field
Manual entry data
Calculation and • Automation of control functions; Execution of
Blocking/ de- logical tasks multiple steps
• Deactivate/ re-activate acquisition/ control of
blocking field data from one or more points
• Data Interface to Higher Functions
Active/ not active • Configure additions to the database, but activate
Facility for SCADA • Trending based on Past Data
(not updated) it later when field data becomes available data analysis • Interface to Corporate Systems
SCADA Processing
Facility for
• e.g., Finding data trends
SCADA data • e.g., Relating past data to present
analysis
Display • Real Time Display
• Event List/ Alarm List/ Acknowledgement
Subsystem • Trend/ Graphic Display
(HMI) • Message Pad
Reports • Periodic Reports
OPERATOR INTERFACE
• On Demand Reports
Subsystem
10
HMI: Operators’ Interface HMI: Operators’ Interface
SCADA is primarily a Supervisory Control System Access Protection
The Control Loop is closed over the Operator
Multi-level Access Schemes
The Operators’ Interface is all about informing the Operator with Updated
and Situation- sensitive Relevant subset of the available information
• Only Monitoring
Presentation is designed to bring out the ‘abnormal’ in the Process Status, • Monitoring and Limited Control
to reduce the Information overload on the Operator • Monitoring and Full Control
• Alarms is one mechanism for this • Initiating Pre-configured Reports
• Full Data Access and new reports creation
The HMI uses various tricks to highlight a new Alarm
• Administrative access
• Audible Gong, Flashing Display, Colour schemes, Pop-ups, Remote annunciation, etc. • Data Copying permit
• Etc.
HMI: Operators’ Interface
Main displays are the Process/ Plant Diagrams
All diagrams have Static background image & Dynamic areas
The Dynamic parts depict the current information from the process
When a diagram is called for display, the dynamic areas are updated with the
specified current plant information, at times colour coded, to present a
composite diagram
The process information may be directly related to the Acquired Plant Data or
some information derived from one or more Plant Information/s or even picked
up from the stored past data
OTHER FUNCTIONS
The set of diagrams are organised in an inverted tree structure with convenient
links to related diagrams, for easy navigation
11
HMI: Events HMI: Alarm
Alarms are a subset of Events
Events are each and every happening in the
Process acquired through the system, or Alarms signify urgency in response by the Operator
created by the operators
• Events are logged in a list in a chronological order
• The Event List has the facility of search on different criteria Alarms are included in the Event List, but also in a
specific List of active alarms
• Either the latest Alarm or the latest unacknowledged alarm
is shown on the top of the Operator’s screen, irrespective of
any display (one or more)
Alarms Acknowledgement Report Subsystem
An Alarm denotes urgency to respond A very significant function of Managing a Process is Reports
It is important to bring the Alarm to the Operator’s
notice urgently on occurrence Reports are needed for:
• Operational Records
SCADA System uses Audible and Visible features
available in the system to highlight the occurrence • Stake-holders’ information
Operational Analysis
The highlighting continues till the operator
acknowledges having noticed the alarm • Managerial Information
• Information to Corporate Management
‘Acknowledgement’ does not mean that the alarm
condition no longer exists • Regulatory Authorities
• Grid Authorities
On acknowledgement, the highlighting is removed, • Distribution of information to partners, e.g. Maintenance
but the Alarm remains till the status changes • others
12
Reports Subsystem Training Facility
Reports are mostly pre-decided and pre-configured in the system
New Operators have to be trained for the job
The configured reports have a static background with formatting, with
positions defined for variable information
In the earlier days, a person needed years of
At the time of report generation, the variable information is filled-in experience to qualify as an operator
from the SCADA Database
Such reports may be printed at: In a SCADA System, the Operator is largely assisted
• Preset time and/ or date
by the Computer System
• Preset event
• On demand, by Operators’ command
Any modern SCADA System provides for configuration of new reports
This leads us to a computer-based Operator’s
‘On-the-Fly’ Training System
Training Facility
This system looks like an HMI, with the control part
disabled, and perhaps a SW-based simulator added
The trainee operator can play with the real-Time
Plant Data without the danger of any mal-operation
CONFIGURATION
The Trainee gains confidence faster
13
SCADA Configuration SCADA Configuration
As in any operational system in use, even the The SCADA System provides additional
SCADA System has to keep pace with the functions to edit the content of configuration
changes files
The Configuration feature of the SCADA System
takes care of this part
The change may be undertaken via
‘Engineering Station’
A set of software files store the entire configuration
information of various plant elements, e.g.: The changed configuration is available
Units immediately, thereafter
Sensors
Automation System
Care is required while making changes, so
Communication Links as not to loose the old information till the new
Data relationships one is tested
Logics
Diagrams/ Reports
Etc.
SCADA Configuration
There are vender-specific schemes for this
The configuration system normally
provides the facility to store externally or to
print the current configuration for own
records and for disaster management
The Vender may also provide software
switches for the individual SCADA
functions, as part of the configuration SCADA SCREEN
scheme
14
Example: Control Room SCADA Display
An SLD example SCADA Display
15
Example of a Panel Display Example of annunciation
Thank you
16