From OpenSCADAWiki
Jump to: navigation, search

Enter a message name below to show all available translations.

Message

Found 2 translations.

NameCurrent message text
 h English (en)|-
! API of the modules of the "Data AcQuisition" subsystem
|-
| Provides the realtime data acquisition from the external systems or it formation in the calculators, implemented by the module. That is the main subsystem since SCADA is about the Data Acquisition primarily. As the main subsystem it provides several approaches in the modules implementation, which mostly about the attributes structure formation and storing:
# Static formation through definition a set of the parameter types inherited from [[Special:MyLanguage/Documents/API#TTypeParam|TTypeParam]], that is the structures applying is performed as an attributes set with the parameter type change. This method is least flexible and it used by such modules: [[Special:MyLanguage/Modules/GPIO|GPIO]], [[Special:MyLanguage/Modules/SMH2Gi|SMH2Gi]], [[Special:MyLanguage/Modules/AMRDevs|AMRDevs]].
# Dynamic formation with the structure container [[Special:MyLanguage/Documents/API#TElem|TElem]] managing in the parameter object [[Special:MyLanguage/Documents/API#TParamContr|TParamContr]]. This method is most flexible and used in most modules which mean of the structure be configurable.
# As an extension of the dynamic formation there is the [[Special:MyLanguage/Documents/DAQ#LogicLev|Logical Level parameter type]], what can be added to any module, but that used mostly in the universal data sources: [[Special:MyLanguage/Modules/LogicLev|LogicLev]], [[Special:MyLanguage/Modules/ModBus|ModBus]], [[Special:MyLanguage/Modules/Siemens|Siemens]], [[Special:MyLanguage/Modules/OPC_UA|OPC_UA]].
|-
|'''[[Special:MyLanguage/Documents/API#TTypeDAQ|TTypeDAQ]]->[[Special:MyLanguage/Documents/API#TModule|TModule]]''' — the root module object of the "Data AcQuisition" subsystem:
* ''virtual bool compileFuncLangs( vector<string> *ls = NULL );'' — request the list ''ls'' of languages for which it is realised the possibility of formation of user procedures in this module, and check for fact of that support.
* ''virtual void compileFuncSnthHgl( const string &lang, XMLNode &shgl );'' — request the rules of the syntax highlight ''shgl'' for the specified language ''lang''.
* ''virtual string compileFunc( const string &lang, TFunction &fnc_cfg, const string &prog_text, const string &usings = "", int maxCalcTm = 0 );'' — compiling-registering of the user function on the supported programming language ''lang'' and on the source code of procedure ''prog_text'', based on the procedure parameters ''fnc_cfg''. Returns address of the compiled function's object, ready for execution.
* ''virtual bool redntAllow( );'' — state of support the redundancy mechanisms by the module. Should be overridden and return TRUE if supported, otherwise FALSE.
* ''virtual TController *ContrAttach( const string &id, const string &daq_db );'' — called when a new controller object is opened or created by this module with the identifier ''id''.
|-
|'''[[Special:MyLanguage/Documents/API#TController|TController]]''' — the data source controller object. In the context of the object is usually run a task of the periodic or scheduled polling of the realtime data of one physical controller or physically separated block of data. In the case of data getting by the packages, they are placed directly into the archive associated with the parameter attribute [[Special:MyLanguage/Documents/API#TVAl|TVAl::arch()]], and the current value is set by the [[Special:MyLanguage/Documents/API#TVAl|TVAl::set() function]] with the attribute "sys"=TRUE:
* ''virtual string getStatus( );'' — request function of the controller status.
* ''virtual void enable_(  );'' — enabling of the controller object. Usually at this stage the initialisation of the parameters' objects and their interfaces in the form of attributes is made, the attributes can sometimes be requested from the associated remote source.
* ''virtual void disable_(  );'' — disabling the controller object.
* ''virtual void start_( );'' — starting the controller object. Usually at this stage the task of periodic or scheduled polling is created and started.
* ''virtual void stop_( );'' — stopping the controller object.
* ''virtual void redntDataUpdate( );'' — operation of the data receiving from the backup station, called automatically by the service procedure of the redundancy scheme of the subsystem.
* ''virtual string catsPat( );'' — list of the regular expression rules, separated by '|', for matching by category the messages generated by the object.
* ''virtual void messSet( const string &mess, int lev, const string &type2Code = "OP", const string &prm = "", const string &cat = "" );'' — formation of the DAQ-sourced messages for the parameter object ''prm'' (PrmId) or the controller object in whole if the parameter object is not specified, for the message ''mess'', level ''lev'' and for the type code ''type2Code''. This function generates the messages with the unified DAQ-transparency category "'''{type2Code}{ModId}:{CntrId}[.{prm}][:{cat}]'''".
* ''virtual TParamContr *ParamAttach( const string &id, int type );'' — called when a new object of the controller parameter is opened or created by this module with the identifier ''id''.
|-
|'''[[Special:MyLanguage/Documents/API#TParamContr|TParamContr]]->[[Special:MyLanguage/Documents/API#TValue|TValue]]''' — the controller parameter object of the data source. Contains attributes with real data in a set defined by physically available data. The values to the attributes come from the polling task of the controller, in the asynchronous mode, or are requested during the access, in the synchronous mode, and through the methods of the inherited type [[Special:MyLanguage/Documents/API#TValue|TValue]]:
* ''virtual TElem *dynElCntr( );'' — container of the dynamic elements of the DAQ attributes. Defined mostly by the logical level sources what provide such kind containers.
* ''virtual void enable( );'' — enabling the parameter object, the formation of the attributes set and filling them with the value of unreliability is made.
* ''virtual void disable( );'' — disabling the parameter object.
* ''virtual void setType( const string &tpId );'' — called to change the parameter type to ''tpId'' and can be processed in the module object to change own data.
* ''virtual TVal* vlNew( );'' — called at the stage of a new attribute creation. Can be overridden to implement special behavior within its object, inherited from ''TVal'', when accessing the attribute.
* ''virtual void vlGet( TVal &vo );'' — called for the attribute ''vo'' with the direct reading mode '''TVal::DirRead''' when reading the value in order to directly-synchronous read from the physical source or the object buffer.
* ''virtual void vlSet( TVal &vo, const TVariant &vl, const TVariant &pvl );'' — called for the attribute ''vo'' with the direct recording mode '''TVal::DirWrite''' when setting the value in order to directly-synchronous set to the physical source or the object buffer, with the previous value ''pvl''.
* ''virtual void vlArchMake( TVal &val );'' — called at the stage of creation the values archive with the ''val'' attribute as the source in the order to initialise the qualitative characteristics of the archive buffer according to the characteristics of the data source and polling.
 h Ukrainian (uk)|-
! API модулів підсистеми "Збір Даних"
|-
| Надає збір даних реального часу із зовнішніх систем або їх формування у обчислювачах, які реалізуються модулем. Це основна підсистема, оскільки SCADA це первинно про Збір Даних. Як основна підсистема, вона забезпечує декілька підходів до реалізації модулів, які здебільшого стосуються формування та зберігання структури атрибутів:
# Статичне формування через визначення набору типів параметрів, успадкованих від [[Special:MyLanguage/Documents/API#TTypeParam|TTypeParam]], тобто застосування структур виконується як набір атрибутів зі зміною типу параметра. Цей метод є найменш гнучким і його використовують такі модулі: [[Special:MyLanguage/Modules/GPIO|GPIO]], [[Special:MyLanguage/Modules/SMH2Gi|SMH2Gi]], [[Special:MyLanguage/Modules/AMRDevs|AMRDevs]].
# Динамічне формування з керуванням структури контейнеру  [[Special:MyLanguage/Documents/API#TElem|TElem]] в об’єкті параметра [[Special:MyLanguage/Documents/API#TParamContr|TParamContr]]. Цей метод є найбільш гнучким і використовується в більшості модулів, структуру яких можна конфігурувати.
# Як розширення динамічного формування існує [[Special:MyLanguage/Documents/DAQ#LogicLev|тип параметра Логічного Рівня]], який можна додати до будь-якого модуля, але він використовується переважно в універсальних джерелах даних: [[Special:MyLanguage/Modules/LogicLev|LogicLev]], [[Special:MyLanguage/Modules/ModBus|ModBus]], [[Special:MyLanguage/Modules/Siemens|Siemens]], [[Special:MyLanguage/Modules/OPC_UA|OPC_UA].
|-
|'''[[Special:MyLanguage/Documents/API#TTypeDAQ|TTypeDAQ]]->[[Special:MyLanguage/Documents/API#TModule|TModule]]''' — кореневий об'єкт модуля підсистеми "Збір Даних":
* ''virtual bool compileFuncLangs( vector<string> *ls = NULL );'' — запитує перелік мов ''ls'' для яких реалізується можливість формування користувацьких процедур у цьому модулі, та перевірка факту підтримки цього.
* ''virtual void compileFuncSnthHgl( const string &lang, XMLNode &shgl );'' — запит прав підсвітлення синтаксису ''shgl'' щодо визначеної мови ''lang''.
* ''virtual string compileFunc( const string &lang, TFunction &fnc_cfg, const string &prog_text, const string &usings = "", int maxCalcTm = 0 );'' — компіляція-реєстрація користувацької функції на підтримуваній мові програмування ''lang'' та на вихідному коді процедури ''prog_text'', заснованій на параметрах процедури ''fnc_cfg''. Повертає адресу об'єкту скомпільованої функції, готового до виконання.
* ''virtual bool redntAllow( );'' — стан підтримки механізму резервування цим модулем. Має бути перевизначено та повертати TRUE за підтримки, інакше FALSE.
* ''virtual TController *ContrAttach( const string &id, const string &daq_db );'' — викликається модулем за відкриття або створення нового об'єкту контролеру із ідентифікатором ''id''.
|-
|'''[[Special:MyLanguage/Documents/API#TController|TController]]''' — об'єкт контролеру джерела даних. У контексті об'єкту зазвичай виконується завдання періодичного або планового опитування даних реального часу фізичного контролеру або фізично відокремленого блоку даних. У випадку отримання даних пакетами, вони розташовуються безпосередньо у архіві, пов'язаному із атрибутом параметра [[Special:MyLanguage/Documents/API#TVAl|TVAl::arch()]], та поточне значення встановлюється [[Special:MyLanguage/Documents/API#TVAl|функцією TVAl::set()]] із атрибутом "sys"=TRUE:
* ''virtual string getStatus( );'' — функція запиту статусу контролеру.
* ''virtual void enable_(  );'' — увімкнення об'єкту контролеру. На цій стадії зазвичай відбувається ініціалізація об'єктів параметрів та їх інтерфейсів у формі атрибутів, атрибути інколи можуть запитуватися у пов'язаного віддаленого джерела.
* ''virtual void disable_(  );'' — вимкнення об'єкту контролеру.
* ''virtual void start_( );'' — запуск об'єкту контролеру. На цій стадії зазвичай створюється та запускається завдання опитування.
* ''virtual void stop_( );'' — зупинка об'єкту контролеру.
* ''virtual void redntDataUpdate( );'' — операція отримання даних із резервної станції, автоматично викликається сервісною процедурою схеми резервування підсистеми.
* ''virtual string catsPat( );'' — перелік правил регулярних виразів, поділених '|', для виокремлення за категорією щодо повідомлень згенерованих об'єктом.
* ''virtual void messSet( const string &mess, int lev, const string &type2Code = "OP", const string &prm = "", const string &cat = "" );'' — формування повідомлення Джерела Даних від об'єкту параметру ''prm'' (PrmId) або об'єкту контролеру взагалі якщо об'єкту параметру не визначено, для повідомлення ''mess'', рівня ''lev'' та коду типу ''type2Code''. Ця функція генерує повідомлення із уніфікованою категорією прозорості Джерела Даних "'''{type2Code}{ModId}:{CntrId}[.{prm}][:{cat}]'''".
* ''virtual TParamContr *ParamAttach( const string &id, int type );'' — викликається модулем за відкриття або створення нового об'єкту параметру контролера із ідентифікатором ''id''.
|-
|'''[[Special:MyLanguage/Documents/API#TParamContr|TParamContr]]->[[Special:MyLanguage/Documents/API#TValue|TValue]]''' — об'єкт параметру контролера джерела даних. Містить атрибути з реальними даними у наборі визначеному фізично доступними даними. Значення до атрибутів потрапляють із завдання опитування контролера, при асинхронному режимі, або запитуються під час звернення, при синхронному режимі, та за посередництвом методів успадкованого типу [[Special:MyLanguage/Documents/API#TValue|TValue]]:
* ''virtual TElem *dynElCntr( );'' — контейнер динамічних елементів атрибутів Збору Даних. Переважно визначається джерелами логічного рівня які і надають контейнери такого характеру.
* ''virtual void enable( );'' — увімкнення об'єкту параметру, здійснюється формування набору атрибутів та заповнення їх значеннями недостовірності.
* ''virtual void disable( );'' — вимкнення об'єкту параметру.
* ''virtual void setType( const string &tpId );'' — викликається для зміни типу параметру у ''tpId'' та може бути опрацьований у об'єкті модуля для зміни власних даних.
* ''virtual TVal* vlNew( );'' — викликається на стадії створення нового атрибуту. Може бути перевизначено для реалізації особливої поведінки у межах свого об'єкту, успадкованого від ''TVal'', при доступі до атрибуту.
* ''virtual void vlGet( TVal &vo );'' — викликається для атрибуту ''vo'' із режимом прямого читання '''TVal::DirRead''' при читанні значення задля прямого-синхронного читання із фізичного джерела або буферу об'єкта.
* ''virtual void vlSet( TVal &vo, const TVariant &vl, const TVariant &pvl );'' — викликається для атрибуту ''vo'' із режимом прямого запису '''TVal::DirWrite''' при запису значення ''vl'' задля прямого-синхронного запису до фізичного джерела або буферу об'єкта, із попереднім значенням ''pvl''.
* ''virtual void vlArchMake( TVal &val );'' — викликається на стадії створення архіву значень із атрибутом ''val'' як джерело щодо ініціалізації характеристик якості буферу архіву у відповідності до характеристик джерела даних та опитування.