NICE (the Neutron Instrument Control Environment) is a software package developed in-house at NCNR for controlling the neutron instruments. It has a client-server architecture, with these key features:
Server
- High reliability, designed to run continuously through a reactor beam cycle
- Recoverable from power loss, network instability
- Hardware operation is modeled as a directed node-graph for handling constraints and dependencies between elements
- Produces NeXus (HDF5) rich data files (in addition to other formats)
- In production since 2012
Client
- Can run from anywhere inside NIST firewall - for connecting from dedicated instrument workstations or office PCs
- Self-updating simple binary installation (link only valid inside firewall)
- Simple point-and-click graphical interface for
- moving the instrument components
- controlling high-level physical quantities (Q, [H,K,L], Ei, Ef, etc.)
- setting up templated scans ("trajectories")
- viewing real-time plots of measurements