Programmable logic controllers (PLCs) are special purpose computers used in industrial automation to monitor inputs and control outputs. A PLC replaces older relay-based automation and provides more flexibility than hardwired systems. PLCs have a CPU, memory, power supply, and input/output modules to interface with sensors and actuators. They are programmed using ladder logic or other programming languages to execute control programs. Common applications of PLCs include process automation, manufacturing equipment, and building systems.