Class BeamSpotApplication
java.lang.Object
org.scictrl.csshell.epics.server.application.AbstractApplication
org.scictrl.csshell.epics.server.application.BeamSpotApplication
- All Implemented Interfaces:
org.scictrl.csshell.epics.server.Application
,org.scictrl.csshell.epics.server.processor.OnDemandValueProcessor.ValueProvider
public class BeamSpotApplication
extends org.scictrl.csshell.epics.server.application.AbstractApplication
BeamSpotApplication connects server with direct beam parameters, then filters and averages them and provides summary data. Measurements with Q below threshold are discarded as unreliable.
Supported XML parameters
- count - number of measurements to be taken into averaging. Default 1.
- time_window - only calculate averages, if timestamps of received values are within this time window.
- inputPvs.size_h - input PV for size in H
- inputPvs.size_v - input PV for size in V
- inputPvs.pos_h - input PV for position in H
- inputPvs.pos_v - input PV for position in V
- inputPvs.chi2_h - input PV for chi square in H
- inputPvs.chi2_v - input PV for chi square in V
- inputPvs.fwhm_h - input PV for FWHM in H
- inputPvs.fwhm_v - input PV for FWHM in V
- range.h_min - lower limit for acceptable position range in H, default -8.0
- range.h_max - upper limit for acceptable position range in H, default 8.0
- range.v_min - lower limit for acceptable position range in V, default -8.0
- range.v_max - upper limit for acceptable position range in V, default 8.0
- range.center - limit for acceptable position range center, default 0.1
- range.deviation - limit for acceptable averaging deviation, default 0.1
- range.area - limit for acceptable beam spot area size, default 0.1
- range.chi2_min - lower limit for acceptable Chi square, default 0.0
- range.chi2_max - upper limit for acceptable Chi square, default 1.0
- laserSwitchPv - PV for switching on/off the laser, default F:LAS:Timing:01:PulsePicker:Enabled
- findBeamPv - PV for automatic beam recognition by frame grabber, default F:GL:Python:01:DiagCam:Do_ROI
- takeBackgroundPv - PV for taking fresh screen background fro background substractions, default F:GL:Python:01:DiagCam:Take_New_BG
- takeBackgroundBusyPv - PV for signal notifying frame grabber is bussy with backgroudn measurement, default F:GL:Python:01:DiagCam:BG_proc
Application provides PVs with following suffixes:
- Pos:H - Averaged position in horizontal, in mm as float.
- Pos:H:Std - STD for horizontal position, in mm as float.
- Pos:V - Averaged position vertical, in mm as float.
- Pos:V:Std - STD for vertical position, in mm as float.
- Size:H - Averaged size in horizontal, in mm as float.
- Size:H:Std - STD for horizontal size, in mm as float.
- Size:V - Averaged size in vertical, in mm as float.
- Size:V:Std - STD for vertical size, in mm as float.
- Chi2:H - Maximal Chi square in horizontal, float.
- Chi2:V - Maximal Chi square in vertical, float.
- Fwhm:H - Averaged FWHM square in horizontal, float.
- Fwhm:V - Averaged FWHM square in vertical, float.
- Area - Averaged beam spot area, mm^2 as float.
- Area:Std - STD for beam spot area, mm^2 as float.
- Area:Min - minimal beam spot area out of averaged, mm^2 as float.
- Deviation - Deviation of averages, float.
- Count - Averaging count, float.
- Data - Array with combined essential data, see
BeamSpotApplication.BeamSpotData
for field descriptions. - Status:InRange - Beam position within range window, status bit as byte.
- Status:Stable - Beam position reading stable, status bit as byte.
- Status:FitGood - Beam gauss fit chi square below threshold, status bit as byte.
- Status:Centred - Beam position centred on 0, status bit as byte.
- Status:Small - Beam area below threshold, status bit as byte.
- Status:Valid - Beam position valid, status bit as byte.
- Range:Area - limit for acceptable beam spot area size, mm^2 as float.
- Range:Center - limit for acceptable position range center, mm as float.
- Range:Deviation - limit for acceptable averaging deviation, float.
- Range:Hor:Min - lower limit for acceptable position range in H, mm as float.
- Range:Hor:Max - upper limit for acceptable position range in H, mm as float.
- Range:Ver:Min - lower limit for acceptable position range in V, mm as float.
- Range:Ver:Max - upper limit for acceptable position range in V, mm as float.
- Range:Chi2:Min - lower limit for acceptable Chi square, float.
- Range:Chi2:Max - upper limit for acceptable Chi square, float.
- Status:BgBusy - Busy taking background measurement, status bit as byte.
- Cmd:BgTake - Command to take beam background measurement, 1 triggers command.
- Author:
- igor@scictrl.com
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
Enumeration defining name and position of parameters in data array with combined measurements returned troughDATA
PV. -
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Suffix for PV name which provides array with combined data.Fields inherited from class org.scictrl.csshell.epics.server.application.AbstractApplication
database, DEFAULT_NAME_DELIMITER, dynamicRecordCreator, ERROR_SUM, LINK_ERROR, LINK_ERROR_STRING, links, log, name, NAME_DELIMITER, nameDelimiter, records
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
protected void
notifyLinkChange
(String name) protected void
notifyRecordChange
(String name, boolean alarmOnly) protected void
notifyRecordWrite
(String name) Methods inherited from class org.scictrl.csshell.epics.server.application.AbstractApplication
activate, addRecord, addRecordOfCommandProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfOnDemandProcessor, addRecordOfOnLinkValueProcessor, configure, connectLinks, createNewStore, fullRecordName, getLinks, getName, getNameDelimiter, getNotNull, getRecord, getRecordErrorSum, getRecordLinkError, getRecordNames, getRecords, getStore, getStore, getValue, initialize, isActivated, isDynamicRecordCreator, log4debug, log4error, log4error, log4info, processLinkChange, pushDoneCommandProcessor, reconnectLinks, resetOnDemandProcessor, restore, store, toString, updateErrorSum, updateErrorSum, updateLinkError, updateLinkError
-
Field Details
-
DATA
Suffix for PV name which provides array with combined data.- See Also:
-
-
Constructor Details
-
BeamSpotApplication
public BeamSpotApplication()Constructor for BeamSpotApplication.
-
-
Method Details
-
configure
public void configure(String name, org.apache.commons.configuration.HierarchicalConfiguration config) - Specified by:
configure
in interfaceorg.scictrl.csshell.epics.server.Application
- Overrides:
configure
in classorg.scictrl.csshell.epics.server.application.AbstractApplication
-
notifyRecordWrite
- Overrides:
notifyRecordWrite
in classorg.scictrl.csshell.epics.server.application.AbstractApplication
-
notifyRecordChange
- Overrides:
notifyRecordChange
in classorg.scictrl.csshell.epics.server.application.AbstractApplication
-
notifyLinkChange
- Overrides:
notifyLinkChange
in classorg.scictrl.csshell.epics.server.application.AbstractApplication
-