About OpenSCADA project



Jul 2002 (projecting), January 2003 (implementing)


Roman Savochenko

Active developers:

Roman Savochenko


Free software (Open source software)


Opens internal link in current windowGPL v.2 for sources mostly, Opens external link in new windowGFDL v.1.3 for documentation

Localization languages:

English(en), Ukrainain(uk), Russian(ru), German(de)


0.9 Work, 0.8 LTS (2012-2017)


WWW: http://oscada.org
Wiki: http://wiki.oscada.org
Forum: http://oscada.org/en/forum
Files: oscada.org/oscadaArch, ftp://ftp.oscada.org/OpenSCADA
Repository: svn co svn://oscada.org/trunk/OpenSCADA (Subversion)
Mail: oscada@oscada.org
JID: oscada@oscada.org


OpenSCADA represents opened SCADA system constructed on principles modules, multiplatforms and scalabilities. (Supervisory Control And Data Acquisition) is the term which it is often used in sphere of automation of technological processes. The system OpenSCADA is intended for: gathering, archivation, visualization of the information, delivery of operating influences, and also other related operations, characteristic for full-function SCADA systems.

Project targets

The basic purposes which are pursued with the project, are:

  • openness;
  • reliability;
  • flexibility;
  • scalability;
  • security;
  • financial availability;
  • giving of the convenient interface of management

Policy of development. License.

As policy of software realization of the given project principles of development are chosen. This policy will allow to involve in development, testing, development, distribution and use of the product of significant amount of developers, enthusiasts and other interested persons at the minimal financial expenses. The program accessible on conditions of license GPL v2.


The system OpenSCADA is intended for performance as SCADA systems usual functions, and for use in adjacent areas of information technologies.

The system OpenSCADA can be used:

  • on industrial targets as full-function SCADA systems;
  • in built in systems, as area of execution (including PLC);
  • for construction of various models (technological, chemical, physical, electric processes);
  • on personal computers, servers and clusters for gathering, processing, representation and archiving of the information on system and its environment.

As base (host) operational systems (OS) for development and uses it is chosen by OS Linux which is standard POSIX compatible OS. Besides OS Linux is the optimum solution in questions:

  • safety;
  • flexibility/scalability;
  • availability;
  • popularity and prevalence.

As the system OpenSCADA is developed on standard POSIX OS, by principles muti-platform its adaptation on other OS will not make a problem.


Heart of system is the modular kernel.

Depending on what modules are connected, the system can carry out both functions of various servers, and functions of clients of client-server architecture. Actually, the architecture of system allows to realize the distributed client-server systems of any complexity.

For achievement of high speed due to reduction of communications time, the architecture allows to unite functions of the distributed systems in one program.

Architecturally, the system OpenSCADA consists of subsystems:

  • The security subsystem. Contains lists of users and groups of users, provides check of the rights to access to system elements, etc.
  • The modules DB subsystem. Provides access to databases.
  • The modules transport subsystem. Provides the communications with an environment by means of various communication interfaces.
  • The modules transport's protocol subsystem. It is closely connected with a subsystem of transports and provides support of various reports of an exchange with external systems.
  • The modules DAQ subsystem. Provides data gathering from external sources: controllers, gauges, etc. Except for it the subsystem can give environment for a writing of generators of data (model, regulators...).
  • The modules archive subsystem. Contains archives of two types: archives of messages and archives of values. An archivation way is defined by algorithm which is incorporated in the archivator's module.
  • The modules user interfaces subsystem. Contains functions of the user interfaces.
  • The control modules subsystem. Provides the control over modules.
  • The modules special subsystem. Contains functions not entered in other subsystems.

Proceeding from a modules principle, the modular subsystems specified above can expand the functionality by connection of corresponding type modules.

The modular kernel of system OpenSCADA is carried out in the form of static and shared libraries. It allows to build in functions of system existing programs, and also to create new programs on the basis of a modular kernel of system OpenSCADA.

However, the modular kernel is self-sufficient and can be used by means of the simple starting program.

Modules of system OpenSCADA are stored in dynamic libraries. Each dynamic library can contain set of modules of various type. Filling of dynamic libraries by modules is defined by functional connectivity of modules. Dynamic libraries suppose hot replacement that allows to make updating of modules during work. The method of storage of a code of modules in dynamic libraries is the core for system OpenSCADA as it is supported practically by all modern OS. It does not exclude an opportunity of development of other storage modules code methods.

The help to the project

If you are interested in development of the project and in you is think of experience and knowledge for perfection of the given development, welcome to participation in development. The project is developed on the open bases, hence all its operating time are public property so improving it we help each other creating all more perfect tool for the decision of our problems! For aid to develope the project go to the link.