Heidolph RZR 2052 Control

PyLabware driver for Heidolph RZR 2052 Control overhead stirrer.

class PyLabware.devices.heidolph_rzr_2052_control.RZR2052ControlStirrer(device_name, connection_mode, address, port)[source]

Bases: AbstractStirringController

This provides a Python class for the Heidolph RZR 2052 Control overhead stirrer based on the english section of the original operation manual 01-005-002-95-2 21/10/2011

Default constructor.

Parameters:
  • device_name (str) –

  • connection_mode (str) –

  • address (str | None) –

  • port (str | int) –

calibrate_torque()[source]

Sets current measured torques to zero.

check_errors()[source]

Check device for errors & raises PLDeviceInternalError with appropriate error message.

clear_errors()[source]

Clears device errors.

get_speed()[source]

Gets actual rotation speed.

Return type:

int

get_speed_setpoint()[source]

Gets desired rotation speed.

Return type:

int

get_status()[source]

Gets device status.

Return type:

str

get_torque()[source]

Gets current torque value.

Return type:

int

initialize_device()[source]

Performs device initialization & clear the errors.

is_connected()[source]

Checks whether device is connected.

Return type:

bool

is_idle()[source]

Checks whether device is idle.

Return type:

bool

parse_reply(cmd, reply)[source]

Overloaded base class method to handle regex parsing.

Parameters:
  • reply (Any) – Reply from the device.

  • cmd (Dict) – Command definition toc heck for reply parsing workflow.

Returns:

Parsed reply from the device.

Return type:

(any)

set_speed(speed)[source]

Sets rotation speed.

Parameters:

speed (int) –

start_stirring()[source]

Starts rotation.

stop_stirring()[source]

Stops rotation.

class PyLabware.devices.heidolph_rzr_2052_control.RZR2052ControlStirrerCommands(*args, **kwargs)[source]

Bases: LabDeviceCommands

Collection of command definitions for RZR 2052 Control overhead stirrer.

This class shouldn’t be instantiated

GET_SPEED = {'name': 'r', 'reply': {'args': ['RPM:\\s(\\d{1,4})'], 'parser': <function researcher>, 'type': <class 'int'>}}
GET_SPEED_SET = {'name': 's', 'reply': {'args': ['SET:\\s(\\d{1,4})'], 'parser': <function researcher>, 'type': <class 'int'>}}
GET_STATUS = {'name': 'f', 'reply': {'args': ['FLT:\\s(.*!)'], 'parser': <function researcher>, 'type': <class 'str'>}}
GET_TORQUE = {'name': 'm', 'reply': {'args': ['NCM:\\s(-*?\\d{1,4})'], 'parser': <function researcher>, 'type': <class 'int'>}}
MOTOR_ERROR = 'Motor Error!'
NO_ERROR = 'No Error!'
OVERHEAT_ERROR = 'Motor Temperature!'
RESET = {'name': 'C', 'reply': {'type': <class 'str'>}}
SET_MODE_I = {'name': 'B'}
SET_MODE_II = {'name': 'A'}
SET_RMT_OFF = {'name': 'D'}
SET_SPEED = {'check': {'max': 2000, 'min': 50}, 'name': 'R', 'reply': {'args': ['SET:\\s(\\d{1,4})'], 'parser': <function researcher>, 'type': <class 'int'>}, 'type': <class 'int'>}
SET_TORQ_ZERO = {'name': 'N', 'reply': {'type': <class 'str'>}}
STOP = {'name': 'R0', 'reply': {'args': ['SET:\\s(\\d{1,4})'], 'parser': <function researcher>, 'type': <class 'int'>}}