Спасибо, Евгению Кислову и Cs-Cs, разобрался)
В примере
есть полезная ссылочка.
// См. подробнее в этом видео: https://youtu.be/dXH3jG0i1Kg?t=2125
Вид для печати
Спасибо, Евгению Кислову и Cs-Cs, разобрался)
В примере
есть полезная ссылочка.
// См. подробнее в этом видео: https://youtu.be/dXH3jG0i1Kg?t=2125
Здравствуйте.
Кто подскажет, по какому условию eCurrTransition : AlarmManager.AlarmStateTransition; возвращается к 0?
До первой сработки аварии eCurrTransition = 0
Выполнение условия в группе тревог eCurrTransition = 1
Возврат к предаварийной ситуации eCurrTransition = 2
Квитирование eCurrTransition = 4
Проблема в том, что в группе тревог есть условие задержки по времени.
Условие срабатывает один раз, когда eCurrTransition = 0. В дальнейшем срабатывание тревоги происходит без задержки по времени.
Выложите простейший проект с одной тревогой, на котором это можно будет повторить.
Вложение 62145
eCurrTransition = 2 когда порог превышен, а время еще не вышло.
С отработкой задержки не вижу проблем.
Появление сообщения в таблице и активация Crach_Pump у меня всегда происходит с задержкой:
https://ftp.owen.ru/CoDeSys3/95_Inte...eninAlarms.mp4
Вы ожидаете, что в этот момент eCurrTransition будет равно -1?Цитата:
eCurrTransition = 2 когда порог превышен, а время еще не вышло.
Но тут есть нюанс - блок вызывается событийно самим кодесисовским AlarmManager'ом.
В настройках класса тревог установлено 3 галочки - соответственно, вы можете "увидеть" 3 состояния (1, 2, 4) и еще 0 до первого срабатывания тревоги.
Вложение 62147
Если поставить галочку ACK - то можно будет увидеть еще состояние 3.
Я могу предположить, что -1 (Pending) используется где-то внутри библиотеки AlarmManager, и в своем коде вы увидеть это значение не сможете.
Думаю, что такого условия нет и переменная перейдет в 0 только после перезагрузки контроллера и будет в нем до тех пор, пока тревога еще ни разу не активируется.Цитата:
Кто подскажет, по какому условию eCurrTransition : AlarmManager.AlarmStateTransition; возвращается к 0?
Евгений, спасибо за развернутый ответ.
Не совсем согласен с такой логикой работы, т.к. если по условию "Авария" - это два параметра "Величина" и "Время", то "Квититрование" не должно изменять это условие.
Но имеем то, что имеем.
С остальным согласен. Еще раз спасибо.
Добрый день!
Возможно у кого-то возникала такая проблема: Тревога "поднимается" по списку, хотя имеет время идущее дальше по таблице(Проблема повторяется неоднократно). В чем может быть причина такой ошибки?
На скриншоте Веб-визуализация. Работаю в CoDeSys 3.5 SP17 Patch 3 +
Прибор СПК107.
Заранее спасибо за ответ!
Вложение 66719
Евгений, Здравствуйте. Просьба подсказать в чем может быть проблема. Codesys 3.5 SP17 проект для СПК110.
Ситуация. Открываю вкладку AlarmGroup там пусто, должен там увидеть список ошибок, ноВложение 70444 пусто... Нет возможности добавить заново. Screen прилагаю.
Группа ошибок привязана к списку текстов. Список текстов, заполнен Вложение 70445 (см. screen).
Добрый день.
Выложите ваш проект - посмотрим, в чем дело.