Koheron CTL200 digital laser diode controller

class pymeasure.instruments.koheron.koheron_ctl200.CTL200(adapter, name='Koheron CTL200', baud_rate=115200, **kwargs)

Bases: Instrument

PyMeasure driver for the Koheron CTL200-0 digital laser diode controller.

property analog_input_1: Any

Get the voltage on auxiliary input AI1 in V (float).

property analog_input_2: Any

Get the voltage on auxiliary input AI2 in V (float).

ask(command, query_delay=None)

Write a command and return its reply without echo and prompt.

property baud_rate_setting: Any

Control the UART baud rate of the device (int, strict_range from 9600 to 460800). The new baud rate takes effect immediately, which desynchronizes the current connection: reconnect with a matching baud_rate to keep communicating. Use save() to persist it across power cycles.

property board_temperature: Any

Get the current temperature of the driver board in °C (float).

property board_version: Any

Get the board model version (str).

check_errors()

Read the error status flag, log the errors, and clear them.

Returns:

List of error entries.

clear_error()

Clear the error code.

property error_status: Any

Get the current error status (KoheronError). The device returns the error code in hexadecimal format.

property firmware_version: Any

Get the firmware version (str).

property interlock_enabled: Any

Control whether the hardware interlock is enabled (bool).

property laser_current_limit: Any

Control the laser current software limit in A (float, strict_range from 0 to 1).

property laser_current_setpoint: Any

Control the laser current setpoint in A (float).

property laser_delay: Any

Control the delay time between controller startup and laser startup in s (float, strict_range from 0.01 to 100).

property laser_enabled: Any

Control whether the laser output is enabled (bool).

property laser_modulation_gain: Any

Control the laser current modulation gain of auxiliary input 1 in A/V (float, strict_range from -100 to 100).

property laser_voltage: Any

Get the laser voltage in V (float).

property photodiode_current: Any

Get the photodiode current in A (float).

property pid_differential: Any

Control the differential gain of the TEC PID controller (float, strict_range from 0 to 0.1).

property pid_integral: Any

Control the integral gain of the TEC PID controller (float, strict_range from 0 to 0.1).

property pid_proportional: Any

Control the proportional gain of the TEC PID controller (float, strict_range from 0 to 0.1).

save()

Save the current configuration to internal non-volatile memory.

property serial_number: Any

Get the serial number (str).

property status: Any

Get a dict with all status values (“lason”, “vlaser”, “itec”, “vtec”, “rtact”, “iphd”, “ain1”, “ain2”).

property tec_current: Any

Get the TEC current in A (float).

property tec_enabled: Any

Control whether the TEC output is enabled (bool).

property tec_modulation_gain: Any

Control the temperature modulation gain of auxiliary input 2 in Ω/V (float, strict_range from -100000 to 100000).

property tec_voltage: Any

Get the TEC voltage in V (float).

property tec_voltage_limit_max: Any

Control the maximum TEC voltage limit in V (float, strict_range from 0 to 3).

property tec_voltage_limit_min: Any

Control the minimum TEC voltage limit in V (float, strict_range from -3 to 0).

property temp_protection_enabled: Any

Control whether temperature protection is enabled (bool). If temperature protection is enabled, the laser current is automatically disabled if the thermistor resistance is outside the set thermistor window.

property thermistor_actual: Any

Get the actual thermistor resistance in Ω (float).

property thermistor_setpoint: Any

Control the thermistor resistance setpoint in Ω (float).

property thermistor_window_max: Any

Control the maximum thermistor resistance in Ω to trigger temperature protection if enabled (float).

property thermistor_window_min: Any

Control the minimum thermistor resistance in Ω to trigger temperature protection if enabled (float).

property user_data: Any

Control the user data string saved on the device (max. 31 chars, str)

write(command, **kwargs)

Write a command and consume the echo and the reply.

The device replies to every command with a single value line, settings included. It is discarded here to leave no unread data behind.