Prior to programmable logic controllers, timing functions in industrial automation were implemented using various mechanical and electromechanical timers. Programmable logic controllers allowed timing functions to be programmed digitally, eliminating the need for external timers. A PLC timing instruction counts intervals of a selectable time base and uses bits to indicate when timing conditions are met. Standard timing functions like on delay, off delay, interval, retentive and symmetrical/asymmetrical recycle can be created using combinations of timing instructions, and cascading timers allows complex sequences.