Paper | Title | Other Keywords | Page |
---|---|---|---|
MOPPC142 | Groovy as Domain-specific Language (DSL) in Software Interlock System | software, Domain-Specific-Languages, framework, controls | 443 |
|
|||
The SIS, in operation since over 7 years, is a mission-critical component of the CERN accelerator control system, covering areas from general machine protection to diagnostics. The growing number of instances and the size of the existing installations have increased both the complexity and maintenance cost of running the SIS infrastructure. Also the domain experts have considered the XML and Java mixture for configuration as difficult and suitable only for software engineers. To address these issues, new ways of configuring the system have been investigated aiming at simplifying the process by making it faster, more user-friendly and adapted for a wider audience. From all the existing DSL choices (fluent Java APIs, external/internal DSLs), the Groovy scripting language has been considered as being particularly well suited for writing a custom DSL due to its built-in language features: Java compatibility, native syntax constructs, command chain expressions, hierarchical structures with builders, closures or AST transformations. This paper explains best practices and lessons learned while building the accelerators domain-oriented DSL for the configuration of the interlock system. | |||
![]() |
Poster MOPPC142 [0.510 MB] | ||
TUCOCB03 | A Practical Approach to Ontology-Enabled Control Systems for Astronomical Instrumentation | controls, detector, software, database | 952 |
|
|||
Even though modern service-oriented and data-oriented architectures promise to deliver loosely coupled control systems, they are inherently brittle as they commonly depend on a priori agreed interfaces and data models. At the same time, the Semantic Web and a whole set of accompanying standards and tools are emerging, advocating ontologies as the basis for knowledge exchange. In this paper we aim to identify a number of key ideas from the myriad of knowledge-based practices that can readily be implemented by control systems today. We demonstrate with a practical example (a three-channel imager for the Mercator Telescope) how ontologies developed in the Web Ontology Language (OWL) can serve as a meta-model for our instrument, covering as many engineering aspects of the project as needed. We show how a concrete system model can be built on top of this meta-model via a set of Domain Specific Languages (DSLs), supporting both formal verification and the generation of software and documentation artifacts. Finally we reason how the available semantics can be exposed at run-time by adding a “semantic layer” that can be browsed, queried, monitored etc. by any OPC UA-enabled client. | |||
![]() |
Slides TUCOCB03 [2.130 MB] | ||
THPPC071 | Machine Protection Diagnostics on a Rule Based System | diagnostics, hardware, vacuum, software | 1235 |
|
|||
Since commissioning the high-brilliance, 3rd-generation light source, PETRA-3 in 2009 the accelerator operation has become routine. To guard the machine against damage a Machine Protection System (MPS) was built [*]. Alarms and beam information are collected by the MPS and can be used to analyse beam losses and dumps. The MPS triggers a visual diagnostic software, which is used to analyse the hardware dump cause. The diagnostic software is based on a Domain Specific Language (DSL) architecture. The MPS diagnostic application is designed with a server-client architecture and written in Java. The communication protocol is based on TINE. We characterise the data flow of the alarms and the DSL specification and describe the composition from the delivered structure to a single, human understandable message.
* T. Lensch, M. Werner, "Commissioning Results and Improvements of the Machine Protection System for PETRA III", BIW10, New Mexico, US, 2010 |
|||
![]() |
Poster THPPC071 [0.838 MB] | ||
THPPC079 | Using a Java Embedded DSL for LHC Test Analysis | framework, hardware, interface, embedded | 1254 |
|
|||
The Large Hadron Collider (LHC) at CERN requires many systems to work in close cooperation. All systems for magnet powering and beam operation are qualified during dedicated commissioning periods and retested after corrective or regular maintenance. Already for the first commissioning of the magnet powering system in 2006, the execution of such tests was automated to a high degree to facilitate the execution and tracking of the more than 10.000 required test steps. Most of the time during today’s commissioning campaigns is spent in analysing test results, to a large extend still done manually. A project was launched to automate the analysis of such tests as much as possible. A dedicated Java embedded Domain Specific Language (eDSL) was created, which allows system experts to describe desired analysis steps in a simple way. The execution of these checks results in simple decisions on the success of the tests and provides plots for experts to quickly identify the source of problems exposed by the tests. This paper explains the concepts and vision of the first version of the eDSL. | |||
![]() |
Poster THPPC079 [1.480 MB] | ||