Реліз відкритої 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.ua/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.