I have VARs declared
trigger_pos_sensor_left : BOOL;
trigger_ticks : INT := 0;
trigger_sensor_rtrig : R_TRIG;
trigger_sensor_ftrig : F_TRIG;
delay_timer : TOF;
Program is :
IF (re = FALSE )THEN
trigger_sensor_rtrig(CLK := trigger_pos_sensor_left);
trigger_sensor_ftrig(CLK := trigger_pos_sensor_left);
delay_timer(IN := trigger_sensor_ftrig.Q, PT := T#10s);
trigger_ticks := 5;
re := TRUE;
END_IF
IF (trigger_sensor_rtrig.Q = TRUE) AND (delay_timer.Q = OFF) THEN
trigger_ticks := trigger_ticks - 1;
END_IF
If I understand it correctly r_trig, f_trig and tof are set and "activated" in the first IF and then everytime trigger_pos_sensor_left is activated it should activate set trigger_sensor_rtrig.Q to true and then decrement trigger_ticks by one. It actually does nothing. Why?