АМ-212_Ткаченко_№4
.pdf
31
Рисунок 1.51 — Введення числа для жовтого кольору
Рисунок 1.52 — Введення числа для зеленого кольору
Рисунок 1.53 — Введення числа для синього кольору
32
Рисунок 1.54 — Введення числа для фіолетового кольору
1.12 Програма на мові програмування IL
Згідно рисунка 1, необхідно відобразити роботу схеми на мові IL. Спочатку потрібно створити ФБ, як показано на рисунку 1.55.
Рисунок 1.55 — Створення FB на мові IL
Далі, треба додати вхідні та вихідні зміні у файл PROGRAMM_ILV, як показано на рисунку 1.56.
Рисунок 1.56 — Перелік змінних
Потім, потрібно написати програмний код використовуючи команди: LD, ST, CAL, ANDN. Програмний код наведено на рисунку 1.57.
33
LD — це команда «завантаження», яка використовується для отримання стану входу або іншого значення із певного джерела. ST — це команда
«збереження», яка встановлює вказане значення на вибраний вихід або регістр. CAL — це команда «виклик», яка використовується для виклику певної функції або підпрограми, яка може бути вбудованою або користувацькою. ANDN — це логічна операція «AND NOT», яка виконується між двома вхідними значеннями.
Рисунок 1.57 — Програмний код для роботи схеми
Для перевірки схеми потрібно запустити LOGIC ANALYZER (LA), який побудує часову діаграму, яка показана на рисунку 1.58.
Рисунок 1.58 — Часова діаграма програми отримана за допомогою LA
34
1.13 Створення програми для освітлення на мові LD
Для створення схеми на мові LD, потрібно створити ФБ, як показано на рисунку 1.59.
Рисунок 1.59 — Створення ФБ на мові LD
Зазвичай, для створення схем у мові програмування LD використовуються контакти для введення даних та котушки для виведення результатів. Для того, щоб виконати операцію «AND» потрібно з’єднати два контакти послідовно, а для
«OR» — паралельно.
Для включення світла буде використовуватися контакт Enable, для підключення світла буде застосовано котушку light. Щоб імітувати присутність людей у залі, потрібно використати лічильник, який буде «додавати» та «віднімати» кількість людей у приміщені. Для «додавання» однієї людини потрібно застосувати контакт add_one_people. Якщо треба «прибрати» людину, то тоді замкнути контакт remove_one_people.
Якщо в залі нікого немає, тоді лічильник активує струм на вихід QD, який пов'язаний з контактом room_is_empty. Цей контакт активує таймер затримки
TON_1, який заблокує струм для котушки light через 10 секунд.
При присутності п’яти або більше людей повинна загорітися друга лампочка
(котушка light2). Для реалізації цієї функції потрібно додати на схему порівняльну функцію GE та з’єднати її вхід з лічильником через вхід CV. Також потрібно додати таймер затримки TOF_1, який буде вимикати сигнал для другої лампочки через 10
секунд. Повністю зібрана схема LD показана на рисунку 1.60.
35
Рисунок 1.60 — Схема LD для управління освітленням у приміщенні
Для перевірки схеми, потрібно «додати» одну людину та увімкнути світло, як показано на рисунку 1.61.
Рисунок 1.61 — Світло вмикається, якщо є хоча б одна людина у залі Тепер, треба «прибрати» цю людини із приміщення. Результат цієї дії
показаний на рисунку 1.62.
36
Рисунок 1.62 — Світло вимикається через 10 секунд, якщо приміщення порожнє Потім, необхідно «додати» 5 людей у приміщення. Результат цієї дії
продемонстрований на рисунку 1.63.
Рисунок 1.63 — Вмикається додаткове світло, якщо у приміщені 5 людей Для того, щоб реалізувати схему освітлення для довгого коридору, потрібно
використати прохідний перемикач. Його електрична та еквівалентна LD схема наведена на рисунку 1.64.
37
Рисунок 1.64 — Електрична та еквівалентна LD схема прохідного перемикача Перевірка роботи схеми освітлення для довгого коридору з використанням
вихідного перемикача, показана на рисунку 1.65.
Рисунок 1.65 — Перемикання світла з різних вимикачів коридору
38
1.14 Реалізація світлофору на мові SFC
Для того, щоб почати розробку програми на мові SFC, необхідно створити ФБ, як наведено на рисунку 1.66.
Рисунок 1.66 — Створення ФБ на мові SFC
Спочатку, потрібно створити необхідні зміні для роботи світлофору. Перелік змінних показаний на рисунку 1.67.
Рисунок 1.67 — Необхідні змінні для роботи світлофору
TON_RED, TON_REDYELLOW, TON_YELLOW, TON_GREEN — це блоки затримки, які використовуються для управління тривалістю інтервалів,
присвячених показу червоного, червоно-жовтого, жовтого та зеленого світла на світлофорі. IN_tRED, IN_tYELLOW…,In_tGREEN — виділений час світіння кольорів. Для виведення кольорів світлофора потрібно використати змінні
OUT_xGREEN, OUT_xRED, OUT_xYELLOW.
39
Для того, щоб почати створювати блок-схему на мові SFC, потрібно додати шаг ініціалізації за допомогою кнопки «Create step transitions Sequence» та вести назву, як показано на рисунку 1.68.
Рисунок 1.68 — Встановлення шагу ініціалізації S_MODE
Далі, необхідно встановити розгалуження віток за допомогою кнопки «Insert SWC BRANCH». Для кожної вітки треба встановити умовні переходи, які будуть приймати значення змінної IN_NIGHT_MODE.
Потім, для першої гілки потрібно додати шаги S_RED, S_REDYELLOW, S_GREEN, S_YELLOW. Після кожного кроку, необхідно додати переходи (T_RED, T_REDYELLOW, T_GREEN, T_YELLOW), які будуть реалізовувати схему для затримки сигналу. Також для кожного кроку потрібно призначити дію виведення поточного сигналу світлофора за допомогою кнопки «Create action».
Для другої гілки, що відповідає за нічний режим роботи, потрібно створити лише два кроки (S_YELLOW_ON, S_YELLOW_OFF) та два переходи
(T_YELLOW2, T_YELLOW2_OFF), які будуть перемикати жовтий сигнал.
Переходи також будуть містити блоки затримки. Загальна схема світлофора зображена на рисунку 1.70. Блоки затримок сигналів показані на рисунку 1.69.
Рисунок 1.69 — Блоки затримок сигналів для світлофору
40
Рисунок 1.70 — Реалізація світлофору на мові SFC
Тестування роботи світлофору на мові SFC, показано на рисунку1.71.
Рисунок 1.71 — Робота світлофору у звичайному режимі
