This document provides an overview of automation and SCADA systems. It discusses what automation is, defines industrial automation, and describes the main components of an automated system, including programmable logic controllers and SCADA. It also discusses the benefits of SCADA systems and their functions, including data acquisition, network communication, and data presentation. The document contains profiles of leading SCADA companies and provides details on installing SCADA software and developing applications in InTouch SCADA.
1 of 63
Download to read offline
More Related Content
final report
1. 1
A
PRACTICAL TRAINING
REPORT
ON
AUTOMATION
Submitted for the partial fulfillment of Degree
Bachelor of Technology
ELECTRICAL ENGINEERING
Submitted By: - Submitted To: -
Ayush Mamodiya Dr. L. Solanki
12EBKEE016 Principal (academics)
DEPARTMENT OF ELECTRICAL ENGINEERING
B. K. BIRLA INSTITUTE OF ENGINEERING & TECHNOLOGY PILANI (RAJ.)
(Affiliated to Rajasthan Technical University, Kota)
2014-15
3. 3
ACKNOWLEDGEMENT
I would like to express my sincere gratitude indebtedness to Mr. K. L. SWAMI for allowing me
to undergo the summer training of 60 days at Sofcon India Pvt. Ltd.
I am grateful to Ms. Vashita Jain for the help provided in completion of the training, which was
assigned to me. Without her friendly help and guidance it was difficult to develop this project.
I am also thankful to Dr. P S Bhatnagar (Director BKBIET, Pilani) his true help & providing
the resources on completion of Training. Last but not least, I pay my sincere thanks and gratitude
Dr. L Solanki (principal, academics, BKBIET Pilani) for his valuable suggestions &
encouragement.
I would also like to thanks Mr. Santosh Jangid (Assistant proffessor B.K. BIET, Pilani) and
Mr. Rajesh Singh Shekhawat (Assistant proffessor B.K. BIET, Pilani) for timely giving the
support and suggestion during the training period.
Ayush Mamodiya Date: 20.07.2015
12EBKEE016
4. 4
ORGANISAION PROFILE
SOFCON is professionally run by technocrats
having decades of experience in training /
process / manufacturing industries. The rich
experience of over 02 decades in providing
automation solutions to Indian & overseas
industries has made it a leading training Service
Provider. The training program contains
practical exposure of various Engineering
Courses with 100% placement assistance.
Sofcon is existing for the last 2 decades. It executes Automation projects for all types of process
& manufacturing industries. Sofcon has also Executed Automation projects for overseas clients
of Canada, Nepal, Bhutan, Srilanka, Taiwan, Russia, Muscut etc.
Sofcon imparts automation training to Engineers / engineering professional. Sofcon has imparted
training to more than 10000 fresh engineers & 5000 professionals.
5. 5
TABLE OF FIGURE
S. NO. NAME OF FIGURE PAGE NO.
Fig.1.1. Block Diagram of Industrial Automation 3
Fig.1.2. Architecture of Scada 7
Fig.3.1. Create New Application 12
Fig.3.2. Create New Window 13
Fig.3.3. Tool Bar 15
Fig.4.1. Animation Link 18
Fig.4.2. On Show Script 20
Fig.4.3. While Showing Script 21
Fig.4.4. On Hide Script 21
Fig.4.5. Real Time Trend 23
Fig.4.6. Historical Trend 24
Fig.4.7. Alarm 25
Fig.4.8. Recipe Management 27
Fig.6.1. Example of Ladder Logic 35
Fig.6.2. Example of Ladder Logic With Plc 37
Fig.6.3. Lamp Glow When An Input Switch Actuated 38
Fig.6.4. Programming of Start / Stop of A Motor 39
Fig.6.5. Programming of Start of Motor 40
Fig.6.6. Programming of Continuous Running of Motor (Holding of
Output)
40
Fig.6.7. Programming of Stop of motor 41
Fig.7.1. Up Counter with Reset 43
Fig.7.2. Up Counter with Arithmetic Operation 44
Fig.7.3. Down Counter 45
Fig.7.4. Down Counter with Status Bits 46
Fig.7.5. Up and Down Counter 47
Fig.8.1. Ton Timer 48
6. 6
Fig.8.2. Cascade TON Timer 49
Fig.8.3. Ton Self-Resetting Timer 49
Fig.8.4. TOF Timer 51
Fig.8.5. RTO Timer 52
Table 3.1 Scada of Leading Companies 10
Table 3.2 Installation of InTouch Software 11
Table 4.1 Different Types Of Script 19
Table 4.2 Recipe Management 28
Table 7.1 Status Bit of Up Counter 42
Table 7.2 Status Bit of Down Counter 45
Table 8.1 TON Timer Bits 48
Table 8.2 Bit of TOF Time 50
Table 8.3 Status Bit of RTO Timer 51
7. 7
TABLE OF CONTENT
S. NO. CONTENTS PAGE NO.
Front page I
Certificate II
Acknowledgement III
Organizational Profile IV
Table of Figures VI
1. Automation 1
1.1 What is Automation 1
1.2 Industrial Automation 1
1.3 Main Body of Automation 3
1.4 Types of Automation 3
a. Open and Close Loop 4
b. Sequential Control and Logical Sequence Control 4
c. Computer Control 5
2. Scada 6
2.1 Meaning of Scada 6
2.2 Architecture of Scada 6
2.3 System Concept 7
2.4 Benefits of Scada 8
2.5 Function of Scada 8
a. Data Acquisition 8
b. Network Data Communication 9
c. Data Presentation 9
3. Scada of Leading Companies 10
3.1 Installation of Scada Software 10
3.2 Application Development In InTouch Scada 11
a. Creating New Application 11
b. Creating New Window 13
8. 8
c. Tag Definition 14
d. Drawing objects 14
4. Animation Properties 16
4.1 Writing Script 19
4.2 Real Time Trend 22
4.3 Historical Trend 23
4.4 Alarm 24
4.5 Recipe Management 25
5. Programmable Logic Controller(Plc) 29
5.1. Feature of Plc 29
5.2. Terms Related to Plc 29
5.3. Plc Compare With Other Controller System 31
5.4. Advantage of Plc 31
6. Programming 33
6.1 Generally Used Instruction and Symbols for Plc Programming 33
6.2 Ladder Logic 34
6.3 Example of Simple Ladder Logic 36
6.4 Programming of Start/Stop Of A Motor 39
7. Counter 42
7.1 The CTU (Up Counter) Instructions 42
7.2 The CTD (Count Down) Instruction 44
8. Counter 48
8.1. The TON Timer (Timer On Delay) 48
8.2. Cascaded TON Timers 49
8.3. The TOF Timer (Timer Off Delay) 50
8.4. The RTO Timer (Retentive Timer On) 51
9. Result 53
10. Conclusion 54
11. Reference 55
9. 9
Week-1
AUTOMATION
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 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 battery backed or non-
volatile memory. A PLC is an example of a real time system since output results must be
produced in response to input conditions within a bounded time, otherwise unintended operation
will result. PLC 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.
1.1. WHAT IS AUTOMATION?
Automation is delegation of human control functions to technical equipment for increasing
productivity, better quality, reduce cost & increased in safety working conditions.
1.2. INDUSTRIAL AUTOMATION
Industrial automation or numerical control is the use of control systems such as computers to
control industrial machinery and processes, reducing the need for human intervention. In the
scope of industrialization, automation is a step beyond mechanization. Whereas mechanization
provided human operators with machinery to assist them with the physical requirements of work,
automation greatly reduces the need for human sensory and mental requirements as well.
Processes and systems can also be automated. Automation plays an increasingly important role
in the global economy and in daily experience.
10. 10
Engineers strive to combine automated devices with mathematical and organizational tools to
create complex systems for a rapidly expanding range of applications and human activities.
Many roles for humans in industrial processes presently lie beyond the scope of automation.
Human level pattern recognition, language recognition, and language production ability are well
beyond the capabilities of modern mechanical and computer systems. Tasks requiring subjective
assessment or synthesis of complex sensory data, such as scents and sounds, as well as high-level
tasks such as strategic planning, currently require human expertise.
In many cases, the use of humans is more cost-effective than mechanical approaches even where
automation of industrial tasks is possible. The widespread impact of industrial automation raises
social issues, among them its impact on employment. Historical concerns about the effects of
automation date back to the beginning of the industrial revolution, when a social movement of
English textile machine operators in the early 1800s known as the Luddites protested against
Jacquard's automated weaving looms— often by destroying such textile machines— that they
felt threatened their jobs.
One author made the following case. When automation was first introduced, it caused
widespread fear. It was thought that the displacement of human operators by computerized
systems would lead to severe unemployment. Another major shift in automation is the increased
emphasis on flexibility and convertibility in the manufacturing process. Manufacturers are
increasingly demanding the ability to easily switch from manufacturing Product A to
manufacturing Product B without having to completely rebuild the production lines. Flexibility
and distributed processes have led to the introduction of automated guided vehicles with natural
features navigation.
Currently, for manufacturing companies, the purpose of automation has shifted from increasing
productivity and reducing costs, to broader issues, such as increasing quality and flexibility in the
manufacturing process. The old focus on using automation simply to increase productivity and
reduce costs was seen to be short-sighted, because it is also necessary to provide a skilled
workforce who can make repairs and manage the machinery. Moreover, the initial costs of
automation were high and often could not be recovered by the time entirely new manufacturing
processes replaced the old. (Japan's "robot junkyards" were once world famous in the
manufacturing industry.)
11. 11
Automation is now often applied primarily to increase quality in the manufacturing process,
where automation can increase quality substantially. For example, automobile and truck pistons
used to be installed into engines manually. This is rapidly being transitioned to automated
machine installation, because the error rate for manual installment was around 1 -1.5%, but has
been reduced to 0.00001% with automation.
Fig.1.1. Block Diagram of Industrial Automation
1.3. MAIN BODY OF AUTOMATION
SCADA - Supervisory Control and Data Acquisition
PLC - Programmable Logic Controller
DRIVES - Variable Speed Drives
SENSORS – Transducers, Feedback equipment.
AUXILIARIES – Converters, Power Supplies, Different Communication mediums etc.
1.4. TYPES OF AUTOMATION
One of the simplest types of control is on-off control. An example is the thermostats used on
household appliances. Electromechanical thermostats used in HVAC may only have provision
for on/off control of heating or cooling systems. Electronic controllers may add multiple stages
of heating and variable fan speed control. Sequence control, in which a programmed sequence of
FieldEquipment
And Machineries
Programmable
Logic Controller
AC ORDC
Drives
Auxiliaries
Sensors
SCADA System
With HMI Screens
12. 12
discrete operations is performed, often based on system logic that involves system states. An
elevator control system is an example of sequence control. The advanced type of automation that
revolutionized manufacturing, aircraft, communications and other industries, is feedback control,
which is usually continuous and involves taking measurements using a sensor and making
calculated adjustments to keep the measured variable within a set range.
(a) Open and Closed Loop
All the elements constituting the measurement and control of a single variable are called a
control loop. Control that uses a measured signal, feeds the signal back and compares it to a set
point, calculates and sends a return signal to make a correction, is called closed loop control. If
the controller does not incorporate feedback to make a correction then it is open loop.
Loop control is normally accomplished with a controller. The theoretical basis of open and
closed loop automation is control theory.
(b) Sequential Control and Logical Sequence or System State Control
Sequential control may be either to a fixed sequence or to a logical one that will perform
different actions depending on various system states. An example of an adjustable but otherwise
fixed sequence is a timer on a lawn sprinkler. States refer to the various conditions that can occur
in a use or sequence scenario of the system. An example is an elevator, which uses logic based
on the system state to perform certain actions in response to its state and operator input. For
example, if the operator presses the floor n button, the system will respond depending on
whether the elevator is stopped or moving, going up or down, or if the door is open or closed,
and other conditions.
An early development of sequential control was relay logic, by which electrical relays engage
electrical contacts which either start or interrupt power to a device. Relays were first used in
telegraph networks before being developed for controlling other devices, such as when starting
and stopping industrial-sized electric motors or opening and closing solenoid valves. Using
relays for control purposes allowed event-driven control, where actions could be triggered out of
sequence, in response to external events. These were more flexible in their response than the
rigid single-sequence cam timers. More complicated examples involved maintaining safe
sequences for devices such as swing bridge controls, where a lock bolt needed to be disengaged
13. 13
before the bridge could be moved, and the lock bolt could not be released until the safety gates
had already been closed.
(c) Computer Control
Computers can perform both sequential control and feedback control, and typically a single
computer will do both in an industrial application. Programmable logic controllers (PLCs) are a
type of special purpose microprocessor that replaced many hardware components such as timers
and drum sequencers used in relay logic type systems. General purpose process control
computers have increasingly replaced stand-alone controllers, with a single computer able to
perform the operations of hundreds of controllers. Process control computers can process data
from a network of PLCs, instruments and controllers in order to implement typical (such as PID)
control of many individual variables or, in some cases, to implement complex control algorithms
using multiple inputs and mathematical manipulations. They can also analyze data and create
real time graphical displays for operators and run reports for operators, engineers and
management. Control of an automated teller machine (ATM) is an example of an interactive
process in which a computer will perform a logic derived response to a user selection based on
information retrieved from a networked database. The ATM process has similarities with other
online transaction processes. The different logical responses are called scenarios. Such processes
are typically designed with the aid of use cases and flowcharts, which guide the writing of the
software code.
14. 14
Week-2
SCADA
2.1. MEANING OF SCADA
SCADA stands for “Supervisory Control and Data Acquisition.” It generally refers to an
industrial control system: a computer system monitoring and controlling a process. The process
can be industrial, infrastructure or facility based as described below: Industrial processes include
those of manufacturing, production, power generation, fabrication, and refining, and may run in
continuous, batch, repetitive, or discrete modes. Infrastructure processes may be public or
private, and include water treatment and distribution, wastewater collection and treatment, oil
and gas pipelines, electrical power transmission and distribution, and large communication
systems. Facility processes occur both in public facilities and private ones, including buildings,
airports, ships, and space stations. They monitor and control HVAC, access, and energy
consumption.
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.
2.2. 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.
15. 15
Fig.2.1 Architecture of SCADA
2.3. SYSTEM CONCEPT
The term SCADA usually refers to centralized systems which monitor and control entire sites, or
complexes of systems spread out over large areas (anything between an industrial plant and a
country). Most control actions are performed automatically by remote terminal units ("RTUs") or
by programmable logic controllers ("PLCs"). Host control functions are usually restricted to
basic overriding or supervisory level intervention. For example, a PLC may control the flow of
cooling water through part of an industrial process, but the SCADA system may allow operators
to change the set points for the flow, and enable alarm conditions, such as loss of flow and high
temperature, to be displayed and recorded. The feedback control loop passes through the RTU or
PLC, while the SCADA system monitors the overall performance of the loop.
Data acquisition begins at the RTU or PLC level and includes meter readings and equipment
status reports that are communicated to SCADA as required. Data is then compiled and
formatted in such a way that a control room operator using the HMI can make supervisory
decisions to adjust or override normal RTU (PLC) controls. Data may also be fed to a Historian,
often built on a commodity Database Management System, to allow trending and other analytical
16. 16
auditing. SCADA systems typically implement a distributed database, commonly referred to as
a tag database, which contains data elements called tags or points. A point represents a single
input or output value monitored or controlled by the system. Points can be either "hard" or "soft".
A hard point represents an actual input or output within the system, while a soft point results
from logic and math operations applied to other points. (Most implementations conceptually
remove the distinction by making every property a "soft" point expression, which may, in the
simplest case, equal a single hard point.) Points are normally stored as value-timestamp pairs: a
value, and the time stamp when it was recorded or calculated. A series of value-timestamp pairs
gives the history of that point. It's also common to store additional metadata with tags, such as
the path to a field device or PLC register, design time comments, and alarm information.
2.4. 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.
2.5. FUNCTION OF SCADA
(a) Data Acquisition
First, the systems you need to monitor are much more complex than just one machine with one
output. So a real-life SCADA system needs to monitor hundreds or thousands of sensors. Some
sensors measure inputs into the system (for example, water flowing into a reservoir), and some
sensors measure outputs (like valve pressure as water is released from the reservoir).Some of
those sensors measure simple events that can be detected by a straightforward on/off switch,
called a discrete input (or digital input). For example, in our simple model of the widget
fabricator, the switch that turns on the light would be a discrete input. In real life, discrete inputs
17. 17
are used to measure simple states, like whether equipment is on or off, or tripwire alarms, like a
power failure at a critical facility.
For most analog factors, there is a normal range defined by a bottom and top level. For example
you may want the temperature in a server room to stay between 60 and 85 degrees Fahrenheit. If
the temperature goes above or below this range, it will trigger a threshold alarm. In more
advanced systems, there are four threshold alarms for analog sensors, defining Major Under,
Minor Under, Minor Over and Major Over alarms.
(b) Data Communication
In our simple model of the widget fabricator, the “network” is just the wire leading from the
switch to the panel light. In real life, you want to be able to monitor multiple systems from a
central location, so you need a communications network to transport all the data collected from
your sensors. Early scada networks communicated over radio, modem or dedicated serial lines.
Today the trend is to put scada data on Ethernet and ip over sonnet. For security reasons, scada
data should be kept on closed lan /wans without exposing sensitive data to the open internet.
Real scada systems don’t communicate with just simple electrical signals, either. Scada data is
encoded in protocol format. Older scada systems depended on closed proprietary protocols, but
today the trend is to open, standard protocols and protocol mediation.
Sensors and control relays are very simple electric devices that can’t generate or interpret
protocol communication on their own. The rtu encodes sensor inputs into protocol format and
forwards them to the scada master; in turn, the rtu receives control commands in protocol format
from the master and transmits electrical signals to the appropriate control relays.
(c) Data Presentation
The only display element in our model scada system is the light that comes on when the witch is
activated. This obviously won’t do on a large scale — you can’t track a light board of a thousand
separate lights, and you don’t want to pay someone simply to watch a light board either. A real
scada system reports to human operators over a specialized computer that is variously called a
master station, a hmi (human-machine interface) or an hci (human-computer interface).the scada
master station has several different functions. The master continuously monitors all sensors and
alerts the operator when there is an “alarm” — that is, when a control factor is operating outside
what is defined as its normal operation. The master presents a comprehensive view of the entire
managed system, and presents more detail in response to user requests.
18. 18
Week-3
SCADA OF LEADING COMPNIES
S. NO. COMPANY SCADA SOFTWARE
1. WONDERWARE INTOUCH
2. Intellution Fix dmacs
3. Merz Aspic
4 Allen bradely Rsview
5. Siemens Wincc
6. Ge fanuc Cimplicity
7. Kpit astra
Table 3.1. Scada of Leading Company
3.1. INSTALLATION OF INTOUCH SCADA SOFTWARE
S. No. Action Result
1 Insert the InTouch installable disk and run
setup
Welcome to setup program window
2 Click on Next Button Factory suite 2000 license window
3 Click on yes button User information window
4 Enter the name and company name of the
customer and click next
Registration confirmation window
5 Click yes if the registration information is
correct. If the information is not correct click
no. Re-enter the information and click yes.
Installation will start and Installing
FS2000 common component
window will appear.
6 If version conflict message like “a file being
copied is older than the file currently on your
computer do you want to keep this file
“appears .please click on yes.
Select InTouch destination
directory window.
7 Click on next without changing the default
directory.
Select component window.
19. 19
8 Please select the desired components like
InTouch 7.0 , InTouch 7.0 spc , InTouch 7.0
sql access , InTouch 7.0 recipe manager and
click on next
Choose configuration option
window
9 Select full development , runtime only or
factory focus as per the requirement and click
on to yes
Question “add icons to start menu
to access manuals from install
source? Window.
10 Click yes Start copying files window.
11 Click on next Intouch setup window.
12 Click on ok Setup complete window will
appear.
13 Restart the pc by clicking on finish Installation complete.
Table 3.2. Installation of InTouch software
3.2. APPLICATION DOVELEPMENT IN INTOUCH SCADA
(a) Creating New Application
1. Click on InTouch in the factory suite group, InTouch application manager window will
appear.
2. On the File menu, click New, or click the new tool in the toolbar, The Create New
Application wizard will appear.
3. Click on Next. Create new application window with default path will appear. By default, the
system will display the path to your InTouch directory followed by "New App."
4. In the input box, type the path to the directory in which you want your application to be
created or click Browse to locate the directory.
5. Click Next. If the directory you specify does not exist, a message dialog box will appear
asking if you want to create it.
6. Click OK. Create New Application wizard dialog box will appear. In the Name box, type a
unique name for the new application's icon that appears when the application is listed in the
InTouch Application Manager window. In the Description box, type a description of the
application. The description is optional. However, if you do type a description, it can be a
total of 255 characters.
21. 21
7. Click Finish
8. The InTouch - Application Manager will reappear displaying an icon with the name you
specified for the new application.
(b) Creating New Window
1. Click on the window maker icon Window maker will start.
2. Click on file new window for generating a mimic “Window properties" window will
appear.
3. Enter Name & Comment. Select the windows color. Give dimension like
X & Y location 0
Width: 800
Height: 550 and click OK. Window will appear in the in the window maker.
Fig.3.2. Creating New Window
22. 22
(c) Tag Definition
The memory or input/output variable are called as tags.
1. On the special menu, click tag name dictionary or in the application explorer, double-click
tagname dictionary. The tagname dictionary dialog box appears.
2. Click new. (The tagname box clears.)
3. In the tagname box, type the name you want to use for the new tag name and click type. The
choose tag type dialog box appears. Chose the type
Memory Discrete: Internal discrete tag name with a value of either 0 (False, off) or 1 (True, on).
Memory Integer: A 32-bit signed integer value between -2,147,483,648 and 2,147,483,647.
Memory Real: Floating (decimal) point memory tag name. The floating point value may be
between -3.4e38 and 3.4e38. All floating point calculations are performed with 64-bit resolution,
but the result is stored in 32-bit.
Memory Message: Text string tag name that can be up to 131 characters long.
If the tag name is to be connected to any external device then select the type as I/O. There are
some Miscellaneous Type Tag names which can be used in InTouch. The information for the
same is available in the Window maker help.
(d) Drawing The Objects
The objects can be drawn using the tool box available in InTouch window maker.
General Tool Bar
The General Toolbar is populated with toolbar buttons that execute most of the window
commands located on the File menu and some of the object editing commands located on the
Edit menu.
Arrange toolbar
The Arrange toolbar is populated with toolbar buttons that execute most of the object arranging
commands located on the Arrange menu.
Draw Object toolbar
The Draw Object toolbar is populated with all the tools that you will use to draw both simple
graphic objects or text objects and, complex objects such as alarm windows, real-time trends,
historical trends, bitmap boxes and 3-dimensional buttons with labels in your windows.
View toolbar
23. 23
The View toolbar is populated with toolbar buttons that execute most of the window commands
located on the View menu. These commands are used to control the state of the Window Maker
window..
Fig.3.3: Different Toolbar
24. 24
Week-4
ANIMATION LINKS
Touch Links
We use Touch Links on objects or symbols that we want to be "touch-sensitive" in runtime. They
allow the operator to input data into the system. For example, the operator may turn a valve on or
off, enter a new alarm set point, run a complex logic script or log on using text strings, and so on.
User inputs
Discrete: Used to control the value of a discrete tagname. When this link is activated, a dialog
box will appear prompting the operator to make a selection.
Analog: Used to input the value of an analog (integer or real) tagname. When the link is
activated, an input box will appear and the value may be entered from the standard keyboard or
an optional on-screen keypad.
String: Used to create an object into which a string message may be input. When the link is
activated, an input box will appear for entering the message value or an optional on screen
keyboard.
Sliders
We use slider touch links to create objects or symbols that can be moved around the window
with the mouse or other pointing devices. As the object or symbol is moved, it alters the value of
the tagname linked to it. This provides the ability to create devices for setting values in the
system. An object may have a horizontal or a vertical slider touch link, or both. By using both
links on a single object, the value of two analog tagnames can be altered simultaneously.
Touch pushbutton
We use Touch Pushbutton Touch Links to create object links that immediately perform an
operation when clicked with the mouse or touched (when touch screen is being used). These
operations can be Discrete Value Changes, Action Script executions, Show or Hide Window
commands. There are four types of Touch Pushbutton links:
Discrete Value: Used to make any object or symbol into a pushbutton that controls the state of a
discrete tagname. Pushbutton actions can be set, reset, toggle, momentary on (direct) and
momentary off (reverse) types.
Action
25. 25
Allows any object, symbol or button to have up to three different action scripts linked to it; On
Down, While Down and On Up. Action scripts can be used to set tagnames to specific values,
show and/or hide windows, start and control other applications, execute functions, and so on.
Show Window: Used to make an object or symbol into a button that opens one or more
windows when it is clicked or touched.
Hide Window: Used to make an object or symbol into a button that closes one or more windows
when it is clicked or touched.
Colour links (Line Color, Fill Color, and Text Color at)
We use color links to animate the Line Color, Fill Color, and Text Color attributes of an object.
Each of these color attributes may be made dynamic by defining a color link for the attribute.
The color attribute may be linked to the value of a discrete expression, analog expression,
discrete alarm status or analog alarm status. There are four types of line, fill and text color:
Discrete, Analog, Discrete Alarm, Analog Alarm.
Discrete: Used to control the fill, line and text colors attributes of an object or symbol that is
linked to the value of a discrete expression.
Analog: The line, fill, and text color of an object or symbol can be linked to the value of an
analog tagname (integer or real) or an analog expression. Five value ranges are defined by
specifying four breakpoints. Five different colors can be selected which will be displayed as the
value range changes.
Discrete alarms: The text, line, and fill color of an object can all be linked to the alarm state of a
tagname, Alarm Group, or Group Variable. This color link allows a choice of two colors; one for
the normal state and one for the alarm state of the tagname. This link can be used for both analog
and discrete tagnames. If it is used with an analog tagname, it responds to any alarm condition of
the tagname.
Analog Alarm: The text, line, and fill color of an object can all be linked to the alarm state of an
analog tagname, Alarm Group, or Group Variable. Allows a specific color to be set for the
normal state as well as a separate color for each alarm condition defined for the tagname.
Object Size links
We use Object Size links to vary the height and/or width of an object according to the value of
an analog (integer or real) tagname or analog expression. Size links provide the ability to control
26. 26
the direction in which the object enlarges in height and/or width by setting the "anchor" for the
link. Both height and width links can be attached to the same object.
Miscellaneous Links
Visibility: Use to control the visibility of an object based on the value of a discrete tagname or
expression.
Blink: Used to make an object blink based on the value of a discrete tagname or expression.
Orientation: Used to make an object rotate based on the value of a tagname or expression.
Disable: Used to disable the touch functionality of objects based on the value of a tagname or
expression. Often used as part of a security strategy.
Fig.4.1. Animation link
Value Display Links provide the ability to use a text object to display the value of a discrete,
analog, or string tagname. There are three types:
27. 27
Discrete: Uses the value of a discrete expression to display an on or off user defined message in
a text object.
Analog: Displays the value of an analog expression in a text object.
String: Displays the value of a string expression in a text object.
Percent Fill Links
We use Percent Fill Links to provide the ability to vary the fill level of a filled shape (or a
symbol containing filled shapes) according to the value of an analog tagname or an expression
that computes to an analog value. For example, this link may be used to show the level of liquids
in a vessel. An object or symbol may have a horizontal fill link, a vertical fill link, or both.
4.1 SCRIPTS
All InTouch Quick Scripts are event driven. The event may be a data change, condition, mouse
click, timer, and so on. The order of processing is application specific.
The following briefly describes the types of scripts that we can create:
Script Type Description
Application Linked to the entire application
Window Linked to a specific window
Key Linked to a specific key or key combination on
the keyboard.
Condition Linked to a discrete tagname or expression.
Data Change Linked to a tagname and/or tagname. Field only
Action Pushbutton Associated with an object that we link to an
Touch Link - Action Pushbutton
ActiveX Event Execute ActiveX control events in runtime
Table 4.1. Different Type of Scripts
Application Scripts
The Application Scripts are linked to the entire application. We can use application scripts to
start other applications, create process simulations, calculate variables, and so on. There are three
types of Application Scripts that we can apply to an application.
On Startup: Executes one time when the application is initially started up.
28. 28
While Running: Executes continuously at the specified frequency while the application is
running.
On Shutdown: Executes one time when the application is exited.
Window Scripts
Window Scripts are linked to a specific window. There are three types of scripts that we can
apply to a window:
On Show: Executes one time when the window is initially shown.
Fig. 4.2. On Show Script
While Showing: Executes continuously at the specified frequency while the window is showing.
29. 29
Fig. 4.3. While Show scripting
On Hide: Executes one time when the window is hidden.
Fig. 4.4. On Hide Scripting
30. 30
If we attach a Window Script to the active window and then we create a new window, the scripts
from the active window can be copied to the new window. A message dialog box will appear
asking if we want to copy the script(s).
4.2. REAL-TIME TRENDS
InTouch provides us with two types of trend display objects: "Real-time" and "Historical. We
can configure both trend objects to display graphical representations of multiple tagnames over
time. Real-time trends allow we to chart up to four pens (data values), while Historical trends
allow we to chart up to eight pens.
InTouch also supports a distributed history system that allows us to retrieve historical data from
any InTouch historical log file, even those across a network. In addition to its trending
capabilities, InTouch, includes two utilities, Merge and HistData that are designed to work with
InTouch historical log files.
The HistData utility converts encrypted historical log files (.LGH) to comma separated variable
(.CSV) files for use in spreadsheet or text editing environments such as Microsoft Excel. The
HDMerge utility merges .CSV log file into historical log files.
Real-Time Trends
Real-time trends are dynamic. They are updated continuously during runtime. They plot the
changes of up to four local tagnames or expressions as they occur.
Configuration of Real-time trend
The first time we paste a real-time trend object, the system default configuration settings are
used. Once we have configured a real-time trend, the next one we create will, by default, be
configured with the same settings.
31. 31
Fig.4.5. Real Time Trend
4.3 HISTORICAL TRENDS
For storing the historical data of a tag, its essential to select the log data option in the definition
of the tags.
By default, historical log files are named as follows:
YYMMDD00.LGH and YYMMDD00.IDX where
YY equals the year the file was created
MM equals the month the file was created (01-12)
DD equals the day the file was created (01-31)
00 always displays zeros
32. 32
Fig.4.6. Historical Trend
Trend Legend
In Historical charts, two scooters are used for selecting the desired time. The values where a
scooter cuts the historical chart are displayed using Trend legend. For configuring the trend
legend
1. Select the "Trend legend" wizard form trends and place it in the window/
2. Double click on the wizard and give the same tags H1 & P1 in the definition window.
Because if these two tags, the trend legend will be linked to historical chart.
4.4. ALARM
On the Special menu, point at Configure and then, click Alarms. The Alarm Properties appears
with the General properties sheet active.
33. 33
Fig.4.7. Alarm
Displaying alarms in the MIMIC
Two types of alarm window can be configured
1. Alarm summary: Information about all the alarms currently present.
2. Alarm History: Historical information about alarms like when the alarm was present,
acknowledged, returned etc.
4.5. RECIPE MANAGEMENT
Recipe Template Files
All recipes are defined and stored in the recipe template files. These files contain the following
information:
All ingredient names and their data types that can be used in a recipe.
Unit Names that associate InTouch tagnames with recipe ingredient values.
Recipe Names containing the quantities or values for each ingredient used in a recipe
instance.
34. 34
A recipe template file consists of the following three templates:
Template Definition
We will use the template definition to define all ingredients that are contained in a recipe. A data
type is required for each recipe ingredient. The data type can be analog, discrete or message. The
ingredient names are arbitrary and do not have to be InTouch tagnames.
Unit Definition
We will use the Unit Definition template to associate InTouch tagnames with recipe ingredients.
Many different loading definitions can be created. These definitions are called units. The Recipe
Load () function uses these definitions to load specific instances of the recipe to the associated
InTouch tagnames.
A Unit Definition may consist of all ingredient names or just a subset. Each recipe template file
is saved in the .CSV (Comma Separated Variable) file format. Therefore, you can create, open or
edit your recipe template definitions in any application that supports the .csv format. For
example, Notepad or Microsoft Excel.
Recipe Definition
We will use the Recipe Definition template to define Recipe Names for each instance of a recipe
and, the quantity required for each ingredient used in the instance. Recipe instances can be
modified, created or deleted in runtime through the recipe functions.
36. 36
Recipe Functions
Table 4.2. Recipe Management
Function Description
Recipe Delete This function is used to delete currently defined Recipe names from the
specified recipe template file.
Recipe Get
Message
This function is used to write an executed function's error code to an
analog tagname and the corresponding error code message to a message
tagname.
Recipe Load This function is used to load a specific recipe to a specific unit of tag
names.
Recipe Save This function is used to save a newly created recipe or to save changes
made to an existing recipe to the specified recipe template file.
Recipe Select Next
Recipe
This function is used to select the next recipe name currently defined in
the recipe template file.
Recipe Select
Previous Recipe
This function is used to select the previous recipe name currently defined
in the recipe template file.
Recipe Select
Recipe
This function is used to select a specific recipe name currently defined in
the recipe template file.
Recipe Select Unit This function is used to select the unit of tagnames to which the current
recipe values will be loaded.
37. 37
Week-5
PROGRAMMABLE LOGIC CONTROLLER
Programmable Logic Controllers (PLCs), also referred to as programmable controllers, are in the
computer family. They are used in commercial and industrial applications. A PLC monitors
inputs, makes decisions based on its program, and controls outputs to automate a process or
machine. This course is meant to supply you with basic information on the functions and
configurations of PLCs.
5.1. FEATURE OF 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 equivalents space that would be needed by electromechanical relays to
perform the same functions:
The main difference from other computers is that plc is 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 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.
5.2. TERMS RELATED TO PLC
38. 38
SENSOR: A sensor is a device that converts a physical condition into an electrical signal for use
by the PLC. Sensors are connected to the input of a PLC. A pushbutton is one example of a
sensor that is connected to the PLC input. An electrical signal is sent from the pushbutton to the
PLC indicating the condition (open/ closed) of the pushbutton contacts.
ACTUATOR: Actuators convert an electrical signal from the PLC into a physical condition.
Actuators are connected to the PLC output. A motor starter is one example of an 4 actuator that
is connected to the PLC output. Depending on the output PLC signal the motor starter will either
start or stop the motor.
DISCRETE INPUT: A discrete input also referred to as a digital input, is an input that is either
in an ON or OFF condition. Pushbuttons, toggle switches, limit switches, proximity switches,
and contact closures are examples of discrete sensors which are connected to the PLCs discrete
or digital inputs. In the ON condition a discrete input may be referred to as logic 1 or logic high.
In the OFF condition a discrete input may be referred to as logic 0 or a logic low. A Normally
Open (NO) pushbutton is used in the following example. One side of the pushbutton is connected
to the first PLC input. The other side of the pushbutton is connected to an internal 24 VDC
power supply. Many PLCs require a separate power supply to power the inputs. In the open state,
no voltage is present at the PLC input. This is the OFF condition. When the pushbutton is
depressed, 24 VDC is applied to the PLC input.
ANALOG INPUTS: An analog input is a continuous, variable signal. Typical analog inputs
may vary from 0 to 20 milliamps, 4 to 20 milliamps, or 0 to 10 volts. In the following example, a
level transmitter monitors the level of liquid in a tank. Depending on the level transmitter, the
signal to the PLC can either increase or decrease as the level increases or decreases.
DISCRETE OUTPUT: A discrete output is an output that is either in an ON or OFF condition.
Solenoids, contactor coils, and lamps are examples of actuator devices connected to discrete
outputs. Discrete Outputs may also be referred to as digital outputs. In the following example, a
lamp can be turned on or off by the PLC output it is connected to.
ANALOG OUTPUT: An analog output is a continuous, variable signal. The output may be as
simple as a 0-10 VDC level that drives an analog meter. Examples of analog meter outputs are
speed, weight, 4 and temperature. The output signal may also be used on more complex
applications such as a current-to-pneumatic transducer that controls an air-operated flow-control
valve.
39. 39
CPU: The central processor unit (CPU) is a microprocessor system that contains the system
memory and is the PLC decision making unit. The CPU monitors the inputs and makes decisions
based on instructions held in the program memory. The CPU performs relay, counting, timing,
data comparison, and sequential operations.
5.3. PLC COMPARE WITH OTHER CONTROL SYSTEM
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 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-cut.
5.4. ADVANTAGE OF PLC
40. 40
The same, as well as more complex tasks can be done with a PLC. Wiring between devices and
relay contacts is done in the PLC program. Hard-wiring, though still required to connect field
devices, is less intensive. Modifying the application and correcting errors are easier to handle. It
is easier to create and change a program in a PLC than it is to wire and re-wire a circuit.
Following are just a few of the advantages of PLCs:
Smaller physical size than hard-wire solutions.
Easier and faster to make changes.
PLCs have integrated diagnostics and override functions.
Diagnostics are centrally available.
Applications can be immediately documented.
41. 41
Week-6
PROGRAMMING
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.
6.1 GENERALLY USED INSTRUCTIONS & SYMBOL FOR PLC PROGRAMMING
Input Instruction
--[ ]-- This Instruction is Called XIC or Examine If Closed.
i.e.; 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 XIO or Examine If Open
i.e.; 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
42. 42
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 realizes 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. ----[ ]-----------|---[ ]---|----( )--
X | Y | S
| |
|---[ ]---|
Z
2. ---- [ ]----[ ] -------------------( )--
S X T
T = S AND X where S is equivalent to example 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.
6.2 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
43. 43
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
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 rule-
based languages, like spreadsheets or SQL. However, proper use of programmable controllers
requires understanding the limitations of the execution order of rungs.
Fig. 6.1. Example of Ladder Logic
44. 44
6.3. EXAMPLE OF SIMPLE LADDER LOGIC
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.
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 open contact, true when its coil is true (normally false)
--[]-- A "not" contact/close 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.
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.
45. 45
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
Example with PLC
Consider the following circuit and PLC program:
Fig. 6.2. Example of Ladder Logic with Plc
When the pushbutton switch is unactuated (unpressed), no power is sent to the X1 input of the
PLC. Following the program, which shows a normally-open 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,
46. 46
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
FIG.6.3: Lamp Glows When at Input Switch is Actuated
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 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 normally-closed pushbutton switch be substituted for
47. 47
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.
6.4 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.
Fig. 6.4: Programming of Start/ Stop of a Motor
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.
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:
48. 48
Fig. 6.5: Programming of Start of a Motor
Logic for Continuous 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:
Fig. 6.6: Programming of Continuous Running of a Motor (holding of O/P)
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:"
49. 49
Fig. 6.7: programming of stop of a motor
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.
50. 50
Week-7
COUNTER
7.1. THE CTU (UP COUNTER) INSTRUCTIONS
The CTU is an instruction that counts false-to-true rung transitions. Rung transitions can be
caused by events occurring in the program (from internal logic or by external field devices) such
as parts traveling past a detector or actuating a limit switch.
When rung conditions for a CTU instruction have made a false-to-true transition, the
accumulated value is incremented by one count, provided that the rung containing the CTU
instruction is evaluated between these transitions. The ability of the counter to detect false to true
transitions depends on the speed (frequency) of the incoming signal.
This Bit Is Set When And Remains Set Until One of
the Following
Count up over
flow bit OV
Accumulated value wraps around
to– 32,768 (from +32,767) and
continues counting up from there.
A res instruction having the same
address as the ctu instruction is
executed or the count is
decremented less than or equal to
+32,767 with a ctd instruction.
Done bit DN Accumulated value is equal to or
greater than the preset value.
The accumulated value becomes
less than the preset value.
Count up enable
bit CU
Rung conditions are true. Rung conditions go false or a res
instruction having the same
address as the ctu instruction is
enabled.
Table7.1: Status Bit of Up Counter
The on and off duration of an incoming signal must not be faster than the scan time 2x (assuming
a 50% duty cycle). The accumulated value is retained when the rung conditions again become
false. The accumulated count is retained until cleared by a reset (RES) instruction that has the
same address as the counter reset
51. 51
Fig. 7.1: Up Counter With Reset
The accumulated value is retained after the CTU instruction goes false, or when power is
removed from and then restored to the controller. Also, the on or off status of counter done,
overflow, and underflow bits is retentive. The accumulated value and control bits are reset when
the appropriate RES instruction is enabled. The CU bits are always set prior to entering the REM
Run or REM Test modes.
The CTU output instruction counts up for each false-to-true transition of conditions preceding it
in the rung and produces an output (DN) when the accumulated value reaches the preset value.
Rung transitions might be triggered by a limit switch or by parts traveling past a detector etc. The
ability of the counter to detect a false-to-true transitions depends on the speed (frequency) of the
incoming signal. The on and off duration of an incoming signal must not be faster than the scan
time. Each count (accumulator) is retained when the rung conditions again become false,
permitting counting to continue beyond the preset value. This way we can base an output on the
preset but continue counting to keep track of inventory/parts, etc.
52. 52
Fig.7.2: Up Counter With Arithmetic Operation
Use a RES (reset) instruction with the same address as the counter, or another instruction in our
program to overwrite the value of the accumulator and control bits. The on or off status of
counter done, overflow, and underflow bits is retentive. The accumulated value and control bits
are reset when a RES is enabled.
7.2 THE CTD (COUNT DOWN) INSTRUCTION
The CTD is an instruction that counts false-to-true rung transitions. Rung transitions can be
caused by events occurring in the program such as parts traveling past a detector or actuating a
limit switch. When rung conditions for a CTD instruction have made a false-to-true transition,
53. 53
the accumulated value is decremented by one count, provided that the rung containing the CTD
instruction is evaluated between these transitions.
This Bit Is Set When And Remains Set Until One of the
Following
Count down over
flow bit OV
Accumulated value wraps
around to– 32,768 (from
+32,767) and continues
counting up from there.
A res instruction having the same
address as the ctd instruction is
executed or the count is decremented
less than or equal to +32,767 with a
ctu instruction.
Done bit DN Accumulated value is equal
to or greater than the preset
value.
The accumulated value becomes less
than the preset value.
Count down enable
bit CU
Rung conditions are true. Rung conditions go false or a res
instruction having the same address as
the ctd instruction is enabled.
Table7.2: Status Bits Of Down Counter
The accumulated counts are retained when the rung conditions again become false. The
accumulated count is retained until cleared by a reset (RES) instruction that has the same address
as the counter reset.
Fig.7.3:Down Counter
54. 54
The CTD is an instruction that counts false-to-true rung transitions. Rung transitions can be
caused by events occurring in the program such as parts traveling past a detector or actuating a
limit switch. When rung conditions for a CTD instruction have made a false-to-true transition,
the accumulated value is decremented by one count, provided that the rung containing the CTD
instruction is evaluated between these transitions. The accumulated counts are retained when the
rung conditions again become false. The accumulated count is retained until cleared by a reset
(RES) instruction that has the same address as the counter reset.
Fig.7.4: Down Counter with Status Bits
The accumulated value is retained after the CTU or CTD instruction goes false, and when power
is removed from and then restored to the processor. Also, the on or off status of counter done,
overflow, and underflow bits is retentive. The accumulated value and control bits are reset when
a RES is enabled.
56. 56
Week-8
TIMERS
8.1. THE TON TIMER (TIMER ON DELAY)
Use the TON instruction to turn an output on or off after the timer has been on for a preset time
interval. The TON instruction begins to count time base intervals when rung conditions become
true. As long as rung conditions remain true, the timer adjusts its accumulated value (ACC) each
evaluation until it reaches the preset value (PRE). The accumulated value is reset when rung
conditions go false, regardless of whether the timer has timed out.
This bit Is set when
And Remains Set Until
One of The Following
Timer Done Bit DN (bit 13)
Accumulated value is equal to
or greater than the preset value
Rung conditions go false
Timer Timing Bit TT (bit 14)
Rung conditions are true and
the accumulated value is less
than the preset value
Rung conditions go false or
when the done bit is set
Timer Enable Bit EN (bit 15) Rung conditions are true Rung conditions go false
Table 8.1: Ton Timer Bits
When the processor changes from the REM Run or REM Test mode to the REM Program mode
or user power is lost while the instruction is timing but has not reached its preset value.
Fig. 8.1: TON timer
57. 57
It waits the specified amount of time (as set in the Preset), keeps track of the accumulated
intervals which have occurred (Accumulator), and sets the DN (done) bit when the ACC
(accumulated) time equals the PRESET time.
As long as rung conditions remain true, the timer adjusts its accumulated value (ACC) each
evaluation until it reaches the preset value (PRE). The accumulated value is reset when rung
conditions go false, regardless of whether the timer has timed out.
8.2 CASCADED TON TIMERS
Fig. 8.2: Cascade TON Timer
In this we have utilized just two timers, but there is nothing stopping us from sequencing as
many timers as we wish. The only thing to remember is; to use the DN (done) bit of the previous
timer to enable the next timer in the sequence. Obviously locating the timers on consecutive
rungs, and employing consecutive numbering will make such a program much easier to read and
trouble-shoot.
Self-Resetting Timers
Fig. 8.3: TON Timer with Normally Closed and Open Switch (self-resetting timer)
58. 58
In this exercise we cascaded two timers, but as before there is nothing to stop us from cascading
as many timers as we wish. The thing to remember here is; utilize the DN (XIC or “NOT“done)
bit of the last timer in the sequence to reset the first timer in the sequence. Once again,
consecutive rungs, and numbering will make a program much easier to read and trouble-shoot.
8.3. THE TOF TIMER (TIMER OFF DELAY)
Use the TOF instruction to turn an output on or off after its rung has been off for a preset time
interval. The TOF instruction begins to count time base intervals when the rung makes a true-to-
false transition. As long as rung conditions remain false, the timer increments its accumulated
value (ACC) each scan until it reaches the preset value (PRE). The accumulated value is reset
when rung conditions go true regardless of whether the timer has timed out.
This bit Is set when
And Remains Set Until One of The
Following
Timer Done Bit DN
(bit 13)
Rung conditions go true Rung condition go false
Accumulated value is equal to or
greater than the preset value
Timer Timing Bit TT
(bit 14)
Rung conditions are false
and the accumulated value is
less than the preset value
Rung conditions go true or when the
done bit is reset
Timer Enable Bit EN
(bit 15)
Rung conditions are true Rung conditions go false
Table 8.2: bit of TOF timer
When processor operation changes from the REM Run or REM Test mode to the REM Program
mode or user power is lost while a timer off-delay instruction is timing but has not reached its
preset value
59. 59
Fig. 8.4: TOF timer
8.4. THE RTO TIMER (RETENTIVE TIMER ON)
Use the RTO instruction to turn an output on or off after its timer has been on for a preset time
interval. The RTO instruction is a retentive instruction that begins to count time base intervals
when rung conditions become true.
This bit Is set when
and remains set until one
of the following
Timer done bit dn (bit
13)
Accumulated value is equal
To or greater than the preset value
The appropriate res
instruction is enabled
Timer timing bit tt
(bit 14)
Rung conditions are true and the
accumulated value is less than the
preset value
Rung conditions go false or
when the done bit is set
Timer enable bit en
(bit 15)
Rung conditions are true Rung conditions go false
Table 8.3: Status Bit of RTO Timer
When our return the processor to the REM Run or REM Test mode and/or rung conditions go
true, timing continues from the retained accumulated value. By retaining its accumulated value,
retentive timers measure the cumulative period during which rung conditions are true.
60. 60
Fig 8.5: RTO timer
An RTO timer functions the same as a TON with the exception that once it has begun timing, it
holds its count of time even if the rung goes false, a fault occurs, the mode changes from RUN to
PGM, or power is lost. When rung continuity returns (rung goes true again), the RTO begins
timing from the accumulated time which was held when rung continuity was lost. By retaining
its accumulated value, retentive timers measure the cumulative period during which rung
conditions are true.
61. 61
RESULT
As control systems reach the outside world, their operators are increasingly aware of new risks
these connections have opened. Information about the systems they operate is publicly available
for tools such as Stuxnet to take advantage of vulnerabilities in specific control system
technologies they decide to target. While the security challenges reported in this survey are
substantial and pervasive, the results demonstrate that operators are aware of the risks they face
and are actively engaged in efforts to mitigate them. Success in achieving these requirements
will occur only after asset owners and operators understand the requirements and the
requirements are subsidized and implemented by the industry, vendors and integrators.
62. 62
CONCLUSION
Automation plays an increasingly important role in the global economy and in daily experience.
Engineers strive to combine automated devices with mathematical and organizational tools to
create complex systems for a rapidly expanding range of applications and human activities.
Automation provides 100% accuracy all time. So the failures and mismatch in production
completely eliminates. It makes the system’s efficiency higher than manual as well as it controls
wastages, so the overall savings increases. It provides safety to human being. By that industry
can achieves the safety majors and ISO and OHSAS reputation. It makes the operation faster
than manual which causes higher production and proper utilization of utilities. It increases the
production by which the cost of each product decreases and industry profit increases. It provides
smooth control on system response. It provides repeatability, so that the same kind of products
are easier to manufacture at different stages without wasting time. It provides quality control, so
that the products become reliable which improves industrial reputation in market. It provides
integration with business systems. It can reduce labor costs, so the final profit increases.
Industrial automation is very compulsory need of industries in today’s scenario.
63. 63
REFERENCES
Training Manual Provided by Sofkon Ind. Pvt. Ltd.
Manual Book of Allen Bradley.
InTouch Scada Manual.
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.
https://en.wikipedia.org/wiki/Automation
https://en.wikipedia.org/wiki/SCADA
http://masters.donntu.org/2007/fvti/kleshnin/library/s2.htm