ЛР8 zenon: Адміністрування користувачів та блокування

Блокування

Існують задачі, коли з точки зору безпеки чи згідно з технологією необхідно заблокувати ті чи інші елементи екрану, щоб оператор не міг ними керувати. Інколи цю задачу реалізують на контролері, але з zenon таке блокування можна створити безпосередньо в проекті візуалізації використовуючи стандартну функціональність.

Для нашого тестового проекту ми реалізуємо наступне блокування: якщо змінна вологості повітря в приміщенні має значення більше за 75 %, то кнопка пуску першого танку буде недоступна для керування - заблокована.

Означення блокування

Завдання 8.12: Створіть умови блокування для змінної.

  • В менеджері проекту активуйте пункт Interlockings і через праву кнопку мишки виберіть пункт New interlocking

У вікні детального перегляду з’явиться новий пункт – Interlocking 1 з елементами визначення умови блокування та змінної блокування.

  • На елементі Variables натисніть правою кнопкою миші і виберіть Add variable

В діалоговому вікні, що з’явилось, необхідно вибрати змінну. Оскільки змінної вологості в нас ще немає, ми можемо її створити одразу з цього вікна.

  • В верхній частині виберіть піктограму Variable new і створіть змінну 'Вологість' на базі драйверу VIPA 300 з типом даних INT

  • На елементі Interlocking conditions натисніть правою кнопкою миші і виберіть New interlocking condition

При необхідності в проекті можна визначити одночасно декілька умов блокувань по яким система буде проводити перевірку.Визначені тут умови можуть стосуватись декількох змінних.

  • У властивостях пункту Condition 01 в полі Logical link: клікніть на полі визначення формули

З’явиться діалогове вікно формули прорахунку блокування.

  • Виберіть пункт Value і сформуйте арифметичний вираз X01.Value > 75

  • Після натиснення кнопки OK створення блокування буде завершеним

Прив’язка до елементу

Завдання 8.13: Прив'яжіть блокування до елементу та перевірте роботу.

  • На екрані 'Процес' виберіть кнопку 'Пуск' першого танку і у вікні властивостей для розділу Authorization -> Interlocking виберіть створене нами блокування 'Interlocking 1'

Оскільки система порівнює “сирі” значення змінної PLC зі встановленою нами величиною блокування в формулі, то необхідно, щоб діапазони значень змінної співпадали з реальним діапазоном вологості.

  • Зайдіть у властивості змінної 'Вологість' Value calculation -> Value range PLC і встановіть його в діапазон 0 – 100
  • Такий же діапазон встановіть для поля Value adjustment linear

Давайте зробимо так, щоб оператор візуально бачив коли кнопка стає заблокованою.

  • Зайдіть в розділ властивостей проекту Graphical design -> Locked/Interlocked elements і активуйте бокс Graphical identification active

Стан блокування відображається значком замка у верхньому лівому куті символу. Сюди можна назначить будь-яку картинку з бібліотеки файлів проекту. Також, заблокований елемент можна зробити невидимим чи сірим.

Для симулювання зміни значення створеної нами змінної 'Вологість' розмістіть в верхній частині екрану елемент універсальний повзунок, аналогічний до того, що ми на початку створили для керування змінної температури.

Запустіть проект і перевірте роботу блокування. Якщо Ви зробили все вірно, то при перетягуванні повзунка вище значення 75 кнопка 'Пуск' автоматично заблокується. При поверненні значення нижче 75 блокування повинне знятись.

Промоделюйте різні варіанти спрацювання цього блокування.

Докладніше про блокування можна прочитати в мануалі Interlockings.