A programmable logic controller (PLC) uses a programmable memory to store instructions for controlling machines and processes. It monitors inputs, executes logic functions, and controls outputs to automate industrial processes. The PLC consists of a central processing unit, input/output modules, power supply, and programming devices. It provides flexibility to change control programs easily compared to rewiring relay panels.