herosdevices.hardware.toptica.dlcpro¶
HEROS implementation of lasers controlled by the Toptica DLC PRO laser driver.
Module Contents¶
- class herosdevices.hardware.toptica.dlcpro.DLCCommon(address: str, frequency: float, power: float | None, observables: dict | None = None, **kwargs)[source]¶
Bases:
herosdevices.interfaces.atomiq.LaserSourceCommon baseclass for the Toptica DLC Pro laser driver.
Do not use directly, use one of the abstracted laser drivers like
DLPro.- system_health: bool¶
Health status of the laser 0 if healthy, 1 if unhealthy
system-health
- emission_status: bool¶
Emission status of the laser 0 if off, 1 if on
- observables¶
- connection¶
- class herosdevices.hardware.toptica.dlcpro.DLPro(laser_num: int = 1, *args, **kwargs)[source]¶
Bases:
DLCCommonDriver for Toptica DL Pro laser.
- Parameters:
laser_num – Number of the laser in a single dlcpro. Relevant for the dual or quad laser DLC options.
lock_option (bool) – If the laser has the lock option installed.
- lock_status¶
Status of the lock (if
lock_optioninstalled)laserx:dl:lock:state
- laser_health: bool¶
Health status
laserx:health
- set_current: float¶
Set diode Current (mA)
laserx:dl:cc:current-set
- actual_current: float¶
Actual diode Current (mA)
laserx:dl:cc:current-act
- set_temperature: float¶
Set diode Temperature (°C)
laserx:dl:tc:temp-set
- actual_temperature: float¶
Actual diode Temperature (°C)
laserx:dl:tc:temp-act
- set_piezo_voltage: float¶
Set piezo voltage (V)
laserx:dl:pc:voltage-set
- actual_piezo_voltage: float¶
Actual piezo voltage (V)
laserx:dl:pc:voltage-act
- diode_ontime: float¶
Diode on time (s)
laserx:dl:ontime
- internal_pd: float¶
Internal PD
laserx:dl:cc:pd
- system_health: bool¶
Health status of the laser 0 if healthy, 1 if unhealthy
system-health
- emission_status: bool¶
Emission status of the laser 0 if off, 1 if on
- observables¶
- connection¶
- get_power() float¶
Get the (user defined) power of the laser (W).
- get_frequency() float¶
Get the (user defined) frequency of the laser (Hz).
- class herosdevices.hardware.toptica.dlcpro.BoosTAPro(address: str, frequency: float, power: float | None, observables: dict | None = None, **kwargs)[source]¶
Bases:
DLCCommonDriver for Toptica BoosTAPro tapered amplifier.
- Parameters:
laser_num – Number of the laser in a single dlcpro. Relevant for the dual or quad laser DLC options.
- amp_set_current¶
Set amplifier Current (mA)
laserx:amp:cc:current-set
- amp_actual_current¶
Actual amplifier current (mA)
laserx:amp:cc:current-act
- amp_set_temperature¶
Set amplifier temperature (°C)
laserx:amp:tc:temp-set
- amp_actual_temperature¶
Actual amplifier temperature (°C)
laserx:amp:tc:temp-act
- amp_ontime¶
Run hours of the amplifier (s)
laserx:amp:ontime
- amp_emission¶
emission status of the amplifier
laserx:amp:cc:emission
- system_health: bool¶
Health status of the laser 0 if healthy, 1 if unhealthy
system-health
- emission_status: bool¶
Emission status of the laser 0 if off, 1 if on
- observables¶
- connection¶
- get_power() float¶
Get the (user defined) power of the laser (W).
- get_frequency() float¶
Get the (user defined) frequency of the laser (Hz).
- class herosdevices.hardware.toptica.dlcpro.TAPro(power: float | None = None, **kwargs)[source]¶
-
Driver for Toptica TAPro laser system.
- Parameters:
laser_num – Number of the laser in a single dlcpro. Relevant for the dual DLC options.
- amp_seed_power¶
Seed power at the amplifier stage (mW)
laserx:amp:pd:seed:power
- amp_output_power¶
Output power at the amplifier stage (mW)
laserx:amp:pd:amp:power
- get_power() float[source]¶
Get the power of the laser (W)
laserx:amp:pd:amp:poweror user defined override.
- laser_health: bool¶
Health status
laserx:health
- set_current: float¶
Set diode Current (mA)
laserx:dl:cc:current-set
- actual_current: float¶
Actual diode Current (mA)
laserx:dl:cc:current-act
- set_temperature: float¶
Set diode Temperature (°C)
laserx:dl:tc:temp-set
- actual_temperature: float¶
Actual diode Temperature (°C)
laserx:dl:tc:temp-act
- set_piezo_voltage: float¶
Set piezo voltage (V)
laserx:dl:pc:voltage-set
- actual_piezo_voltage: float¶
Actual piezo voltage (V)
laserx:dl:pc:voltage-act
- diode_ontime: float¶
Diode on time (s)
laserx:dl:ontime
- internal_pd: float¶
Internal PD
laserx:dl:cc:pd
- system_health: bool¶
Health status of the laser 0 if healthy, 1 if unhealthy
system-health
- emission_status: bool¶
Emission status of the laser 0 if off, 1 if on
- observables¶
- connection¶
- get_frequency() float¶
Get the (user defined) frequency of the laser (Hz).
- amp_set_current¶
Set amplifier Current (mA)
laserx:amp:cc:current-set
- amp_actual_current¶
Actual amplifier current (mA)
laserx:amp:cc:current-act
- amp_set_temperature¶
Set amplifier temperature (°C)
laserx:amp:tc:temp-set
- amp_actual_temperature¶
Actual amplifier temperature (°C)
laserx:amp:tc:temp-act
- amp_ontime¶
Run hours of the amplifier (s)
laserx:amp:ontime
- amp_emission¶
emission status of the amplifier
laserx:amp:cc:emission
- class herosdevices.hardware.toptica.dlcpro.TASHGPro(power: float | None = None, **kwargs)[source]¶
Bases:
TAProDriver for Toptica TASHGPro second harmonic doubled laser system.
- shg_set_temperature¶
SHG crystal set temperature (°C)
laserx:nlo:shg:tc:temp-set
- shg_actual_temperature¶
SHG crystal actual temperature (°C)
laserx:nlo:shg:tc:temp-act
- shg_output_power¶
Output power of the SHG stage (mW)
laserx:nlo:pd:shg:power
- shg_lock_status¶
SHG lock state (True/False)
laserx:nlo:shg:lock:lock-enabled
- get_power() float[source]¶
Get the power of the laser (W)
laserx:nlo:pd:shg:poweror user defined override.
- amp_seed_power¶
Seed power at the amplifier stage (mW)
laserx:amp:pd:seed:power
- amp_output_power¶
Output power at the amplifier stage (mW)
laserx:amp:pd:amp:power
- laser_health: bool¶
Health status
laserx:health
- set_current: float¶
Set diode Current (mA)
laserx:dl:cc:current-set
- actual_current: float¶
Actual diode Current (mA)
laserx:dl:cc:current-act
- set_temperature: float¶
Set diode Temperature (°C)
laserx:dl:tc:temp-set
- actual_temperature: float¶
Actual diode Temperature (°C)
laserx:dl:tc:temp-act
- set_piezo_voltage: float¶
Set piezo voltage (V)
laserx:dl:pc:voltage-set
- actual_piezo_voltage: float¶
Actual piezo voltage (V)
laserx:dl:pc:voltage-act
- diode_ontime: float¶
Diode on time (s)
laserx:dl:ontime
- internal_pd: float¶
Internal PD
laserx:dl:cc:pd
- system_health: bool¶
Health status of the laser 0 if healthy, 1 if unhealthy
system-health
- emission_status: bool¶
Emission status of the laser 0 if off, 1 if on
- observables¶
- connection¶
- get_frequency() float¶
Get the (user defined) frequency of the laser (Hz).
- amp_set_current¶
Set amplifier Current (mA)
laserx:amp:cc:current-set
- amp_actual_current¶
Actual amplifier current (mA)
laserx:amp:cc:current-act
- amp_set_temperature¶
Set amplifier temperature (°C)
laserx:amp:tc:temp-set
- amp_actual_temperature¶
Actual amplifier temperature (°C)
laserx:amp:tc:temp-act
- amp_ontime¶
Run hours of the amplifier (s)
laserx:amp:ontime
- amp_emission¶
emission status of the amplifier
laserx:amp:cc:emission
- herosdevices.hardware.toptica.dlcpro.DEFAULT_QUERIES = [['set current', 'dl.cc.current_set', 'mA'], ['actual current', 'dl.cc.current_act', 'mA'],...¶
- herosdevices.hardware.toptica.dlcpro.dlcproorders = ('emission_button_enabled', 'interlock_open', 'frontkey_locked', 'emission', 'system_health',...¶
Define parameters of the DLCPro and the laser in order to build another function call later
- class herosdevices.hardware.toptica.dlcpro.DlcProSource(ip: str, laser: str = 'laser1', queries: list[list[str]] = DEFAULT_QUERIES)[source]¶
Reading Toptica DLC Pro parameters via ethernet.
- sdk_client¶
- sdk_dlcpro¶
- ip¶
- laser = 'laser1'¶
- queries = [['set current', 'dl.cc.current_set', 'mA'], ['actual current', 'dl.cc.current_act', 'mA'],...¶
- property session¶
Return a dlc objects and connect if necessary.