Our logic standard calls for driving the output directly from logic. We received some jobs where the supplier, un-beknownst to us, used the 5 rung standard. We found the logic takles longer to debug, troubleshoot and it easier for the tool to 'get caught in its own underware' costing us downtime for even minor problems. I think the origination of this standard was when GM generated the logic automatically, that was a fiasco, it worked well if the job had no changes, yeah right. The other theory is the people that came up with the standard got paid by the bit.
I have over 30 years experience programming PLCs, across several platforms, AB, Square D, TI, Siemans and AutomationDirect.
I have worked at my current position for over 10 years. This company always used the simpler standard. You can go to any of our plants and the logic is the same. The logic is ROBUST and I mean robust, you can troubleshoot our tooling without going online. Simple to modify, ECs are a regular routine across a product lifespan.
Under the 'GM' standard I once did a small teststand (3) motions it took 875 rungs of ladder to program to the customer standard, some of the compleity was due to moving data, and math calculations, but it was still overkill for such a small job.
With respect to the 'Safety' rung I find most programmers tend to create a 'safety' for each motion and find most, and I mean most 'safety' rungs contain the IDENTICAL set of instructions. I find some also put 'precondition' logic in the safety rung as well.
As for 'Preconditions' thats not rocket science the previous step being complete is typically all thats required. The 'Command' simply drives the output, so why do I need the rung to the same job as the next rung.
Our standard requires each rung be created with 3 parallel branches, auto, manual and the seal. The auto branch contains 'Cycle On' and the previous motion complete, or in some cases we will drive several outputs from the same condition. The next branch has 'Manual mode' the PB for the respective motion, and if required the same interlock as auto. The last branch has the output address, the not of the opposite motion, and not manual. Outside of the branches we put light screens clear, we or around this with the motion complete, power on, and not retract. (retract goes true when the process is complete).
The light screen in logic only prevents the logic from going true if the motion is not complete the light screen interrupts power.
All in all there is no benefit, you are right the logic is far more cluttered. The KISS principle is a good one. But you have to go by your company standards.
You used to be able to argue this was an inefficent use of memory, memory is cheap and plentiful, but its still inefficent.
Well that's my 2 cents.
For those of you who love this standard I used to preach the same sermon.