Релиз открытой 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.