Tucsen / Dhyana

../../../_images/dhyana_95_0.jpg ../../../_images/dhyana_95_1.jpg

The Dhyana95 uses backside-illuminated sCMOS thinned chip technology to avoid light interference from the wiring layer, thereby increasing the pixel area and improving the photoelectric conversion rate.

../../../_images/dhyana_95_2.jpg

Intoduction

This plugin control a TUCSEN Dhyana (95) camera under WINDOWS, using TUCam (32 bits) SDK 1.0.0.9 library.

Linux is supported as well using the TUCam SDK (x86_64) for Linux, release. 1.0.0.0.

To get the SDK please contact your camera seller.

Prerequisite

The Dhyana 95 is only supporting USB3 interface. On Linux USB device can only be accessed by root user. To allow any user to control the camera you should manually change the udev settings for this particular usb device. As root create a new file under /etc/udev/rules.d/99-tucsen.rules add the following udev rules:

ATTR{idVendor}=="5453", MODE="0666"

Then you can simply unplug your camera, restart the computer and then plug the camera

Installation & Module configuration

Follow the generic instructions in Build and Install. If using CMake directly, add the following flag:

-DLIMACAMERA_DHYANA=true

For the Tango server installation, refers to PyTango Device Server.

Initialisation and Capabilities

Implementing a new plugin for new detector is driven by the LIMA framework but the developer has some freedoms to choose which standard and specific features will be made available. This section is supposed to give you the correct information regarding how the camera is exported within the LIMA framework.

Camera initialisation

There is no initialisation to perform, just be sure your camera is switched on and connected on the computer via the USB cable.

Std capabilites

This plugin has been implemented in respect of the mandatory capabilites .

  • HwDetInfo

It only supports Bpp16.

  • HwSync

    Supported trigger mode are:
    • IntTrig

    • ExtTrigSingle

    • ExtTrigMult

    • ExtGate

Optional capabilites

  • Rolling (standard) vs. Global shutter

    The camera can support different trigger modes, please refer to the documentation for more details. The camera plugin provides commands to change the trigger (shutter) mode, from standard (rolling) to global. An other mode calls “synchronous” is also available.

  • Cooling

    • Cooling method : Peltier cooling

    • Cooling temperature : Forced air (Ambient at +25 Celsius): -10 Celsius

    • The TUCam SDK allows accessing the temperature target (R/W).

  • HwRoi

    Roi parameters (x, y , width, height), thanks to Lima you can set any Roi but to activate a real Hw Roi the camera only support x offset as factor of 4 and width as factor of 8.

  • HwBin

    There is no hardware support for binning.

  • HwShutter

    There is no shutter control.

Configuration

No Specific hardware configuration are needed

Getting started

For a quick test one can use the python binding, here is a short code example:

from Lima import Dhyana
from lima import Core
import time

cam = Dhyana.Camera()

# set temperature cooling
cam.setTemperatureTarget(-10)

# Get the hardware interface
hwint = Dhyana.Interface(cam)

# Get the control interface
control = Core.CtControl(hwint)

# Get the acquisition control
acq = control.acquisition()

# Set new file parameters and autosaving mode
saving=control.saving()

pars=saving.getParameters()
pars.directory='/tmp/'
pars.prefix='test1_'
pars.suffix='.edf'
pars.fileFormat=Core.CtSaving.EDF
pars.savingMode=Core.CtSaving.AutoFrame
saving.setParameters(pars)

# Now ask for 2 sec. exposure and 10 frames
acq.setAcqExpoTime(2)
acq.setAcqNbFrames(10)

control.prepareAcq()
control.startAcq()

# Wait for last image (#9) ready
lastimg = control.getStatus().ImageCounters.LastImageReady
while lastimg !=9:
  time.sleep(0.1)
  lastimg = control.getStatus().ImageCounters.LastImageReady

# read the first image
              im0 = control.ReadImage(0)