Programmable Logic Controllers (PLCs) are general-purpose control devices often used in plants or manufacturing systems. They provide both a useful and efficient control solution for a variety of applications, and can accept inputs from a variety of devices, such as motion detectors, joysticks and buttons, amongst others. In turn, PLCs are able to produce outputs that control lights, motors and sound effects, amongst others.