Skip Ribbon Commands
Skip to main content

FACET FAQs

:

EPICS PVs: How do I acquire BPMs or Toroids or Bunch Length Monitor beam synchronously?

Version HistoryVersion History

Title

How do I acquire BPMs or Toroids or Bunch Length Monitor beam synchronously?

Question

​How do I acquire BPMs or Toroids or Bunch Length Monitor beam synchronously?

Answer

​BLEN:LI20:3014:BRAW is unscaled integrated sum signal from the sector 20 foil+pyro.  BLEN:LI20:3014:BIMAX is nominally the bunch length derived from this number, but in the absence of a calibration, BIMAX = BRAW.

Note that at this moment, the toroid channels available by BSA are only the uncalibrated ones -

GADC0:LI20:EX01:AI:CH0:HST__
GADC0:LI20:EX01:AI:CH2:HST__
GADC0:LI20:EX01:AI:CH3:HST__

calibrations.pdfcalibrations.pdf

For now, these calibration values live here:
SIOC:SYS1:ML00:AO033 %TORO 2452 Slope
SIOC:SYS1:ML00:AO034 %TORO 2452 Offset
SIOC:SYS1:ML00:AO035 %TORO 3163 Slope
SIOC:SYS1:ML00:AO036 %TORO 3163 Offset
SIOC:SYS1:ML00:AO037 %TORO 3255 Slope
SIOC:SYS1:ML00:AO038 %TORO 3255 Offset

Use those calibration numbers to scale the BSA ADC readings to real charge values.


Below is an example of how to do the BSA acquisition, in case people aren't familiar.  Please make sure to release the event definition; if the acquisition bombs, do it manually on the Event/Global panel on facethome.

 

% define some PV names

blen_root = 'BLEN:LI20:3014';

blen_pvs = strcat(blen_root, {':BRAW'; ':BIMAX'});

 

toro_root = 'GADC0:LI20:EX01:AI';

toro_pvs = strcat(toro_root, {':CH0:'; ':CH2:'; ':CH3:'});

 

% reserve and set up an edef

masks = {{'TS5'} {} {'DUMP_2_9' 'NO_EXT_ELEC'} {}}; edef = eDefReserve('Nate BSA example'); eDefParams(edef, 1, -1, masks{:});  % third argument = -1 makes it acquire forever

 

% start edef

eDefOn(edef);

 

% do other acquisition here....

pause(5);

 

% stop edef

eDefOff(edef);

 

% retrieve BSA data

blen_data = lcaGetSmart(strcat(blen_pvs, 'HST', num2str(edef))); toro_data = lcaGetSmart(strcat(toro_pvs, 'HST', num2str(edef))); pulseid = lcaGetSmart(strcat('PATT:SYS1:1:PULSEIDHST', num2str(edef)));

 

% free up edef

eDefRelease(edef);

Attachments

Version: 1.0
Created at 7/16/2013 12:38 PM by Clarke, Christine
Last modified at 7/16/2013 12:38 PM by Clarke, Christine

SLAC SLAC National Accelerator Laboratory, Menlo Park, CA
Operated by Stanford University for the U.S. Dept. of Energy