Lambda / Xspectrum¶
LAMBDA is a next-generation pixel detector for X-rays, based on Medipix3 technology. It is a photon-counting detector, making it effectively noise free, and it offers a high frame rate of up to 23,000 frames per second (with no readout deadtime) and a small pixel size of 55 µm. It is available in a wide variety of sizes and configurations for different applications, and can be equipped with different sensor materials to allow high detection efficiency even at high X-ray energies. The system also has “colour imaging” capabilities, where X-rays hitting the detector can be divided into two energy ranges (*). Developed by DESY for use at the PETRA-III synchrotron, the system is designed for high reliability, and has external triggering and gating capability for synchronisation with the rest of the experiment. It can be easily integrated into common beamline control systems.
Installation & Module configuration¶
Follow the generic instructions in Build and Install. If using CMake directly, add the following flag:
For the Tango server installation, refers to PyTango Device Server.
Initialisation and Capabilities¶
The camera will be initialized by created the
Lambda::Camera object. The contructor
will take care of your detector configuration according to the SDK installation setup done before.
The Camera::Camera() constructor required to pass the full path to the configuration directory installed
on the control computer. The standard path should be /opt/xsp/config .
This plugin has been implement in respect of the mandatory capabilites but with some limitations which are due to the camera and SDK features. We provide here further information for a better understanding of the detector specific capabilities.
getCurrImageType/getDefImageType(): Bpp16 only.
setCurrImageType(): this method do not change the image type which is fixed to Bpp16.
get/setTrigMode(): the supported mode are IntTrig, ExtTrigSingle, ExtTrigMult and ExtGate
None of the hardware capability like HwRoi, HwBin have been implemented.
No Specific hardware configuration are needed. The detector is sold with a control computer equiped with hardware and software.
How to use¶
This is a python code example for a simple test:
from Lima import Lambda from Lima import Core cam = Lambda.Camera('/opt/xsp/config') hwint = Lambda.Interface(cam) ct = Core.CtControl(hwint) acq = ct.acquisition() # set the detector energy threshold cam.setEnergyThreshold(6.0) # setting new file parameters and autosaving mode saving=ct.saving() # set saving in HDF5 bitshuffle compression pars=saving.getParameters() pars.directory='/data1/test_lima' pars.prefix='test1_' pars.suffix='.h5' pars.fileFormat=Core.CtSaving.HDF5BS pars.savingMode=Core.CtSaving.AutoFrame saving.setParameters(pars) # now ask for 2 sec. exposure and 10 frames acq.setAcqExpoTime(2) acq.setAcqNbFrames(10) ct.prepareAcq() ct.startAcq() # wait for last image (#9) ready lastimg = ct.getStatus().ImageCounters.LastImageReady while lastimg !=9: time.sleep(1) lastimg = ct.getStatus().ImageCounters.LastImageReady # read the first image im0 = ct.ReadImage(0)