OpenSCADAWiki: Home Page En/ Function
 

Functional characteristics and demands of OpenSCADA system

The page contains information allowing to receive general representation about functions which the OpenSCADA system can carry out by the current moment. Functions are grouped on spheres of application of OpenSCADA system. For reception of a picture as a whole of functions planned or make now are included also. The page also have demands of OpenSCADA system for it building and execution.

Contents

The employment area of system OpenSCADA

Separating to the employment areas is made to simplify perception of the system functionality in light of traditional area for the project OpenSCADA — automation of technological processes. But also there possible mixed and specialized configuring systems for real-time data operation, for example into areas: ERP, Billing, Smart House and etc.

OpenSCADA system's roles (96 Kb)
Fig. 1. OpenSCADA system's roles



SCADA system's server



Station of the operator of technological process, the board of the dispatcher, the panel of monitoring, etc.



The environment of execution of controllers (PLC)

Universal OPC-UA server

Due implementation of the protocol OPC-UA into agent mode, OpenSCADA can provide popular function of the OPC-server to client's protocols, which supports and direct implemented into OpenSCADA. The function common uses on platform MS Windows®, and many SCADA-systems on the platform work exclusively with OPC—servers, as the data sources. Thus OpenSCADA can act by universal OPC-server on Linux platform (Fig.2).

In plans. With adapting OpenSCADA for work on MS Windows® platform and implementing work with OPC-DA by system DCOM, there will appear possibility for applying OpenSCADA into gate OPC-DA -> OPC-UA role, which means free integration of old systems to the new or accumulation systems.

OpenSCADA system role as "OPC-UA Server". (188 Kb)
Fig. 2. OpenSCADA system role as "OPC-UA Server".


The data sources and protocols, which accessible by the unified OPC-UA server:

Requirements for OpenSCADA

Execution

The demands to apparatus for OpenSCADA system execution at different roles viewed into table 1. The demands to programs for OpenSCADA system execution and it modules allow into table 2.

Table 1. The demands to apparatus for OpenSCADA system and it modules.
Role Demands
SCADA system's server CPU: x86_32 (more than i586), x86_64 or ARM, with frequency more 500 MHz
MEM: 128 MB
HDD: 10 GB include OS and place for archives
Station of the operator of technological process, the board of the dispatcher, the panel of monitoring, etc. CPU: x86_32 (more than i586), x86_64 or ARM, with frequency more 1 GHz
MEM: 512 MB
HDD: 4 GB include OS without archives place
The environment of execution of controllers (PLC) CPU: x86_32 (more than i586), x86_64 or ARM, with frequency more 133 MHz
MEM: 32 MB
HDD: 32 MB include OS without archives place.

Table 2. Dependences of performance of OpenSCADA system and its modules.
          Component          Description
Dependences of OpenSCADA system's kernel
OS LinuxThe distribution kit of operating system Linux (ALTLinux, SuSELinux, Mandriva, ASPLinux, Fedora, Debian, Ubuntu ...)
"Standard libraries"Standard set of libraries: GLibC (>= 2.3) or uCLibC (>= 0.9.32) and libstdc++ (>= 3.3). Certainly this already allow into installed distribution. Special demand is using native thread library NPTL, already used for all modern distributions of the Linux.
zlibCompression library.
libpcreLibrary for use regular expressions, compatible with Perl.
libgd
(opt: --enable-LibGD)
Graphic library GD version 2, it is desirable that it will be without XPM support (dependence on library of a X-server is excluded) and support of FontConfig.
DB.MySQL module
libMySQLLibrary for access to MySQL DBMS.
DB.SQLite module
libsqlite3Library for access to built in DB SQLite version 3.
DB.PostgreSQL module
libpqLibrary for access to PostgreSQL DBMS version more 8.3.0.
DB.FireBird module
FirebirdSSFireBird DBMS version 2. Often is absent in distribution kits of Linux and demands individual loading from an official site (http://www.firebirdsql.org)!
Transport.SSL module
libsslLibrary for codifying OpenSSL.
DAQ.SNMP module
libsnmpLibrary for access to data of network devices under SNMP protocol.
DAQ.System module
libsensors (opt: auto)Hardware sensors' library versions 2 and 3.
DAQ.SoundCard module
libportaudioMultiplatform library for access to sound controller version 19 and higher (not 18).
DAQ.OPC_UA module
libsslLibrary for codifying OpenSSL.
DAQ.Comedi module
libcomediLibrary of realizing support for DAQ-boards different manufacturer on boards ISA, PCI, PCMCIA and USB.
Modules: UI.QTStarter, UI.QTCfg
libQT4 (libQtGui) or
libQt5 (libQt5Widgets,libQt5PrintSupport)
Library for construction of user graphic interface QT version 4.3 and higher or 5.1 and higher.
Module: UI.Vision
libQT4 (libQtGui) or
libQt5 (libQt5Widgets,libQt5PrintSupport)
Library for construction of user graphic interface QT version 4.3 and higher or 5.1 and higher.
libQtWebKit (opt: auto)Library of Web-rendering engine WebKit.
libfftw3 (opt: auto)Library for fast Fourie transfer of signals.
libphonon (opt: auto)Library for full formatted video and audio play.
Modules: UI.WebVision, Special.FLibSYS
libfftw3 (opt: auto)Library for fast Fourie transfer of signals.

* "opt: auto" — provides for disable of using the library at build time on it absence.

Building

Dependencies of system OpenSCADA for building of the OpenSCADA kernel and its modules are tabulated bellow.

Table 3. Dependencies of building of OpenSCADA system and its modules.
          Component          Description
The general requirements for building OpenSCADA
OS LinuxThe distribution kit of operating system Linux (ALTLinux, SuSELinux, Mandriva, ASPLinux, Fedora, Debian, Ubuntu ...)
g++The compiler of language C++ version 3.3 and more from a collection of compilers GCC, including library GLibC (>=2.3) or uCLibC (>= 0.9.32).
autotools (autoconf, automake, libtool, pkg-config)Tools for formation of building environment of OpenSCADA. They are necessary only in the case of changing building environment of OpenSCADA, for example for addition of the new module or change of the fixed parameters of building. Automake >= 1.9.
gettextGroup of utilities for preparation and compilations of translations of the interface of programs on various languages in conformity with internationalization standard I18N.
sqlite3Control utility for DB SQLite3 files.
zlib (devel)Compression library, a package for development.
libpcre (devel)Library for use regular expressions, compatible with Perl, a package for development.
libgd (devel,
opt: --enable-LibGD)
Graphic library GD version 2, a package for development, it is desirable that it will be without XPM support (dependence on library of a X-server is excluded) and support of FontConfig. It is used for construction of trends and other images in PNG format.
DB.MySQL module
libMySQL (devel)Library for access to MySQL DBMS, a package for development on language C.
DB.SQLite module
libsqlite3 (devel)Library for access to built in DB SQLite version 3, a package for development.
DB.PostgreSQL module
libpqLibrary for access to PostgreSQL DBMS version more 8.3.0, a package for development.
DB.FireBird module
FirebirdSSFireBird DBMS version 2, a package for development. Often is absent in distribution kits of Linux and demands individual loading from an official site (http://www.firebirdsql.org)!
Transport.SSL module
libssl (devel)Library for codifying OpenSSL, a package for development.
DAQ.JavaLikeCalc module
bisonThe program of generation of parsers on the basis of grammar of language.
DAQ.SNMP module
libsnmp (devel)Library for access to data of network devices under SNMP protocol, a package for development.
DAQ.System module
libsensors (devel, opt: auto)Hardware sensors' library versions 2 and 3, a package for development.
DAQ.Siemens module
glibc-kernheadersLinux-kernel headers by library GLibC.
DAQ.SoundCard module
libportaudio (devel)Multiplatform library for access to sound controller, a package for development version 19 and higher (not 18).
DAQ.OPC_UA module
libssl (devel)Library for codifying OpenSSL, a package for development.
DAQ.Comedi module
libcomedi (devel)Library of realizing support for DAQ-boards different manufacturer on boards ISA, PCI, PCMCIA and USB, package for development.
Modules: UI.QTStarter, UI.QTCfg
libQT4 or libQT5 (devel)Library for construction of user graphic interface QT version 4.3 and higher or 5.1 and higher, package for development.
Module: UI.Vision
libQT4 or libQT5 (devel)Library for construction of user graphic interface QT version 4.3 and higher or 5.1 and higher, package for development.
libQtWebKit (devel, opt: auto)Library of Web-rendering engine WebKit, package for development.
libfftw3 (devel, opt: auto)Library for fast Fourie transfer of signals, package for development.
libphonon (devel, opt: auto)Library for full formatted video and audio play, package for development.
Modules: UI.WebVision, Special.FLibSYS
libfftw3 (devel, opt: auto)Library for fast Fourie transfer of signals, package for development.

* "opt: auto" — provides for disable of using the library at build time on it absence.

Links

Referring pages: HomePageEn
HomePageEn/Doc/BuildFromSource
HomePageEn/Using/PLC/firmwareARM