Virtual PLCs — a big step forward!
It wasn’t that long ago that PLCs executed just a single task — their one and only control program. Each PLC vendor created its own dedicated hardware, which for the sake of reliability, utilised technology that was several generations behind current offerings. Similarly, any software used by PLCs was proprietary and strictly limited to that vendor’s ecosystem.
While such a design strategy may have served us well in the past, it’s become increasingly clear that a far more flexible approach to system architecture will be needed to meet the heavy demands placed on modern‑day industrial automation systems.
For some years now, industrial automation has been trending towards becoming far more software oriented, espousing many of the techniques and practices of the software industry. Industrial control hardware platforms, and the operating systems they use, have become much more open, with Linux and Windows running on industrially hardened PCs being prime examples.
Furthermore, industry has adopted the internet for high‑speed and world‑wide connectivity and has accepted the widespread influence of the IT community into the OT space.
These advancements would be very difficult, if not impossible, to implement using the traditional paradigm of closed, hardware-orientated controllers.
Key to these new developments is the concept of virtualisation. Virtualisation is where several software-based implementations of physical hardware (called ‘virtual machines’) run concurrently on a single physical computer. Software applications are thus abstracted away from the underlying hardware. The host computer’s resources can be used more efficiently overall by having a hypervisor program allocate resources to each virtual environment, as needed.
That several applications can run independently in their own virtual environment is a major advantage. It means control programs can be constructed into discrete runtime modules — a commonly requested feature for segmented systems, where not every section will be available or active at once. Other software unrelated to control can also run simultaneously on the same platform.
Containerisation is a particularly efficient form of virtualisation. Dockers within the Linux environment are one implementation that’s gained a lot of attention recently, particularly from the German automobile industry.
Unlike virtual machines, which run a full, separate guest OS for each application, containers share the host’s operating system kernel, making them more lightweight. This is an important consideration for industrial controllers, which often provide only limited computing resources. Being lightweight also helps maintain real‑time performance — a mandatory requirement for control applications.
High portability is another advantage of Docker, as each container runs as an isolated process, with its own resources. This facet also provides a high degree of security and isolation, which is important for consistency of operation between systems.
Cloud-based engineering is another notable implementation of virtualisation. Here, virtual PLCs reside in a data centre, which can be hosted either on premise or in the cloud. The data centre serves up web pages as its user interface. As all data is presented using HTML, users have access via any device that supports a web browser, such as a PC, tablet or even a mobile phone.
Improved program management is one advantage gained by cloud‑based virtualisation. Programmers can utilise a wide variety of software tools available, including CI/CD (continuous integration/continuous deployment) tools, like Azure DevOps. Source control is also integrated, meaning easy collaboration and faster program development.
Cloud-based control is where one (or more) virtual PLC programs execute in the cloud, rather than being processed in localised computing hardware. This ‘controller’ connects to localised devices and I/O systems on the factory floor, typically using standard protocols such as MQTT and OPC UA.
Process applications are better suited to cloud-based control as time‑sensitive requirements are rare. However, as manufacturing processes generally need update rates nearing one millisecond, manufacturing normally uses localised control.
Cloud-based systems also provide mass data storage. Aggregating data over the longer term is ideal for in‑depth analytics and dashboard displays.
While none of us have a crystal ball, it looks as though the days of PLCs running a single control task, on dedicated hardware, using a propriety operating system, are numbered. It seems the requirements of modern‑day industrial control systems will demand at least some form of virtualisation, allowing multiple runtimes to execute on a choice of operating systems and open hardware.
![]() |
Open Process Automation: how and where to start
Open Process Automation presents a transformative opportunity for enterprises seeking to...
Seeing with AI: flexible navigation in dynamic environments with Visual SLAM
Automation solutions based on camera vision and AI models overcome the limitations of existing...
Performance without compromise: enhancing manufacturing quality with single-controller solutions
Most factory automation systems today have mutiple control systems that don't communicate...




