This document provides an overview of programmable logic controllers (PLCs) including their history, components, programming, and applications. It discusses how PLCs were developed to provide flexible, cost-effective control compared to hardwired relay systems. The key components of a PLC including the central processing unit, input/output modules, power supply, and memory are described. Programming of PLCs using ladder logic, function block diagrams and other methods is also covered. Finally, common input and output devices used with PLCs such as switches, encoders and temperature sensors are listed.