Qudi
Public Member Functions | Static Public Attributes | List of all members
confocal_scanner_dummy.ConfocalScannerDummy Class Reference

Dummy confocal scanner. More...

Inheritance diagram for confocal_scanner_dummy.ConfocalScannerDummy:
Inheritance graph
[legend]
Collaboration diagram for confocal_scanner_dummy.ConfocalScannerDummy:
Collaboration graph
[legend]

Public Member Functions

def __init__ (self, config, kwargs)
 
def on_activate (self)
 Initialisation performed during activation of the module.
 
def on_deactivate (self)
 Deactivate properly the confocal scanner dummy.
 
def reset_hardware (self)
 Resets the hardware, so the connection is lost and other programs can access it. More...
 
def get_position_range (self)
 Returns the physical range of the scanner. More...
 
def set_position_range (self, myrange=None)
 Sets the physical range of the scanner. More...
 
def set_voltage_range (self, myrange=None)
 Sets the voltage range of the NI Card. More...
 
def get_scanner_axes (self)
 Dummy scanner is always 3D cartesian.
 
def get_scanner_count_channels (self)
 3 counting channels in dummy confocal: normal, negative and a ramp. More...
 
def set_up_scanner_clock (self, clock_frequency=None, clock_channel=None)
 Configures the hardware clock of the NiDAQ card to give the timing. More...
 
def set_up_scanner (self, counter_channels=None, sources=None, clock_channel=None, scanner_ao_channels=None)
 Configures the actual scanner with a given clock. More...
 
def scanner_set_position (self, x=None, y=None, z=None, a=None)
 Move stage to x, y, z, a (where a is the fourth voltage channel). More...
 
def get_scanner_position (self)
 Get the current position of the scanner hardware. More...
 
def scan_line (self, line_path=None, pixel_clock=False)
 Scans a line and returns the counts on that line. More...
 
def close_scanner (self)
 Closes the scanner and cleans up afterwards. More...
 
def close_scanner_clock (self, power=0)
 Closes the clock and cleans up afterwards. More...
 
def twoD_gaussian_function (self, x_data_tuple=None, amplitude=None, x_zero=None, y_zero=None, sigma_x=None, sigma_y=None, theta=None, offset=None)
 
                                                                  #

the following two functions are needed to fluoreschence signal # of the dummy NVs # # More...

 
def gaussian_function (self, x_data=None, amplitude=None, x_zero=None, sigma=None, offset=None)
 This method provides a one dimensional gaussian function. More...
 
- Public Member Functions inherited from core.module.BaseMixin
def __init__ (self, manager, name, config=None, callbacks=None, kwargs)
 Initialise Base class object and set up its state machine. More...
 
def log (self)
 Returns a logger object.
 
def is_module_threaded (self)
 Returns whether the module shall be started in a thread.
 
def on_activate (self)
 Method called when module is activated. More...
 
def on_deactivate (self)
 Method called when module is deactivated. More...
 
def getStatusVariables (self)
 Return a dict of variable names and their content representing the module state for saving. More...
 
def setStatusVariables (self, variableDict)
 Give a module a dict of variable names and their content representing the module state. More...
 
def getConfiguration (self)
 Return the configration dictionary for this module. More...
 
def get_connector (self, connector_name)
 Return module connected to the given named connector. More...
 
- Public Member Functions inherited from core.module.ModuleMeta
def __new__ (cls, name, bases, attrs)
 Collect declared Connectors, ConfigOptions and StatusVars into dictionaries. More...
 

Static Public Attributes

 fitlogic = Connector(interface='FitLogic')
 

Additional Inherited Members

- Public Attributes inherited from core.module.BaseMixin
 module_state
 
 connectors
 

Detailed Description

Dummy confocal scanner.

Produces a picture with several gaussian spots.

Example config for copy-paste:

confocal_scanner_dummy: module 'confocal_scanner_dummy.ConfocalScannerDummy' clock_frequency 100 # in Hz fitlogic 'fitlogic' # name of the fitlogic module, see default config

Member Function Documentation

◆ close_scanner()

def confocal_scanner_dummy.ConfocalScannerDummy.close_scanner (   self)

Closes the scanner and cleans up afterwards.

Returns
int: error code (0:OK, -1:error)

◆ close_scanner_clock()

def confocal_scanner_dummy.ConfocalScannerDummy.close_scanner_clock (   self,
  power = 0 
)

Closes the clock and cleans up afterwards.

Returns
int: error code (0:OK, -1:error)

◆ gaussian_function()

def confocal_scanner_dummy.ConfocalScannerDummy.gaussian_function (   self,
  x_data = None,
  amplitude = None,
  x_zero = None,
  sigma = None,
  offset = None 
)

This method provides a one dimensional gaussian function.

Parameters
arrayx_data: x values
floator int amplitude: Amplitude of gaussian
floator int x_zero: x value of maximum
floator int sigma: standard deviation
floator int offset: offset
Returns
callable function: returns a 1D Gaussian function

◆ get_position_range()

def confocal_scanner_dummy.ConfocalScannerDummy.get_position_range (   self)

Returns the physical range of the scanner.

Returns
float [4][2]: array of 4 ranges with an array containing lower and upper limit

◆ get_scanner_count_channels()

def confocal_scanner_dummy.ConfocalScannerDummy.get_scanner_count_channels (   self)

3 counting channels in dummy confocal: normal, negative and a ramp.

◆ get_scanner_position()

def confocal_scanner_dummy.ConfocalScannerDummy.get_scanner_position (   self)

Get the current position of the scanner hardware.

Returns
float[]: current position in (x, y, z, a).

◆ reset_hardware()

def confocal_scanner_dummy.ConfocalScannerDummy.reset_hardware (   self)

Resets the hardware, so the connection is lost and other programs can access it.

Returns
int: error code (0:OK, -1:error)

◆ scan_line()

def confocal_scanner_dummy.ConfocalScannerDummy.scan_line (   self,
  line_path = None,
  pixel_clock = False 
)

Scans a line and returns the counts on that line.

Parameters
float[][4]line_path: array of 4-part tuples defining the voltage points
boolpixel_clock: whether we need to output a pixel clock for this line
Returns
float[]: the photon counts per second

◆ scanner_set_position()

def confocal_scanner_dummy.ConfocalScannerDummy.scanner_set_position (   self,
  x = None,
  y = None,
  z = None,
  a = None 
)

Move stage to x, y, z, a (where a is the fourth voltage channel).

Parameters
floatx: postion in x-direction (volts)
floaty: postion in y-direction (volts)
floatz: postion in z-direction (volts)
floata: postion in a-direction (volts)
Returns
int: error code (0:OK, -1:error)

◆ set_position_range()

def confocal_scanner_dummy.ConfocalScannerDummy.set_position_range (   self,
  myrange = None 
)

Sets the physical range of the scanner.

Parameters
float[4][2] myrange: array of 4 ranges with an array containing lower and upper limit
Returns
int: error code (0:OK, -1:error)

◆ set_up_scanner()

def confocal_scanner_dummy.ConfocalScannerDummy.set_up_scanner (   self,
  counter_channels = None,
  sources = None,
  clock_channel = None,
  scanner_ao_channels = None 
)

Configures the actual scanner with a given clock.

Parameters
strcounter_channel: if defined, this is the physical channel of the counter
strphoton_source: if defined, this is the physical channel where the photons are to count from
strclock_channel: if defined, this specifies the clock for the counter
strscanner_ao_channels: if defined, this specifies the analoque output channels
Returns
int: error code (0:OK, -1:error)

◆ set_up_scanner_clock()

def confocal_scanner_dummy.ConfocalScannerDummy.set_up_scanner_clock (   self,
  clock_frequency = None,
  clock_channel = None 
)

Configures the hardware clock of the NiDAQ card to give the timing.

Parameters
floatclock_frequency: if defined, this sets the frequency of the clock
strclock_channel: if defined, this is the physical channel of the clock
Returns
int: error code (0:OK, -1:error)

◆ set_voltage_range()

def confocal_scanner_dummy.ConfocalScannerDummy.set_voltage_range (   self,
  myrange = None 
)

Sets the voltage range of the NI Card.

Parameters
float[2] myrange: array containing lower and upper limit
Returns
int: error code (0:OK, -1:error)

◆ twoD_gaussian_function()

def confocal_scanner_dummy.ConfocalScannerDummy.twoD_gaussian_function (   self,
  x_data_tuple = None,
  amplitude = None,
  x_zero = None,
  y_zero = None,
  sigma_x = None,
  sigma_y = None,
  theta = None,
  offset = None 
)

                                                                  #

the following two functions are needed to fluoreschence signal # of the dummy NVs # #

This method provides a two dimensional gaussian function.

    @param (k,M)-shaped array x_data_tuple: x and y values
    @param float or int amplitude: Amplitude of gaussian
    @param float or int x_zero: x value of maximum
    @param float or int y_zero: y value of maximum
    @param float or int sigma_x: standard deviation in x direction
    @param float or int sigma_y: standard deviation in y direction
    @param float or int theta: angle for eliptical gaussians
    @param float or int offset: offset

    @return callable function: returns the function

The documentation for this class was generated from the following file: