A controller may be said to be as a control system which is required to control a sequence of events, maintain some variable constant or follow some prescribed change.For example: The control system for an automatic drilling machine, which might be required to control the process in following manner:i. Lowering the drill when work piece is in position.ii. Start drilling when the drill reaches the work piece.iii. Stop drilling when the drill has produced the required depth of hole.iv. Retract the drill.v. Switch off and wait for the next work piece to be put on the position before repeating the operation.A programmable logic controller (PLC) is a special form of microprocessor based controller that uses programmable memory to store instructions and to implement functions such as logic, sequencing, timing, counting, and arithmetic in order to control machines and process.