Refine biomek

This commit is contained in:
Guangxin Zhang
2025-06-08 20:29:39 +08:00
parent 12c17ec26e
commit 3f4d247127
4 changed files with 36 additions and 3791 deletions

View File

@@ -9,7 +9,7 @@ from pylabrobot.resources import (
Container, Container,
Coordinate, Coordinate,
) )
import copy
from unilabos.ros.nodes.resource_tracker import DeviceNodeResourceTracker # type: ignore from unilabos.ros.nodes.resource_tracker import DeviceNodeResourceTracker # type: ignore
from .liquid_handler_abstract import LiquidHandlerAbstract from .liquid_handler_abstract import LiquidHandlerAbstract
@@ -570,7 +570,7 @@ class LiquidHandlerBiomek:
if __name__ == "__main__": if __name__ == "__main__":
print("=== Biomek完整流程测试 ===") print("=== Biomek完整流程测试 ===")
print("包含: 仪器设置 + 完整实验步骤") print("包含: 仪器设置 + 完整实验步骤")

View File

@@ -15,6 +15,7 @@ from typing import List, Sequence, Optional, Union, Literal
import json import json
import pathlib import pathlib
from typing import Sequence, Optional, List, Union, Literal from typing import Sequence, Optional, List, Union, Literal
import copy
@@ -351,8 +352,9 @@ class LiquidHandlerBiomek:
""" """
items = [] items = []
asp_params = self.aspirate_techniques.get(aspirate_techniques, {}) asp_params = copy.deepcopy(self.aspirate_techniques[aspirate_techniques])
dis_params = self.dispense_techniques.get(dispense_techniques, {}) dis_params = copy.deepcopy(self.dispense_techniques[dispense_techniques])
asp_params['Position'] = source asp_params['Position'] = source
dis_params['Position'] = target dis_params['Position'] = target
@@ -403,7 +405,9 @@ class LiquidHandlerBiomek:
transfer_params["Solvent"] = 'Water' transfer_params["Solvent"] = 'Water'
transfer_params["TipLocation"] = tip_rack transfer_params["TipLocation"] = tip_rack
tmp={'transfer': transfer_params} tmp={'transfer': transfer_params}
self.temp_protocol["steps"].append(tmp) self.temp_protocol["steps"].append(tmp)
return return
@@ -968,6 +972,7 @@ if __name__ == "__main__":
print(f"步骤 {step['step_number']}: {description}") print(f"步骤 {step['step_number']}: {description}")
if operation == 'transfer': if operation == 'transfer':
handler.transfer_biomek( handler.transfer_biomek(
source=parameters['source'], source=parameters['source'],
target=parameters['target'], target=parameters['target'],

File diff suppressed because it is too large Load Diff

View File

@@ -1326,9 +1326,9 @@
"Pod": "Pod1", "Pod": "Pod1",
"items": [ "items": [
{ {
"Position": "P12", "Position": "P1",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "50",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -1451,9 +1451,9 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P11",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "50",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -1626,9 +1626,9 @@
"Pod": "Pod1", "Pod": "Pod1",
"items": [ "items": [
{ {
"Position": "P12", "Position": "P2",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "100",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -1751,9 +1751,9 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P11",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "100",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -1957,7 +1957,7 @@
{ {
"Position": "P12", "Position": "P12",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "150",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -2080,9 +2080,9 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P22",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "150",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -2255,9 +2255,9 @@
"Pod": "Pod1", "Pod": "Pod1",
"items": [ "items": [
{ {
"Position": "P12", "Position": "P3",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -2380,9 +2380,9 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P12",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -2595,7 +2595,7 @@
{ {
"Position": "P12", "Position": "P12",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -2718,9 +2718,9 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P22",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -2893,9 +2893,9 @@
"Pod": "Pod1", "Pod": "Pod1",
"items": [ "items": [
{ {
"Position": "P12", "Position": "P3",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -3018,9 +3018,9 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P12",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -3233,7 +3233,7 @@
{ {
"Position": "P12", "Position": "P12",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -3356,9 +3356,9 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P22",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "400",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",
"WellsX": 12, "WellsX": 12,
"LabwareClass": "Matrix96_750uL", "LabwareClass": "Matrix96_750uL",
@@ -3548,7 +3548,7 @@
"Pod": "Pod1", "Pod": "Pod1",
"items": [ "items": [
{ {
"Position": "P12", "Position": "P4",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "40",
"liquidtype": "Well Contents", "liquidtype": "Well Contents",
@@ -3673,7 +3673,7 @@
"UseExpression": false "UseExpression": false
}, },
{ {
"Position": "P14", "Position": "P13",
"Height": -2.0, "Height": -2.0,
"Volume": "40", "Volume": "40",
"liquidtype": "Tip Contents", "liquidtype": "Tip Contents",