StubbsLaser

class lsst.ts.tunablelaser.StubbsLaser(csc, terminator=b'\x03', encoding='ascii', simulation_mode=False)

Bases: Laser

Implement the Stubbs NT-252 laser.

Parameters:
cscLaserCSC

The CSC object.

terminatorbytes

The terminating characters for sent/received messages.

encodingstr

The type of encoding to use.

simulation_modebool

Is the laser in simulation mode?

Attributes:
laser_idint

The ID of the laser.

midiopghardware.MidiOPG

The MidiOPG module.

m_cpu800hardware.MCPU800

The MCPU800 module.

cpu8000hardware.CPU8000

The CPU8000 module.

tk6hardware.TK6

The TK6 module.

hv40whardware.HV40W

The HV40W module.

delay_linhardware.DelayLin

The DelayLin module.

ldco48bphardware.LDCO48BP

The LDCO48BP module.

m_ldc048hardware.MLDCO48

The MLDCO48 module.

laser_warmup_delayint

A delay for publishing propagation for warmup.

lockasyncio.Lock

A lock for writing/reading messages.

Attributes Summary

connected

Is the laser connected?

is_propagating

Is the laser propagating?

should_be_connected

temperature

The temperature sensors.

wavelength

The wavelength of the laser.

Methods Summary

change_wavelength(wavelength)

Change the wavelength.

clear_fault()

Clear the fault state of the laser.

configure(config)

Configure the laser.

connect()

Connect to the laser.

disconnect()

Disconnect from the laser.

read_all_registers()

set_burst_count(count)

Set the burst count of the laser.

set_burst_mode(count)

Set the propagation mode to pulse the laser at regular intervals.

set_continuous_mode()

Set the propagation mode to continuously pulse the laser.

set_output_energy_level(output_energy_level)

Set the output energy level.

start_propagating(data)

Start propagating the beam of the laser.

stop_propagating()

Stop propagating the beam of the laser

trigger_burst()

Trigger a burst.

Attributes Documentation

connected

Is the laser connected?

is_propagating
should_be_connected
temperature
wavelength

Methods Documentation

async change_wavelength(wavelength)

Change the wavelength.

Parameters:
wavelength: `float`

The value to change the wavelength.

async clear_fault()

Clear the fault state of the laser.

async configure(config)

Configure the laser.

async connect()

Connect to the laser.

async disconnect()

Disconnect from the laser.

async read_all_registers()
async set_burst_count(count)

Set the burst count of the laser.

Parameters:
countint

The amount to pulse the laser.

async set_burst_mode(count)

Set the propagation mode to pulse the laser at regular intervals.

Parameters:
countint

The amount of times to pulse the laser. Range is from 1 to 50000.

Raises:
ValueError

Raised when the count parameter falls outside of the accepted range.

async set_continuous_mode()

Set the propagation mode to continuously pulse the laser.

async set_output_energy_level(output_energy_level)

Set the output energy level.

Parameters:
output_energy_level:

The laser’s energy level.

async start_propagating(data)

Start propagating the beam of the laser.

async stop_propagating()

Stop propagating the beam of the laser

async trigger_burst()

Trigger a burst.

Raises:
ValueError

Raised when mode parameter is not in list of accepted values.