From OpenSCADAWiki
Jump to: navigation, search
This page is a translated version of the page Documents/Release 0.9/Update2 and the translation is 100% complete.

Other languages:
English • ‎российский • ‎українська

Це оновлення релізу 0.9 LTS виправляє біля 60 помилок та додає деякі удосконалення, які цілком ви можете почитати у протоколі змін оновлення.

Linux Дистрибутив Автоматизації проекту OpenSCADA

  • Завершено вдосконалення KMix щодо роботи із PulseAudio, шляхом його динамізації патчем "kmix-UpdMixersForChangeAndChMaster.patch".
  • KRfb (VNC-сервер) було виправлено стосовно аварійного завершення та завершено реалізацію набору додаткових клавіш до основної клавіатурної розкладки, переважно Кирилиці, але також і додаткових UTF символів.
  • Завершене оновлення перекладу проекту Оточення Стільниці Trinity Українською для частин: tdelibs, tdebase, tdenetwork, tdemultimedia, tdepim (переважно), krusader, yakuake.

OpenSCADA бібліотеки та проекти

  • LibsDB.OscadaLibs: Бібліотеку Пристроїв доповнено реалізацією протоколу IEC-62056 (DevLib.IEC62056). Позамережеву документацію доповнено документом "УГОДА ПРО ТЕХНІЧНУ ПІДТРИМКУ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ "OpenSCADA" версії 2 та нового модуля DB.DBGate.
  • FIX:LibsDB.vcaBase.Main.alarmsSt: Дещо виправлено щодо оригінальних повідомлень та "quietation" цілковито замінено на "confirmation". Відновлено попередження дубльованих записів нових порушень у тій самій категорії.

API
!!!!:Зміни:

  • SYS: Уніфіковано статуси станції у функціях isRunning(), isFinalKill() та stopSignal(). TCfg::setReqKey() доповнено новим аргументом "treatDep".
  • DB: dataSeek(),dataGet(),dataSet(): Розширено аргументом локального конфігураційного контексту "localCfgCtx";
  • *,DB: TBDS::dataSeek() та TTable::fieldSeek() переключено до реалізації кешу сканування у відповідних модулях.

Доповнення:

  • TMess,DB,DB.{SQLite,MySQL,PostgreSQL,FireBird}: TMess доповнено функцією виявлення перекладу конфігурації translCfg(), яку використано у всіх модулях БД та у dataSet().
  • SYS: Доповнено функціями доступу до глобального конфігураційного контексту cfgCtx() та setCfgCtx().
    • Завантаження та збереження конфігурації доповнено власним блокуванням TSYS->cfgLoadSaveM().
    • Доповнено функцією pathLevEnd() опрацювання шляхів із кінця.
    • TRegExp: Доповнено функцією getPattern().
    • TFld: Доповнено комбінованим строковим варіантом поля довжини - lenS().

Система

  • FIX: Складання:
    • FIX:configure.ac: Версію бібліотеки ядра збільшено до 3:8:0 та версію програми збільшено до 0.9.2.
    • Модульну версію підсистеми "БД" збільшено до 14, підсистеми "Транспорти" збільшено до 16.
    • data/ModelsDB/{AGLKS/oscada_AGLKS.xml,Boiler/oscada_Boiler.xml}: Вхідні транспорти Сокетів уніфіковано у назвах "WEB" та "CNTR".
    • data/ModelsDB/AGLKS/St.sql: Вхідні транспорти SSL уніфіковано у назвах "WEB" та "CNTR" та оновлено встановленням KeepAlive таймауту в 60 та SSL-сертифікату.
    • data/{oscada_start,oscada_server,oscada_plc}.xml:
      • Вхідні WWW-транспорти уніфіковано, де "WEB_1" перейменовано у "WEB" та видалено "WEB_2".
      • Доповнено вимкненими записами БД стандартних бібліотек OpenSCADA.
      • /oscada_start.xml: Доповнено вимкненими вхідними транспортами "WEB" та "CNTR". Доповнено архіваторами значень FSArch.{SYS,alarms,actions} та архіваторами повідомлень FSArch.{1s,1m,1h}.
  • FIX:data/openscada-proj.in,UI.QTStarter: Реалізація вбудованого резервування.
    • FIX:data/openscada-proj.in: Доповнено командами "backup", "backupRestore", "backupList" реалізації резервування проектів.
    • UI.QTStarter: Доповнено викликом команд резервування із менеджеру проектів - переліку проектів.
  • .,DB,DAQ.{LogicLev,ModBus,Siemens},UI.{QTCfg,WebCfgD}: Реалізація механізму міжстанційного копіювання вузлів інтерфейсу керування.
  • .,UI.QTStarter: Запуск OpenSCADA із GUI модулем у основному потоці значно переглянуто щодо:
    • ранньої реєстрації GUI модуля у основному потоці безпосередньо самим цим модулем та у функції postEnable();
    • адаптації функції perSYSCall() до використання у оновлені GUI модуля у основному потоці, переважно його заставки (сплешу), протягом запуску і зупинки (із сервісного завдання) та при завантажені конфігурації (для перемикання до заставки запуску);
    • увімкнення динамічного відображення повідомлень для режиму виконання у основному потоці;
    • уніфікації відображення заставки у обох режимах.
  • .,Protocol.SelfSystem,DAQ.AMRDevs: Доступ клієнта до інтерфейсу керування OpenSCADA розширено множинною автентифікацією, що попереджає використання прямих запитів до інтерфейсу керування OpenSCADA із автентифікацією у кожному запиті, часто у UI.Vision.
  • FIX:TRegExp: Виправлено обробку шаблонів, доданням опрацювання символу кінця, таким чином попереджаючи колізії чіткого визначення об'єктів у TController::alarmSet().
  • FIX:LibsDB.OscadaLibs.doc.diagram,UI.{Vision,WebVision}: Попереджено подвійне підлаштування шкали значень для процентної шкали та доповнено розширенням діапазону значень.
  • FIX: Опрацювання нащадків у функції TCntrNode::isModify() дозволене лише для вузлів у стані "Ввімкнено".

БД

  • Створено новий модуль "DBGate".
  • FIX: TBDS::dataSet() розширено встановленням лише ключів та видимих елементів, на кшталт інших БД. Доповнено зміною-збереженням визначених елементів у конфігураційному файлі замість цілковитого збереження всіх їх у типовій БД.
  • FIX: Виправлено перший помилковий запуск об'єктів БД стосовно наступних спроб запуску.
  • FIX: Завантаження БД попереджено від подвійного завантаження із конфігураційного файлу та БД, стосовно однакових записів.
  • Об'єкт TBD доповнено підтримкою сервісних контрольних запитів "call": "/serv/SQL", "/serv/fieldStruct", "/serv/fieldSeek", "/serv/fieldGet", "/serv/fieldSet", "/serv/fieldDel".
  • FIX:SQLite: Виявлено та виправлено втрату даних за конкурентного доступу, коли генерується непринципова помилка неактивованості транзакції "cannot commit - no transaction is active (1)", яка, однак, перериває запис даних.

Збір Даних

  • FIX: JavaLikeCalc: Виконання внутрішніх функцій доповнено збереженням контексту спільних-власних регістрів, у двох варіантах, первинно для підтримки рекурсії.

Транспорти

  • Вихідні транспорти уніфіковано створенням параметрів підключення, за допомогою conPrm(), замість прямих prm1() та prm2().
  • Видалено конфігураційний параметр "START" вихідних транспортів, як зайвий та для запобігання тривалому запуску.
  • FIX:Sockets,SSL: Для запобігання багаторазовому виконанню запитів високого навантаження та тривалого контролю, вихідні транспорти перемкнуто на:
    • типову конфігурацію для Спроб=1, Таймаути="30:2";
    • для втрат підключень кількість спроб встановлено у 2;
    • для помилок "Вичерпано час" підключення також пере-підключається, окрім типу SOCK_FORCE.

Транспортні Протоколи

  • FIX:ModBus: Вихідні запити TCP-варіанту доповнено перевіркою Ідентифікатору Транзакції пакетів відповіді.
  • FIX:SelfSystem: Вихідну частину розширено перевіркою відповідності відповідей до запиту, за назвою тегу запиту. Доповнено кодуванням спеціальних символів користувача і пароля, та порожній пароль кодується як "<EMPTY>".

Інтерфейс Користувача

  • Vision,WebVision: Властивість специфічну до візуалізатору "userSetVis" доповнено реалізацією пароля після прямо визначеного користувача та для застосування з усіма користувачами.
  • FIX:QTStarter: Стандартну-системну заставку запуску/зупинки оновлено та доповнено інформацією про програму (також користувацькі заставки) та проекту OpenSCADA, включно із іконкою проекту. Контекстне меню переліку проектів доповнено пунктом видалення невиконуваних проектів.
  • FIX:QTCfg: Доповнено стеженням за зміною сторінки із індикацією у дереві навігації та з гортанням до поточного елементу.
  • FIX:VCAEngine: Попереджено аварійне завершення на великих конфігураціях із тривалим закриттям сеансів виконання під час доступу до спадкоємців віджету (mHerit), доданням ResRW блокування "mHeritRes". Властивість "Переклад" процедур віджетів цілковито пересунуто до прямого доступу та видимість встановлено лише за наявності процедури, так само як видимість простору тексту процедури та періодичності обчислення від обрання мови.
  • FIX:Vision: Суттєво уніфіковано процедуру автентифікації та зміни користувача у UserStBar::userSel() та об'єкт діалогу "DlgUser".
  • FIX:WebVision: Уніфіковано імплементацію примітиву "Кнопка": перенесенням специфічних кнопок під <button></button> та доданням відповідних CSS-стилів для типового та натисненого стану із відмінною границею та напівпрозорим зображенням. Виправлено нарешті проблему закриття всіх сторінок контейнеру основних сторінок із заморожуванням останньої втраченої сторінки за швидкого перемикання. Доповнено користувацькими CSS правилами інтерфейсу.

Сервісні оновлення