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.