УкраїнськаEnglishmRussian
Вхід/Новий

Реліз OpenSCADA 0.7.2

05.12.2011 16:00 Давність: 12 yrs
Категорії: НовинаРеліз

Автор: Роман Савоченко


Виконання OpenSCADA на N950

Виконання OpenSCADA на N900

Запис, відміна та повтор змін

Виконання рецепту/програми користувача

Основною метою цього релізу є стабілізація та опрацювання ключових функцій перед випуском наступної версії OpenSCADA тривалої підтримки (LTS) 0.8.0. Крім основних задач у межах цього релізу здійснено велику роботу зі стабілізації, чистки вихідного коду, всебічного розширення можливостей, а також опробування на вбудованих пристроях архітектури ARM.

 

OpenSCADA 0.7.2

Вступ

Цей реліз є плановим випуском робочої версії системи OpenSCADA, який за звичай здійснюється з періодичністю 3-4 місяці. Основною метою цього релізу є стабілізація та опрацювання ключових функцій перед випуском наступної версії OpenSCADA тривалої підтримки (LTS) 0.8.0. Крім основних задач у межах цього релізу здійснено велику роботу зі стабілізації, чистки вихідного коду, всебічного розширення можливостей, а також опробування на вбудованих пристроях архітектури ARM.

Цей документ є обробкою(компіляцією) документа "ChangeLog" системи OpenSCADA версії 0.7.2, який призначено коротко та наочно освітлити нові можливості. Детальніше ознайомитися із змінами у системі OpenSCADA можна у файлі "ChangeLog" із дистрибутиву системи або тут: wiki.oscada.org/Works/ChangeLog (RU).

Ключовими особливостями цієї версії є:

  • Реалізація планових завдань.
  • Оптимізація, підвищення стабільності, стійкості та продуктивності системи.
  • Удосконалення та стабілізація графічної підсистеми.
  • Розширення API користувацького програмування.
  • Загальносистемні розширення.
  • Публікація рішень OpenSCADA.

Нові та оновлені модулі:

  • Archive.DBArch (0.9.5) — Додано ліміти запиту даних за часом запиту та ще деякі розширення.
  • Archive.FSArch (1.5.0) — Підвищено продуктивність читання індексів файлів архівів значень. Адаптація збереження та читання реального типу даних до ARM FPA. Додано ліміти запиту даних за часом запиту. Деякі розширення. Значна стабілізація.
  • DB.FireBird (0.9.7) — Стабілізація.
  • DB.MySQL (1.7.1) — Стабілізація.
  • DB.PostgreSQL (0.9.2) — Стабілізація.
  • DB.SQLite (1.6.4) — Стабілізація.
  • DAQ.BFN (0.5.1) — Очистка коду.
  • DAQ.BlockCalc (1.5.0) — Додано планування викликів за CRON. Додано запускаючий та зупиняючий виклик блоків. Стабілізація.
  • DAQ.DAQGate (0.9.5) — Додано планування викликів за CRON. Стабілізація.
  • DAQ.DCON (0.5.1) — Стабілізація.
  • DAQ.DiamondBoards (1.2.5) — Додано можливість зміни типу параметра. Стабілізація.
  • DAQ.ICP_DAS (0.8.0) — Додано бібліотеку API "ICP DAS" libi8k.a для архітектури ARM та включено можливість збірки модуля для ARM. Стабілізація.
  • DAQ.JavaLikeCalc (1.9.5) — Додано прямий, динамічний, виклик бібліотечних функцій. Додано пряме об'єднання строкових констант. Додано умовний виклик аргументів виразу (другого аргументу) з логічними операціями ||(OR) та &&(AND). Значна стабілізація. Деякі розширення.
  • DAQ.LogicLev (1.2.0) — Стабілізація. Додано можливість зміни типу параметра. Додано планування викликів за CRON. Деякі розширення.
  • DAQ.ModBus (1.2.0) — Додано підтримку типу параметра "Логічний" для роботи за шаблоном параметра, а також функції користувацького API для надсилання довільних-нестандартних ModBus-запитів із шаблонів. Додано та використано функцію формування повідомлень про порушення у контролері. Додано підтримку функцій групового запису (0x0F, 0x10). Значна стабілізація.
  • DAQ.OPC_UA (0.6.2) — Стабілізація. Адаптація збереження та читання реального типу даних до ARM FPA.
  • DAQ.SNMP (0.6.1) — Стабілізація. Деякі удосконалення.
  • DAQ.Siemens (1.3.0) — Значна стабілізація. Версія бібліотеки LibnoDave оновлено до 0.8.4.6. Додано планування викликів за CRON. Додано функцію перепідключення для "Industrial Ethernet" з'єднань. Деякі розширення.
  • DAQ.System (1.7.5) — Стабілізація. Додано планування викликів за CRON.
  • Transport.SSL (1.0.0) — Стабілізація. Деякі удосконалення.
  • Transport.Serial (0.7.3) — Стабілізація.
  • Transport.Sockets (1.5.0) — Значна стабілізація.
  • Protocol.HTTP (1.6.0) — Додано підтримку користувацьких шаблонів для внутрішнього вмісту модуля. Додано генерацію повідомлень автентифікації користувачів. Додано підтримку всіх основних варіантів завершення рядка при розборі HTTP-запитів.
  • Protocol.ModBus (0.6.3) — Стабілізація. Деякі удосконалення.
  • Protocol.OPC_UA (0.6.2) — Стабілізація.
  • Protocol.SelfSystem (0.9.5) — Стабілізація.
  • Protocol.UserProtocol (0.6.2) — Стабілізація.
  • Special.FLibComplex1 (1.1.0) — Додано прямий, динамічний виклик бібліотечних функцій.
  • Special.FLibMath (0.6.0) — Додано прямий, динамічний виклик бібліотечних функцій.
  • Special.FLibSYS (1.0.0) — Додано прямий, динамічний виклик бібліотечних функцій.
  • UI.QTCfg (2.1.0) — Стабілізація. Значні розширення та удосконалення. Реалізація низки функцій для підвищення зручності.
  • UI.QTStarter (1.6.2) — Стабілізація. Шрифт повідомлень у "сплещі" зафіксовано у розмірі 10 пікселів, для забезпечення одноманітного відображення.
  • UI.VCAEngine (1.2.0) — Стабілізація. Значні розширення та удосконалення.
  • UI.Vision (1.2.0) — Значна стабілізація. Значні розширення та удосконалення.
  • UI.WebCfg (1.5.6) — Стабілізація.
  • UI.WebCfgD (0.8.0) — Стабілізація. Значні розширення та удосконалення.
  • UI.WebUser (0.6.2) — Стабілізація.
  • UI.WebVision (1.0.0) — Значна стабілізація. Значні розширення та удосконалення.

1 Реалізація планових задач

У відповідності із планом релізу були виконані наступні задачі:

  • Реалізація механізму відміни змін редагування у Vision. — У межах вікна візуального редагування віджетів реалізовано багаторівневий механізм відміни змін для всіх основних операцій: візуальна зміна геометрії, зміна значення атрибуту віджета, додання/видалення віджета, копіювання виджета та редагування віджетів на основі примітиву "ElFigure".
  • Адаптація системи OpenSCADA для роботи на апаратній платформі ARM. — Додатково до первинної адаптації, у минулому релізі, для планшету N800 (wiki.oscada.org/Works/Tests/ARM ) було виконано збірку та адаптацію OpenSCADA для складного (дуже старого) програмного оточення контролера LP-5451, а також збірка для контролеру SMH2Gi та смартфонів фірми Nokia: N900, N950, N9. У межах збірки та адаптації на різні мобільні пристрої було виконано наступні задачі:
    • DAQ.ICP_DAS: Додано бібліотеку API "ICP DAS" libi8k.a для архітектури ARM та включено можливість збірки модуля для ARM.
    • SYS, DAQ.OPC_UA: Додано системні функції floatLE(), floatLErev(), doubleLE(), doubleLErev() для перетворення формату збереження реального числа на різних архітектур.
    • SYS: Виконано адаптацію для збірки з GLibC версії менш 2.5 (2.3.2).
    • Archive.FSArch:
      • Виправлено збереження реального числа формату LE у архіві, на архітектурі ARM.
      • У алгоритмі швидкого підрахунку кількості бітів використано функцію невирівняного читання TSYS::getUnalign32().
      • Розмір поля кодування у плоскому архіві повідомлень розширено із 9 до 99 символів.

2 Оптимізація, підвищення стабільності, стійкості та продуктивності системи

У процесі робіт над цією версією, а також її практичної адаптації, було виявлено та виправлено загалом біля 170 помилок. Також була продовжена робота по очищенню кода від попереджувальних повідомлень компілятору, з прапорцем "-Wall".

Перелічимо більш істотні помилки, виправлення яких значно відобразилося на підвищені стабільності:

  • SYS:
    • Виправлені позапланові виклики за розкладом, пов'язані із розсинхронізацією значень функцій time() та clock_gettime(CLOCK_REALTIME,&sp_tm).
    • Виправлено перевірку та очікування потоків на доступність у випадку перекриття та зупинкою минулого, однойменного потоку.
    • Виключено очікування ініціалізації для відокремлюваних задач з метою запобігання зависання на очікувані задач що швидко закриваються.
    • Виправлено роботу функцій невирівняного читання getUnalign*() на ARM. Проблему виявлено на PXA270.
  • Archive.FSArch:
    • Виправлено читання даних з буфера архіву у відповідності з розміром буфера у алгоритмі швидкого обчислення кількості бітів.
    • Виправлено розташування зміщення до кешу із алгоритму швидкого обчислення кількості бітів.
    • Виправлено некоректну обробку кінця невирівняних блоків швидкого алгоритму підрахунку кількості бітів.
    • Додано монопольний ресурс до виклику функції calcVlOff() з метою запобігання некоректної роботи з кешем.
  • Transport, DAQ.AMRDevs, DAQ.DCON, DAQ.ICP_DAS, DAQ.ModBus, DAQ.OPC_UA, Protocol.HTTP: Виправлено використання функції TTransportOut::messIO() під час запиту хвоста та отримані нульової відповіді.
  • DAQ.ModBus, Transport.Serial, UI.WebCfg, UI.WebCfgD, UI.WebUser, UI.WebVision: Виправлено помилкове використання символу завершення рядка '\n' для багатьох програмних платформ UNIX, MAC, DOS/Windows, шляхом заміни на"\x0A" .
  • Transport.*: Виправлено використання беззнакового типу у повернені функцій read() та write(). Додано ресурси до лічильників вхідних/вихідних запитів.
  • Transport.Sockets: Виправлено пропуск ініціалізації розміру повертального значення для функції getsockopt().
  • DAQ.JavaLikeCalc: Виправлено падіння функції replace(), об'єкту "RegExp".
  • DAQ.Siemens: Виправлено отримання та запис значень реальних типів. Виправлено перепідключення у випадку помилки. Виправлено використання властивості розміру цілого, реального та строкового типів. Додано очистку зв'язків параметру при його виключені.
  • UI.Vision, UI.WebVision: Виправлено доступ за межі вектору під час відображення графіків примітиву "FormEls".
  • UI.VCAEngine: Виключено можливість втрати змін у сервері візуалізації під час відображення у візуалізаторах шляхом попереднього збереження значення тактового лічильника у сервісному запиті "openList".
  • UI.WebVision:
    • Виправлено відкриття та заміна кореневої сторінки.
    • Виправлена обробка масштабу вкладених сторінок, з урахуванням масштабу кореневої.

Оптимізація та підвищення продуктивності:

  • SYS: Механізм ресурсу об'єкту "ResString" замінено з RW-блокувань на мютекс, з метою підвищити продуктивність та скоротити споживання пам'яті.
  • Archive.FSArch: Обробку індексної таблиці архіву значень значно прискорено завдяки використанню швидкого алгоритму обчислення кількості бітів у 32-разрядному цілому.
  • UI.WebCfgD: Використано груповий запит вмісту сторінок для значного підвищення продуктивності на повільних та високолатентних каналах.
  • UI.Vision: Підвищено продуктивність відтворення заповнень примітиву "ElFigure".
  • UI.VCAEngine:
    • Виконано заходи по підвищенню швидкості запуску сеансу проекту в числі: пропущено ініціалізацію базових атрибутів у зв'язку з їх наступного успадкування.
    • Виключено переклади деяких повідомлень часу виконання сеансу.
    • Реалізовано включення тільки потрібних сторінок під час запуску сеансу. Інші сторінки виконуваного сеансу включаються під час звернення до них. Це дозволило значно підвищити швидкість запуску сеансу, а також зменшити залежність швидкості запуску від складності проекту візуалізації.
    • Реалізацію архівного режиму примітиву "Документ" змінено на пряму роботу з БД, що дозволило розширити глибину архіву до 1000000 документів без значного впливу на споживання оперативної пам'яті.

3 Удосконалення та стабілізація графічної підсистеми

Значну роботу була виконано у межах графічної підсистеми, а саме у модулях рушія СВК UI.VCAEngine, візуалізаторів UI.Vision та UI.WebVision, а також конфігураторах. Внесені зміни були направлені на стабілізацію, оптимізацію споживання пам'яті та покращення користувацьких властивостей.

Покращення графічної підсистеми:

  • UI.VCAEngine, UI.Vision, UI.WebVision:
    • Виправлено звернення за межі масиву (вектору) під час побудови трендів, примітиву "Діаграма".
    • Додано та реалізовано властивість ширини графіку, примітиву "Діаграма".
    • Додано періодичну перевірку дерева віджетів сторінки з метою виявлення факту видалення віджетів, шляхом запиту повного переліку віджетів.
    • Реалізовано відображення графіків, групи графіків примітиву "Діаграма" у шкалі значення у випадку різниці шкал всіх графіків не більш ніж на 20%.
    • Додано та реалізовано можливість обрання режиму підтвердження для елементів редагування рядка та тексту примітиву "Елементи форми".
    • Виправлено можливість втрати деяких змін у моделі, під час відображення їх у візуалізаторах.
    • Додано та реалізовано властивість кількості значень на піксел у графіках примітиву "Діаграма", з метою керування деталізацією експорту у CSV та інше.
    • Реалізовано логарифмічну шкалу значень для графіків примітиву "Діаграма".
    • Додано та реалізовано властивість збереження співвідношення сторін головної сторінки під час розгортання головного вікна виконання сеансу проекту.
  • UI.VCAEngine:
    • Реалізовано включення сторінок сеансу проекту за потребою, з метою підвищення швидкості запуску та оптимізації використання оперативної пам'яті.
    • Примітив "Документ" перероблено для ведення архівів, архівного режиму, повністю у БД, а також додано функцію користувацького API для доступу до елементів архіву.
    • Додано періодичну (30 хвилин) перевірку та закриття вже невикористаних (втрачених) сеансів проектів.
    • Видалено попередній (суперечливий) механізм відміни видалення вкладених віджетів та заміщено повноцінним механізмом відкатів у візуалізаторі UI.Vision.
    • Виконано оптимізацію використання пам'яті елементами сеансу до 20%.
    • Видалено підтримку першої, застарілої, версії структури БД середовища візуалізації.
    • Додано обмеження на час генерації документів у примітиві "Документ" у 5 секунд.
    • Додано підтримку типу атрибутів "Об'єкт" та "Текст".
    • Вимкнено примусову ініціалізацію нових користувацьких атрибутів у EVAL.
    • Примітив "Документ" переключено у режим повного розбору XML з метою повноцінного збереження розмітки XHTML.
    • Додано індикацію стану коректності посилань у вигляді "(+)" в кінці.
  • UI.Vision:
    • Додано реалізацію повноцінних відмін та повторів змін під час візуального редагування віджетів.
    • Покращення у чутливості та оновлені змін сеансу виконання проекту: оптимізовано продуктивність відтворення примітиву "ElFigure", обробка зміни рівня віджету "geomZ".
    • Додано експорт у CSV формат із примітивів "Діаграма" та "Документ".
    • Введено обмеження на розмір діалогів вводу та включено адаптивне визначення їх розмірів за вмістом.
    • Повністю переписано механізм виконання правил підсвічування синтаксису.
    • Додано створення нового сеансу після відновлення віддаленого підключення та відсутності попереднього сеансу.
    • Фон вікна редагування віджету встановлено у шаблон QT::Dense7Pattern з метою усунення можливості перекриття за кольором.
    • Додано обробку повідомлень вибору віджету під час натиску у області скролінгу, але за межами віджету.
    • Примітив "Елементарна фігура":
      • Виконано реорганізацію операцій із діалогом властивостей та контекстне меню з динамічними та статичними властивостями.
      • У процесі додання фігури реалізовано її відтворення під час пересунення курсору миші.
  • UI.WebVision:
    • Виправлено обробку масштабу вкладених кадрів, а також переглянуто механізм формування-включення скролу.
    • Додано функцію перетворення зображень на боці серверу. Функцію перетворення використано для зміни розміру та обезбарвлення зображень неактивних кнопок.
    • Реалізовано відкриття малих вікон вкладених сторінок у вигляді DIV-блоків, що вирішує проблему блокування та тривалого відкриття зовнішніх вікон багатьма браузерами.
    • Головну сторінку інтерфейсу відцентровано у вікні браузера.
  • UI.QTCfg:
    • Додано обмеження на висоту рядків таблиць у половину висоти таблиці.
    • Введено обмеження на розмір діалогу вводу та включено адаптивне визначення його розміру за вмістом.
    • У елементів доступних для зміни висоти користувачем, для забезпечення роботи всюди, встановлено фіксований стиль "StyledPanel".
    • Додано функцію повнотекстового редагування тексту комірок таблиць.
    • Повністю переписано механізм виконання правил підсвічування синтаксису.
  • UI.WebCfgD:
    • Зменшено яскравість обезбарвлених-пасивних кнопок.
    • Всі вікна діалогів реалізовано у вигляді DIV-блоків з метою виключити проблеми та затримки при відкритті зовнішніх вікон різноманітними браузерами.
    • Використано груповий запит вмісту сторінок для значного підвищення продуктивності на повільних та високолатентних каналах.
    • Додано інформацію у строку статусу про поточного користувача та можливість його зміни.
    • Виконано адаптацію для роботи у повну ширину екрану.

4 Розширення API користувацького програмування

Було продовжено формування об'єктного API користувацького програмування, яке передбачає інтеграцію користувацьких функцій до дерева об'єктів системи OpenSCADA. Крім того було внесено низку змін у існуючі бібліотеки функцій користувацького API.

Зокрема було здійснено наступні зміни:

  • SYS:
    • Додано функції роботи з файлами: SYS.fileRead() та SYS.fileWrite().
    • До API об'єкту XMLNodeObj додано функцію getElementBy() для пошуку вкладених вузлів за значенням атрибуту.
    • Додано функцію здійснення кодування тексту між різними символьними кодуваннями.
    • Додано функцію NodeObj.nodePath().
  • TConfig, TBD, TTransportIn, TTransportOut, TUser, TGroup, TPrmTmplLib, TPrmTempl, TParamContr, TController, TVArchive, TVArchivator, TMArchivator: Додано функції користувацького API cfg() та cfgSet() для доступу до конфігурації об'єктів (які зберігаються у БД).
  • DAQ:
    • Додано функцію TController::alarmSet() для генерації типових порушень у об'єкті контролеру модулів підсистеми "Збір даних".
    • Додано функцію SYS.DAQ["Modul"]["Controller"]["Parameter"]["Attribute"].arch() для прямого звернення до об'єкта архіву, пов'язаного з атрибутом параметра.
    • Додано функції користувацького API enable() та start() для прямого контролю за станом об'єкту контролера.
  • DAQ.JavaLikeCalc, Special.FLibComplex1, Special.FLibMath, Special.FLibSYS: Додано функцію динамічного виклику бібліотечних функцій SYS.DAQ.JavaLikeCalc["lib_{Lib}"].funcId(prms, ...).
  • Archive: Додано функції користувацького API status(), end() та begin() для доступу до стану та властивостей об'єкту архіватора повідомлень.
  • DAQ.JavaLikeCalc:
    • Для типу даних "null" додано функцію isEVal(), яка завжди повертає "true".
    • До об'єктів бібліотечних функцій додано функція користувацького API call().
  • DAQ.ModBus: Додано функцію користувацького API messIO() до об'єкта контролеру "ModBus" з метою надання можливості надсилання нестандартних ModBus-запитів безпосередньо із шаблона параметра.

5 Загальносистемні розширення

До загальносистемного API системи OpenSCADA були внесені значні зміни та розширення з метою загальної стабілізації та розширення:

  • SYS:
    • Об'єкт зберігання рядка з ресурсом "ResString" значно розширено на предмет прозорого перетворення з/у тип std::string.
    • Додано можливість збереження до конфігураційного файлу:
      • Додано префікс БД "<cfg>" для надання конфігураційного файлу у ролі джерела завантаження/збереження конфігурації.
      • Функції TDBS::dataSeek() та TDBS::dataDel() оновлено для суворої обробки конфігураційного файлу.
      • Функцію chkSelDB() адаптовано для підтримки запису до конфігураційного файлу.
      • Додано збереження великих та багаторядкових значень полів конфігурації у текстовому полі окремого тегу конфігураційного файлу.
    • Тип "long long", за звичай 64-рязрядне ціле замінено всюди на більш визначений "int64_t" на всіх архітектурах.
    • Об'єкти потоків OpenSCADA жорстко пов'язано з власним потоком. Додано статистику завантаження та викликів періодичних потоков.
    • Реалізовано можливість перевірки завантажуваних об'єктів на їх відсутність у БД та видалення. Функція перевірки активується тільки у випадку прямого завантаження із БД.
    • Додано системну періодичну функцію perSYSCall() виклику об'єктів підсистем та їх модулів. Використовується для сервісних цілей ненавантажених та рідких задач модулів та підсистем.
    • Функцію тестування виразу за шаблоном переміщено до об'єкту TRegExp.
    • SYS.XMLNode:
      • Повністю видалено код використання XML-парсеру "Expat".
      • Додано можливість завантаження текстових частин тегу у окремі-спеціальні теги, у повному режимі. Призначено для повного збереження конфігурації тегу.
      • Додано можливість завантаження та збереження блоків коментарів у окремі-спеціальні теги, у повному режимі.
  • DOC:
    • Виконано перевірку та виправлення Англійських текстів у ядрі OpenSCADA. Оновлено переклади ядра OpenSCADA на Німецьку, Російську та Українську мови.
    • Виконано перевірку та виправлення Англійських текстів модулів OpenSCADA. Оновлено переклади модулів OpenSCADA на Німецьку, Російську та Українську мови.
    • Оновлені всі основні документи на доступних мовах: openscada.pdf, build.pdf, properties.pdf, "OpenSCADA API", "Про OpenSCADA", "Бібліотека TechApp", "Quick Start", "WLib Основні", "WLib Елементи мнемосхем".
  • Бази даних бібліотек:
    • Бібліотеку основних візуальних елементів доповнено кадрами реалізації редагування та виконання "Рецептів"-"Користувацьких програм".
    • До комплекту пакета бібліотек додано бібліотеку елементів Електричних схем(RU).
    • Кадр головної сторінки доповнено механізмом "програвання" моделей технологічних процесів (ТП).
    • Модель промислового котлоагрегату(RU) перекладено на Англійську та Українську мови.
  • DB: Додано обмеження за часом у 5 секунд та поле встановлення початкового зсуву для запиту вмісту великих таблиць.
  • DAQ: Додано можливість обрання типу атрибута шаблона "Об'єкт". Призначено в першу чергу для зберігання внутрішніх даних у об'єкті та не може бути використано як тип атрибута параметра об'єкта контролера джерела даних.
  • TArchives: Додано можливість використання регулярних виразів при пошуку за категорією та за посередництвом "/match/"
  • Transport: Типи форматів вихідних запитів розширені варіантами тексту з різним завершенням рядку: LF, CR, CR/LF.
  • DAQ, DAQ.DiamondBoards, DAQ.ModBus, DAQ.LogicLev: Додано можливість зміни типу параметра для виключених параметрів багатотипових модулів підсистеми "Збір даних".
  • DAQ.LogicLev, DAQ.Siemens, DAQ.ModBus: У випадку виконання за розкладом до атрибуту "f_frq" записується час після останнього обчислення у негативному значені. Додано ініціюючі та зупиняючі виклики при включені/виключені параметру.
  • TArchives, Archive.DBArch, Archive.FSArch: Додано межу часу під час запиту повідомлень із архіву.
  • SYS.TConfig, Archives, DAQ, Security, Transports, Archive.*, DAQ.*, Protocol.UserProtocol, Transport.*, UI.VCAEngine, UI.WebUser: Збереження строкових конфігураційних полів переведено у об'єкт ресурсної строки "ResString".

6 Публікація рішень OpenSCADA

В процесі здійснення робіт над цим релізом на різних конференціях та виставках були представлені рішення на основі проекта OpenSCADA:

Заключення

Цим релізом системи OpenSCADA фактично завершено роботу по адаптації на апаратну архітектуру ARM, що відіб'ється у наданні та публікації офіційних збірок релізу 0.7.2 для мобільних пристроїв.

Хоча випуск даного релізу дещо запізнився та затягнувся його все ж було ретельно підготовлено та він стане доброю основою для доведення кодової бази проекту до майбутнього відповідального релізу 0.8.0 LTS. Крім того цей релиз можна використовувати і для повсюдного впровадження та застосування у відповідальних задачах з наступним плавним переходом на 0.8.0 LTS після його вихода.

Подальші зусилля розробників будуть направлені на завершення планових завдань та приготування до випуску реліза OpenSCADA тривалої підтримки (LTS) версії 0.8.0.


12464