Вход

Просмотр полной версии : Кнопка с самосбросом состояния



Director
30.06.2025, 14:59
Добрый день.
Имеется необходимость создания кнопки со сбросом состояния к следующему циклу.
Должно быть аналогично коду на ST.
IF Button = true THEN
Action:=True; // Установка флага или выполнение программной логики за один цикл.
Button:=False; // Сбрасываем состояние и ожидаем следующего нажатия.
END_IF;

Использование конструкции Button => Action (Ответвление на прочую логику) && SET RTRIG => Button (Должен быть сброс на втором цикле от RTRIG)
Данная конструкция иногда срабатывает в режиме дебагга, но после небольших манипуляций логика нарушается и программа ругается на рекурсию чтения и записи даже после возвращения в состояние когда все это работало.
Интересует именно случай установки флага из 0 в 1, без использования инверсии состояния флага по нажатию на кнопку (функционал разработки под пр205)

Dimensy
30.06.2025, 15:14
Так, а Button - это физическая внешняя кнопка или кнопка на панели ПРки? И каким макаром сбрасывать состояние Action?

Director
30.06.2025, 15:26
Button это кнопка устанавливающая TRUE для сброса состояния аварии RS триггера. Где Set устанавливается состояния аварии. Естественно, пока активна авария мы не должны сбрасывать ее состояние. Имеется ввиду случай когда аварийное состояние исчезло, но имеется ожидание подтверждения сброса оператором.
Нарисована эта кнопка в GUI пр205.
Следующий цикл необходимо иметь состояние флага FALSE.
Иначе это нужно собственноручно возвращать состояние флага сброса в 0.

Dimensy
30.06.2025, 15:30
GUI настраиваете таким образом

84618

А на холсте кнопку оформляете так

84619

Director
30.06.2025, 15:47
Спасибо. То что нужно, тему можно считать закрытой.