Speaker
Description
Development efforts are affected by the increasing number of applications that relies on client-server-based control systems, so new research lines appear in order to simplify the implementation and integration of device drivers in distributed control environments.
NDS has been designed as a control-system independent layer (namely the NDS Core). The interface to a specific control-system is delegated to a second layer, the NDS control-system layer (for instance NDS EPICS for the EPICS control system). Therefore, standardized device drivers may be achieved for multiple control systems with minimum development efforts.
This work focuses on our contribution to NDS3 in order to provide a complete class-based skeleton for data acquisition and timing boards that ensures homogenous device drivers and easier development and usage. Both a testing-purpose and an EPICS control system are available.
New different nodes have been implemented for supporting basic DAQs and timing functionalities. These nodes have been validated through the implementation of device drivers for two timing cards and two acquisition boards. Additionally, some special nodes are being implemented for interfacing device drivers with specific software layers such as the Data Archiver Network (DAN) or the Synchronous Data-bus Network (SDN) available at ITER for efficient data archiving or real-time data synchronization, respectively. All developments are validated by means of unitary tests implemented in C++ language (test control system) and PyEpics (EPICS control system).
Currently, huge efforts are focused on improving the user experience and covering the identified lacks of functionalities.
Finally, the interface between NDS3 with areaDetector to achieve support for image acquisition devices must be highlighted as one of the main deficiency to be implemented in a future.
This work has been carried out by GMV and UPM, and supervised by ITER Organization.