IKA RV10

PyLabware driver for IKA RV10 rotavap.

class PyLabware.devices.ika_rv10.RV10Rotovap(device_name, connection_mode, address, port)[source]

Bases: AbstractRotavap

This provides a Python class for the IKA RV10 rotavap based on the english section of the original operation manuals for the rotavap and the heating bath, 20000005206 RV10 bd_082018 and 20000017436 HB digital_092017, respectively.

Default constructor.

Parameters:
  • device_name (str) –

  • connection_mode (str) –

  • address (str | None) –

  • port (str | int) –

check_errors()[source]

Not yet implemented. #TODO

clear_errors()[source]

Not yet implemented. #TODO

get_speed()[source]

Gets actual rotation speed.

Return type:

int

get_speed_setpoint()[source]

Gets current rotation speed setpoint.

Return type:

int

get_status()[source]

Not yet implemented. #TODO

get_temperature(sensor=0)[source]

Gets current bath temperature.

Parameters:

sensor (int) – Specify which temperature probe the setpoint applies to. This device has only an internal sensor. Thus, the sensor variable has no effect here.

Return type:

float

get_temperature_setpoint(sensor=0)[source]

Reads the current temperature setpoint.

Parameters:

sensor (int) – Specify which temperature probe the setpoint applies to. This device has only an internal sensor. Thus, the sensor variable has no effect here.

Return type:

float

initialize_device()[source]

Performs reset and do a custom initialization sequence.

is_connected()[source]

Checks if device is connected.

Return type:

bool

is_idle()[source]

Checks if device is ready - no explicit method for that.

Return type:

bool

lift_down()[source]

Move evaporation flask down.

lift_up()[source]

Move evaporation flask up.

set_speed(speed)[source]

Sets desired rotation speed.

Parameters:

speed (int) –

set_temperature(temperature, sensor=0)[source]

Sets the desired bath temperature.

Parameters:
  • temperature (float) – Temperature setpoint in °C.

  • sensor (int) – Specify which temperature probe the setpoint applies to. This device has only an internal sensor. Thus, the sensor variable has no effect here.

start()[source]

Starts evaporation.

start_bath()[source]

Starts heating.

start_rotation()[source]

Starts rotation.

stop()[source]

Stops evaporation.

stop_bath()[source]

Stops heating.

stop_rotation()[source]

Stops rotation.

class PyLabware.devices.ika_rv10.RV10RotovapCommands(*args, **kwargs)[source]

Bases: LabDeviceCommands

Collection of command definitions for RV10 rotavap.

This class shouldn’t be instantiated

DEFAULT_NAME = 'RV10Digital'
GET_NAME = {'name': 'IN_NAME', 'reply': {'args': [None, 11], 'parser': <function slicer>, 'type': <class 'str'>}}
GET_SPEED = {'name': 'IN_PV_4', 'reply': {'args': [None, -2], 'parser': <function slicer>, 'type': <class 'int'>}}
GET_SPEED_SET = {'name': 'IN_SP_4', 'reply': {'args': [None, -2], 'parser': <function slicer>, 'type': <class 'int'>}}
GET_STATUS = {'name': 'STATUS', 'reply': {'type': <class 'str'>}}
GET_TEMP = {'name': 'IN_PV_2', 'reply': {'args': [None, -2], 'parser': <function slicer>, 'type': <class 'float'>}}
GET_TEMP_SAFE = {'name': 'IN_SP_3'}
GET_TEMP_SET = {'name': 'IN_SP_2', 'reply': {'args': [None, -2], 'parser': <function slicer>, 'type': <class 'float'>}}
GET_VERSION = {'name': 'IN_SOFTWARE', 'reply': {'type': <class 'str'>}}
HEATING_MEDIUMS = {0: 'Oil', 1: 'Water'}
LIFT_DOWN = {'name': 'OUT_SP_63 1'}
LIFT_UP = {'name': 'OUT_SP_62 1'}
RESET = {'name': 'RESET'}
SET_INTERVAL_TIME = {'check': {'max': 60, 'min': 1}, 'name': 'OUT_SP_61', 'type': <class 'int'>}
SET_SPEED = {'check': {'max': 280, 'min': 0}, 'name': 'OUT_SP_4', 'type': <class 'int'>}
SET_TEMP = {'check': {'max': 180, 'min': 0}, 'name': 'OUT_SP_2', 'type': <class 'int'>}
SET_TIMER_DURATION = {'check': {'max': 199, 'min': 1}, 'name': 'OUT_SP_60', 'type': <class 'int'>}
START_HEAT = {'name': 'START_2'}
START_INTERVAL = {'name': 'START_60'}
START_ROTATION = {'name': 'START_4'}
START_TIMER = {'name': 'START_61'}
STATUS_CODES = {'0': 'Manual operation', '1': 'Remote operation', 'E01': 'No rotation', 'E02': 'No communication with the heating bath'}
STOP_HEAT = {'name': 'STOP_2'}
STOP_INTERVAL = {'name': 'STOP_60'}
STOP_ROTATION = {'name': 'STOP_4'}
STOP_TIMER = {'name': 'STOP_61'}