A programmable logic controller, PLC, or programmable controller is a digital computer typically used for automation of industrial electromechanical processes, such as control of machinery on factory assembly lines. PLCs are designed for multiple arrangements of digital and analog inputs and outputs, extended temperature ranges, immunity to electrical noise, and resistance to vibration and impact.