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:
ABCShared 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, ...])Read the current error code (
E).Read the sealing temperature setpoint in degrees C (
C).Read the sealing time setpoint in seconds (
D).Read the status byte (
?).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).