TriggeredRPCCameraΒΆ

Class Arguments

Argument

Type

Default Value

rpc_camera

Component

fire_ttl

Switchable

config_dict

dict

default_config

TStr

fire_pulsetime

TFloat

9.999999999999999e-05

Bold arguments are mandatory. For more documentation on the listed arguments refer to the class definition below. If parameters appear in this list but not in the class definition below, please recursively check the linked base classes for the definition of the parameter.

Inheritance Diagram

Inheritance diagram of atomiq.components.optoelectronics.camera.TriggeredRPCCamera

Example Component Dictionary

   {
    "camera_example": {
        "classname": "atomiq.components.optoelectronics.camera.TriggeredRPCCamera",
        "arguments": {
            "rpc_camera": "<mandatory parameter (Component)>",
            "fire_ttl": "<mandatory parameter (Switchable)>",
            "config_dict": "<mandatory parameter (dict)>",
            "default_config": "<mandatory parameter (TStr)>",
            "fire_pulsetime": 9.999999999999999e-05
        }
    }
}

Class Description

class atomiq.components.optoelectronics.camera.TriggeredRPCCamera(rpc_camera, fire_ttl, fire_pulsetime=9.999999999999999e-05, *args, **kwargs)[source]

Bases: Camera, Triggerable

Camera that is configured via RPC but triggered via a TTL

Parameters:
  • rpc_camera (Component) -- The ARTIQ RPC object that represents the camera. It needs to provide the RPC functions configure(identifier: int, configuration: dict, metadata: dict) to configure the camera, start() to arm the camera (i.e. wait for trigger), and abort() to stop waiting for trigger or stop exposure.

  • fire_ttl (Switchable) -- The logic signal that triggers the exposure.

  • fire_pulsetime (TFloat) -- The time the logic signal remains high to trigger the camera (default 100us)

A Triggerable has one or more channel(s) that can be triggered

kernel_invariants = {'camera', 'fire_pulsetime', 'fire_ttl'}
arm()[source]

Arm the camera such that a subsequent call of the start() method can start the exposure immediately. Arming typically cannot meet realtime requirements. However, once armed, the camera can start exposure on a trigger in realtime

stop()[source]

Stop exposure of the camera

fire(channel='')[source]

Uses the fire_ttl component to trigger the camera. Pulses the TTL for fire_pulsetime (as defined in components) and thereby advances the time cursor by this amount.

Parameters:

channel (artiq.language.types.TStr) -- Not used.

start()[source]

Start exposure of the camera (alias for fire() ).

configure(config='')

Configure the camera, i.e. set exposure time, readout mode, binning, etc. Named configuration options are available from the config_dict provided upon object creation. We load the one with the key given in config. If no key is given, load the default defined upon object creation.

Parameters:

config (artiq.language.types.TStr)