What is a PLC?
A PLC (Programmable Logic Controller) is a rugged industrial computer that reads input signals from sensors, executes a program and, based on the result, drives actuators such as motors, valves and pumps. PLCs are built to withstand dust, vibration, temperature swings and electrical interference, and often run for years without interruption. They form the control layer (level 1) of the Purdue Model and are the foundation of virtually all industrial automation.
๐ง How does a PLC work?
A PLC runs in a fixed, endlessly repeated cycle: the scan cycle.
- Read inputs - the state of all digital and analogue inputs is copied into memory
- Execute the program - the logic is processed from top to bottom
- Write outputs - the calculated values are sent to the outputs
- Communication and diagnostics - data exchange with HMI, SCADA and other devices
A scan cycle typically takes 1 to 100 milliseconds. Because that time is predictable, a PLC behaves deterministically: essential for real-time control and interlocks.
๐ง What does a PLC consist of?
| Component | Function |
|---|---|
| CPU | Executes the program and the scan cycle |
| Power supply | Usually provides 24 V DC to the CPU and modules |
| I/O modules | Digital and analogue inputs and outputs to the field |
| Communication modules | ProfiNET, IP, Modbus, Profibus |
| Remote IO | I/O close to the machine, connected to the CPU over a network |
๐งฉ Which languages are used to program a PLC?
The IEC 61131 standard (part 3) defines the standard languages:
| Language | Type | Typical use |
|---|---|---|
| Ladder Diagram (LD) | Graphical | Switching logic, popular in the US |
| Function Block Diagram (FBD) | Graphical | Control loops and process automation |
| Structured Text (ST) | Text | Calculations, algorithms, complex logic |
| Sequential Function Chart (SFC) | Graphical | Step sequences and batch processes |
| Instruction List (IL) | Text | Obsolete; removed in the 2013 edition |
Vendors provide their own development environments such as TIA Portal (Siemens), Studio 5000 (Rockwell), GX Works (Mitsubishi) and the vendor-neutral CODESYS.
๐ What types of PLC are there?
- Compact PLC - CPU, power supply and I/O in one housing, for small machines
- Modular PLC - expandable with separate modules, for example ControlLogix or the S7-1500 from SIMATIC
- Safety PLC - certified for safety functions up to SIL 3 or PL e
- Soft PLC - PLC functionality as software on an industrial PC (IPC), as with Beckhoff
Well-known manufacturers include Siemens, Rockwell Automation, Schneider Electric, Mitsubishi Electric and Omron.
โ๏ธ What is the difference between a PLC, DCS, IPC and microcontroller?
| PLC | DCS | Industrial PC (IPC) | Microcontroller | |
|---|---|---|---|---|
| Application | Machines and lines | Large continuous processes | Compute-intensive tasks, visualisation | Mass-produced devices |
| Ruggedness | Very high | Very high | High | Depends on design |
| Programming | IEC 61131-3 | Vendor environment | High-level languages, also IEC 61131-3 | C/C++ |
| Lifespan | 15โ25 years | 20โ30 years | 5โ10 years | Product-dependent |
The long lifespan of PLCs explains why many installations still run on legacy systems without modern security.
๐ฐ๏ธ Where does the PLC come from?
The PLC was developed in 1968 at the request of General Motors, which wanted to replace the hard-wired relay cabinets in its car plants with something that was easy to reprogram. Dick Morley and his company delivered the Modicon 084 in 1969, regarded as the first commercial PLC. That is why ladder logic still mimics relay wiring diagrams.
๐ How do you secure a PLC?
PLCs are designed for reliability, not security. Many older models accept commands without authentication. Stuxnet (2010) reprogrammed Siemens PLCs to sabotage centrifuges. Measures:
- Network segmentation - PLCs never directly reachable from the office network or the internet
- Restrict access to the program - CPU passwords, the physical key switch set to RUN
- Version control of PLC code - so that changes to the program can be detected
- Keep firmware up to date and use signed firmware (Firmware Signing)
- Passive monitoring of the network for unusual write or download commands
๐ How does a PLC communicate with other systems?
A modern PLC rarely stands alone. It exchanges data at three levels:
| Direction | With | Typical protocols |
|---|---|---|
| Downwards | Sensors, actuators, drives | IO-Link, ProfiNET, EtherCAT, IP, 4-20 mA |
| Sideways | Other PLCs and robots | ProfiNET, Modbus TCP, S7 communication |
| Upwards | HMI, SCADA, MES, historian | OPC UA, MQTT, Modbus TCP |
That upward connection is what makes OT convergence possible: production data from the PLC is used for OEE, quality analysis and planning. It is also the path along which attackers try to reach the controller. A good design lets data leave through a controlled layer, such as an OPC UA server or an edge device, instead of letting IT systems talk to the PLC directly.
โ Frequently asked questions
What is the difference between a PLC and a computer?
A PLC is a specialised industrial computer built for one task: controlling a process reliably and predictably. Unlike an ordinary computer, a PLC has a fixed scan cycle, direct inputs and outputs for sensors and actuators, and a rugged housing for dust, vibration and temperature swings.
How long does a PLC last?
In practice a PLC often lasts 15 to 25 years. Manufacturers usually support a model with updates and spare parts for around 10 years. As a result, many installations still run on PLCs for which no security updates are released any more.
Which PLC brands are the most popular?
In Europe, Siemens (SIMATIC S7) and Schneider Electric (Modicon) are market leaders, and in North America Rockwell Automation (Allen-Bradley). Mitsubishi Electric, Omron, Beckhoff and ABB are also widely used. Many smaller brands are programmed through the vendor-neutral CODESYS.
Which programming language is best for a PLC?
There is no single best PLC programming language; the choice depends on the application. Ladder diagram is clear for switching logic, Structured Text suits calculations and complex logic, and Sequential Function Chart suits step sequences. Many projects combine several IEC 61131-3 languages.
Can a PLC be hacked?
Yes, a PLC can be hacked, especially if it is reachable over the network and accepts programs without authentication. Well-known examples are Stuxnet and PIPEDREAM. Network segmentation, CPU passwords, the key switch in RUN and monitoring of program changes greatly reduce that risk.
๐ In summary
A PLC is the industrial computer that reliably controls machines and processes in a fixed scan cycle, programmed in IEC 61131-3 languages. Together with HMI and SCADA, the PLC is at the heart of OT. Because a PLC directly controls the physical process, securing it deserves as much attention as its functionality.
