MainLaser¶
- class lsst.ts.tunablelaser.MainLaser(csc, simulation_mode=False, encoding='ascii', terminator=b'\x03')¶
Bases:
Laser
The 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_optical_configuration
(optical_configuration)Change the optical alignment of 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¶
- should_be_connected¶
- 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_optical_configuration(optical_configuration)¶
Change the optical alignment of the laser.
- Parameters:
- optical_configuration: `str`, {straight-through,F1,F2}
The optical alignment to switch to.
- 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.