Skip to content

Deck (inherits from SlotSet)

Description

Represents the laboratory deck in the Jubilee system. A deck is composed of multiple slots where labware can be loaded, each with specified positions and properties. The deck configuration (slots, offsets, bed type) is loaded from a .json definition file.

Constructor

python
Deck(deck_filename: str, path: str = default_path)

Loads a deck configuration from a JSON file and initializes slots and properties.

Properties

PropertyTypeDescription
bedTypestrType of bed arrangement (e.g., 'fixed', 'removable').
totalslotsintTotal number of slots available on the deck.
slotTypestrType of slot arrangement (e.g., "SLAS").
offsetFromstrCorner of the slot used as reference for labware placement.
deck_materialDict[str, str]Materials used for the deck and any applied mask.
safe_zfloatClearance height for safe movement over the deck.

Methods

MethodReturnsDescription
load_labware(labware_filename: str, slot: int, path: str = default_path, order: str = "rows")LabwareLoads a labware definition, assigns it to a slot, and updates slot's offset and safe_z height.
_get_slots()Dict[str, Slot]Internal method to create Slot objects based on the loaded deck configuration.

Short Example

python
# Create a Deck object from a configuration file
deck = Deck("standard_deck")

# Load a 96-well plate into slot 0
labware = deck.load_labware("falcon_96_wellplate_360ul_flat", slot=0)

# Check safe_z clearance height
print(deck.safe_z)

Important Notes

  • Deck configuration files must be valid .json files located under the specified path.
  • Loading labware into a slot will automatically adjust the safe_z height if the new labware's z-dimension is higher.
  • When loading labware, the system applies the slot’s (x, y) offset to the labware’s well coordinates.
  • The slot key for accessing slots can be either a string or an integer, thanks to SlotSet.__getitem__.

Pre-release documentation · Internal research use only · Not authorized for redistribution.