Определение срабатывания уставок

Типовые задачи  Предыдущий  Следующий

Общие сведения

Наименование: ASK_LIM.

Тип выхода: логический.

Количество входов: 2 или 3.

Примечания по входам

порядок входов: «Отслеживаемые уставки», «Канал», «Форсированное определение»;

признак инверсии второго входа («Канал») игнорируется;

«Отслеживаемые уставки» — определяет перечень отслеживаемых уставок; данный вход задается как сумма следую­щих чисел:

1 — LT;

2 — HT;

4 — L;

8 — H;

16 — LL;

32 — HH.

«Канал» — ссылка на вход или аналоговый выход;

«Форсированное определение» — блокирует исключение уставок канала из логики работы (если равно логической единице); можно не указывать — по умолчанию равно логическому нулю.

Функционирование

значение выхода равно логической единице, если у канала, ука­зан­но­го во втором входе («Канал»), сработала одна из уставок, зако­ди­рованная значением первого входа («Отслеживаемые уставки»), и:

уставки по данному каналу не исключены из логики в работающей стадии циклограммы;

состояние третьего входа  («Форсированное определение») равно логической единице;

значение выхода равно логическому нулю, если:

у канала, ука­зан­но­го во втором входе («Канал»), уставки, зако­дированные значением первого входа («Отслеживаемые уставки»), являются несрабо­тав­ши­ми;

у канала, ука­зан­но­го во втором входе («Канал»), уставки исключены из логики в работающей стадии циклограммы, а состояние третьего входа  («Форсированное определение») равно логическому нулю;

значение первого входа («Отслеживаемые уставки») меньше или равно 0 или больше или равно 64;

выход имеет неинициализированное состояние, если хотя бы один из входов имеет неинициализированное состояние;

значение выхода недостоверно, если хотя бы один из входов имеет недостоверное значение (даже если другой вход имеет неинициализированное состояние).

Примеры использования

BLOCK1 = ASK_LIM(20; AI1.1)

// BLOCK1 = 1, если у входа AI1.1 сработала уставка L или LL.

// =======================================

B10 = ASK_LIM(2; DI1.1) 

// Использование алгоблока с DI каналом:

// B10 = 1, если у DI1.1 сработала уставка HT.

// =======================================

BLOCK2 = ASK_LIM(BLOCK5; AI1.2)

// Использование в первом аргументе значения алгоблока.

// =======================================

B1 = ASK_LIM(12; AI1.1)

B2 = RESULT(DO1.1; B1)

// Если сработала одна из предупредительных уставок 

// у канала AI1.1, то логическое состояние канала DO1.1

// будет равно 1.

// =======================================

// Реализация внешней звуковой сигнализации

B1 = ASK_LIM(60; AI1.1) // Определение сработанных уставок канала AI1.1

B2 = ASK_LIM(60; AI1.2) // Определение сработанных уставок канала AI1.2

B3 = OR(B1; B2) // Формула срабатывания

B4 = DELAY(B3; 30; 1) // Задержка включения 3 с

B5 = DELAY(B4; 20; 0) // Задержка отключения 2 с

B6 = FORCE_OFF(B5; 6000) // Принудительное отключение через 10 мин

B7 = RESULT(DO1.1; B6) // Установка логического значения в DO1.1

B8 = FRN(B7; 1) // Старт прерываний в момент срабатывания

B9 = FRQ(50; 30; 1; B8) // Задание прерывания 5 с включен, 3 с отключен

B10 = CLR_ACK(B1; B2) // Возобновление сигнализации 

B11 = ACK(1; B9; B3; DI1.4; B10) // Задание сигнализации (звуковой)

B12 = PHY_DSC(DO1.1; B11) // Установка физического значения DO1.1.

alarm_fbd

Файл для импорта: ack.help

// =======================================

// Реализация блокировки, если сработали три параметра из пяти

B10 = ASK_LIM(8; AI1.1)

B20 = ASK_LIM(8; AI1.2)

B30 = ASK_LIM(8; AI1.3)

B40 = ASK_LIM(8; AI1.4)

B50 = ASK_LIM(8; AI1.5)

// Определение срабатывания уставки Н у каналов AI1.1-AI1.5

B60 = NOFM(B10; B20; B30; B40; B50; 3)

B70 = RESULT(DO1.1; B60)

B80 = PHY_DSC(DO1.1)

// Вывод сигнала блокировки на дискретный выходной канал DO1.1.

block3of5_fbd

Файл для импорта: block3of5.help