Розширення зберігання конфігураційних даних у конфігураційному файлі
|
|

Міжстанційне копіювання конфігурації OpenSCADA.

Модуль BD.DBGate.
Збереження конфігураційних даних OpenSCADA у конфігураційному файлі функціями TBDS::dataSeek(), TBDS::dataGet() та TBDS::dataSet(), розширено для роботи із конфігураційним XML-контекстом, дещо загалом вдосконалено та виправлено.
Конфігураційний XML-контекст функцій конфігурації застосовано у копіюванні між станціями основними конфігураторами OpenSCADA та у новому модулі BD.DBGate.
Копіювання між станціями є найшвидшим шляхом переміщення-синхронізації конфігурації OpenSCADA від однієї локальної або віддаленої станції до іншої віддаленої або локальної станції, використовуючи стандартні операції копіювання основних конфігураторів OpenSCADA —
QTCfg та
WebCfgD. Цю функцію ви також можете використовувати у користувацьких процедурах OpenSCADA,
функцією користувацького API cntrReq(), оскільки це просто розширення загальних функції "save" та "load"
інтерфейсу керування OpenSCADA.
Новий модуль
BD.DBGate є модулем
підсистеми "Бази даних" для розміщення-віддзеркалення баз даних віддалених OpenSCADA станцій до локальних. В своїй роботі модуль використовує
Власний Протокол OpenSCADA та сервісні функції підсистеми "Бази даних". Цей модуль може бути корисним:
- у множинному-мережевому доступі до БД віддалених станцій, побудованих на основі локальних на кшталт
SQLite, таким чином трансформуючи їх у мережеві; - у проксі-доступі до БД віддалених станцій, побудованих на основі мережевих СУБД, через інтерфейс контролю OpenSCADA, який може також бути безпечним, використовуючи
SSL; - у рознесені між мережевими станціями функцій складного користувацького простору із частинами Збору Даних та Графічного Інтерфейсу, пов'язаних на БД на кшталт
Рецепти.
Інші вдосконалення та виправлення збереження конфігураційних даних у конфігураційному файлі передбачають:
- запобігання отримання попереднього значення при завантажені із конфігураційного файлу, встановленням типового значення;
- доповнення зміною-збереженням наявних записів у конфігураційному файлі, замість цілковитого збереження всіх їх у типовій БД;
- виявлення та виправлення втрат даних за конкурентного доступу до БД
SQLite, коли генерується несуттєва помилка нерозпочатої транзакції "cannot commit - no transaction is active(1)", яка однак перериває запис даних.