Після запуску програмованого логічного контролера (PLC) його робочий процес зазвичай поділяється на три етапи: вибірка вхідних даних, виконання програми користувача та оновлення вихідних даних. Завершення цих трьох етапів становить один цикл сканування. Протягом усього періоду роботи ЦП ПЛК багаторазово виконує ці три етапи з певною швидкістю сканування.
Вхідна вибірка
Під час етапу вибірки вхідних даних ПЛК послідовно зчитує стан і дані всіх вхідних даних скануючим способом, зберігаючи їх у відповідних комірках в області зображення вводу/виводу. Після завершення вибірки вхідних даних процес переходить до етапів виконання програми користувача та оновлення вихідних даних. Під час цих двох останніх етапів, навіть якщо фактичний статус введення або дані змінюються, статус і дані, що зберігаються у відповідних комірках в області зображення вводу/виводу, залишаються незмінними. Таким чином, якщо вхідний сигнал складається з імпульсного сигналу, тривалість цього імпульсу має перевищувати один повний цикл сканування, щоб забезпечити надійне виявлення та зчитування вхідного сигналу за будь-яких обставин.
Виконання програми користувача
Під час етапу виконання програми користувача ПЛК послідовно сканує програму користувача (зазвичай представлену у вигляді драбинкової діаграми) у послідовному порядку, зверху-до-низу. Скануючи кожну окрему сходинку сходової діаграми, ПЛК спочатку оцінює схему керування-, що містить різні контакти-, розташовані зліва від сходинки. Він виконує логічні операції на цій схемі в певній послідовності: зліва-на-праворуч, а потім зверху-на-знизу. Грунтуючись на результатах цих логічних операцій, ПЛК потім оновлює статус відповідного біта для логічної котушки в області зберігання RAM системи; або оновлює статус відповідного біта для вихідної котушки в області зображення введення/виведення; або визначає, чи слід виконувати спеціальну функціональну інструкцію, визначену цією конкретною сходинкою.
Іншими словами, під час виконання програми користувача статичними залишаються лише стан і дані точок *введення* в області зображення вводу/виводу; статус і дані всіх інших *вихідних* точок і внутрішніх «програмних пристроїв» (таких як внутрішні реле або регістри даних)-незалежно від того, розташовані вони в області зображення вводу/виводу чи системній оперативній пам’яті-можуть бути змінені. Крім того, результати виконання сходової сходинки, розташованої вище в програмній послідовності, негайно вплинуть на будь-які наступні сходинки, розташовані нижче, які використовують ці конкретні котушки або дані. І навпаки, оновлений статус або дані логічної котушки в межах нижчої-розташованої сходинки не матиме чинності на-і не впливатиме-на будь-які сходинки, розташовані вище в програмі, до початку *наступного* циклу сканування.
Під час виконання програми використання інструкцій «негайного вводу/виводу» дозволяє отримати прямий доступ до конкретних точок вводу/виводу, минаючи стандартну буферизацію області зображення вводу/виводу. Навіть коли використовуються інструкції вводу/виводу, значення в регістрах зображення вхідного процесу не оновлюються; замість цього програма зчитує значення безпосередньо з модулів введення/виведення. І навпаки, регістри зображення вихідного процесу оновлюються негайно-, що відрізняє цей процес від «негайного введення».
Вивід Оновити
Після завершення сканування програми користувача програмований логічний контролер (ПЛК) переходить у фазу оновлення вихідних даних. Під час цієї фази ЦП оновлює всі вихідні схеми фіксатора відповідно до відповідних станів і даних, що зберігаються в області зображення вводу/виводу; потім ці схеми керують відповідними периферійними пристроями через вихідну схему. Саме в цей момент реалізується фактичний вихід ПЛК.
Резюме
Виходячи з опису вищезгаданих процесів, ключові характеристики операційного робочого процесу ПЛК можна узагальнити таким чином:
① ПЛК використовує робочий режим, що характеризується централізованою вибіркою вхідних даних і централізованим оновленням вихідних даних; такий підхід служить для пом'якшення впливу зовнішнього втручання.
② Робочий процес ПЛК є циклічним процесом сканування. Тривалість цього циклу сканування залежить від різних факторів, таких як швидкість виконання інструкцій і тривалість програми користувача.
③ Існує феномен тимчасової затримки щодо впливу вхідних даних на результати. Оскільки ПЛК використовує централізований режим вибірки та виведення, будь-які зміни у станах входу, що відбуваються після завершення фази вибірки, не будуть розпізнані, доки не почнеться наступний цикл вибірки; отже, тривалість цієї затримки в першу чергу визначається довжиною загального циклу сканування. Крім того, інші фактори, що сприяють цьому відставанню, включають час фільтрації вхідного сигналу та властиву затримку відповіді вихідної схеми.
④ Вміст регістрів вихідного зображення визначається результатами, згенерованими під час виконання сканування програми користувача.
⑤ Вміст вихідних фіксаторів визначається даними, що зберігаються в регістрах вихідного зображення під час попередньої фази оновлення виведення.
⑥ Фактичний поточний вихідний стан ПЛК визначається вмістом вихідних фіксаторів.

