Bpm¶
This is the BPM (Beam Position Monitoring) device. It aims to detect an X-ray beam spot and returns statistics (x,y positions, FWHM, …). It takes images and calculates the beam position using the builtin task BPM of the processlib library. It can also push Tango event containing jpeg view of the image and several statistics and information (listed bellow) in a DevEncoded attribute name bvdata.
Properties¶
Propertie name |
RW |
Type |
Description |
---|---|---|---|
enable_bpm_calc |
RW |
DevBoolean |
Enable or disable the bpm calculation algorithm. |
enable_tango_event |
RW |
DevBoolean |
if set to false, Bpm won’t push bvdata or other attributes through Tango. |
calibration |
RW |
DevVarDoubleArray |
Contains the calibration in X and Y ([X,Y]), value in unit/pixel. | |
beammark |
RW |
DevVarLongArray |
Contains coordinates (X,Y) in pixels of a beam mark set by the user. |
Attributes¶
Attribute name |
RW |
Type |
Description |
---|---|---|---|
buffersize |
RW |
DevLong |
Size of the buffer where a certain amount of images will be store before re-writing on the first one. |
x |
RO |
DevDouble |
coordinate on the x axis of the beam return by the BPM task. If the algorithm couldn’t find a X value then it is set at -1. |
y |
RO |
DevDouble |
Same as x but for Y axis. |
txy |
RO |
DevDouble |
Return an array [timestamp,x,y] of the last acquisition. |
automatic_aoi |
RW |
DevBoolean |
true or false for the AOI mode. |
intensity |
RO |
DevDouble |
Intensity of the area around beam. |
max_intensity |
RO |
DevDouble |
Maximum intensity on the image. |
proj_x |
RO |
DevLong |
Array containing sum of all pixel´s intensity on axis x |
proj_y |
RO |
DevLong |
Same as proj_x but on y axis. |
fwhm_x |
RO |
DevDouble |
Full width at half of maximum on the profil X. |
fwhm_y |
RO |
DevDouble |
same as fwhm_x but on y axis profil. |
autoscale |
RW |
DevBoolean |
Activate autoscale transformation on the image. (use min and max intensity on it in order to scale). |
lut_method |
RW |
DevString |
Method used in the transformation of image. can be “LOG” or “LINEAR”. |
color_map |
RW |
DevBoolean |
Image in black and white(color_map=false), or use a color map to display colors based on intensity. |
bvdata |
RO |
DevEncoded |
Attribute regrouping the image (jpeg format) and numerous information on it, such as timestamp, number of the frame, x, y, txy, … Everything is pack throught struck module and is either send in a Tango event or directly read. WARNING : You need to have the decode function in order to read (can be found in the webserver Bpm, currently here : https://gitlab.esrf.fr/limagroup/bpm-web ) |
calibration |
RW |
DevDouble |
Attribute version of the calibration property. |
beammark |
RW |
DevLong |
Attribute version of the beammark property. |
enable_bpm_calc |
RW |
DevBoolean |
Enable or disable the bpm calculation algorithm. |
Commands¶
Commands name |
Arg.IN |
Arg.OUT |
Description |
---|---|---|---|
Start |
DevVoid |
DevVoid |
Start Bpm device. |
Stop |
DevVoid |
DevVoid |
Stop Bpm device. |
getResults |
DevLong |
DevVarDoubleArray |
Take a number as parameter and return an array containing (framenb,x,y) values, starting to the frame number ask until there is no more image. |
GetPixelIntensity |
DevVarLongArray |
DevLong |
Return the intensity of pixel (x,y) passed as parameters |
HasBackground |
DevVoid |
DevBoolean |
Is there a background already in place ? |
TakeBackground |
DevVoid |
DevVoid |
Take the current image and set it as Background, using the Core.BACKGROUNDSUBSTRACTION module. |
ResetBackground |
DevVoid |
DevVoid |
Reset the Background. |
NOTE¶
This plugin is supposed to replace the old BeamViewer plugin but with limited functionalities for the moment. Some other plugins will be created in the future. This plugin is mainly used in conjunction with the bpm webserver application