page_title: Programmable logic controller
section_title: Functionality
hierarchical_section_title: Programmable logic controller / Functionality
caption_attribution_description: English: CPU 416-3 from series Siemens Simatic S7-400. Русский: Корзина ПЛК SIMATIC S7-400. Блок питания PS407 4A (6ES7407-0DA01-0AA0) центральный процессор CPU 416-3 (6ES7416-3XL00-0AB0) интерфейсный модуль, передатчик IM 460-0 (6ES7460-0AA01-0AB0) коммуникационный процессор CP 443-1 (6GK7443-1EX11-0XE0) на универсальной монтажной стойке UR2 (6ES7400-1JA01-0AA0)
context_page_description: A programmable logic controller or programmable controller is an industrial digital computer which has been ruggedized and adapted for the control of manufacturing processes, such as assembly lines, or robotic devices, or any activity that requires high reliability, ease of programming and process fault diagnosis.
  PLCs can range from small modular devices with tens of inputs and outputs, in a housing integral with the processor, to large rack-mounted modular devices with a count of thousands of I/O, and which are often networked to other PLC and SCADA systems.
  They can be designed for many arrangements of digital and analog I/O, extended temperature ranges, immunity to electrical noise, and resistance to vibration and impact. Programs to control machine operation are typically stored in battery-backed-up or non-volatile memory.
  PLCs were first developed in the automobile manufacturing industry to provide flexible, rugged and easily programmable controllers to replace hard-wired relay logic systems. Since then, they have been widely adopted as high-reliability automation controllers suitable for harsh environments.
context_section_description: The main difference from most other computing devices is that PLCs are intended-for and therefore tolerant-of more severe conditions (such as dust, moisture, heat, cold), while offering extensive input/output (I/O) to connect the PLC to sensors and actuators. PLC input can include simple digital elements such as limit switches, analog variables from process sensors (such as temperature and pressure), and more complex data such as that from positioning or machine vision systems. PLC output can include elements such as indicator lamps, sirens, electric motors, pneumatic or hydraulic cylinders, magnetic relays, solenoids, or analog outputs. The input/output arrangements may be built into a simple PLC, or the PLC may have external I/O modules attached to a fieldbus or computer network that plugs into the PLC.
  The functionality of the PLC has evolved over the years to include sequential relay control, motion control, process control, distributed control systems, and networking. The data handling, storage, processing power, and communication capabilities of some modern PLCs are approximately equivalent to desktop computers. PLC-like programming combined with remote I/O hardware, allow a general-purpose desktop computer to overlap some PLCs in certain applications. Desktop computer controllers have not been generally accepted in heavy industry because the desktop computers run on less stable operating systems than PLCs, and because the desktop computer hardware is typically not designed to the same levels of tolerance to temperature, humidity, vibration, and longevity as the processors used in PLCs. Operating systems such as Windows do not lend themselves to deterministic logic execution, with the result that the controller may not always respond to changes of input status with the consistency in timing expected from PLCs. Desktop logic applications find use in less critical situations, such as laboratory automation and use in small facilities where the application is less demanding and critical.
caption: PLC system in a rack, left-to-right: power supply unit (PSU), CPU, interface module (IM) and communication processor (CP).
exif: {"Image ImageDescription": "OLYMPUS DIGITAL CAMERA", "Image Make": "OLYMPUS IMAGING CORP.", "Image Model": "SP500UZ", "Image Orientation": "Horizontal (normal)", "Image XResolution": "72", "Image YResolution": "72", "Image ResolutionUnit": "Pixels/Inch", "Image Software": "ACD Systems Digital Imaging", "Image DateTime": "2010:06:22 00:11:26", "Image YCbCrPositioning": "Centered", "Image ExifOffset": "272", "Thumbnail Compression": "JPEG (old-style)", "Thumbnail JPEGInterchangeFormat": "2903", "Thumbnail JPEGInterchangeFormatLength": "5803", "EXIF ExposureTime": "1/60", "EXIF FNumber": "14/5", "EXIF ExposureProgram": "Program Creative", "EXIF ISOSpeedRatings": "80", "EXIF ExifVersion": "0221", "EXIF DateTimeOriginal": "0000:00:00 00:00:00", "EXIF DateTimeDigitized": "0000:00:00 00:00:00", "EXIF ComponentsConfiguration": "YCbCr", "EXIF CompressedBitsPerPixel": "2", "EXIF ExposureBiasValue": "0", "EXIF MaxApertureValue": "297/100", "EXIF MeteringMode": "Pattern", "EXIF LightSource": "Unknown", "EXIF Flash": "Flash did not fire, compulsory flash mode", "EXIF FocalLength": "63/10", "EXIF SubSecTime": "204", "EXIF FlashPixVersion": "0100", "EXIF ColorSpace": "sRGB", "EXIF ExifImageWidth": "1670", "EXIF ExifImageLength": "2580", "EXIF FileSource": "Digital Camera", "EXIF SceneType": "Directly Photographed", "EXIF CustomRendered": "Normal", "EXIF ExposureMode": "Auto Exposure", "EXIF WhiteBalance": "Auto", "EXIF DigitalZoomRatio": "0", "EXIF SceneCaptureType": "Standard", "EXIF GainControl": "None", "EXIF Contrast": "Normal", "EXIF Saturation": "Normal", "EXIF Sharpness": "Normal"}