Общие принципы резервирования
В основе метода резервирования лежит очевидная идея замены отказавшего элемента исправным, находящемся в резерве. Однако реализация этой идеи часто становится достаточно сложной, если необходимо обеспечить минимальное время перехода на резерв и минимальную стоимость оборудования при заданной вероятности безотказной работы в течение определенного времени (наработки).
Для замены отказавшего элемента достаточно иметь резервный (запасной) элемент на складе. Однако продолжительность ручной замены составляет единицы часов, что для многих СА недопустимо долго. Сократить время вынужденного простоя позволяет применение контроллеров и модулей в/в с разъемными клеммными соединителями и с возможностью горячей замены при условии наличия развитой системы диагностики неисправности.
Для обеспечения возможности горячей замены необходимо предусмотреть:
1) защиту от статического электричества, которое может возникать на теле оператора, выполняющего замену устройства;
2) необходимую последовательность подачи напряжений питания и внешних сигналов (например, для этого используют разъемы с контактами разной длины и секвенсоры внутри устройства;
3) защиту системы от броска тока, вызванного зарядом емкостей подключаемого устройства (например, с помощью токоограничительных резисторов или отдельного источника питания);
4) защиту устройства от перенапряжения, короткого замыкания, переполюсовки, превышения напряжения питания, от ошибочного подключения;
5) программируемые устройства должны быть заранее запрограммированы, в сетевые устройства должен быть записан правильный адрес и предусмотрена подсистема автоматической регистрации нового и исключения старого устройства из сети;
6) в алгоритмах автоматического регулирования должен быть предусмотрен безударный режим смены контроллера или модулей в/в.
Если резервный элемент входит в состав системы, то она относится к резервированным системам с ручным замещением отказавшего элемента.
Рис.15.1.Устройства с голосованием по схеме 2ооЗ (а) и по схеме 1оо2 (б)
Системы с голосованием. Основной отличительный признак - невозможность выделения в системе основных элементов и резервных, поскольку все они равноправны, работают одновременно и выполняют одну и ту же функцию. Выбор одного сигнала из нескольких осуществляется схемой голосования, которая в частном случае нечетного числа голосов называется мажоритарной схемой.
Системы с голосованием не требуют для своего функционирования контроля работоспособности элементов, но используют подсистему диагностики для сокращения времени восстановления отказавших элементов и снижения вероятности накопления скрытых неисправностей, которые со временем могут стать причиной отказа.
Принцип работы схемы голосования на примере резервирования датчиков (рис. 15.1а). Вместо одного датчика используются 3 (например, 3 термопары), которые подсоединены к одному модулю ввода. В схему голосования поступают, соответственно, 3 значения измеряемой величины (например, 3 значения температуры Т1, Т2, Т3), из которых необходимо выбрать одно. Значения температуры располагаются в порядке возрастания: Т1< T2 < Т3, а на выход схемы голосования поступает значение, расположенное между двумя крайними (но не среднее арифметическое). Например, если в результате измерения получены значения 0.12; 39.5; 39.4°С, то используется только значение 39.4°С, остальные игнорируются.
Резервирование элементов с дискретными сигналами выполняется аналогично. Поскольку значениями дискретных сигналов являются логические «0» или «1», то в результате мажоритарного голосования выбирается то значение, которое принимают большинство сигналов. Например, при логических сигналах .A = 1, В = 1, С = 0 результатом голосования будет значение У = 1. Блок мажоритарного голосования реализует логическую функцию Y = АВ + ВС + СА.
Очевидно, что для работы мажоритарной схемы число «голосов» должно быть нечетным. Однако в системах безопасности возможно применение любого числа «голосов». Вместо недостающего голоса используется условие, что система считается работоспособной, если отказ является безопасным. Это позволяет использовать системы, в которых выбирается один голос из 2-х, и такие системы по стандарту МЭК 61508 обозначаются как 1оо2 (1 Out Of 2). Используются также системы 2оо2 (2 голоса из 2-х), 2ооЗ (2 голоса из 3-х), 2оо4 (2 голоса из х), Зоо4 (3 голоса из 4-х). Нерезервированные системы обозначаются как 1oo1. Если в резервированной системе имеется развитая подсистема диагностики неисправностей, то к обозначению добавляется буква «D», например loo2D.
Примером системы с голосованием вида 1oo2 может служить система охранной сигнализации двери, в которой используются 2 датчика А и В с целью взаимного резервирования (рис.15.1б). При отказе одного из датчиков (например, датчика В, когда вместо А = 1, В = 1 получаем А = 1, В = 0) система, пользуясь правилом большинства голосов, не может принять решение. Однако, если учесть, что ложное срабатывание охранной системы не приводит к опасной ситуации, а несрабатывание системы при наличии нарушителя является опасным отказом, очевидно, схема голосования должна считать, что достаточно одного голоса из 2-х, чтобы принять решение о подаче аварийного сигнала. Если сигналом срабатывания сигнализации является логическое значение «1», а сигналом отсутствия нарушителя является значение «0», то блок голосования реализует логическую функцию Y = А + В.
Если входными данными для голосования являются 2 аналоговых сигнала, то пользователь при программировании должен установить, какой сигнал из 2-х должен быть выбран системой в случае их несовпадения. Такой подход возможен только в системах безопасности.
Противоположная ситуация используется при голосовании вида 2оо2. Примером может быть система контроля герметичности люка при погружении подводной лодки. Если люк имеет 2 датчика, то сигнал готовности к погружению может появиться только при наличии подтверждения (А = 1, В = 1) от обоих датчиков одновременно (2-х из 2-х). Выход из строя одного датчика не должен позволить системе выработать сигнал готовности к погружению, чтобы опасная ситуация не возникла. Такой блок реализует логическую функцию Y = АВ.
Несмотря на высокую эффективность схем голосования с четным числом голосов, они имеют недостаток, состоящий в возможности ложного срабатывания. Хотя этот тип отказов и не является опасным, в некоторых случаях он приводит к значительному материальному ущербу. Для исключения ложного срабатывания можно использовать более дорогие системы с нечетным количеством голосов, которые снижают вероятность отказов обоих типов. Выбор наилучшей системы осуществляется на основании результатов экономических расчетов.
При отказе одного из элементов резервированной системы безопасности 2ооЗ ее уровень безопасности понижается и она может начать функционировать как система 1оо2. Если замена неисправного элемента не произведена и произошел второй отказ, то система переходит в режим без резервирования 1oo1, однако в этом режиме система не может находиться долго по требованиям безопасности. Очередность перехода от одной схемы резервирования к другой называется схемой деградации.
Система безопасности 2ооЗ может иметь 2-й вариант схемы деградации: 2ооЗ - 2оо2 - 1oo1 - 0. Здесь 0 обозначает состояние, когда система перестает функционировать (останавливается). Перед остановкой система должна перевести все свои выходы в безопасные состояния. Понятие безопасного состояния для каждой системы определяется при ее проектировании. Например, для систем аварийного отключения безопасными являются обесточенные состояния исполнительных механизмов, а для систем автоматического пожаротушения или аварийной вентиляции, наоборот, - состояния, при которых на исполнительные устройства подана энергия.
Схемы голосования широко используются в системах противоаварийной зашиты и сигнализации, где они имеют большое разнообразие. В системах же, не связанных с безопасностью, самая простая схема голосования: 2ооЗ (достаточно дорогая). Уникальное свойство систем с голосованием - непрерывность функционирования во время перехода на резерв, что является определяющим при принятии решения о выборе метода резервирования.
Резервирование замещением. Системы с горячим резервированием замещением (Hot Standby) (рис.15.2) содержат подсистему контроля работоспособности как основного, так и резервного элементов, имеют блок переключения на резерв (обычно переключение выполняется программно), а также шины для синхронизации между процессорами (последнее относится только к резервированию процессоров).
Основным параметром систем с резервированием замещением является время переключения на резерв (обычно, выполняется в пределах одного или нескольких контроллерных циклов и занимает время от единиц миллисекунд до долей секунды).
Системы с более медленным переключением на резерв (от долей до единиц секунд) относят к системам с теплым резервом (Warm Standby). Конструктивное отличие теплого резервирования контроллеров от горячего заключается в отсутствии высокоскоростного канала синхронизации между процессорами, вместо него используется стандартная низкоскоростная промышленная сеть или другой последовательный канал обмена.
Для контроля работоспособности используются такие параметры и события, как, например, обрыв линии связи, короткое замыкание (к.з.), величина напряжения и тока питания, отсутствие связи, перегрев выходных каскадов модулей вывода, перегрузка по току, отсутствие нагрузки, выход сигналов заграницы динамического диапазона, срабатывание предохранителя, срабатывание блокировок и защит, целостность линий связи с модулями в/в, ошибка контрольной суммы, ошибка памяти, «зависание» процессора и т.п.
Перечень процедур контроля ПЛК приведен в ГОСТ Р 51841. Диагностическая информация должна выводиться на пульт оператора и одновременно может использоваться для переключения на резерв.
Для исключения ошибочного перехода на резерв по причине сбоя в системе контроля используют временной фильтр, который разрешает переключение только при условии, что состояние неисправности длится не менее установленного времени (например, 1...100 мс).
Общее и поэлементное резервирование. Резервированными могут быть отдельные элементы системы, их группы и вся система в целом. Поэлементное резервирование позволяет повысить отказоустойчивость в первую очередь наиболее важных или наименее надежных элементов, выбрать различную кратность резервирования для разных элементов системы и тем самым достичь максимального отношения надежности к цене.
Общее резервирование не требует анализа соотношений между надежностью отдельных элементов системы, исключает ошибки при расчете надежности и выборе различных схем резервирования, а также ошибки, вызванные плохой наглядностью архитектуры системы при поэлементном резервировании.
В случае общего резервирования достаточно 2-х отказов для отказа всей системы, если один из элементов расположен в основной системе, 2-й – в резервной. При поэлементном резервировании вероятность такого отказа существенно ниже, поскольку для его реализации необходимо, чтобы один из отказавших элементов был основным, второй - его резервом, что крайне маловероятно.
Модули ввода и датчики
Типичными отказами при вводе сигналов в ПЛК является обрыв или к.з. линии связи. На долю отказов линий связи, датчиков и исполнительных устройств в ПА приходится 85% всех отказов. Линии связи могут повреждаться в результате стихии (обмерзание проводов), земляных работ, неправильного монтажа, злонамеренных действий и т.п., поэтому их надежность часто не связана напрямую с надежностью кабеля.
Резервирование аналоговых модулей ввода и датчиков. Схемы голосования могут применяться для резервирования датчиков при использовании одного модуля ввода (рис. 15.1), для резервирования модулей ввода при наличии одного датчика (рис. 15.3а) или датчиков и модулей ввода одновременно. В последнем случае потенциальные входы модулей соединяются параллельно (рис.15.3а), а токовые последовательно (рис.15.4).
Рис.15.3. Резервирование модулей ввода (а) и датчиков с модулями (б)
Поскольку при последовательном соединении отключение одного из модулей (например, для выполнения замены) приводит к разрыву всей цепи, то для устранения этого эффекта используют стабилитроны (рис. 15.4а). При использовании источника тока с большим внутренним сопротивлением (например, стандартного источника 4...20 мА) ток I не зависит от сопротивления нагрузки, поэтому появление стабилитрона в контуре с током при удалении одного из модулей не вносит погрешность в результат измерения. Ток утечки стабилитрона должен быть мал по сравнению с допустимой абсолютной погрешностью измерения тока, а напряжение стабилизации - больше максимального падения напряжения на измерительном резисторе.
Рис.15.4. Резервирование модулей ввода тока с измерительными резисторами внутри модулей (а) и снаружи (б)
Тот же эффект достигается, если использовать внешние измерительные резисторы (рис.15.4б), которые обеспечивают замкнутый путь для тока при удалении одного из модулей. При этом используются модули с потенциальным входом, а измерение тока выполняется косвенным методом (по падению напряжения на сопротивлении).
Схемы голосования в рассмотренных примерах и количество элементов в резервированной системе могут быть произвольными; алгоритм голосования реализуется программно в ПЛК.
Принцип работы системы, резервированной методом замещения, иллюстрируется рис. 15.2. В системе выделяется основной модуль, резервный и блок выбора модуля после отказа. До отказа на выход системы поступают данные только из основного модуля. Блок выбора постоянно контролирует состояние работоспособности модулей и после наступления отказа автоматически переключает выходной канал системы на исправный модуль. Одновременно на пульт оператора и в журнал ошибок посылается диагностическое сообщение о вышедшем из строя элементе. Переключение выполняться, как правило, программно.
Аналогично работают системы с несколькими резервными элементами. Переключение на один из них выполняется по заранее определенному алгоритму.
Основной проблемой в системах, резервированных методом замещения, является автоматический контроль исправности.
Для контроля исправности аналоговых модулей ввода используются:
1) среднеквадратическое значение напряжения или тока шума;
2) напряжение смещения нуля;
3) температура внутри корпуса модуля;
4) погрешность (оценивается с помощью встроенного источника опорного напряжения);
5) зависание процессора (диагностируется с помощью сторожевого таймера);
6) напряжение питания процессора;
7) ошибка контрольной суммы;
8) ошибка в ответе на команду.
Для диагностики обрыва во входных цепях аналоговых модулей используются:
1) контроль выхода переменной за границы динамического диапазона или границы ее изменения;
2) применение тестирующих источников тока (рис.15.5).
Рис.15.5. Обнаружение обрыва и к.з. в линии связи или датчике, когда носителем сигнала является напряжение (а) или ток (б) |
Типовым методом обнаружения к.з. является измерение сопротивления входной цепи с помощью источников тока I подключенных как показано на рис.15.5а. Величина тока выбирается достаточно малой, чтобы падение напряжения на линии связи и внутреннем сопротивлении датчика не вносило погрешность в результат измерений. Например, в модуле NL-8TI (НИЛ АП) используется ток величиной 2 мкА. При обрыве во входной цепи напряжение между входами модуля выходит за границы динамического диапазона, что является диагностическим признаком обрыва.
При к.з. во входной цепи напряжение между входами модуля становится равным нулю, что является диагностическим признаком к.з. Для того чтобы к.з. можно было отличить от полезного сигнала нулевой величины, диапазон изменения сигнала датчика искусственно сдвигают от нулевого уровня. Такой подход использован в стандарте 4...20 мА (рис.15.5б). В этом случае появление нулевого напряжения на входе приемника однозначно говорит о нарушении линии связи.
Однако отличить обрыв от к.з. в этом случае невозможно, поскольку оба отказа обнаруживаются по нулевой величине принимаемого тока.
Резервирование датчиков и модулей ввода дискретных сигналов. При вводе дискретных сигналов используются методы голосования и резервирования замещением .
Рис.15.6. Схема обнаружения обрыва и к.з. в цепи датчика: с 5-ю различимыми состояниями (а) и с 3-мя (б)
Схемы подключения датчика типа cухой контакт, которые обеспечивают диагностику обрыва, к.з. на землю и на шину питания, показаны на рис. 15.6,7. При обрыве линии на входе модуля появляется сигнал, величина которого определяется делителем напряжения (рис.15.6а). В случае к.з. на шину питания напряжение на входе модуля равно напряжению питания.
При к.з. на землю напряжение на входе равно нулю. При разомкнутом состоянии датчика напряжение составляет: а при замкнутом:
Таким образом, на входе модуля дискретного ввода могут быть 5 различных уровней напряжения, которые с помощью АЦП преобразуются в 5 различных событий: 0, 1, к.з. на землю, к.з. на питание, обрыв. Переключение на резерв происходит, если в блок выбора модуля (рис.15.2) поступает информация о неисправности. Тип неисправности выдается на пульт оператора системы автоматизации и заносится в журнал ошибок.
В ряде случаев достаточно иметь упрощенную схему диагностики. Например, если на рис.15.6а убрать резисторы R2 и R3 (рис.15.6б), то при замкнутом датчике получим напряжение на входе модуля: при открытом состоянии датчика, обрыве линии и к.з. на землю – одно и то же напряжение, равное нулю; при к.з. на шину питания - Епит. Таким образом, вместо 5-ти состояний на входе получаем только 3.
Предположим, что датчик используется в системе охраны и его нормальным состоянием является открытое. Тогда обрыв линии связи и к.з. на землю останутся незамеченными, поскольку их невозможно отличить от нормального состояния датчика. Предположим теперь, что нормальным состоянием датчика является замкнутое, как показано на рис.15.6б. Тогда при любом из перечисленных отказов линии связи сигнализация сработает, т.е. отказа, приводящего к несрабатыванию функции безопасности, произойти не может. Поэтому такая упрощенная схема контроля может быть использована в системах безопасности только с датчиками, у которых нормальным состоянием считается замкнутое.
При выборе упрощенных схем диагностики следует учитывать, что в правильно спроектированной системе безопасности срабатывание датчика не должно быть блокировано неисправностями линии связи, а если такая блокировка возможна, то она должна быть обнаружена системой контроля.
Для обнаружения неисправностей модуля ввода может использоваться автоматическое тестирование во время кратковременного отключения источников сигнала и нагрузок путем подачи на вход тестовых комбинаций логических уровней.
Модули вывода
Резервирование средств вывода принципиально отличается от резервирования средств ввода тем, что в большинстве случаев они являются источниками энергии, в то время как устройства ввода являются приемниками информации (т.е. случае сигналов с незначительной мощностью). Поэтому если для переключения на резерв в модулях ввода достаточно программно перенаправить поток принимаемой информации, то в модулях вывода необходимо переключить поток энергии, что невозможно сделать только программными средствами.
Резервирование аналоговых модулей вывода. Реализуется наиболее сложно и в ПА используется редко. Для переключения на резерв механические реле использовать нежелательно по причине их низкой надежности, а другие способы (включая метод голосования) порождают сложные схемы, которые также понижают надежность системы. Поэтому модули аналогового вывода чаще всего просто отсутствует в промышленных резервируемых системах.
Для резервирования линий связи при выводе и передаче аналоговых сигналов в нагрузку используют преимущественно стандарт 4...20 мА, поскольку он позволяет обнаружить к.з. и обрыв линии. Непосредственно у самой нагрузки (RН) устанавливают диоды, которые предотвращают шунтирование нагрузки при к.з. на землю в соседнем канале (рис. 15.8а).
До наступления отказа каждый источник выдает ток, равный половине тока нагрузки (IН /2). При к.з. или обрыве линии связи ток через диод в этом канале становится равным нулю и срабатывает алгоритм резервирования, который устанавливает в исправном канале ток, равный IН. Использование половины тока (IН/2) для каждого канала уменьшает амплитуду паразитных выбросов во время переходного процесса после отказа.
Описанная схема не пригодна для резервирования самих модулей вывода, поскольку в результате отказа источника на его выходе может установиться ток, не равный нулю.
Контроль целостности линии связи и диагностика отказа в модулях вывода тока 4...20 мА выполняется как показано на рис.13.8б. Выходной каскад модуля не только выводит ток iН = Vвx/R0, но и измеряет напряжения V0 = R0iН и VХ, которые с помощью АЦП преобразуются в цифровую форму и передаются в процессор модуля вывода. При правильном функционировании цепи, включающей нагрузку RН, должно выполняться равенство V0 = VВX. Если оно не выполняется, то при V0 = 0 имеет место к.з. на землю или обрыв; при V0 = V1 - к.з. между линиями или в нагрузке; при V1 = ЕПИТ имеет место к.з. верхней (по схеме) линии на шину питания, при V0 = ЕПИТ - нижней. При V0 > VВX сопротивление нагрузки превышает допустимое значение и операционный усилитель находится в состоянии насыщения.
Рис.15.8. Резервирование (а) и диагностика (б) линии вывода аналоговых сигналов
Резервирование модулей дискретного вывода и нагрузки. Обычно выполняется методом голосования. Для этого дискретные выходы соединяются параллельно через диоды (рис.15.9а). Диоды используются для предотвращения протекания тока из одного канала в другой. При отказе одного из источников на рис.15.9а в виде к.з. на землю и обрыва управление нагрузкой продолжается от 2-го источника. Однако, если отказом является пробой выходного каскада на шину питания, то отказавший канал блокирует выходное напряжение и оно перестает зависеть от управляющего сигнала. Несмотря на этот недостаток, соединение дискретных выходов по схеме рис.15.9а может быть использовано в системах, связанных с безопасностью, если рассмотренный вид отказа резервированной системы не влияет на выполнение функции безопасности. Например, если безопасным состоянием выхода является наличие напряжения (для питания двигателей насосов в системе пожаротушения), рассмотренный отказ не является опасным и не влияет на величину вероятности отказа при наличии запроса.
Рис.15.9. Соединение дискретных выходов при резервировании (а) и один из вариантов реализации дискретных выходных каскадов (б)
Рис.15.10. Резервирование модулей вывода для реализации аварийного отключения (а) и для повышения отказоустойчивости и живучести (б)
Таким образом, параллельное соединение дискретных выходов с целью резервирования может использоваться только в системах аварийного включения нагрузки и не может использоваться в системах аварийного отключения. Вероятность отказа при включении у такой цепи эквивалента дублированной системе, а при отключении - меньше, чем у нерезервированной.
На рис.15.9б показана реализация этого принципа резервирования, выполненная на МОП- транзисторах. Для коммутации мощной нагрузки ключи 1 и 2 могут быть изготовлены в отдельном конструктиве с радиаторами и удалены от модулей дискретного вывода. Маломощные ключи конструктивно входят в состав модулей вывода. При подключении нагрузки к разным источникам питания Е1 и Е2 (как на рис.15.9б) необходимо использовать развязывающие диоды, чтобы при одновременно открытых ключах исключить протекание тока из одного источника в другой. Если же использован общий источник питания (как на рис.15.10б), то диоды не нужны.
Для резервирования систем аварийного отключения используется последовательное соединение 2-х выходных каскадов (рис.15.10а). При отказе одного из МОП-ключей в виде к.з. нагрузка отключается 2-ым каналом, т.е. функция отключения в данной системе является дублированной. При необходимости же включить нагрузку достаточно отказа только одного ключа, т.е. функция включения оказывается нерезервированной. Таким образом, рассмотренный каскад может быть использован только в системах аварийного отключения, но не включения.
Для построения системы, в которой резервируется не одна из функций (включения или отключения), но обе одновременно, используется каскад из 4-х ключей (рис.15.11б). В нем выход из строя любого выходного каскада или линии связи не приводит к нарушению ни функции включения, ни отключения. Реализация описанной цепи с помощью электромагнитных реле показала на рис.15.11а.
Рис.15.11. Резервирование модулей вывода, шины и контроллеров; М - нагрузка
На схеме рис.15.10б каждый выходной каскад управляется сигналом X с помощью строенного источника сигнала (А = В = С = X). Для повышения надежности сигнал управления X может приходить по резервированной промышленной сети от резервированного ПЛК, как на рис.15.11а. Голосование (например, по схеме 2ооЗ) в случае отказа одной из сетей выполняется непосредственно в модулях вывода.
Рис.15.12. Резервирование цепей дискретного вывода для систем аварийного включения (а) и аварийного отключения (б)
При использовании горячего дублирования сети и контроллеров методом замещения аналогичная структура может иметь вид, показанный на рис.15.11б.
Структуры систем аварийного включения и отключения с дублированной сетью и ПЛК, резервированными по схеме 2ооЗ, показаны на рис.15.12. Для дублирования ключей на рис.15.12б было бы достаточно просто соединить их последовательно, заземлив нижний (по схеме) вывод нагрузки. Однако в этом случае становится возможным опасный отказ, вызванный к.з. верхнего по схеме вывода нагрузки на источник питания. При этом отключение нагрузки оказывается невозможным. Применение 2-го ключа для размыкания пути тока на землю позволяет исключить такой отказ.
Принцип контроля и диагностики выходных каскадов и линий связи с нагрузкой иллюстрируется рис.15.13. Он аналогичен использованному в модулях аналогового вывода (рис.15.8б). Напряжения V1...V0, пропорциональное току нагрузки, и V0, преобразуются с помощью АЦП в цифровую форму и передаются в микропроцессор модуля для извлечения диагностической информации.
Процессорные модули
Процессорный модуль (для краткости - процессор) следует резервировать в первую очередь, так как при его отказе наступает отказ всей системы. Одновременно с процессором обычно резервируют блок питания и промышленную сеть.
Резервирование процессора с целью повышения отказоустойчивости и живучести выполняют методом замещения с горячим (рис.15.14а) или теплым (рис.15.14б) резервом, а также методом голосования по схеме 2ооЗ (рис.15.15).
Рис.15.14. Горячее (а) и теплое (б) резервирование процессорных модулей замещением; ДР - драйвер резервирования
Для систем, связанных с безопасностью, используют резервирование по схеме 1оо2 или 2оо2, в том числе с диагностикой (loo2D и 2oo2D).
Сложность резервирования процессоров заключается в том, что в момент замещения резервный процессор должен иметь внутренние состояния, идентичные состояниям основного. В системах резервирования замещением для быстрой перезаписи внутренних состояний используется специализированная высокоскоростная шина или оптический канал синхронизации (рис.15.14а). В системах с голосованием большинство внутренних состояний процессоров идентичны, поскольку они работают одновременно с одними и теми же входными данными и исполняют одну и ту же программу, поэтому синхронизация необходима только во время горячей замены отказавшего процессора.
Для систем, некритичных ко времени перехода на резерв, может быть использован медленный последовательный канал синхронизации с интерфейсами, например RS-232, USB, RS-485, или обычная промышленная сеть (CAN, Modbus, Profibus и др.) общего назначения (рис.15.14б). Такие системы относят к системам с «теплым» резервом.
К резервированным процессорным модулям предъявляются следующие основные требования:
1) безударное переключение на резерв (без внесения возмущений в управляемый процесс);
2) малая длительность переключения;
3) высокая надежность общих средств, выполняющих функцию переключения (шина синхронизации и ПО).
Контроль работоспособности процессоров может выполняться на каждом контроллерном цикле перед считыванием сигналов с модулей ввода и перед выводом сигналов на исполнительные устройства. Для выполнения контроля без остановки процесса функционирования системы источники сигнала и нагрузки отключаются на короткое время (например, 1 мс) для подачи тестовых воздействий и измерения реакции на них. При достаточно малой продолжительности отключенного состояния оно не вносит возмущений в работу системы вследствие инерционности исполнительных устройств.
Горячее резервирование замещением. Основной сложностью при резервировании процессорного модуля является обеспечение синхронизации между основным и резервным процессором. Для перехода в рабочее состояние, резервный процессор должен иметь возможность:
1) синхронизировать с основным процессором работу прикладной программы, накопленные данные, состояния регистров, состояния входов и выходов, таблицы неисправностей;
2) обнаружить отказ основного процессора;
3) заместить отказавший процессор.
При первоначальном включении резервного процессора из выключенного состояния или после горячей замены он должен получить от основного следующую информацию:
1) все данные, полученные со входов;
2) все данные, отправленные на выходы;
3) состояния ПИД-регуляторов;
4) уставки и другие значения, заданные пользователем в процессе работы системы;
5) содержимое регистров, в том числе счетчиков-таймеров;
6) другие данные, которые пользователь считает нужным синхронизировать.
После первоначальной синхронизации она повторяется в каждом контроллерном цикле. Это позволяет иметь уверенность, что резервный контроллер всегда готов к замещению основного. В этом заключается суть термина горячий резерв.
Процедура перехода на резерв обычно занимает один контроллерный цикл. В течение этого времени выходные состояния всех модулей вывода сохраняются неизменными. Процедуру перехода на резерв выполняет специальный драйвер резервирования, который:
1) определяет, какой из процессоров является основным, какой – резервным (обычно основным является тот, который раньше был включен или назначен пользователем);
2) убирает из основного процессора уставки, идентифицировавшие его как основной;
3) рассылает всем участникам сети сообщения о том, какой процессор стал основным и какого типа система получилась после перехода на резерв (в соответствии со схемой деградации);
4) выполняет синхронизацию;
5) выполняет диагностический тест, который идентифицирует ошибки шины, потерю связи с сетевыми устройствами, изменение статуса процессора.
Переключение процессора обычно выполняется без коммутатора, с помощью изменения в сетевых устройствах адреса процессора. Например, если по умолчанию основной процессор имеет адрес 31, но после отказа драйвер резервирования указал, что основной процессор изменил адрес на 30, то модули вывода не принимают данные с адреса 31, но принимают с адреса 30. Если данные не поступают ни с адреса 31, ни с адреса 30, то модули вывода переводят свои выходы в безопасные состояния.
Приложения-клиенты верхнего уровня системы автоматизации, которые используют данные из контроллера, во время переключения на резерв должны перерегистрироваться на получение информации от нового процессора.
Для выполнения безударного переключения необходим быстрый обмен информацией между процессорами в течение одного или максимум 2-х, 3-х контроллерных циклов. Для этого используется быстродействующий канал связи (может быть использован канал прямого доступа в память), выполненный в виде параллельной электрической шины или с помощью оптического кабеля. Оптоволоконный канал, в отличие от параллельной шины, может использоваться для разнесения основного и резервного контроллеров на большое расстояние (километры), что необходимо для снижения вероятности ООП, например вследствие стихийного бедствия.
Необходимость постоянной синхронизации является причиной того, что у резервированных процессоров контроллерный цикл длиннее или используются более мощные процессоры, чем обычно.
Поскольку продолжительность синхронизации является очень важным параметром, от которого зависит КГ системы и возможность безударного переключения на резерв, появляется задача минимизации объема передаваемой информации. Одним из путей решения этой проблемы является передача данных только при наступлении определенных событий в системе, которые могут приводить к различию во внутренних состояниях основного и резервного процессоров. В частности, синхронизация по событиям выполняется, если:
1) происходит обмен информацией с модулями в/в;
2) поступает запрос на прерывание;
3) срабатывают запрограммированные пользователем таймеры;
4) изменяются данные в результате обмена по сети.
Синхронизация по событиям должна выполняться средствами ОС контроллера в фоновом режиме и быть не связанной с программой пользователя. Это позволяет использовать одну и ту же прикладную программу как на резервированных процессорах, так и в системах без резервирования.
Недостатком систем с резервированием замещением является наличие нерезервированных подсистем: канала синхронизации, программного драйвера резервирования и процессора, на котором этот др<