Опишите пользовательский сценарий - в каких случаях в вашем проекте должна происходить деактивация тревоги?
Вид для печати
alekstaniВот меня это и бесит! Потому что в домашнем СПК у меня тревоги по датчикам давления воды в квартире должны отрубаться, когда вода по вводу перекрыта.Цитата:
А нельзя как-то это обойти? Я имею ввиду скидывать принудительно тревогу в случае ее деактивации, например используя какой-нибудь метод.
А фиг: если, например отключили горячую воду в доме и её давление упало и если я воду перекрыл (и ПЛК про это знает) - то тревога так и будет висеть (
В процессе наладки оборудования и отладки ПО часто требуется включать/отключать ряд аварий. Чтобы их сообщения не висели в банере и таблице аварийных сообщений их нужно оперативно убрать, не останавливая оборудование, которое находится также под управлением ПЛК.
Другая ситуация: станция СОЖ обслуживает 10 станков, один может быть выведен из работы (например в ремонт) и СОЖ подаваться в него уже не будет, но датчики уровня при этом находятся под контролем ПЛК. Таким образом, если наладчик забудет деактивировать аварии датчиков в их нормальном состоянии, начнет например их снимать, то мы получим аварийные сообщения, которые снять уже не сможем. Станцию при этом отключать нельзя и ресетить ПЛК тоже, т.к. оставшиеся станки в работе. Если бы такая же авария произошла в процессе работы этого станка, то это была бы нормальная ситуация, этот станок был бы исключен из процесса подачи СОЖ, станция бы просто перешла на другой станок и аварийное сообщение было бы к месту, сигнализируя о неисправности датчика.
Может, вместо того, чтобы использовать механизм деактивации, заложить в условия всех тревог, которые может потребоваться отключать, те переменные, которые вы сейчас используете для деактивации?
Т.е. вместо условия
использоватьКод:GVL.ACT_Water_Level_ < PV.SET_W_Lvl_AlarmLow
а в столбце Деактивация привязку убрать.Код:GVL.ACT_Water_Level_ < PV.SET_W_Lvl_AlarmLow AND PV.ErrorsArray[19].enabled
Тогда (с учетом способа подтверждения REP) если PV.ErrorsArray[19].enabled = FALSE, то ваша тревога исчезнет из таблицы/баннера, и не сможет появиться, пока PV.ErrorsArray[19].enabled не примет значение TRUE.
Тоже вариант. Спасибо
К сожалению, меняется механизм наблюдения с нижнего предела на дискретный и параметр гистерезиса исчезает. Следовательно, замучает дребезг.