3 research outputs found

    Code Generation Tools and Editor for Memory Maps

    No full text
    Cheburashka, a toolset created in the Radio Frequency Group at CERN, has become an essential part of our hardware and software developments. Due to changing requirements, this toolset has been recently rewritten in C++ and Python. A hardware developer, using the graphical editor, defines a memory map, which is subsequently used to ensure consistency between software and hardware. The memory map file is an input for a variety of tools used by the hardware engineers, such as VHDL code generators. In addition to aiding the firmware development, our tools generate C++ wrapper libraries. The wrapper provides a simple interface on top of a Linux device driver to read and write registers by exposing memory map nodes in a hierarchical way, performing all low-level bit manipulations and checks internally. To interact with the hardware, a software that runs on a front-end computer is needed. Cheburashka allows us to generate FESA (Front-End Software Architecture) classes with parts of the operational interface already present. This paper describes the evolution of the graphical editor and the Python tools used for C++ code generation, along with a description of their main features

    Automation of the software production process for multiple cryogenic control applications

    No full text
    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 control system upgrades were successfully performed for the Cryogenics in the LHC accelerator, 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 became 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 accelerator and the CERN cryogenic test facilities

    Compensation of Beam Induced Effects in LHC Cryogenic Systems

    No full text
    This paper presents the different control strategies deployed in the LHC cryogenic system in order to compensate the beam induced effects in real-time. LHC beam is inducing important heat loads along the 27 km of beam screens due to synchrotron radiations, image current and electron clouds. These dynamic heat loads disturb significantly the cryogenic plants and automatic compensations are mandatory to operate the LHC at full energy. The LHC beam screens must be maintained in an acceptable temperature range around 20 K to ensure a good beam vacuum, especially during beam injections and energy ramping where the dynamic responses of cryogenic systems cannot be managed with conventional feedback control techniques. Consequently, several control strategies such as feed-forward compensation have been developed and deployed successfully on the machine during 2015 where the beam induced heat loads are forecast in real-time to anticipate their future effects on cryogenic systems. All these developments have been first entirely modeled and simulated dynamically to be validated, allowing then a smooth deployment during the LHC operation
    corecore