Реліз відкритої SCADA(Supervisory control and data acquisition) системи версії 0.6.4 є плановим релізом гілки 0.6.0. У межах цієї версії виконано суттєву роботу по стабілізації та адаптації до практичних завдань, а також реалізовані значні удосконалення. Дана версія системи OpenSCADA позиціонується як офіційна бета версія стабільної версії 0.7.0 системи OpenSCADA для платформи "Linux x86/x86_64".
Цей документ є обробкою (компіляцією) документа <ChangeLog> системи OpenSCADA версії 0.6.4, котрий призначено кратко та наочно освітлити нові можливості та зміни у системі OpenSCADA. Документ включає інформацію про зміни виконані у межах стабілізації релізу версії 0.6.3. Детально ознайомитись зі всіма змінами у системі OpenSCADA можні у файлі ChangeLog з пакету дистрибутива системи або тут: http://wiki.oscada.org/Works/ChangeLog.
Ключовими особливостями даної версії є:
Реалізація планових завдань.
Оптимізація, підвищення стабільності, стійкості та продуктивності системи.
Удосконалення та стабілізація СВК.
Переклад документації на Англійську мову та інтерфейсів програми на Німецьку. Багатомовна БД.
Загальносистемні розширення.
У процесі робіт над релізом були внесені наступні зміни у модулі OpenSCADA:
Archive.FSArch - 1.0.1 -> 1.3.1, переклад документації на Англійську, стабілізація, зміна API запиту значень та підсистеми в цілому до версії 2.
Archive.DBArch - 0.7.1 -> 0.9.0, переклад документації на Англійську, стабілізація, зміна API запиту значень та підсистеми в цілому до версії 2.
DB.DBF - 1.9.1 -> 2.0.1, оновлення механізму отримання даних, розширення можливостей при роботі з ключами, переклад документації на Англійську.
DB.MySQL - 1.4.1 -> 1.6.1, стабілізація, зберігання багатомовних полів, новий макрос винайдення бібліотеки MySQL, оновлення механізму отримання даних, розширення можливостей при роботі з ключами, переклад документації на Англійську.
DB.SQLite - 1.4.1 -> 1.6.1, стабілізація, зберігання багатомовних полів, новий макрос винайдення бібліотеки SQLite, оновлення механізму отримання даних, розширення можливостей при роботі з ключами, переклад документації на Англійську.
DB.FireBird - 0.8.1 -> 0.9.1, новий макрос винайдення бібліотеки FireBird, оновлення механізму отримання даних, розширення можливостей при роботі з ключами, переклад документації на Англійську.
DAQ.DiamondBoards - 1.1.0 -> 1.2.0, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.System - 1.6.2 -> 1.7.0, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.BlockCalc - 1.1.1 -> 1.2.1, стабілізація, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.JavaLikeCalc - 1.3.0 -> 1.5.0, стабілізація, розширення ліміту на кількість регістрів у функції до 65535, реалізація об’єктів, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.LogicLev - 0.9.2 -> 1.0.1, деяке розширення функціональності, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.SNMP - 0.3.3 -> 0.4.0, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.Siemens - 1.1.1 -> 1.2.1, стабілізація, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.ModBus - 0.9.1 -> 1.0.1, розширення функціональності, значна стабілізація, відокремлення протокольної частини у власний модуль Protocol.ModBus, заміщення власного механізму послідовних транспортів на модуль Transport.Serial, використання окремого механізму блокування вихідних транспортів, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.DCON - 0.1.0 -> 0.3.0, стабілізація, розширення переліку обладнання яке підтримується, реалізація резервування, заміщення власного механізму послідовних транспортів на модуль Transport.Serial, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.DAQGate - 0.3.3 -> 0.8.0, зміна ім’я з DAQ.Transporter, стабілізація, розширення функціональності, реалізація вертикального та горизонтального резервування, підтримка пробросу архівів віддалених станцій, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.SoundCard - 0.6.0, новий модуль реалізації доступу до вхідних даних звукової карти, реалізація резервування, переклад інтерфейсу на Німецьку та документації на Англійську.
DAQ.ICP_DAS - 0.5.0, новий модуль реалізації підтримки обладнання фірми ICP DAS.
Transport.Sockets - 1.3.6 -> 1.4.0, стабілізація, деякі покращення, переклад документації на Англійску.
Transport.SSL - 0.8.0 -> 0.8.2, стабілізація, деякі покращення, переклад документації на Англійску.
Transport.Serial - 0.5.0, новий модуль.
Protocol.HTTP - 1.3.2 -> 1.4.1, стабілізація, підтримка режиму Keep-Alive, розширення механізму модулів HTTP протоколу, переклад інтерфейсу на Німецьку та документації на Англійську.
Protocol.SelfSystem - 0.8.0 -> 0.9.1, стабілізація, нове API вихідних запитів підсистеми "Протоколи", переклад інтерфейсу на Німецьку та документації на Англійську.
Protocol.ModBus - 0.5.0, новий модуль протоколу ModBus відокремлений з модуля DAQ.ModBus та підтримуючий режим серверу або підлеглого мережі ModBus.
Special.FLibComplex1 - 1.0.3 -> 1.0.4, деякі покращення у функції PID-регулятора, переклад інтерфейсу на Німецьку та документації на Англійську.
Special.FLibMath - 0.5.1, переклад інтерфейсу на Німецьку та документації на Англійську.
Special.FLibSYS - 0.7.0 -> 0.9.0, додано об’єкти користувача та функції роботи з ними, значне розширення бібліотеки в цілому, стабілізація, переклад інтерфейсу на Німецьку та документації на Англійську.
Special.SystemTests - 1.3.6 -> 1.3.7, модифікація під зміни API, переклад інтерфейсу на Німецьку.
UI.QTStarter - 1.5.1 -> 1.5.3, додано функцію вставки власного розділу меню у вікна QT які відкриваються, переклад внутрішніх повідомлень QT, переклад інтерфейсу на Німецьку та документації на Англійську.
UI.QTCfg - 1.7.0 -> 1.8.1, стабілізація, підтримка динамічних структур таблиць, уніфікація інтерфейсу керування OpenSCADA, механізм пошуку елементу у гілці, нова версія API протоколів OpenSCADA, вибір декількох елементів дерева для групового видалення, переклад інтерфейсу на Німецьку та документації на Англійську.
UI.WebCfg - 1.5.2 -> 1.5.3, стабілізація, підтримка динамічних структур таблиць, використання загального механізму аутентифікації, переклад інтерфейсу на Німецьку та документації на Англійську.
UI.WebCfgD - 0.5.0 -> 0.6.2, стабілізація, підтримка динамічних структур таблиць, уніфікація інтерфейсу керування OpenSCADA, нова версія API протоколів OpenSCADA, використання загального механізму аутентифікації, переклад інтерфейсу на Німецьку та документації на Англійську.
UI.VCAEngine - 0.8.0 -> 0.9.0, стабілізація, підтримка стилів, розширення візуального примітиву "Протокол", збільшення версії структури БД до 2, підтримка багатомовних даних, оптимізація збереження даних, представлення "Частотний спектр" у примітиві "Діаграма", підтримка контекстного меню у режимі виконання, переклад інтерфейсу на Німецьку та документації на Англійську.
UI.Vision - 0.8.0 -> 0.9.0, стабілізація, підтримка стилів, розширення візуального примітиву "Протокол", представлення "Частотний спектр" у примітиві "Діаграма", підтримка контекстного меню у режимі виконання, переклад інтерфейсу на Німецьку та документації на Англійську.
UI.WebVision - 0.6.0 -> 0.7.0, стабілізація, розширення візуального примітиву "Протокол", представлення "Частотний спектр" у примітиві "Діаграма", нова версія API протоколів OpenSCADA, використання загального механізму аутентифікації, оптимізація швидкості та використання пам’яті, підтримка контекстного меню, переклад інтерфейсу на Німецьку та документації на Англійську.
1 Реалізація планових завдань
У відповідності з планом релізу було виконано наступні завдання:
Розширення API програмування користувача функціями:
Для керування сеансом була додана бібліотека функцій користувача до модуля UI.VCAEngine. До складу бібліотеки увійшли функції: vcaWdgList(), vcaNodePresent(), vcaAttrList(), vcaAttrGet(), vcaAttrSet() и vcaSesUser().
Керування контролерами підсистеми "Збір даних" та іншими об’єктами OpenSCADA було реалізовано шляхом додання типу даних "Об’єкт" та створення функції запиту користувача FLibSYS.xmlCntrReq() до інтерфейсу керування.
Модуль DAQ.ModBus доповнено модулем протоколу ModBus, що дозволило працювати у режимі сервера(підлеглого) мережі ModBus.
Реалізовано механізми резервування. До підсистеми "Збір даних" додано механізм горизонтального резервування та всі модулі цієї підсистеми адаптовано до підтримки горизонтального резервування. До модуля DAQ.DAQGate додано функції вертикального резервування включаючи відновлення архівів та шлюзування архівів віддалених станцій. Реалізовано механізм гарячої компенсації дірок у архівах з архівів резервних джерел.
До DAQ.JavaLikeCalc додана повна підтримка об’єктів та масивів. Реалізовано механізми доступу до елементів “.prop” та "[prop]". Реалізовані функції об’єктів та їх викликів. Мова в цілому уніфікована для роботи з різними типами даних за допомогою однієї команди віртуальної машини.
Додано підтримку стилів інтерфейсів СВК.
Реалізація примітивів "Зв’язок" та "Функція" СВК. - Ця робота не була виконана та перенесена до наступного релізу.
2 Оптимізація, підвищення стабільності та продуктивності системи.
У процесі робіт над цією версією, а також її практичного впровадження, було виявлено та виправлено в цілому більш 200 помилок.
Крім виправлення багатьох помилок була виконана робота по оптимізації різних компонентів OpenSCADA. Особливо помітна оптимізація відбулася над середовищем візуалізації та керування (СВК) та його візуалізаторами. Основним вектором у оптимізації стала оптимізація використання пам’яті.
Перелічимо більш суттєві помилки виправлення яких значним чином позначилося на підвищенні стабільності:
Загальносистемні:
Виправлені конфігураційні файли для забезпечення віддалених підключень, по замовченню.
Збірка головної пускаючої програми відокремлена від збірки бібліотеки у директорію src_call/ з метою забезпечення безпомилкової збірки RPM-пакетів у багатопоточному режимі.
Запускаючий скрипт режиму користувача "openscada_start" виправлено з метою копіювання конфігураційного файлу oscada_start.xml у ~/.openscada/oscada.xml та локального використання його.
Виконано адаптацію для використання QT 4.5. Глобально додано змінну оточення LC_NUMERIC=C з метою остаточного виправлення проблемы поділювача у реальних числах на різних локалях.
Режим використання кешу системної БД змінено для використання тільки у випадку відсутності основної БД.
Додано ресурс для доступу до XML-дерева конфігураційного файлу. Для доступу до XML-дерева використано не режим генерації виключень при помилках, що виправило витік ресурсів (Стек) у деяких контекстах.
Виправлено конфлікт ресурсу, виникаючий при спробі видалення одного й того-ж елемента-нащадка компонента OpenSCADA з різних потоків.
Додано ресурс для доступу до контейнерів структури елементів TElem. Були виявлені конфлікти під час використання загального TElem з різних TConfig, різних потоків у UI.WebVision.
Додано підтримку оновлення статусу з’єднання віддалених станцій у модулі UI.QTCfg.
У модуль Protocol.HTTP:
Додано підтримку режиму "KeepAlive", який потрібен для нормальної роботи WEB-браузера Opera.
Виправлено пропущення та неповну обробку символу '\r' у кінці строк протоколу HTTP. Виправлена робота у Konqueror 4.
СВК:
Зроблено багато виправлень та удосконалень у зв’язці візуалізації та архівації.
Робота механізму тренда примітиву «Діаграма» СВК виправлена при роботі на довгих ділянках часу. Виправлена робота з окремо вибраним архіватором.
Алгоритм виявлення факту модифікації атрибутів та віджетів модуля UI.VCAEngine, при виконані проектів, винесено у функцію modifChk() та доопрацьовано для врахування можливості переповнення та збросу лічильника тактів виконання інтерфейсу візуалізації.
У модуль DAQ.ModBus внесено багато виправлень та виконано реконструкцію для забезпечення підтримки різних інтерфейсів, включаючи ModBus/ASCII. Запис до контролера відбувається тільки у випадку реальної зміни значень та запису не EVAL значень.
Для вихідного транспорту модуля Transport.Sockets виправлено переподключення та відновлення сеансу, а також додано підконтрольний таймаут з’єднання.
Виправлено експорт великих ділянок архіву, а також функція керування обмеженнями запиту для буферів з фіксованим розміром.
Оптимізація та підвищення продуктивності:
Режим роботи з таблицями БД змінено на режим не закриваючий таблиці одразу по завершенню роботи з ними. Закриття відбувається через хвилину після останнього використання таблиці. Такий підхід значно підвищив швидкість доступу до БД.
Реалізовано кеш ресурсів у модулі UI.WebVision. Підвищує продуктивність під час формування образів примітивів ElFigure на основі зображень.
Структуру БД СВК змінено для підвищення продуктивності та виключення втрачених записів у БД. Версію API БД встановлено у 2.
Додано індивідуальний механізм блокування вихідних транспортів. Використано для монопольного доступу до транспорту без блокування всього протоколу у DAQ.ModBus та Protocol.SelfSystem.
Оптимізації використання пам’яті:
Реалізовано тип даних TVariant для прозорого збереження даних різних типів. Об’єкт використано для отримання прямого доступу до атрибутів віджетів “id” та “path” та виключення збиткового збереження даних цих атрибутів у модулі VCA UI.VCAEngine.
Глобальний об’єкт ресурсу та його використання уніфіковане. Для ресурсу на читання-запис використано POSIX функції pthread_rwlock_*().
Контейнер груп нащадків у TCntrNode зроблено динамічним.
Спрощено механізм збереження атрибутів у віджетах СВК.
Об’єкт опису атрибутів СВК TFld використано одноразово для наслідуваних атрибутів. Зменшено споживання пам’яті до 30%.
3 Удосконалення та стабілізація СВК.
Помітні зміни було виконано у межах середовища візуалізації та керування (СВК), а саме у модулях рушія СВК UI.VCAEngine, візуалізаторах UI.Vision та UI.WebVision. Внесені зміни було спрямовано на стабілізацію, оптимізацію споживання пам’яті та покращення споживчих властивостей СВК.
Удосконалення СВК:
Додано трансляцію перекладу основних діалогів QT у стандарт I18N.
Додано функції API користувача для розширення доступу до елементів сеансу проекту з скриптів елементів(віджетів) візуалізації.
Додано підтримку альфа-каналу, тобто напівпрозорості при встановлені кольору всіх елементів примітиву ElFigure СВК.
Атрибут “root” СВК переміщено до основного контейнера атрибутів віджетів. Додано атрибут “parent” для надання інформації про батьківський віджет. Додано атрибути “tipTool” та “tipStatus” для надання можливості наділення віджетів СВК контекстними підказками у модулі рушія візуалізації UI.VCAEngine.
У модулі UI.WebVision змінено концепція формування образу примітива ElFigure на формування образів з заповненням у окремих зображеннях та наступної збірки їх у кінцевому зображені.
Реалізовано механізм очищення змін віджетів СВК. Часто потрібно для збору локальних змін та для повернення до наслідуваних властивостей.
Реалізовано підтримку контекстного меню для віджетів у режимі виконання проектів СВК.
Реалізовано приховання панелі меню у режимі виконання проекту модулів UI.Vision для непривілейованих користувачів. Панель меню у режимі виконання тепер позиціонується як інструмент адміністратора OpenSCADA, який містить загальносистемні функції. Функції друку та експорту продубльовано на панелі станів.
Додано індикатор годинника на панелі станів у режимі виконання проекту модулем UI.Vision для виконання на весь екран.
Реалізовано базову підтримку багатодисплейних систем у модулі UI.Vision.
Внесено зміни у структуру БД СВК, для підвищення продуктивності та виключення втрачених записів у БД. Версія структури БД СВК збільшено до 2.
У примітив СВК "Діаграма" додано представлення частотного спектру даних архіву значень.
Додано функція користувача vcaSesUser() у API користувача СВК.
СВК: У примітив «Протокол» додано властивість порядку сортування та властивості опису оформлення елементів. Додано перевірку на вимкнення трендів, включаючи умову не коректного кольору, у примітиві «Діаграма».
Додано підтримку стилів.
4 Переклад документації на Англійську мову та інтерфейсу програми на Німецьку. Багатомовна БД.
Виконано велику роботу по перекладу інтерфейсу програми на Німецьку Іриною Попковою. Були перекладені інтерфейс ядра OpenSCADA та модулів: UI.WebVision, UI.QTCfg, DAQ.DCON, DAQ.LogicLev, DAQ.DAQGate, DAQ.DiamondBoards, DAQ.ModBus, DAQ.SoundCard, DAQ.Siemens, DAQ.SNMP, DAQ.System, DAQ.JavaLikeCalc, Protocol.HTTP, Protocol.SelfSystem, Special.FLibComplex1, Special.FLibMath, Special.FLibSYS, Transport.Serial, Special.SystemTests, UI.VCAEngine, UI.QTStarter, UI.Vision, UI.WebCfg. Включено патч Клауса Фетчера для корекції перекладу інтерфейсу на Німецьку.
Лисенко Максимом виконано переклад документації на Англійську для загальносистемної документації та для модулів: DB.SQLite, DB.MySQL, DB.FireBird, DB.DBF, Archive.DBArch, Archive.FSArch, DAQ.System, DAQ.LogicLev, DAQ.DAQGate, DAQ.JavaLikeCalc, DAQ.ModBus, DAQ.SoundCard, DAQ.Siemens, DAQ.SNMP, DAQ.DiamondBoards, DAQ.BlockCalc, Transport.Sockets, UI.WebCfgD, UI.QTStarter, UI.QTCfg, Transport.Serial, Transport.SSL, Protocol.SelfSystem, Protocol.HTTP.
У ядро системи OpenSCADA додано підтримку багатомовних текстових змінних. Завдяки цій функції демонстраційні БД окремих мов об’єднано у єдину багатомовну БД, яка включає Англійську(базову), Російську та Українську мови. Багатомовність підтримується модулями БД DB.SQLite та DB.MySQL. Демонстраційний конфігураційний файл також перекладено на Англійську(базову), Російську та Українську мови.
5 Загальносистемні розширення.
До даного релізу було внесено достатньо багато загальносистемних змін, направлених на розширення функціональності.
Розширення API програмування користувача:
У бібліотеку системного API Special.FLibSYS користувача додано:
Функції: sysCall(), int2str(), str2real(), str2int(). Функція sysCall() відкриває широкі можливості користувачу OpenSCADA шляхом виклику будь яких системних програм, утиліт та скриптів, а також отримання за посередництвом них доступу до великого об’єму системних даних.
Додано функції dbReqSQL() та messGet(), які використовують у якості повернення об’єкти.
Додано об’єкт XMLNodeObj, функція xmlNode() для створення об’єкту та функція xmlCntrReq() для надсилання запиту до інтерфейсу керування OpenSCADA.
Додано об’єкт VArchObj та функції vArh(), vArhBuf() для його створення. Використовується для повного доступу до архівів. Додана функція користувача для планування у стандарті Cron tmCron().
Додано функція FFT у об’єкт архіву VArchObj для обробки архіву швидким перетворенням у ряд Фурье.
Додані функції кодування/декодування бінарних даних у текст: strEnc2Bin() та strDec4Bin().
У об’єкт екземпляру (TValFunc) виконання функцій системи OpenSCADA (TFunction) додано атрибут користувача для надання можливості розподілу прав на виконання функцій API користувача.
Реалізовано тип даних TVariant для прозорого збереження даних різних типів. Об’єкт використано для отримання прямого доступу до атрибутів віджетів “id” та “path” та виключення зайвого збереження даних цих атрибутів у модулі VCA UI.VCAEngine.
Межа кількості змінних (регістрів), які використано користувачем у функції, розширено з 255 до 65535, у DAQ.JavaLikeCalc.
Реалізовано об’єкти користувача. Підтримується базовий об’єкт TVarObj та об’єкт масиву TAreaObj. Додано підтримку вихідних параметрів у функціях об’єктів.
У DAQ.JavaLikeCalc додана повна підтримка об’єктів та масивів. Реалізовані механізми доступу до елементів “.prop” та "[prop]". Реалізовані функції об’єктів та їх виклики. Мова в цілому уніфікована для роботи з різними типами даних за допомогою однієї команди віртуальної машини. Додано підтримку встановлення часу виконання контролерів у стандарті Cron.
Видалені прямі функції доступі до архівів. Замість них мають використовуватися вбудовані функції об’єкту архіву.
Реалізовано первинну підтримку моделі об’єктів OpenSCADA (DOM) для доступу з мов програмування користувача.
У вихідний транспорт додано DOM-функцію messIO() для надання користувачу можливості надсилання прямих запитів через транспорти.
Зміни демонстраційної БД:
Повноцінні об’єкти сигналізації.
Створено шаблон кадру зведених графіків, які містять до 80 графіків одночасно.
Додано контекстну допомогу до елементів мнемосхеми.
Обновлено панель навігації та додано кнопки квітації аварійних повідомлень.
Додано об’ємні елементи трубопроводів.
Додано контекстне меню для шарових кранів.
Збільшено розмір шрифту значень елементів видів аналогових сигналів.
Оновлено панелі керування трендами та документами.
Демо БД оновлена для реалізації структури БД СВК версії 2.
Оновлено переклад БД СВК на Англійську та додано переклад на Українську.
Оновлено алгоритм створення архівних документів.
Функція документа для сумування та усереднення ділянки архіву виправлено з метою використання останнього значення.
Додано ім’я користувача сеансу для розміщення у протоколі дій.
БД та конфігураційний файл переформовано для встановлення мовою по замовченню Англійської.
Розширено функціональність головної сторінки об’єктів сигналізації.
Збільшено шрифти кадру контура, а також додано кнопки ступеневої зміни значення.
Різне:
Додано можливість індивідуального завантаження з вибраної БД або конфігураційного файлу.
Реалізовано повну підтримку переліків дозволених та заборонених модулів, замінено перелік автоматичних модулів. Реалізовано таблицю для контролю за завантаженими поділяємими бібліотеками (модулями). Реалізовано ручне підключення/відключення модулів.
Режим роботи з таблицями БД змінено на режим не закриття таблиць одразу по завершенню роботи з ними. Закриття відбувається через хвилину після останнього використання таблиці. Такий підхід значно підвищив швидкість доступу до БД.
Додано мікросекундну частину часу у системні повідомлення OpenSCADA.
Додано спеціальний прапорець вибору ключа для використання його у функціях запиту до БД dataSeek() та dataDel(), що дозволило вибирати ключі для запиту не тільки текстового типу. Прапорець використано у всіх інтерфейсах.
Додано механізм статусу для об’єктів контролерів підсистеми «Збір даних».
Документ керівництва по OpenSCADA відформатовано для друку та додано у репозиторій.
Збільшено версію API модулів підсистем: "Архіви" та "Збір даних" до 3 та "Протокол" до 2.
Реалізовано механізм статусу для основних підсистем та їх модулів.
x86-залежний механізм виміру коротких інтервалів часу всюди заміщено стандартним. Функція обчислення частоти процесора вимкнена для не x86 та x86_64 архітектур.
Додано вкладинку формування SQL-запитів у сторінку конфігурації БД.
Додано підтримку повністю динамічних структур елементу таблиці у конфігураторах UI.QTCfg, UI.WebCfg, UI.WebCfgD
Додано механізм сигналів, основаних на API повідомлень.
DAQ.DAQGate:
Модуль DAQ.Transporter перейменовано у DAQ.DAQGate та розширено для підтримки горизонтального та вертикального резервування, а також для робот з архівами.
Постійні запити до віддаленого контролера груповано у один запит.
Додано оновлення переліку параметрів та з’єднання архівів з ними.
Змінено концепцію синхронізації для DAQ.DAQGate та резервування збору даних.
Порядок віддалених станцій зроблено значущим.
Виконана деяка очистка коду.
Виправлено доступ до атрибуту помилки “err”.
Механізм відновлення з архівів дещо оновлено з метою виправлення втрати значень у DAQ.DAQGate та системі резервування.
DAQ.DCON: Включено патч Алмаза Каримова для багатьох виправлень та удосконалень.
Додано функцію TSYS::cron() для планування виконання завдань.
DB: Додано запис значень у мову по замовченню у випадку створення нового запису та не використання мови по замовченню. Додано можливість використання перекладів з багатомовних БД у одномовній конфігурації.
Зміни збіркової системи та файлу специфікації для формування RPM-пакету:
Створено шаблонний модуль "=Tmpl=" для підсистем: "Транспорти" та "Протоколи".
Оновлено spec-файл формування RPM-пакетів. Для вимог дистрибутива Fedora адаптовано окремий spec-файл Олексієм Попковим та при участі Петра Лемінкова. Додано autoconf макроси для більш ефективного винайдення ресурсів БД MySQL, FireBird та SQLite. Виправлено та адаптовано збірку модулів на libtool 2.2.
З репозиторія видалені файли, які можуть бути створені командою “autoreconf -iv”.
Версію бібліотеки OpenSCADA змінено у 0:11:0.
6 Плани подальшого розвитку
До промислового релізу версії 0.7.0 заплановано вирішення таких завдань:
Реалізація примітивів "Зв’язок" та "Функція" СВК з метою надання інструмента графічного програмування.
Реалізація модуля БД ОДБС, PostgresSQL та транспортного модуля БД.
Реалізація нового механізму/модуля тестів системи OpenSCADA.