BNMR
Links
BNMR and BNQR Experiments at TRIUMF
This is the main page of the documentation for the Data Acquisition System (DAQ) for the BetaNMR (BNMR) and BetaNQR (BNQR) experiments at TRIUMF
Introduction
The Data Acquisition System is based on the MIDAS data acquisition package.
There are two separate beamlines, BNMR and BNQR, each with its own experimental setup :
- bnmr running on the BNMR high-voltage platform
- bnqr running on the BNQR high-voltage platform
Each experimental setup has its own #Hardware Components (i.e. a VME crate containing DAQ modules). Each runs as a separate MIDAS experiment named bnmr or bnqr. DAQ software specific to these experiments (MIDAS clients) run the experiments - see #Software Components. Experimenters control the experiment using the MIDAS Web Server (mhttpd).
Beam Control
The main TRIUMF EPICS Control System is used to control the beam, which can be switched to either experiment's beamline. There are two Beam Modes that the experiments can be run in:
- single channel mode
- where the beam is sent to one beamline (channel) only, either BNMR or BNQR. Only one of the DAQ systems bnmr or bnqr is active.
- dual channel mode
- where the beam is switched between the two beamlines (channels) BNMR and BNQR at regular intervals. Both DAQ systems bnmr and bnqr are active.
Environment
For both experiments, two types of environment are defined (cf MUSR experiments):
- Integral (Type 1)
- Time Differential or TD (Type 2)
- Combination of the above two types
See #Experimental (PPG) Modes.
Experimental (PPG) Modes
A number of different experimental modes are defined for each of Type 1 (Integral) and Type 2 (TD) #Environments. These allow different experimental modes to be run (e.g. Frequency scan, Na Cell scan). The modes used in recent years are shown in a brighter colour. These modes correspond to different programs downloaded into the PPG (i.e. to different pulse sequences) so are also known as PPG Modes. To understand what each experimental mode does, consult the appropriate timing diagram listed below and see experimental (PPG) modes.
|
spacer |
|
Any of these modes may be run in single channel mode. Only Type 2 modes may be run in dual channel mode.
Hardware Components
DAQ hardware components for each DAQ system (BNMR/BNQR) include the following VME modules:
Module | Description | VME Base Address | BNMR | BNQR | Manual |
---|---|---|---|---|---|
SIS3801 version E | multichannel scaler A | 0x2800 | yes | no | SIS3801 |
SIS3801 version E | multichannel scaler B | 0x1800 | yes | yes * | |
SIS3820 | multichannel scaler B | 0x38000000 | no | yes * | |
PPG (Pulseblaster) | Pulse Programmer | 0x8000 | yes | yes | PPG Spincore Pulseblaster |
PSM | Pol Synthesizer module (RF) | 0xC00000 | no | yes | PSM AD9857 Quadrature Digital Upconverter Programming Guides: PSM / PSMII |
PSMII | Pol Synthesizer module II (RF) | 0xC00000 | yes | no | |
NIMIO32 | Input/Output Register | 0x100000 | yes | yes | NIMIO32 |
MVME162 | 68040 board, cpu runs CAMP (VxWorks) | bnmrvw | polvw | ||
VMIC | cpu runs frontend (Linux) | lxbnmr | lxbnqr | ||
VFS | PSM replacement | not yet in use | VSF |
- * Currently (July 2017) BNQR crate contains both SIS3801E and SIS3820. Latest version supports Alpha Mode which requires the SIS3820. The SIS3801E will be removed from the crate shortly.
The names of the VMIC running the frontend and MVME162 (the CAMP host) for each experiment are shown in Table 2 above.
The connections between the DAQ VME Modules are shown in BNMR DAQ Hardware Connections.
Software Components
The DAQ system is based on the MIDAS package. Data acquisition software to run the bnmr and bnqr experiments has been written to run under MIDAS. This includes the frontend, custom logger etc. This software is mostly common to both experiments (differences between the two experiments are handled with ifdefs).
The experiment is controlled using the MIDAS webserver (mhttpd). Due to the large number of experimental parameters required, Midas custom pages have been written for the experimenters to control and monitor their experiment.
The custom logger (mdarc/midbnmr) saves the data into MUSR MUD format files, and the MUSR CAMP slow control system is used for slow controls. Analysis is done by physica.
The DAQ software components are started by the script start-all and stopped by the script kill-all. These include standard MIDAS utilities (e.g. mhttpd, mlogger, mserver) as well as components specific to the bnmr and bnqr experiments.
The main DAQ software components specific to the bnmr and bnqr experiments are
Component | Host | Experiment | Purpose | ||
---|---|---|---|---|---|
Name | Type | Name | Type | ||
febnmr_vmic | Midas frontend |
lxbnmr | #VMIC | bnmr | the frontend sets up, reads out hardware modules, sends histograms. The frontend code for both experiments is identical. |
febnqr_vmic | lxbnqr | bnqr | |||
rf_config | Midas Client |
isdaq01 | Midas Host PC |
both | check PPG parameters, download program to PPG |
mdarc | custom data logger saves data in MUD format | ||||
midbnmr | converts MIDAS format saved data files to save in MUD format | ||||
mheader | sends out CAMP and EPICS slow-control data to be saved in the MUD data file | ||||
fe_epics | sends experimental data to EPICS (can be read by control-room) | ||||
autorun | automatic run controller | ||||
cleanup | cleans up and archives any saved run files that were not properly archived. Run by user occasionally as needed. | ||||
scripts | isdaq01 | MIDAS host PC |
both | scripts perform important functions e.g. kill-all, start-all. Scripts run at the begin and end of each run send information to the elog, check the CAMP logged variables etc. | |
perlscripts | isdaq01 | both | various perlscripts control changing experimental mode, checking and maintaining run numbering, etc. | ||
camp | camp server |
bnmrvw | MVME162 | bnmr | MUSR slow control system |
polvw | bnqr | ||||
camp client |
isdaq01 | Midas Host PC |
both | ||
physica | isdaq01 | Midas Host PC |
both | data analyser | |
lcrplot | plot data |
Each of the DAQ components is described in more detail (click on the appropriate link in Table 3). The perlscripts use the MIDAS utility odbedit to communicate with the ODB, and may be run by one of the MIDAS clients, or by a (custom)script button on a MIDAS web page.
DAQ Summary
- The VMIC front end computer
- runs the frontend code which
- controls PSM,PPG, VMEIO, Scaler modules
- acquires data from SIS MCS (scaler) module(s), builds histograms
- uses channel access to control EPICS variable(s) (e.g. helicity)
- periodically sends the data out into the data buffer
- The host computer (isdaq01)
- runs all other software components which
- acquire the data from the data buffer
- log the data
- monitor the experiment
- start/stop runs
Nomenclature
In this document, " bnmr or bnqr " may be written as " bn[mq]r "
For example, directories :
- /home/bnmr/online/bnmr spc and spc /home/bnqr/online/bnqr
are referred to by shortcuts such as
space /home/bn[nm]r/online/b[nm]r spc and spc ~/online/b[nm]r
Alternatively, these directories may be written as
- /home/<experiment>/online/<beamline>
- /home/<expt>/online/<beamline>
- ~/online/<beamline>
where <experiment> <expt> and <beamline> are bnmr or bnqr.