Матеріали курсу Людино-машинні інтерфейси
Людино-машинні інтерфейси Автор і лектор: Олександр Пупена доц. кафедри АКСТУ НУХТ
Тема. Основи розробки людино-машинного інтерфейсу (графічної підсистеми) в SCADA/HMI.
Тривалість: 8 акад. годин (4 пари).
Мета: ознайомлення з основними можливостями графічної підсистеми та опанування роботи з графічним редактором Citect.
Завдання для виконання роботи
Цілі.
Опанувати основні діяльності зі створення/редагування сторінок, символів та анімації у Citect.
Навчитись користуватися Cicode виразами, командами та вбудованими функціями.
Лабораторна установка
Апаратне забезпечення: ПК.
Програмне забезпечення: UNITY PRO V>=7.0 або Control Expert, Citect 2016 (або новіше). Увага! Графічна система, починаючи з Citect 2020 повністю змінена. Тому даний лабораторний практикум не призначений для версій Citect, новіших за Citect 2018R2.
Примітки щодо відео: представлені в роботі відеоматеріали є студентською інтерпретацією лабораторної роботи, носять ознайомчий характер і можуть містити помилки!
Ознайомтеся з усіма додатками до лабораторної роботи:
STU
, варто відкрити його а не файл експорту.Запустіть середовище розробки Citect.
Створіть нову сторінку відповідно до налаштувань:
шаблон: “Normal”
“разрешение”: за замовченням
рис.3.1. Вибір кольору Color80
інші налаштування вказані в таблиці 3.1.
Загальна мнемосхема
.Base
.Normal
того ж стилю, розширення і кольору фону, а назви, заголовки і описи візьміть з таблиці 3.1:Таб.3.1. Налаштування основних сторінок проекту.
Назва сторінки | Заголовок вікна | Опис (не обов’язково) |
---|---|---|
Tanks | Установка приготування продукту | мнемосхема налаштування установки приготування продукту |
Heat | Установка підігріву | мнемосхема налаштування установки підігріву |
рис.3.2. Відкриття папки проекту з редактору проекту
Tanks
Tanks
імпортуйте раніше скопійований у вашу папку проекту рисунок Tanks.bmp
(“Файл”->”Импорт”).рис.3.3. Розміщення відмасштабованого рисунку на екрані
Heat
рис.3.4. Відображення меню Page List
Tanks
та Heat
, перевірте чи відображаються на них імпортовані рисункиТепер дані рисунки є підкладкою, яка може використовуватися як канва для рисування поверху. Згодом цю підкладку можна буде видалити.
Tank_tall_large
з бібліотеки Tanks_cyl_conb_30
для танків Т1 та Т2.Tank
з бібліотеки Tanks_cyl_conb_30
для дозаторів D1 та D2.рис.3.5. Вигляд сторінки “Tanks” після вставлення символів для ємностей
Зауважте! Використання об’ємних рисунків без потреби не рекомендується, так як це створює додаткове непотрібне навантаження на зовнішній вигляд, відволікає увагу і може погіршити ситуаційне сприйняття. У даній роботі показаний приклад використання готових бібліотечних символів.
Прочитайте пункт “Д3.1.4. Властивості та анімація графічних елементів” додатку 3.1
Використовуючи прямокутники нарисуйте теплову камеру для танків. Зробіть камери заповнені кольором “Color17” та розмістіть за танками використовуючи команди меню “Отодвинуть назад” (рис.3.6)
рис.3.6. Команди для взаємного розміщення елементів по осі “Z”
рис.3.7. Вигляд теплових сорочок
Зауважте! Використання об’ємних рисунків у тому числі трубопроводів та різноманіття кольорів не рекомендується, так як це створює додаткове непотрібне навантаження на зовнішній вигляд, відволікає увагу і може погіршити ситуаційне сприйняття. У даній роботі показаний приклад використання готових бібліотечних символів.
Результат має бути схожим на рис.3.8.
Рис.3.8 Фрагмент сторінки “Tanks” після створення векторного рисунку та видалення підкладки
Прочитайте пункт “Д3.1.5 Обробка подій кліку лівої кнопки миші” додатку 3.1
Використовуючи елементи “кнопка” реалізуйте:
кнопку “Пуск”, яка буде інвертувати змінну T_SB1
при натисканні
кнопку “Ініціалізація кроків”, яка буде виставляти в “1” змінну InitSFC
Рис.3.9 Приклад налаштування дії натискання кнопки “Пуск”
Використовуючи елемент “Прямокутник” зробіть графічний індикатор роботи установки, який буде:
заповнений темно-сірим кольором, коли T_SB1=0
;
заповнений світло-сирим кольором, коли T_SB1=1
;
Рис.3.10. Налаштування анімації кольору по змінній
Прочитайте пункт “Д3.1.8 Налаштування текстового відображення” додатку 3.1
Використайте його для відображення стану роботи програми:
відображається текст “Зупинено”, коли T_SB1=0
;
відображається текст “Виконується”, коли T_SB1=1
;
Не зупиняйте виконавчу систему перед перевіркою. Достатньо повторно відкрити змінену сторінку! Надалі після кожного пункту намагайтеся перевіряти працездатність змін!
Рис.3.11. Налаштування анімації тексту по змінній
Прочитайте пункт “Д3.1.10 Анімація заповнення” додатку 3.1
Використовуючи елемент “Прямокутник” та анімацію заповнення реалізуйте стовпчикову діаграму для рівнів в танках Т1 та Т2:
тег T1_LT1
для танку Т1, світлосірий колір заливки, темно-сірий фон;
тег T2_LT1
для танку Т2, світлосірий колір заливки, темно-сірий фон;
Рис.3.12. Налаштування анімації заповнення
Рис.3.13. Налаштування анімації числового відображення
Використовуючи елемент “Еліпс” зробіть сигналізатори нижніх (LSL) та верхніх (LSH) рівнів дозаторів:
світлосірий в стані “1”.
Рис.3.14. Відображення стану індикаторів в режимі виконання
T1_TV1
та T2_TV1
Рис.3.15. Відображення стану клапанів пари в режимі виконання
T1_LVS2
, T2_LVS2
T1_LVS1
, T2_LVS1
D1_LVS1
, D2_LVS1
D1_LVS2
, D2_LVS2
Рис.3.16. Відображення стану клапанів пари в режимі виконання
Зауважте! Використання зеленого кольору, як стану “ВКЛ” не рекомендується сучасними стандартами! У даній роботі показаний приклад використання готових бібліотечних символів.
Реалізуйте панель зміни рецепту для танку 1 (див. рис. 1 Завдання), використовуючи вже знайомі вам анімаційні елементи та анімацію введення значення з клавіатури:
можна скористатися меню “Порядок -> Выровнять” для вирівнювання елементів по горизонталі та вертикалі
нарисуйте прямокутник для фону параметрів налаштування рецепту першого дозатору та впишіть туди текстові поля D1
,D2
і т.д.
створіть числові поля для виведення змінних першого рецепту, теги: T1_KS_D1CNT_SP
, T1_KS_D2CNT_SP
, T1_KS_TT1_SP
, T1_KS_DEL_SP
Рис.3.17. Налаштування поля для вводу на панелі зміни рецепту
Рис.3.18. Відображення налаштування рецептів в режимі виконання в Citect (ліворуч) та Unity PRO (праворуч).
Використовуючи анімацію видимості покажіть переключення дозаторів на танк Т1 та танк Т2, теги:
T_LVS3_T1OPN=0
перемикач на танк1T_LVS3_T2OPN=0
перемикач на танк2Рис.3.19. Налаштування анімації видимості для перемикача дозатора
Створіть дві кнопки для команди на перемикач:
T_LVS3 = 0
команда переключення на танк 1T_LVS3 = 1
команда переключення на танк 2
Рис.3.20. Вигляд мнемосхеми з перемикачами в режимі виконання
Pointer2_e_gray
з бібліотеки Thumbs
на відображенні стовпчикового індикатору, як це показано на рис.3.21.Рис.3.21 Місце розміщення числового індикатору рівня
Рис.3.22. Вигляд мнемосхеми з анімацією руху
Використовуючи вже відомі вам елементи та анімацію, реалізуйте мнемосхему для процесу нагрівання (“Heat”). Якщо якісь теги, що використовуються в анімаціях, не створені в проекті, для їх визначення скористайтеся документом Завдання. Також для визначення того, які теги використовуються в анімаціях можна скористатися операторським екраном Unity PRO (подивитися прив’язку елементів), так як імена тегів Citect співпадають з назвою змінних в проекті ПЛК. Зверніть увагу, що час роботи програмного задатчика не передбачено виводити на дисплеї, але Ви можете за бажанням реалізувати це самостійно (потрібна зміна програми і в ПЛК). Можлива наступна послідовність дій:
нанесіть базові статичні векторні елементи (фігури, лінії, труби, написи) та, за необхідності, символи поверх підкладки;
розмістіть числові елементи для відображення усіх плинних та заданих значень; для цього можете скористатися джинами Parameter2
з бібліотеки keyentry
для заданого значення, так як це було зроблено в лабораторній роботі №2);
видаліть підкладку
розмістіть елементи відображення стану та значень з відповідною анімацією: еліпси з анімацією кольору, лінії переключення з анімацією видимості;
розмістіть кнопки або інші зображення для керування станом програмного задатчика, веденого регулятору, блоку ручного управління;
Можливий варіант кінцевої мнемосхеми показаний на рис.3.23
Рис.3.23 Варіант виконання мнемосхеми “Heats”
HS1sp
) реалізуйте анімацію введення з віртуальної клавіатури (тег HEA_TC1_SP)Рис.3.24. Варіант виконання з віртуальною клавіатурою
Прочитайте пункт “Д3.1.13. Повзунок” додатку 3.1
Реалізуйте можливість зміни значення виходу на клапан (тег HEA_TV1
) за допомогою повзунку, для цього:
нарисуйте вертикальну лінію і два прямокутника, як це показано на рис.3.25
визначте висоту лінії за допомогою статусної інформації
впишіть висоту лінії в якості максимального значення по вертикалі
Рис.3.25 Варіант реалізації вертикального повзунка
Прочитайте пункт “Д3.1.14. Робота з клавіатурними командами” додатку 3.1
ESC
(В Citect Studio “Настройка -> Клавиши клавиатуры”).CTRL+I
Рис.3.26. Створення системних клавіш
Створіть загальносистемну клавіатурну команду, яка забезпечує по натисненню “cmdHome” відкривання сторінки “Base”.
Рис.3.27. Налаштування команд сторінки
Перевірте роботу клавіатурних команд на усіх основних мнемосхемах, для цього:
CTRL+I
; повинна з’явитися інформаційна форма про елемент, яка показана на рис.3.28, подивіться її змістРис.3.28. Вигляд інформаційної форми в режимі виконання