SlideShare a Scribd company logo
1 of 43
Download to read offline
[1]
An Industrial training report
on
Study of “SCADA” System and “PLC”
Submitted by
Sonu Kumar Yadav
B. tech. IV Year (VII Semester)
Electrical Engineering
DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING
GOVIND BALLABH PANT ENGINEERING COLLEGE
PAURI GARHWAL (UTTARAKHAND) - 246194
[2]
Acknowledgement
I would like to thank SOFCON INDIA PVT. LIMITED, NOIDA for providing me exposure to
the whole Scada & PLCs Systeam. I’d also like to thank Er. Rajendra Prasad (E.E.), and Er.
Rajendra Patel (A.E.), for their enduring support and guidance throughout the training. I am
very grateful to the whole Control and Instrumentation Department for their support and guidance.
I am also very thankful to the workers and employees near the machineries and the library in
charge for their support to my training.
[3]
CERTIFICATE
This training report is a genuine works by Mr. SonuKumar Yadav, B-Tech 3rd
yr, Electrical
Engg. The report was made under my supervision, and I express my delight on it successful
completion. I am also very happy to have offered her guidance whenever it was required.
I wish her success in all her future endeavors.
(Er. Rajendra Prasad)
Executive Engineer
C&I MD – I
‘B’ TPS, Anpara
[4]
Preface
An industrial SCADA & PLCs system is used for the development of the controls of machinery.
This paper describes the SCADA & PLCs systems in terms of their architecture, their interface to
the process hardware, the functionality and the application development facilities they provide.
Some attention is also paid to the industrial standards to which they abide their planned evolution
as well as the potential benefits of their use.
SONU KUMAR YADAV
B. TECH, Final year (EE)
ROLL NO. 06090105053
CONTENTS
Title………………………………………………………….……
Page no.
Chapter 1 Introduction of “
PLC”……………………………………………...….…06
Chapter 2 Programming with PLC
[5]
…………………………………………………..16
Chapter 3 Programming for Start/Stop of
Motor……………………………………..27
Chapter 4
SCADA……………………………………………………………………32
Chapter 5 Application & Development In
SCADA……………………………….....39
Chapter 6
Reference…………………………………………………………………..47
Chapter 7
Conclusion………………………………………………………………….48
CHAPTER 1
1.Introduction
1.1 PLC An Overview
A Programmable Logic Controller, PLC, or Programmable Controller is a digital computer used
for automation of industrial processes, such as control of machinery on factory assembly lines.
Unlike general-purpose computers, the PLC is designed for multiple inputs and output
arrangements, extended temperature ranges, immunity to electrical noise, and resistance to
vibration and impact. Programs to control machine operation are typically stored in batterybacked
or non-volatile memory. A PLC is an example of a real time system since output results must be
[6]
produced in response to input conditions within a bounded time, otherwise unintended operation
will result.
PLC and Programmable Logic Controller are registered trademarks of the Allen-Bradley
Company.
SCADA is Widely used in industry for Supervisory Control and Data Acquisition of industrial
processes, SCADA systems are now also penetrating the experimental physics laboratories for the
controls of ancillary systems such as cooling, ventilation, power distribution, etc. More recently
they were also applied for the controls of smaller size particle detectors such as the L3 moon
detector and the NA48 experiment, to name just two examples at CERN.
SCADA systems have made substantial progress over the recent years in terms of functionality,
scalability, performance and openness such that they are an alternative to in house development
even for very demanding and complex control systems as those of physics experiments.
.
[7]
1.2.Features of PLCs
[8]
Photograph showing several input and output modules of a single AllenBradley
PLC.
With each module having sixteen "points" of either input or output, this PLC has the ability to
monitor and control dozens of devices. Fit into a control cabinet, a PLC takes up little room,
especially considering the equivalent space that would be needed by electromechanical relays to
perform the same functions:
The main difference from other computers is that PLC are armored for severe condition (dust,
moisture, heat, cold, etc) and has the facility for extensive input/output (I/O) arrangements. These
connect the PLC to sensors and actuators. PLCs read limit switches, analog process variables (such
as temperature and pressure), and the positions of complex positioning systems. Some even use
machine vision. On the actuator side, PLCs operate electric motors, pneumatic or hydraulic
cylinders, magnetic relays or solenoids, or analog outputs. The input/output arrangements may be
[9]
built into a simple PLC, or the PLC may have external I/O modules attached to a computer network
that plugs into the PLC.
Many of the earliest PLCs expressed all decision making logic in simple ladder logic which
appeared similar to electrical schematic diagrams. The electricians were quite able to trace out
circuit problems with schematic diagrams using ladder logic. This program notation was chosen
to reduce training demands for the existing technicians. Other early PLCs used a form of instruction
list programming, based on a stack-based logic solver.
The functionality of the PLC has evolved over the years to include sequential relay control, motion
control, process control, distributed control systems and networking. The data handling, storage,
processing power and communication capabilities of some modern PLCs are approximately
equivalent to desktop computers.
[10]
1.3 Wiring In a PLC
• Block diagram of a PLC
1.4 Generation of Input Signal
Inside the PLC housing, connected between each input terminal and the Common
terminal, is an opto-isolator device (Light-Emitting Diode) that provides an
electrically isolated "high" Logic signal to the computer's circuitry (a photo-
transistor interprets the LED's light) when there is 120 VAC power applied
between the respective input terminal and the Common terminal. An indicating
LED on the front panel of the PLC gives visual indication of an "energized" input
:
[11]
Diagram Showing Energized input terminal X1
1.5 Generation of Output Signal
Output signals are generated by the PLC's computer circuitry activating a
switching device (transistor, TRIAC, or even an electromechanical relay),
connecting the "Source" terminal to any of the "Y-" labeled output terminals. The
"Source" terminal, correspondingly, is usually connected to the L1 side of the 120
VAC power source. As with each input, an indicating LED on the front panel of
the PLC gives visual indication of an "energized" output
In this way, the PLC is able to interface with real-world devices such as switches
and solenoids.
The actual logic of the control system is established inside the PLC by means of
a computer program. This program dictates which output gets energized under
which input conditions. Although the program itself appears to be a ladder logic
[12]
diagram, with switch and relay symbols, there are no actual switch contacts or
relay coils operating inside the PLC to create the logical relationships between
input and output. These are imaginary contacts and coils, if you will. The program
is entered and viewed via a personal computer connected to the PLC's
programming port.
Diagram Showing Energized Output Y1
1.6 PLC compared with other control systems
PLCs are well-adapted to a certain range of automation tasks. These are typically industrial processes
in manufacturing where the cost of developing and maintaining the automation system is high relative
to the total cost of the automation, and where changes to the system would be expected during its
operational life. PLCs contain input and output devices compatible with industrial pilot devices and
controls; little electrical design is required, and the design problem centers on expressing the desired
sequence of operations in ladder logic (or function chart) notation. PLC applications are typically
highly customized systems so the cost of a packaged PLC is low compared to the cost of a specific
[13]
custom-built controller design. For high volume or very simple fixed automation tasks, different
techniques are used.
A microcontroller-based design would be appropriate where hundreds or thousands of units will be
produced and so the development cost (design of power supplies and input/output hardware) can be
spread over many sales, and where the end-user would not need to alter the control. Automotive
applications are an example; millions of units are built each year, and very few end-users alter the
programming of these controllers. However, some specialty vehicles such as transit busses
economically use PLCs instead of custom-designed controls, because the volumes are low and the
development cost would be uneconomic.
PLCs may include logic for single-variable feedback analog control loop, a "proportional, integral,
derivative" or "PID controller." A PID loop could be used to control the temperature of a
manufacturing process, for example. Historically PLCs were usually configured with only a few
analog control loops; where processes required hundreds or thousands of loops, a distributed control
system (DCS) would instead be used. However, as PLCs have become more powerful, the boundary
between DCS and PLC applications has become less clear.
[14]
1.7 Digital and analog signals
Digital or discrete signals behave as binary switches, yielding simply an On or Off signal (1 or 0,
True or False, respectively). Pushbuttons, limit switches, and photoelectric sensors are examples
of devices providing a discrete signal. Discrete signals are sent using either voltage or current,
where a specific range is designated as On and another as Off. For example, a PLC might use 24
V DC I/O, with values above 22 V DC representing On, values below 2VDC representing Off, and
intermediate values undefined. Initially, PLCs had only discrete I/O.
Analog signals are like volume controls, with a range of values between zero and full-scale. These
are typically interpreted as integer values (counts) by the PLC, with various ranges of accuracy
depending on the device and the number of bits available to store the data. As PLCs typically use
16-bit signed binary processors, the integer values are limited between -32,768 and +32,767.
Pressure, temperature, flow, and weight are often represented by analog signals. Analog signals
can use voltage or current with a magnitude proportional to the value of the process signal. For
example, an analog 4-20 mA or 0 - 10 V input would be converted into an integer value of 0 -
32767.
Current inputs are less sensitive to electrical noise (i.e. from welders or electric motor starts) than
voltage inputs.
[15]
Example
As an example, say the facility needs to store water in a tank. The water is drawn from the tank by
another system, as needed, and our example system must manage the water level in the tank.
Using only digital signals, the PLC has two digital inputs from float switches (tank empty and tank
full). The PLC uses a digital output to open and close the inlet valve into the tank.
If both float switches are off (down) or only the 'tank empty' switch is on, the PLC will open the
valve to let more water in. Once the 'tank full' switch is on, the PLC will automatically shut the
inlet to stop the water from overflowing. If only the 'tank full' switch is on, something is wrong
because once the water reaches a float switch, the switch will stay on because it is floating, thus,
when both float switches are on, the tank is full. Two float switches are used to prevent a 'flutter'
(a ripple or a wave) condition where any water usage activates the pump for a very short time and
then deactivates for a short time, and so on, causing the system to wear out faster.
An analog system might use a load cell (scale) that weighs the tank, and an adjustable (throttling)
valve. The PLC could use a PID feedback loop to control the valve opening. The load cell is
connected to an analog input and the valve is connected to an analog output. This system fills the
tank faster when there is less water in the tank. If the water level drops rapidly, the valve can be
opened wide. If water is only dripping out of the tank, the valve adjusts to slowly drip water back
into the tank.
A real system might combine both approaches, using float switches and simple valves to prevent
spills, and a rate sensor and rate valve to optimize refill rates. Backup and maintenance methods
can make a real system very complicated.
[16]
[17]
CHAPTER 2
Programming with PLC
Early PLCs, up to the mid-1980s, were programmed using proprietary programming panels or
special-purpose programming terminals, which often had dedicated function keys representing the
various logical elements of PLC programs. Programs were stored on cassette tape cartridges.
Facilities for printing and documentation were very minimal due to lack of memory capacity. More
recently, PLC programs are typically written in a special application on a personal computer, then
downloaded by a direct-connection cable or over a network to the PLC. The very oldest PLCs used
non-volatile magnetic core memory but now the program is stored in the PLC either in battery-
backed-up RAM or some other non-volatile flash memory.
Early PLCs were designed to be used by electricians who would learn PLC programming on the
job. These PLCs were programmed in "ladder logic", which strongly resembles a schematic
diagram of relay logic. Modern PLCs can be programmed in a variety of ways, from ladder logic
to more traditional programming languages such as BASIC and C. Another method is State Logic,
a Very High Level Programming Language designed to program PLCs based on State Transition
Diagrams.
2.1 Ladder logic
Ladder logic is a method of drawing electrical logic schematics. It is now a graphical language
very popular for programming Programmable Logic Controllers (PLCs). It was originally invented
to describe logic made from relays. The name is based on the observation that programs in this
language resemble ladders, with two vertical "rails" and a series of horizontal "rungs" between
them.
A program in ladder logic, also called a ladder diagram, is similar to a schematic for a set of relay
circuits. An argument that aided the initial adoption of ladder logic was that a wide variety of
engineers and technicians would be able to understand and use it without much additional
[18]
[19]
training, because of the resemblance to familiar hardware systems. (This argument has become
less relevant given that most ladder logic programmers have a software background in more
conventional programming languages, and in practice implementations of ladder logic have
characteristics — such as sequential execution and support for control flow features — that make
the analogy to hardware somewhat imprecise.)
Ladder logic is widely used to program PLCs, where sequential control of a process or
manufacturing operation is required. Ladder logic is useful for simple but critical control systems,
or for reworking old hardwired relay circuits. As programmable logic controllers became more
sophisticated it has also been used in very complex automation systems.
Ladder logic can be thought of as a rule-based language, rather than a procedural language. A
"rung" in the ladder represents a rule. When implemented with relays and other electromechanical
devices, the various rules "execute" simultaneously and immediately. When implemented in a
programmable logic controller, the rules are typically executed sequentially by software, in a loop.
By executing the loop fast enough, typically many times per second, the effect of simultaneous
and immediate execution is obtained. In this way it is similar to other rulebased languages, like
spreadsheets or SQL. However, proper use of programmable controllers requires understanding
the limitations of the execution order of rungs.
Example of a simple ladder logic program
The language itself can be seen as a set of connections between logical checkers (relay contacts)
and actuators (coils). If a path can be traced between the left side of the rung and the output,
through asserted (true or "closed") contacts, the rung is true and the output coil storage bit is
asserted (1) or true. If no path can be traced, then the output is false (0) and the "coil" by analogy
to electromechanical relays is considered "de-energized". The analogy between logical
propositions and relay contact status is due to Claude Shannon.
Ladder logic has "contacts" that "make" or "break" "circuits" to control "coils." Each coil or contact
corresponds to the status of a single bit in the programmable controller's memory. Unlike
electromechanical relays, a ladder program can refer any number of times to the status of a single
bit, equivalent to a relay with an indefinitely large number of contacts.
[20]
So-called "contacts" may refer to inputs to the programmable controller from physical devices
such as pushbuttons and limit switches, or may represent the status of internal storage bits which
may be generated elsewhere in the program.
Each rung of ladder language typically has one coil at the far right. Some manufacturers may allow
more than one output coil on a rung.
--( )-- a regular coil, true when its rung is true
--()-- a "not" coil, false when its rung is true
--[ ]-- A regular contact, true when its coil is true (normally false)
--[]-- A "not" contact, false when its coil is true (normally true)
The "coil" (output of a rung) may represent a physical output which operates some device
connected to the programmable controller, or may represent an internal storage bit for use
elsewhere in the program.
2.3 Generally UsedInstructions & symbol For PLC Programming
Input Instruction
--[ ]-- This Instruction is Called IXC or Examine If Closed.
ie; If a NO switch is actuated then only this instruction will be true. If a NC switch is
actuated then this instruction will not be true and hence output will not be generated.
--[]-- This Instruction is Called IXO or Examine If Open
[21]
ie; If a NC switch is actuated then only this instruction will be true. If a NC switch is
actuated then this instruction will not be true and hence output will not be generated.
Output Instruction
--( )-- This Instruction Shows the States of Output.
ie; If any instruction either XIO or XIC is true then output will be high. Due to
high output a 24 volt signal is generated from PLC processor.
Rung
Rung is a simple line on which instruction are placed and logics are created
E.g.; ---------------------------------------------
Here is an example of what one rung in a ladder logic program might look like. In real life, there
may be hundreds or thousands of rungs.
For example
1. ----[ ]---------|--[ ]--|------( )--
X | Y | S
| |
|--[ ]--|
Z
The above realises the function: S = X AND (Y OR Z)
Typically, complex ladder logic is 'read' left to right and top to bottom. As each of the lines (or
rungs) are evaluated the output coil of a rung may feed into the next stage of the ladder as an input.
In a complex system there will be many "rungs" on a ladder, which are numbered in order of
evaluation.
1. ----[ ]-----------|---[ ]---|----( )--
[22]
X | Y | S
| |
|---[ ]---|
Z
2. ---- [ ]----[ ] -------------------( )--
S X T
2. T = S AND X where S is equivalent to #1. above
This represents a slightly more complex system for rung 2. After the first line has been evaluated,
the output coil (S) is fed into rung 2, which is then evaluated and the output coil T could be fed
into an output device (buzzer, light etc..) or into rung 3 on the ladder. (Note that the contact X on
the 2nd rung serves no useful purpose, as X is already a 'AND' function of S from the 1st rung.)
This system allows very complex logic designs to be broken down and evaluated.
1 more practical examples
Example-1
------[ ]--------------[ ]----------------O---
Key Switch 1 Key Switch 2 Door Motor
This circuit shows two key switches that security guards might use to activate an electric motor on
a bank vault door. When the normally open contacts of both switches close, electricity is able to
flow to the motor which opens the door. This is a logical AND.
[23]
Example-2
Often we have a little green "start" button to turn on a motor, and we want to turn it off with a big
red "Stop" button.
--+----[ ]--+----[]----( )---
| start | stop run
| |
+----[ ]--+
run
-------[ ]--------------( )--
run motor
2 Example With PLC
Consider the following circuit and PLC program:
-------[ ]--------------( )--
run motor
[24]
When the pushbutton switch is unactuated (unpressed), no power is sent to
the X1 input of the PLC. Following the program, which shows a normallyopen
X1 contact in series with a Y1 coil, no "power" will be sent to the Y1 coil. Thus,
the PLC's Y1 output remains de-energized, and the indicator lamp connected
to it remains dark.
If the pushbutton switch is pressed, however, power will be sent to the PLC's
X1 input. Any and all X1 contacts appearing in the program will assume the
actuated (non-normal) state, as though they were relay contacts actuated by
the energizing of a relay coil named "X1". In this case, energizing the X1 input
will cause the normally-open X1 contact will "close," sending "power" to the
Y1 coil. When the Y1coilof the program "energizes," the real Y1 output will
become energized, lighting up the lamp connected to it:
Lamp Glows when at Input Switch is Actuated
[25]
It must be understood that the X1 contact, Y1 coil, connecting wires, and
"power" appearing in the personal computer's display are all virtual. They do
not exist as real electrical components. They exist as commands in a computer
program -- a piece of software only -- that just happens to resemble a real
relay schematic diagram.
Equally important to understand is that the personal computer used to display
and edit the PLC's program is not necessary for the PLC's continued operation.
Once a program has been loaded to the PLC from the personal computer, the
personal computer may be unplugged from the PLC, and the PLC will continue
[26]
to follow the programmed commands. I include the personal computer display
in these illustrations for your sake only, in aiding to understand the
relationship between real-life conditions (switch closure and lamp status) and
the program's status ("power" through virtual contacts and virtual coils).
The true power and versatility of a PLC is revealed when we want to alter the
behavior of a control system. Since the PLC is a programmable device, we can
alter its behavior by changing the commands we give it, without having to
reconfigure the electrical components connected to it. For example, suppose
we wanted to make this switch-and-lamp circuit function in an inverted
fashion: push the button to make the lamp turn off, and release it to make it
turn on. The "hardware" solution would require that a normallyclosed
pushbutton switch be substituted for the normally-open switch currently in
place. The "software" solution is much easier: just alter the program so that
contact X1 is normally-closed rather than normally-open.
CHAPTER 3
Programming For Start/Stop of Motor by PLC
Often we have a little green "start" button to turn on a motor, and we want to turn it off with a big
red "Stop" button.
--+----[ ]--+----[]----( )---
| start | stop run
| |
+----[ ]--+
run
[27]
The pushbutton switch connected to input X1 serves as the "Start" switch,
while the switch connected to input X2 serves as the "Stop." Another contact
in the program, named Y1, uses the output coil status as a seal-in contact,
directly, so that the motor contactor will continue to be energized after the
"Start" pushbutton switch is released. You can see the normally-closed contact
X2 appear in a colored block, showing that it is in a closed ("electrically
conducting") state.
3.1 Starting of Motor
If we were to press the "Start" button, input X1 would energize, thus "closing"
the X1 contact in the program, sending "power" to the Y1 "coil," energizing
the Y1 output and applying 120 volt AC power to the real motor contactor coil.
The parallel Y1 contact will also "close," thus latching the "circuit" in an
energized state:
[28]
3.2 Logic for Continous Running of motor When Start Button is
Released
Now, if we release the "Start" pushbutton, the normally-open X1 "contact"
will return to its "open" state, but the motor will continue to run because the
Y1 seal-in "contact" continues to provide "continuity" to "power" coil Y1, thus
keeping the Y1 output energized:
[29]
3.3 To Stop the Motor
To stop the motor, we must momentarily press the "Stop" pushbutton, which
will energize the X2 input and "open" the normally-closed "contact," breaking
continuity to the Y1 "coil:"
[30]
When the "Stop" pushbutton is released, input X2 will de-energize, returning
"contact" X2 to its normal, "closed" state. The motor, however, will not start
again until the "Start" pushbutton is actuated, because the "seal-in" of Y1 has
been lost:
CHAPTER 4
Meaning of SCADA
SCADA stands for Supervisory Control and Data Acquisition. As the name indicates, it is not a
full control system, but rather focuses on the supervisory level. As such, it is a purely software
[31]
package that is positioned on top of hardware to which it is interfaced, in general via Programmable
Logic Controllers (PLCs), or other commercial hardware modules.
SCADA systems are used not only in industrial processes: e.g. steel making, power generation
(conventional and nuclear) and distribution, chemistry, but also in some experimental facilities
such as nuclear fusion. The size of such plants range from a few 1000 to several 10 thousands
input/output (I/O) channels. However, SCADA systems evolve rapidly and are now penetrating
the market of plants with a number of I/O channels of several 100 K: we know of two cases of near
to 1 M I/O channels currently under development.
SCADA systems used to run on DOS, VMS and UNIX; in recent years all SCADA vendors have
moved to NT and some also to Linux.
Architecture
This section describes the common features of the SCADA products that have been evaluated at
CERN in view of their possible application to the control systems of the LHC detectors [1], [2].
[32]
4.1 Hardware Architecture
One distinguishes two basic layers in a SCADA system: the "client layer" which caters for the man
machine interaction and the "data server layer" which handles most of the process data control
activities. The data servers communicate with devices in the field through process controllers.
Process controllers, e.g. PLCs, are connected to the data servers either directly or via networks or
field buses that are proprietary (e.g. Siemens H1), or non-proprietary (e.g. Profibus). Data servers
are connected to each other and to client stations via an Ethernet LAN. The data servers and client
stations are NT platforms but for many products the client stations may also be W95 machines.
4.2 Communications
4.3.1 Internal Communication
Server-client and server-server communication is in general on a publish-subscribe and
eventdriven basis and uses a TCP/IP protocol, i.e., a client application subscribes to a parameter
which is owned by a particular server application and only changes to that parameter are then
communicated to the client application.
4.3.2 Access to Devices
The data servers poll the controllers at a user defined polling rate. The polling rate may be different
for different parameters. The controllers pass the requested parameters to the data servers. Time
stamping of the process parameters is typically performed in the controllers and this time-stamp is
taken over by the data server. If the controller and communication protocol used support
unsolicited data transfer then the products will support this too.
The products provide communication drivers for most of the common PLCs and widely used field-
buses, e.g., Modbus. Of the three fieldbuses that are recommended at CERN, both Profibus and
World flip are supported but CANbus often not [3]. Some of the drivers are based on third party
products (e.g., Applicom cards) and therefore have additional cost associated with them. VME on
the other hand is generally not supported.
[33]
A single data server can support multiple communications protocols: it can generally support as
many such protocols as it has slots for interface cards.
The effort required to develop new drivers is typically in the range of 2-6 weeks depending on the
complexity and similarity with existing drivers, and a driver development toolkit is provided for
this.
4.3.3 Interfacing
The provision of OPC client functionality for SCADA to access devices in an open and standard
manner is developing. There still seems to be a lack of devices/controllers, which provide OPC
server software, but this improves rapidly as most of the producers of controllers are actively
involved in the development of this standard. OPC has been evaluated by the CERN-IT-CO group.
The products also provide
• An Open Data Base Connectivity (ODBC) interface to the data in the archive/logs, but not
to the configuration database,
• An ASCII import/export facility for configuration data,
• A library of APIs supporting C, C++, and Visual Basic (VB) to access data in the RTDB,
logs and archive. The API often does not provide access to the product's internal features
such as alarm handling, reporting, trending, etc.
The PC products provide support for the Microsoft standards such as Dynamic Data Exchange
(DDE) which allows e.g. to visualize data dynamically in an EXCEL spreadsheet, Dynamic Link
Library (DLL) and Object Linking and Embedding (OLE).
The configuration data are stored in a database that is logically centralized but physically
distributed and that is generally of a proprietary format.
For performance reasons, the RTDB resides in the memory of the servers and is also of proprietary
format.
[34]
The archive and logging format is usually also proprietary for performance reasons, but some
products do support logging to a Relational Data Base Management System (RDBMS) at a slower
rate either directly or via an ODBC interface.
4.3.4 Scalability
Scalability is understood as the possibility to extend the SCADA based control system by adding
more process variables, more specialized servers (e.g. for alarm handling) or more clients. The
products achieve scalability by having multiple data servers connected to multiple controllers.
Each data server has its own configuration database and RTDB and is responsible for the handling
of a sub-set of the process variables (acquisition, alarm handling, archiving).
4.3.5 Redundancy
The products often have built in software redundancy at a server level, which is normally
transparent to the user. Many of the products also provide more complete redundancy solutions if
required.
Functionality
4.4.1 Access Control
Users are allocated to groups, which have defined read/write access privileges to the process
parameters in the system and often also to specific product functionality.
4.4.2 MMI
The products support multiple screens, which can contain combinations of synoptic diagrams and
text.
They also support the concept of a "generic" graphical object with links to process variables. These
objects can be "dragged and dropped" from a library and included into a synoptic diagram.
[35]
Most of the SCADA products that were evaluated decompose the process in "atomic" parameters
(e.g. a power supply current, its maximum value, its on/off status, etc.) to which a Tag-name is
associated. The Tag-names used to link graphical objects to devices can be edited as required. The
products include a library of standard graphical symbols, many of which would however not be
applicable to the type of applications encountered in the experimental physics community.
Standard windows editing facilities are provided: zooming, re-sizing, scrolling... On-line
configuration and customization of the MMI is possible for users with the appropriate privileges.
Links can be created between display pages to navigate from one view to another.
4.4.3 Trending
The products all provide trending facilities and one can summarize the common capabilities as
follows:
• the parameters to be trended in a specific chart can be predefined or defined on-line
• a chart may contain more than 8 trended parameters or pens and an unlimited number of
charts can be displayed (restricted only by the readability)
• real-time and historical trending are possible, although generally not in the same chart
4.5 Alarm Handling
Alarm handling is based on limit and status checking and performed in the data servers. More
complicated expressions (using arithmetic or logical expressions) can be developed by creating
derived parameters on which status or limit checking is then performed. The alarms are logically
handled centrally, i.e., the information only exists in one place and all users see the same status
(e.g., the acknowledgement), and multiple alarm priority levels (in general many more than 3 such
levels) are supported.
It is generally possible to group alarms and to handle these as an entity (typically filtering on group
or acknowledgement of all alarms in a group). Furthermore, it is possible to suppress alarms either
individually or as a complete group. The filtering of alarms seen on the alarm page or when viewing
the alarm log is also possible at least on priority, time and group. However, relationships between
[36]
alarms cannot generally be defined in a straightforward manner. E-mails can be generated or
predefined actions automatically executed in response to alarm conditions.
4.6 Logging/Archiving
The terms logging and archiving are often used to describe the same facility. However, logging
can be thought of as medium-term storage of data on disk, whereas archiving is long-term storage
of data either on disk or on another permanent storage medium. Logging is typically performed on
a cyclic basis, i.e., once a certain file size, time period or number of points is reached the data is
overwritten. Logging of data can be performed at a set frequency, or only initiated if the value
changes or when a specific predefined event occurs. Logged data can be transferred to an archive
once the log is full. The logged data is time-stamped and can be filtered when viewed by a user.
The logging of user actions is in general performed together with either a user ID or station ID.
There is often also a VCR facility to play back archived data.
4.7 Report Generation
One can produce reports using SQL type queries to the archive, RTDB or logs. Although it is
sometimes possible to embed EXCEL charts in the report, a "cut and paste" capability is in general
not provided. Facilities exist to be able to automatically generate, print and archive reports.
4.8 Automation
The majority of the products allow actions to be automatically triggered by events. A scripting
language provided by the SCADA products allows these actions to be defined. In general, one can
load a particular display, send an Email, run a user defined application or script and write to the
RTDB.
The concept of recipes is supported, whereby a particular system configuration can be saved to a
file and then re-loaded at a later date.
CHAPTER 5
[37]
Application & Development In SCADA
5.1 Configuration
The development of the applications is typically done in two stages. First the process parameters
and associated information (e.g. relating to alarm conditions) are defined through some sort of
parameter definition template and then the graphics, including trending and alarm displays are
developed, and linked where appropriate to the process parameters. The products also provide an
ASCII Export/Import facility for the configuration data (parameter definitions), which enables
large numbers of parameters to be configured in a more efficient manner using an external editor
such as Excel and then importing the data into the configuration database.
However, many of the PC tools now have a Windows Explorer type development studio. The
developer then works with a number of folders, which each contains a different aspect of the
configuration, including the graphics.
[38]
The facilities provided by the products for configuring very large numbers of parameters are not
very strong. However, this has not really been an issue so far for most of the products to-date, as
large applications are typically about 50K I/O points and database population from within an
ASCII editor such as Excel is still a workable option.
On-line modifications to the configuration database and the graphics are generally possible with
the appropriate level of privileges.
5.2 Development Tools
The following development tools are provided as standard:
• A graphics editor, with standard drawing facilities including freehand, lines, squares
circles, etc. It is possible to import pictures in many formats as well as using predefined
symbols including e.g. trending charts, etc. A library of generic symbols is provided that
can be linked dynamically to variables and animated as they change. It is also possible to
create links between views so as to ease navigation at run-time.
• A data base configuration tool (usually through parameter templates). It is in general
possible to export data in ASCII files so as to be edited through an ASCII editor or Excel.
• A scripting language
• An Application Program Interface (API) supporting C, C++, VB
[39]
5.3 Evolution
SCADA vendors release one major version and one to two additional minor versions once per year.
These products evolve thus very rapidly so as to take advantage of new market opportunities, to
meet new requirements of their customers and to take advantage of new technologies.
As was already mentioned, most of the SCADA products that were evaluated decompose the
process in "atomic" parameters to which a Tag-name is associated. This is impractical in the case
of very large processes when very large sets of Tags need to be configured. As the industrial
applications are increasing in size, new SCADA versions are now being designed to handle devices
and even entire systems as full entities (classes) that encapsulate all their specific attributes and
functionality. In addition, they will also support multi-team development.
As far as new technologies are concerned, the SCADA products are now adopting:
• Web technology, ActiveX, Java, etc.
• OPC as a means for communicating internally between the client and server modules. It
should thus be possible to connect OPC compliant third party modules to that SCADA
product.
5.4 Engineering
Whilst one should rightly anticipate significant development and maintenance savings by adopting
a SCADA product for the implementation of a control system, it does not mean a "no effort"
operation. The need for proper engineering can not be sufficiently emphasized to reduce
development effort and to reach a system that complies with the requirements, that is economical
in development and maintenance and that is reliable and robust. Examples of engineering activities
specific to the use of a SCADA system are the definition of:
• a library of objects (PLC, device, subsystem) complete with standard object behavior
(script, sequences, ...), graphical interface and associated scripts for animation,
• templates for different types of "panels", e.g. alarms,
• instructions on how to control e.g. a device ...,
[40]
• a mechanism to prevent conflicting controls (if not provided with the SCADA), alarm
levels, behavior to be adopted in case of specific alarms.
[41]
5.5 Potential benefits of SCADA
The benefits one can expect from adopting a SCADA system for the control of experimental
physics facilities can be summarized as follows:
• A rich functionality and extensive development facilities. The amount of effort invested in
SCADA product amounts to 50 to 100 p-years!
• The amount of specific development that needs to be performed by the end-user is limited,
especially with suitable engineering.
• Reliability and robustness. These systems are used for mission critical industrial processes
where reliability and performance are paramount. In addition, specific development is
performed within a well-established framework that enhances reliability and robustness.
• Technical support and maintenance by the vendor.
[42]
REFERENCES
[1] A.Daneels, W.Salter, "Technology Survey Summary of Study Report", IT-CO/98-08-
09, CERN, Geneva 26th
Aug 1998.
[2] A.Daneels, W.Salter, "Selection and Evaluation of Commercial SCADA Systems for
the Controls of the CERN LHC Experiments", Proceedings of the 1999 International
Conference on Accelerator and Large Experimental Physics Control Systems, Trieste,
1999, p.353.
[3] G.Baribaud et al., "Recommendations for the Use of Fieldbuses at CERN in the LHC
Era", Proceedings of the 1997 International Conference on Accelerator and Large
Experimental Physics Control Systems, Beijing, 1997, p.285.
[4] R.Barillere et al., "Results of the OPC Evaluation done within the JCOP for the
Control of the LHC Experiments", Proceedings of the 1999 International Conference on
Accelerator and Large Experimental Physics Control Systems, Trieste, 1999, p.511.
[43]
CONCLUSION
SCADA is used for the constructive working not for the destructive work using a
SCADA system for their controls ensures a common framework not only for the
development of the specific applications but also for operating the detectors. Operators
experience the same "look and feel" whatever part of the experiment they control.
However, this aspect also depends to a significant extent on proper engineering.

More Related Content

What's hot

automatic mixing & filling bottle using PLC
automatic mixing & filling bottle using PLCautomatic mixing & filling bottle using PLC
automatic mixing & filling bottle using PLCLeelu Veerendra Pulagam
 
TRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVE
TRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVETRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVE
TRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVEAKSHAY SACHAN
 
PLC SCADA report Paras Singhal
PLC SCADA report Paras SinghalPLC SCADA report Paras Singhal
PLC SCADA report Paras SinghalPARAS SINGHAL
 
summer internship report on PLC & SCADA
summer internship report on PLC & SCADAsummer internship report on PLC & SCADA
summer internship report on PLC & SCADAVarunKumarRaghav
 
INDUSTRIAL AUTOMATION USING PLC
INDUSTRIAL AUTOMATION USING PLCINDUSTRIAL AUTOMATION USING PLC
INDUSTRIAL AUTOMATION USING PLCMehvish Mushtaq
 
Automation PLC & SCADA
Automation PLC & SCADA Automation PLC & SCADA
Automation PLC & SCADA NITISH SINGH
 
Summer Internship Report on PLC
Summer Internship Report on PLCSummer Internship Report on PLC
Summer Internship Report on PLCSudeep Giri
 
Industrial Automation
Industrial AutomationIndustrial Automation
Industrial AutomationTushar Swami
 
Scada and power system automation
Scada and power system automationScada and power system automation
Scada and power system automationShubham Kapoor
 
Home automation using IoT
Home automation using IoTHome automation using IoT
Home automation using IoTAthira_1993
 
Programming logic controllers (plc)
Programming  logic controllers (plc)Programming  logic controllers (plc)
Programming logic controllers (plc)Sudhir Reddy
 
Plc and scada report
Plc and scada reportPlc and scada report
Plc and scada reportIndira Kundu
 
Power point presentation on Industrial Automation
Power point presentation on Industrial AutomationPower point presentation on Industrial Automation
Power point presentation on Industrial AutomationJaiPrakash337
 
Plc report with project
Plc report with projectPlc report with project
Plc report with projectPriya Hada
 
REPORT ON INDUSTRIAL AUTOMATION
REPORT ON INDUSTRIAL AUTOMATIONREPORT ON INDUSTRIAL AUTOMATION
REPORT ON INDUSTRIAL AUTOMATIONArnab Podder
 
Training Report on Automation
Training Report on AutomationTraining Report on Automation
Training Report on AutomationFellowBuddy.com
 

What's hot (20)

automatic mixing & filling bottle using PLC
automatic mixing & filling bottle using PLCautomatic mixing & filling bottle using PLC
automatic mixing & filling bottle using PLC
 
PLC - Programmable Logic Controller
PLC - Programmable Logic ControllerPLC - Programmable Logic Controller
PLC - Programmable Logic Controller
 
TRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVE
TRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVETRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVE
TRAINING REPORT ON INDUSTRIAL AUTOMATION- PLC SCADA, VARIABLE FREQUENCY DRIVE
 
PLC SCADA report Paras Singhal
PLC SCADA report Paras SinghalPLC SCADA report Paras Singhal
PLC SCADA report Paras Singhal
 
summer internship report on PLC & SCADA
summer internship report on PLC & SCADAsummer internship report on PLC & SCADA
summer internship report on PLC & SCADA
 
INDUSTRIAL AUTOMATION USING PLC
INDUSTRIAL AUTOMATION USING PLCINDUSTRIAL AUTOMATION USING PLC
INDUSTRIAL AUTOMATION USING PLC
 
Automation PLC & SCADA
Automation PLC & SCADA Automation PLC & SCADA
Automation PLC & SCADA
 
Summer Internship Report on PLC
Summer Internship Report on PLCSummer Internship Report on PLC
Summer Internship Report on PLC
 
Industrial Automation
Industrial AutomationIndustrial Automation
Industrial Automation
 
Scada and power system automation
Scada and power system automationScada and power system automation
Scada and power system automation
 
PLC Basic
PLC BasicPLC Basic
PLC Basic
 
Home automation using IoT
Home automation using IoTHome automation using IoT
Home automation using IoT
 
Programming logic controllers (plc)
Programming  logic controllers (plc)Programming  logic controllers (plc)
Programming logic controllers (plc)
 
Plc and scada report
Plc and scada reportPlc and scada report
Plc and scada report
 
Power point presentation on Industrial Automation
Power point presentation on Industrial AutomationPower point presentation on Industrial Automation
Power point presentation on Industrial Automation
 
Introducing scada
Introducing scadaIntroducing scada
Introducing scada
 
Plc report with project
Plc report with projectPlc report with project
Plc report with project
 
REPORT ON INDUSTRIAL AUTOMATION
REPORT ON INDUSTRIAL AUTOMATIONREPORT ON INDUSTRIAL AUTOMATION
REPORT ON INDUSTRIAL AUTOMATION
 
Training Report on Automation
Training Report on AutomationTraining Report on Automation
Training Report on Automation
 
Traffic signals based on microcontroller based
Traffic signals based on microcontroller basedTraffic signals based on microcontroller based
Traffic signals based on microcontroller based
 

Similar to Plc & Scada report 3

subission report
subission reportsubission report
subission reportManoj Kumar
 
Discription of PLC and SCADA
Discription of PLC and SCADADiscription of PLC and SCADA
Discription of PLC and SCADAIshank Ranjan
 
Basic PLC Programming program The Fundamental Knowledge of PLC.pdf
Basic PLC Programming program The Fundamental Knowledge of PLC.pdfBasic PLC Programming program The Fundamental Knowledge of PLC.pdf
Basic PLC Programming program The Fundamental Knowledge of PLC.pdfLuisDavidCajavilcaCu1
 
Pdfslide.net summer training-report-on-plc-and-scada11
Pdfslide.net summer training-report-on-plc-and-scada11Pdfslide.net summer training-report-on-plc-and-scada11
Pdfslide.net summer training-report-on-plc-and-scada11GondaliyaAkashkumar
 
Basic plc-programming-e book_Reliance High Tech Ltd
Basic plc-programming-e book_Reliance High Tech LtdBasic plc-programming-e book_Reliance High Tech Ltd
Basic plc-programming-e book_Reliance High Tech LtdMarsus Marsus
 
Industrial Automation EMERSON EDUARDO RODRIGUES
Industrial Automation EMERSON EDUARDO RODRIGUESIndustrial Automation EMERSON EDUARDO RODRIGUES
Industrial Automation EMERSON EDUARDO RODRIGUESEMERSON EDUARDO RODRIGUES
 
Introduction to PLC
Introduction to PLCIntroduction to PLC
Introduction to PLCVeerakumar S
 
Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...
Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...
Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...IJERA Editor
 
01 introduction to_plc-pac_rev01_fa16
01 introduction to_plc-pac_rev01_fa1601 introduction to_plc-pac_rev01_fa16
01 introduction to_plc-pac_rev01_fa16John Todora
 
Basic plc - Training
Basic plc - TrainingBasic plc - Training
Basic plc - TrainingSagar Ghadge
 
training report. automation,plc , scada
training report. automation,plc , scada training report. automation,plc , scada
training report. automation,plc , scada MdQutubuddin1
 

Similar to Plc & Scada report 3 (20)

subission report
subission reportsubission report
subission report
 
Discription of PLC and SCADA
Discription of PLC and SCADADiscription of PLC and SCADA
Discription of PLC and SCADA
 
Basic PLC Programming program The Fundamental Knowledge of PLC.pdf
Basic PLC Programming program The Fundamental Knowledge of PLC.pdfBasic PLC Programming program The Fundamental Knowledge of PLC.pdf
Basic PLC Programming program The Fundamental Knowledge of PLC.pdf
 
Pdfslide.net summer training-report-on-plc-and-scada11
Pdfslide.net summer training-report-on-plc-and-scada11Pdfslide.net summer training-report-on-plc-and-scada11
Pdfslide.net summer training-report-on-plc-and-scada11
 
Handbook Of PLC EMERSON EDUARDO RODRIGUES
Handbook Of PLC EMERSON EDUARDO RODRIGUESHandbook Of PLC EMERSON EDUARDO RODRIGUES
Handbook Of PLC EMERSON EDUARDO RODRIGUES
 
Basic plc-programming
Basic plc-programmingBasic plc-programming
Basic plc-programming
 
Basic plc-programming-e book_Reliance High Tech Ltd
Basic plc-programming-e book_Reliance High Tech LtdBasic plc-programming-e book_Reliance High Tech Ltd
Basic plc-programming-e book_Reliance High Tech Ltd
 
Industrial Automation EMERSON EDUARDO RODRIGUES
Industrial Automation EMERSON EDUARDO RODRIGUESIndustrial Automation EMERSON EDUARDO RODRIGUES
Industrial Automation EMERSON EDUARDO RODRIGUES
 
documentation (1)
documentation (1)documentation (1)
documentation (1)
 
Basic plc
Basic plcBasic plc
Basic plc
 
Basic plc
Basic plcBasic plc
Basic plc
 
Basic PLC.ppt
Basic PLC.pptBasic PLC.ppt
Basic PLC.ppt
 
Introduction to PLC
Introduction to PLCIntroduction to PLC
Introduction to PLC
 
Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...
Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...
Implementation of T-Junction Traffic Light Control System Using Simatic S7-20...
 
01 introduction to_plc-pac_rev01_fa16
01 introduction to_plc-pac_rev01_fa1601 introduction to_plc-pac_rev01_fa16
01 introduction to_plc-pac_rev01_fa16
 
Training 17
Training 17Training 17
Training 17
 
Basic plc - Training
Basic plc - TrainingBasic plc - Training
Basic plc - Training
 
training report. automation,plc , scada
training report. automation,plc , scada training report. automation,plc , scada
training report. automation,plc , scada
 
Basic plc
Basic plcBasic plc
Basic plc
 
Basic plc
Basic plcBasic plc
Basic plc
 

More from Lakshminarayan Solanki (13)

Home automation with arduino
Home automation with arduinoHome automation with arduino
Home automation with arduino
 
Power house report
Power house reportPower house report
Power house report
 
Power house report
Power house reportPower house report
Power house report
 
Plc & scada report 6
Plc & scada report 6Plc & scada report 6
Plc & scada report 6
 
Plc & Scada report 4
Plc & Scada report 4Plc & Scada report 4
Plc & Scada report 4
 
Plc & scada report 2
Plc & scada report 2Plc & scada report 2
Plc & scada report 2
 
Surge current protection Seminar Report
Surge current protection Seminar ReportSurge current protection Seminar Report
Surge current protection Seminar Report
 
Fuel Cell Technology
Fuel Cell TechnologyFuel Cell Technology
Fuel Cell Technology
 
Home automation with arduino uno
Home automation with arduino unoHome automation with arduino uno
Home automation with arduino uno
 
Smart Home Automation using Atmega328p
Smart Home Automation using Atmega328pSmart Home Automation using Atmega328p
Smart Home Automation using Atmega328p
 
Solar tree
Solar treeSolar tree
Solar tree
 
Hybrid electric vehicle Seminar Presentation
Hybrid electric vehicle Seminar PresentationHybrid electric vehicle Seminar Presentation
Hybrid electric vehicle Seminar Presentation
 
Electric hybrid vehicle Seminar Report
Electric hybrid vehicle Seminar ReportElectric hybrid vehicle Seminar Report
Electric hybrid vehicle Seminar Report
 

Recently uploaded

Design and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture NotesDesign and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture NotesSreedhar Chowdam
 
Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...
Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...
Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...arifengg7
 
10 AsymmetricKey Cryptography students.pptx
10 AsymmetricKey Cryptography students.pptx10 AsymmetricKey Cryptography students.pptx
10 AsymmetricKey Cryptography students.pptxAdityaGoogle
 
Artificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewArtificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewsandhya757531
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionSneha Padhiar
 
Machine Learning 5G Federated Learning.pdf
Machine Learning 5G Federated Learning.pdfMachine Learning 5G Federated Learning.pdf
Machine Learning 5G Federated Learning.pdfadeyimikaipaye
 
input buffering in lexical analysis in CD
input buffering in lexical analysis in CDinput buffering in lexical analysis in CD
input buffering in lexical analysis in CDHeadOfDepartmentComp1
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSsandhya757531
 
Introduction to Machine Learning Part1.pptx
Introduction to Machine Learning Part1.pptxIntroduction to Machine Learning Part1.pptx
Introduction to Machine Learning Part1.pptxPavan Mohan Neelamraju
 
Structural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot MuiliStructural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot MuiliNimot Muili
 
Road Development plans of India-Transportation Engineering
Road Development plans of India-Transportation EngineeringRoad Development plans of India-Transportation Engineering
Road Development plans of India-Transportation EngineeringSayli Madhale
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfBalamuruganV28
 
Ergodomus - LOD 400 Production Drawings Exampes - Copy.pdf
Ergodomus - LOD 400 Production Drawings Exampes - Copy.pdfErgodomus - LOD 400 Production Drawings Exampes - Copy.pdf
Ergodomus - LOD 400 Production Drawings Exampes - Copy.pdfgestioneergodomus
 
Defining the Clouds for entriprises.pptx
Defining the Clouds for entriprises.pptxDefining the Clouds for entriprises.pptx
Defining the Clouds for entriprises.pptxAshwiniTodkar4
 
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptxTriangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptxRomil Mishra
 
Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...
Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...
Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...IJAEMSJORNAL
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Communityprachaibot
 
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...gerogepatton
 
70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical training70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical trainingGladiatorsKasper
 
Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...
Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...
Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...shreenathji26
 

Recently uploaded (20)

Design and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture NotesDesign and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture Notes
 
Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...
Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...
Analysis and Evaluation of Dal Lake Biomass for Conversion to Fuel/Green fert...
 
10 AsymmetricKey Cryptography students.pptx
10 AsymmetricKey Cryptography students.pptx10 AsymmetricKey Cryptography students.pptx
10 AsymmetricKey Cryptography students.pptx
 
Artificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewArtificial Intelligence in Power System overview
Artificial Intelligence in Power System overview
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based question
 
Machine Learning 5G Federated Learning.pdf
Machine Learning 5G Federated Learning.pdfMachine Learning 5G Federated Learning.pdf
Machine Learning 5G Federated Learning.pdf
 
input buffering in lexical analysis in CD
input buffering in lexical analysis in CDinput buffering in lexical analysis in CD
input buffering in lexical analysis in CD
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
 
Introduction to Machine Learning Part1.pptx
Introduction to Machine Learning Part1.pptxIntroduction to Machine Learning Part1.pptx
Introduction to Machine Learning Part1.pptx
 
Structural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot MuiliStructural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
 
Road Development plans of India-Transportation Engineering
Road Development plans of India-Transportation EngineeringRoad Development plans of India-Transportation Engineering
Road Development plans of India-Transportation Engineering
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdf
 
Ergodomus - LOD 400 Production Drawings Exampes - Copy.pdf
Ergodomus - LOD 400 Production Drawings Exampes - Copy.pdfErgodomus - LOD 400 Production Drawings Exampes - Copy.pdf
Ergodomus - LOD 400 Production Drawings Exampes - Copy.pdf
 
Defining the Clouds for entriprises.pptx
Defining the Clouds for entriprises.pptxDefining the Clouds for entriprises.pptx
Defining the Clouds for entriprises.pptx
 
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptxTriangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptx
 
Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...
Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...
Guardians of E-Commerce: Harnessing NLP and Machine Learning Approaches for A...
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Community
 
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
 
70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical training70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical training
 
Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...
Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...
Introduction to Artificial Intelligence: Intelligent Agents, State Space Sear...
 

Plc & Scada report 3

  • 1. [1] An Industrial training report on Study of “SCADA” System and “PLC” Submitted by Sonu Kumar Yadav B. tech. IV Year (VII Semester) Electrical Engineering DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING GOVIND BALLABH PANT ENGINEERING COLLEGE PAURI GARHWAL (UTTARAKHAND) - 246194
  • 2. [2] Acknowledgement I would like to thank SOFCON INDIA PVT. LIMITED, NOIDA for providing me exposure to the whole Scada & PLCs Systeam. I’d also like to thank Er. Rajendra Prasad (E.E.), and Er. Rajendra Patel (A.E.), for their enduring support and guidance throughout the training. I am very grateful to the whole Control and Instrumentation Department for their support and guidance. I am also very thankful to the workers and employees near the machineries and the library in charge for their support to my training.
  • 3. [3] CERTIFICATE This training report is a genuine works by Mr. SonuKumar Yadav, B-Tech 3rd yr, Electrical Engg. The report was made under my supervision, and I express my delight on it successful completion. I am also very happy to have offered her guidance whenever it was required. I wish her success in all her future endeavors. (Er. Rajendra Prasad) Executive Engineer C&I MD – I ‘B’ TPS, Anpara
  • 4. [4] Preface An industrial SCADA & PLCs system is used for the development of the controls of machinery. This paper describes the SCADA & PLCs systems in terms of their architecture, their interface to the process hardware, the functionality and the application development facilities they provide. Some attention is also paid to the industrial standards to which they abide their planned evolution as well as the potential benefits of their use. SONU KUMAR YADAV B. TECH, Final year (EE) ROLL NO. 06090105053 CONTENTS Title………………………………………………………….…… Page no. Chapter 1 Introduction of “ PLC”……………………………………………...….…06 Chapter 2 Programming with PLC
  • 5. [5] …………………………………………………..16 Chapter 3 Programming for Start/Stop of Motor……………………………………..27 Chapter 4 SCADA……………………………………………………………………32 Chapter 5 Application & Development In SCADA……………………………….....39 Chapter 6 Reference…………………………………………………………………..47 Chapter 7 Conclusion………………………………………………………………….48 CHAPTER 1 1.Introduction 1.1 PLC An Overview A Programmable Logic Controller, PLC, or Programmable Controller is a digital computer used for automation of industrial processes, such as control of machinery on factory assembly lines. Unlike general-purpose computers, the PLC is designed for multiple inputs and output arrangements, extended temperature ranges, immunity to electrical noise, and resistance to vibration and impact. Programs to control machine operation are typically stored in batterybacked or non-volatile memory. A PLC is an example of a real time system since output results must be
  • 6. [6] produced in response to input conditions within a bounded time, otherwise unintended operation will result. PLC and Programmable Logic Controller are registered trademarks of the Allen-Bradley Company. SCADA is Widely used in industry for Supervisory Control and Data Acquisition of industrial processes, SCADA systems are now also penetrating the experimental physics laboratories for the controls of ancillary systems such as cooling, ventilation, power distribution, etc. More recently they were also applied for the controls of smaller size particle detectors such as the L3 moon detector and the NA48 experiment, to name just two examples at CERN. SCADA systems have made substantial progress over the recent years in terms of functionality, scalability, performance and openness such that they are an alternative to in house development even for very demanding and complex control systems as those of physics experiments. .
  • 8. [8] Photograph showing several input and output modules of a single AllenBradley PLC. With each module having sixteen "points" of either input or output, this PLC has the ability to monitor and control dozens of devices. Fit into a control cabinet, a PLC takes up little room, especially considering the equivalent space that would be needed by electromechanical relays to perform the same functions: The main difference from other computers is that PLC are armored for severe condition (dust, moisture, heat, cold, etc) and has the facility for extensive input/output (I/O) arrangements. These connect the PLC to sensors and actuators. PLCs read limit switches, analog process variables (such as temperature and pressure), and the positions of complex positioning systems. Some even use machine vision. On the actuator side, PLCs operate electric motors, pneumatic or hydraulic cylinders, magnetic relays or solenoids, or analog outputs. The input/output arrangements may be
  • 9. [9] built into a simple PLC, or the PLC may have external I/O modules attached to a computer network that plugs into the PLC. Many of the earliest PLCs expressed all decision making logic in simple ladder logic which appeared similar to electrical schematic diagrams. The electricians were quite able to trace out circuit problems with schematic diagrams using ladder logic. This program notation was chosen to reduce training demands for the existing technicians. Other early PLCs used a form of instruction list programming, based on a stack-based logic solver. The functionality of the PLC has evolved over the years to include sequential relay control, motion control, process control, distributed control systems and networking. The data handling, storage, processing power and communication capabilities of some modern PLCs are approximately equivalent to desktop computers.
  • 10. [10] 1.3 Wiring In a PLC • Block diagram of a PLC 1.4 Generation of Input Signal Inside the PLC housing, connected between each input terminal and the Common terminal, is an opto-isolator device (Light-Emitting Diode) that provides an electrically isolated "high" Logic signal to the computer's circuitry (a photo- transistor interprets the LED's light) when there is 120 VAC power applied between the respective input terminal and the Common terminal. An indicating LED on the front panel of the PLC gives visual indication of an "energized" input :
  • 11. [11] Diagram Showing Energized input terminal X1 1.5 Generation of Output Signal Output signals are generated by the PLC's computer circuitry activating a switching device (transistor, TRIAC, or even an electromechanical relay), connecting the "Source" terminal to any of the "Y-" labeled output terminals. The "Source" terminal, correspondingly, is usually connected to the L1 side of the 120 VAC power source. As with each input, an indicating LED on the front panel of the PLC gives visual indication of an "energized" output In this way, the PLC is able to interface with real-world devices such as switches and solenoids. The actual logic of the control system is established inside the PLC by means of a computer program. This program dictates which output gets energized under which input conditions. Although the program itself appears to be a ladder logic
  • 12. [12] diagram, with switch and relay symbols, there are no actual switch contacts or relay coils operating inside the PLC to create the logical relationships between input and output. These are imaginary contacts and coils, if you will. The program is entered and viewed via a personal computer connected to the PLC's programming port. Diagram Showing Energized Output Y1 1.6 PLC compared with other control systems PLCs are well-adapted to a certain range of automation tasks. These are typically industrial processes in manufacturing where the cost of developing and maintaining the automation system is high relative to the total cost of the automation, and where changes to the system would be expected during its operational life. PLCs contain input and output devices compatible with industrial pilot devices and controls; little electrical design is required, and the design problem centers on expressing the desired sequence of operations in ladder logic (or function chart) notation. PLC applications are typically highly customized systems so the cost of a packaged PLC is low compared to the cost of a specific
  • 13. [13] custom-built controller design. For high volume or very simple fixed automation tasks, different techniques are used. A microcontroller-based design would be appropriate where hundreds or thousands of units will be produced and so the development cost (design of power supplies and input/output hardware) can be spread over many sales, and where the end-user would not need to alter the control. Automotive applications are an example; millions of units are built each year, and very few end-users alter the programming of these controllers. However, some specialty vehicles such as transit busses economically use PLCs instead of custom-designed controls, because the volumes are low and the development cost would be uneconomic. PLCs may include logic for single-variable feedback analog control loop, a "proportional, integral, derivative" or "PID controller." A PID loop could be used to control the temperature of a manufacturing process, for example. Historically PLCs were usually configured with only a few analog control loops; where processes required hundreds or thousands of loops, a distributed control system (DCS) would instead be used. However, as PLCs have become more powerful, the boundary between DCS and PLC applications has become less clear.
  • 14. [14] 1.7 Digital and analog signals Digital or discrete signals behave as binary switches, yielding simply an On or Off signal (1 or 0, True or False, respectively). Pushbuttons, limit switches, and photoelectric sensors are examples of devices providing a discrete signal. Discrete signals are sent using either voltage or current, where a specific range is designated as On and another as Off. For example, a PLC might use 24 V DC I/O, with values above 22 V DC representing On, values below 2VDC representing Off, and intermediate values undefined. Initially, PLCs had only discrete I/O. Analog signals are like volume controls, with a range of values between zero and full-scale. These are typically interpreted as integer values (counts) by the PLC, with various ranges of accuracy depending on the device and the number of bits available to store the data. As PLCs typically use 16-bit signed binary processors, the integer values are limited between -32,768 and +32,767. Pressure, temperature, flow, and weight are often represented by analog signals. Analog signals can use voltage or current with a magnitude proportional to the value of the process signal. For example, an analog 4-20 mA or 0 - 10 V input would be converted into an integer value of 0 - 32767. Current inputs are less sensitive to electrical noise (i.e. from welders or electric motor starts) than voltage inputs.
  • 15. [15] Example As an example, say the facility needs to store water in a tank. The water is drawn from the tank by another system, as needed, and our example system must manage the water level in the tank. Using only digital signals, the PLC has two digital inputs from float switches (tank empty and tank full). The PLC uses a digital output to open and close the inlet valve into the tank. If both float switches are off (down) or only the 'tank empty' switch is on, the PLC will open the valve to let more water in. Once the 'tank full' switch is on, the PLC will automatically shut the inlet to stop the water from overflowing. If only the 'tank full' switch is on, something is wrong because once the water reaches a float switch, the switch will stay on because it is floating, thus, when both float switches are on, the tank is full. Two float switches are used to prevent a 'flutter' (a ripple or a wave) condition where any water usage activates the pump for a very short time and then deactivates for a short time, and so on, causing the system to wear out faster. An analog system might use a load cell (scale) that weighs the tank, and an adjustable (throttling) valve. The PLC could use a PID feedback loop to control the valve opening. The load cell is connected to an analog input and the valve is connected to an analog output. This system fills the tank faster when there is less water in the tank. If the water level drops rapidly, the valve can be opened wide. If water is only dripping out of the tank, the valve adjusts to slowly drip water back into the tank. A real system might combine both approaches, using float switches and simple valves to prevent spills, and a rate sensor and rate valve to optimize refill rates. Backup and maintenance methods can make a real system very complicated.
  • 16. [16]
  • 17. [17] CHAPTER 2 Programming with PLC Early PLCs, up to the mid-1980s, were programmed using proprietary programming panels or special-purpose programming terminals, which often had dedicated function keys representing the various logical elements of PLC programs. Programs were stored on cassette tape cartridges. Facilities for printing and documentation were very minimal due to lack of memory capacity. More recently, PLC programs are typically written in a special application on a personal computer, then downloaded by a direct-connection cable or over a network to the PLC. The very oldest PLCs used non-volatile magnetic core memory but now the program is stored in the PLC either in battery- backed-up RAM or some other non-volatile flash memory. Early PLCs were designed to be used by electricians who would learn PLC programming on the job. These PLCs were programmed in "ladder logic", which strongly resembles a schematic diagram of relay logic. Modern PLCs can be programmed in a variety of ways, from ladder logic to more traditional programming languages such as BASIC and C. Another method is State Logic, a Very High Level Programming Language designed to program PLCs based on State Transition Diagrams. 2.1 Ladder logic Ladder logic is a method of drawing electrical logic schematics. It is now a graphical language very popular for programming Programmable Logic Controllers (PLCs). It was originally invented to describe logic made from relays. The name is based on the observation that programs in this language resemble ladders, with two vertical "rails" and a series of horizontal "rungs" between them. A program in ladder logic, also called a ladder diagram, is similar to a schematic for a set of relay circuits. An argument that aided the initial adoption of ladder logic was that a wide variety of engineers and technicians would be able to understand and use it without much additional
  • 18. [18]
  • 19. [19] training, because of the resemblance to familiar hardware systems. (This argument has become less relevant given that most ladder logic programmers have a software background in more conventional programming languages, and in practice implementations of ladder logic have characteristics — such as sequential execution and support for control flow features — that make the analogy to hardware somewhat imprecise.) Ladder logic is widely used to program PLCs, where sequential control of a process or manufacturing operation is required. Ladder logic is useful for simple but critical control systems, or for reworking old hardwired relay circuits. As programmable logic controllers became more sophisticated it has also been used in very complex automation systems. Ladder logic can be thought of as a rule-based language, rather than a procedural language. A "rung" in the ladder represents a rule. When implemented with relays and other electromechanical devices, the various rules "execute" simultaneously and immediately. When implemented in a programmable logic controller, the rules are typically executed sequentially by software, in a loop. By executing the loop fast enough, typically many times per second, the effect of simultaneous and immediate execution is obtained. In this way it is similar to other rulebased languages, like spreadsheets or SQL. However, proper use of programmable controllers requires understanding the limitations of the execution order of rungs. Example of a simple ladder logic program The language itself can be seen as a set of connections between logical checkers (relay contacts) and actuators (coils). If a path can be traced between the left side of the rung and the output, through asserted (true or "closed") contacts, the rung is true and the output coil storage bit is asserted (1) or true. If no path can be traced, then the output is false (0) and the "coil" by analogy to electromechanical relays is considered "de-energized". The analogy between logical propositions and relay contact status is due to Claude Shannon. Ladder logic has "contacts" that "make" or "break" "circuits" to control "coils." Each coil or contact corresponds to the status of a single bit in the programmable controller's memory. Unlike electromechanical relays, a ladder program can refer any number of times to the status of a single bit, equivalent to a relay with an indefinitely large number of contacts.
  • 20. [20] So-called "contacts" may refer to inputs to the programmable controller from physical devices such as pushbuttons and limit switches, or may represent the status of internal storage bits which may be generated elsewhere in the program. Each rung of ladder language typically has one coil at the far right. Some manufacturers may allow more than one output coil on a rung. --( )-- a regular coil, true when its rung is true --()-- a "not" coil, false when its rung is true --[ ]-- A regular contact, true when its coil is true (normally false) --[]-- A "not" contact, false when its coil is true (normally true) The "coil" (output of a rung) may represent a physical output which operates some device connected to the programmable controller, or may represent an internal storage bit for use elsewhere in the program. 2.3 Generally UsedInstructions & symbol For PLC Programming Input Instruction --[ ]-- This Instruction is Called IXC or Examine If Closed. ie; If a NO switch is actuated then only this instruction will be true. If a NC switch is actuated then this instruction will not be true and hence output will not be generated. --[]-- This Instruction is Called IXO or Examine If Open
  • 21. [21] ie; If a NC switch is actuated then only this instruction will be true. If a NC switch is actuated then this instruction will not be true and hence output will not be generated. Output Instruction --( )-- This Instruction Shows the States of Output. ie; If any instruction either XIO or XIC is true then output will be high. Due to high output a 24 volt signal is generated from PLC processor. Rung Rung is a simple line on which instruction are placed and logics are created E.g.; --------------------------------------------- Here is an example of what one rung in a ladder logic program might look like. In real life, there may be hundreds or thousands of rungs. For example 1. ----[ ]---------|--[ ]--|------( )-- X | Y | S | | |--[ ]--| Z The above realises the function: S = X AND (Y OR Z) Typically, complex ladder logic is 'read' left to right and top to bottom. As each of the lines (or rungs) are evaluated the output coil of a rung may feed into the next stage of the ladder as an input. In a complex system there will be many "rungs" on a ladder, which are numbered in order of evaluation. 1. ----[ ]-----------|---[ ]---|----( )--
  • 22. [22] X | Y | S | | |---[ ]---| Z 2. ---- [ ]----[ ] -------------------( )-- S X T 2. T = S AND X where S is equivalent to #1. above This represents a slightly more complex system for rung 2. After the first line has been evaluated, the output coil (S) is fed into rung 2, which is then evaluated and the output coil T could be fed into an output device (buzzer, light etc..) or into rung 3 on the ladder. (Note that the contact X on the 2nd rung serves no useful purpose, as X is already a 'AND' function of S from the 1st rung.) This system allows very complex logic designs to be broken down and evaluated. 1 more practical examples Example-1 ------[ ]--------------[ ]----------------O--- Key Switch 1 Key Switch 2 Door Motor This circuit shows two key switches that security guards might use to activate an electric motor on a bank vault door. When the normally open contacts of both switches close, electricity is able to flow to the motor which opens the door. This is a logical AND.
  • 23. [23] Example-2 Often we have a little green "start" button to turn on a motor, and we want to turn it off with a big red "Stop" button. --+----[ ]--+----[]----( )--- | start | stop run | | +----[ ]--+ run -------[ ]--------------( )-- run motor 2 Example With PLC Consider the following circuit and PLC program: -------[ ]--------------( )-- run motor
  • 24. [24] When the pushbutton switch is unactuated (unpressed), no power is sent to the X1 input of the PLC. Following the program, which shows a normallyopen X1 contact in series with a Y1 coil, no "power" will be sent to the Y1 coil. Thus, the PLC's Y1 output remains de-energized, and the indicator lamp connected to it remains dark. If the pushbutton switch is pressed, however, power will be sent to the PLC's X1 input. Any and all X1 contacts appearing in the program will assume the actuated (non-normal) state, as though they were relay contacts actuated by the energizing of a relay coil named "X1". In this case, energizing the X1 input will cause the normally-open X1 contact will "close," sending "power" to the Y1 coil. When the Y1coilof the program "energizes," the real Y1 output will become energized, lighting up the lamp connected to it: Lamp Glows when at Input Switch is Actuated
  • 25. [25] It must be understood that the X1 contact, Y1 coil, connecting wires, and "power" appearing in the personal computer's display are all virtual. They do not exist as real electrical components. They exist as commands in a computer program -- a piece of software only -- that just happens to resemble a real relay schematic diagram. Equally important to understand is that the personal computer used to display and edit the PLC's program is not necessary for the PLC's continued operation. Once a program has been loaded to the PLC from the personal computer, the personal computer may be unplugged from the PLC, and the PLC will continue
  • 26. [26] to follow the programmed commands. I include the personal computer display in these illustrations for your sake only, in aiding to understand the relationship between real-life conditions (switch closure and lamp status) and the program's status ("power" through virtual contacts and virtual coils). The true power and versatility of a PLC is revealed when we want to alter the behavior of a control system. Since the PLC is a programmable device, we can alter its behavior by changing the commands we give it, without having to reconfigure the electrical components connected to it. For example, suppose we wanted to make this switch-and-lamp circuit function in an inverted fashion: push the button to make the lamp turn off, and release it to make it turn on. The "hardware" solution would require that a normallyclosed pushbutton switch be substituted for the normally-open switch currently in place. The "software" solution is much easier: just alter the program so that contact X1 is normally-closed rather than normally-open. CHAPTER 3 Programming For Start/Stop of Motor by PLC Often we have a little green "start" button to turn on a motor, and we want to turn it off with a big red "Stop" button. --+----[ ]--+----[]----( )--- | start | stop run | | +----[ ]--+ run
  • 27. [27] The pushbutton switch connected to input X1 serves as the "Start" switch, while the switch connected to input X2 serves as the "Stop." Another contact in the program, named Y1, uses the output coil status as a seal-in contact, directly, so that the motor contactor will continue to be energized after the "Start" pushbutton switch is released. You can see the normally-closed contact X2 appear in a colored block, showing that it is in a closed ("electrically conducting") state. 3.1 Starting of Motor If we were to press the "Start" button, input X1 would energize, thus "closing" the X1 contact in the program, sending "power" to the Y1 "coil," energizing the Y1 output and applying 120 volt AC power to the real motor contactor coil. The parallel Y1 contact will also "close," thus latching the "circuit" in an energized state:
  • 28. [28] 3.2 Logic for Continous Running of motor When Start Button is Released Now, if we release the "Start" pushbutton, the normally-open X1 "contact" will return to its "open" state, but the motor will continue to run because the Y1 seal-in "contact" continues to provide "continuity" to "power" coil Y1, thus keeping the Y1 output energized:
  • 29. [29] 3.3 To Stop the Motor To stop the motor, we must momentarily press the "Stop" pushbutton, which will energize the X2 input and "open" the normally-closed "contact," breaking continuity to the Y1 "coil:"
  • 30. [30] When the "Stop" pushbutton is released, input X2 will de-energize, returning "contact" X2 to its normal, "closed" state. The motor, however, will not start again until the "Start" pushbutton is actuated, because the "seal-in" of Y1 has been lost: CHAPTER 4 Meaning of SCADA SCADA stands for Supervisory Control and Data Acquisition. As the name indicates, it is not a full control system, but rather focuses on the supervisory level. As such, it is a purely software
  • 31. [31] package that is positioned on top of hardware to which it is interfaced, in general via Programmable Logic Controllers (PLCs), or other commercial hardware modules. SCADA systems are used not only in industrial processes: e.g. steel making, power generation (conventional and nuclear) and distribution, chemistry, but also in some experimental facilities such as nuclear fusion. The size of such plants range from a few 1000 to several 10 thousands input/output (I/O) channels. However, SCADA systems evolve rapidly and are now penetrating the market of plants with a number of I/O channels of several 100 K: we know of two cases of near to 1 M I/O channels currently under development. SCADA systems used to run on DOS, VMS and UNIX; in recent years all SCADA vendors have moved to NT and some also to Linux. Architecture This section describes the common features of the SCADA products that have been evaluated at CERN in view of their possible application to the control systems of the LHC detectors [1], [2].
  • 32. [32] 4.1 Hardware Architecture One distinguishes two basic layers in a SCADA system: the "client layer" which caters for the man machine interaction and the "data server layer" which handles most of the process data control activities. The data servers communicate with devices in the field through process controllers. Process controllers, e.g. PLCs, are connected to the data servers either directly or via networks or field buses that are proprietary (e.g. Siemens H1), or non-proprietary (e.g. Profibus). Data servers are connected to each other and to client stations via an Ethernet LAN. The data servers and client stations are NT platforms but for many products the client stations may also be W95 machines. 4.2 Communications 4.3.1 Internal Communication Server-client and server-server communication is in general on a publish-subscribe and eventdriven basis and uses a TCP/IP protocol, i.e., a client application subscribes to a parameter which is owned by a particular server application and only changes to that parameter are then communicated to the client application. 4.3.2 Access to Devices The data servers poll the controllers at a user defined polling rate. The polling rate may be different for different parameters. The controllers pass the requested parameters to the data servers. Time stamping of the process parameters is typically performed in the controllers and this time-stamp is taken over by the data server. If the controller and communication protocol used support unsolicited data transfer then the products will support this too. The products provide communication drivers for most of the common PLCs and widely used field- buses, e.g., Modbus. Of the three fieldbuses that are recommended at CERN, both Profibus and World flip are supported but CANbus often not [3]. Some of the drivers are based on third party products (e.g., Applicom cards) and therefore have additional cost associated with them. VME on the other hand is generally not supported.
  • 33. [33] A single data server can support multiple communications protocols: it can generally support as many such protocols as it has slots for interface cards. The effort required to develop new drivers is typically in the range of 2-6 weeks depending on the complexity and similarity with existing drivers, and a driver development toolkit is provided for this. 4.3.3 Interfacing The provision of OPC client functionality for SCADA to access devices in an open and standard manner is developing. There still seems to be a lack of devices/controllers, which provide OPC server software, but this improves rapidly as most of the producers of controllers are actively involved in the development of this standard. OPC has been evaluated by the CERN-IT-CO group. The products also provide • An Open Data Base Connectivity (ODBC) interface to the data in the archive/logs, but not to the configuration database, • An ASCII import/export facility for configuration data, • A library of APIs supporting C, C++, and Visual Basic (VB) to access data in the RTDB, logs and archive. The API often does not provide access to the product's internal features such as alarm handling, reporting, trending, etc. The PC products provide support for the Microsoft standards such as Dynamic Data Exchange (DDE) which allows e.g. to visualize data dynamically in an EXCEL spreadsheet, Dynamic Link Library (DLL) and Object Linking and Embedding (OLE). The configuration data are stored in a database that is logically centralized but physically distributed and that is generally of a proprietary format. For performance reasons, the RTDB resides in the memory of the servers and is also of proprietary format.
  • 34. [34] The archive and logging format is usually also proprietary for performance reasons, but some products do support logging to a Relational Data Base Management System (RDBMS) at a slower rate either directly or via an ODBC interface. 4.3.4 Scalability Scalability is understood as the possibility to extend the SCADA based control system by adding more process variables, more specialized servers (e.g. for alarm handling) or more clients. The products achieve scalability by having multiple data servers connected to multiple controllers. Each data server has its own configuration database and RTDB and is responsible for the handling of a sub-set of the process variables (acquisition, alarm handling, archiving). 4.3.5 Redundancy The products often have built in software redundancy at a server level, which is normally transparent to the user. Many of the products also provide more complete redundancy solutions if required. Functionality 4.4.1 Access Control Users are allocated to groups, which have defined read/write access privileges to the process parameters in the system and often also to specific product functionality. 4.4.2 MMI The products support multiple screens, which can contain combinations of synoptic diagrams and text. They also support the concept of a "generic" graphical object with links to process variables. These objects can be "dragged and dropped" from a library and included into a synoptic diagram.
  • 35. [35] Most of the SCADA products that were evaluated decompose the process in "atomic" parameters (e.g. a power supply current, its maximum value, its on/off status, etc.) to which a Tag-name is associated. The Tag-names used to link graphical objects to devices can be edited as required. The products include a library of standard graphical symbols, many of which would however not be applicable to the type of applications encountered in the experimental physics community. Standard windows editing facilities are provided: zooming, re-sizing, scrolling... On-line configuration and customization of the MMI is possible for users with the appropriate privileges. Links can be created between display pages to navigate from one view to another. 4.4.3 Trending The products all provide trending facilities and one can summarize the common capabilities as follows: • the parameters to be trended in a specific chart can be predefined or defined on-line • a chart may contain more than 8 trended parameters or pens and an unlimited number of charts can be displayed (restricted only by the readability) • real-time and historical trending are possible, although generally not in the same chart 4.5 Alarm Handling Alarm handling is based on limit and status checking and performed in the data servers. More complicated expressions (using arithmetic or logical expressions) can be developed by creating derived parameters on which status or limit checking is then performed. The alarms are logically handled centrally, i.e., the information only exists in one place and all users see the same status (e.g., the acknowledgement), and multiple alarm priority levels (in general many more than 3 such levels) are supported. It is generally possible to group alarms and to handle these as an entity (typically filtering on group or acknowledgement of all alarms in a group). Furthermore, it is possible to suppress alarms either individually or as a complete group. The filtering of alarms seen on the alarm page or when viewing the alarm log is also possible at least on priority, time and group. However, relationships between
  • 36. [36] alarms cannot generally be defined in a straightforward manner. E-mails can be generated or predefined actions automatically executed in response to alarm conditions. 4.6 Logging/Archiving The terms logging and archiving are often used to describe the same facility. However, logging can be thought of as medium-term storage of data on disk, whereas archiving is long-term storage of data either on disk or on another permanent storage medium. Logging is typically performed on a cyclic basis, i.e., once a certain file size, time period or number of points is reached the data is overwritten. Logging of data can be performed at a set frequency, or only initiated if the value changes or when a specific predefined event occurs. Logged data can be transferred to an archive once the log is full. The logged data is time-stamped and can be filtered when viewed by a user. The logging of user actions is in general performed together with either a user ID or station ID. There is often also a VCR facility to play back archived data. 4.7 Report Generation One can produce reports using SQL type queries to the archive, RTDB or logs. Although it is sometimes possible to embed EXCEL charts in the report, a "cut and paste" capability is in general not provided. Facilities exist to be able to automatically generate, print and archive reports. 4.8 Automation The majority of the products allow actions to be automatically triggered by events. A scripting language provided by the SCADA products allows these actions to be defined. In general, one can load a particular display, send an Email, run a user defined application or script and write to the RTDB. The concept of recipes is supported, whereby a particular system configuration can be saved to a file and then re-loaded at a later date. CHAPTER 5
  • 37. [37] Application & Development In SCADA 5.1 Configuration The development of the applications is typically done in two stages. First the process parameters and associated information (e.g. relating to alarm conditions) are defined through some sort of parameter definition template and then the graphics, including trending and alarm displays are developed, and linked where appropriate to the process parameters. The products also provide an ASCII Export/Import facility for the configuration data (parameter definitions), which enables large numbers of parameters to be configured in a more efficient manner using an external editor such as Excel and then importing the data into the configuration database. However, many of the PC tools now have a Windows Explorer type development studio. The developer then works with a number of folders, which each contains a different aspect of the configuration, including the graphics.
  • 38. [38] The facilities provided by the products for configuring very large numbers of parameters are not very strong. However, this has not really been an issue so far for most of the products to-date, as large applications are typically about 50K I/O points and database population from within an ASCII editor such as Excel is still a workable option. On-line modifications to the configuration database and the graphics are generally possible with the appropriate level of privileges. 5.2 Development Tools The following development tools are provided as standard: • A graphics editor, with standard drawing facilities including freehand, lines, squares circles, etc. It is possible to import pictures in many formats as well as using predefined symbols including e.g. trending charts, etc. A library of generic symbols is provided that can be linked dynamically to variables and animated as they change. It is also possible to create links between views so as to ease navigation at run-time. • A data base configuration tool (usually through parameter templates). It is in general possible to export data in ASCII files so as to be edited through an ASCII editor or Excel. • A scripting language • An Application Program Interface (API) supporting C, C++, VB
  • 39. [39] 5.3 Evolution SCADA vendors release one major version and one to two additional minor versions once per year. These products evolve thus very rapidly so as to take advantage of new market opportunities, to meet new requirements of their customers and to take advantage of new technologies. As was already mentioned, most of the SCADA products that were evaluated decompose the process in "atomic" parameters to which a Tag-name is associated. This is impractical in the case of very large processes when very large sets of Tags need to be configured. As the industrial applications are increasing in size, new SCADA versions are now being designed to handle devices and even entire systems as full entities (classes) that encapsulate all their specific attributes and functionality. In addition, they will also support multi-team development. As far as new technologies are concerned, the SCADA products are now adopting: • Web technology, ActiveX, Java, etc. • OPC as a means for communicating internally between the client and server modules. It should thus be possible to connect OPC compliant third party modules to that SCADA product. 5.4 Engineering Whilst one should rightly anticipate significant development and maintenance savings by adopting a SCADA product for the implementation of a control system, it does not mean a "no effort" operation. The need for proper engineering can not be sufficiently emphasized to reduce development effort and to reach a system that complies with the requirements, that is economical in development and maintenance and that is reliable and robust. Examples of engineering activities specific to the use of a SCADA system are the definition of: • a library of objects (PLC, device, subsystem) complete with standard object behavior (script, sequences, ...), graphical interface and associated scripts for animation, • templates for different types of "panels", e.g. alarms, • instructions on how to control e.g. a device ...,
  • 40. [40] • a mechanism to prevent conflicting controls (if not provided with the SCADA), alarm levels, behavior to be adopted in case of specific alarms.
  • 41. [41] 5.5 Potential benefits of SCADA The benefits one can expect from adopting a SCADA system for the control of experimental physics facilities can be summarized as follows: • A rich functionality and extensive development facilities. The amount of effort invested in SCADA product amounts to 50 to 100 p-years! • The amount of specific development that needs to be performed by the end-user is limited, especially with suitable engineering. • Reliability and robustness. These systems are used for mission critical industrial processes where reliability and performance are paramount. In addition, specific development is performed within a well-established framework that enhances reliability and robustness. • Technical support and maintenance by the vendor.
  • 42. [42] REFERENCES [1] A.Daneels, W.Salter, "Technology Survey Summary of Study Report", IT-CO/98-08- 09, CERN, Geneva 26th Aug 1998. [2] A.Daneels, W.Salter, "Selection and Evaluation of Commercial SCADA Systems for the Controls of the CERN LHC Experiments", Proceedings of the 1999 International Conference on Accelerator and Large Experimental Physics Control Systems, Trieste, 1999, p.353. [3] G.Baribaud et al., "Recommendations for the Use of Fieldbuses at CERN in the LHC Era", Proceedings of the 1997 International Conference on Accelerator and Large Experimental Physics Control Systems, Beijing, 1997, p.285. [4] R.Barillere et al., "Results of the OPC Evaluation done within the JCOP for the Control of the LHC Experiments", Proceedings of the 1999 International Conference on Accelerator and Large Experimental Physics Control Systems, Trieste, 1999, p.511.
  • 43. [43] CONCLUSION SCADA is used for the constructive working not for the destructive work using a SCADA system for their controls ensures a common framework not only for the development of the specific applications but also for operating the detectors. Operators experience the same "look and feel" whatever part of the experiment they control. However, this aspect also depends to a significant extent on proper engineering.