From OpenSCADAWiki
< Documents‎ | Release 0.8.0
Revision as of 16:44, 3 May 2021 by FuzzyBot (Talk | contribs) (Updating to match new version of source page)

Jump to: navigation, search
Other languages:
English • ‎mRussian • ‎Українська

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

API
!!!!:Changes:

  • SYS.TModule: The info attributes like m{Name} renamed to mMod{Name}. Function modInfoMainSet() added and used into all modules for main info attributes of module set.
  • TProtocolIn, Protocol.UserProtocol, Transport.*, DAQ.{ModBus,OPC_UA}: The input transport store by locked header instead the path for faster access, API functions changed: open(), srcTr(), setSrcTr().

Appends:

  • SYS: Object ResMtx is added for gather all platform specific mutex implementation. Function TSYS::taskUtilizTm() added for get utilize time by the pointed tasks. TElem: Item's resource mResEl moved from Res to pthread_mutex_t, and it allowed for public access. Hardware platform endian specific conversion function's implementation placed, for: i16_LE(), i32_LE(), i64_LE(), i16_BE(), i32_BE(), i64_BE(), floatBE(), floatBErev(), doubleBE(), doubleBErev().
  • DAQ.{LogicLev,ModBus}: Appended by user API functions to the parameter object attrAdd() and attrDel() for attributes free management.
  • Transports: User API function {TrOut}.start() added for fast control for the output transport state.
  • Protocol.{*,UserProtocol},Transport.{Sockets,SSL}: Function Protocol::waitReqTm() added for polling mode control of input protocols.

SYS

  • FIX:TVarObj: Предотвращено возможность двойного освобождения объекта. Исправлено EVAL результат функции TVarObj::propGet().
  • Версию библиотеки ядра поднято до 2:3:0. Версию типа подсистем DB, DAQ, Archive, Protocol, Special, Transports, UI поднято до 7.
  • Archive.FSArch,DB.DBF,DAQ.{Comedi,SMH2Gi}: Использование readdir_r() переписано для прямого выделения памяти структуры "dirent" и предупреждения проблем на других ОС, вроде QNX.

Сбор данных

  • FIX:OPC_UA:
    • FIX:libOPC_UA: Все ошибочные пустые строки (-1) заменены на пустой массив (0). FIX: Исправлено зацикливание на пустом перечне сервиса "Read". FIX: Исправлено обработку аутентификации для клиента на предмет сохранения текущего описания конечной точки, с целью дальнейшего получения "policyId" и использования в сервисе аутентификации. К части сервера добавлено новые типовые пространства имен: 2-"http://opcfoundation.org/UA/DI/, 3-"http://PLCopen.org/OpcUa/IEC61131-3/". Добавлено независимый контроль версии libOPC_UA. Добавлено специфичные типы значений OpcUa_IntAuto и OpcUa_UIntAuto для адаптивного выбора типа целого, значительным образом для предоставления целого не исключительно фиксированным int32 (int64). К части клиента, для контроля подключения, добавлено виртуальную функцию connect(), использовано в сервисе "CloseSecureChannel" для закрытия соединения.
    • FIX:Клиент: Исправлено отображение кодов статусов для атрибутов контроллеров. Дополнение информации через: applicationUri(), productUri(), applicationName(). Для пустого "browseName", узлом обзора установлено использование "displayName". Исходные тексты тестового клиента несколько очищены и расширены.
    • Сервер: Пространство имён OpenSCADA DAQ установлено в индекс 4.
  • Siemens: Добавлено и проверено собственную реализацию ISO-TCP, значительным образом благодаря запросу Proviron Holding NV. Добавлено таймаут восстановления. Выполнено значительный пересмотр исходного кода на предмет захвата ресурсов, сообщений про ошибки и другого.

Transport

  • FIX:{Sockets,Serial,SSL}: Resource of output transport lock into messIO() fixed, by no real a lock hold. Polling mode of the input protocol support is implemented. No request mode support is added and all modules adapted to it, in way of time argument less to zero set into the {TrOut}.messIO() function.
  • Serial: Disconnect (transport stop) from output port added on read <= 0, which points to the device lost at all.

Протокол

  • UserProtocol: Расширено входные запросы попыткой включения, значительным образом для обеспечения использования статических функций в процедурах протокола.

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

  • FIX:UI.{Vision,WebVision}: Исправлено падение во время загрузки данных тренда в случае отсутствия значений (time = 0).
  • QTCfg: Прогресбар занятости адаптировано на предмет первичной установки диапазона и его обновления на предмет максимума к текущему.
  • Vision: Адаптировано для сборки с libphonon4qt5 и Qt5. Разрешено использование устаревших функций Phonon и Qt5.