21
What is a SCADA - MMI system A SCADA or MMI system (Man Machine Interface) or HMI (Human Machine Interface) is the connecting point between the operator and the machine. It can be a Personal Computer (PC) or an operator panel but in both cases transmit and receive data from PLC. The Personal Computer (PC) , can make the same functions than the Operator Panel and moreover can make SCADA functions (data acquisition) and with the new software controls integrated under Windows operating system can send an e-mail or message to a mobile phone or make a phone calling under an event (process alarm). To convert a standard PC in a SCADA-MMI system the following items are needed: SCADA Software . This is the Software program that may be installed in the PC which makes it to work like a SCADA system. It can be from the same manufacturer than the PLC or different one. PC-PLC Communication card . It is normally supplied by the PLC manufacturer but can also be from the SCADA system manufacturer. It is located in a free PC mainboard bus (ISA or PCI) and is configured with a special software, different from the SCADA one. Communication driver . This is the “translator” between the SCADA- MMI system and the PLC. It is a software program different to the SCADA and makes the PC and the PLC to understand between them via the communication card. Basically the SCADA program generates a data base with the process parameters (TAG NAMES) and the communication driver is in charge of reading and writing of these data in the PLC. It is strongly recommended to use the same manufacturer for the communication card than the PLC. There is not any written rule about which PC is better for a SCADA application, but is necessary to clarify with the manufacturer about the compatibility of the PC and the operating system (OS) with the communication card, specially with the plug & play and IRQ configuration of certain PCs. A SCADA system has more advantages than an Operator Panel, one of the most important one is the data storage in the hard disk or any other backup system for statistics and trend analysis. With the new ETHERNET communication systems a process can be monitored from any place in the factory or the world when using a modem. The Operator panel , is composed of a screen with big or low graphics resolution and numeric or function keys located in the panel or over the same screen (touch screen). This screen can be of monochrome or colour type and indicates the status of the different process variables with graphics, figures, or field data points being also able to introduce

Scada Manual

Embed Size (px)

Citation preview

Page 1: Scada Manual

What is a SCADA - MMI system

A SCADA or MMI system (Man Machine Interface) or HMI (Human Machine Interface)

is the connecting point between the operator and the machine. It can be a Personal

Computer (PC) or an operator panel but in both cases transmit and receive data from PLC.

The Personal Computer (PC), can make the same functions than the Operator Panel and

moreover can make SCADA functions (data acquisition) and with the new software

controls integrated under Windows operating system can send an e-mail or message to a

mobile phone or make a phone calling under an event (process alarm).

To convert a standard PC in a SCADA-MMI system the following items are needed:

SCADA Software. This is the Software program that may be installed in

the PC which makes it to work like a SCADA system. It can be from the

same manufacturer than the PLC or different one.

PC-PLC Communication card. It is normally supplied by the PLC

manufacturer but can also be from the SCADA system manufacturer. It is

located in a free PC mainboard bus (ISA or PCI) and is configured with a

special software, different from the SCADA one.

Communication driver. This is the “translator” between the SCADA-

MMI system and the PLC. It is a software program different to the SCADA

and makes the PC and the PLC to understand between them via the

communication card.

Basically the SCADA program generates a data base with the process

parameters (TAG NAMES) and the communication driver is in charge of

reading and writing of these data in the PLC.

It is strongly recommended to use the same manufacturer for the

communication card than the PLC.

There is not any written rule about which PC is better for a SCADA application, but is

necessary to clarify with the manufacturer about the compatibility of the PC and the

operating system (OS) with the communication card, specially with the plug & play and

IRQ configuration of certain PCs.

A SCADA system has more advantages than an Operator Panel, one of the most important

one is the data storage in the hard disk or any other backup system for statistics and trend

analysis.

With the new ETHERNET communication systems a process can be monitored from any

place in the factory or the world when using a modem.

The Operator panel, is composed of a screen with big or low graphics resolution and

numeric or function keys located in the panel or over the same screen (touch screen). This

screen can be of monochrome or colour type and indicates the status of the different

process variables with graphics, figures, or field data points being also able to introduce

Page 2: Scada Manual

set points to adjust the control parameters, alarms, etc.

These Operator Panels are programmed with a special software, similar to the PLCs but

different of them. They communicate with the PLC normally with a serial port usually at a

speed of 19200 bauds/sec. Some of them use faster communications.

The front of the panel use to be of a plastic material and high degree of protection, NEMA

12 or IP65, to avoid damaging when exposed to dust, water drops, etc.

The following are the functions that a standard Operator Panel can develop:

Monitor and adjustment of process control data (read and write variables)

Process Alarms control, with help text of each one for operator.

Process Alarm history, to know when an alarm happened, was

acknowledged and went off.

Alarms printing

Both systems, PC and Operator Panel can be associated making an application complete,

with separated operator basic functions and advantaged features for production or

engineering.

BRIEF INTRODUCTION TO SCADA

SCADA comes from the abbreviations of “Supervisory Control And Data Acquisition”,

is to say: data acquisition and control of supervision. One is a software application

specially designed to work on computers in the production control, providing

communication with the field devices (independent controllers, programmable robots,

etc.) and controlling the process of automatic form from the screen of the computer. In

addition, it provides with all the information that is generated in the productive process to

diverse users, as much of the same level as to other supervisors within the company:

control of quality, supervision, maintenance, etc.

In this type of systems usually it exists a computer, that carry out tasks of supervision and

management of alarms, as well as data processing and process control. The

communication is made by means of special buses or networks LAN. All this is executed

normally in real time, and are designed to give to the plant operator the possibility of

supervising and of controlling these processes.

The necessary programs, and in its case the additional hardware that it is needed, is

denominated in general system SCADA.

Benefits

A package SCADA must be at readiness to offer the following benefits:

o Possibility of creating panels of alarm, who demand the presence of the operator

to recognize a shutdown or situation of alarm, with registry of incidences.

Page 3: Scada Manual

o Generation of historical of plant signal, that they can be upset for his process on a

spreadsheet.

o Execution of programs, that modify the control law, or to annul or even to modify

the tasks associated the robot, under certain conditions.

o Possibility of numerical programming, that it allows to make arithmetic

calculations of high resolution on the CPU of the computer.

With them, applications for computers can be developed (type PC, for example), with

capture of data, analysis of signals, presentations in screen, shipment of results to disc

and printer, etc.

In addition, all these actions are carried out by means of a package of functions that

includes zones of programming in a language of general use (like C, Pascal or BASIC),

which confers a very high power and a great versatility. Some SCADA offer book stones

of functions for languages of general use that allows to personalize of very ample way the

application that wishes to be made with this SCADA.

Requirements

A SCADA must fulfill several objectives so that their installation perfectly is taken

advantage of:

o Systems of open architecture must be, able to grow or to adapt according to the

changing necessities of the company.

o They must communicate with total facility and of transparent form to the user

with the equipment of plant and the rest of the company (local networks and of

management).

o They must be programs simple to install, without excessive exigencies of

hardware, and easy to use, with user friendly interfaces.

Modules of a SCADA

o Configuration: it allows the user to define the surroundings of work of his

SCADA, adapting it to the particular application that is desired to develop.

o Graphical interface of the operator: it provides to the operator the functions of

control and supervision of the plant. The process imagines by means of synoptic

graphs stored in the process computer and generated from the publisher

incorporated in the SCADA or concerned from another application during the

configuration of the package.

o Module of process: it executes the programmed actions of control from the

present values of read variables.

o Management and data files: one is in charge of the storage and ordered processing

of the data, so that another application or device can have access to them.

o Communications: one is in charge of the transference of information between the

plant and the architecture hardware that supports the SCADA, and between this

one and the rest of computer science elements of management.

Page 4: Scada Manual

Hardware in supervision systems: PLC and PC. The fact is that the automated tasks of control, visualization and computation can be

carried out by PLC’s (connected in network by means of the suitable modules) better than

with exclusive systems of control based on PC which finally is practical, however, it

depends on a great number of factors and the majority must considered individually for

each project of automization.

Thus, for example, the present knowledge and preferences of the user can play a greater

role than the pure power of the computer. The crucial factors, however, are the attributes

of capacity in real time and the properties of security that until now strongly have been

associated with the PLC, although the PC also can have the characteristic of capacity in

real time. A control system is inconceivable without capacity in real time. It is common

in systems of control by computer to have to choose, according to the characteristics of

the system to supervise, between the PLC or the PC. That hardware is due to choose that

better adapts to the necessities of the system to supervise.

The PLC, in most of the cases, are designed specifically to be used in demanding

industrial atmospheres and continuously have been developed so that their operating

systems in real time represent their greater virtue. They are and will continue being,

however, the first election for all control of tasks extreme circuits or by their yield and

simpleza, in which a PC could be simply “overload” due to the work that can suppose

other tasks to him of common scope, like the management and visualization of data,

accesses to peripheral, data bases, etc.

If, in addition to the control of tasks, a data processing, work in network or visualization

are needed (an application SCADA), a system based on PC must be taken in

consideration.

As far as operation systems, Windows NT, for example, is not strictly an operating

system in real time like the one of a PLC, but it can act of sufficiently fast form for

“smooth” applications in real time, thanks to his architecture of micro-kernel.xz

Remote process monitoring was the first type of application in networked

instrumentation, growing in popularity since the early nineties. However it was the

remote control, collaboration and distributed computing which attracted the most interest

in both industry and academic institutions.

The measurement, process control and automation industry has been historically slower

and cautious to standardize on newer technologies but new application domains using

Internet-enabled instrumentation have been pioneered in the industry and university

environments since mid-nineties.

The common layer of all modern software for measurement and automation is virtual

instrumentation. The concept of virtual instrumentation has been to create more

powerful, flexible and cost-effective instrumentation systems built around a PC using

software as the engine and interface. A virtual instrument can easily export and share its

data and information with other software applications since they often reside on the

same computer.

Most efforts to create these revolutionary tools went in to the development of an

intuitive, human-friendly interface.

This approach is typical for the arrangement of an automated industrial plant and it is

Page 5: Scada Manual

only logical to consider the same type of automation software – Supervisory Control and

Data Acquisition (SCADA).

Essential Attributes of SCADA

A real-time SCADA system consists of a number of essential attributes and data

interfaces to other systems, which require individual evaluation and testing for Y2K

compliance. Among these attributes are:

o Communication links,

o Control functions,

o Data acquisition functions,

o Metering, scheduling, and batch tracking,

o Real-time models,

o Historical archiving functions.

A failure in any of these systems could result in significant consequences for safety,

regularly concerns, and financial well being. Each of the systems should be tested

independently, and in a fully integrated environment (as much as possible and practical),

Highly Desirable Components

Some components of the overall system are required for day-to day operations of the

pipeline, but do not require the level of fault tolerance as the above systems. These highly

desirable components can be off-line for a short duration and restarted, by the SCADA

operators. These are at a much lower priority, and probably will not be considered for

action during SCADA triage.

These systems include :

o Data interface to other entities (e.g. financial),

o Hot standby system operation and fail over,

o Optimization systems,

o Backup communication links,

o Trending, charting and reporting utilities, and

o GIS interface.

Non-Essential Components

These are the optional components of the system. That is, components that the user can

operate without for some time without difficulty. These will receive little or no attention

until the essential and the highly desirable components are serviced. These include:

o Graphical display editors,

o Analysis and planning tools,

o System administrator tools, and

Page 6: Scada Manual

o Data archival and retrieval tools.

We use OI-2000 SCADA program to elaborate its functionalities.

OI - 2000 ENVIRONMENT

OI-2000 combines high performance monitoring and control with wide range of

data acquisition on the Windows NT/2000/9x/95/98 operating systems.

The OI-2000 system contains three sets of multithreaded processes: the user

process (HMI application), the OI-2000 Engine and industrial automation device

servers. These processes interact through a client-server relationship.

The user process displays the user interface and executes blocks of code called VIs

(Virtual Instruments) that are defined for control algorithms, supervisory control,

analysis and visual presentation.

The event-driven Engine maintains the real time database, communicates with device

servers and performs: data acquisition, engineering unit scaling, and alarm processing,

alarm and event logging, historical data collection and trending.

Device servers are the applications that communicate with the I/O devices such as PLCs

and plug-in cards. There are dedicated servers for different device manufacturers and

communication networks.

The developer and user are assisted by several ‘wizards’ for Configuration, HMI

and Front Panel.

OI-2000 uses a combination of tags, events, and data. A tag is a connection to a

real-world I/O point, while an event is anything that happens to a tag or to the

OI-2000 Engine in general.

Access to most OI-2000 utilities and the OI-2000 Engine can be configured on

a per-user basis.

OI-2000 ENGINE

The OI-2000 Engine is the heart of the OI-2000 system. It runs as a separate

process, independent of HMI applications. This minimizes interference between the

Engine and any HMI. The OI-2000 Engine manages the Real-Time Database

(RTDB), which contains information about all the tags in the system.

It reads values from the various device servers. These values are scaled and compared

with their alarm limits. If a tag is in an alarm state, the Engine generates appropriate

events and logs them to disk.

The RTDB is an in-memory snapshot of the state of all tags in the system. If a tag value

changes more than its update deadband, or its alarm state changes, the RTDB is

updated. Along with tag values, the RTDB also stores status, date, time, and alarm

information.

These tasks can be customized by configuring each tag with the Tag Configuration

Editor.

Some more sophisticated applications may require control over portions of the

OI-2000 environment from the applications. The System VIs palette provides

mechanisms to programmatically control the OI-2000 Engine. It includes functions

Page 7: Scada Manual

that control actions such as launching and shutting down the Engine, enabling and

disabling logging and so on.

OISCR: Screen Generator

Use OISCR in OI-2000 SCADA program to create your application including all

your Application screens, operator help screens, and macro / math / script elements

attached to your screen objects. Use OISCR also for modifying setup parameters,

passwords, recipe control flags, data entry order, (optional) DDE interface with runtime,

and for TCP/IP links with other nodes .

Data Type

User Input

Monitor

Input/Monitor

Monitor Widget

Inp/Mon Widget

Each data field is assigned one of six types. You may choose a data type by clicking on

its radio button. The chosen data type is indicated by a bullet in its radio button. Choose

the type User Input if you wish to allow entry of data values into memory by the Operator

while your application machine is running. Note that Data Type User Input should not be

confused with discrete Input memory. The User Input fields are initialized by reading

(monitoring) the associated memory value just once at the start when OIRT goes through

its initialization. No further monitoring will take place and this field will reflect the last

user input data through the screen. Choose the type Monitor if you wish to just display a

changing value on a screen for Operator Monitoring. Use data type Input/Monitor to

define a data type to be both User Input and Monitor. Note that only monitor fields on a

screen will be continuously monitored (at the specified Sample Time) and updated on

screen by OIRT. For faster screen updates you should keep the number of monitored

fields as small as possible and/or use as large a sample time as possible for less important

fields.

OI-2000 for Windows provides a powerful feature called OI-WidgetsTM. The OI-

Widgets feature in OISCR is a metaphor which makes MMI screens analogous to

"bolting and wiring together available gadgets into a control panel". To implement this

metaphor the OI-Widgets are provided in a Palette form. OI-Widgets are animated

representations of common system monitor/control units like Gauges, Meters, Knobs,

Buttons and LED's These are fully scalable and movable. You have full control over the

aesthetic features like colors, labels and text. OI-Widgets are included for both data entry

(Knobs, Buttons, Spinners etc) and monitoring (Gauges, Meters, LED's, etc). OI-

Widgets with 3-D features and eye-catching colors, enhance the look and feel of your

application. They make common actions like increasing the value of a Register, updating

Boolean fields and monitoring PLC data registers, easy. The operator does not even need

a keyboard to enter data. running OI-2000.

Page 8: Scada Manual

Select Input Widget data type if you wish to include one of the input widgets (Button,

Fader, Knob or Spinner

An input widget on the screen facilitates operator input of data values (analog or discrete)

through the screen using only a mouse and no keyboard. Select Monitor Widget data

type if you wish to include changing colored Box, or Circle or a Plot (Trend) on your

screen. Use Monitor Widget data type also for Graphic Fill, Vertical Bar, Horizontal Bar,

Gauge, LED, Vertical Meter or Horizontal Meter.

Data Format

Many different data formats are supported in OI-2000, some formats are valid

only for certain data types. The text box below lists the data formats in first column with

a Y under the data types for which these formats are valid.

Select Integer format if data in the field is to be an integer stored in a single (16 bit)

register. Select Long format if data in the field is to be a long integer stored in two

consecutive (16 bit) registers. (Data will be stored with the least significant word at lower

address).

Select Boolean format if data in the field relates to the Boolean status of a bit

with the only two values being 1 (for YES or ON) and 0 (for NO or OFF). Each Boolean

field may display the Boolean values in a field of width 3. For display purposes you may

choose (by clicking on the Options button) Logical Pair Set First (Yes/No) or Second

(On/Off). The file "0.MSB" contains the Boolean display values YES, NO, ON, OFF for

sets First and Second. You may change these values in 0.MSB if desired using OIRPT or

any text editor of your choice. Note that the file 0.MSB also contains the Boolean

display color values for First and Second sets for animated box and circle.

Select Alpha format if the data is to be alpha-numeric. (This format is useful to

store Alpha-numeric data in your PLC registers even if such a feature is not provided on

your PLC.) In this case the field width can be up to 50 characters wide and the Type can

be Input or Changing. The field is stored in consecutive memory locations, two

characters per location. Example: If the data in an Alpha field of width eight is

ABCD56GH and the address chosen by you for this field is Register 101 then Register

101 will contain the first two characters AB, Register 102 will contain CD, Register 103

will contain the two characters 56 and the Register 104 will contain the last two

characters GH.

Select Fixed format if you wish to treat the integer value in a single memory

location as a fixed point number. For example, suppose you wish to have on your screen

a fixed point field ###.## separated by a decimal point. Choose Fixed format and

Register Memory, enter the register Address (say, address 101). You should then move to

and select Field Width. Enter the width of the integral part, 3 in this example and then

Fractional width, 2 in this example. OI-2000 at runtime will use (two consecutive bytes

in) a single Register to store the fixed point number. The High order byte will contain the

integral part and the low order byte will contain the fractional part. Note that some bit

Page 9: Scada Manual

patterns in the register bytes may lead to meaningless display on screen at run time. You

will see the indication ###.## on your screen. At run time, the integer value in address

101(low byte)will be displayed right justified in the field of width three, and the

fractional part from address 101(high byte) will be displayed right justified in its field of

width two with leading zeros if necessary.

Select Long Fixed format if you wish to treat the long integer value stored in two

consecutive 16 bit memory words as a long fixed point number. The Long Fixed format

works similar to the Fixed format.

Select Float if you desire the 32 bit IEEE floating point format for the data. Note

that this representation requires 32 bits and hence two consecutive registers starting with

the register address you specify will be used to store the floating point data.

Select Double if you desire the 64 bit IEEE floating point format for the data.

Note that this representation requires 64 bits and hence four consecutive registers starting

with the register address you specify will be used to store the double precision value.

Select BCD format if data in the field is to be a Binary Coded Decimal. Note

that, in this case, the highest value you can store in a 16-bit register is 9999.

Select Binary format if data in the field is to be represented as a string of sixteen zeros

and ones.

Select Hex format if data in the field is to be represented as a string of four hex

digits 0-9, A-F.

Select Message format if you wish to display an appropriate message from a

Message File. Note that "Message" format is valid only if you have chosen data type

"Monitor". Two types of message files are allowed; a register based message file with an

extension .MSG and a bit based message file with an extension .MSB. You may create

up to 999 .MSG files and 999 .MSB files. Each .MSG file may contain any number of

messages (file size less than 65535) and each .MSB file may contain 32 messages. When

you select Data Format Message, you will be prompted for a "Message File ID". If the

messages for this field are listed in the file #.MSG then enter the number # and than click

OK. If the file extension is .MSG then choose Data Memory Register (or Local memory)

and type in the Address xxxx etc. If the file extension is .MSB then type in the Bit

Number as well. Enter a field width large enough to accommodate the longest message.

At run time the integer value in Register xxxx will be used as the message number to

display the corresponding line of text from the file #.MSG.

Select Bitmap if you wish to display (active) bitmaps. Compare this with the (static)

bitmap object. This option works like register and bit based message; instead of

messages in your message file #.MSG, #.MSB you will now specify bitmap file names in

your bitmap file #.BMR, #.BMB. The register or bit values will be used to select the

bitmap file name which will be displayed on screen. This feature can be used to produce

nice animation effects (see OI-2000 Demo).

Page 10: Scada Manual

Select Block if you wish to display blocks instead of bitmaps. This option works like

register and bit based message; instead of messages in your message file #.MSG, #.MSB

you will now specify block file names in your block file #.BLR, #.BLB. The register or

bit values will be used to select the block file name which will be displayed on screen.

This feature can be used to produce nice animation effects similar to bitmaps. The

advantage of blocks over bitmaps is that they require less storage.

Select Date format if you wish to display the Computer System date on your screen.

Date format is valid only if you choose Data Type "Monitor". Note that Date format

causes OIRT to constantly update the PLC registers (or Local Memory) you choose and

also the data field on the screen. For faster screen updates, you should use Local Memory

with Date format unless you wish to transfer computer system date information into your

PLC registers. The system date will be read from the computer and stored in three

consecutive PLC Registers or Local memory locations starting with the address you

specify for the field with Date format. The first location will contain the month MM, the

second location will contain the date DD, and the third location will contain the year YY.

Date will be displayed on screen in the format MM/DD/YY. You should allow for a field

width of 8 or more for date display (OISCR defaults to a width of 10). You may include

date fields on multiple screens; make sure to use the same addresses. Only the addresses

for the date field on the highest numbered screen will be used to update the memory

addresses you specify.

Select Time format if you wish to display the Computer System Time on your screen.

The Time format is valid only if you choose Data Type "Monitor". Note that Time

format causes OIRT to constantly update the PLC registers (or Local Memory) you

choose and also the changing fields on the screen. For faster screen updates, you should

use Local Memory with Time format unless you wish to transfer computer system time

information into your PLC registers. The system time will be read from the Computer

and stored in three consecutive PLC Registers or Local memory locations starting with

the address you specify for the field with Time format. The first location will contain the

hour HH, the second location will contain the minutes MM, and the third location will

contain the seconds SS. Time will be displayed in the format HH:MM:SS. You may

include time fields on multiple screens; make sure to use the same addresses. Only the

addresses for the time field on the highest numbered screen will be used to update the

Memory addresses you specify.

Input Widget Data Formats

Button

Fader

Knob

Spinner

Note that these data formats are valid only if you have chosen data type "Input Widget".

The input widgets allow the operator input of analog and discrete values using a mouse

and no keyboard input.

Page 11: Scada Manual

The input widgets Button, Fader, Knob and Spinner may also be used as Input/Monitor

Widgets. In this case the button, Faders and Knobs on the screen will show the correct

value of the memory location attached to them. Spinners will not show the correct

information but (if monitored on the same screen in another field) will contain the correct

information when clicked on. Of course, all input widgets will display the information

correctly as of their last use on that screen.

Monitor Widget Data Formats

Box

Circle

Plot

GFill

VBar

HBar

Gauge

LED

VMeter

HMeter

BitBox

BitCircle

BitGFILL

LineAnim

Select LineAnim to create a powerful monitor widget using any object from the

composite library. The concept of line animation is as follows. You specify graphically

any straight line on the screen. This line is defaulted to be a short horizontal line which

you could reposition, stretch or shrink as desired. The line itself will be invisible at

runtime. Its purpose is to provide a point of reference to attach the composite object you

have selected. The point of reference will move along this line based on the value in the

associated memory location (register or local). You may specify the Start value

corresponding to the Start of the line and the End value corresponding to the End of the

line. You then select a composite object to attach to the line.

Note that these data formats are valid only if you have chosen data type "Monitor

Widget". The abbreviations GFill, VBar, HBar, VMeter, HMeter stand for Graphic Fill,

Vertical Bar, Horizontal Bar, Vertical Meter, and Horizontal Meter, respectively.

The OI-Widgets feature in OISCR is a metaphor which makes MMI screens analogous to

"bolting and wiring together available gadgets into a control panel". The monitor widgets

allow you to add several dynamic capabilities to your screens, based on changing data

values in associated registers. These features, which are described further below, allow

you to:

Build shapes from boxes and circles whose colors can change in response to

changing data values.

Page 12: Scada Manual

¨ Plot trends of up to four data items within a user defined plot box.

¨ Fill areas with different colors in response to changing data values.

¨ Create vertical and horizontal bars, meters, and gauges which respond on a

percentage basis to changing data values.

Data Memory

Register

Bit

Ptimer

CTimer

Local

Page

DDE

Input

Output

By choosing the appropriate items from the Data Memory menu you tie down the data

field on the screen with memory locations in your PLC or Local memory provided in OI-

2000 for your data items. The discussion here is generic for all PLC types.

Choose Register if you wish to use a 16 bit data register from your PLC for the data.

Choose Bit if you wish to use a specific bit in a register for the (Logical) data for this

field. Choose PTimer to use preset value of Timers and CTimer for current value of

Timers; note that the Timer choices may not be distinct for some PLC's which use

Register for this purpose.

Choose Local if you wish to use local storage for the data item. Local memory is

allocated from your computer memory; you may use any addresses from 1 - 4095. The

purpose of Local Memory is to provide storage for some of the screen field data (such as

Date, Time, Alpha Numeric etc.) without using up PLC registers which incur a

communication overhead. Some Local Memory addresses are used for the simulated

variables in the demo screens, so you should not use them while running OIRT in a demo

mode.

Choose Page if the data in this screen field is from another field and possibly another

screen. Page Memory is the best way for you to access the screen-based database in OI-

2000 via the runtime OIRT. You may include any screen variables in your reports using

Page Memory; you need not know the PLC address specifications for that field. While

using Page Memory please note that only monitor variables on the current screen page

will be constantly updated. Monitor variables on non-current screen page will not be

updated unless they are checked for alarm conditions (as per your specification) or they

are being trended in a plot. Note that when you choose Page memory the descriptor

Address changes to Screen and the descriptor Bit Number changes to Tag ID.

Choose Input to specify discrete inputs and Output for discrete outputs.

Page 13: Scada Manual

Choose PCounter to use preset value of counters and CCounter to use current value of

counters; note that the counter choices may not be distinct for some PLC's which use

Register for this purpose.

Choose None if none of the other choices apply. Think of Data Memory labeled "None"

as similar to Local Memory which is automatically allocated for the storage of your field

data. This memory can only be accessed by you in your reports or other screen fields

using the Page Memory reference for this field.

Address and Bit Number

When you choose the data memory, you should move the mouse cursor to the Address

line and click the left button so that an I-bar appears in this edit field. Type in the

address number for the memory you have selected. You must enter a valid address for

each memory type because in most cases OISCR has no way to check for valid addresses.

The range of valid address for Register memory will depend on the particular PLC you

are using. Note that OISCR will accept addresses as integers only. When a bit number is

required in addition to a register address(for a complete specification of the address for

Bit Data Memory for some PLC's) you must enter a bit number. Note that when you

Select Page memory the descriptors Address and Bit Number become Screen and Tag ID

respectively.

Each Screen Page (not to be confused with PLC Registers) has a tag range of 1 - 65535;

that is, up to 65535 fields per screen page and 65535 pages.

Station and Port Id

OI-2000 allows communication with multiple PLC or I/O devices concurrently. These

devices may be connected in a multi-drop or network arrangement to a single Com Port

on the computer. OI-2000 also supports communication via multiple Com Ports

concurrently. You have the option of choosing same or different communication drivers

for the different Com Ports to meet your requirements. Click on Options button and then

enter PortId to identify the Com Port parameters which will be used to communicate with

a group of PLC in a multi-drop or network setup, and choose Station to identify the

station number which has the information for the current data field. For example, suppose

you have 3 Idec PLC's with station numbers 1,2,3 in an Idec network connected to COM1

on the computer and an Allen Bradley PLC-2 with station number 9, connected over a

Data Highway network to COM2 on the computer.

Field # PortId Station Remark

1 0 1 Specify Port0 portspec in SETUP.OI

2 0 2 Specify Port0 portspec in SETUP.OI

3 0 3 Specify Port0 portspec in SETUP.OI

4 1 9 Specify Port1 portspec in SETUP.OI

Page 14: Scada Manual

Tag

OISCR generates and maintains a unique internal tag for each data field on a screen. The

tag field is displayed to you with its value set the same as the internal tag. You may not

modify the tag.

A tag is a data value in the OI-2000 Engine. Tags are used to monitor I/O points, to

store a result of a calculation based on other tags, or to monitor tags on another

BOI-2000 Engine.

All data used will be tagged. This will include not only the I/Os of all field

terminals but also the data used in system management.

Memory tags are tags not connected directly to I/O points, they exist only in the

OI-2000 RTDB. Memory tags are used to log historical data and event information

on data that is either a software-generated value or a combination of values from

different I/O tag readings or perform alarm calculations.

.

Check/Alarm Limit

OISCR provides the Options button to designate whether you wish the data in a field to

be within specified High and Low limits. If the data type is Input, then the Operator entry

will be restricted to be within the High and Low limits specified. If the data type is

Monitor then a High or Low alarm will be generated at runtime if data exceeds the

specified limit. The monitoring for alarm will be done by inspecting the data field value

at the Sample Time (in milliseconds) specified by you. At first, you should request the

Check Limit facility only for changing data that is critical. If the performance of OI-2000

is satisfactory, then you may include other less critical data fields for Alarm checking.

Note that this feature may also be used with (Boolean) Bit memory.

Alarms and Events Management An alarm is an abnormal process condition pertaining to a tag. In OI-2000, alarms

are generated based on changes in a tag value or status. An event is something that

happens within the OI-2000 system. Events can be divided into two groups: those

that pertain to individual tags and those that pertain to the overall OI-2000 system.

An example of a tag event is a change of alarm state for a tag. Examples of system

events include a user logging on, the Engine starting up, or historical logging being

turned on.

For analogue tags, an alarm state can be of type HI_HI (very high), HI, LO, or LO_LO

(very low). For all data types (analogue, discrete, bit array, and string), if the server

returns a bad status, and alarming is enabled for that, the tag goes into Bad Status alarm.

All data types except string also support alarms based on tag value. If an analogue tag

exceeds a pre configured alarm limit, one of these alarms can occur. Discrete and bit

array tags are either not in alarm or in alarm.

The severity of an alarm is indicated by the alarm priority. Priorities range from 1

(lowest) to 15 (highest). The alarms displayed in the HMI can be filtered by group or

tag names, priority and acknowledgement.

The acknowledgment status of alarms can be viewed in the Alarm Summary or Event

Page 15: Scada Manual

History Display. There are two modes for handling tags that were previously in alarm

but have returned to normal: Auto Acknowledge and User Must Acknowledge. These

modes are configured in the Tag Configuration Editor for each tag.

An alarm summary is a collection of all the alarms that currently exist in the system. In

addition, if a tag previously in alarm returns to normal but is unacknowledged, a

notification is posted in the alarm summary. Alarms can be reported to the HMI by

using the Alarm Summary Display and the Read Alarm Summary VI.

An event history is a collection of all the alarms and events pertaining to tag values that

have occurred in the OI-2000 system since the Engine was started. Recent events

can be reported to the HMI by using the Event History Display and by using the Read

Event History VI from the block diagram. The alarms displayed in the Event History

Display also can be filtered by group or tag names, priority and acknowledgment status.

Database Option

Click the Database Options button in the Dataspec Options dialog box if you wish to log

the data in a monitored data field to an ODBC compatible database OI-2000.MDB for

historical trending or other analysis using tools available to you. You may select the

parameters to be logged and the logging interval. You must check the box labeled

‘Logging Enabled’ to ensure that the parameters you checked will be logged at the

specified logging interval. In addition, the check box ‘Log to Database’ must also be

checked in the Project Setup dialog box before data can be logged to the Database. Note

that your copy of OI-2000 must have the Historic trending option installed for the logged

data to be useful for trending analysis.

OIRPT: Report Generator

OI-2000 for Windows includes several tools: Report Generator, Macro Utility, Script

Utility, Math Utility and Network Manager. All these tools are integrated into the Screen

Generator.

The Report Generator allows you to generate customized free-form reports on your

printer. With the help of the spooling capability provided, you may print to disk multiple

reports concurrently. This spooling capability in effect provides you with multiple virtual

printers. You may merge the spooled reports into a single printed report whose format is

under your total control. These capabilities are accessible through the report generator

OIRPT.

OIRPT has two basic functionalities:

1. General purpose text editor

2. Specialized report generator

In its role as a report generator, OIRPT is used to create, inspect, or modify printer and

spool report formats to be used by the runtime OIRT (Section 6) to generate the printer

and spool reports. As a text editor, OIRPT is used to inspect or modify Documentation

and Alarm reports. In general, as a text editor OIRPT may be used to create, inspect

Page 16: Scada Manual

and/or modify any text files (example, Message files .MSG and .MSB). A sample printer

report is shown below. Note: OIRPT creates the report format files and OIRT uses

these format files to print the corresponding reports at runtime.

Macro Editor The Macro Editor allows you to Create or Insert new macros, or Edit an existing macro in

your macro file. Radio buttons are provided to select one of these three options: Create,

Edit, or Insert. A scrollable list of the macros in your file is displayed for your

convenience. New macros you create will be appended to the end of the list. You may

insert a new macro above any selected macro in the list using the Insert option. You may

also edit any selected macro by using the Edit option.

OISCRIPT: Script Utility

The runtime interface OIRT processes any script attached to a data field. In previous

versions of OI-2000 the script was a single line math expression identified by the line

number in the file MATH.OI which stores all math expressions to be accessed by OIRT.

In the current version of OI-2000, you may attach a script or a math expression to a data

field. Since a script is a generalization of the very limited single line math expression

you should not use the math expression feature, use script instead. Math feature is

supported at present only for the sake of compatibility with earlier versions of OI-2000

and may be discontinued in a future release of OI-2000.

Script Editor The Script Editor allows you to Append or Insert new source lines, or Edit an existing

source line in your script file. Radio buttons are provided to select one of these three

options: Append, Edit, or Insert. Scrollable list of the source lines in your Script file is

displayed for your convenience. You may insert a new source line above any selected

source line in the list using the Insert option or append to the end of the list using the

Append option. You may also double click on a source line to start editing it or click on

the Edit option to edit the selected source

Overview of TCP/IP Connectivity OI-2000 supports TCP/IP Connectivity over LAN and/or the Internet. Data collection,

reporting and analysis are as easy to do from across the World as it is from across the

room from the data source. Users can connect a local PC running OI-2000 to a remote

PC running OI-2000 and monitor or change process variables.

OI-2000 can be run as either a server or a client or even both at the same time. This

allows several sites running OI-2000 to connect to a server and collect data, and the

server in turn can connect to other servers and update information based on data received

from all servers. All of this communication can be done through a Local Area Network

(LAN) or through the Internet. All connections in OI-2000 are password protected and

Page 17: Scada Manual

logged with date and time stamp. This added security feature together with the Internet

security and the Command Center’s security makes OI-2000 safe, secure and dependable.

The OI-2000 Internet / LAN connectivity option is fast and network overhead is minimal.

In fact, a typical moderate sized application can be remotely monitored from your home

office using your computer’s modem and a dial-up Internet connection. OI-2000 also

runs blazingly fast over a typical 10/100 Mbps LAN. Over a LAN, even larger

applications have a negligible impact on network performance.

Network Manager

The Network Manager is a dialog-based utility accessed from the Tools menu in OISCR

Screen Generator. The Network Manager is used to create a server list to associate IP

addresses with a meaningful name for the OIRT server(s) that the client OIRT will

connect to. When creating a data specification for a client data object that derives its data

value from a remote server, a name from the server list maintained by the Network

Manager will be used to connect that object to the server.

Server OIRT

When OIRT is initialized it will connect a designated web site. OIRT will then write an

entry containing the name of the server and its IP address into a lookup database file in a

private directory for that customer. OIRT will then listen for connections from OIRT

clients on port 2364. Port 2364 has been reserved for OI-2000 by the Internet Assigned

Numbers Authority (IANA). When a OI-2000 client OIRT tries to connect with the

server a user name and password are used to validate the connection. If the connection is

validated, the client OIRT will send the server OIRT the data specification which the

server OIRT will add to its polling loop. When the data for the remote object changes,

the server will send the changed data to the client. (This may be called server - client

communication by ‘exception’).

OI-2000 supports several types of servers including OPC Servers, DDE Servers,

and Device Servers.

OPC Servers are written to the OPC Foundation OPC Data Access specification and are

provided by many companies. A DDE Server is any server that supports the DDE

Server interface

Touch Object

A Touch Object defines a rectangular touch zone area on the screen. At runtime, Touch

Object on a screen is activated in one of three ways: (i) touch screen hardware is installed

and the operator touches inside the zone, (ii) the operator clicks the mouse inside the

touch zone, and (iii) the operator presses the key corresponding to the keycode associated

with the touch zone (if such a key exists on his keyboard).

Touch zone objects are useful to convert a screen into a control panel with graphical

buttons to initiate various actions. You can associate two bitmaps with the touch zone

Page 18: Scada Manual

object. These bitmaps represent how the touch zone will appear in the (normal)

untouched state and in the touched state. The purpose of these bitmaps is to give a visual

feedback to the operator at runtime. Two actions can be associated with the touch zone:

The first action to be taken when the touch zone is pressed and the second action to be

taken when the touch zone is released. Actions may be defined by associating macros

(see Section 4) with the touch zone pressed and / or released. Note that you may be able

to use the macros to affect the execution of selected functions in Scripts associated with

the current screen. This feature can be used to set up simple touch zones to initiate

complex actions by the operator.

Use the Touch Object tool to create touch zone objects. Locate and drag the mouse as

you would while drawing a box to create the desired touch zone. A pop up dialog box

appears and allows you to specify two action macros to associate with the touch zone:

one to correspond to the touch zone pressed and the other to the touch zone released . If

you do not need the action of both macros leave the “macro key for touch zone pressed”

unused and specify only the “macro key for touch zone released”. Click on the "..."

button to browse the available bitmaps for your project and select the filenames for the

bitmaps to be used to represent the Up (untouched) and the Down (touched) state of the

touch zone.

Note: Use Windows Paint Brush or some other application to create your own bitmaps or

use what we have provided in the Demo project as the starting point for your bitmaps.

Bitmap Object

Use this tool to create bitmap objects which include bitmap images created and saved in

some other application. This tool will be useful to include your company logo, scanned

images of the part of your machine or process on display screen, CAD images etc. To

include a bitmap on your screen position the mouse cursor at the desired location of the

top left corner for the bitmap, and click the mouse. You will be presented with a select

Bitmaps browser box. Select the bitmap and click OK. OISCR will display on screen

your bitmap. Note that the bitmap object can be relocated by selecting and dragging it.

To resize a bitmap, select it and click on Patterns Resizeable Bitmap and then resize the

bitmap as desired.

Composite Object

Samples from a composite library (C:\OI-2000.32\DEMO\COMPOSIT.LIB)

You may create an image in OISCR Screen Generator using standard drawing tools and

build your own composite library or use the composite objects provided in

COMPOSIT.LIB.

Use the Composite Object tool to recall a composite object from the composite library.

When you choose this option you will see a dialog box listing the objects from the

selected composite library. You may scroll through the object names (see Figure below)

Page 19: Scada Manual

as you view them in the pre-view window to help you select the desired object. When

you click on OK, the composite object you selected will be recalled from the library and

placed on the top-left corner of your screen. You may select it (by clicking on it),

reposition it on screen, and resize it like any other object on screen. To select a different

library use the Options, Customization, Misc menu. To delete composite objects from

the library click on the Delete button when you are viewing the composite objects from

the library.

Polled and event-driven programming It is not necessary to use a separate loop for each Tags or Alarms and Events. This

can be cumbersome to program for a large number of tag reads. The alternative is to poll

the database for several tags at regularly timed intervals. Usually one While Loop is

needed in the diagram to poll the front panel controls to monitor what the operator is

doing. By polling, monitoring of HMI controls can be combined with the reading in of

tag values and alarm states.

Data Logging and Extraction A view of data over time is called a trend. Trends can display real-time or historical

data.

A real-time trend is a display of tag values as they are collected in real time over a

relatively short period of time. A real-time trend can be displayed in the HMI by using

the Trend Tags or the HMI Wizard.

A historical trend is a display of tag values that have been logged to disk, usually over a

relatively long period of time. A historical trend can be displayed in the HMI by using

the Historical Tag List and Read Historical Trend. Historical data can also be viewed.

In order to log historical data the selected tags have to have historical logging enabled, a

path for the historical database has to be configured and the historical logging turned on

for the OI-2000 Engine.

ODBC is a standard developed by Microsoft. It defines the mechanisms for accessing

data resident in database management systems (DBMSs). Virtually all Windows-based

applications can retrieve data from a database supporting ODBC.

There is no need to interrupt data collection in order to query the database. In

fact, the ODBC Driver allows multiple ODBC applications to perform Structured Query

Language (SQL) queries simultaneously.

The table contains a field or column for each data member logged to the database.

User queries can include special commands that perform data transforms, making it

easy to manipulate and analyze historical data. These data transforms allow direct

calculation and retrieval of complex information from the database such as averages and

standard deviations.

FOR MORE DETAILS ON OI-2000 PROGRAMMING REFER TO OI-2000

SCADA SOFTWARE HELP FILES

END

Page 20: Scada Manual
Page 21: Scada Manual

INTRODUCTION TO SUPERVISORY CONTROL AND

DATA ACQUISITION(SCADA) PROGRAMMING

BY

IIATCA