pyobs-zaber

This is a pyobs (documentation) module for selecting between named positions (e.g. instrument ports) on a Zaber linear motor.

Example configuration

This is an example configuration:

class: pyobs_zaber.ZaberModeSelector
port: /dev/ttyUSB0
modes:
  Photometry: 0
  Spectroscopy: 50000

# communication
comm:
  jid: test@example.com
  password: ***

Available classes

There is one single class for Zaber motors.

ZaberModeSelector

class ZaberModeSelector(modes: dict, **kwargs: Any)

Bases: Module, IMode, IMotion

Class for the Selection of Modus with a linear Motor (e.g. Spectroscopy or Photometry).

Creates a new ZaberModeSelector. :Parameters: modes – dictionary of available modes in the form {name: position}

async init(**kwargs: Any) None[source]

Initialize device.

async open() None[source]

Open module.

async park(**kwargs: Any) None[source]

Park device.

async set_mode(mode: str, group: int = 0, **kwargs: Any) None[source]

Set the current mode.

Parameters:
  • mode – Name of mode to set.

  • group – Group number (unused, single group only).

Raises:
  • ValueError – If an invalid mode was given.

  • MoveError – If mode selector cannot be moved.

async stop_motion(device: str | None = None, **kwargs: Any) None[source]

Stop the motion.