automation of software production process for multiple

1
The Continuous Integration service for the control system software for the cryogenics of the LHC tunnel Continuous Integration for non-LHC cryogenic controls projects TUPHA006 The development of process control systems for the cryogenic infrastructure at CERN is based on an automatic software generation approach. The overall complexity of the systems, their frequent evolution as well as the extensive use of databases, repositories, commercial engineering software and CERN frameworks have led to further efforts towards improving the existing automation based software production methodology. A large number of process control system upgrades have been successfully performed for the Cryogenics in the LHC Tunnel, applying the Continuous Integration practice integrating all software production tasks, tools and technologies. The production and maintenance of the control software for multiple cryogenic applications have become more reliable while significantly reducing the required time and effort. This concept has become a guideline for development of process control software for new cryogenic systems at CERN. This publication presents the software production methodology, as well as the summary of several years of experience with the enhanced automated control software production, already implemented for the cryogenics of the LHC Tunnel and the CERN cryogenic test facilities. The automation of the software production process in CERN cryogenics has become an essential part of the creation of the necessary software for the control applications. The results and expectative of the update have shown that the time and resources needed to implement it were more than worthy to obtain a system which is better configurable, faster and more reliable than the previous one. The necessity of the maintenance and updates of the different components of the Continuous Integrations service is overshadowed by the benefits the system provides. Thanks to its modularity, it can be configured to be adapted to different types of applications and even cope with different versions simultaneously. That way it is possible to modify and test an application while generating a working version of the installed software. The rise of the speed gained increasing the number of machines and optimizing them allow a faster error detection within the programming code reducing the time to get a working application. It also improved quality assurance of the control applications produced. Human error is minimized while launching the different jobs of the Continuous Integration service as all of them are already predefined. All the benefits combined permitted to evolve from maintaining 18 applications to 49 with possibility to be increased in the near future. Introducing the Continuous Integration (CI) methodology to the development of the software for the cryogenics of the LHC Tunnel had significant impact on the software development process and the result. The CI system improved quality assurance of the process and allowed to enter the second run of the LHC accelerator with very reliable application software for 18 critically important control systems for cryogenics. Also, it let engagning in the Run 2 of the LHC accelerator with an improved development environment, leading to more efficient and secure development process. - First experience The first use of CI systems for a non-LHC Siemens application was in 2015 and concerned the 10 horizontal magnet test benches (cryogenic feedboxes - CFBs) in the CERN’s magnet test facilities (SM18). The similarities between those 10 control systems lead to develop CI System based on the existing one for the LHC tunnel. Consequently, those applications were deployed taking benefits of CI tools (time and effort reduction, reliability improvement, update propagation ease, etc). - Cryo-apps set of tools Following the successful use of CI for the SM18 CFBs and experience gained during work on the LHC Tunnel, a system (named Cryo-apps) was developed in order to facilitate the production of new applications. This system consists of a set of CI tools for automatic and standardized development of Siemens PLC applications. - Wide use of Cryo-apps for Siemens applications The first projects using Cryo-apps were the High Field Magnet (HFM) and ClusterD - the new magnet test stations for SM18 test hall – in 2016. Since then, it became a standard and has been successfully used for several projects of different size and importance. - Functionality The possibility to easily parametrize the whole build chain and let selecting a repository branch, opened a simple way to build the applications using different versions of the UCPC framework. - Optimizations Using RAM-disk for building SIMATIC PLC projects improved performance of the CI system. The average time to compile two applications for a single sector of the LHC (ARC and LSS) was 3h, with RAM-disks - around 1h. - Gains The use of improved CI system allowed to build up an efficient workflow for developing large scale control applications and thus to reduce time and efforts - and therefore human resources required. In a way, they were replaced by a larger pool of worker nodes of the build system. Automation of software production process for multiple cryogenic control applications Cz. Fluder, V. Lefebvre, M. Pezzetti, A. Tovar-Gonzalez, CERN, Geneva, Switzerland P. Plutecki, T. Wolak, AGH University of Science and Technology, Kraków, Poland [email protected]

Upload: others

Post on 28-May-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Automation of software production process for multiple

The Continuous Integration servicefor the control system software

for the cryogenics of the LHC tunnel

Continuous Integration for non-LHC cryogenic controls projects

TUPHA006

The development of process control systems for the cryogenicinfrastructure at CERN is based on an automatic software generationapproach. The overall complexity of the systems, their frequent evolution aswell as the extensive use of databases, repositories, commercial engineeringsoftware and CERN frameworks have led to further efforts towardsimproving the existing automation based software production methodology.

A large number of process control system upgrades have beensuccessfully performed for the Cryogenics in the LHC Tunnel, applying theContinuous Integration practice integrating all software production tasks,tools and technologies. The production and maintenance of the controlsoftware for multiple cryogenic applications have become more reliablewhile significantly reducing the required time and effort. This concept hasbecome a guideline for development of process control software for newcryogenic systems at CERN.

This publication presents the software production methodology, as wellas the summary of several years of experience with the enhancedautomated control software production, already implemented for thecryogenics of the LHC Tunnel and the CERN cryogenic test facilities.

The automation of the software production process in CERN cryogenics has become an essential part of the creation of thenecessary software for the control applications. The results and expectative of the update have shown that the time and resourcesneeded to implement it were more than worthy to obtain a system which is better configurable, faster and more reliable than theprevious one. The necessity of the maintenance and updates of the different components of the Continuous Integrations service isovershadowed by the benefits the system provides.

Thanks to its modularity, it can be configured to be adapted to different types of applications and even cope with differentversions simultaneously. That way it is possible to modify and test an application while generating a working version of theinstalled software. The rise of the speed gained increasing the number of machines and optimizing them allow a faster errordetection within the programming code reducing the time to get a working application. It also improved quality assurance of thecontrol applications produced. Human error is minimized while launching the different jobs of the Continuous Integration serviceas all of them are already predefined. All the benefits combined permitted to evolve from maintaining 18 applications to 49 withpossibility to be increased in the near future.

Introducing the Continuous Integration(CI) methodology to the development of thesoftware for the cryogenics of the LHCTunnel had significant impact on thesoftware development process and theresult. The CI system improved qualityassurance of the process and allowed toenter the second run of the LHC acceleratorwith very reliable application software for18 critically important control systems forcryogenics. Also, it let engagning in the Run2 of the LHC accelerator with an improveddevelopment environment, leading to moreefficient and secure development process.

- First experienceThe first use of CI systems for a non-LHC Siemens applicationwas in 2015 and concerned the 10 horizontal magnet testbenches (cryogenic feedboxes - CFBs) in the CERN’s magnettest facilities (SM18). The similarities between those 10 controlsystems lead to develop CI System based on the existing onefor the LHC tunnel. Consequently, those applications weredeployed taking benefits of CI tools (time and effort reduction,reliability improvement, update propagation ease, etc).- Cryo-apps set of toolsFollowing the successful use of CI for the SM18 CFBs andexperience gained during work on the LHC Tunnel, a system(named Cryo-apps) was developed in order to facilitate theproduction of new applications. This system consists of a set ofCI tools for automatic and standardized development ofSiemens PLC applications.- Wide use of Cryo-apps for Siemens applicationsThe first projects using Cryo-apps were the High Field Magnet(HFM) and ClusterD - the new magnet test stations for SM18test hall – in 2016. Since then, it became a standard and hasbeen successfully used for several projects of different size andimportance.

- FunctionalityThe possibility to easily parametrize the whole build chain andlet selecting a repository branch, opened a simple way to buildthe applications using different versions of the UCPC framework.- OptimizationsUsing RAM-disk for building SIMATIC PLC projects improvedperformance of the CI system. The average time to compile twoapplications for a single sector of the LHC (ARC and LSS) was 3h,with RAM-disks - around 1h.- GainsThe use of improved CI system allowed to build up an efficientworkflow for developing large scale control applications and thusto reduce time and efforts - and therefore human resourcesrequired. In a way, they were replaced by a larger pool of workernodes of the build system.

Automation of software production processfor multiple cryogenic control applications

Cz. Fluder, V. Lefebvre, M. Pezzetti, A. Tovar-Gonzalez, CERN, Geneva, SwitzerlandP. Plutecki, T. Wolak, AGH University of Science and Technology, Kraków, [email protected]