pylabrobot.thermo_fisher.alps.sealer.ThermoScientificALPSSealer#

class pylabrobot.thermo_fisher.alps.sealer.ThermoScientificALPSSealer(port: str, timeout: float = 5.0, settle_time: float = 2.0, preheating_temperature: int = 100)#

Bases: ABC

Shared base for Thermo Scientific ALPS serial heat sealers (300 / 3000 / 5000).

Every model speaks the same ASCII-over-RS-232 core: a command is written with a CR terminator, the device echoes the command in front of its reply, and the echo is stripped before the reply is parsed (e.g. A160 -> A160ok -> ok; ? -> ?3f -> 3f). This base implements the transport, the status/error polling state machine, and the temperature and time commands. Subclasses supply the model-specific status flags, error table, human-readable name, setup, seal, and any extra commands.

Shared commands (ASCII, CR-terminated):

? read status byte, two hex digits (see the model’s STATUS enum) E read error code, decimal digits (see the model’s ERRORS table) S seal the plate; replies ok or err A{t:03d} set sealing temperature, degrees C (5..199) B{t:02d} set sealing time, deciseconds (05..99 = 0.5..9.9 s) C read sealing temperature setpoint, three digits D read sealing time setpoint, two digits (deciseconds) F read current heater temperature, three digits

Serial settings: 9600 baud, 8 data bits, no parity, 1 stop bit, no handshake, CR (\r) terminator.

Attributes

Methods

__init__(port[, timeout, settle_time, ...])

request_error_code()

Read the current error code (E).

request_sealing_temperature()

Read the sealing temperature setpoint in degrees C (C).

request_sealing_time()

Read the sealing time setpoint in seconds (D).

request_status()

Read the status byte (?).

request_temperature()

Read the current heater temperature in degrees C (F).

seal(temperature, duration)

Seal a plate at the given sealing temperature (C) and duration (s).

send_command(command)

Send a command and return the reply with the echoed command stripped.

set_sealing_time(seconds)

Set the sealing time in seconds (B, 0.5..9.9).

set_temperature(temperature)

Set the sealing temperature in degrees C (A, 5..199).

setup()

Open the connection and bring the sealer to a ready, pre-heated state.

stop()

Close the port.

wait_for_idle([ignore_mask])

Wait until the device is Ready, tolerating the bits set in ignore_mask.

wait_for_sealing_temperature([timeout])

Block until the heater reaches the setpoint (NotAtSealTemperature clears).

Parameters: