Сторінка містить інформацію, яка дозволяє отримати загальне уявлення про функції виконувані OpenSCADA на цей час. Функції згуртовано за сферами застосування. Для отримання загальної картини також включено заплановані функції або функції, що наразі реалізуються. Сторінка також містить вимоги OpenSCADA для її виконання та складання.
1 Сфери застосування OpenSCADA
Поділ на сфери застосування виконано для спрощення сприйняття функціональних можливостей програми у світлі традиційної області проєкту OpenSCADA — автоматизація технологічних процесів. Хоча можлива як змішана, так і більш спеціалізована конфігурація програми для роботи з даними у реальному часі, наприклад, у сферах: ERP, Білінг, Розумний будинок та інше.
1.1 Сервер SCADA системи
Середовище Візуалізації та Управління (СВУ) кінцевого користувача | |
---|---|
Віддалений сервер візуалізації на основі рушія візуалізації та керування СВУ — локальний запуск модуля візуалізації UI.Vision, підключеного до цього серверу візуалізації. | Модуль рушія СВУ VCAEngine |
Віддалений WEB інтерфейс | WEB-браузер Модуль візуалізатору WebVision Модуль рушія СВУ VCAEngine |
Прості віддалені Web-інтерфейси користувача | WEB-браузер Модуль WebUser |
Надання даних системам вищого рівня | |
За інтерфейсами | |
Послідовний інтерфейс: RS232, RS485, Modem, ... | Модуль Serial |
Сокети IP-мереж та протоколи мережевого рівня TCP, UDP та Unix | Модуль Sockets |
Шар безпечних сокетів (SSL) | Модуль SSL |
За протоколами | |
Власний протокол OpenSCADA | Модуль SelfSystem |
Протоколи сімейства ModBus: TCP, RTU та ASCII | Модуль ModBus |
Протокол "OPC-UA" | Модуль OPC-UA |
Прості спеціалізовані протоколи, розроблені за посередництвом користувацького протоколу | Модуль UserProtocol |
Через СУБД | |
MySQL | Модуль MySQL |
PostgreSQL | Модуль PostgreSQL |
FireBird | Модуль FireBird |
DBGate — БД іншої OpenSCADA станції | Модуль DBGate |
ODBC — СУБД, для якої є ODBC драйвер | Модуль ODBC (не завершено) |
Конфігурація та розробка (програміст SCADA та адміністратор) | |
Віддалено, через WEB-інтерфейс | Web-браузер Модуль WebCfgD або WebCfg |
Віддалено, зі станції конфігурації за інтерфейсом керування OpenSCADA | Модуль SelfSystem |
Мови програмування та обчислень користувача | |
JavaLikeCalc — мова високого рівня подібна до JavaScript та Java | Модуль JavaLikeCalc |
Блокові схеми | Модуль BlockCalc |
Зберігання даних станції | |
Конфігураційний файл | Ядро OpenSCADA |
БД | |
SQLite | Модуль SQLite |
MySQL | Модуль MySQL |
PostgreSQL | Модуль PostgreSQL |
FireBird | Модуль FireBird |
DBGate — БД іншої OpenSCADA станції | Модуль DBGate |
ODBC — СУБД, для якої є ODBC драйвер | Модуль ODBC (не завершено) |
DBF | Модуль DBF |
Директорії через LDAP | Модуль LDAP |
Збір та контроль за внутрішніми та зовнішніми даними (DAQ) | |
Логічні та фізичні джерела різноманітного типу, які мають утиліти доступу до даних або досяжні посередництвом простих спеціалізованих мережевих протоколів. Здійснюється шляхом написання процедури користувацького протоколу отримання даних, на мові користувацького програмування. Реалізація найбільш відомих протоколів як протокол користувача:
|
Модуль мови користувацького програмування JavaLikeCalc Модуль LogicLev Модуль користувацького протоколу UserProtocol |
Формування логічних джерел та похідних структур параметрів, базуючись на шаблонах параметрів та даних інших джерел | Модуль LogicLev |
Формування логічних джерел за допомогою блокових схем | Модуль BlockCalc |
Зовнішні сервери та ПЛК побудовані на OpenSCADA, можливо для дублювання | Модуль DAQGate |
Інформація про програмно-апаратну платформу | Модуль System |
Промислові контролери та інші пристрої за протоколом ModBus | Модуль ModBus |
Промислові контролери за протоколом DCON | Модуль DCON |
Промислові контролери та інші пристрої за протокол OPC-UA | Модуль OPC-UA |
Промислові контролери та інші пристрої за протокол MMS(IEC-9506) | Модуль MMS |
Мережеві пристрої або інші джерела за протоколом SNMP (Простий Протокол Керування Мережею) | Модуль SNMP |
Промислове обладнання фірми ICP DAS, модулі серії: I7k, I8k, I87K та на шині ISA | Модуль ICP_DAS |
Промислові контролери фірми Siemens серії S7 | Модуль Siemens |
DAQ-плати на шинах ISA, PCI, PCMCIA та USB | Бібліотека Comedi Модуль Comedi |
Вхідні канали звукових контролерів | Модуль SoundCard |
Автоматика птахівництва фірми "Big Dutchman" | Модуль BFN |
Архівація-Історія | |
Архіви повідомлень за категоріями та рівнями | |
Файли у форматі XML або плаского тексту та упаковкою застарілих архівів | Модуль FSArch |
До таблиць архівних БД OpenSCADA | Модуль DBArch |
На інший, заснований на OpenSCADA, сервер архівації, можливо виділений | заплановано |
Архіви значень зібраних даних | |
Буфера у пам'яті визначеної довжини | Ядро OpenSCADA |
Файли з подвійною упаковкою: послідовною та стандартним архіватором gzip | Модуль FSArch |
До таблиць архівних БД OpenSCADA | Модуль DBArch |
На інший, заснований на OpenSCADA, сервер архівації, можливо виділений | заплановано |
1.2 Станція оператора технологічного процесу, пульт диспетчера, панель моніторингу та інше
Середовище Візуалізації та Управління (СВУ) кінцевого користувача | |
---|---|
Локальний (швидкий) інтерфейс, заснований на бібліотеці Qt, з можливістю візуалізації віддаленого рушія СВУ — серверу візуалізації | Модуль візуалізатору Vision Модуль рушія СВУ VCAEngine |
Віддалений WEB інтерфейс | WEB-браузер Модуль візуалізатору WebVision Модуль рушія СВУ VCAEngine |
Прості віддалені Web-інтерфейси користувача | WEB-браузер Модуль WebUser |
Конфігурація та розробка (програміст SCADA та адміністратор) | |
Локально, через Qt-інтерфейс | Модуль QTCfg Модуль Vision |
Віддалено, через WEB-інтерфейс | Web-браузер Модуль WebCfgD або WebCfg |
Віддалено, зі станції конфігурації за інтерфейсом керування OpenSCADA | Модуль SelfSystem |
Мови програмування та обчислень користувача | |
JavaLikeCalc — мова високого рівня подібна до JavaScript та Java | Модуль JavaLikeCalc |
Блокові схеми | Модуль BlockCalc |
Зберігання даних станції | |
Конфігураційний файл | Ядро OpenSCADA |
БД | |
SQLite | Модуль SQLite |
MySQL | Модуль MySQL |
PostgreSQL | Модуль PostgreSQL |
FireBird | Модуль FireBird |
DBGate — БД іншої OpenSCADA станції | Модуль DBGate |
ODBC — СУБД, для якої є ODBC драйвер | Модуль ODBC (не завершено) |
DBF | Модуль DBF |
Директорії через LDAP | Модуль LDAP |
Збір та контроль за внутрішніми та зовнішніми даними (DAQ) | |
Зовнішні сервери та ПЛК побудовані на OpenSCADA, можливо для дублювання | Модуль DAQGate |
Промислові контролери та інші пристрої за протокол OPC-UA | Модуль OPC-UA |
Мережеві пристрої або інші джерела за протоколом SNMP (Простий Протокол Керування Мережею) | Модуль SNMP |
Архівація-Історія | |
Архіви повідомлень за категоріями та рівнями | |
Файли у форматі XML або плаского тексту та упаковкою застарілих архівів | Модуль FSArch |
До таблиць архівних БД OpenSCADA | Модуль DBArch |
На інший, заснований на OpenSCADA, сервер архівації, можливо виділений | заплановано |
Архіви значень зібраних даних | |
Буфера у пам'яті визначеної довжини | Ядро OpenSCADA |
Файли з подвійною упаковкою: послідовною та стандартним архіватором gzip | Модуль FSArch |
До таблиць архівних БД OpenSCADA | Модуль DBArch |
На інший, заснований на OpenSCADA, сервер архівації, можливо виділений | заплановано |
1.3 Середовище виконання контролерів (ПЛК)
Надання даних системам вищого рівня | |
---|---|
За інтерфейсами | |
Послідовний інтерфейс: RS232, RS485, Modem, ... | Модуль Serial |
Сокети IP-мереж та протоколи мережевого рівня TCP, UDP та Unix | Модуль Sockets |
Шар безпечних сокетів (SSL) | Модуль SSL |
За протоколами | |
Власний протокол OpenSCADA | Модуль SelfSystem |
Протоколи сімейства ModBus: TCP, RTU та ASCII | Модуль ModBus |
Протокол "OPC-UA" | Модуль OPC-UA |
Прості спеціалізовані протоколи, розроблені за посередництвом користувацького протоколу | Модуль UserProtocol |
Через СУБД | |
MySQL | Модуль MySQL |
PostgreSQL | Модуль PostgreSQL |
FireBird | Модуль FireBird |
DBGate — БД іншої OpenSCADA станції | Модуль DBGate |
ODBC — СУБД, для якої є ODBC драйвер | Модуль ODBC (не завершено) |
Конфігурація та розробка (програміст SCADA та адміністратор) | |
Віддалено, через WEB-інтерфейс | Web-браузер Модуль WebCfgD або WebCfg |
Віддалено, зі станції конфігурації за інтерфейсом керування OpenSCADA | Модуль SelfSystem |
Мови програмування та обчислень користувача | |
JavaLikeCalc — мова високого рівня подібна до JavaScript та Java | Модуль JavaLikeCalc |
Блокові схеми | Модуль BlockCalc |
Зберігання даних станції | |
Конфігураційний файл | Ядро OpenSCADA |
БД | |
SQLite | Модуль SQLite |
MySQL | Модуль MySQL |
PostgreSQL | Модуль PostgreSQL |
FireBird | Модуль FireBird |
DBGate — БД іншої OpenSCADA станції | Модуль DBGate |
ODBC — СУБД, для якої є ODBC драйвер | Модуль ODBC (не завершено) |
DBF | Модуль DBF |
Директорії через LDAP | Модуль LDAP |
Збір та контроль за внутрішніми та зовнішніми даними (DAQ) | |
Логічні та фізичні джерела різноманітного типу, які мають утиліти доступу до даних або досяжні посередництвом простих спеціалізованих мережевих протоколів. Здійснюється шляхом написання процедури користувацького протоколу отримання даних, на мові користувацького програмування. Реалізація найбільш відомих протоколів як протокол користувача:
|
Модуль мови користувацького програмування JavaLikeCalc Модуль LogicLev Модуль користувацького протоколу UserProtocol |
Формування логічних джерел та похідних структур параметрів, базуючись на шаблонах параметрів та даних інших джерел | Модуль LogicLev |
Формування логічних джерел за допомогою блокових схем | Модуль BlockCalc |
Зовнішні сервери та ПЛК побудовані на OpenSCADA, можливо для дублювання | Модуль DAQGate |
Інформація про програмно-апаратну платформу | Модуль System |
Промислові контролери та інші пристрої за протоколом ModBus | Модуль ModBus |
Промислові контролери за протоколом DCON | Модуль DCON |
Промислові контролери та інші пристрої за протокол OPC-UA | Модуль OPC-UA |
Промислові контролери та інші пристрої за протокол MMS(IEC-9506) | Модуль MMS |
Мережеві пристрої або інші джерела за протоколом SNMP (Простий Протокол Керування Мережею) | Модуль SNMP |
Промислове обладнання фірми ICP DAS, модулі серії: I7k, I8k, I87K та на шині ISA | Модуль ICP_DAS |
Промислові контролери фірми Siemens серії S7 | Модуль Siemens |
DAQ-плати Diamond Systems | Модуль DiamondBoards |
DAQ-плати на шинах ISA, PCI, PCMCIA та USB | Бібліотека Comedi Модуль Comedi |
Вхідні канали звукових контролерів | Модуль SoundCard |
Автоматика птахівництва фірми "Big Dutchman" | Модуль BFN |
Дискретні входи/виходи загального призначення різних одноплатних комп'ютерів | Модуль GPIO |
Архівація-Історія | |
Архіви повідомлень за категоріями та рівнями | |
Файли у форматі XML або плаского тексту та упаковкою застарілих архівів | Модуль FSArch |
До таблиць архівних БД OpenSCADA | Модуль DBArch |
На інший, заснований на OpenSCADA, сервер архівації, можливо виділений | заплановано |
Архіви значень зібраних даних | |
Буфера у пам'яті визначеної довжини | Ядро OpenSCADA |
Файли з подвійною упаковкою: послідовною та стандартним архіватором gzip | Модуль FSArch |
До таблиць архівних БД OpenSCADA | Модуль DBArch |
На інший, заснований на OpenSCADA, сервер архівації, можливо виділений | заплановано |
1.4 Універсальний OPC-UA сервер
Завдяки реалізації протоколу OPC-UA у режимі агенту, OpenSCADA може надавати розповсюджену функцію OPC-сервера на клієнтські протоколи, які підтримуються і прямо реалізуються у OpenSCADA. Ця функція широко використовується на платформі MS Windows®, а багато SCADA-систем на ній працюють виключно з OPC—серверами, як джерелами даних. Таким чином, OpenSCADA може виступати універсальним OPC-сервером на платформі Linux (рис.2).
У планах. З адаптацією OpenSCADA до роботи на платформі MS Windows® та реалізацією роботи з OPC-DA за посередництвом системного DCOM, з'явиться можливість застосування OpenSCADA у ролі шлюзу OPC-DA -> OPC-UA, відтак і доступної інтеграції застарілих систем у нові або акумулюючі системи.
Збір та контроль за внутрішніми та зовнішніми даними (DAQ) | |
---|---|
Логічні та фізичні джерела різноманітного типу, які мають утиліти доступу до даних або досяжні посередництвом простих спеціалізованих мережевих протоколів. Здійснюється шляхом написання процедури користувацького протоколу отримання даних, на мові користувацького програмування | Модуль мови користувацького програмування JavaLikeCalc Модуль LogicLev Модуль користувацького протоколу UserProtocol |
Формування логічних джерел та похідних структур параметрів, базуючись на шаблонах параметрів та даних інших джерел | Модуль LogicLev |
Формування логічних джерел за допомогою блокових схем | Модуль BlockCalc |
Зовнішні сервери та ПЛК побудовані на OpenSCADA, можливо для дублювання | Модуль DAQGate |
Інформація про програмно-апаратну платформу | Модуль System |
Промислові контролери та інші пристрої за протоколом ModBus | Модуль ModBus |
Промислові контролери за протоколом DCON | Модуль DCON |
Промислові контролери та інші пристрої за протокол OPC-UA | Модуль OPC-UA |
Промислові контролери та інші пристрої за протокол MMS(IEC-9506) | Модуль MMS |
Мережеві пристрої або інші джерела за протоколом SNMP (Простий Протокол Керування Мережею) | Модуль SNMP |
Промислове обладнання фірми ICP DAS, модулі серії: I7k, I8k, I87K та на шині ISA | Модуль ICP_DAS |
Промислові контролери фірми Siemens серії S7 | Модуль Siemens |
DAQ-плати Diamond Systems | Модуль DiamondBoards |
DAQ-плати на шинах ISA, PCI, PCMCIA та USB | Бібліотека Comedi Модуль Comedi |
Вхідні канали звукових контролерів | Модуль SoundCard |
Автоматика птахівництва фірми "Big Dutchman" | Модуль BFN |
Дискретні входи/виходи загального призначення різних одноплатних комп'ютерів | Модуль GPIO |
2 Вимоги OpenSCADA
2.1 Виконання
Апаратні вимоги OpenSCADA для її виконання у різних ролях приведено у таблиці 1. Програмні вимоги для виконання OpenSCADA та її модулів представлено у таблиці 2.
Таблиця 1. Апаратні вимоги OpenSCADA та її модулів.
Роль | Вимоги |
---|---|
Сервер SCADA |
CPU: x86 (i586 і вище), x86_64, ARM або MIPS, частотою більше 500 МГц |
Станція оператора технологічного процесу, пульт диспетчера, панель моніторингу та інше |
CPU: x86 (i586 і вище), x86_64 або ARM, частотою більше 1 ГГц |
Середовище виконання контролерів (ПЛК) |
CPU: x86 (i586 і вище), x86_64, ARM або MIPS, частотою більше 133 МГц |
Таблиця 2. Програмні вимоги виконання OpenSCADA та її модулів.
Компонент | Опис |
---|---|
Залежності ядра OpenSCADA | |
ОС Linux | Дистрибутив операційної системи Linux (Debian, Ubuntu, CentOs, SuSELinux, ...) |
"Стандартні бібліотеки" | Стандартний набір бібліотек: GLibC (>= 2.3) або uCLibC (>= 0.9.32) та libstdc++ (>= 3.3). За звичай вже наявні у встановленому дистрибутиві. Особиста вимога це використання "рідної" бібліотеки потоків NPTL, вже використовується у всіх сучасних дистрибутивах ОС Linux |
zlib | Бібліотека компресії. |
libpcre | Бібліотека роботи з регулярними виразами, сумісна з Perl. |
libgd (опц: --enable-LibGD) | Графічна бібліотека GD версії 2, бажано без підтримки XPM (виключена залежність на бібліотеку X-сервера) та з підтримкою FontConfig. |
Модуль DB.SQLite | |
libsqlite3 | Бібліотека доступу до вбудованої БД SQLite версії 3. |
Модуль DB.MySQL | |
libMySQL або libMariaDB | Бібліотека доступу до споріднених СУБД MySQL. |
Модуль DB.PostgreSQL | |
libpq | Бібліотека доступу до СУБД PostgreSQL версії більш за 8.3.0. |
Модуль DB.FireBird | |
firebird | СУБД FireBird версії 2 або 3. Часто відсутня у дистрибутивах Linux та потребує індивідуального завантаження з офіційного сайту (http://www.firebirdsql.org)! |
Модуль DB.ODBC | |
iodbc | iODBC бібліотека керування драйверами. |
Модуль DB.LDAP | |
libldap | OpenLDAP бібліотека. |
Модуль DAQ.System | |
libsensors (опц: авт.) | Бібліотека сенсорів апаратури версії 2 або 3. |
Модуль DAQ.OPC_UA | |
libssl | Бібліотека шифрування OpenSSL. |
Модуль DAQ.SNMP | |
libsnmp | Бібліотека доступу до пристроїв мережі за протоколом SNMP. |
Модуль DAQ.Comedi | |
libcomedi | Бібліотека реалізації підтримки DAQ-плат різних виробників на шинах ISA, PCI, PCMCIA та USB. |
Модуль DAQ.SoundCard | |
libportaudio | Бібліотека багатоплатформеного доступу до звукових контролерів версії 19 та вище (не 18). |
Модуль Transport.SSL | |
libssl | Бібліотека шифрування OpenSSL. |
Модуль: UI.QTStarter | |
libQt4 (libQtGui) або libQt5 (libQt5Widgets,libQt5PrintSupport) або libQt6 (libQt6Widgets,libQt6PrintSupport) |
Бібліотеки побудови графічного інтерфейсу користувача Qt версії 4.3 та вище або 5.1 та вище або 6.1 та вище. |
libQtSensors або libQt5Sensors або libQt6Sensors (опц: авт.) |
Бібліотека Qt сенсорів. |
Модуль: UI.QTCfg | |
libQt4 (libQtGui) або libQt5 (libQt5Widgets,libQt5PrintSupport) або libQt6 (libQt6Widgets,libQt6PrintSupport) |
Бібліотеки побудови графічного інтерфейсу користувача Qt версії 4.3 та вище або 5.1 та вище або 6.1 та вище. |
Модуль UI.Vision | |
libQt4 (libQtGui) або libQt5 (libQt5Widgets,libQt5PrintSupport) або libQt6 (libQt6Widgets,libQt6PrintSupport) |
Бібліотеки побудови графічного інтерфейсу користувача Qt версії 4.3 та вище або 5.1 та вище або 6.1 та вище. |
libQtWebKit (Qt4) або qtwebengine5, libqt5webkit5 (Qt5) або qtwebengine6 (Qt6) (опц: авт.) |
Бібліотека рушія Web-рендерінгу. |
libphonon (Qt4) або qtmultimedia5, libphonon4qt5 (Qt5) або qtmultimedia6 (Qt6) (опц: авт.) |
Бібліотека відтворення повноформатного відео та аудіо. |
libfftw3 (опц: авт.) | Бібліотека швидкого розкладу сигналу у ряд Фурье. |
Модуль UI.WebCfgD | |
libgd (опц: --enable-LibGD) | Графічна бібліотека GD версії 2, бажано без підтримки XPM (виключена залежність на бібліотеку X-сервера) та з підтримкою FontConfig. |
Модуль UI.WebVision | |
libgd | Графічна бібліотека GD версії 2, бажано без підтримки XPM (виключена залежність на бібліотеку X-сервера) та з підтримкою FontConfig. |
libfftw3 (опц: авт.) | Бібліотека швидкого розкладу сигналу у ряд Фурье. |
Модуль Special.FLibSYS | |
libssl (опц: авт.) | Бібліотека шифрування OpenSSL. |
libfftw3 (опц: авт.) | Бібліотека швидкого розкладу сигналу у ряд Фурье. |
* "опц: авт." — передбачає вимкнення використання бібліотеки під час збірки у випадку її відсутності.
2.2 Складання
Залежності OpenSCADA для складання її ядра та модулів зведено до таблиці нижче.
Таблиця 3. Залежності збірки OpenSCADA та її модулів.
Компонент | Опис |
---|---|
Загальні вимоги для збірки OpenSCADA | |
ОС Linux | Дистрибутив операційної системи Linux (Debian, Ubuntu, CentOs, SuSELinux, ...) |
g++ | Компілятор мови C++ версії 3.3 або вище з колекції компіляторів GCC, включаючи бібліотеку GLibC (>=2.3), uCLibC (>= 0.9.32) або Android BioniC. |
autotools (autoconf, automake, libtool, pkg-config) | Інструменти формування складального середовища OpenSCADA. Потрібні тільки у випадку зміни складального середовища OpenSCADA, наприклад для додання нового модуля або зміни фіксованих параметрів збірки. Automake >= 1.9. |
gettext | Група утиліт для приготування та компіляції перекладів інтерфейсу програми на різні мови у відповідності зі стандартом інтернаціоналізації I18N. |
sqlite3 | Утиліта керування файлами БД SQLite3. |
zlib (devel) | Бібліотека компресії, пакет для розробки. |
libpcre (devel) | Бібліотека роботи з регулярними виразами, сумісна з Perl, пакет для розробки. |
libgd (devel, опц: --enable-LibGD) | Графічна бібліотека GD версії 2, пакет для розробки, бажано без підтримки XPM (виключена залежність на бібліотеку X-сервера). Використовується для побудови трендів та інших зображень у форматі PNG, GIF та JPEG. |
Модуль DB.SQLite | |
libsqlite3 (devel) | Бібліотека доступу до вбудованої БД SQLite версії 3, пакет для розробки. |
Модуль DB.MySQL | |
libMySQL або libMariaDB (devel) | Бібліотека доступу до спорідненої СУБД MySQL, пакет для розробки на мові C. |
Модуль DB.PostgreSQL | |
libpq (devel) | Бібліотека доступу до СУБД PostgreSQL версії більше за 8.3.0, пакет для розробки. |
Модуль DB.FireBird | |
firebird (devel) | СУБД FireBird версії 2 або 3, пакет для розробки. Часто відсутня в дистрибутивах Linux та потребує індивідуального завантаження з офіційного сайту (http://www.firebirdsql.org)! |
Модуль DB.ODBC | |
iodbc (devel) | iODBC бібліотека контролю драйверів, пакет для розробки. |
Модуль DB.LDAP | |
libldap (devel) | OpenLDAP бібліотека, пакет для розробки. |
Модуль DAQ.JavaLikeCalc | |
bison | Програма генерації синтаксичних аналізаторів на основі граматики мови. |
Модуль DAQ.System | |
libsensors (devel, опц: авт.) | Бібліотека сенсорів апаратури версій 2 або 3, пакет для розробки. |
Модуль DAQ.OPC_UA | |
libssl (devel) | Бібліотека шифрування OpenSSL, пакет для розробки. |
Модуль DAQ.SNMP | |
libsnmp (devel) | Бібліотека доступу до даних пристроїв мережі за протоколом SNMP, пакет для розробки. |
Модуль DAQ.Comedi | |
libcomedi (devel) | Бібліотека реалізації підтримки DAQ-плат різних виробників на шинах ISA, PCI, PCMCIA та USB, пакет для розробки. |
Модуль DAQ.SoundCard | |
libportaudio (devel) | Бібліотека багатоплатформеного доступу до звукових контролерів, пакет для розробки версії 19 та вище (не 18). |
Модуль Transport.SSL | |
libssl (devel) | Бібліотека шифрування OpenSSL, пакет для розробки. |
Модуль: UI.QTStarter | |
libQt4 або libQt5 або libQt6 (devel) |
Бібліотека побудови користувацького графічного інтерфейсу Qt версії 4.3 та вище або 5.1 та вище або 6.1 та вище, пакет для розробки. |
libQtSensors або libQt5Sensors або libQt6Sensors (devel, опц: авт.) |
Бібліотека Qt сенсорів, пакет для розробки. |
Модуль: UI.QTCfg | |
libQt4 або libQt5 або libQt6 (devel) |
Бібліотека побудови користувацького графічного інтерфейсу Qt версії 4.3 та вище або 5.1 та вище або 6.1 та вище, пакет для розробки. |
Модуль UI.Vision | |
libQt4 або libQt5 або libQt6 (devel) |
Бібліотека побудови користувацького графічного інтерфейсу Qt версії 4.3 та вище або 5.1 та вище або 6.1 та вище, пакет для розробки. |
libQtWebKit (Qt4) або qtwebengine5, libqt5webkit5 (Qt5) або qtwebengine6 (Qt6) (devel, опц: авт.) |
Бібліотека рушія Web-рендерінгу, пакет для розробки. |
libphonon (Qt4) або qtmultimedia5, libphonon4qt5 (Qt5) або qtmultimedia6 (Qt6) (devel, опц: авт.) |
Бібліотека відтворення повноформатного відео та аудіо, пакет для розробки. |
libfftw3 (devel, опц: авт.) | Бібліотека швидкого розкладу сигналу у ряд Фурье, пакет для розробки. |
Модуль UI.WebCfgD | |
libgd (devel, опц: --enable-LibGD) | Графічна бібліотека GD версії 2, пакет для розробки, бажано без підтримки XPM (виключена залежність на бібліотеку X-сервера). Використовується для побудови трендів та інших зображень у форматі PNG, GIF та JPEG. |
Модуль UI.WebVision | |
libgd (devel) | Графічна бібліотека GD версії 2, пакет для розробки, бажано без підтримки XPM (виключена залежність на бібліотеку X-сервера). Використовується для побудови трендів та інших зображень у форматі PNG, GIF та JPEG. |
libfftw3 (devel, опц: авт.) | Бібліотека швидкого розкладу сигналу у ряд Фурье, пакет для розробки. |
Модуль Special.FLibSYS | |
libssl (devel, опц: авт.) | Бібліотека шифрування OpenSSL, пакет для розробки. |
libfftw3 (devel, опц: авт.) | Бібліотека швидкого розкладу сигналу у ряд Фурье, пакет для розробки. |
* "опц: авт." — передбачає вимкнення використання бібліотеки під час збірки, у випадку відсутності її.
3 Масштабованість
Загальна продуктивність прямих обчислень, обчислень у Java-подібній мові та комплексних обчислень моделей на різних апаратних та програмних платформах.
Споживання пам'яті, загальні параметри на проєкті "АГЛКС":
Рівні вимірювання | Debian 9 X86_64, МБ | Debian 9 686, МБ | Debian 8 ARMHF (ARMv7), МБ |
---|---|---|---|
2019.02.01: OpenSCADA 1+r2600 | |||
1. Виконання моделі та архівування | 96 | 71 | 64 |
2. Завантаження проєктів СВУ | 147 | 104 | 95 |
3. Запуск сеансу проєкту "АГЛКС" (як сервер візуалізації) | 152 | 108 | 97 |
3.1. Запуск сеансу проєкту "АГЛКС" з UI.Vision, та для кадру першої мнемосхеми > графіку | 168 > 175 | 121 > 126 | 106 > 109 |
3.2. Запуск сеансу проєкту "АГЛКС" з UI.WebVision, та для кадру першої мнемосхеми > графіку | 159 > 167 | 113 > 125 | 100 > 106 |
Великі та складні проєкти:
- 2019.01.12: Debian 9 686, OpenSCADA 1+r2595, Проєкт пташників з: ModBus DAQ із 38 об'єктами контролерів, з 75 складними параметрами та ~900 сигналами у кожному, сумарно це 2850 комплексних параметрів та 34200 сигналів; проєкт СВУ із 39 об'єктами сигналізації, з 19 сторінками у кожному, сумарно це 741 сторінок:
- => Оптимізовано у UI.VCAEngine через реалізацію зв'язків на сторінки, що дозволило видалити 703 сторінки, перемкнувши типові сторінки у повністю динамічний режим.
- => Розширено у UI.WebVision через підтримку роботи у оперативному режимі, обмеживши кеш сторінок.
- Виконання DAQ, обробка та архівація: 102 МБ
- Завантаження проєктів СВУ: 271 МБ, після оптимізації: 148 МБ
- Запуск сеансу проєкту (як сервер візуалізації): 437 МБ, після оптимізації: 174 МБ
- Запуск сеансу проєкту з UI.WebVision: 460 МБ (один сеанс), після оптимізації: 198 МБ
3.1 Тести
Компонентів OpenSCADA:
- Ядро:
- БД: DBGate, SQLite, MySQL, PostgreSQL, FireBird
- DAQ: Обчислювач на мові подібній до Java (JavaLikeCalc)
- Архіви-Історія: FSArch
- UI: Vision, WebVision
Приймальні тести релізів OpenSCADA (LTS):