[ PROMPT_NODE_27116 ]
resources
[ SKILL_DOCUMENTATION ]
# PyLabRobot 中的资源管理
## 概述
PyLabRobot 中的资源代表了实验方案中使用的实验室设备、耗材或组件。资源系统提供了一种层级结构,用于管理板、吸头架、槽、管、载架及其他耗材,并支持精确的空间定位和状态跟踪。
## 资源基础
### 什么是资源?
资源代表:
- 一件耗材(板、吸头架、槽、管)
- 设备(液体处理工作站、酶标仪)
- 耗材的一部分(孔、吸头)
- 耗材的容器(工作台、载架)
所有资源都继承自基础 `Resource` 类,并形成具有父子关系的树状结构(树形结构)。
### 资源属性
每个资源都需要:
- **name**: 资源的唯一标识符
- **size_x, size_y, size_z**: 以毫米为单位的尺寸(长方体表示)
- **location**: 相对于父级原点的坐标(可选,分配时设置)
python
from pylabrobot.resources import Resource
# 创建基础资源
resource = Resource(
name="my_resource",
size_x=127.76, # mm
size_y=85.48, # mm
size_z=14.5 # mm
)
## 资源类型
### 板
用于盛放液体的微孔板:
python
from pylabrobot.resources import (
Cos_96_DW_1mL, # 96孔板,1mL深孔
Cos_96_DW_500ul, # 96孔板,500µL
Plate_384_Sq, # 384孔方孔板
Cos_96_PCR # 96孔PCR板
)
# 创建板
plate = Cos_96_DW_1mL(name="sample_plate")
# 访问孔
well_a1 = plate["A1"] # 单个孔
row_a = plate["A1:H1"] # 整行 (A1-H1)
col_1 = plate["A1:A12"] # 整列 (A1-A12)
range_wells = plate["A1:C3"] # 孔范围
all_wells = plate.children # 所有孔列表
### 吸头架
盛放移液吸头的容器:
python
from pylabrobot.resources import (
TIP_CAR_480_A00, # 96个标准吸头
HTF_L, # Hamilton 滤芯吸头
TipRack # 通用吸头架
)
# 创建吸头架
tip_rack = TIP_CAR_480_A00(name="tips")
# 访问吸头
tip_a1 = tip_rack["A1"] # 单个吸头位置
tips_row = tip_rack["A1:H1"] # 一行吸头
tips_col = tip_rack["A1:A12"] # 一列吸头
# 检查吸头是否存在(需要启用吸头跟踪)
from pylabrobot.resources import set_tip_tracking
set_tip_tracking(True)
has_tip = tip_rack["A1"].tracker.has_tip