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.