PROGRAM PLC_PRG
VAR
RTRIGInst: R_TRIG;
STATUS_BTN1: BOOL;
END_VAR
IF BTN1 = TRUE THEN (*Если нажали кнопку 1*)
RTRIGInst(CLK:= BTN1); (*Вызываем функцию генератора одиночного импульса по переднему фронту*)
IF RTRIGInst.Q = TRUE THEN
IF STATUS_BTN1 = TRUE THEN STATUS_BTN1 := FALSE; (*Если статус первого прожектора был "вкл", то отключаем*)
ELSE STATUS_BTN1 := TRUE; (*Иначе - включаем*)
END_IF
END_IF
ELSE RTRIGInst(CLK:= BTN1); (*Вызываем функцию генератора одиночного импульса по переднему фронту, чтобы сбросить в след. цикле*)
END_IF
IF STATUS_BTN1 = TRUE THEN RELAY1 := TRUE; (*Если статус первого прожектора "вкл", то включаем реле 1*)
ELSE RELAY1 := FALSE;
END_IF