FireSignal—Data acquisition and control system software

Abstract Control of fusion experiments requires non-ambiguous, easy to use, user-interfaces to configure hardware devices. With that aim, a highly generic system for data control and acquisition has been developed. Among the main features it allows remote hardware configuration, shot launching, data sharing between connected users and experiment monitoring. The system is fully distributed: the hardware driver nodes, clients and servers are completely independent from each other and might run in different operating systems and programmed in different languages. All the communication is provided through the Common Object Request Broker Architecture (CORBA) protocol. FireSignal is designed to be as independent as possible from any kind of constraints as it is a plugin based system. Database, data viewers and the security system are some examples of what can easily be changed and adapted to the target machine's needs. In this system, every hardware is described in eXtensible Markup Language (XML) and with this information Graphical User Interfaces (GUI) are automatically built and user's parameter configuration validated. Any type of hardware device can be integrated in the system as long as it is described in XML and the respective driver developed. Any modern programming language can be used to develop these drivers. Currently Python and Java generic drivers are used. Data storage and indexing is time stamp event-based. Nodes are responsible for tagging the acquired samples with the absolute time stamps and to react to machine events. FireSignal is currently being used to control the ISTTOK/PT and CASTOR/CZ tokamaks.