Software Technology Evolution
Paper Title Page
MOBPL01 EPICS 7 Provides Major Enhancements to the EPICS Toolkit 22
 
  • L.R. Dalesio, M.A. Davidsaver
    Osprey DCS LLC, Ocean City, USA
  • S.M. Hartman, K.-U. Kasemir
    ORNL, Oak Ridge, Tennessee, USA
  • A.N. Johnson
    ANL, Argonne, Illinois, USA
  • H. Junkes
    FHI, Berlin, Germany
  • T. Korhonen
    ESS, Lund, Sweden
  • M.R. Kraimer
    Self Employment, Private address, USA
  • R. Lange
    ITER Organization, St. Paul lez Durance, France
  • G. Shen
    FRIB, East Lansing, USA
  • K. Shroff
    BNL, Upton, Long Island, New York, USA
 
  The release of EPICS 7 marks a major enhancement to the EPICS toolkit. EPICS 7 combines the proven functionality, reliability and capability of EPICS V3 with the powerful EPICS V4 extensions enabling high-performance network transfers of structured data. The code bases have been merged and reorganized. EPICS 7 provides a new platform for control system development, suitable for data acquisition and high-level services. This paper presents the current state of the EPICS 7 release, including the pvAccess network protocol, normative data types, and language bindings, along with descriptions of new client and service applications.  
video icon Talk as video stream: https://youtu.be/Er2uQitieWI  
slides icon Slides MOBPL01 [1.155 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-MOBPL01  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
MOBPL02 TANGO Kernel Development Status 27
 
  • R. Bourtembourg, J.M. Chaize, T.M. Coutinho, A. Götz, V. Michel, J.L. Pons, E.T. Taurel, P.V. Verdier
    ESRF, Grenoble, France
  • G. Abeillé, N. Leclercq
    SOLEIL, Gif-sur-Yvette, France
  • S. Gara
    NEXEYA Systems, La Couronne, France
  • P.P. Goryl
    3controls, Kraków, Poland
  • I.A. Khokhriakov
    HZG, Geesthacht, Germany
  • G.R. Mant
    STFC/DL, Daresbury, Warrington, Cheshire, United Kingdom
  • J. Moldes
    ALBA-CELLS Synchrotron, Cerdanyola del Vallès, Spain
  • B. Plötzeneder
    ELI-BEAMS, Prague, Czech Republic
 
  Funding: On behalf of the TANGO Controls Collaboration
The TANGO Controls Framework continues to improve. This paper will describe how TANGO kernel development has evolved since the last ICALEPCS conference. TANGO kernel projects source code repositories have been transferred from subversion on Sourceforge.net to git on GitHub.com. Continuous integration with Travis CI and the GitHub pull request mechanism should foster external contributions. Thanks to the TANGO collaboration contract, parts of the kernel development and documentation have been sub-contracted to companies specialized in TANGO. The involvement of the TANGO community helped to define the roadmap which will be presented in this paper and also led to the introduction of Long Term Support versions. The paper will present how the kernel is evolving to support pluggable protocols - the main new feature of the next major version of TANGO.
 
video icon Talk as video stream: https://youtu.be/t6L6hj0rNDc  
slides icon Slides MOBPL02 [5.754 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-MOBPL02  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
MOBPL03 The SKA Telescope Control System Guidelines and Architecture 34
 
  • L. Pivetta
    SKA Organisation, Macclesfield, United Kingdom
  • A. DeMarco
    ISSA, Msida, Malta
  • S. Riggi
    INAF-OACT, Catania, Italy
  • L. Van den Heever
    SKA South Africa, National Research Foundation of South Africa, Cape Town, South Africa
  • S. Vrcic
    NRC-Herzberg, Penticton, BC, Canada
 
  The Square Kilometre Array (SKA) project is an international collaboration aimed at building the world's largest radio telescope, with eventually over a square kilometre of collecting area, co-hosted by South Africa, for the mid-frequency arrays, and Australia for the low-frequency array. Since 2015 the SKA Consortia joined in a global effort to identify, investigate and select a single control system framework suitable for providing the functionalities required by the SKA telescope monitoring and control. The TANGO Controls framework has been selected and comprehensive work has started to provide telescope-wide detailed guidelines, design patterns and architectural views to build Element and Central monitoring and control systems exploiting the TANGO Controls framework capabilities.  
video icon Talk as video stream: https://youtu.be/S-C9zPdmld0  
slides icon Slides MOBPL03 [6.980 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-MOBPL03  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
MOBPL04 MADOCA II Data Collection Framework for SPring-8 39
 
  • T. Matsumoto, Y. Hamada
    JASRI/SPring-8, Hyogo-ken, Japan
  • Y. Furukawa
    JASRI, Hyogo, Japan
 
  MADOCA II (Message and Database Oriented Control Architecture II) is next generation of MADOCA and was developed to fulfill current and future requirements in accelerator and beamline control at SPring-8. In this paper, we report on the recent evolution in MADOCA II for data collection, which was missing in the past reports at ICALEPCS *,**. In MADOCA, the biggest challenge in data collection was to manage signals into Parameter Database smoothly. Users request Signal Registration Table (SRT) for new data collection. However, this costed time and manpower due to typo in SRT and iteration in DB registration. In MADOCA II, we facilitated signal registration scheme with prior test of data collection and validity check in SRT with web-based user interface. Data collection framework itself was also extended to manage various data collection types in SPring-8 with a unified method. All of data collection methods (polling, event type), data format (such as point and waveform data) and platform (Unix, Embedded, Windows including LabVIEW) can be flexibly managed. We started to implement MADOCA II data collection into SPring-8 with 241 hosts and confirmed stable operation since April 2016.
* T. Matsumoto et al., Proceedings of ICALEPCS 2013, p.944.
** A.Yamashita et al., Proceedings of of ICALEPCS 2015, p.648
 
video icon Talk as video stream: https://youtu.be/wEuh_gRPiH4  
slides icon Slides MOBPL04 [1.550 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-MOBPL04  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
MOBPL05 How to Design & Implement a Modern Communication Middleware Based on ZeroMQ 45
 
  • J. Lauener, W. Sliwinski
    CERN, Geneva, Switzerland
 
  In 2011, CERN's Controls Middleware (CMW) team started a new project aiming to design and implement a new generation equipment access framework using modern, open-source products. After reviewing several communication libraries [1], ZeroMQ [2] was chosen as the transport layer for the new communication framework. The main design principles were: scalability, flexibility, easy to use and maintain. Several core ZeroMQ patterns were employed in order to provide reliable, asynchronous communication and dispatching of messages. The new product was implemented in Java and C++ for client and server side. It is the core middleware framework to control all CERN accelerators and the future GSI FAIR [3] complex. This paper presents the overall framework architecture; choices and lessons learnt while designing a scalable solution; challenges faced when designing a common API for two languages (Java and C++) and operational experience from using the new solution at CERN for 3 years. The lessons learnt and observations made can be applied to any modern software library responsible for fast, reliable, scalable communication and processing of many concurrent requests.
[1] A. Dworak et al., "Middleware trends and market leaders 2011", ICALEPCS 2011.
[2] ZeroMQ, http://zeromq.org
[3] V. Rapp et al., "Controls Middleware for FAIR", PCaPAC 2014.
 
video icon Talk as video stream: https://youtu.be/b4AoU3Vdlko  
slides icon Slides MOBPL05 [0.205 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-MOBPL05  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
MOBPL06
Reactive Programming, and How It Fits Within Control Systems  
 
  • V. Michel
    MAX IV Laboratory, Lund University, Lund, Sweden
 
  The MAX-IV synchrotron decided to adopt events as the main communication channel in order to increase both the responsiveness and reliability of its TANGO* control system. That means the tango (software) devices do not perform read hardware operation on client request but instead maintain a reliable communication with the hardware while publishing the data through event channels. Reactive programming** is an asynchronous programming paradigm oriented around data streams and the propagation of change. Instead of using the traditional imperative approach of maintaining the integrity of variables, a reactive program expresses the relationship between data streams. High-level tango devices (software devices aggregating data from other tango devices) make very good candidates for reactive programming. More precisely, it is possible to describe the attributes of those devices as relationships, where the input data comes from the event channels of lower-level devices. The facadedevice*** python library is an attempt to implement the reactive machinery within a tango device base class, and provides a descriptive API for defining the relationships in a clear and concise way.
* TANGO controls: http://www.tango-controls.org/
** Reactive programming: http://en.wikipedia.org/wiki/Reactiveprogramming
*** facadedevice: http://github.com/MaxIV-KitsControls/tango-facadedevice
 
video icon Talk as video stream: https://youtu.be/E7kUZBa8MHA  
slides icon Slides MOBPL06 [0.627 MB]  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUDPL01 Reproduce Anything, Anywhere: A Generic Simulation Suite for Tango Control Systems 280
 
  • S. Rubio-Manrique, S. Blanch-Torné, M. Broseta, G. Cuní, D. Fernández-Carreiras, J. Moldes
    ALBA-CELLS Synchrotron, Cerdanyola del Vallès, Spain
  • A. Götz
    ESRF, Grenoble, France
 
  Synchrotron Light Sources are required to operate on 24/7 schedules, while at the same time must be continuously upgraded to cover scientists needs of improving its efficiency and performance. These operation conditions impose rigid calendars to control system engineers, reducing to few hours per month the maintenance and testing time available. The SimulatorDS project has been developed to cope with these restrictions and enable test-driven development, replicating in a virtual environment the conditions in which a piece of software has to be developed or debugged. This software provides devices and scripts to easily duplicate or prototype the structure and behavior of any Tango Control System, using the Fandango python library* to export the control system status and create simulated devices dynamically. This paper will also present first large scale tests using multiple SimulatorDS instances running on a commercial cloud.
* S.Rubio et al., "Dynamic Attributes and other
functional flexibilities of PyTango", ICALEPCS'09,
Kobe, Japan (2009)
 
video icon Talk as video stream: https://youtu.be/YyLu76YV3iQ  
slides icon Slides TUDPL01 [2.732 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUDPL01  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUDPL02 Automatic Formal Verification for EPICS 285
 
  • J.P. Jacky, S.P. Banerian
    University of Washington Medical Center, Seattle, Washington, USA
  • M.D. Ernst, C.A. Loncaric, S. Pernsteiner, Z.L. Tatlock, E. Torlak
    University of Washington, Seattle, USA
 
  We built an EPICS-based radiation therapy machine control system, and are using it to treat patients at our hospital. To help ensure safety, we use a restricted subset of EPICS constructs and programming techniques, and developed several new automated formal verification tools for them. The Symbolic Evaluator checks properties of EPICS database programs (applications), using symbolic evaluation and satisfiability checking. It found serious errors in our control program that were missed by reviews and testing. Other tools are based on a formal semantics for database records, derived from EPICS documentation and expressed in the specification language of an automated theorem prover. The Verified Interpreter is a re-implementation of the parts of the database engine we use, which is proved correct against the formal semantics. We used it to check those parts of EPICS core by differential testing. It found no significant errors (differences between EPICS behavior and the formal semantics). A Verified Compiler is in development. It will compile a database to a standalone program that does not use EPICS core, where the machine code is verified to conform to the formal semantics.  
video icon Talk as video stream: https://youtu.be/CFSnkB5z0GA  
slides icon Slides TUDPL02 [0.389 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUDPL02  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUDPL03 Control System Simulation Using DSEE High Level Instrument Interface and Behavioural Description 292
 
  • A.J.T. Ramaila, K. Madisa, N. Marais
    SKA South Africa, National Research Foundation of South Africa, Cape Town, South Africa
  • A.S. Banerjee, P. Patwari, S. Roy Chaudhuri
    Tata Research Development and Design Centre, Pune, India
  • Y. Gupta
    National Centre for Radio Astrophysics, Tata Institute of Fundamental Research, Pune, India
 
  Funding: National Research Foundation of South Africa. National Centre for Radio Astronomy of India.
Development of KATCP based control systems for the KAT-7 and MeerKAT radio telescopes proved the value of a fully simulated telescope system. Control interface simulators of all telescope subsystems were developed or sourced from the subsystems. SKA SA created libraries to ease creation of simulated KATCP devices. The planned SKA radio telescope chose the TANGO controls framework. To benefit from simulation-driven development tango-simlib, an OSS Python library for data-driven development of TANGO device simulators, is presented. Interface simulation with randomly varying attributes only requires a POGO XMI file; more complex behaviour requires a simple JSON SIMDD (Simulator Description Datafile). Arbitrary behaviour is implemented selectively using Python code. A simulation-control interface for back-channel manipulation of the simulator for e.g. failure conditions is also generated. For the SKA Telescope Manager system an Eclipse DSEE (Domain Specific Engineering Environment) capturing the behaviour and interfaces of all Telescope subsystems is being developed. The DSEE produces tango-simlib SIMDD files, ensuring that the generated simulators match their formal specification.
 
video icon Talk as video stream: https://youtu.be/Ufpe_xsR8pY  
slides icon Slides TUDPL03 [2.877 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUDPL03  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUMPL05 Strategies for Migrating to a New Experiment Setup Tool at the National Ignition Facility 311
 
  • A.D. Casey, R.G. Beeler, C.D. Fry, J. Mauvais, E.R. Pernice, M. Shor, J.L. Spears, D.E. Speck, S.L. West
    LLNL, Livermore, California, USA
 
  Funding: This work performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344.
For the last 10 years, the National Ignition Facility (NIF) has provided scientists with an application, the Campaign Management Tool (CMT), to define the parameters needed to achieve their experimental goals. Conceived to support the commissioning of the NIF, CMT allows users to define over 18,000 settings. As NIF has transitioned to an operational facility, the low-level focus of CMT is no longer required by most users and makes setting up experiments unnecessarily complicated. At the same time, requirements have evolved as operations has identified new functionality required to achieve higher shot execution rates. Technology has also changed since CMT was developed, with the availability of the internet and web-based tools being two of the biggest changes. To address these requirements while adding new laser and diagnostic capabilities, NIF has begun to replace CMT with the Shot Setup Tool (SST). This poses challenges in terms of software development and deployment as the introduction of the new tool must be done with minimal interruption to ongoing operations. The development process, transition strategies and technologies chosen to migrate from CMT to SST will be presented.
LLNL-ABS-728212
 
slides icon Slides TUMPL05 [1.871 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUMPL05  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUMPL06 Conceptual Design of Developing a Mobile App for Distributed Information Services for Control Systems (DISCS) 315
 
  • A. Khaleghi, Mhosseinzadeh. Hossein zadeh sahafi, K. Mahmoudi, M. Oghbaie
    IKIU, Qazvin, Iran
  • M. Akbari, A. Khaleghi, J. Rahighi
    ILSF, Tehran, Iran
 
  In physical systems for having best performance in processes like maintenance, troubleshooting, design, construction, update and etc., we need to store data that describe systems state and its components characteristics. Thus we need a framework for developing an application which can store, integrate and manage data and also execute permitted operations. DISCS (Distributed Information Services for Control Systems) as a framework with mentioned capabilities can help us achieve our goals. In this paper, we first assessed DISCS and its basic architecture and then we implement this framework for maintenance domain of a system. With implementation of maintenance module, we'll be able to store preventive maintenance data and information which help us to trace the problems and analyze situation caused failure and destruction.  
slides icon Slides TUMPL06 [2.386 MB]  
poster icon Poster TUMPL06 [2.184 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUMPL06  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA152 Towards a Time-Constrained Service-Oriented Architecture for Automation and Control in Large-Scale Dynamic Systems 760
 
  • G. Chen, B.R. An
    CAEP, Sichuan, People's Republic of China
 
  Funding: This work is supported by National Natural Science Foundation of China(61333003) and Science and Technology Development Foundation of China Academy of Engineering Physics (14-FZJJ-0422).
Rapidly changing demands for interoperability among heterogeneous systems leads to a paradigm shift from pre-defined control strategies to dynamic customization within many automation systems, e.g., large-scale scien-tific facilities. However, today's mass systems are of a very static nature. Fully changing the control process requires a high amount of expensive manual efforts and is quite error prone. Hence, flexibility will become a key factor in the future control systems. The adoption of web services and Service-Oriented Architecture (SOA) can provide the requested capability of flexibility. Since the adaptation of SOAs to automation systems has to face time-constrained requirements, particular attention should be paid to real-time web services for deterministic behaviour. This paper proposes a novel framework for the integration of a Time-Constrained SOA (TcSOA) into mass automation systems. Our design enables service encapsulation in filed level and evaluates how real time technologies can be synthesized with web services to enable deterministic performance.
 
poster icon Poster TUPHA152 [0.438 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA152  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA153 Python and MATLAB Interfaces to RHIC Controls Data 765
 
  • K.A. Brown, T. D'Ottavio, W. Fu, A. Marusic, J. Morris, S. Nemesure, A. Sukhanov
    BNL, Upton, Long Island, New York, USA
 
  Funding: Work supported by Brookhaven Science Associates, LLC under Contract No. DE-SC0012704 with the U.S. Department of Energy.
In keeping with a long tradition in the BNL Collider-Accelerator Department (C-AD) controls environment, we try to provide general and simple to use interfaces to the users of the controls. In the past we have built command line tools, Java tools, and C++ tools that allow users to easily access live and historical controls data. With more demand for access through other interfaces, we recently built a set of python and MATLAB modules to simplify access to control system data. This is possible, and made relatively easy, with the development of HTTP service interfaces to the controls*. While this paper focuses on the python and MATLAB tools built on top of the HTTP services, this work demonstrates clearly how the HTTP service paradigm frees the developer from having to work from any particular operating system or develop using any particular development tool.
* T. D'Ottavio, et al., these proceedings
 
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA153  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA154 JavaFX and CS-Studio: Benefits and Disadvantages in Developing the Next Generation of Control System Software 770
 
  • C. Rosati
    ESS, Lund, Sweden
  • K.-U. Kasemir
    ORNL, Oak Ridge, Tennessee, USA
  • K. Shroff
    BNL, Upton, Long Island, New York, USA
 
  The new developments inside the CS-Studio community were made using the JavaFX platform to overcome the limitations and difficulties of using Eclipse SWT. This article will explain the benefits and disadvantages of using the JavaFX technology inside Eclipse RCP, and try to foresee the path of the new generations of CS-Studio application.  
poster icon Poster TUPHA154 [2.619 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA154  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA156 Controls Configuration Database at ESS 775
 
  • R.N. Fernandes, S.R. Gysin, S. Regnell
    ESS, Lund, Sweden
  • S. Sah, M. Vitorovic
    Cosylab, Ljubljana, Slovenia
  • V. Vuppala
    FRIB, East Lansing, USA
 
  At the European Spallation Source (ESS), thousands of (physical and logical) devices will be in production and execute a wide range of functions to enable both the machine and end-station instruments to perform as expected from a controls point of view. Typical examples of such devices are racks, power supplies, motors, pumps, PLCs and IOCs. To properly manage the information of devices in an integrated fashion and at the same time allow external applications (consuming this information) to perform well, an application called Controls Configuration Database (CCDB) was developed at ESS. The present paper introduces this application, describes its features, architecture and technology stack, data concepts, interfaces, and ecosystem; finally, it enumerates development directions that could be pursued to further improve it.  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA156  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA159 Malcolm: A Middlelayer Framework for Generic Continuous Scanning 780
 
  • T.M. Cobb, M. Basham, G. Knap, C. Mita, M.P. Taylor, G.D. Yendell
    DLS, Oxfordshire, United Kingdom
  • A. Greer
    OSL, Cambridge, United Kingdom
 
  Malcolm is a middlelayer framework that implements high level configure/run behaviour of control system components like those used in continuous scans. It was created as part of the Mapping project at Diamond Light Source to improve the performance of continuous scanning and make it easier to share code between beamlines. It takes the form of a Python framework which wraps up groups of EPICS PVs into modular "Blocks". A hierarchy of these can be created, with the Blocks at the top of the tree providing a higher level scanning interface to GDA, Diamond's Generic Data Acquisition software. The framework can be used as a library in continuous scanning scripts, or can act as a server via pluggable communications modules. It currently has server and client support for both pvData over pvAccess, and JSON over websockets. When running as a webserver this allows a web GUI to be used to visualize the connections between these blocks (like the wiring of EPICS areaDetector plugins). This paper details the architecture and design of framework, and gives some examples of its use at Diamond.  
poster icon Poster TUPHA159 [0.742 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA159  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA161 SIP4C/C++ at CERN - Status and Lessons Learned 785
 
  • S. Jensen, J.C. Bau, A. Dworak, M. Gourber-Pace, F. Hoguin, J. Lauener, F. Locci, K. Sigerud, W. Sliwinski
    CERN, Geneva, Switzerland
 
  A C/C++ software improvement process (SIP4C/C++) has been increasingly applied by the CERN accelerator Controls group since 2011, addressing technical and cultural aspects of our software development work. A first paper was presented at ICALEPCS 2013*. On the technical side, a number of off-the-shelf software products have been deployed and integrated, including Atlassian Crucible (code review), Google test (unit test), Valgrind (memory profiling) and SonarQube (static code analysis). Likewise, certain in-house developments are now operational such as a Generic Makefile (compile/link/deploy), CMX (for publishing runtime process metrics) and Manifest (capturing library dependencies). SIP4C/C++ has influenced our culture by promoting integration of said products into our binaries and workflows. We describe our current status for technical solutions and how they have been integrated into our environment. Based on testimony from four project teams, we present reasons for and against adoption of individual SIP4C/C++ products and processes. Finally, we show how SIP4C/C++ has improved development and delivery processes as well as the first-line support of delivered products.
*http://jacow.org/ICALEPCS2013/papers/moppc087.pdf, http://jacow.org/ICALEPCS2013/posters/moppc087_poster.pdf
 
poster icon Poster TUPHA161 [0.781 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA161  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA163 CBNG - The New Build Tool Used to Build Millions of Lines of Java Code at CERN 789
 
  • L. Cseppento, V. Baggiolini, E. Fejes, Zs. Kovari, N. Stapley
    CERN, Geneva, Switzerland
 
  A large part of the CERN Accelerator Control System is written in Java by around 180 developers (software engineers, operators, physicists and hardware specialists). The codebase contains more than 10 million lines of code, which are packaged as 1000+ JARs and are deployed as 600+ different client/server applications. All this software are produced using CommonBuild Next Generation (CBNG), an enterprise build tool implemented on top of industry standards, which simplifies and standardizes the way our applications are built. CBNG not only includes general build tool features (such as dependency management, code compilation, test execution and artifact uploading), but also provides traceability throughout the software life cycle and makes releases ready for deployment. The interface is kept as simple as possible: the users declare the dependencies and the deployment units of their projects in one file. This article describes the build process, as well as the design goals, the features, and the technology behind CBNG.  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA163  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA164 Evaluation of Model Based Real Time Feedback Control System on Plasma Density 794
 
  • W.R. Lee, J.S. Hong, G.I. Kwon, T.G. Lee, T.H. Tak
    NFRI, Daejon, Republic of Korea
 
  The KSTAR plasma control system has very powerful monolithic software architecture that has dedicated centralized system architecture. However, due to increasing of real time functionality on distributed local control system, we need a flexible high-performance software framework. A new real time core engine program inherited design philosophy from the Very Large Telescope (VLT) control software. A new Tool for Advanced Control (TAC) engine was based on C++ standard run on Linux. It is a multithreaded core engine program for execution of real time application. The elemental building blocks are chained together to form a control application.
"Design and implementation of a standard framework for KSTAR control system", FED, Volumes 89, 2015
"Designing a common real-time controller for VLT applications", Proc. of SPIE Vol. 5496
 
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA164  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA165 New developments for the TANGO Alarm System 797
 
  • G. Scalamera, L. Pivetta
    Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
  • S. Rubio-Manrique
    ALBA-CELLS Synchrotron, Cerdanyola del Vallès, Spain
 
  The TANGO Alarm System, based on an efficient event-driven, highly configurable rule-based engine named AlarmHandler, has undergone a deep refactoring. The dedicated MySQL database has been dropped; the TANGO database now stores all the configuration whereas the HDB++ historical database keeps all the alarms history. Correlating alarms with any other engineering data is now much simpler. A dynamic attribute is provided for each alarm rule; this allows to easily build a hierarchy of AlarmHandlers. The AlarmHandler manages Attribute quality in the alarm rules and provides possible exceptions resulting in alarm evaluation. Mathematical functions, such as sin, cos, pow, min, max and ternary conditionals are available in the alarm formulae. The TANGO AlarmHandler device server is now based on the IEC 62682 standard.  
poster icon Poster TUPHA165 [1.099 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA165  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA166 New Developments for the HDB++ TANGO Archiving System 801
 
  • L. Pivetta, G. Scalamera, G. Strangolino, L. Zambon
    Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
  • R. Bourtembourg, S. James, J.L. Pons, P.V. Verdier
    ESRF, Grenoble, France
  • S. Rubio-Manrique
    ALBA-CELLS Synchrotron, Cerdanyola del Vallès, Spain
 
  TANGO HDB++ is a high performance event-driven archiving system which stores data with micro-second resolution timestamps, using archivers written in C++. HDB++ currently supports MySQL and Apache Cassandra back-ends but could be easily extended to support additional back-ends. Since the initial release many improvements and new features have been added to the HDB++. In addition to bug-fixes and optimizations, the support for context-based archiving allows to define an archiving strategy for each attribute, specifying when it has to be archived or not. Temporary archiving is supported by means of a time-to-live parameter, available on a per-attribute basis. The Cassandra back-end is using Cassandra TTL native feature underneath to implement the time-to-live feature. With dynamic loading of specific libraries switching back-ends can be done on-the-fly and is as simple as changing a property. Partition and maintenance scripts are now available for HDB++ and MySQL. The HDB++ tools, such as extraction libraries and GUIs, followed HDB++ evolution to help the user to take full advantage of the new features.  
poster icon Poster TUPHA166 [1.957 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA166  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA167 Tango Web Access Modules and Web Clients for NICA Control System 806
 
  • G.S. Sedykh, V.G. Elkin
    JINR/VBLHEP, Dubna, Moscow region, Russia
  • E.V. Gorbachev
    JINR, Dubna, Moscow Region, Russia
 
  NICA (Nuclotron-based Ion Collider Facility) is a new accelerator complex designed at the Joint Institute for Nuclear Research (Dubna, Russia) to study properties of dense baryonic matter. The report describes Tango-modules designed at JINR to provide web-access to Tango-based control system. RestDS is a lightweight Tango REST service, developed in C++ with Boost and OpenSSL libraries. It implements Tango REST API and Tango JINR REST API; WebSocketDS is a lightweight Tango WebSocket service, developed in C++ with WebSocket++, Boost and OpenSSL libraries. It implements Tango attributes reading and command executing through WebSockets. The report also gives examples of web client applications for NICA control system, using these services.  
poster icon Poster TUPHA167 [6.383 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA167  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA168 Improving Throughput and Latency of D-Bus to Meet the Requirements of the Fair Control System 809
 
  • D.S. Day, A. Hahn, C. Prados, M. Reese
    GSI, Darmstadt, Germany
 
  In developing the control system for the FAIR accelerator complex we encountered strict latency and throughput contraints on the timely supply of data to devices controlling ramped magnets. In addition, the timing hardware that interfaces to the White Rabbit timing network may be shared by multiple processes on a single front-end computer. This paper describes the interprocess communication and resource-sharing system, and the consequences of using the D-Bus message bus. Then our experience of improving latency and throughput performance to meet the realtime requirements of the control system is discussed. Work is also presented on prioritisation techniques to allow time-critical services to share the bus with other components.  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA168  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA169 Tango Based Software of Control System of LIA-20 813
 
  • A.I. Senchenko, G.A. Fatkin, P.A. Selivanov, S.S. Serednyakov
    BINP SB RAS, Novosibirsk, Russia
  • G.A. Fatkin, A.I. Senchenko, S.S. Serednyakov
    NSU, Novosibirsk, Russia
 
  The linear induction accelerator LIA-20 for radiography is a pulsed machine designed to provide three consecutive electron bunches. Since every pulse is a distinctive experiment, it is of high importance to provide coherence of the facility state and the experimental data. This paper presents overall software architecture. Challenges and particular approaches to designing of a pulsed machine control system using Tango are discussed.  
poster icon Poster TUPHA169 [4.579 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA169  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA170 Containerized Control Structure for Accelerators 816
 
  • I. Arredondo, J. Jugo
    University of the Basque Country, Faculty of Science and Technology, Bilbao, Spain
 
  Nowadays modern accelerators are starting to use virtualization to implement their control systems. Following this idea, one of the possibilities is to use containers. Containers are highly scalable, easy to produce/reproduce, easy to share, resilient, elastic and low cost in terms of computational resources. All of those are characteristics that fit with the necessities of a well defined and versatile control system. In this paper, a control structure based on this paradigm is discussed. Firstly the technologies available for this task are briefly compared. Starting from containerizing tools and following with the container orchestration technologies. As a result Kubernetes and Docker are selected. Then, the basis of Kubernetes/Docker and how it fits into the control of an accelerator is stated. Following the control applications suitable to be containerized are analyzed. It includes electronic log systems, archiving engines, middleware servers,… Finally, a particular structure for an accelerator based on EPICS as middleware is sketched.  
poster icon Poster TUPHA170 [0.215 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA170  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA171 Development of NICA Control System: Access Control and Logging 822
 
  • E.V. Gorbachev
    JINR, Dubna, Moscow Region, Russia
  • G.S. Sedykh
    JINR/VBLHEP, Dubna, Moscow region, Russia
 
  NICA (Nuclotron-based Ion Collider fAcility) is a new accelerator complex being constructed at the Joint Institute for Nuclear Research (Dubna, Russia). It will provide heavy ion colliding experiments to study properties of dense baryonic matter. The TANGO based control system of the NICA complex is under development now. The report describes design of the role-based authorization and logging system. It allows limiting access to any Tango device command or attribute according to a user roles and location. The system also restricts access to the Tango database and records details of its modifications. The authorization is performed on the Tango server side thus complementing the native TANGO client-side access control. First tests of the system were performed during the latest Nuclotron run.  
poster icon Poster TUPHA171 [1.992 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA171  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA173 A Web-Based Report Tool for Tango Control Systems via Websockets 826
 
  • M. Broseta, A. Burgos, G. Cuní, D. Fernández-Carreiras, D. Roldán, S. Rubio-Manrique
    ALBA-CELLS Synchrotron, Cerdanyola del Vallès, Spain
 
  Beamlines at Synchrotron Light sources operate 24 hours/day requiring Beamline scientists to have tools to monitor the current state of the Beamline without interfering with the measurements being carried out. The previous web report system developed at ALBA was based on cron tasks querying the Tango Control system and generating html files. The new system integrates all those automatic tasks in a Tornado Tango Device letting the users create their own reports without requiring the intervention of the software support groups. This device runs a Tornado web server providing an html5 web interface to create, customize and visualize its reports in real time (via websockets). Originally designed for the vacuum engineers to monitor the vacuum, is actually used by the scientists and engineers involved in the experiment and the different on-call services to remotely check the beamline overall status.  
poster icon Poster TUPHA173 [0.867 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA173  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA174 Cumbia: A New Library for Multi-Threaded Application Design and Implementation 830
 
  • G. Strangolino
    Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
 
  Cumbia is a new library that offers a carefree approach to multi-threaded application design and implementation. Written from scratch, it can be seen as the evolution of the QTango library, because it offers a more flexible and object oriented multi-threaded programming style. Less concern about locking techniques and synchronization, and well defined design patterns stand for more focus on the work to be performed inside Cumbia Activities and reliable and reusable software as a result. The user writes Activities and decides when their instances are started and to which thread they belong. A token is used to register an Activity, and activities with the same token are run in the same thread. Computed results can be forwarded to the main execution thread, where a GUI can be updated. In conjunction with the Cumbia-Tango module, this framework serves the developer willing to connect an application to the Tango control system. The integration is possible both on the client and the server side. An example of a TANGO device using Cumbia to do work in background has already been developed, as well as simple Qt graphical clients relying on the framework.  
poster icon Poster TUPHA174 [0.567 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA174  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA177 Status of the Development of the Experiment Data Acquisition Pipeline for the European Spallation Source 835
 
  • A.H.C. Mukai, M.J. Christensen, J.M.C. Nilsson, T.S. Richter, M. Shetty
    ESS, Copenhagen, Denmark
  • F.A. Akeroyd, M.J. Clarke
    STFC/RAL/ISIS, Chilton, Didcot, Oxon, United Kingdom
  • M. Brambilla, M. Könnecke, D. Werder
    PSI, Villigen PSI, Switzerland
  • M.D. Jones
    Tessella, Abingdon, United Kingdom
 
  Funding: This project is partially funded by the European Union Framework Programme for Research and Innovation Horizon 2020, under grant agreement 676548.
The European Spallation Source will produce more data than existing neutron facilities, due to higher accelerator power and to the fact that all data will be collected in event mode with no hardware veto. Detector data will be acquired and aggregated with metadata coming from sources such as sample environment, choppers and motion control. To aggregate data we will use Apache Kafka with FlatBuffers serialisation. A common schema repository defines the formats to be used by the data producers and consumers. The main consumers we are prototyping are a file writer for NeXus files and live reduction and visualisation via Mantid. A Jenkins-based setup using virtual machines is being used for integration tests, and physical servers are available in an integration laboratory alongside real hardware. We present the current status of the data acquisition pipeline and results from the testing and integration work going on at the ESS Data Management and Software Centre in collaboration with in-kind and BrightnESS partners.
 
poster icon Poster TUPHA177 [0.434 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA177  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA178 Abstracted Hardware and Middleware Access in Control Applications 840
 
  • M. Killenberg, M. Heuer, M. Hierholzer, T. Kozak, L.P. Petrosyan, Ch. Schmidt, N. Shehzad, G. Varghese, M. Viti
    DESY, Hamburg, Germany
  • K. Czuba, A. Dworzanski
    Warsaw University of Technology, Institute of Electronic Systems, Warsaw, Poland
  • C.P. Iatrou, J. Rahm
    TU Dresden, Dresden, Germany
  • M. Kuntzsch, R. Steinbrück
    HZDR, Dresden, Germany
  • S. Marsching
    Aquenos GmbH, Baden-Baden, Germany
  • A. Piotrowski
    FastLogic Sp. z o.o., Łódź, Poland
  • P. Prędki
    Rapid Development, Łódź, Poland
 
  Hardware access often brings implementation details into a control application, which are subsequently published to the control system. Experience at DESY has shown that it is beneficial for the software quality to use a high level of abstraction from the beginning of a project. Some hardware registers for instance can immediately be treated as process variables if an appropriate library is taking care of most of the error handling. Other parts of the hardware need an additional layer to match the abstraction level of the application. Like this development cycles can be shortened and the code is easier to read and maintain because the logic focuses on what is done, not how it is done. We present the abstraction concept we are using, which is not only unifying the access to hardware but also how process variables are published via the control system middleware.  
poster icon Poster TUPHA178 [0.875 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA178  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THBPL01 C2MON SCADA Deployment on CERN Cloud Infrastructure 1103
 
  • B. Copy, M. Bräger, F. Ehm, A. Lossent, E. Mandilara
    CERN, Geneva, Switzerland
 
  The CERN Control and Monitoring Platform (C2MON) is an open-source platform for industrial controls data acquisition, monitoring, control and data publishing. C2MON's high-availability, redundant capabilities make it particularly suited for a large, geographically scattered context such as CERN. The C2MON platform relies on the Java technology stack at all levels of its architecture. Since end of 2016, CERN offers a platform as a service (PaaS) solution based on RedHat Openshift. Initially envisioned at CERN for web application hosting, Openshift can be leveraged to host any software stack due to its adoption of the Docker container technology. In order to make C2MON more scalable and compatible with Cloud Computing, it was necessary to containerize C2MON components for the Docker container platform. Containerization is a logical process that forces one to rethink a distributed architecture in terms of decoupled micro-services suitable for a cloud environment. This paper explains the challenges met and the principles behind containerizing a server-centric Java application, demonstrating how simple it has now become to deploy C2MON in any cloud-centric environment.

 
video icon Talk as video stream: https://youtu.be/4NbM1yDO_TM  
slides icon Slides THBPL01 [3.176 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THBPL01  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THBPL02 Behavioural Models for Device Control 1109
 
  • L. Andolfato, M. Comin, S. Feyrin, M. Kiekebusch, J. Knudstrup, F. Pellegrin, D. Popovic, C. Rosenquist, R. Schmutzer
    ESO, Garching bei Muenchen, Germany
 
  ESO is in the process of designing a new instrument control application framework for the ELT project. During this process, we have used the experience in HW control gained from the first and second generation of VLT instruments that have been in operation for almost 20 years. The preliminary outcome of this analysis is a library of Statecharts models illustrating the behaviour of some of the most commonly used devices in telescope and instrument control systems. This paper describes the architectural aspects taken into consideration when designing the models such as HW/SW state representation, common/specialized behaviour, and failure management. An extension to Harel's formalism to facilitate reusability by dynamic creation of orthogonal regions is also proposed. The paper details the behaviour of some devices like shutters, lamps and motors together with the rationale behind the modelling choices. A mapping of the models to a concrete implementation using real HW components is suggested. Although these models have been designed following the principles of our conceptual architecture, they are still generic and platform independent, so they can be easily reused in other projects.  
video icon Talk as video stream: https://youtu.be/aJr6SkBmsuY  
slides icon Slides THBPL02 [1.520 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THBPL02  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THBPL03 A New ACS Bulk Data Transfer Service for CTA 1116
 
  • M.A. Araya, R.S. Castillo, M.I. Jara, L. Pizarro, H.H. von Brand
    UTFSM, Valparaíso, Chile
  • E. Lyard
    University of Geneva, Geneva, Switzerland
  • I. Oya
    DESY Zeuthen, Zeuthen, Germany
  • I. Oya
    Humboldt University Berlin, Institut für Physik, Berlin, Germany
 
  Funding: Centro Científico Tecnológico de Valparaíso (CONICYT FB-0821)
The ALMA Common Software (ACS) framework provides Bulk Data Transfer (BDT) service implementations that need to be updated for new projects that will use ACS, such as the Cherenkov Telescope Array (CTA) and other projects, with most cases having quite different requirements than ALMA. We propose a new open-source BDT service for ACS based on ZeroMQ, that meets CTA data transfer specifications while maintaining retro-compatibility with the closed-source solution used in ALMA. The service uses the push-pull pattern for data transfer, the publisher-subscriber pattern for data control, and Protocol Buffers for data serialization, having also the option to integrate other serialization options easily. Besides complying with ACS interface definition to be used by ACS components and clients, the service provide an independent API to be used outside the ACS framework. Our experiments show a good compromise between throughput and computational effort, suggesting that the service could scale up in terms of number of producers, number of consumers and network bandwidth.
 
video icon Talk as video stream: https://youtu.be/F0jOkHOz0uw  
slides icon Slides THBPL03 [7.087 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THBPL03  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THBPL04 The Design of Tango Based Centralized Management Platform for Software Devices 1121
 
  • Z. Ni, J. Liu, J. Luo, X. Zhou
    CAEP, Sichuan, People's Republic of China
 
  Tango provides the Tango device server object model(TDSOM), whose basic idea is to treat each device as an object. The TDSOM can be divided into 4 basic elements, including the device, the server, the database and the application programmers interface. On the basis of the TDSOM, we design a centralized platform for software device management, named VisualDM, providing standard servers and client management software. Thus the functionality of VisualDM are mutli-folds: 1) dynamically defining or configuring the composition of a device container at run-time; 2) visualization of remote device management based on system scheduling model; 3) remote deployment and update of software devices; 4) registering, logouting, starting and stopping devices. In this paper, platform compositions, module functionalities, the design concepts are discussed. The platform is applied in computer integrated control systems of SG facilities.  
video icon Talk as video stream: https://youtu.be/5RveBXleczw  
slides icon Slides THBPL04 [1.509 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THBPL04  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THBPL05 The ELT Linux Development Environment 1125
 
  • F. Pellegrin, C. Rosenquist
    ESO, Garching bei Muenchen, Germany
 
  The Extremely Large Telescope is a 39-metre ground-based telescope being built by ESO. It will be the largest optical/near-infrared telescope in the world and first light is foreseen for 2024. The overall ELT Linux development environment will be presented with an in-depth presentation of its core, the waf build system, and the customizations that ESO is currently developing. The ELT software development for telescopes and instruments poses many challenges to cover the different needs of such a complex system:a variety of technologies, Java, C/C++ and Python as programming languages, Qt5 as the GUI toolkit, communication frameworks such as OPCUA, DDS and ZeroMQ, the interaction with entities such as PLCs and real-time hardware, and users, in-house and not, looking at new usage patterns. All this optimized to be on time for the first light. To meet these requirements, a set of tools was selected. Its content ranges from an IDE, to compilers, interpreters, analysis and debugging tools for the various languages and operations. At the heart of the toolkit lies the modern build framework waf:a versatile tool written in Python selected due to its multiple language support and high performance.  
video icon Talk as video stream: https://youtu.be/Wk3efalQnY4  
slides icon Slides THBPL05 [0.504 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THBPL05  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THBPL06 High Performance RDMA-Based Daq Platform Over PCIe Routable Network 1131
 
  • W. Mansour, P. Fajardo, N. Janvier
    ESRF, Grenoble, France
 
  Funding: Wassim Mansour acknowledges support from the EUCALL project which has received funding from the European Union's H2020 research and innovation programme under grant agreement No 654220.
The ESRF initiated few years ago the development of a novel platform for optimised transfer of 2D detector data based on zero-copy Remote Direct Memory Access techniques. The purpose of this new scheme, under the name of RASHPA, is to efficiently dispatch with no CPU intervention multiple parallel multi-GByte/s data streams produced by modular detectors directly from the detector head to computer clusters for data storage, visualisation and distributed data treatment. The RASHPA platform is designed to be implementable using any data link and transfer protocol that supports RDMA write operations and that can trigger asynchronous events. This paper presents the ongoing work for the first implementation of RASHPA in a real system using the hardware platform of the Medipix3 based SMARTPIX hybrid pixel detector developed at ESRF and relying on switched PCIe over cable network for data transfer. It details the implementation of the RASPHA controller at the detector side and provides input on the software for the management of the overall data acquisition system at the receiver side. The implementation and use of a PCIe switch built with components off-the-shelf is also discussed.
 
video icon Talk as video stream: https://youtu.be/dJDtekXejfg  
slides icon Slides THBPL06 [3.835 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THBPL06  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMPL03 A New Simulation Architecture for Improving Software Reliability in Collider-Accelerator Control Systems 1261
 
  • Y. Gao, T.G. Robertazzi
    Stony Brook University, Stony Brook, New York, USA
  • K.A. Brown, J. Morris, R.H. Olsen
    BNL, Upton, Long Island, New York, USA
 
  Funding: Work supported by Brookhaven Science Associates, LLC under Contract No. DE-SC0012704 with the U.S. Department of Energy.
The Relativistic Heavy Ion Collider (RHIC) complex of accelerators at Brookhaven National Laboratory (BNL) operates using a large distributed controls system, consisting of approximately 1.5 million control points, over 430 VME based control modules, and thousands of server processes. We have developed a new testing platform that can be used to improve code reliability and help streamline the code development process by adding more automated testing. The testing platform simulates the control system using the actual controls system code base but by redirecting the I/O to simulated interfaces. In this report, we will describe the design of the system and the current status of its development.
 
slides icon Slides THMPL03 [0.666 MB]  
poster icon Poster THMPL03 [0.674 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THMPL03  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMPL04 Telescope Control System of the ASTRI SST-2M prototype for the Cherenkov Telescope Array 1266
 
  • E. Antolini, G. Tosti
    Università degli di Perugia, Perugia, Italy
  • L.A. Antonelli, S. Gallozzi, S. Lombardi, F. Lucarelli, M. Mastropietro, V. Testa
    INAF O.A. Roma, Roma, Italy
  • P. Bruno, G. Leto, S. Scuderi
    INAF-OACT, Catania, Italy
  • A. Busatta, C. Manfrin, G. Marchiori, E. Marcuzzi
    EIE Group s.r.l., Venezia, Italy
  • R. Canestrari, G. Pareschi, J. Schwarz, S. Scuderi, G. Sironi, G. Tosti
    INAF-Osservatorio Astronomico di Brera, Merate, Italy
  • E. Cascone
    INAF - Osservatorio Astronomico di Capodimonte, Napoli, Italy
  • V. Conforti, F. Gianotti, M. Trifoglio
    INAF, Bologna, Italy
  • D. Di Michele, C. Grigolon, P. Guarise
    Beckhoff Automation Srl, Limbiate, Italy
  • E. Giro
    INAF- Osservatorio Astronomico di Padova, Padova, Italy
  • N. La Palombara
    INAF - Istituto di Astrofisica Spaziale e Fisica Cosmica di Milano, Milano, Italy
  • F. Russo
    INAF O.A. Torino, Pino Torinese, Italy
 
  The ASTRI SST-2M telescope is a prototype proposed for the Small Size class of Telescopes of the Cherenkov Telescope Array (CTA). The ASTRI prototype adopts innovative solutions for the optical system, which poses stringent requirements in the design and development of the Telescope Control System (TCS), whose task is the coordination of the telescope devices. All the subsystems are managed independently by the related controllers, which are developed through a PC-Based technology and making use of the TwinCAT3 environment for the software PLC. The TCS is built upon the ALMA Common Software framework and uses the OPC-UA protocol for the interface with the telescope components, providing a simplified full access to the capabilities offered by the telescope subsystems for normal operation, testing, maintenance and calibration activities. In this contribution we highlight how the ASTRI approach for the design, development and implementation of the TCS has made the prototype a stand-alone intelligent and active machine, providing also an easy way for the integration in an array configuration such as the future ASTRI mini-array proposed to be installed at the southern site of the CTA.  
slides icon Slides THMPL04 [1.212 MB]  
poster icon Poster THMPL04 [1.773 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THMPL04  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMPL05 Applying Ontological Approach to Storing Configuration Data 1271
 
  • M.A. Ilina, P.B. Cheblakov
    BINP SB RAS, Novosibirsk, Russia
 
  Control systems of large experimental facilities need a great number of heterogeneous interconnected parameters to control software applications. As configuration information grows in volume, it becomes harder to be maintained manually and poses a potential threat to data integrity. To tackle this problem, we applied ontological approach to storing configuration data. Ontology is a formal representation of concepts and relations of the domain of discourse, enriched by rules for inferring assumed knowledge. We designed the ontology that describes the controlling electronics for the double-direction bipolar transfer line K-500, which transports beam from the Injection Complex to colliders VEPP-4 and VEPP-2000 at BINP, Novosibirsk, Russia. We populated the ontology by importing data from existing configuration files of the control system and developed the interface for querying configuration data. The designed storage has several benefits over the conventional approaches. It maintains heterogeneous objects with non-trivial dependencies in centralized form, performs data verification and can be expanded to the diverse ontology describing all information about the facility.  
slides icon Slides THMPL05 [1.212 MB]  
poster icon Poster THMPL05 [0.442 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THMPL05  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMPA03 A Simulation System for the European Spallation Source (ESS) Distributed Data Streaming 1307
 
  • C. Reis, R. Borghes, G. Kourousias, R. Pugliese
    Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
 
  European Spallation Source (ESS), the next-generation neutron source facility, is expected to produce an immense amount of data. Various working groups mostly associated with the EU project BrightnESS aim at developing solutions for its data-intensive challenges. The real-time data management and aggregation is among the top priorities. The Apache KAFKA framework will be the base for ESS real-time distributed data streaming. One of the major challenges is the simulation of data streams from experimental data generation to data analysis and storage. This presentation outlines a simulation approach based on the DonkiOrchestra data acquisition and experiment control framework, re-purposed as a data streaming simulation system compatible with the ESS-KAFKA infrastructure.  
slides icon Slides THMPA03 [1.063 MB]  
poster icon Poster THMPA03 [1.409 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THMPA03  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMPA06 Building Controls Applications Using HTTP Services 1320
 
  • T. D'Ottavio, K.A. Brown, A. Fernando, S. Nemesure
    BNL, Upton, Long Island, New York, USA
 
  Funding: Work supported by Brookhaven Science Associates, LLC under Contract No. DE-SC0012704 with the U.S. Department of Energy.
This paper describes the development and use of an HTTP services architecture for building controls applications within the BNL Collider-Accelerator department. Instead of binding application services (access to live, database, and archived data, etc.) into monolithic applications using libraries written in C++ or Java, this new method moves those services onto networked processes that communicate with the core applications using the HTTP protocol and a RESTful interface. This allows applications to be built for a variety of different environments, including web browsers and mobile devices, without the need to rewrite existing library code that has been built and tested over many years. Making these HTTP services available via a reverse proxy server (NGINX) adds additional flexibility and security. This paper presents implementation details, pros and cons to this approach, and expected future directions.
 
slides icon Slides THMPA06 [0.966 MB]  
poster icon Poster THMPA06 [0.386 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THMPA06  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA152 Renovation and Extension of Supervision Software Leveraging Reactive Streams 1753
 
  • M.A. Galilée, A. Calia, J.Q.C. Do, K. Fuchsberger, J.C. Garnier, K.H. Krol, M. Osinski, M.P. Pocwierz, T.M. Ribeiro, A. Stanisz, M. Zerlauth
    CERN, Geneva, Switzerland
 
  Inspired by the recent developments of reactive programming and the ubiquity of the concept of streams in modern software industry, we assess the relevance of a reactive streams solution in the context of accelerator controls. The promise of reactive streams, to govern the exchange of data across asynchronous boundaries at a rate sustainable for both the sender and the receiver, is alluring to most data-centric processes of CERN's accelerators. Taking advantage of the renovation of one key software piece of our supervision layer, the Beam Interlock System GUI, we look at the architecture, design and implementation of a reactive streams based solution. Additionally, we see how this model allows us to re-use components and contributes naturally to the extension of our tool set. Lastly, we detail what hindered our progression and how our solution can be taken further.  
poster icon Poster THPHA152 [0.879 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA152  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA153 Real-Time Java to Support the Device Property Model 1757
 
  • C. Cardin, M.A. Galilée, J.C. Garnier, K.H. Krol, M. Osinski, A. Stanisz, M. Zerlauth
    CERN, Geneva, Switzerland
 
  Today's front-end controllers, which are widely used in CERNs controls environment, feature CPUs with high clock frequencies and extensive memory storage. Their specifications are comparable to low-end servers, or even smartphones. The Java Virtual Machine (JVM) has been running on similar configurations for years now and it seems natural to evaluate the behaviour of JVMs on this environment to characterize if Firm or Soft real-time constraints can be addressed efficiently. Using Java at this low-level offers the opportunity to refactor CERNs current implementation of the device/property model and to move away from a monolithic architecture to a promising and scalable separation of the area of concerns, where the front-end may publish raw data that other layers would decode and re-publish. This paper presents first the evaluation of Machine Protection control system requirements in terms of real-time constraints and a comparison of the performance of different JVMs regarding these constraints. In a second part, it will detail the efforts towards a first prototype of a minimal RT Java supervision layer to provide access to the hardware layer.  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA153  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA154 Experiment Control with EPICS7 and Symmetric Multiprocessing on RTEMS 1762
 
  • H. Junkes, H.-J. Freund, L. Gura, M. Heyde, P. Marschalik, Z. Yang
    FHI, Berlin, Germany
 
  Funding: This project has received funding from the European Research Council (ERC) under the European Union's Advanced Grant (AdG), 2014, ERC-2014-ADG
At the Fritz Haber Institute of the Max Planck Society a new very high speed scanning tunneling microscope (VHS-STM) is being set up to resolve glass dynamics (Cryvisil). We have been successfully using EPICS (v3) for many of our most important and larger experiments. However, for the new project, the data throughput to be achieved with EPICS (v3) is not sufficient. For this reason, we have completely aligned the experiment control for the STM to the new EPICS7 by using the new protocol pvAccess. The development versions of EPICS 3.16 and bundleCPP of the EPICSv4-suite are in use. Both of them will be the base components of the new EPICS7 Framework. The expected data rate is 300 MByte/s for up to 5 hrs to address the transition from a vitreous state to a crystal-line in real space over a wide range of temperatures ranging from cryogenic temperatures to 1500 K (*). In the poster we will show the control system setup (VMEbus, RTEMS-SMP, MVME6100, MVME2500, V375, SIS3316) and the used environment like ArchiverAppliance and pva2pva gateway.
* http://cordis.europa.eu/project/rcn/198020en.html
 
poster icon Poster THPHA154 [9.587 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA154  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA155 PLC Integration in EPICS Environment: Comparison Between OPC Server and Direct Driver Solutions 1767
 
  • L. Antoniazzi, A. Baldo, M.G. Giacchini, M. Montis
    INFN/LNL, Legnaro (PD), Italy
 
  In the IFMIF EVEDA project*, INFN-LNL Laboratory has been involved in the design and construction of a normal conducting Radio Frequency Quadrupole (RFQ) used to bunch and accelerate a 130 mA steady beam to 5 MeV. The EPICS based control system** has been entirely developed in house using different hardware solutions: PLC for tasks where security is the most critical feature, VME system where the acquisition speed rate is crucial, common hardware when only integration is required without any particular feature in terms of security. Integration of PLCs into EPICS environment was originally accomplished through OPC DA server*** hosted by a Windows embedded industrial PC. Due to the issues analyzed in injector LCS, LNL proposed to migrate to the usage of EPICS Direct Driver solution based on s7plc****. The driver itself is suitable for direct communication between EPICS and PLCs, but it doesn't take care of data update and synchronization in case of communication failure. As consequence LNL team designed a dedicated method based on state machine to manage and verify data integrity between the two environments, also in case of connection lost or failure.
* httpd://www.ifmif.org
** http://www.aps.anl.gov/epics/
*** www.opcfoundation.org
**** http://Epics.web.psi.ch/software/s7plc/
 
poster icon Poster THPHA155 [2.894 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA155  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA157 IFMIF EVEDA RFQ Local Control System Integration into Main Control System 1771
 
  • M. Montis, L. Antoniazzi, A. Baldo, M.G. Giacchini
    INFN/LNL, Legnaro (PD), Italy
  • A. Jokinen
    F4E, Germany
  • A. Marqueta
    IFMIF/EVEDA, Rokkasho, Japan
 
  The RFQ apparatus Local Control System built for IFMIF EVEDA Project* has been designed and realized for being both a standalone architecture and part of a more complex control system composed by different sub-systems. This approach let RFQ's engineers and scientists have a degree of freedom during power tests in Legnaro and during the RFQ integration in IFMIF EVEDA facility in Rokkasho. In this paper we will describe the different aspects observed when the LCS was converted from the standalone configuration to the final integrated one.
* httpd://www.ifmif.org
 
poster icon Poster THPHA157 [3.961 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA157  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA158 First Step to Manage Migration to Siemens S7-15XX PLCs using TANGO Framework 1776
 
  • P. Rommeluère, Y.-M. Abiven, A. Buteau, P. Monteiro
    SOLEIL, Gif-sur-Yvette, France
  • P. Betinelli-Deck
    CEA, Gif-sur-Yvette, France
  • S.M. Minolli
    NEXEYA Systems, La Couronne, France
 
  Over the past years, SOLEIL* uses SIEMENS PLCs** as a standard for signal monitoring and security. SOLEIL is today thinking about a major upgrade of the facilities, and has to adapt its organization to face efficient operation and R&D. In this context, automation experts are now merged in a single group. In a middle term, migration from the existing 3XX series PLCs to the new 15XX series will be necessary. As the new 15XX series PLCs do not support Fetch/Write protocol anymore, a first step is the upgrade of TANGO*** PLCServer. This software device ensures data exchange with supervisory applications using TANGO infrastructure. It opens multiple TCP/IP connections to the PLC hardware, manages asynchronous communication to read/write PLC Datablocks and acts as a server for other clients. The upgrade of PLCServer is based on Snap7**** open source Ethernet communication suite for interfacing with Siemens PLCs using the S7 native protocol. This paper details the evolutions, performances and limitations of this new version of the PLCServer.
*French synchrotron light facility
**Programmable Logic Controller
***Toolkit for distributed control systems, supervisory and data acquisition (www.tango-controls.org)
****snap7.sourceforge.net
 
poster icon Poster THPHA158 [3.562 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA158  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA159 What is Special About PLC Software Model Checking? 1781
 
  • D. Darvas, I. Majzik
    BUTE, Budapest, Hungary
  • E. Blanco Viñuela
    CERN, Geneva, Switzerland
 
  Model checking is a formal verification technique to check given properties of models, designs or programs with mathematical precision. Due to its high knowledge and resource demand, the use of model checking is restricted mainly to core parts of highly critical systems. However, we and many other authors have argued that automated model checking of PLC programs is feasible and beneficial in practice. In this paper we aim to explain why model checking is applicable to PLC programs even though its use for software in general is too difficult. We present an overview of the particularities of PLC programs which influence the feasibility and complexity of their model checking. Furthermore, we list the main challenges in this domain and the solutions proposed in previous works.  
poster icon Poster THPHA159 [0.444 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA159  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA160 Experience With Static PLC Code Analysis at CERN 1787
 
  • C. Tsiplaki Spiliopoulou, E. Blanco Viñuela, B. Fernández Adiego
    CERN, Geneva, Switzerland
 
  The large number of industrial control systems based on PLCs (Programmable Logic Controllers) available at CERN implies a huge number of programs and lines of code. The software quality assurance becomes a key point to ensure the reliability of the control systems. Static code analysis is a relatively easy-to-use, simple way to find potential faults or error-prone parts in the source code. While static code analysis is widely used for general purpose programming languages (e.g. Java, C), this is not the case for PLC programs. We have analyzed the possibilities and the gains to be expected from applying static analysis to the PLC code used at CERN, based on the UNICOS framework. This paper reports on our experience with the method and the available tools and sketches an outline for future work to make this analysis method practically applicable.  
poster icon Poster THPHA160 [0.555 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA160  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA161 Applying Model Checking to Critical PLC Applications: An ITER Case Study 1792
 
  • B. Fernández Adiego, E. Blanco Viñuela, D. Darvas
    CERN, Geneva, Switzerland
  • B. Avinashkrishna, Y.C. Gaikwad, S. Sreekuttan
    Tata Consultancy Services, Pune, India
  • G.S. Lee
    Mobiis Co., Ltd., Seoul, Republic of Korea
  • R. Pedica
    Vitrociset s.p.a, Roma, Italy
  • I. Prieto Diaz
    IBERINCO, Madrid, Spain
  • Gy. Sallai
    BUTE, Budapest, Hungary
 
  The development of critical systems requires the application of verification techniques in order to guarantee that the requirements are met in the system. Standards like IEC 61508 provide guidelines and recommend the use of formal methods for that purpose. The ITER Interlock Control System has been designed to protect the tokamak and its auxiliary systems from failures of the components or incorrect machine operation. ITER has developed a method to assure that some critical operator commands have been correctly received and executed in the PLC (Programmable Logic Controller). The implementation of the method in a PLC program is a critical part of the interlock system. A methodology designed at CERN has been applied to verify this PLC program. The methodology is the result of 5 years of research in the applicability of model checking to PLC programs. A proof-of-concept tool called PLCverif implements this methodology. This paper presents the challenges and results of the ongoing collaboration between CERN and ITER on formal verification of critical PLC programs.  
poster icon Poster THPHA161 [0.457 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA161  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA162 Monitoring of CERN's Data Interchange Protocol (DIP) System 1797
 
  • B. Copy, E. Mandilara, I. Prieto Barreiro, F. Varela
    CERN, Geneva, Switzerland
 
  CERN's Data Interchange Protocol (DIP)* is a publish-subscribe middleware infrastructure developed at CERN to allow lightweight communications between distinct industrial control systems (such as detector control systems or gas control systems). DIP is a rudimentary data exchange protocol with a very flat and short learning curve and a stable specification. It also lacks support for access control, smoothing or data archiving. This paper presents a mechanism which has been implemented to keep track of every single publisher or subscriber node active in the DIP infrastructure, along with the DIP name servers supporting it. Since DIP supports more than 55,000 publications, regrouping hundreds of industrial control processes, keeping track of the system activity requires advanced visualization mechanisms (e.g. connectivity maps, live historical charts) and a scalable web-based interface** to render this information is essential.
* W. Salter et al., "DIP Description" LDIWG (2004) https://edms.cern.ch/file/457113/2/DIPDescription.doc
** B. Copy et al., "MOPPC145" - ICALEPCS 2013, San Francisco, USA
 
poster icon Poster THPHA162 [3.066 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA162  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA163 A Model-driven Generator to Automate the Creation of HMIs for the CERN Gas Control Systems 1801
 
  • T. Bato, G. Thomas, F. Varela
    CERN, Geneva, Switzerland
 
  A total of 33 gas control applications are currently in production in the LHC Experiments and the CERN accelerator complex. Each application contains around fifty synoptic views and hundreds of plots. In this paper, the entirely model-driven approach followed to generate all these HMIs is presented. The procedure implemented simplifies the creation of these graphical interfaces; allowing the propagation of changes to all visualizations at once in a coherent manner, thus reducing the long-term maintenance effort. The generation tool enables the creation of files of similar content based on templates, specific logic (rules) and variables written in simple user-defined XML files. This paper also presents the software design and the major evolution challenges currently faced, how the functions performed by the tool, as well as the technologies used in its implementation, have evolved while ensuring compatibility with the existing models.  
poster icon Poster THPHA163 [2.762 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA163  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA164 Automated Software Testing for Control and Monitoring a Radio Telescope 1806
 
  • B. Xaia, T. Gatsi, O.J. Mokone
    SKA South Africa, National Research Foundation of South Africa, Cape Town, South Africa
 
  Funding: SKA (SA) - National Research Foundation (NRF)
The 64-dish MeerKAT radio telescope, under construction in South Africa, will become the largest and most sensitive radio telescope in the Southern Hemisphere until integrated with the Square Kilometre Array (SKA). Software testing is an integral part of software development that is aimed at evaluating software quality; verifying and validating that the given requirements are met. This poster will present the approach, techniques and tools used to automate the testing of the software that controls and monitors the telescope. Jenkins continuous integration system is the server used to run the automated tests together with Git and Docker as the supporting tools to the process. In addition to the aforementioned tools we also use an Automated Qualification Framework (AQF) which is an in-house developed software that automates as much as possible of the functional testing of the Control and Monitoring (CAM) software. The AQF is invoked from Jenkins by launching a fully simulated CAM system and executing the Integrated CAM Tests against this simulated system as CAM Regression Testing. The advantages and limitations of the automated testing will be elaborated in the paper in detail.
 
poster icon Poster THPHA164 [0.675 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA164  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA166 Control System Integration of a MicroTCA.4 Based Digital LLRF Using the ChimeraTK OPC UA Adapter 1811
 
  • R. Steinbrück, M. Kuntzsch, P. Michel
    HZDR, Dresden, Germany
  • M. Hierholzer, M. Killenberg, H. Schlarb
    DESY, Hamburg, Germany
  • C.P. Iatrou, J. Rahm, L. Urbas
    TU Dresden, Dresden, Germany
 
  The superconducting linear electron accelerator ELBE at Helmholtz-Zentrum Dresden-Rossendorf is a versatile light source. It operates in continuous wave (CW) mode to provide a high average beam current. To fulfil the requirements for future high resolution experiments the analogue low level radio frequency control (LLRF) is currently replaced by a digital μTCA.4 based LLRF developed at DESY, Hamburg. Operation and parametrization is realized by a server application implemented by DESY using the ChimeraTK software framework. To interface the WinCC 7.3 based ELBE control system an OPC UA Adapter for ChimeraTK has been developed in cooperation with DESY and Technische Universität Dresden (TUD). The poster gives an overview of the collaborating parties, the variable mapping scheme used to represent LLRF data in the OPC UA server address space and integration experiences with different industrial OPC UA Clients like WinCC 7.3 and LabVIEW.  
poster icon Poster THPHA166 [0.997 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA166  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA167 EPICS Data Streaming and HDF File Writing for ESS Benchmarked Using the Virtual AMOR Instrument 1815
 
  • D. Werder, M. Brambilla, M. Koennecke
    PSI, Villigen PSI, Switzerland
  • F.A. Akeroyd, M.J. Clarke
    STFC/RAL/ISIS, Chilton, Didcot, Oxon, United Kingdom
  • M.D. Jones
    Tessella, Abingdon, United Kingdom
  • A.H.C. Mukai, J.M.C. Nilsson, T.S. Richter
    ESS, Copenhagen, Denmark
 
  Funding: This work is funded by the European Union Framework Programme for Research and Innovation Horizon 2020, under grant agreement 676548.
As a contribution to the European Spallation Source as part of BrightnESS, the Paul Scherrer Institut is involved in the streaming of EPICS data and the writing of NeXus compliant HDF5 files. We combine this development with the transition of the AMOR instrument at the Paul Scherrer Institut to EPICS and a streaming based data architecture. To guide our development before ESS has operational equipment, we use a detailed simulation of the instrument AMOR at SINQ to test and integrate our data streaming components. We convert EPICS data sources to Google FlatBuffers as our message format and distribute them using Apache Kafka. On the file writing side, we combine the messages from EPICS data sources as well as from neutron events to write HDF5 files at rates up to 4.8 GiB/s using Parallel HDF. This platform will also be used for testing the experiment control software on top of EPICS.
 
poster icon Poster THPHA167 [0.476 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA167  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA169 Building S.C.A.D.A. Systems in Scientific Installations with Sardana and Taurus 1820
 
  • D. Fernández-Carreiras, J. Andreu, F. Becheri, S. Blanch-Torné, M. Broseta, G. Cuní, C. Falcon-Torres, R. Homs-Puron, G. Jover-Mañas, J. Klora, J. Moldes, C. Pascual-Izarra, S. Pusó Gallart, Z. Reszela, D. Roldán, M. Rosanes Siscart, A. Rubio, S. Rubio-Manrique, J. Villanueva
    ALBA-CELLS Synchrotron, Cerdanyola del Vallès, Spain
  • T.M. Coutinho, A. Homs, E.T. Taurel
    ESRF, Grenoble, France
  • Ł.J. Dudek, P.P. Goryl, Ł. Żytniak
    Solaris, Kraków, Poland
  • V.H. Hardion, A.M. Milan, D.P. Spruce
    MAX IV Laboratory, Lund University, Lund, Sweden
  • T. Kracht, M.T. Nunez Pardo de Vera
    DESY, Hamburg, Germany
 
  Sardana and Taurus form a python software suite for Supervision, Control and Data Acquisition (SCADA) optimized for scientific installations. Sardana and Taurus are open source and deliver a substantial reduction in both time and cost associated to the design, development and support of control and data acquisition systems. The project was initially developed at ALBA and later evolved to an international collaboration driven by a community of users and developers from ALBA, DESY, MAXIV and Solaris as well as other institutes and private companies. The advantages of Sardana for its adoption by other institutes are: free and open source code, comprehensive workflow for enhancement proposals, a powerful environment for building and executing macros, optimized access to the hardware and a generic Graphical User Interface (Taurus) that can be customized for every application. Sardana and Taurus are currently based on the Tango Control System framework but also capable to inter-operate to some extend with other control systems like EPICS. The software suite scales from small laboratories to large scientific institutions, allowing users to use only some parts or employ it as a whole.  
poster icon Poster THPHA169 [2.746 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA169  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA170 Usage and Development of Web Services at MAX IV 1826
 
  • A. Milan-Otero, F. Bolmsten, J. Brudvik, M. Eguiraun, J. Forsberg, V.H. Hardion, L. Kjellsson, D.P. Spruce, Ł. Żytniak
    MAX IV Laboratory, Lund University, Lund, Sweden
 
  The web continues to grow as an application platform, with accessibility and platform independence as major benefits. It also makes it possible to tie services together in new ways through simple APIs. At MAX IV we are using web services for various purposes related to the control system, for example, monitoring servers and services, accessing alarm history, viewing control system status, managing system and users logs and running recurring jobs. Furthermore, all user management is also accessed via web applications, and even data analysis and experiment control can now be performed via web based interfaces. We make an effort to use existing tools whenever possible (e.g. Kibana, Prometheus), and otherwise develop systems in-house, based on current well established libraries and standards, such as JavaScript, Python, Apache, etc. This paper presents an overview of our activities in the field and describes different architectural decisions taken.  
poster icon Poster THPHA170 [5.702 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA170  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA171 Control System Software Development Environment in ELI Beamlines 1831
 
  • P. Bastl
    Institute of Physics of the ASCR, Prague, Czech Republic
  • O. Janda, A. Kruchenko, P. Pivonka, B. Plötzeneder, S. Saldulkar, J. Trdlicka
    ELI-BEAMS, Prague, Czech Republic
 
  The ELI Beamlines facility is a Petawatt laser facility in the final construction and commissioning phase in Prague, Czech Republic. The central control system operates and controls complex subsystems (lasers, beam transport, beamlines, experiments, facility systems, safety systems) with huge ammount of devices and computers. Therefore standards for software development were established: - Model based development - Standard approach to user interfaces - Standard approaches to device interfaces - Third party envirnment interfaces TANGO framework was choosen for communication in distributed control system environment.  
poster icon Poster THPHA171 [3.324 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA171  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA174 Preventing Run-Time Bugs at Compile-Time Using Advanced C++ 1834
 
  • R. Neswold
    Fermilab, Batavia, Illinois, USA
 
  When writing software, we develop algorithms that tell the computer what to do at run-time. Our solutions are easier to understand and debug when they are properly modeled using class hierarchies, enumerations, and a well-factored API. Unfortunately, even with these design tools, we end up having to debug our programs at run-time. Worse still, debugging an embedded system changes its dynamics, making it tough to find and fix concurrency issues. This paper describes techniques using C++ to detect run-time bugs *at compile time*. A concurrency library, developed at Fermilab, is used for examples in illustrating these techniques.  
poster icon Poster THPHA174 [0.239 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA174  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA176 Streaming Pool - Managing Long-Living Reactive Streams for Java 1837
 
  • A. Calia, K. Fuchsberger, M. Gabriel, M.A. Galilée, J.C. Garnier, G.H. Hemelsoet, M. Hostettler, M. Hruska, D. Jacquet, J. Makai, T. Martins Ribeiro, A. Stanisz
    CERN, Geneva, Switzerland
 
  A common use case in accelerator control systems is subscribing to many properties and multiple devices and combine data from this. A new technology which got standardized during recent years in software industry are so-called reactive streams. Libraries implementing this standard provide a rich set of operators to manipulate, combine and subscribe to streams of data. However, the usual focus of such streaming libraries are applications in which those streams complete within a limited amount of time or collapse due to errors. On the other hand, in the case of a control systems we want to have those streams live for a very long time (ideally infinitely) and handle errors gracefully. In this paper we describe an approach which allows two reactive stream styles: ephemeral and long-living. This allows the developers to profit from both, the extensive features of reactive stream libraries and keeping the streams alive continuously. Further plans and ideas are also discussed.  
poster icon Poster THPHA176 [1.232 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA176  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA177 Tensorics - A Java Library for Manipulating Multi-Dimensional Data 1842
 
  • K. Fuchsberger, A. Calia, J.C. Garnier, A.A. Gorzawski, M. Hostettler, K.H. Krol
    CERN, Geneva, Switzerland
 
  Accelerator control software often has to handle multi-dimensional data of physical quantities when aggregating readings from multiple devices (e.g. the reading of an orbit in the LHC). When storing such data as nested hashtables or lists, the ability to do structural operations or calculations along an arbitrary dimensions is hampered. Tensorics is a Java library to provide a solution for these problems. A Tensor is a n-dimensional data structure, and both structural (e.g. extraction) and mathematical operations are possible along any dimension. Any Java class or interface can serve as a dimension, with coordinates being instances of a dimension class. This contribution will elaborate on the design and the functionality of the Tensorics library and highlight existing use cases in operational LHC control software, e.g. the LHC luminosity server or the LHC chromaticity correction application.  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA177  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPHA178 A Framework for Online Analysis Based on Tensorics Expressions and Streaming Pool 1848
 
  • A. Calia, K. Fuchsberger, M. Gabriel, M. Hostettler, M. Hruska, M.P. Pocwierz
    CERN, Geneva, Switzerland
 
  Among other functionalities, the tensorics library provides a framework to declaratively describe expressions of arbitrary values and resolve these expressions in different contexts. The Streaming Pool framework provides a comfortable way to transform arbitrary signals from devices into long-living reactive streams. The combination of these two concepts provides a powerful tool to describe modules for online analysis. In this paper we describe this approach, elaborate on the general concepts and give an overview of actual and potential use cases as well as ideas and plans for future evolution.  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-THPHA178  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)