Skip to Main content Skip to Navigation
Conference papers

A generic HMI for physics experimentalists developed with R, rJava, htmlwidgets, plotly and shiny tools

Abstract : The CABRI experimental pulse reactor is located at the Cadarache Research Center in southern France. The experiments take place in the Framework OECD/NEA CIP (CABRI International Program) Project operated and managed by the French Nuclear Safety and Radioprotection Institute (IRSN). The purpose of CABRI is to study the behavior of a fuel element (the so-called rod) under Reactivity-Initiated Accident (R.I.A.) conditions that could occur in nuclear power plants. CABRI is a pool-type reactor, it can reach a 25-MW steady-state power level maintaining a test rod under prototypical operating conditions for a pressurized water reactor (155 bar, 280°C). In transient conditions, this reactor is designed to reach an instantaneous power of 21 GW thanks to a system of 3He transient rods located among CABRI core fuel rods.This system monitors the speed of depressurization of the tubes filled with 3He (a strong thermal neutron absorber) into a discharge tank. Due to the fast-paced depressurization, a high-reactivity injection is generated in the core and consequently the test fuel rod is submitted to a high-power transient. The test device is instrumented with many sensors in order to follow every physical quantity: pressure, flow, temperature, core power, acoustic emission generated by the fuel element under the stress. After every experiment, data processing carried out in R by the experimentalists may create some new methodologies to access specific parameters used for the physical analysis. In order to facilitate the sharing of analysis tools, we have decided to develop a computer application around a database [1][2] implementing a workspace to process experimental data. But we put a constraint on our work. The key idea behind this software development is firstly to produce the most generic tool possible in order to enable each experimentalist to integrate their own contributions without concerted efforts in term of HMI and OOP programming. In effort to gain generality, the graphical user interfaces are built with the same architecture: an R Console at the bottom left corner, a card of parameters automatically generated at the top left corner and two tabbed panes on the right, one on the top of the other and a series of buttons to launch actions. The experimentalists have only to edit some parameters files which are used to automatically generate the HMI. The JAVA architecture of the application is based on the MVC pattern [3][4] to reduce coupling between classes that communicate with each other, which means that the domain Model and Controller logic are separated from the user interface (View). For every new method, the experimentalist tweak the R scripts outside the application and then we only have to edit the domain class of the MVC design pattern to call the corresponding R scripts. Another important aspect was the capability to use R for the data visualization. The R libraries as lattice [5] and ggplot [6] aim at displaying plots with nice features using only few lines of code.
Complete list of metadatas
Contributor : Bibliothèque Cadarache <>
Submitted on : Thursday, April 2, 2020 - 9:50:50 AM
Last modification on : Wednesday, May 20, 2020 - 1:14:32 AM


Files produced by the author(s)


  • HAL Id : cea-02394066, version 2




L. Pantera, M. Savanier. A generic HMI for physics experimentalists developed with R, rJava, htmlwidgets, plotly and shiny tools. useR-2019, Jul 2019, Toulouse, France. ⟨cea-02394066v2⟩



Record views


Files downloads