MainLaser¶
- class lsst.ts.tunablelaser.MainLaser(csc, simulation_mode=False, encoding='ascii', terminator=b'\x03')¶
Bases:
LaserThe class that implements the TunableLaser component.
- Parameters
- Attributes
- laser_id
int The ID of the laser
- csc
LaserCSC Reference to the CSC object.
- cpu8000
CPU8000 Controls the CPU8000 laser module.
- m_cpu800
MCPU800 Controls the M_CPU800 laser module.
- llpmku
LLPMKU Controls the llPKMu laser module.
- maxi_opg
MaxiOPG Controls the MaxiOPG laser module.
- tk6
TK6 Controls the TK6 laser module.
- hv40w
HV40W Controls the HV40W laser module.
- delay_lin
DelayLin Controls the DelayLin laser module.
- mini_opg
MiniOPG Controls the MiniOPG laser module.
- ldco48bp
LDCO48BP Controls the LDCO48BP laser module.
- m_ldco48
MLDCO48 Controls the LDCO48 laser module.
- laser_warmup_delay
int The warmup delay before stating that the laser is propagating.
- lock
asyncio.Lock Lock the read/write operation.
- laser_id
Attributes Summary
Is the laser connected?
Is the laser propagating?
The temperature sensors.
The wavelength of the laser.
Methods Summary
change_wavelength(wavelength)Change the wavelength of the laser.
Clear the fault state of the laser.
configure(config)Set the configuration for the TunableLaser.
connect()Connect to the laser.
Disconnect from the laser.
Publish the module's registers' values.
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 the propagation mode to continuously pulse the laser.
set_output_energy_level(output_energy_level)Set the output energy level of the laser.
start_propagating(data)Start propagating the beam of the laser.
Stop propagating the beam of the laser
Trigger a burst.
Attributes Documentation
- connected¶
Is the laser connected?
- is_propagating¶
- temperature¶
- wavelength¶
Methods Documentation
- async change_wavelength(wavelength)¶
Change the wavelength of the laser.
- Parameters
- wavelength
float The wavelength to change to.
- Units
nanometers
- wavelength
- async clear_fault()¶
Clear the fault state of the laser.
- async configure(config)¶
Set the configuration for the TunableLaser.
- async connect()¶
Connect to the laser.
- async disconnect()¶
Disconnect from the laser.
- async read_all_registers()¶
Publish the module’s registers’ values.
- async set_burst_count(count)¶
Set the burst count of the laser.
- Parameters
- count
int The amount to pulse the laser.
- count
- async set_burst_mode(count)¶
Set the propagation mode to pulse the laser at regular intervals.
- Parameters
- count
int The amount of times to pulse the laser. Range is from 1 to 50000.
- count
- 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 of the laser.
- Parameters
- output_energy_level
str, {OFF,Adjust,MAX} The energy level to set the laser to.
OFF: Output energy is off.
Adjust: A mode for calibrating the laser.
MAX: The maximum energy output of the laser.
- output_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.