Table of Contents
Fetching ...

Constellation: The Autonomous Control and Data Acquisition System for Dynamic Experimental Setups

Simon Spannagel, Stephan Lachnit, Hanno Perrey, Justus Braach, Lene Kristian Bryngemark, Erika Garutti, Adrian Herkert, Finn King, Christoph Krieger, David Leppla-Weber, Linus Ros, Sara Ruiz Daza, Murtaza Safdari, Luis G. Sarmiento, Annika Vauth, Håkan Wennlöf

TL;DR

Constellation presents a decentralized, networked control and data acquisition framework designed for dynamic laboratory and beamline setups. By organizing system components as autonomous satellites, controllers, and listeners and by enforcing RFC-driven, language-agnostic protocols, the approach enables flexible instrument integration and robust operation without a central server. The paper documents the architecture, interfaces, and autonomous operation principles (including failure modes and conditional transitions), and demonstrates initial deployments across DESY II, CERN, SKB, and MADMAX. Together with comprehensive documentation and versatile user interfaces, Constellation offers a scalable solution for small-to-mid-sized experiments requiring reliable data acquisition, monitoring, and reconfiguration under changing experimental conditions.

Abstract

The operation of instruments and detectors in laboratory or beamline environments presents a complex challenge, requiring stable operation of multiple concurrent devices, often controlled by separate hardware and software solutions. These environments frequently undergo modifications, such as the inclusion of different auxiliary devices depending on the experiment or facility, adding further complexity. The successful management of such dynamic configurations demands a flexible and robust system capable of controlling data acquisition, monitoring experimental setups, enabling seamless reconfiguration, and integrating new devices with limited effort. This paper presents Constellation, a flexible and network-distributed control and data acquisition software framework tailored to laboratory and beamline environments, that addresses the limitations of existing solutions. The framework is designed with a focus on extensibility, providing a streamlined interface for instrument integration. It supports efficient system setup via network discovery mechanisms, promotes stability through autonomous operational features, and provides comprehensive documentation and supporting tools for operators and application developers such as controllers and logging interfaces. At the core of the architectural design is the autonomy of the individual components, called satellites, which can make independent decisions about their operation and communicate these decisions to other components. This paper introduces the design principles and framework architecture of Constellation, presents the available graphical user interfaces, shares insights from initial successful deployments, and provides an outlook on future developments and applications.

Constellation: The Autonomous Control and Data Acquisition System for Dynamic Experimental Setups

TL;DR

Constellation presents a decentralized, networked control and data acquisition framework designed for dynamic laboratory and beamline setups. By organizing system components as autonomous satellites, controllers, and listeners and by enforcing RFC-driven, language-agnostic protocols, the approach enables flexible instrument integration and robust operation without a central server. The paper documents the architecture, interfaces, and autonomous operation principles (including failure modes and conditional transitions), and demonstrates initial deployments across DESY II, CERN, SKB, and MADMAX. Together with comprehensive documentation and versatile user interfaces, Constellation offers a scalable solution for small-to-mid-sized experiments requiring reliable data acquisition, monitoring, and reconfiguration under changing experimental conditions.

Abstract

The operation of instruments and detectors in laboratory or beamline environments presents a complex challenge, requiring stable operation of multiple concurrent devices, often controlled by separate hardware and software solutions. These environments frequently undergo modifications, such as the inclusion of different auxiliary devices depending on the experiment or facility, adding further complexity. The successful management of such dynamic configurations demands a flexible and robust system capable of controlling data acquisition, monitoring experimental setups, enabling seamless reconfiguration, and integrating new devices with limited effort. This paper presents Constellation, a flexible and network-distributed control and data acquisition software framework tailored to laboratory and beamline environments, that addresses the limitations of existing solutions. The framework is designed with a focus on extensibility, providing a streamlined interface for instrument integration. It supports efficient system setup via network discovery mechanisms, promotes stability through autonomous operational features, and provides comprehensive documentation and supporting tools for operators and application developers such as controllers and logging interfaces. At the core of the architectural design is the autonomy of the individual components, called satellites, which can make independent decisions about their operation and communicate these decisions to other components. This paper introduces the design principles and framework architecture of Constellation, presents the available graphical user interfaces, shares insights from initial successful deployments, and provides an outlook on future developments and applications.
Paper Structure (55 sections, 1 equation, 19 figures)

This paper contains 55 sections, 1 equation, 19 figures.

Figures (19)

  • Figure 1: Screenshot of the Constellation GitLab CI / CD pipeline for a release version. Building, formatting and documentation generation run in parallel, while testing, linting and deployment depend on a successful build.
  • Figure 2: Sequence diagram for CHIRP showing the message flow between an already running satellite (B) and a newly started satellite (A). Satellite A offers a service and requests a service from others. Satellite B answers the request, and finally Satellite A departs again.
  • Figure 3: CHP sequence diagram between a controller and a satellite indicating regular heartbeats as well as extrasystole messages for state changes. Here, the satellite is performing a transition and issues an extrasystole once the transition is completed. The vertical colored activation bar indicates the time period of heartbeat monitoring, the bold text in square brackets denotes the transmitted state.
  • Figure 4: CHP sequence diagram for the communication between two satellites exchanging heartbeats and extrasystoles. Here, satellite B is performing a transition and emits an extrasystole once the transition is completed. The vertical colored activation bars indicate time periods of heartbeat monitoring.
  • Figure 5: Sequence diagram for CSCP. A controller connects to a satellite and queries its name. Following are attempts to call an unknown function and to initiate an invalid state transition.
  • ...and 14 more figures