News from new projects or future sites using Tango
SKA Status Update: Preparing for Construction
The Square Kilometre Array (SKA) will be the largest radio interferometer in the world when it is built. The project has already passed all its Critical Design Reviews (CDRs), including System CDR, and is in the bridging phase between the design and the construction phase. In this talk, we will present the current status of the project, and in particular how we are dealing with software development in general, and with the TANGO-based control system implementation in particular.
NICA (Nuclotron-based Ion Collider fAсility) is a new accelerator complex designed at the Joint Institute for Nuclear Research (Dubna, Russia) to study properties of dense baryonic matter.
There are three detectors at NICA: Baryonic Matter at Nuclotron (BM@N) - fixed-target experiment, Multi-Purpose Detector (MPD) and Spin Physics Detector (SPD) to study heavy-ion collisions.
The report will cover the status of detectors' control systems based on Tango Controls.
USSR, a new light source in Russia
By Sergey Barabin.
A new 6 Gev light source will be constructed near Moscow.
This presentation will give an overview of the project, its planning and the strategic plan to use Tango for the control system.
Tango Controls for Attosecond Optics laboratory at ICFO
We as S2Innovation would like to summerize and present our work done for ICFO Laboratory. The presentation will deliver information about a distributed tango controls system designed, based on 6 raspberry pi'es. We would like to discuss the system itself, as long as problems we encountered during implementation. We had lots of preformance issues regarding Webjive.
LOFAR is ready to Tango
LOFAR is a distributed radio telescope, operating at the 10--270 MHz frequency range. It consists of thousands of antennas spread across 52 sites ("stations") in 9 European countries, central HPC processing facilities, and 3 archive sites. The telescope is currently getting a major upgrade ("LOFAR2.0"), with an initial focus on upgrading the processing capabilities and software within our stations.
We are excited to announce that as part of this effort, the LOFAR2.0 board has selected Tango Controls as our new Monitoring & Control subsystem. Tango is a good fit for LOFAR2.0, in which we plan to implement Python software devices as well as custom hardware devices that expose an OPC-UA interface.
In this talk, we'll present LOFAR as well as our current ideas of integrating Tango.
DrJan David Mol
Data recording service @Soleil
The data recording service at Soleil has been completely rewritten. Based on a set of Tango devices and using both a modular and generic approach, it could be deployed and configured in another Tango environment.
ICA activities status
These last months some staff moves occurred in the ICA team, which is in charge of providing control system software for SOLEIL’s Accelerators and Beamlines.
Some of us are currently exploring tools which are provided in the Tango community as WebJive. SOLEIL CDR redaction is a work in progress.
This meeting will be the opportunity to give a status of our activities, to present people and why not be the start point to establish further collaboration.
Beamlines is moving towards more mature operations with some lasers/beamlines, while still in phase of intensive commissioning and ramp-up. This presentation updates on the progress we made with control systems integration and commissioning of our first significant DAQ systems. We also share some lessons we learned using LabVIEW with NI Linux RT on third-party hardware (barebones/virtualized), which may be an interesting approach for more members of the TANGO community.
C++ core library status
PyTango status report
News on recent PyTango developments
(South African Radio Astronomy Observatory)
Tango Contorls RFC status
The core specification of the Tango 9 protocol should be ready by the Tango Meeting.
In the current state, it can be used as a specification Tango v10 prototype and for a base for Tango v11 concepts. The result and summary status will be presented.
(S2Innovation Sp. z o.o.)
Taurus status report
Taurus is a framework for creating GUIs and CLIs for the Control System using python and PyQt. This talk is a very quick status report on its latest developments.
Sardana Status Report
Sardana is a Python-based experiment control software used in several institutes within the Tango community. Among other features, it provides solution to motion and data acquisition control, powerful macro execution engine and a generic way of programming and executing scans, all these with the Taurus-based rich user interfaces.
Sardana is under continuous development and just recently achieved a major milestone - v3 release which is Python 3 compatible. In this talk we will present the project status report, review the v3 release and the upgrade process at different sites.
canone3: a new service and development framework for the web and platform independent applications
Following former web interfaces developed at ELETTRA as well as in other institutes, PUMA has been developed with the additional objectives of high availability, scalability, load balancing, responsiveness and customization.
Thorough analysis of Websocket limits led to an SSE based server technology relying on channels (Nchan over NGINX) to deliver the events to the clients. The development of the latter is supported by JQuery, Bootstrap, D3js and SVG.
The report will consider the technique of integrating React components into the Waltz control system using the example of the development of GridWidget.
WebJive progress report and the WebJive team(s)
WebJive is a web application designed for rapid development and use of dashboards to monitor and control Tango devices. Over the last 6 months we, at MaxIV and SKA, have been adding new developments to it.
During this presentation I will give an overview of WebJive and show what the WebJive roadmap is at the moment, and collect feedback from the community. I will also present the organization of the teams that currently develop WebJive, and how we are organized to interact with the community to respond to bugs, change requests and general assistance.
The tentative outline of the presentation is:
* Overview of WebJive (Giorgio Brajnik), about 20min + 10min for Q&A
Deep analysis of the results of Tango benchmark based on tango-controls/sys-tango-benchmark presented @ICALEPCS'19
Benchmarking of Tango based on CORBA, ZMQ and HTTP
Benchmarking of microservices distributed solution for Tango REST server
Introducing RxJTango - a reactive extension to Tango-Controls Java API
Hunting mystery timeout
A story how legendary random timeout (4 years old issue on GitHub - migrated from Sourceforge - https://github.com/tango-controls/JTango/issues/19) was hunted down.
CI-CD practices at SKA
The Square Kilometre Array (SKA) project is an international effort to build two radio interferometers in South Africa and Australia to form one Observatory monitored and controlled from the global headquarters (GHQ) based in the United Kingdom at Jodrell Bank. The project is now approaching the end of its design phase and gearing up for the beginning of formal construction. The period between the end of the design phase and the start of the construction phase has been called bridging and, one of its main goals is to promote some CI/CD practices among the software development teams. CI/CD is an acronym that stands for continuous integration and continuous delivery and/or continuous deployment. Continuous integration (CI) is the practice of merging all developers local (working) copies into the mainline very often (many times per day). Continuous delivery is the approach of developing software in short cycles ensuring that it can be released anytime and continuous deployment is the approach of delivering the software into operational use frequently and automatically. The present paper analyses the decisions taken by the Systems Team (a specialized agile team devoted to developing and maintaining the tools that allow continuous practises) together with SKA architects to promote the CI/CD practices with the TANGO controls framework.
DrMatteo Di Carlo
Unit testing Tango devices in Python
The [SKA project](https://www.skatelescope.org) is mainly developed using Python and has a strong focus on [software testing](https://developer.skatelescope.org/en/latest/development_practices/ska_testing_policy_and_strategy.html). This includes testing of single devices (unit testing), testing multiple dependent devices (component testing), and testing of the fully integrated telescope software system (integration testing). This talk will focus on unit and component testing of Tango devices. We will look at some of the techniques being used, their benefits and drawbacks, and consider what is missing. This includes PyTango `(Multi)DeviceTestContext` and mocking `DeviceProxy`.
(South African Radio Astronomy Observatory), DrDrew Devereux
MQTT protocol for Tango devices
For one of our projects maintaining Panic alarms we created an MQTT connector device. It allows to easy read/write values using Tango, and in our case also from the web browser. It is now publicly available and we would like to present its features.
TANGO-grafana: an online diagnostic tool to assist in the analysis of interconnected problems difficult to debug in the context of the Square Kilometre Array (SKA) telescope project
The selected solution for monitoring the SKA Minimum Viable Product (MVP) Prototype Integration (SKAMPI) is Prometheus. Starting from a study on the modifiability aspects of it, the Grafana project emerged as an important tool for displaying data in order to make specific reasoning and debugging of particular aspect of SKAMPI. Its plugin architecture easily allow to add new data sources like prometheus but the TANGO related data sources has been added as well. The main concept of grafana is the dashboard, which enable to create real analysis.
In this paper four example analysis are presented which take advantage of four different datasources and a variety of different panel (widget) for reasoning on archiving data, monitoring data, state of the system and general health of it.
DrMatteo Di Carlo
WebJive demo and architecture
* Demo of WebJive and recent dashboards (members of the SKA team)
During this presentation we will discuss and showcase WebJive. Our aim is not only to present WebJive so that other teams can use it, but also present and discuss some architectural aspects of WebJive, and especially the most important component which connects the frontend to the Tango ecosystem.
The architecture of WebJive encompasses several components, one of which is TangoGQL (a GraphQL gateway that connects the frontend single-page-application of WebJive to the Tango system). This part will be presented in the next session
(INAF - OAAb)
Webjive tutorial 2
Deep dive into WebJive TangoGQL (members of MAXIV and SKA teams)
The architecture of WebJive encompasses several components, one of which is TangoGQL (a GraphQL gateway that connects the frontend single-page-application of WebJive to the Tango system).
S2Innovaiton is proud of its tight collaboration with Tango Controls Community. It is involved in cppTango, PyTango, JTango as well as Documentaiton and RFC related developments. S2Innovation is also providing software solutions based on Tango Controls for its partners with use of among others WebJive and PANIC. One of its development is cloud-based alarm management system based on PANIC called IC@MS. It is also heading into providing solutions for improving energy management at accelerator laboratories.
This presentation will show recent progress in S2Innovation development.
(S2Innovation Sp. z o.o.)
Tango training video series
During the last months, I worked to collect and edit some TANGO training videos. The effort aims to create a series of training videos, easily available by the community, to speed up the training process for the new people that are approaching using Tango. The work is still Work in progress, but the first part of the videos are available in a Google Drive folder. In the talk, I will show the expected publishing timeline, the structure of the video series. Furthermore, I will ask for some feedback from the community and I will show how to contribute.