Загальні принципи розроблення АРМ оператора на базі SCADA/HMI
1. Людино-машинні інтерфейси та SCADA
Загальні принципи
розроблення АРМ
оператора на базі
SCADA/HMI
автор і лектор: Олександр Пупена (pupena_san@ukr.net)
зворотній зв’язок по курсу: Інтернет-форум АСУ в Україні (www.asu.in.ua)
20.09.2020 1
3. Про життєвий цикл
20.09.2020 pupena_san@ukr.net 3
Життєвий цикл (ЖЦ, life cycle) – це розвиток системи, продукції, послуги,
проекту або іншої, створюваної людиною сутності від задумки до списання
(Відповідно до ISO/IEC/IEEE 15288:2015).
Стадія – певна закінчена частина роботи в ЖЦ:
• на виході артефакти – документи, програми, компоненти …
• перехід на іншу стадію – рішення узгоджується
• стадії відрізняються характером робіт (наприклад робота над проектною
документацією, монтажні роботи)
• стадійність залежить від організації, об'єкту …
Типова стадійність:
• задум
• проектування
• розроблення
• введення в дію
• експлуатація
• утилізація
4. Життєвий цикл систем SCADA/HMI
20.09.2020 pupena_san@ukr.net 4
• SCADA/HMI є частиною АСКТП -> їх ЖЦ є частиною ЖЦ всіє системи, але:
1. є певні правила й стандарти саме для SCADA/HMI
2. розробниками можуть бути окремі організації
• тому ЖЦ для SCADA/HMI можуть розглядатися окремо
Стадії SCADA/HMI:
• задум: обстеження об'єкту, технічні вимоги, технічне завдання
• проектування: розробка рішень і документів
• розроблення (реалізація НЕ на об'єкті):
• розроблення SCADA/HMI;
• налагодження;
• введення в дію на об'єкті:
• внесення змін;
• налагодження на ПК розробника;
• введення в дію на цільовій системі
5. Інженерна станція
20.09.2020 pupena_san@ukr.net 5
Скомпі-
льований
проект
Вихідний
проект
створення,
редагування
компілювання
виконання
середовище
розроблення
середовище
виконання
інструменти
розробника
6. Інженерна станція <-> цільова система
20.09.2020 pupena_san@ukr.net 6
інженерна станція цільові станції (АРМ)
розгортання (Deploy)
керування, контроль …
9. База даних реального часу SCADA-системи
20.09.2020 pupena_san@ukr.net 9
база даних реального часу – сукупність змінних процесу, на базі значень
яких функціонують інші підсистеми
• змінні = теги (Tag)
• значення постійно
оновлюються
• дані беруться з джерел,
віддаються/змінюються усім
споживачам (клієнтам)
10. Змінні, Теги (Tag)
20.09.2020 pupena_san@ukr.net 10
Для тегу вказується:
• унікальне ім’я,
• тип,
• джерело даних,
• періодичність оновлення (зчитування),
• межі зміни
• та інші настройки.
Джерело даних для тегів:
• зовнішні пристрої (наприклад контролери),
такі теги називаються зовнішніми, або
тегами вводу/виводу;
• системна інформація (наприклад, плинна
дата та час, або ім’я оператора, що ввійшов
в систему);
• внутрішня або дискова пам’ять, без
прив’язки до будь-якого обладнання
(контролера), тобто змінюється тільки
самою SCADA.
11. Інші підсистеми
20.09.2020 pupena_san@ukr.net 11
• підсистема вводу/виводу
• підсистема ЛМІ
• підсистема трендів (трендова)
• підсистема тривог (тривогова) та подій
(подієва)
• підсистема звітів
• підсистема планування
• підсистема керування доступом
• підсистема керування рецептами
• …
12. Роботи по проекту SCADA/HMI
20.09.2020 pupena_san@ukr.net 12
у трьох площинах:
• конфігурування проектних даних,
• створення графічної частини проекту (HMI)
• написання невеликих програм (скриптів), якщо такі
потребуються.
14. Проект середовища розроблення – база
даних
20.09.2020 pupena_san@ukr.net 14
Citect – папка з файлами DBF + інші
zenon – БД SQL + файли
15. Можливості середовищ розроблення
20.09.2020 pupena_san@ukr.net 15
• створення, редагування та видалення проектів
• декілька проектів в одному середовищі одночасно
• створення/відновлення резервної копії
• одночасна робота з проектом з декількох робочих місць
• імпорт/експорт проекту/частини в/з інші проекти
• імпорт/експорт проектних даних з/в інших систем
• наприклад CSV, XML, Excel, тощо
• автоматизація роботи з проектом через вбудовані мови та середовища або
через спеціалізований програмний інтерфейс
• засоби налагодження
• засоби завантаження проекту на цільовий засіб із середовищем виконання;
• засоби кіберзахисту (доступ до проекту, шифрування даних, тощо)
• засоби керування версіями
• інші
17. 20.09.2020 17
Можливості редакторів
• використання фільтрів у табличних редакторах (відображаються записи
по фільтру)
• одночасне редагування декількох записів, що виділені разом
• підсвічування різних значень у виділених разом записах
• …
18. 20.09.2020 18
Середовища Citect SCADA
• середовище розроблення
• Citect Studio – логічної частини проекту
• Graphics Builder – графічних сторінок, бібліотечних елементів
• Cicode Editor – редактор файлів мов Cicode та VBA
• Computer Setup Editor – редактор файлу з параметрами citect.ini
• Equipment Editor – редактор устатковання
• MASTER.DBF – БД з посиланням на проекти в редакторі
• середовище виконання:
• Citect.exe
• Runtime Manger
19. 20.09.2020 19
Citect SCADA параметри
• параметри - поіменована змінна середовища для зміни налаштування
середовища розроблення та середовища виконання
• Project Database Parameters
• Citect.ini File Parameters
• має ім’я та значення і є частиною якоїсь секції
• наприклад, назва та розміщення проекту виконання зберігаються в
параметрі “RUN” Citect.ini
• Computer Setup Wizard –
помічник налаштування
значень параметрів
20. 20.09.2020 20
Citect SCADA: включення проектів
• як правило містить набір бібліотечних елементів
• включений проект при компіляції вважається частиною проекту
22. 20.09.2020 22
zenon: Основні компоненти середовищ
розроблення та виконання
• середовище розроблення на базі SQL
• середовище виконання
• утиліти
• Startup Tool
23. 20.09.2020 23
zenon: workspace
• Робоче середовище (Workspace) .wsp6
• може бути підключено кілька стандартних проектів, в один момент часу активним
для редагування є тільки один
• означується в zenon6.ini - Робоче середовище, активний проект при старті zenon
Editor
• глобальний проект:
бібліотека фреймів,
символів, стилів та інших
для всіх інших проектів,
відкритих у Робочому
просторі
• активація (Activate project)
• тримати проект в пам’яті
(Keep project in memory)
• установити проект як
стартовий (Set project as
start project)
• запустити проект на
виконання
• резервне копіювання
26. 20.09.2020 26
Налагодження
• перевірка правильності виконання функцій
• займає багато часу, варто автоматизувати
• робоча станція тимчасово виконує роль цільової
• для ОП, потрібен емулятор виконавчої системи
• зміна тегів через:
• переведення драйверу, або частини підсистеми вводу/виводу в
режим, який дозволяє відключитися від джерела даних для
можливості їх зміни з HMI;
• набір засобів для контролю стану та зміни значення тегів;
• на певних етапах сумісно з ПЛК
• для налагодження слід розробляти окремі сторінки, наприклад
сторінки з тегами у системі
• засоби діагностики, системні журнали
27. 20.09.2020 27
Citect: Виконання та налагодження
• компілювання
• проект робиться як стартовий
• запуск на виконання
• перевірка роботи (налагодження)
• інструменти: журнали, kernel,
спеціальні сторінки та функції
28. 20.09.2020 28
Citect: зміна тегів
• шаблон DataBrowse, який виводить значення усіх тегів у вигляді таблиці
• функції TagDebug та TagDebugForm, які виводять вікна
читання/записуванняування значень тегів
• I/O Device мають властивість Memory (рос.лок "Память")
29. 20.09.2020 29
zenon: вибір версії Runtime
• компілювання (вибирається версія Runtime): часткове/повне
• вибір проекту як стартового
• запуск виконавчої системи
• налагодження
30. 20.09.2020 30
zenon: засоби налагодження
• файли журналів, в які записуються повідомлення та помилки
• діагностична утиліта "Diagnosis Viewer"
• системні змінні, які доступні через драйвер введення/виведення SYSDRV
функції zenon, зокрема Application (див. рис. 2.17);
• спеціальні типи екранів, наприклад Varable Diagnostic.
• функція "Reload project
online«
• тип екрана "Varable
Diagnostic", за допомогою
якого можна передивитися
стан змінних та змінити їх.
• драйвери zenon
підтримують режим
відключення від джерела
даних та імітації
• змінні підтримують режим
використання
альтернативного значення.
32. 20.09.2020 32
Введення в дію: ручна передача файлів
• після налагодження проект необхідно завантажити (розгорнути) і
перезапустити на цільовому пристрої; різні способи:
• передача файлів середовища виконання через знімний носій
• не зручний,
• потребує розуміння файлової структури середовища
виконання
• небезпечний, зараження цільової системи вірусом або
проникнення туди зловмисного ПЗ
• перезапуск середовища виконання вручну
• на місці знаходження цільового пристрою повинен бути
компетентний спеціаліст (наприклад співробітник КВПіА)
• може потребувати від кількох хвилин до кількох десятків
хвилин
• складний для кількох робочих місць або/та серверів SCADA
• передача файлів через відкриті папки цільової системи або
файлових серверів у мережі
• більш безпечний і зручніший
• потребує ручного перезапуску системи за місцем
• складний для кількох робочих місць або/та серверів SCADA.
33. 20.09.2020 33
Введення в дію: засоби передачі та
перезапуску
Сучасні пакети SCADA/HMI надають механізми:
• підключення до цільової системи через мережу, розгортання та
перезапуску
• контроль версій,
• захист від несанкціонованого доступу та шифрування каналів передачі
34. 20.09.2020 34
Введення в дію
• розробник проекту повинен проробити механізми та способи
розгортання на цільовій системі враховуючи можливості, питання
безпеки та зручності
• відбувається на стадії пуско-налагодження
• при зміні на стадії експлуатації також необхідно проводити процедуру
розгортання та перезапуску
35. 20.09.2020 35
Введення в дію: віддалене підключення VPN
• VPN-тунелі в Інтернет:
• зручність і швидкість реакції на необхідні зміни в проекті
• при неправильній організації зв’язку і невиконанні правил це
може привести до небезпечних ситуацій.
середовище
виконання
(АРМ оператору)
середовище розробки
(інженерна станція розробника)
VPN
Internet
36. 20.09.2020 36
Введення в дію: віддалене підключення до
сервісної інженерної станції
• організація використання сервісної інженерної станції за місцем з
віддаленим підключенням користувача:
• на об’єкті передбачено наявність сервісної інженерної станції, яка
підключається за необхідністю
• підключення до цільового пристрою SCADA/HMI може відбуватися
як по мережі Ethernet, так і через інші канали зв’язку
• інженер-розробник заходить на інженерну станцію через сервіси
віддаленого робочого столу, типу RDP, VNC, TeamViewer або
аналогічні, використовуючи Інтернет
• ряд з цих сервісів потребують явно виділеної IP-адреси, деякі
можуть бути платними.
середовище
розробки
(сервісна інженерна станція)
середовище
виконання
(АРМ оператору)
середовище розробки
(інженерна станція розробника)
локальна
мережа
Internet
37. 20.09.2020 37
Citect: передача файлів на цільову систему
• ручне копіювання файлів в директорію запуску
• через створення резервної копії (Backup) та її відновлення (Restore
Projects)
• використовуючи автоматичну передачу файлів з інженерної станції на
сервер проектів, налаштувавши параметри [CtEdit]Run та [CtEdit]Copy
• використовуючи функціональність системи розгортання Deployment
(рекомендований варіант)
• зробивши директорію середовища виконання доступною з мережі та
скопіювавши туди файли (не рекомендується для серверних
компонентів середовища виконання Citect)
39. zenon: передача файлів на цільову систему
• ручним копіюванням файлів у директорію запуску через знімний носій
• зробивши директорію середовища виконання доступною з мережі та
скопіювавши туди файли
• використовуючи функціональність системи віддаленої передачі на цільову
систему