Core-isolation enables virtualization for industrial applications
"Virtualization" is a term most often associated with information technology (IT) departments, generally manifesting with virtual desktops or virtual servers running on centralized hardware. An example of a virtualization application is core-isolation, which includes migrating servers from running on their own central processing units (CPUs) and hardware in a rack to running several instances of those servers on one piece of hardware in the rack. This minimizes the amount of physical hardware that must be purchased, housed, and maintained. It also reduces operating costs and does a better job of utilizing the hardware. Doing the work of multiple, previously separate devices from one piece of hardware is growing in popularity in all kinds of industries and application areas as more companies adopt centralized control strategies.
This type of virtualization typically uses a management layer of software between the hardware and the running application/operating system (OS). For managing servers and other applications, virtualization has become a major tool in the IT space that provides huge benefits. Similar parallels can currently be found in today’s modern industrial control systems (ICSs).
The demanding nature of industrial operations necessitates that systems be real-time capable, which is not achievable in a traditional virtualized OS environment. Most virtualization applications cannot fully replicate an entire programmable logic controller (PLC). With advanced, real-time, PC-based control system architectures, this is possible and somewhat commonplace—it is a function of the robust, modular nature of Industrial PC systems and the associated software. Advanced PC-based automation software platforms provide a framework for real-time calling of modular software elements. By modularizing the components within this real-time environment, multiple PLC, C++ or Matlab/Simulink modules can be executed independently on one piece of hardware.
As a result, significant reductions in the amount of necessary independent processing hardware can be realized. This architecture, combining many different controllers running on one PC, still facilitates access to many different communications methods from these running software modules. From an industrial viewpoint, it permits one real-time software control module to access Fieldbuses A and B, while others access Fieldbuses C, D, E, and F, in addition to still other modules communicating via completely independent protocols to ERP, M2M, or even cloud systems. By executing functional runtimes in an advanced PC-based automation software platform, multiple complex operations can be executed on a single multi-core PC while maintaining the application’s deterministic performance.
To design modern, high-performance machines that are less expensive to engineer, trends point toward the implementation of multi-core and even many-core PC control systems with highly modular automation software. By fully leveraging the power of a multi-core processor and core-isolation technology, individual functions, assemblies, or machine units can be regarded as modules, which should each be as independent as possible and structured hierarchically. Ideally, the individual control modules can be put into operation, extended, scaled, and reused independently.
With the implementation of standardized interfaces, software modules can be combined with higher level modules to create more complex machine units, up to a complete machine controlled from one CPU. Application complexity of these modules varies, but it makes no difference whether the user generates something like a small filter module or whether a complete PLC project is contained within one module. In fact, by means of automatism, each program is automatically packed into a module. This type of system can use all parts of the IEC 61131-3 Programming Languages standard, including the object-oriented extensions found in the third edition. Multiple fieldbuses can exist within the same system through abstraction and streamline integration into a legacy system and/or implementation with the end user’s fieldbus.
This approach has been used to integrate core machine functionalities such as PLCs, motion control, human-machine interfaces (HMIs), and safety applications for years, but the reach of PC-based control is far greater today. As the performance of multi-core and many-core CPUs improves with each generation, so does the possible performance of a PC-based machine controller. This has made it possible to add even more functionality to the centralized Industrial PC for applications such as robotics, advanced measurement, condition monitoring, and cloud-based systems for the Industrial Internet of Things (IIoT) and Industrie 4.0.
Daymon Thompson is automation product specialist, Beckhoff Automation. Edited by Chris Vavra, production editor, Control Engineering, email@example.com.
- Virtualization generally manifests with virtual desktops or virtual servers running on centralized hardware.
- Multiple complex operations can be executed on one powerful multi-core PC while maintaining the deterministic performance of the application.
- Software modules can be combined with higher level modules to create more complex machine units, up to a complete machine controlled from one CPU.
What other techniques can be used to improve a network’s security apparatus from potential attacks?
For more information www.beckhoffautomation.com/twincat
This article has additional information and links to related articles below.