Functions and demands

Translate this page

Other languages:

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

Contents

1 The employment areas of OpenSCADA

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

Fig. 1. Roles of OpenSCADA.

1.1 System server of SCADA


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


1.3 Environment of execution of the controllers (PLC)

1.4 Universal OPC-UA server

Due implementation of the protocol OPC-UA into agent mode, OpenSCADA can provide a 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 as an 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.

Fig. 2. OpenSCADA role as "OPC-UA Server".

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

2 Requirements for OpenSCADA

2.1 Execution

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

Table 1. The demands to apparatus for OpenSCADA and it modules.

Role Demands
Server of the SCADA system

CPU: x86_32 (more than i586), x86_64 or ARM, with frequency more to 500 MHz
MEM: 128 MB
HDD: 10 GB include OS and space 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 to 1 GHz
MEM: 512 MB
HDD: 4 GB include OS without any archive space

Environment of execution of controllers (PLC)

CPU: x86_32 (more than i586), x86_64 or ARM, with frequency more to 133 MHz
MEM: 32 MB
HDD: 32 MB include OS without any archive space

Table 2. Dependencies of execution of OpenSCADA and its modules.

Component Description
Dependencies of OpenSCADA core
OS Linux 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 allowed into the installed distribution. A special demand is using native thread library NPTL, already used for all modern distributions of Linux.
zlib Compression library.
libpcre Library 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 (a dependence on library of X-server is excluded) and support for FontConfig.
DB.SQLite module
libsqlite3 Library for access to embedded DB SQLite version 3.
DB.MySQL module
libMySQL Library for access to MySQL DBMS.
DB.PostgreSQL module
libpq Library for access to PostgreSQL DBMS version more 8.3.0.
DB.FireBird module
FirebirdSS FireBird DBMS version 2. Often it is absent in distribution kits of Linux and demands individual loading from an official site (http://www.firebirdsql.org)!
DB.ODBC module
iodbc iODBC Driver Manager library.
DAQ.System module
libsensors (opt: auto) Hardware sensors' library versions 2 and 3.
DAQ.OPC_UA module
libssl Library for codifying OpenSSL.
DAQ.SNMP module
libsnmp Library for access to data of network devices under SNMP protocol.
DAQ.Comedi module
libcomedi Library of realizing support for DAQ-boards different manufacturer on boards ISA, PCI, PCMCIA and USB.
DAQ.SoundCard module
libportaudio Multiplatform library for access to sound controller version 19 and higher (not 18).
Transport.SSL module
libssl Library for codifying OpenSSL.
Modules: UI.QTStarter, UI.QTCfg
libQt4 (libQtGui) or
libQt5 (libQt5Widgets,libQt5PrintSupport)
Library Qt version 4.3 and higher or 5.1 and higher for construction of user graphical interfaces.
UI.Vision module
libQt4 (libQtGui) or
libQt5 (libQt5Widgets,libQt5PrintSupport)
Library Qt version 4.3 and higher or 5.1 and higher for construction of user graphical interfaces.
libQtWebKit or libqt5webkit5 (opt: auto) Library of Web-rendering engine WebKit.
libfftw3 (opt: auto) Library for fast Fourie transfer of signals.
libphonon or libphonon4qt5 (opt: auto) Library for full formatted video and audio playing.
UI.WebCfgD module
libgd (opt: --enable-LibGD) Graphic library GD version 2, it is desirable that it will be without XPM support (a dependence on library of X-server is excluded) and support for FontConfig.
UI.WebVision module
libgd Graphic library GD version 2, it is desirable that it will be without XPM support (a dependence on library of X-server is excluded) and support for FontConfig.
libfftw3 (opt: auto) Library for fast Fourie transfer of signals.
Special.FLibSYS module
libssl (opt: auto) Library for codifying OpenSSL.
libfftw3 (opt: auto) Library for fast Fourie transfer of signals.

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

2.2 Building

Dependencies of OpenSCADA for its core and modules building are tabulated bellow.

Table 3. Dependencies to build OpenSCADA and its modules.

Component Description
The general requirements of OpenSCADA building
OS Linux Distribution kit of operating system Linux (ALTLinux, SuSELinux, Mandriva, ASPLinux, Fedora, Debian, Ubuntu ...)
g++ Compiler of language C++ version 3.3 and more from a collection of compilers GCC, including library GLibC (>=2.3), uCLibC (>= 0.9.32) or Android BioniC.
autotools (autoconf, automake, libtool, pkg-config) Tools to form a building environment of OpenSCADA. They are necessary only in the case of changing the building environment of OpenSCADA, for example at addition a new module or changing fixed parameters of the building. Automake >= 1.9.
gettext A group of utilities for preparation and compilations of translations of the interface of programs on various languages in conformity with the internationalization standard I18N.
sqlite3 Control utility for DB SQLite3 files management.
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, GIF and JPEG.
DB.SQLite module
libsqlite3 (devel) Library for access to built in DB SQLite version 3, a package for development.
DB.MySQL module
libMySQL (devel) Library for access to MySQL DBMS, a package for development on language C.
DB.PostgreSQL module
libpq Library for access to PostgreSQL DBMS version more 8.3.0, a package for development.
DB.FireBird module
FirebirdSS FireBird DBMS version 2, a package for development. Often it is absent in distribution kits of Linux and demands individual loading from an official site (http://www.firebirdsql.org)!
DB.ODBC module
iodbc iODBC Driver Manager library, a package for development.
DAQ.JavaLikeCalc module
bison The program for generation parsers on the basis of grammar of the language.
DAQ.System module
libsensors (devel, opt: auto) Hardware sensors' library versions 2 and 3, a package for development.
DAQ.OPC_UA module
libssl (devel) Library for codifying OpenSSL, a package for development.
DAQ.SNMP module
libsnmp (devel) Library for access to data of network devices under SNMP protocol, a package for development.
DAQ.Comedi module
libcomedi (devel) Library of realizing support for DAQ-boards different manufacturer on buses ISA, PCI, PCMCIA and USB, a package for development.
DAQ.SoundCard module
libportaudio (devel) Multiplatform library for access to sound controller, a package for development version 19 and higher (not 18).
Transport.SSL module
libssl (devel) Library for codifying OpenSSL, a package for development.
Modules: UI.QTStarter, UI.QTCfg
libQt4 or libQt5 (devel) Library Qt version 4.3 and higher or 5.1 and higher for construction of user graphic interfaces, a package for development.
UI.Vision module
libQt4 or libQt5 (devel) Library Qt version 4.3 and higher or 5.1 and higher for construction of user graphic interfaces, a package for development.
libQtWebKit or libqt5webkit5 (devel, opt: auto) Library of Web-rendering engine WebKit, a package for development.
libfftw3 (devel, opt: auto) Library for fast Fourie transfer of signals, a package for development.
libphonon or libphonon4qt5 (devel, opt: auto) Library for full formatted video and audio playing, a package for development.
UI.WebCfgD module
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, GIF and JPEG.
UI.WebVision module
libgd (devel) 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, GIF and JPEG.
libfftw3 (devel, opt: auto) Library for fast Fourie transfer of signals, package for development.
Special.FLibSYS module
libssl (devel, opt: auto) Library for codifying OpenSSL, a package for development.
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.

3 Links