Portfolio
Instrument Control Systems
The AAO’s DRAMA system is a software Application Programming Interface that simplifies the writing of multi-tasking multi-computer data acquisition and instrument control systems. These systems may involve various types of computers and diverse operating systems.
DRAMA was originally written at AAO in the 1990s and has been used extensively at AAO and other observatories. Recently, DRAMA has been re-invigorated through the development of DRAMA2, which builds on the original DRAMA system, but which adds support for various more modern computing techniques and technologies, easing the coding of some otherwise complex tasks.
Client
International Astronomical Instrumentation Community
Product
Application Programming Interface
The benefit of DRAMA is best seen in the system for which it was created, the Anglo-Australian Telescope’s (AAT) Two-degree field (2dF) instrument facility. This provides a robotic system positioning the input end of 400 optical fibres on the focal plane of the telescope. The optical fibres then feed the star light into spectrographs in highly stable positions beneath the telescope. The software must control the robotic system, detector systems, spectrograph, and various other components. It must communicate with the telescope and other telescope systems which were built prior to 2dF and which must be able to be updated independently of the 2dF instrument.
Overall control of this is complex, from sequencing changes in the spectrograph with robot changes to checking for the many possible ways of things spoiling the science (e.g., are room lights turned on when trying to take science observations). Five dramatically different types of computers were used in the original system. DRAMA allowed the complex control system to be built for 2dF at a time when no other system supported such diverse environments.
2dF (and DRAMA) was created in the early 1990’s but after regular extensive upgrades, it remains a very completive instrument. The use of DRAMA has allowed these upgrades to be undertaken efficiently. Each significant component of the system has its own DRAMA task obeying a well-defined interface. If the component is upgraded to say something with an entirely different electronics interface, you write a new task for that upgraded component, and it can be quickly integrated into the system. Almost every component has been upgraded at different times. DRAMA tasks have been moved between entirely different types of computers with almost no impact on the users other than the extra features provided by the upgrades. The 2dF DRAMA software can also be easily re-configured in various way, loading different sets of DRAMA tasks. It currently supports four AAT instruments via this feature, each of which use different sets of the various hardware components.
DRAMA provides a set of libraries which together allow the implementation of complex instrumentation tasks. Tasks may be written in C, C++ and Python. Older interfaces exist for Tcl/Tk and JAVA, which are still in extensive use. DRAMA will run on most/all modern flavours of Linux and Mac OS. A port to Microsoft Windows has been done as has a port to the Wind River systems VxWorks operating system. The core DRAMA components were written in C for maximum potability.
DRAMA can deal with both near real-time control requirements and with moving large amounts of data efficiently between tasks that may be running on different computers of possibly different architectures. Older systems implemented user interfaces using Tcl/Tk and JAVA. Many of the modern systems are using Qt or PythonQt.
The DRAMA source code is opened-source for non-commercial use and is available in the RDS GitLab repository at https://dev.aao.org.au/rds/drama/drama. Use of DRAMA for commercial purposes can be negotiated. The DRAMA documentation is available at http://drama.aao.org.au/html/dramaintro.html (a little out of date).
The AAO can provide support in learning to work with DRAMA and has various introductory documents and presentations available.
Of note is that the AAO has a portable Telescope Control System (PTCS) written in DRAMA, currently used on at least 3 telescopes and which can be adapted to new observatories with relative ease.
DRAMA has been used at various observatories. It was written for the AAT and all the AAT instrumentation software is based on it, with the various new instrument. It is used on the James Clark Maxwell Telescope and the UK Infrared Telescopes. DRAMA has been used on the Mayall and Blanco telescopes, and the William Hershel telescopes (through the status is unknown). It was used on the UK Schmidt Telescope (telescope now closed). DRAMA will be deployed in 2024 to the Indian Devasthal Optical Telescope with the installation of the high-resolution spectrograph currently under construction by the AAO.