PLCs originated in the late 1960s in the United States automotive industry as solid-state replacements for hard-wired relay logic, cam timers, drum sequencers, and dedicated closed-loop controllers. Dick Morley is credited with inventing the first PLC, the Modicon 084, delivered to General Motors in 1968. The driving requirements were tolerance to industrial environments, reliability, compactness, low maintenance, and easy reconfiguration by loading new code rather than rewiring cabinets, as documented in the Automation, Systems, and Instrumentation Dictionary cited by NIST SP 800-82r3.
Modern PLCs retain the hard real-time guarantee of their ancestors: output results must be produced in response to input conditions within a bounded time so that unintended operations do not result. Programs are typically stored in battery-backed or non-volatile memory, with execution driven by a cyclic scan of inputs, logic, and outputs. Contemporary units layer on Ethernet, web, SQL, and MQTT connectivity, integrated HMI panels, and all-in-one controller-plus-panel form factors, but the core function remains deterministic discrete and continuous control of industrial equipment.
A programmable logic controller (PLC) is a ruggedized industrial computer used to automate manufacturing processes and machinery. PLCs execute user-programmed instructions stored in non-volatile memory to perform input/output control, logic, timing, counting, PID control, communication, and data processing under hard real-time constraints. The category spans compact modular devices with tens of I/O to rack-mounted systems with thousands of networked points.
Chapter 1 / 06
Fundamentals and Working Principle
A PLC is defined by NIST, drawing on The Automation, Systems, and Instrumentation Dictionary as cited in NIST SP 800-82r3, as a solid-state control system that has a user-programmable memory for storing instructions for the purpose of implementing specific functions such as I/O control, logic, timing, counting, three-mode (PID) control, communication, arithmetic, and data and file processing. This definition, propagated through NISTIR 8183 and its revisions, frames the PLC not merely as a relay replacement but as a general-purpose industrial computer specialized for deterministic control tasks.
The working principle is the classic scan cycle. The PLC receives information from connected sensors or input devices, processes the data, and triggers outputs based on pre-programmed parameters. Depending on the inputs and outputs, a PLC can monitor and record run-time data such as machine productivity or operating temperature, automatically start and stop processes, and generate alarms if a machine malfunctions. The cycle repeats at a fixed or near-fixed period, which is what allows the controller to satisfy hard real-time constraints where output results must be produced in response to input conditions within a limited time.
Inputs and outputs are the physical interface between the controller and the machine. Input devices include sensors, switches, and meters; output devices include relays, lights, valves, and drives. I/O can be either analog or digital, and users can mix and match a PLC's I/O modules to obtain the right configuration for an application. The CPU stores and processes program data, while the I/O modules provide information to the CPU and trigger specific results, separating deterministic logic execution from field wiring concerns.
Communications extend the PLC beyond the local machine. A PLC may need to connect with other kinds of systems; for example, exporting application data to a supervisory control and data acquisition (SCADA) system that monitors multiple connected devices. PLCs offer a range of ports and communication protocols to ensure that the PLC can communicate with these other systems. In the Industrial Internet of Things (IIoT) and Industry 4.0 context, programmable controllers are called upon to communicate data via web browser, connect to databases via SQL, and to the cloud via MQTT.
The Human Machine Interface (HMI) is the operator's window into the running logic. In order to interact with the PLC in real time, users need an HMI; these operator interfaces can be simple displays with a text readout and keypad, or large touchscreen panels more similar to consumer electronics. An All-in-One PLC integrates the controller with the HMI panel, creating a compact, easy-to-use automation solution in which users no longer need to establish separate PLC-to-panel communications and can program both the ladder logic and HMI design in a single software environment, saving time, reducing wiring, and cutting the cost of purchasing multiple devices.
I/O modules bridge field sensors and actuators to the CPU and may be analog or digital.
Communications include serial, fieldbus, industrial Ethernet, and IIoT protocols such as MQTT and SQL links.
HMI may be a separate panel or integrated into an All-in-One PLC+panel form factor.
Programs reside in battery-backed or non-volatile memory and are typically written in ladder logic or C.
Hard real-time execution bounds the time between input change and output reaction.
Chapter 2 / 06
Specifications and Key Parameters
Specification sheets for PLCs share a common envelope of parameters even when numeric values differ widely between vendors and form factors. The key parameters are the count and type of I/O, the scan time or cycle time, the program memory size, the supported instruction set, the communication interfaces, the environmental ratings, and the form factor. The values for each parameter vary by model and by vendor, so any concrete number must be tied to a specific product line rather than to the category as a whole.
The table below consolidates the parameter categories that appear across the cited sources. Where a specific numeric value is not present in the sources, the cell reads "varies by model." This convention prevents the conflation of one vendor's lineup with the entire category. Each row is annotated with the source so that downstream readers can trace claims back to the originating document.
A PLC 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 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. This breadth, from tens to thousands of points, is itself a key specification that informs chassis selection.
The I/O channel count is the headline number for procurement. Small modular devices offer tens of I/O, while large rack-mounted modular devices offer thousands of I/O, and these larger units are often networked to other PLCs and SCADA systems. The I/O mix (digital versus analog, input versus output, voltage class, current rating) is part of the same parameter set and is selected per application.
Environmental and mechanical specifications deserve equal weight with electrical ones. PLCs are designed for extended temperature ranges, immunity to electrical noise, and resistance to vibration and impact. These ratings matter in automotive cells, food and beverage lines, pharmaceutical monitoring systems, and outdoor installations, and they are typically expressed in vendor datasheets as operating temperature range, shock and vibration conformance to IEC 60068, and electromagnetic compatibility conformance to IEC 61000 series. Where the cited sources do not quote a numeric rating, the value varies by model.
I/O count, mix, and voltage class are selected per application.
Scan or cycle time is the hard real-time performance figure.
Memory capacity, instruction set, and supported languages are tied to firmware and toolchain.
Environmental ratings matter as much as electrical specifications in field deployment.
Parameter
Typical value or range
Source
Input/output count
Small modular devices: tens of I/O; large rack-mounted modular devices: thousands of I/O, often networked to other PLC and SCADA systems
S2 (Wikipedia)
I/O types
Digital and analog I/O in many arrangements
S2 (Wikipedia)
Environmental ratings
Extended temperature ranges, immunity to electrical noise, resistance to vibration and impact
S2 (Wikipedia)
Form factor
Small modular with processor integral to housing, up to large rack-mounted modular
S2 (Wikipedia)
Program memory
Battery-backed or non-volatile; capacity varies by model
S2 (Wikipedia)
Programming languages
Ladder Logic (traditional, mimics relay schematics) and C; vendor-supplied control programming software
I/O control, logic, timing, counting, three-mode (PID) control, communication, arithmetic, data and file processing
S1 (NIST CSRC)
External connectivity
SCADA, web browser, SQL databases, MQTT cloud data (IIoT/Industry 4.0 context)
S3 (Unitronics)
HMI integration
Separate HMI (text display and keypad, or touchscreen) or All-in-One PLC+panel
S3 (Unitronics)
Chapter 3 / 06
Types and Configurations
PLCs are typically classified by physical form factor and by the way the CPU and I/O are packaged. The form-factor spectrum runs from compact units that integrate the processor and a fixed or expandable set of I/O in a single housing, through modular mid-range systems, to large rack-mounted systems in which the CPU, power supply, communication modules, and I/O modules each occupy designated slots. This taxonomy is consistent with the description of small modular devices with tens of I/O integral to the processor, contrasted with large rack-mounted modular devices with thousands of I/O.
Beyond the chassis, PLCs are also classified by their relationship to the operator interface. Traditional installations pair a separate PLC with a separate HMI panel. The All-in-One PLC integrates the controller with the HMI panel, creating a compact, easy-to-use automation solution in which users no longer need to establish PLC-to-panel communications and can program both the ladder logic and HMI design in a single software environment. This approach saves time, reduces wiring, and cuts the cost of purchasing multiple devices.
A further axis of variation is the programming environment. Most PLC programming software offers programming in ladder logic, or C. Ladder logic is the traditional programming language, mimicking circuit diagrams with rungs of logic read left to right, where each rung represents a specific action controlled by the PLC, starting with an input or series of inputs (contacts) that result in an output (coil). C programming is a more recent innovation. Some PLC manufacturers supply control programming software, and the choice of language is often dictated by the vendor toolchain.
Communication architecture is a type-level decision. In addition to input and output devices, a PLC might also need to connect with other kinds of systems, such as a SCADA system that monitors multiple connected devices. PLCs offer a range of ports and communication protocols to ensure that the PLC can communicate with these other systems. In the IIoT and Industry 4.0 era, programmable controllers are called upon to communicate data via web browser, connect to databases via SQL, and to cloud data via MQTT, so the network stack of the chosen unit is itself a configuration parameter.
Finally, PLCs vary by I/O mix and signal class. They can be designed for many arrangements of digital and analog I/O, with the I/O modules bridging sensors, switches, and meters on the input side, and relays, lights, valves, and drives on the output side. Users can mix and match a PLC's I/O in order to get the right configuration for their application, and the same chassis can therefore serve discrete-only, analog-heavy, or hybrid applications by swapping modules.
Compact or brick PLCs integrate CPU and I/O in one housing.
Modular mid-range PLCs separate CPU from swappable I/O modules.
Rack-mounted PLCs scale to thousands of networked I/O points.
All-in-One PLCs integrate controller and HMI panel in a single unit.
Programming style divides between traditional ladder logic and C language toolchains.
Chapter 4 / 06
Selection Criteria for Procurement
Selection begins with the application, not the catalog. PLCs are used to automate repetitive tasks, which helps reduce errors and improve worker safety, and to coordinate hundreds of robots and machines working together to assemble parts, paint surfaces, and test finished products. The buyer should first write down the controlled process in I/O terms: how many sensors, of what type, driving how many actuators, with what latency budget, and under what environmental conditions. The remaining decisions then fall out of that list.
The first quantitative cut is I/O count and mix. PLCs can range from small modular devices with tens of inputs and outputs to large rack-mounted modular devices with thousands of I/O, and they can be designed for many arrangements of digital and analog I/O. A conveyor application may be satisfied by tens of digital points, while a process skid with closed-loop flow and temperature control will require analog input and output modules and PID support. Sizing the chassis with headroom for spares and future expansion is standard practice.
The second cut is performance and determinism. As a hard real-time system, output results must be produced in response to input conditions within a limited time. The scan time, instruction execution time, and any motion or high-speed counter requirements must be verified against the application's worst-case cycle. Programming in ladder logic or C does not change the real-time obligation, but the chosen firmware and toolchain determine which instructions are available and how fast they execute.
The third cut is integration. PLCs offer a range of ports and communication protocols to ensure that the PLC can communicate with other systems, and IIoT-era controllers are called upon to communicate data via web browser, connect to databases via SQL, and to cloud data via MQTT. Procurement should match the controller's protocol stack to the plant network, the SCADA system, and any external data consumers, and should plan for the All-in-One PLC option when the HMI is integral to the deliverable, since an all-in-one approach saves time, reduces wiring, and cuts the cost of purchasing multiple devices.
The fourth cut is environment and lifecycle. PLCs are designed for extended temperature ranges, immunity to electrical noise, and resistance to vibration and impact, and these ratings vary by model. The buyer should also weigh vendor support, training, spare-parts availability, and the maturity of the programming software, since the controller will typically outlast the original programming staff. Where exact ratings are not published in the cited sources, the value varies by model and must be obtained from the vendor datasheet.
Define the application in I/O and latency terms first.
Size the chassis for current needs plus expansion margin.
Match communication protocols to plant network and SCADA.
Choose form factor: compact, modular, rack-mounted, or All-in-One.
Verify environmental ratings against the installation site.
Chapter 5 / 06
Standards, Compliance and Testing
The PLC definition itself is a standards artifact. The NIST Computer Security Resource Center glossary entry for programmable logic controller traces the term to NIST SP 800-82r3, which in turn draws the formal text from The Automation, Systems, and Instrumentation Dictionary. The same definition propagates through NISTIR 8183, NISTIR 8183 Rev. 1, NISTIR 8183A Vol. 1, NISTIR 8183A Vol. 2, and NISTIR 8183A Vol. 3, and it appears in the related cybersecurity guidance documents NIST IR 8406, NIST IR 8473, NIST SP 1800-10B, NIST SP 1800-10C, NIST SP 1800-23, and NIST SP 800-160 Vol. 2 Rev. 1. The CNSSI 4009-2022 committee also uses the term. Buyers working in U.S. federal or critical-infrastructure contexts should expect procurement language to refer to these documents.
Functional safety and industrial cybersecurity are the two compliance domains that most often affect PLC specifications. NIST SP 800-82r3 is the guide to Industrial Control Systems (ICS) Security, and the PLC glossary entry exists in that context. Functional safety standards published by the IEC govern the design of safety instrumented functions and the PLCs that host them; PLC vendors typically publish SIL ratings and failure-rate data for their safety-oriented models. Where the cited sources do not provide a specific SIL claim, the value varies by model.
Electromagnetic compatibility and environmental testing are referenced in vendor literature for PLCs designed for extended temperature ranges, immunity to electrical noise, and resistance to vibration and impact. The cited sources do not quote specific IEC clauses or numeric pass levels, so any clause reference and pass level varies by model and must be obtained from the vendor's declaration of conformity.
Communication and programming standards are equally part of the compliance picture. The PLC definition explicitly includes communication as a core function, and in modern deployments the protocol stack must conform to industry conventions such as MQTT, depending on the plant, along with other protocols referenced in vendor and industry literature. Programming standards such as the relevant IEC language standard govern the languages used in PLCs, with ladder logic and structured text commonly cited among the defined options. The cited sources name ladder logic and C as the languages used in commercial PLC programming software, but do not enumerate vendor support for each language within that standard; that coverage varies by model.
Finally, buyers should treat the cited NIST glossary as a procurement reference, not a certification. The glossary defines the term and points to the source documents, but does not certify any specific product. Compliance testing, certification marks, and conformance evidence are issued by accredited laboratories and notified bodies against the standards the buyer has selected. Where a numeric value or clause number is needed for a contract clause, the value must be sourced from the vendor's datasheet and supporting test reports, since the glossary itself provides only the definitional baseline.
Use the NIST glossary definition as the procurement baseline.
Reference NIST SP 800-82r3 for ICS cybersecurity context.
Cite the IEC programming language standard for programming language conformance.
Require IEC functional safety SIL evidence for safety functions.
Verify EMC and environmental test reports against the installation site.
Reference document or standard family
Role in PLC compliance
Source
NIST SP 800-82r3
Guide to Industrial Control Systems (ICS) Security; cites the PLC definition
S1 (NIST CSRC)
NISTIR 8183, 8183 Rev. 1, 8183A Vol. 1/2/3
Cybersecurity guidance documents that propagate the PLC definition
S1 (NIST CSRC)
NIST IR 8406, NIST IR 8473
Cybersecurity and vulnerability handling references that reference the PLC definition
S1 (NIST CSRC)
NIST SP 1800-10B, 1800-10C, 1800-23
Practice guides that reference the PLC definition
S1 (NIST CSRC)
NIST SP 800-160 Vol. 2 Rev. 1
Systems security engineering reference that references the PLC definition
S1 (NIST CSRC)
CNSSI 4009-2022
Committee on National Security Systems glossary that uses the term
S1 (NIST CSRC)
IEC programming language standard for PLCs (cited in S2)
Programming language standard for PLCs (ladder logic, structured text, etc.); coverage varies by model
S2 (Wikipedia)
IEC functional safety family
Functional safety standard for safety instrumented functions; SIL rating varies by model
Not stated in cited sources
IEC EMC test methods family
EMC test methods; specific clauses and pass levels vary by model
Not stated in cited sources
IEC environmental testing methods family
Environmental testing methods; specific clauses and pass levels vary by model
Not stated in cited sources)
Chapter 6 / 06
Market Landscape and Buying Process
The PLC market serves every sector that automates a physical process. The largest user base historically is the manufacturing sector, and the original use case was the automobile manufacturing industry, where PLCs were first developed to provide flexible, rugged, and easily programmable controllers to replace hard-wired relay logic systems. Modern deployments also include pharmaceutical monitoring systems, where PLCs run process analytics and environmental controls, and any activity that requires high reliability, ease of programming, and process fault diagnosis.
Supplier-side, the cited sources reference several distinct players. Wikipedia's PLC article attributes the invention of the first PLC, the Modicon 084, to Dick Morley for General Motors in 1968. Unitronics is identified in the cited source as a pioneer in the manufacture and design of Programmable Logic Controllers with integrated HMI panels and built-in I/O, having launched the very first All-in-One PLC on the market and continuing to improve the technology based on market feedback and industry advancements. Eaton maintains a public product page for PLCs within its controls, drives, automation, and sensors portfolio, listing more than twenty downloadable documents. Inductive Automation and Universal Technical Institute provide PLC reference and training material, indicating both vendor and educational demand. The cited sources do not provide market-share percentages, so any share figure is not supported and must be omitted.
The buying process for a PLC follows the same arc as any industrial control purchase. The buyer maps the process to I/O and selects the form factor: compact, modular, rack-mounted, or All-in-One. The buyer confirms the language toolchain, the protocol stack, and the integration with SCADA, SQL, MQTT, or web-based dashboards as required by the IIoT and Industry 4.0 context. The buyer then verifies environmental ratings, functional safety certification, and cybersecurity posture against the relevant NIST and IEC references, and finally negotiates lifecycle support, spares, and training.
Commercial offers in this category typically bundle hardware, programming software, and training. Some PLC manufacturers supply control programming software, and the buyer's evaluation should weigh whether the toolchain is included, whether it supports ladder logic and C, and whether the HMI design environment is integrated in the case of All-in-One units. The all-in-one approach saves time, reduces wiring, and cuts the cost of purchasing multiple devices, which is a procurement argument for integrated controller-plus-panel units in compact applications.
After purchase, the controller enters an operational lifecycle. PLCs are used to automate repetitive tasks, which helps reduce errors and improve worker safety, and they can share data and receive commands from a central computer, allowing for a smoother production process and the flexibility to respond quickly to changes in production needs or market demands. Programs to control machine operation are typically stored in battery-backed-up or non-volatile memory, and changes are made by loading new or modified code rather than by rewiring. This is the long-term economic case for the PLC category and the reason it has displaced relay logic across the manufacturing sector.
Manufacturing is the largest historical user, with pharmaceuticals and process industries as major adjacent sectors.
Suppliers identified in the cited sources include the Modicon lineage (inventor Dick Morley, 1968), Unitronics, and Eaton.
Market share percentages are not stated in the cited sources and must not be invented.
Buying process covers I/O mapping, form factor, toolchain, protocol stack, and lifecycle support.
Toolchain selection should weigh ladder logic, C language, and HMI integration.
FAQ
What is a programmable logic controller in one sentence?
Per the NIST glossary drawing on the Automation, Systems, and Instrumentation Dictionary, a PLC is a solid-state control system with a user-programmable memory for storing instructions that implement specific functions such as I/O control, logic, timing, counting, three-mode (PID) control, communication, arithmetic, and data and file processing.
Who invented the PLC and when?
Dick Morley is credited with having invented the first PLC, the Modicon 084, for General Motors in 1968, according to the cited Wikipedia article. The device was created to replace hard-wired relay logic systems in the automobile manufacturing industry.
How does a PLC differ from an industrial PC or microcontroller?
The PLC's CPU stores and processes program data, but input and output modules connect the PLC to the rest of the machine. I/O modules provide information to the CPU and trigger specific results, and the controller is built as a hard real-time system in which output results must be produced in response to input conditions within a limited time.
What programming languages do PLCs use?
Most PLC programming software offers programming in ladder logic, or C. Ladder logic is the traditional programming language, mimicking circuit diagrams with rungs of logic read left to right, where each rung represents a specific action starting with inputs (contacts) and ending with an output (coil). C programming is described as a more recent innovation in the cited source.
What is an All-in-One PLC?
An All-in-One PLC integrates the controller with the HMI panel, creating a compact, easy-to-use automation solution. Users no longer need to establish PLC-to-panel communications and can program both the ladder logic and HMI design in a single software environment, which saves time, reduces wiring, and cuts the cost of purchasing multiple devices.
Why are PLCs still used when general-purpose computers exist?
PLCs were designed to tolerate the industrial environment better than systems intended for office use, and were more reliable, compact, and required less maintenance than relay systems. They are easily expandable with additional I/O modules, can be reconfigured by loading new or modified code rather than rewiring, and operate as hard real-time systems with bounded response times.
Which NIST documents reference the PLC definition?
The NIST glossary entry cites NIST SP 800-82r3 as the source, and the same definition propagates through NISTIR 8183, NISTIR 8183 Rev. 1, NISTIR 8183A Vol. 1, NISTIR 8183A Vol. 2, and NISTIR 8183A Vol. 3. Related cybersecurity documents that reference the definition include NIST IR 8406, NIST IR 8473, NIST SP 1800-10B, NIST SP 1800-10C, NIST SP 1800-23, and NIST SP 800-160 Vol. 2 Rev. 1.