What is the Layout Service?
The Layout Service provides centralised management of integrated, controlled "Functional Position" data across CERN. Accelerator infrastructures are documented by modelling their architectures as topologies of Functional Positions which specify the size, position and rotation of the space that any component occupies as well as the relations between components. Furthermore, the entire Layouts (Functional Positions and their inter-relations) and managed in a time oriented manner - allowing to manage past, present and future Layouts in parallel. The Layout service is used CERN-wide by 100’s of people and integrates with ~40 other systems to supports diverse activities. Overall, Layout data is fundamental for the management of CERN's accelerator complex.
In more details, the main purpose of the Layout Service is to:
- Provide a unified, coherent and controlled source for functional positions and their layouts.
- Supersede “private” system-specific databases maintained by teams responsible for a subsystem and manage the data centrally, in a coherent manner. Provide the tools in order to visualise the data.
- Provide a mechanism for comparing different versions of the same data - Serve as a source of reference for other CERN services (Survey, digital mockups, EDMS (document management), InforEAM (asset management), Cabling).
- Automatically generate MAD S sequence files (for beam optic simulations).
- Provide coordinates for the integration studies (automatic positioning of components in the 3D mock-up tools).
- Document the complex LHC electrical circuits.
- Provide information to the transport team so that they can plan and define installation/maintenance path/trajectory of each equipment component.
- Provide links to installation planning and mounting/dismounting scenarios of a component.
- Store data on layout and electrical interconnections for installation.
- Provide data for the correct connection of cryogenics assemblies.
- Store data for hardware testing and commissioning, in particular instrumentation for cryogenics, vacuum and protection.
- Provide data for automatic test procedures.
- Store data on controls objects such as electronics, vacuum pumps and equipment for the controls of the cryogenics.
- Provide functional position data for use in maintenance/asset management.
- Store configuration data for industrial control systems, not covered by the Controls Configuration Service.
- Serve as a source of reference for other additional services (controls configuration, accelerators settings management, vacuum, magnets, post-mortem, etc).
How is the Layout Service Made?
At the core of the Layout Service is a time-oriented database. This is complemented by a Java server based on the Spring framework, REST APIs and an advanced Web application (using Angular) to visualise and edit the various data. DevOps plays an important role, with development pipelines based on GitLab, Docker, Jenkins and Ansible with MONIT.