5.6.3.1.1.3. ANLGVOTER | СХЕМА ГОЛОСОВАНИЯ 2oo3 ДЛЯ АНАЛОГОВЫХ ВХОДОВ
Функциональный блок ANLGVOTER представляет собой схему голосования для трех аналоговых входов. Он принимает три входных значения с состоянием данных и выводит срединное значение этих входных значений или безопасное значение.
Входные параметры
Входные параметры
|
Тип данных
|
Описание
|
IN1
|
REAL
|
Входное значение 1
|
IN1_STS
|
BOOL
|
Статус достоверности канала 1:
TRUE: данные достоверны
FALSE: данные не достоверны
|
IN2
|
REAL
|
Входное значение 2
|
IN2_STS
|
BOOL
|
Статус достоверности канала 2:
TRUE: данные достоверны
FALSE: данные не достоверны
|
IN3
|
REAL
|
Входное значение 3
|
IN3_STS
|
BOOL
|
Статус достоверности канала 3:
TRUE: данные достоверны
FALSE: данные не достоверны
|
DEL
|
REAL
|
Допустимый диапазон. Допустимое отклонение между входным и средним значениями (DEL > 0).
|
VAL
|
REAL
|
Безопасное значение. Выходное значение, когда входное значение является ошибочным.
|
DLT
|
TIME
|
Допустимое время. Допустимое время ожидания, в течение которого разница между входными значениями окажется вне допустимого диапазона DEL.
|
Выходные параметры
Выходные параметры
|
Тип данных
|
Описание
|
OUT
|
REAL
|
Выходное значение (значение, выбранное по мажоритарной выборке 2oo3)
|
NR
|
BOOL
|
Статус достоверности данных выходного значения:
TRUE: нормальное значение
FALSE: безопасное состояние
|
NR1
|
BOOL
|
Статус достоверности данных канала 1:
TRUE: нормальное значение
FALSE: данные имеют состояние BAD или разница между выходным значением и входным значением 1 больше чем допустимый диапазон
|
DIF1
|
REAL
|
Разница между выходным значением (OUT) и входным значением 1 (IN1)
|
NR2
|
BOOL
|
Статус достоверности данных канала 2:
TRUE: нормальное значение
FALSE: данные имеют состояние BAD или разница между выходным значением и входным значением 2 больше чем допустимый диапазон
|
DIF2
|
REAL
|
Разница между выходным значением (OUT) и входным значением 2 (IN2)
|
NR3
|
BOOL
|
Статус достоверности данных канала 3:
TRUE: нормальное значение
FALSE: данные имеют состояние BAD или разница между выходным значением и входным значением 3 больше чем допустимый диапазон
|
DIF3
|
REAL
|
Разница между выходным значением (OUT) и входным значением 3 (IN3)
|
Описание
Функциональный блок ANLGVOTER представляет собой схему голосования для трех аналоговых входов. Он принимает три входных значения с состоянием данных и определяет выходное значение как среднее значение этих входных значений, используя метод голосования 2oo3 (два из трех). Используя функциональный блок ANLGVOTER можно обнаружить не только неисправность входных каналов модуля, но и ошибки входного значения.
IN1, IN2 и IN3 являются аналоговыми входами с состоянием данных.
DEL – это диапазон допустимых отклонений между средним значением и каждым из входных значений. Так как эти три входных значения являются значениями измерений одного и того же объекта, предполагается, что их значения почти одинаковые. Если один из входов становится ошибочным, значительная разница возникает между входным значением и средним значением, так что можно определить ошибку. Вход n считается нормальным, если разница между входным значением INn и средним значением удовлетворяет следующим выражениям:
DEL/2 ≤ DIFn ≤ +DEL/2
DIFn = INn – OUT (среднее значение) {n = 1, 2 или 3}
VAL – значение выхода, если функциональный блок ANLGVOTER обнаруживает ошибку на входе.
DLT – это значение фильтра, используемое в функциональном блоке ANLGVOTER, которое разрешает отклонению превысить предел отклонения (DEL) в течение заданного времени. Путем установки правильного значения DLT, можно предотвратить появление ошибки на входе функционального блока в результате помех переходных процессов.
Взаимосвязь между входами и выходами
Функциональный блок ANLGVOTER проверяет состояние данных входных значений и разницу между средним значением и входными значениями (IN1, IN2 и IN3) для определения выходного значения (OUT). Функциональный блок ANLGVOTER принимает решение о наличии входной ошибки и устанавливает на выходе безопасное значение (VAL), а не входное значение, если состояние, при котором разница между средним значением и каждым из входных значений больше допустимого диапазона продолжается в течение периода времени DLT.
В следующей таблице приведена сводная информация о взаимосвязи между входами и выходами.
Входы
|
Выходы
| |||||
Состояние данных
|
Разница входных значений
|
Продолжающееся время
|
OUT
|
NR
|
NR1
|
NR2,
NR3
|
GOOD для всех входов
|
Все входы находятся внутри диапазона:
–DEL/2 ≤ DIFn ≤ +DEL/2
{n = 1, 2, 3}
|
Медианное значение IN1, IN2 и IN3
|
TRUE
|
TRUE
|
TRUE
| |
Только один вход вне диапазона (Пример: IN1 вышел за пределы диапазона)
|
Продолжающееся время
≤ DLT
|
Медианное значение IN1, IN2 и IN3 (*1)
|
TRUE
|
TRUE
|
TRUE
| |
Продолжающееся время
> DLT
|
Медианное значение IN1, IN2 и IN3 (*1)
|
TRUE
|
FALSE
|
TRUE
| ||
Два входа за пределами диапазона
|
Продолжающееся время
≤ DLT
|
Медианное значение IN1, IN2 и IN3
|
TRUE
|
TRUE
|
TRUE
| |
Продолжающееся время
> DLT
|
Безопасное значение (VAL)
|
FALSE
|
FALSE
|
FALSE
|
Входы
|
Выходы
| |||||
Состояние данных
|
Разница входных значений
|
Продолжаю-
щееся время
|
OUT
|
NR
|
NR1
|
NR2, NR3
|
Один вход BAD и два входа GOOD (Например: состояние данных IN1 имеет значение BAD, а состояние данных IN2 и IN3 имеет значение GOOD).
|
Разница между входами, состояние данных которых GOOD, находится внутри диапазона.
|
Медианное значение безопасного значения, IN2 и IN3. (*2)
|
TRUE
|
FALSE
|
TRUE
| |
Разница между входами, состояние данных которых GOOD, выходит за пределы диапазона.
|
Продолжающееся время
≤ DLT
|
Медианное значение безопасного значения, IN2 и IN3. (*2)
|
TRUE
|
FALSE
|
TRUE
| |
Продолжающееся время
> DLT
|
Безопасное значение (VAL)
|
FALSE
|
FALSE
|
FALSE
| ||
BAD для двух или
более входов.
|
Безопасное значение (VAL)
|
FALSE
|
FALSE (*3)
|
FALSE (*3)
|
*1: Когда только вход IN1 за пределами диапазона, IN1 не может быть средним значением, и поэтому выходным значением может быть либо IN2, либо IN3.
*2: Когда верхний предел или нижний предел входного диапазона задан как безопасное значение, то выходным значением будет IN2 или IN3, соответственно.
*3: Если состояние данных имеет значение GOOD только для одного входа, нельзя определить, является ли значение данных корректным, поэтому для NR1, NR2 и NR3 выводится значение FALSE.
Работа, когда входы являются нормальными
Если состояние всех входов GOOD и разница между входными значениями находится внутри допустимого диапазона, функциональный блок ANLGVOTER определяет, что входы являются нормальными. Входы считаются нормальными при следующих условиях:
IN1_STS = IN2_STS = IN3_STS = TRUE
-DEL / 2 ≤ DIFn ≤ DEL / 2 {n = 1, 2, 3}
Если входы являются нормальными, функциональный блок ANLGVOTER выбирает среднее значение из трех входных значений и вычисляет разницу между средним значением и каждым из входных значений (DIFn {n = 1, 2 и 3}). Так как все значения DIFn находятся внутри допустимого диапазона (-DEL / 2 ≤ DIFn ≤ DEL / 2), все входные значения считаются нормальными, и среднее значение выбирается в качестве выходного значения (OUT). Так как выходное значение (OUT) является нормальным, NR устанавливается в значение TRUE. Более того, так как все входные значения являются нормальными, то NR1, NR2 и NR3 принимают значение TRUE.
Работа, когда состояние входных данных BAD
Ошибки входов, которые можно определить с помощью датчиков и входных модулей, обозначаются как состояние BAD для значения входа. Функциональный блок ANLGVOTER использует безопасное значение, а не входное значение, для такого входа, так как очевидно, что этот вход является ошибочным.
Если состояние данных одного из входов становится BAD, функциональный блок ANLGVOTER проверяет разницу между двумя входными значениями, состояние данных которых имеет значение GOOD, и выполняет следующие действия:
Если разница находится внутри допустимого диапазона, среднее значение двух входных значений со статусом GOOD и безопасного значения подается на выход.
Если разница превышает допустимый диапазон, а продолжительность этого состояния находится внутри допустимого времени, среднее значение двух входных значений со статусом GOOD и безопасного значения подается на выход.
Если разница превышает допустимый диапазон в течение времени, превышающего допустимый период, в качестве выхода используется безопасное значение.
Если разница между входными значениями, состояние данных которых GOOD, находится внутри допустимого диапазона, выходное значение является нормальным, таким образом NR принимает значение TRUE. NRn, соответствующий ненормальному входному значению, принимает значение FALSE, и NRm, соответствующий двум нормальным входным значениям, принимает значение TRUE {n, m = 1, 2 или 3}.
Если состояние, при котором разница между входными значениями, состояние данных которых GOOD, превышает допустимый диапазон (|разница между входными значениями GOOD| > DEL) в течение времени, большего чем допустимое время (DLT), функциональный блок ANLGVOTER считает, что эти входы стали неисправными и выдает на выходе безопасное значение (VAL). NR и NRn {n = 1, 2 и 3} принимают значение FALSE.
Если данные двух или более входов имеет состояние BAD, функциональный блок ANLGVOTER принимает решение, что нормальное значение не может быть выходным значением, и безопасное значение (VAL) используется в качестве выходного значения.
Так как выходное значение является ненормальным, NR принимает значение FALSE. Более того, все NRn принимают значение FALSE {n = 1, 2 и 3}.
Работа, когда разница между входными значениями превышает допустимый диапазон
Если существует значительная разница между входными значениями, вероятно, что один из входов стал неисправным. Для предотвращения случаев временных неисправностей, вызываемых шумом и т.д., функциональный блок ANLGVOTER не принимает решение о том, что вход неисправен, пока состояние ошибки не будет продолжаться в течение времени, превышающего допустимое время (DLT).
Если состояние, при котором разница между только одним входным значением и средним значением (DIFn) превышает допустимый диапазон (|DIFn| > DEL / 2), продолжается дольше, чем допустимое время (DLT), функциональный блок ANLGVOTER решает, что только рассматриваемое входное значение является ошибочным, и выводит среднее значение.
NRn, соответствующий входному значению (INn), которое значительно отличается от среднего значения, становится FALSE. Так как выходное и другие входные значения являются нормальными, NR и NRm становятся TRUE {n, m = 1, 2, 3 и n ≠ m}.
Если состояние, при котором разница между средним значением и двумя из трех входных значений (DIFn) {n =1, 2 или 3} превышает допустимый диапазон (|DIFn| > DEL / 2) и продолжается дольше, чем допустимое время (DLT), функциональный блок ANLGVOTER выводит безопасное значение (VAL) {n =1, 2 или 3}. Так выходное и все входные значения являются ненормальными, NR, NR1, NR2 и NR3 принимают значение FALSE.
Установите значения таким образом, чтобы входное значение при появлении ошибки в каждом входном канале и безопасное значение (VAL) функционального блока ANLGVOTER совпадали друг с другом. Это необходимо сделать, поскольку функциональный блок ANLGVOTER при появлении ошибки использует не входное значение, а безопасное значение (VAL), установленное для входного канала, если входной канал становится неисправным.
|