3.7. ThorlabsTCubeTEC

Summary:

ThorlabsTCubeTEC

Type:

DataIO

License:

licensed under LGPL

Platforms:

Windows

Devices:

TCube TEC (temperature controller)

Author:

M. Gronle, ITO University Stuttgart

3.7.1. Overview

ThorlabsTCubeTEC is an plugin to control the Thorlabs T-Cube TEC controller for thermoelectric coolers.

It requires the new Kinesis driver package from Thorlabs and implements the interface Thorlabs.MotionControl.TCube.TEC.

Please install the Kinesis driver package in advance with the same bit-version (32/64bit) than itom.

This plugin has been tested with both the simulated T-Cube TEC controller of Kinesis and a real device.

3.7.2. Initialization

The following parameters are mandatory or optional for initializing an instance of this plugin:

  • serialNo: str, optional

    Serial number of the device to be loaded, if empty, the first device that can be opened will be opened

    default: “”

  • sensorType: str, optional

    Connected sensor type.

    Match: [“Transducer”, “TH20kOhm”, “TH200kOhm”], Default: “Transducer”

  • connectToKinesisSimulator: int, optional

    If 1, a connection to the running Kinesis Simulator is established before starting to search for devices.

    Value range: [0, 1], Default: 0

3.7.3. Parameters

These parameters are available and can be used to configure the ThorlabsTCubeTEC instance. Many of them are directly initialized by the parameters of the constructor. During the runtime of an instance, the value of these parameters is obtained by the method getParam, writeable parameters can be changed using setParam.

currentLimit: {float}

The maximum current limit in mA.

Value range: [0, 2000], Default: 1000

currentTemperature: {float}, read-only

The current temperature in °C or kOhm, depending on the sensor type

Value range: [-45, 145], Default: -87.39

derivativeGain: {float}

The derivative gain term for the temperature loop parameters.

Value range: [0, 100], Default: 0.183111

deviceName: {str}, read-only

description of the device

firmwareVersion: {int}, read-only

firmware version of the connected device

integralGain: {float}

The integral gain term for the temperature loop parameters.

Value range: [0, 100], Default: 0.0122074

name: {str}, read-only

name of the plugin

pollingInterval: {int}, read-only

device polling interval in ms

Value range: [1, 10000], Default: 200

proportionalGain: {float}

The proportional gain term for the temperature loop parameters.

Value range: [1, 100], Default: 0.0457778

sensorType: {str}, read-only

Connected sensor type.

serialNumber: {str}, read-only

serial number of the device

softwareVersion: {int}, read-only

software version of the connected device

targetTemperature: {float}

The target temperature in °C or kOhm, depending on the sensor type.

Value range: [-45, 145], Default: -87.39

enableControl: {int}

Enable (1) or disable (0) cube for computer control.

Value range: [0, 1], Default: 1

3.7.4. Installation

Install the Thorlabs Kinesis software and USB Drivers.

3.7.5. Usage

This example shows how to initialized the device in itom and change the position:

# create a new instance of the device
tec = dataIO("ThorlabsTCubeTEC", serialNo="87000001", sensorType="Transducer")
tec.setParam("targetTemperature", 30.0) # set the target to 30°C

3.7.6. Compilation

To compile this plugin, install the Thorlabs KINESIS driver package in the same bit-version than itom (32/64bit). Then set the CMake variable THORLABS_KINESIS_DIRECTORY to the base directory of Kinesis (e.g. C:/Program Files/Thorlabs/Kinesis). The required libraries from Kinesis will automatically be copied to the lib folder of itom. Do not use Kinesis 1.6.0 or below for compiling this plugin.

Kinesis 1.7.0 requires the Microsoft C++ Redistributable 2012.

3.7.7. Changelog

  • itom setup 4.1.0: This plugin has been compiled with Thorlabs Kinesis 1.14.32.