(* =============================================================================== Project : PLC_Library Device : - Path : Общие Name : Pulse_Switch Type : FUNCTION_BLOCK =============================================================================== *) FUNCTION_BLOCK Pulse_Switch (* Формирует импульсы (500 мс) по переднему и заднему фронту управляющего сигнала. *) VAR_INPUT Switch_ctrl: BOOL; (* Управляющий сигнал *) END_VAR VAR_OUTPUT Switch_on: BOOL; (* Импульс 500 мс при переходе Switch_ctrl 0->1 *) Switch_off: BOOL; (* Импульс 500 мс при переходе Switch_ctrl 1->0 *) END_VAR VAR R_tr_1: R_TRIG; F_tr_1: F_TRIG; tp_on: TP:=(PT:=t#500ms); tp_off: TP:=(PT:=t#500ms); END_VAR (*----- IMPLEMENTATION -----*) R_tr_1(CLK:=Switch_ctrl); tp_on(IN:=R_tr_1.Q, Q=>Switch_on); F_tr_1(CLK:=Switch_ctrl); tp_off(IN:=F_tr_1.Q, Q=>Switch_off); END_FUNCTION_BLOCK