Sei sulla pagina 1di 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 SCADAMMI 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

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.

o o o

Generation of historical of plant signal, that they can be upset for his process on a spreadsheet. Execution of programs, that modify the control law, or to annul or even to modify the tasks associated the robot, under certain conditions. 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 o Systems of open architecture must be, able to grow or to adapt according to the changing necessities of the company. 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). 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 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. 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. Module of process: it executes the programmed actions of control from the present values of read variables. 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. 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.

o o o

Hardware in supervision systems: PLC and PC. The fact is that the automated tasks of control, visualization and computation can be carried out by PLCs (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

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 o o o o o Communication links, Control functions, Data acquisition functions, Metering, scheduling, and batch tracking, Real-time models, 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 o o o o o Data interface to other entities (e.g. financial), Hot standby system operation and fail over, Optimization systems, Backup communication links, Trending, charting and reporting utilities, and 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 o o Graphical display editors, Analysis and planning tools, System administrator tools, and

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

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 OIWidgets 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). OIWidgets 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.

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

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).

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.

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.

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 OI2000 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 OI2000 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.

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 1 2 3 4 0 0 0 1 1 2 3 9 Remark

Specify Port0 portspec in SETUP.OI Specify Port0 portspec in SETUP.OI Specify Port0 portspec in SETUP.OI Specify Port1 portspec in SETUP.OI

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

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

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

logged with date and time stamp. This added security feature together with the Internet security and the Command Centers 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 computers 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

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)

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

INTRODUCTION TO SUPERVISORY CONTROL AND DATA ACQUISITION(SCADA) PROGRAMMING BY IIATCA

Potrebbero piacerti anche