OpenSCADAWiki: Home Page En/Doc/API/part2 ...

Home | Каталог | | | | Регистрация |  :  

2. The overall structure of the system. Modularity (TSubSYS, TModule)

The root, from which we construct the whole system is the object of TSYS. The root contains a subsystem (TSubSYS). Subsystems can be: the ordinary and modular. The difference between the modular subsystems is clearly shown in Fig. 1. Thus, the modular subsystems necessarily contain a list of modular structures (TModule), such as subsystem TArchiveS contain modular objects TTypeArchivator. At the same time, the normal subsystem does not contain such objects. For example TSecurity subsystem (Figure 2).

Hierarchical structure of OpenSCADA. (16 )
Fig. 2. Hierarchical structure of OpenSCADA.

In the process of initializing the root (TSYS) the global variable SYS is defined. The variable SYS can be used for direct access to the root of the system from any of its node. Initialization of the root is performed only one time from the main calling function. After starting the management is captured by the system object till stop. The root object concentrate all system functions of the OpenSCADA system.

Extension of the root object (TSYS) is the object TMess, which performs the functions of service of the flow of system messages. The object is accessible through the global variable Mess, which is initialized by the root of the system. The object contains the functions of encoding, decoding, and localization of messages.

In the subsystems (TSubSYS) the functions typical for each subsystem individually with the general access for all subsystems are carried out through the object TSubSYS. Modular subsystem is able to extend its functionality by means of modules. For this purpose, modular subsystem provides access to the modules of its type in the form of modular objects.

Module is the component of the modular subsystem. In general, for all modules and subsystems, the module provides information about itself, its origin and export functions. Individual module implements the functionality according to its own needs.

2.1. The root object system (TSYS)


Information variables of the program:

Methods for coding of symbol sequences (enum TSYS::Code):

Types of representations of the integer in the function TSYS::int2str(), and TSYS::ll2str() (enum TSYS::IntView):

Structure of redundant station (class TSYS::SStat):

Structure of OpenSCADA task (class TSYS::STask):


Public methods:

Public attributes:

Short calls for global functions into "OSCADA" namespace:

2.2. Object of the messages system (TMess)

Types (levels) of messages (enum TMess::Type):

Direction for the messages (enum TMess::Direct):

The structure of the message (class TMess:: SRec):


Public methods:

2.3. Object subsystem (TSubSYS)

Inherited:TArchiveS, TProtocolS, TBDS, TFunctionS, TSesurity, TModShedul, TTransportS, TUIS, TSpecialS, TControllerS.

Public methods:

2.4. Object Module (TModule)

Inherited:TProtocol, TTypeBD, TTypeArchive, TTypeTransport, TUI, Tspecial, TTypeDAQ.

The data structure which identifies the module (class TModule::SAt):

The structure of exported functions (class TModule::ExpFunc):

Public methods:

Protected Attributes:

Protected methods are:

(2).[ /]
. [ /]