AstraRegul
Релиз 2025.08.15.00
×

FC_OR_DI | ЛОГИЧЕСКАЯ ОПЕРАЦИЯ ДИЗЪЮНКЦИИ ДЛЯ ТИПА DI

 
 
 
Алгоритм позволяет обрабатывать дискретные сигналы с использованием булевой логики.
 
Значение сигнала:
Значение сигнала на выходе блока (OUT.VALUE) соответствует логической операции дизъюнкции для входных сигналов (IN1.VALUE OR IN2.VALUE).
Если качество входного сигнала ниже качества, указанного на входе MIN_QUALITY, то значение этого сигнала считается недостоверным и принимает значение "FALSE". Недостоверное значение не исключается из логики обработки выходного значения.
 
Достоверный сигнал – сигнал, качество которого выше или равно минимального.
Недостоверный сигнал – сигнал, качество которого ниже минимального.
 
Качество сигнала:
Если качество хотя бы одного из входных сигналов выше или равно качеству, указанному на входе MIN_QUALITY, то качество сигнала на выходе блока (OUT.QUALITY) соответствует минимальному качеству достоверных сигналов.
Если качество всех входных сигналов ниже качества, указанного на входе MIN_QUALITY, то качество сигнала на выходе блока (OUT.QUALITY) соответствует максимальному качеству недостоверных сигналов.
 

Входные параметры

 
Параметр
Тип
Описание
IN1
Входной сигнал с качеством 1
IN2
Входной сигнал с качеством 2
MIN_QUALITY
Минимально допустимое качество входного сигнала, при котором значение считается достоверным
 

Выходные параметры

 
Параметр
Тип
Описание
OUT
DI
Выходной сигнал с качеством
 

Таблица состояний

Входное значение
Выходное значение
IN1.VALUE
IN1.QUALITY
IN1.VALUE
IN1.QUALITY
OUT.VALUE
OUT.QUALITY
TRUE
>MIN_QUALITY
TRUE
>MIN_QUALITY
TRUE
Math.min(IN1, IN2)*
TRUE
FALSE
TRUE
FALSE
TRUE
TRUE
FALSE
FALSE
FALSE
TRUE
>MIN_QUALITY
TRUE
<MIN_QUALITY
TRUE
IN1.QUALITY
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
FALSE
FALSE
FALSE
TRUE
<MIN_QUALITY
TRUE
>MIN_QUALITY
TRUE
IN2.QUALITY
TRUE
FALSE
FALSE
FALSE
TRUE
TRUE
FALSE
FALSE
FALSE
TRUE
<MIN_QUALITY
TRUE
<MIN_QUALITY
FALSE
Math.max(IN1, IN2)**
TRUE
FALSE
FALSE
FALSE
TRUE
FALSE
FALSE
FALSE
FALSE
* Math.min() – математическая операция выбора наименьшего значения из N сравниваемых параметров.
** Math.max() – математическая операция выбора наибольшего значения из N сравниваемых параметров.