Evaluation of TwinCAT PLC++ and Migration to Linux-Based PLC Platforms

Supervisor(s): Mario Kiekebusch

Abstract: 

Background information: 

Beckhoff, our ESO standard for hardware control,  is introducing significant technological developments in its TwinCAT automation platform, including the new TwinCAT PLC++ programming environment that is about to be released,  and support for Linux-based real-time control systems which is in early development.

These developments offer an opportunity to modernize the PLC software infrastructure used for the control of astronomical instrumentation, potentially improving software performance, maintainability, portability, and integration with existing development and deployment environments. This also answer to a request from operations to move away from Windows.

Specific Objectives:

  • Evaluate the compatibility of existing TwinCAT 3 PLC projects, function blocks, and libraries with TwinCAT PLC++
  • Assess the effort required to migrate representative PLC applications to the new programming environment.
  • Identify potential improvements in software performance, maintainability, and development workflows.
  • Evaluate the deployment and operation of TwinCAT PLC applications on Linux-based real-time systems.
  • Verify the compatibility of existing hardware, communication interfaces, and software components, including EtherCAT, OPC UA, motion control, and TwinCAT HMI.
  • Investigate opportunities for improving software build, testing, and deployment processes, including integration with CI/CD pipelines.
  • Provide recommendations and a possible migration strategy for future instrument control developments.