Алгоритм работы задачи резервирования
Существует последовательность системных и пользовательских вызовов в цикле задачи резервирования.
В начале каждого цикла вызывается системная процедура Read Inputs – чтение данных из входных каналов модулей ввода/вывода и данных, полученных по цифровой линии связи. Далее выполняется синхронизация данных (вызов функции Synchronize). При синхронизации происходит копирование данных между контроллерами и коррекция интервала вызова задачи на Пассивном контроллере. По завершении этих действий выполнение задач приостанавливается до окончания контрольного времени синхронизации. По истечении времени синхронизации выполняется пользовательское приложение (User application). Сразу после окончания выполнения пользовательского приложения вызывается системная процедура Write Outputs – запись обновленных значений переменных в каналы вывода. Это могут быть управляющие сигналы для модулей DO/AO или данные, передаваемые по цифровой линии связи. Задача на Пассивном контроллере, участвующая в резервировании, синхронизируется с одноименной задачей Активного контроллера.

Одновременная работа контроллеров
Важно! В рамках одной резервированной пары контроллеров может быть синхронизирована только одна задача.
|