23rd June 2023
This month, LJMU welcomed the IAC software team members to Liverpool for a week-long workshop focused on developing the NRT software architecture. The team from IAC: Javier León, Josué Barrera and J. J. Fernandez-Valdivia met with the software and control team from LJMU: João Bento, David Heffernan and Adam Garner.
The NRT software and automation team including members from IAC and LJMU. From L-R: Javier, Valdivia, Adam, João, David and Josué.
The software architecture is typically called the software 'stack', which is divided into three main layers:
1) Science and Operations Data Centre (SODC)
2) Robotic Control Software (RCS)
3) Telescope Level Software (TLS)
More detail is available here.
An illustration of the NRT software stack including the different systems including the SODC, RCS and TLS.
This workshop focused on the 3rd layer; the Telescope Level Systems (TLS). The TLS is a complex part of the software stack which is responsible for moving mechanisms and feeding back sensor data to the layers above. The NRT team plan to make use of the existing Gran Telescopio Canarias (GranteCan) control system (GCS), which is fully developed and in use on the 10.4m GTC telescope on La Palma. GTC is owned and operated by NRT partner, IAC and has many features required for operating a large telescope, in particular, one with a segmented mirror.
One of the key challenges of the TLS is being able to 'talk' to the various control hardware, instruments and sensors throughout the telescope. To address this problem, the GCS allows software engineers to develop 'devices' which set methods and protocols to communicate with hardware. For example, a motor drive that moves the telescope axis. One objective for the workshop at LJMU was to deploy the GCS locally on LJMU computers and to create a device which could move the NRT fold mirror mechanism using its motors. With this functionality demonstrated, the team could be confident that a range of devices (more specific to NRT) could be created.
GCS deployment
The GCS is a huge, complex software package designed soley for running locally on the GTC telescope. This presents another challenge as there are certain elements of the software which are specific to GTC. The team worked hard to modify the GCS, making notes about how it could be containerised in future to make it more lightweight and flexible for different, smaller facilities like NRT.
Protocols and PLCs
The low level control systems will use industrical control computers called Programmable Logic Controllers (PLCs) as they have excellent robustness and reliability. These controllers are very common in manufacturing environments and are designed to run software in loops (i.e. to carry out fairly specific tasks over and over), making them very reliable and safe. The NRT will use PLCs to control the many mechanisms all over the telescope. Open Platforms Communication Unified Architecture (OPCUA) is a protocol used to communicate with PLCs and the team focused on creating a device within GCS that could 'talk' to OPCUA and, therefore, the NRT fold mirror hardware available in the lab at LJMU.
Within just a week, a major milestone was reached by the team by implementing a device that could control and feedback the status of the fold mirror using GCS.
The IAC and LJMU team working hard in the Liverpool offices
After the workshop the team plans to investigate the containerisation of GCS and to look at how to add more functionality to the new device type to allow testing of further NRT hardware as it becomes available.