FUNCTION_BLOCK Flasor_ZamanRolesi
VAR_INPUT
SAMPLE_T {S7_sampletime := 'true';
S7_visible := 'false';
S7_link := 'false'
} :REAL := 0.1;
Enable {S7_dynamic:='true'}:BOOL;
END_VAR
VAR_IN_OUT
StartZamani {S7_dynamic:='true'}:REAL;
StopZamani {S7_dynamic:='true'}:REAL;
END_VAR
VAR_OUTPUT
OUT {S7_dynamic:='true'}:BOOL;
END_VAR
VAR
StartTmr :TIMER_P;
StopTmr :TIMER_P;
StartTmrQ :BOOL;
StopTmrQ :BOOL;
M1Stat :BOOL;
M2Stat :BOOL;
END_VAR
StartTmr(SAMPLE_T := SAMPLE_T
,TIME0 := StartZamani // IN: REAL
,MODE := 2 // IN: INT
,RESET := NOT Enable // IN: BOOL
,I0 := Enable AND NOT StopTmrQ // IN: BOOL
);
StartTmrQ := StartTmr.Q0; // OUT: BOOL
StopTmr (SAMPLE_T := SAMPLE_T
,TIME0 := StopZamani // IN: REAL
,MODE := 2 // IN: INT
,RESET := NOT Enable // IN: BOOL
,I0 := Enable AND StartTmrQ // IN: BOOL
);
StopTmrQ := StopTmr.Q0; // OUT: BOOL
OUT :=Enable AND NOT StartTmrQ ;
END_FUNCTION_BLOCK