Device classes¶
Cameras¶
- class concert.devices.cameras.base.Camera¶
Bases: concert.devices.base.Device
Base class for remotely controllable cameras.
- frame-rate
Frame rate of acquisition in q.count per time unit.
- grab()¶
Return a NumPy array with data of the current frame.
- recording(*args, **kwds)¶
A context manager for starting and stopping the camera.
In general it is used with the with keyword like this:
with camera.recording(): frame = camera.grab()
- start_recording(instance, *args, **kwargs)¶
Start recording frames.
- stop_recording(instance, *args, **kwargs)¶
Stop recording frames.
- stream(*args, **kwargs)¶
Grab frames continuously and send them to consumer, which is a coroutine.
- trigger()¶
Trigger a frame if possible.
I/O¶
- class concert.devices.io.base.IO¶
Bases: concert.devices.base.Device
The IO device consists of ports which can be readable, writable or both.
- ports¶
Port IDs used by read_port() and write_port()
- read_port(port)¶
Read a port.
- write_port(port, value)¶
Write a value to the port.
Lightsources¶
- class concert.devices.lightsources.base.LightSource¶
Bases: concert.devices.base.Device
A base LightSource class.
Monochromators¶
- class concert.devices.monochromators.base.Monochromator¶
Bases: concert.devices.base.Device
Monochromator device which is used to filter the beam in order to get a very narrow energy bandwidth.
- energy¶
Monochromatic energy in electron volts.
- wavelength¶
Monochromatic wavelength in meters.
Motors¶
Linear¶
Linear motors are characterized by moving along a straight line.
- class concert.devices.motors.base.LinearMotor¶
Bases: concert.devices.motors.base._PositionMixin
One-dimensional linear motor.
- position¶
Position of the motor in length units.
- class concert.devices.motors.base.ContinuousLinearMotor¶
Bases: concert.devices.motors.base.LinearMotor
One-dimensional linear motor with adjustable velocity.
- velocity¶
Current velocity in length per time unit.
Rotational¶
Rotational motors are characterized by rotating around an axis.
- class concert.devices.motors.base.RotationMotor¶
Bases: concert.devices.motors.base._PositionMixin
One-dimensional rotational motor.
- position¶
Position of the motor in angular units.
- class concert.devices.motors.base.ContinuousRotationMotor¶
Bases: concert.devices.motors.base.RotationMotor
One-dimensional rotational motor with adjustable velocity.
- velocity¶
Current velocity in angle per time unit.
Axes¶
An axis is a coordinate system axis which can realize either translation or rotation, depending by which type of motor it is realized.
- class concert.devices.positioners.base.Axis(coordinate, motor, direction=1, position=None)¶
Bases: object
An axis represents a Euclidean axis along which one can translate or around which one can rotate. The axis coordinate is a string representing the Euclidean axis, i.e. ‘x’ or ‘y’ or ‘z’. Movement is realized by a motor. An additional position argument is necessary for calculatin more complicated motion types, e.g. rotation around arbitrary point in space. It is the local position with respect to a concert.devices.positioners.base.Positioner in which it is placed.
- get_position()¶
Get position asynchronously with respect to axis direction.
- set_position(position)¶
Set the position asynchronously with respect to axis direction.
Photodiodes¶
Photodiodes measure light intensity.
- class concert.devices.photodiodes.base.PhotoDiode¶
Bases: concert.devices.base.Device
Impementation of photo diode with V output signal
Positioners¶
Positioner is a device consisting of more concert.devices.positioners.base.Axis instances which make it possible to specify a 3D position and orientation of some object.
- class concert.devices.positioners.base.Positioner(axes, position=None)¶
Bases: concert.devices.base.Device
Combines more motors which move to form a complex motion. axes is a list of Axis instances. position is a 3D vector of coordinates specifying the global position of the positioner.
If a certain coordinate in the positioner is missing, then when we set the position or orientation we can specify the respective vector position to be zero or numpy.nan.
- back(value)¶
Move back by value.
- down(value)¶
Move down by value.
- forward(value)¶
Move forward by value.
- left(value)¶
Move left by value.
- move(position)¶
Move by specified position.
- right(value)¶
Move right by value.
- rotate(angles)¶
Rotate by angles.
- up(value)¶
Move up by value.
Imaging Positioners¶
Imaging positioner is a positioner capable of moving in x and y directions by the given amount of pixels.
- class concert.devices.positioners.imaging.Positioner(axes, detector, position=None)¶
Bases: concert.devices.positioners.base.Positioner
A positioner which takes into account a detector with some pixel size. This way the user can specify the movement in pixels.
- move(position)¶
Move by specified position which can be given in meters or pixels.
Pumps¶
- class concert.devices.pumps.base.Pump¶
Bases: concert.devices.base.Device
A pumping device.
- start()¶
Start pumping.
- stop()¶
Stop pumping.
Scales¶
- class concert.devices.scales.base.Scales¶
Bases: concert.devices.base.Device
Base scales class.
- class concert.devices.scales.base.TarableScales¶
Bases: concert.devices.scales.base.Scales
Scales which can be tared.
- tare(*args, **kwargs)¶
Tare the scales.
Shutters¶
- class concert.devices.shutters.base.Shutter¶
Bases: concert.devices.base.Device
Shutter device class implementation.
- close()¶
Close the shutter.
- open()¶
Open the shutter.