Організаційні блоки - студопедія

У різних режимах роботи ПЛК можуть викликатися різні організаційні блоки. Для завдання одного з режимів призначені кнопки "РЕЖИМ" і "ПУСК" на передній панелі МЦП. Режими роботи ПЛК:

§ СТОП - індикація "Р0";

§ ТЕСТ - індикація "Р1";

§ РОБОТА - індикація "Р2";

§ РЕСТАРТ / РАБОТА - індикація "Р3";

§ ДІАГНОСТИКА - індикація "Р4";

Як змінити спосіб роботи проводиться в два етапи:

- натисканням кнопки "РЕЖИМ" вибирається необхідний режим роботи; при цьому режим, в якому знаходиться контролер, відображається на цифровому індикаторі постійним світінням, інші режими - миготливим;

- натисканням кнопки "ПУСК" запускається обраний режим.

При програмуванні організаційних блоків користувач може застосовувати весь набір команд за винятком команд з формальними параметрами. Всі організаційні блоки допускають виклики програмних і функціональних блоків, в тому числі з вкладеннями (рекомендовано вкладень блоків не більше 8).

1) Блок OB0 - при відсутності не обробляється. При переході контролера в стан зупинки - в режим СТОП (Р0) або в режим ДІАГНОСТИКА (Р4) викликається блок OB0. У блоці OB0 може бути запрограмована, наприклад, установка в початковий стан (або обнулення) каналів модулів цифроаналогового перетворювача, каналів модулів керування електроприводами і т. П. При переході в стан зупинки модуль контролю та управління відключає канали дискретного виходу, і при виконанні програми в OB0 обробка входів / виходів і таймерів не проводиться.

2) Блок OB1 (див. П.3) - блок циклічної обробки програми користувача - при відсутності не обробляється. Циклічне виконання програми починається з першої команди, запрограмованої в OB1, і закінчується виконанням команди BE. Потім виконується системна програма сканування модулів введення / виведення і управління знову передається на на першу команду OB1, і т.д. При цьому запрограмована в OB1 послідовність викликів програмних і функціональних блоків визначає послідовність обробки структурних частин програми користувача.

3) Блоки OB2. OB9 - блоки, оброблювані зі зміни входу (обробка за повідомленням). Організаційні блоки OB2. OB9 викликаються при зміні стану відповідного входу молодшого байта входів. Якщо одночасно змінюються кілька з цих входів, то система пріоритетно обробляє спочатку блок з меншим номером, потім блок з великим номером (див. Табл. 4.1). Команди AS і AF дозволяють відповідно блокувати або деблокувати обробку за повідомленням. За замовчуванням після включення контролера обробка за повідомленням блокована.

Таблиця 4.1: Організаційні блоки, що викликаються за повідомленням.

4) Блоки OB10. OB18 - обробка за часом. Організаційні блоки OB10. OB18 викликаються через інтервал часу, вказаний в табл. 4.2. Час обробки блоку OB10. OB18 не повинно перевищувати значення інтервалу часу між викликами. Система пріоритетно обробляє спочатку блок з меншим номером, потім блок з великим номером.

Таблиця 4.2: Організаційні блоки, що викликаються за часом.

Інтервал часу між викликами, з

Викликаються на кордоні обробки блоків (див. Далі).

5) Блок OB19 - виклик відсутнього блоку - при відсутності блоку OB19 контролер переходить в режим ДІАГНОСТИКА (Р4). Блок OB19 викликається при зверненні з програми користувача до програмного, функціональному або організаційного блоку, відсутньому в пам'яті контролера. При виклику OB19 в немов акумулятор RW1 завантажується номер відсутнього блоку: в старший байт акумулятора RW1 завантажується тип відсутнього блоку (0 - OB; 1 РВ; 2 FB; 3 DB), в молодший байт RW1 - номер блоку від 0 до 31 .

6) Блок OB20 - початковий пуск контролера - при відсутності не обробляється. Блок OB20 обробляється один раз в момент пуску в режим РОБОТА (Р2) з кнопок на передній панелі МЦП або в момент пуску після включення при відсутності OB22. При цьому виконується функція початкового пуску, тобто обнуління відображення входів / виходів, таймерів, лічильників, міток, реєстрація всіх встановлених і справних модулів введення / виведення. Потім викликається, якщо запрограмований, організаційний блок OB20, і після його відпрацювання починається циклічна відпрацювання програми користувача шляхом виклику організаційного блоку OB1 (якщо він є).

7) Блок OB21 - ручний повторний пуск - при відсутності не обробляється. Функцію ручного повторного пуску можна реалізувати, переключивши контролер кнопками на передній панелі процесорного модуля після зупинки в режим РЕСТАРТ / РАБОТА (РЗ). При цьому викликається, якщо запрограмований, організаційний блок OB21, а потім продовжується виконання програми користувача з перерваного зупинкою (командою STP) або вимиканням місця. При цьому відображення входів / виходів, лічильники, мітки, таймером не обнуляються.

8) Блок OB22 - автоматичний повторний пуск - при відсутності OB22 після включення виробляється запуск в режим Р2. Якщо запрограмований організаційний блок OB22, то після включення і ініціалізації апаратних вузлів контролера перевіряється збереження програми користувача, даних користувача (відображення входів / виходів, мітки, таймери, лічильники). Якщо програма і дані збережені, то викликається і виконується організаційний блок OB22, і потім продовжується виконання програми користувача з перерваного перед вимиканням місця. При цьому відображення входів / виходів, лічильники, мітки, таймером не обнуляються, зберігаючи попереднє виключення стан. У OB22 досить запрограмувати тільки BE.

9) Блок OB23 - виникнення помилок в модулях введення / виведення - при відсутності OB23 контролер переходить в режим ДІАГНОСТИКА (Р4). Блок ОВ23 викликається при появі помилки при скануванні модулів введення / виведення або при виявленні несправності цих модулів. При виклику OB23 в немов акумулятор RW1 завантажується номер байта входу (виходу), в якому виявлено помилку (в старший байт акумулятора RW1 завантажується номер каркаса, в молодший байт RW1 - номер байта входів / виходів).

10) Блок OB24 - виникнення помилок в каналах зв'язку з блоками розширення - при відсутності OB24 контролер переходить в режим ДІАГНОСТИКА (Р4). Блок ОВ24 викликається при виникненні помилок в Міжблочні канапе зв'язку з контролером розширення С300.02. При виклику ОВ24 в немов акумулятор RW1 завантажується номер того блоку розширення, при зв'язку з яким зафіксована помилка.

11) Блок OB26 - перевищення максимально допустимої тривалості циклу обробки програми - при відсутності OB26 контролер переходить в режим ДІАГНОСТИКА (Р4). Блок OB26 викликається при перевищенні тривалості циклу відпрацювання програми. У тривалість циклу входить час на виклик і обробку блоку OB1, виклик і обробку програмних і функціональних блоків, що викликаються з блоку OB1, а також час обробки всіх організаційних блоків із реле часу, з повідомленням або помилку, оброблених в цьому циклі до обробки команди кінця блоку BE в OB1. Після виконання блоку OB26 процесор повертається до виконання основної програми з перерваного місця. За замовчуванням час контролю тривалості циклу обробки програми користувача становить 100 мс. Для зміни часу контролю застосовується спеціальна команда TS. Дискретність уставки - 1 мс. Максимальне значення уставки - 64 с.

12) Блоки OB41, OB44, OB45 - обробка переривань з ЦІ від модулів розширеної периферії - при відсутності не обробляються. Блоки OB41, OB44 і OB45 переривають обробку інших блоків відразу ж, як тільки виникає відповідне переривання (див. Табл. 4.3). За допомогою цих блоків можлива обробка модулів спеціальної обробки.

Таблиця 4.3: Блоки обробки переривань.