navigate.model.devices.daq.synthetic.SyntheticDAQ
- class navigate.model.devices.daq.synthetic.SyntheticDAQ(configuration: dict[str, Any])
Bases:
DAQBase
SyntheticDAQ class for Data Acquisition (DAQ).
- __init__(configuration: dict[str, Any]) → None
Initialize the Synthetic DAQ.
- Parameters:
configuration (Dict[str, Any]) – Configuration dictionary.
Methods
__init__
(configuration)Initialize the Synthetic DAQ.
add_camera
(microscope_name, camera)Connect camera with daq: only in syntheticDAQ.
calculate_all_waveforms
(microscope_name, ...)Pre-calculates all waveforms necessary for the acquisition and organizes in a dictionary format.
enable_microscope
(microscope_name)Enables the microscope.
prepare_acquisition
(channel_key)Prepare the acquisition.
run_acquisition
([wait_until_done])Run DAQ Acquisition.
set_external_trigger
([external_trigger])Set the external trigger.
Stop Acquisition.
update_analog_task
(board_name)Update the analog task.
Wait for a short time to generate an image
Attributes
Configuration dictionary.
Camera object.
Lock for waiting to run.
Analog output tasks.
Flag for updating analog task.
Trigger mode.
- add_camera(microscope_name: str, camera: object) → None
Connect camera with daq: only in syntheticDAQ.
- Parameters:
microscope_name (str) – Name of microscope.
camera (navigate.model.devices.camera.base.CameraBase) – Camera object.
- calculate_all_waveforms(microscope_name, exposure_times, sweep_times)
Pre-calculates all waveforms necessary for the acquisition and organizes in a dictionary format.
- Parameters:
microscope_name (str) – Name of the active microscope
exposure_times (dict) – Dictionary of exposure times for each selected channel
sweep_times (dict) – Dictionary of sweep times for each selected channel
- Returns:
self.waveform_dict – Dictionary of waveforms to pass to galvo and ETL, plus a camera waveform for display purposes.
- Return type:
dict
- enable_microscope(microscope_name: str) → None
Enables the microscope.
- Parameters:
microscope_name (str) – Name of the active microscope
- prepare_acquisition(channel_key: str) → None
Prepare the acquisition.
- Parameters:
channel_key (str) – Channel key for current channel.
- run_acquisition(wait_until_done=True) → None
Run DAQ Acquisition.
Run the tasks for triggering, analog and counter outputs. The master trigger initiates all other tasks via a shared trigger For this to work, all analog output and counter tasks have to be started so that they are waiting for the trigger signal.
- Parameters:
wait_until_done (bool, optional) – Wait until acquisition is done, by default True.
- set_external_trigger(external_trigger: Optional[str] = None) → None
Set the external trigger.
- Parameters:
external_trigger (str, optional) – Name of external trigger.
- stop_acquisition() → None
Stop Acquisition.
- update_analog_task(board_name: str) → bool
Update the analog task.
- Parameters:
board_name (str) – Name of board.
- Returns:
True if task is updated, False otherwise.
- Return type:
bool
- wait_acquisition_done() → None
Wait for a short time to generate an image
- analog_outputs
Analog output tasks.
- Type:
dict
- camera
Camera object.
- Type:
dict
- camera_delay
Camera delay percentage
- Type:
float
- configuration
Configuration dictionary.
- Type:
dict
- daq_parameters
Dictionary of DAQ parameters
- Type:
dict
- exposure_times
exposure times for different channels
- Type:
dict
- is_updating_analog_task
Flag for updating analog task.
- Type:
bool
- microscope_name
Name of the active microscope
- Type:
str
- sample_rate
Sample rate of the DAQ
- Type:
float
- sweep_times
Sweep times for different channels
- Type:
dict
- trigger_mode
Trigger mode. Self-trigger or external-trigger.
- Type:
str
- wait_to_run_lock
Lock for waiting to run.
- Type:
Lock
- waveform_constants
Dictionary of waveform constants
- Type:
dict
- waveform_dict
Dictionary of waveforms.
- Type:
dict
- waveform_expand_num
Number of times to expand the waveform
- Type:
int
- waveform_repeat_num
Number of times to repeat the waveform
- Type:
int