Setup and configuration

On the photon side, scanning the energy with the accelerator is done by writing to a set of notepad PVs available for each hutch.

For HXR:

<HUTCH>:USER:MCC:EPHOT:SET{1,2}

<HUTCH>:USER:MCC:EPHOT:REF{1,2}

For SXR:

<HUTCH>:USER:MCC:EPHOTK:SET{1,2}

<HUTCH>:USER:MCC:EPHOTK:REF{1,2}

These are simple notepad PVs, meaning that they do nothing on they own, besides holding a value. In order to scan the energy, ACR needs to be contacted so that they setup the script that will listen to the PVs and move the energy according to the method agreed upon. Until this is done, writing to the PVs will have no effects.

ACR can move the energy using the Vernier or the undulator K. Combined methods are also available.

  • Vernier moves are fast, but the range is limited to few 10s to maybe 100 eV (typically 1%).
  • Moving the undulator K allows for much larger range (close to 1keV scans were performed at XCS), but is very slow. A move takes around 20s typically. It is important to make sure to wait that the moves complete before acquiring data.
  • For combined motion, multiple options are available. Quoting Alberto: “If the energy is moved outside Vernier range, moving energy up, sets Vernier to the minimum, and K to reach energy that you ask. When moving down, sets Vernier to the maximum and K to reach the energy that you ask. This scheme is good if when only going up, or only going down, since it gives maximum available Vernier range. However, if when going UP/DOWN/UP/DOWN, then is not optimal. Another mode, setting K and Vernier in center of range, might be added so that is more forgiving.”

ACR moves the energy relative to a reference value, which is set to the current energy at the setup time. Because there often is an offset between the photon-energy calculation on the accelerator side and the energy measured on the photon side (by a mono or spectrometer), the REF{1,2} is used to tell ACR the current photon energy. Setting the REF PV before starting make request is mandatory, or the requests will fail.

The reference also needs to be updated if the accelerator parameters change (tuning, big energy change, ...).

Once the setup on the accelerator side is done, one can request energy change by writing (caput) to the SET{1,2} PV. In hutch python, a class is available to do that BeamEnergyRequest. It is recommended to use this class, as it can also handle wait time for motion completion and more naturally integrates with DAQ scans.

Setup (short version)

  • Call ACR to get the energy scan setup. Discuss the best method based on the desired energy range. If advanced / unusual setups are required, it is recommended to contact Alberto Lutman prior to the beamtime.
  • Once ACR is ready, write the current energy to the relevant REF PV: caput <HUTCH>:USER:MCC:EPHOT:REF{1,2}
  • Change the energy by writing to the SET PV: caput <HUTCH>:USER:MCC:EPHOT:SET{1,2}. Recommended: use an instance of BeamEnergyRequest in hutch python to do that.
  • If needed, update the reference PV. This should only be needed if there is a big change in accelerator parameters.

Additional resources

Accelerator-side resources


  • No labels