C# Class TransferCavityLock.Controller

A class for locking the laser using a transfer cavity.
Inheritance: System.MarshalByRefObject
Afficher le fichier Open project: ColdMatter/EDMSuite Class Usage Examples

Méthodes publiques

Свойство Type Description
Decrements int
Increments int
State ControllerState
lState LaserState
rampStopLock object
setPointIncrementSize double
tweakLock object

Méthodes publiques

Méthode Description
DisengageLock ( ) : void
EngageLock ( ) : void
InitializeLifetimeService ( ) : Object
InitializeUI ( ) : void
StabilizeCavity ( ) : void
Start ( ) : void
StartRamp ( ) : void
StopRamp ( ) : void
UnlockCavity ( ) : void

Private Methods

Méthode Description
CalculateLaserSetPoint ( double masterFitCoefficients, double slaveFitCoefficients ) : double

Measures the laser set point (the distance between the he-ne and TiS peaks in cavity voltage units) The lock (see calculateDeviationFromSetPoint) will adjust the voltage fed to the TiS to keep this number constant.

WindowGainChanged ( double g ) : void
WindowVoltageToLaserChanged ( double voltage ) : void
calculateDeviationFromSetPoint ( double laserSetPoint, double masterFitCoefficients, double slaveFitCoefficients ) : double
calculateNewScanCentre ( ScanParameters scanParameters, double fitCoefficients ) : double

This adjusts the scan range of the next scan, so that the HeNe peak stays in the middle of the scan. It modifies the scan parameters that are passed to it.

calculateNewVoltageToLaser ( double vtolaser, double measuredVoltageChange ) : double
createInitialScanParameters ( ) : ScanParameters
displayData ( ScanParameters sp, CavityScanData data ) : void
displayMasterFit ( ScanParameters sp, double fitCoefficients ) : void
displaySlaveFit ( ScanParameters sp, double fitCoefficients ) : void
finalizeRamping ( ) : void
initializeControllerValues ( ) : void
initializeHardware ( ) : void
rampLoop ( ) : void

The main loop. Scans the cavity, looks at photodiodes, corrects the cavity scan range for the next scan and locks the laser. It does a first scan of the data before starting. It then enters a loop where the next scan is prepared. The preparation varies depending on the ControllerState. Once all the preparation is done, the next scan is started. And so on.

readParametersFromUI ( ) : void

Gets some parameters from the UI and stores them on the controller.

releaseLaser ( ) : void
saveFitData ( System file, double param ) : void
scan ( ScanParameters sp ) : CavityScanData

A function to scan across the voltage range set by the limits high and low. Reads from the two photodiodes and spits out an array. The basic unit of the program.

setToLaserEngaged ( ) : void
setUIInitialValues ( ) : void
tweakSetPoint ( double oldSetPoint ) : double

Method Details

DisengageLock() public méthode

public DisengageLock ( ) : void
Résultat void

EngageLock() public méthode

public EngageLock ( ) : void
Résultat void

InitializeLifetimeService() public méthode

public InitializeLifetimeService ( ) : Object
Résultat Object

InitializeUI() public méthode

public InitializeUI ( ) : void
Résultat void

StabilizeCavity() public méthode

public StabilizeCavity ( ) : void
Résultat void

Start() public méthode

public Start ( ) : void
Résultat void

StartRamp() public méthode

public StartRamp ( ) : void
Résultat void

StopRamp() public méthode

public StopRamp ( ) : void
Résultat void

UnlockCavity() public méthode

public UnlockCavity ( ) : void
Résultat void

Property Details

Decrements public_oe property

public int Decrements
Résultat int

Increments public_oe property

public int Increments
Résultat int

State public_oe property

public ControllerState State
Résultat ControllerState

lState public_oe property

public LaserState lState
Résultat LaserState

rampStopLock public_oe property

public object rampStopLock
Résultat object

setPointIncrementSize public_oe property

public double setPointIncrementSize
Résultat double

tweakLock public_oe property

public object tweakLock
Résultat object