BNMR: EPICS: Difference between revisions
en>Suz m (→EPICS Checking) |
en>Suz m (→EPICS Checking) |
||
Line 82: | Line 82: | ||
When enabled, two checks are made: | When enabled, two checks are made: | ||
#the EPICS switch '''BNMR:BNQRSW:ENBSWITCHING''' for selecting Dual or Single Channel Mode match the value of the key <span style="color: purple; font-style:italic;">Enable dual channel mode</span>. The actual check is done by the client <span style="color:navy;font-:style:italic;">rf_config</span> so the run may be prevented from starting if the EPICS switches are set in the wrong position. | #the EPICS switch '''BNMR:BNQRSW:ENBSWITCHING''' for selecting Dual or Single Channel Mode match the value of the key <span style="color: purple; font-style:italic;">Enable dual channel mode</span>. The actual check is done by the client <span style="color:navy;font-:style:italic;">rf_config</span> so the run may be prevented from starting if the EPICS switches are set in the wrong position. | ||
# the EPICS switch ILE2:BIAS15:VOL.ASG is set to '''expbnmr''' i.e. | # the EPICS switch ILE2:BIAS15:VOL.ASG is set to '''expbnmr''' i.e. [[#Write access to Epics parameters]] is granted to bnmr/bnqr experiments. | ||
---- This will be moved to Frontend ---- | ---- This will be moved to Frontend ---- |
Revision as of 13:03, 12 September 2019
Links
Purpose
This page gives bnmr or bnqr DAQ users information about the ISAC EPICS Control Pages and the Access required for running bnmr or bnqr experiments.
Introduction
The EPICS system is used at TRIUMF for the control system for beamlines etc. Experimenters will need to display the Epics Control Pages in order to run the bnmr or bnqr experiments. They must also ensure that BNMR has been granted write access to the required Epics parameters as described below, or they will not be able to change the relevant beamline controls.
Display ISAC Epics Control Pages
Switch onto a different desktop on linux box isdaq01 (or isdaq06) so the Epics Control page does not clutter the desktop used for running the experiment. Access the epics control pages on isacepics1 with ssh from an xterm window, as follows (if you don't know the password, ask a group member).
ssh bnmr@isacepics1 ( Type in the password )
You should see the main ISAC EPICS control page come up after a few seconds (Figure 1).
- Note
- There is no bnqr user account on isacepics1. The bnmr account is used for both experiments and the same EPICS access permission (i.e. BNMR) applies to both.
Write access to Epics Polarizer Parameters
Most Epics parameters can be read by anyone, but write access has to be granted by the Controls Group. Several experiments have been granted write access to the same polarizer IOCs, and to avoid conflict, only one of these experiments is granted overall Access. During the beam period, and for testing the helicity switching etc, access must be granted to expbnmr.
To check whether expbnmr has access, display the main EPICS control pages.
On the main EPICS Control Page (cf Figure 1) click the button labelled "Access". A page similar to Figure 2 will be displayed.
Clicking on the View access button (Figure 2) will show the current access. This should be set to expbnmr as in Figure 3.
If the Access is not set to expbnmr, ask the operators to switch the access by pressing the button Polarizer Access for bNMR/bNQR (Figure 2).
Even when "Access" is granted to BNMR, only those EPICS IOCs to which BNMR has been granted write access can be changed by the experimenters from the EPICS Control pages, e.g. Helicity, NaCell Voltage, and all BNMR/BNQR parameters for single/dual channel mode control.
Some of these parameters are also writable by the bnmr and bnqr BNMR and BNQR VMICs (lxbnmr,lxbnqr). They have been granted write access by the Controls Group to allow the frontend programs to flip helicity and turn the beam on/off via PPG signals. The frontends use EPICS Channel Access software to scan the NaCell voltage, for example.
The names of the IOCs accessed for read or write by the frontend are listed in the file bnmr_epics.c.
WARNING
There is NO protection against bnmr and bnqr experimenters changing Epics parameters via the Epics Control pages or the frontend programs while an experimental run is in progress on either bnmr or bnqr. When running in Single Channel Mode, there is also no protection against each experiment interfering with each other by both flipping the helicity for example. Users must ensure that they know what they are doing!
EPICS Troubleshooting
See Troubleshooting.
EPICS Checking
EPICS checks are done by various clients. They can be enabled from the status page and should be enabled when taking data. The ODB keys for the EPICS checks are under /Equipment/FIFO_Acq/Frontend/Hardware/.
Helicity Check
When Helicity Check on the status page is checked, the key /Enable all hel checks is set true.
This enables two checks:
- ILE2:POLSW2:STATLOC is set to OFF for DAQ control if helicity flipping is enabled.
- the helicity set value and readback agree. This check is done using a specially programmed VME IO Register that provides the readback of the helicity state. In single channel mode, the current value of the helicity is used for comparison. In Dual Channel Mode, the readback is of the latched value of the helicity at the time when beam is sent to that channel. See Dual Channel Mode and BNMR: Helicity for more information.
Single/Dual Mode Switch Check
When Single/Dual Mode Switch Check on the status page is checked, the ODB key Enable epics switch checks is set true.
When enabled, two checks are made:
- the EPICS switch BNMR:BNQRSW:ENBSWITCHING for selecting Dual or Single Channel Mode match the value of the key Enable dual channel mode. The actual check is done by the client rf_config so the run may be prevented from starting if the EPICS switches are set in the wrong position.
- the EPICS switch ILE2:BIAS15:VOL.ASG is set to expbnmr i.e. #Write access to Epics parameters is granted to bnmr/bnqr experiments.
This will be moved to Frontend ----
EPICS Alive
A frontend equipment (see ODB path /Equipment/EpicsAlive) runs periodically to keep the Epics Channel Access channels open for the frontend. This prevents them timing out during a run. The Epics channels that must be kept open are usually the Helicity and the Epics scan variable(s), e.g. NaCell voltage and readback.