ielkhatib,
Never use timers to control any sequence. someone will always speed up / slow down cylinders, change timer values,modify the program and you will end up with a mess.
since you did not specify the plc, may i suggest this.
create an integer data register for the step sequence in steps of 10.
initialize the program for autocycle.
step 10 load the part and detect the part, hit the palm buttons to start the cycle
increment the step to 20.
step 20 clamp the part and wait for clamp prox confirmation, increment to step 30
step 30......
and so on.
if the program needs modification let's say after step 50, make the step 51.
51 then increments to step 60.
in regards to a cycle pause, use a cycle pause bit via a pushbutton. Not a timer. create a flip flop bit.
for alarms, use a set of bit registers and latch each fault bit. for an ab plc, do NOT use the sigh bit. use a scrolling for next loop to display each fault/alarm on the screen by using a timer to display the fault.
hope this helps.
james