Data acquisition and operational control systems (SCADA systems)

The term Supervisory Control and Data Acquisition System or SCADA system appeared in the late 1980s. XX century. simultaneously with the first attempts to use personal computers with graphical applications installed on them as operator consoles.

The first SCADA systems were developed for DOS or Unix operating systems and had rather modest capabilities, both due to the hardware limitations of the hardware and the graphical capabilities of the operating systems. SCADA systems became widespread simultaneously with the appearance of graphical interfaces, such as Windows 3.11, X-Windows, Phantom and hardware that allows you to achieve the necessary speed of execution of processes in multitasking modes.

Data acquisition and operational control systems (SCADA systems)

The reason for the emergence of SCADA systems as top-level software development tools is similar to the reasons for the emergence of systems such as Borland Delphi and other visual programming systems.Their main task is to relieve software developers of the routine and indeed useless burden of describing standard interfaces and functions. At the same time, it should be understood that the use of SCADA systems does not imply a reduction in the requirements for the developer's qualification, as they try to imagine.

Distinguish the systems MMI (Man Machine Interface) and SCADA, as they both successfully developed independently of each other, occupying different niches in the device market HMI (Human Machine Interface).

HMI (Human Machine Interface)

MMI systems are actually local control panels for individual devices or technological installations, equipped with alphanumeric screens and keyboards or graphic, usually touch screens.

In most cases, the MMI device is implemented using a special controller, and its software part does not imply any additional modifications or changes.

At the same time, SCADA systems include the use of standard personal computers and operating systems, are used to automate the process of managing large technological processes, in which a large number of executive devices and technological units are involved, and also support the possibility of implementing distributed applications ( using multiple operator consoles) …

It is impossible to draw a clear line between MMI and SCADA systems due to the existence of end-to-end programming systems in which there is often no distinction between software development tools for different levels of the control system.

The lack of a single standard describing the purpose and functional composition of SCADA systems and the difference in interpretations of the term "SCADA" itself complicate the classification and comparison of systems of this class.

Siemens WinCC

The following main groups of SCADA systems can be distinguished:

  • SCADA systems developed by controller manufacturers;

  • SCADA systems developed by independent manufacturers;

  • SCADA systems are components of end-to-end programming systems.

The controller equipment manufacturer's task in developing their own SCADA system is to provide the end user with a tool for developing visualization applications using controllers from that manufacturer.

The following main characteristics of such systems can be distinguished:

  • the interface of these systems repeats the interface of means of writing software for the controller equipment;

  • SCADA system components are optimized to work with data received from control equipment of a specific manufacturer;

  • Interfaces for data exchange with equipment from other manufacturers are poorly implemented or difficult to use.

A classic example of such a system is Siemens WinCC… The use of such proprietary systems, on the one hand, minimizes the cost of training software development specialists, but on the other hand, it strictly binds both the developer and the end user of the system to a specific manufacturer or even to a specific line of equipment from one manufacturer.

In addition, a number of control equipment manufacturers were forced to develop their own SCADA systems for marketing purposes without providing their software products with the required level of support and maintenance.


Supervisory control and data collection

Third-party SCADA systems are the most flexible tools for creating process visualization and control applications. Their advantages include the support of a large number of functions for creating decentralized and distributed control systems, as well as the ability to integrate equipment from different, including competing, manufacturers into one system.

To exchange data with executive equipment, such systems use software I / O servers that implement DDE or OPC interfaces. The spread of such SCADA systems, as well as the need to comply with automation tool standards, led to the fact that all controller equipment developers have their own OPC or DDE software servers, which are delivered complete with equipment or to order.

Since the end-to-end programming system includes the development of operator stations as an integral part of the control system, it always contains separate components of the SCADA system. However, since the entire system functions as a whole, these components may also be components of other modules of the end-to-end programming system, or it may be impossible to separate the SCADA system in its pure form into a software product.

Such systems have the same advantages and disadvantages as SCADA systems developed by controller manufacturers, taking into account two main differences:

  • SCADA systems, which are an integral part of end-to-end programming systems, have practically no interoperability with software and hardware from other manufacturers;

  • the role of the SCADA system in such applications is limited to the development of a graphical interface.

Composition and structure of SCADA systems


How the scada system works

Composition and structure of SCADA systems

Typically, SCADA systems consist of two separate sets of software products: a development environment and an execution environment.

Development environment is called the set with which the environment for visualization of the technological process is designed and configured.

Environment during work — this is a set of software products that are necessary for the work on the project of the program for the visualization of the technological process in the operator's station.

Separately, the issue of the interaction between the development environment and the runtime environment during work with the same project of the developer and the operator should be considered:

1. Changes made by the developer take effect immediately.

2. The runtime reflects the changes made as found in the project source code.

3. Changes are reflected at runtime on reboot or force.

The implementation of the first type of interaction makes it possible to demonstrate the capabilities of the product quite clearly and effectively in commercial presentations, and therefore it is sometimes implemented in the final software products. However, when working with real projects, there is a potential danger of missing part of the graphical interface or dynamic movement of controls. In this regard, the second and third types of interaction or their combination are the most widespread.

The following main parts of the SCADA system can be distinguished:

  • tag base;

  • graphics display module;

  • script processor;

  • alarm and warning system;

  • module for archiving technological process parameters.

SCADA System Tag Is an object for storing the value of a technological process parameter and its properties. Labels are sometimes incorrectly called "variables". At the same time, the concept of a label is closest to the definition of a class in object-oriented programming languages.

The graphical display module implements the graphical interface of the project. As a rule, a graphical interface is a set of screen forms with graphical elements placed on them. The task of creating a screen is reduced to placing graphic elements on screen shapes and setting their properties.


The graphical display module implements the graphical interface of the project

In the process of calling, displaying and closing screen forms, when clicking on graphic objects, changing properties or values ​​of individual tags, it is necessary to perform calculations or actions for which there are script engine… Scripts are also called “macros” or “scripts” in some systems.

Most SCADA system scripts that implement the graphical interface of automated operator workstations are mouse click handlers on graphical elements.

For scripts, SCADA systems from different manufacturers offer one or more languages. Systems developed by controller manufacturers or as part of end-to-end programming systems usually offer the same programming languages ​​for scripting as for writing controller software… Third-party SCADA systems often offer specialized macro scripting languages.

Using general-purpose programming languages ​​allows you to implement complex user interfaces and non-standard methods of working with data by accessing additional libraries and APIs.

At the same time, the developer must in any case study function libraries for working with SCADA-system components, in the same way as macro languages ​​are studied, and the implemented code can be potentially dangerous or inherit errors from third-party function libraries .

Alarm system is intended to notify the operator of the value of the process parameter outside the permissible limits. As a rule, for each technological parameter, 2 types of settings can be set according to which the notification will appear: respectively, emergency and warning settings.

Depending on the capabilities of the system, these settings are set according to one or more criteria:

  • Out of range. In this case there are: upper and lower warning values ​​and upper and lower alarm values.

  • A deviation from the nominal value of some value. Distribute the minimum and maximum permissible deviations from the set value.

  • Setting the maximum allowable rate of change of the process parameter value. Values ​​of allowable range settings are specified in absolute units, and deviation from nominal and rate of change can be specified both in absolute units and as a percentage of the current or setpoint value.

Due to the fact that for one technological process the number of parameters for which emergency and warning setpoints are set can be large, in SCADA systems it is possible to combine the technologically controlled parameters into groups, as well as to set the priority level for any set point.

The main task backup module — providing the ability to display graphs of technological parameters (Trends) on the monitor screen for a relatively short period, as well as building simple reports. The module for archiving the values ​​of the SCADA system should provide the following functions:

  • archiving values ​​in a local database with a certain frequency or change;

  • when archiving values ​​upon change — possibility to set dead zone for archiving;

  • set a local database size limit;

  • setting the time to store values;

  • perform routine maintenance to remove outdated or earliest values ​​when storage time or database size is exceeded in automatic mode;

  • availability of an interface for building graphs of archive values ​​and viewing them;

  • availability of a system for exporting parameter values ​​for the specified period in the form of a table of values.

We advise you to read:

Why is electric current dangerous?