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

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

Это обновление релиза 0.9 LTS исправляет около 60 ошибок и добавляет некоторые улучшения, которые целиком вы можете почитать в протоколе изменений обновления.

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

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

OpenSCADA библиотеки и проекты

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

API
!!!!:Изменения:

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

Дополнения:

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

Система

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

БД

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

Сбор Данных

  • FIX: JavaLikeCalc: Исполнение внутренних функций дополнено сохранением контекста общих-собственных регистров, в двух вариантах, первично для поддержки рекурсии.

Транспорты

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

Транспортные Протоколы

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

Интерфейс Пользователя

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

Сервисные обновления