I wasnt trying to actually match the timing just show another way to make the cylinders extend for a time period using one timer...ie less rungs. The warning light also used the same timer, add an LEQ and it also can be turned off at any point.
I used a flip flop to cycle the extend for manual requests, the counter determines how many times....the counter preset can be setup to use an N register so it can be changed via an HMI etc.
The application seemed simple enough. Extend the cylinder every 10 or 15 minutes....this time could be set by use of a register and am HMI or just preset. Turn on light when in auto and turn on warning light when about to extend.
I "think" I basically fulfilled those requirements except for incorporating the warning light in manual which could be done by adding a branch to warning light rung. I used 6 rungs to basically do what was stated....albeit not perfectly. If I am correct with my code in AUTO the ram will extend for 10 secs once every 10 minutes. The warning light will come on 3 secs prior to the extend and stay on until the timer times out and cylinder output goes off, then timer should start timing again....the timer values can be whatever. The manual request PB when pushed stops the AUTO sequence and starts the flip flop timers that will extend the ram and hold in place then retract...wait then extend again...then repeat until counter has seen the ram extend 4 times. That part may need some rework because it may interrupt the last cycle. Did this kind of fast and did not test it but basically I have done things similar so should be close enough to offer some ideas.
Just offering simple ideas (which I am good at) to assist in learning other ways to accomplish something.