Page 91 - 4356
P. 91
пов'язану з перериванням обслуговуючу програму (процедуру)
або програму (процедуру) обробки помилки і поверне управління
головній програмі.
Кожній події відповідає спеціальний організаційний блок
(organization block - OB). Організаційні блоки в програмі
користувача реалізують механізм пріоритетних класів. При
виникненні події CPU активізує призначений організаційний блок.
Організаційний блок - це частина користувальницької програми,
яку ви можете самі написати.
Перед початком обробки головної програми CPU виконує
програму запуску (startup routine). Ця програма може бути
запущена включенням живлення, поворотом перемикача режимів
на передній панелі CPU або за допомогою програмуючого
пристрою. Обробка програми, яка наступає після виконанням
програми запуску, в системах S7-300 починається завжди з
початку головної програми (повний рестарт - complete restart); в
системах S7-400 також можливо продовжити сканування
програми з точки, в якій воно було перервано («гарячий» рестарт -
warm restart).
Головна програма розташовується в організаційному блоці
ОВ 1, який завжди обробляється центральним процесором.
Початок користувальницької програми ідентичний першому
сегменту (мережі, network) в ОВ 1. По завершенню обробки ОВ 1
(кінець програми) CPU передає управління операційній системі, і
після виклику різних функцій операційної системи, таких як
оновлення образу процесу, центральний процесор знову викликає
ОВ 1.
Подіями, які можуть втручатися в роботу програми, є
переривання (interrupts) і помилки (errors).
Джерелом переривань може бути процес (апаратні
переривання), або вони можуть бути викликані через CPU
(циклічні переривання – watchdog interrupts, переривання за часом
доби – time-of-day interrupts та інші).
Що стосується помилок, то розрізняють синхронні і
асинхронні помилки. Асинхронною є помилка, яка не залежить від
виконання програми, наприклад, відмова електроживлення у
пристрої розширення або заміна модуля. Синхронні помилки
виникають при виконанні програми. До них відносяться,
91