diff --git a/unilabos/compile/__init__.py b/unilabos/compile/__init__.py index 0b56a5d..98ea8a2 100644 --- a/unilabos/compile/__init__.py +++ b/unilabos/compile/__init__.py @@ -25,26 +25,25 @@ from .wash_solid_protocol import generate_wash_solid_protocol # Define a dictionary of protocol generators. action_protocol_generators = { - PumpTransferProtocol: generate_pump_protocol_with_rinsing, - CleanProtocol: generate_clean_protocol, - SeparateProtocol: generate_separate_protocol, - EvaporateProtocol: generate_evaporate_protocol, - EvacuateAndRefillProtocol: generate_evacuateandrefill_protocol, + AddProtocol: generate_add_protocol, AGVTransferProtocol: generate_agv_transfer_protocol, CentrifugeProtocol: generate_centrifuge_protocol, - AddProtocol: generate_add_protocol, + CleanProtocol: generate_clean_protocol, + CleanVesselProtocol: generate_clean_vessel_protocol, + DissolveProtocol: generate_dissolve_protocol, + EvacuateAndRefillProtocol: generate_evacuateandrefill_protocol, + EvaporateProtocol: generate_evaporate_protocol, FilterProtocol: generate_filter_protocol, + FilterThroughProtocol: generate_filter_through_protocol, HeatChillProtocol: generate_heat_chill_protocol, HeatChillStartProtocol: generate_heat_chill_start_protocol, HeatChillStopProtocol: generate_heat_chill_stop_protocol, - # HeatChillToTempProtocol: generate_heat_chill_to_temp_protocol, # **移除这行** - StirProtocol: generate_stir_protocol, + PumpTransferProtocol: generate_pump_protocol_with_rinsing, + RunColumnProtocol: generate_run_column_protocol, + SeparateProtocol: generate_separate_protocol, StartStirProtocol: generate_start_stir_protocol, + StirProtocol: generate_stir_protocol, StopStirProtocol: generate_stop_stir_protocol, TransferProtocol: generate_transfer_protocol, - CleanVesselProtocol: generate_clean_vessel_protocol, - DissolveProtocol: generate_dissolve_protocol, - FilterThroughProtocol: generate_filter_through_protocol, - RunColumnProtocol: generate_run_column_protocol, WashSolidProtocol: generate_wash_solid_protocol, -} +} \ No newline at end of file diff --git a/unilabos/registry/devices/work_station.yaml b/unilabos/registry/devices/work_station.yaml index d3a3733..240340b 100644 --- a/unilabos/registry/devices/work_station.yaml +++ b/unilabos/registry/devices/work_station.yaml @@ -3,5 +3,248 @@ workstation: class: module: unilabos.ros.nodes.presets.protocol_node:ROS2ProtocolNode type: ros2 - schema: - properties: {} + action_value_mappings: + AddProtocol: + type: Add + goal: + vessel: vessel + reagent: reagent + volume: volume + mass: mass + amount: amount + time: time + stir: stir + stir_speed: stir_speed + viscous: viscous + purpose: purpose + feedback: {} + result: {} + + AGVTransferProtocol: + type: AGVTransfer + goal: + from_repo: from_repo + from_repo_position: from_repo_position + to_repo: to_repo + to_repo_position: to_repo_position + feedback: {} + result: {} + + CentrifugeProtocol: + type: Centrifuge + goal: + vessel: vessel + speed: speed + time: time + temp: temp + feedback: {} + result: {} + + CleanProtocol: + type: Clean + goal: + vessel: vessel + solvent: solvent + volume: volume + temp: temp + repeats: repeats + feedback: {} + result: {} + + CleanVesselProtocol: + type: CleanVessel + goal: + vessel: vessel + solvent: solvent + volume: volume + temp: temp + repeats: repeats + feedback: {} + result: {} + + DissolveProtocol: + type: Dissolve + goal: + vessel: vessel + solvent: solvent + volume: volume + amount: amount + temp: temp + time: time + stir_speed: stir_speed + feedback: {} + result: {} + + EvacuateAndRefillProtocol: + type: EvacuateAndRefill + goal: + vessel: vessel + gas: gas + repeats: repeats + feedback: {} + result: {} + + EvaporateProtocol: + type: Evaporate + goal: + vessel: vessel + pressure: pressure + temp: temp + time: time + stir_speed: stir_speed + feedback: {} + result: {} + + FilterProtocol: + type: Filter + goal: + vessel: vessel + filtrate_vessel: filtrate_vessel + stir: stir + stir_speed: stir_speed + temp: temp + continue_heatchill: continue_heatchill + volume: volume + feedback: {} + result: {} + + FilterThroughProtocol: + type: FilterThrough + goal: + from_vessel: from_vessel + to_vessel: to_vessel + filter_through: filter_through + eluting_solvent: eluting_solvent + eluting_volume: eluting_volume + eluting_repeats: eluting_repeats + residence_time: residence_time + feedback: {} + result: {} + + HeatChillProtocol: + type: HeatChill + goal: + vessel: vessel + temp: temp + time: time + stir: stir + stir_speed: stir_speed + purpose: purpose + feedback: {} + result: {} + + HeatChillStartProtocol: + type: HeatChillStart + goal: + vessel: vessel + temp: temp + purpose: purpose + feedback: {} + result: {} + + HeatChillStopProtocol: + type: HeatChillStop + goal: + vessel: vessel + feedback: {} + result: {} + + PumpTransferProtocol: + type: PumpTransfer + goal: + from_vessel: from_vessel + to_vessel: to_vessel + volume: volume + amount: amount + time: time + viscous: viscous + rinsing_solvent: rinsing_solvent + rinsing_volume: rinsing_volume + rinsing_repeats: rinsing_repeats + solid: solid + feedback: {} + result: {} + + RunColumnProtocol: + type: RunColumn + goal: + from_vessel: from_vessel + to_vessel: to_vessel + column: column + feedback: {} + result: {} + + SeparateProtocol: + type: Separate + goal: + purpose: purpose + product_phase: product_phase + from_vessel: from_vessel + separation_vessel: separation_vessel + to_vessel: to_vessel + waste_phase_to_vessel: waste_phase_to_vessel + solvent: solvent + solvent_volume: solvent_volume + through: through + repeats: repeats + stir_time: stir_time + stir_speed: stir_speed + settling_time: settling_time + feedback: {} + result: {} + + StartStirProtocol: + type: StartStir + goal: + vessel: vessel + stir_speed: stir_speed + purpose: purpose + feedback: {} + result: {} + + StirProtocol: + type: Stir + goal: + stir_time: stir_time + stir_speed: stir_speed + settling_time: settling_time + feedback: {} + result: {} + + StopStirProtocol: + type: StopStir + goal: + vessel: vessel + feedback: {} + result: {} + + TransferProtocol: + type: Transfer + goal: + from_vessel: from_vessel + to_vessel: to_vessel + volume: volume + amount: amount + time: time + viscous: viscous + rinsing_solvent: rinsing_solvent + rinsing_volume: rinsing_volume + rinsing_repeats: rinsing_repeats + solid: solid + feedback: {} + result: {} + + WashSolidProtocol: + type: WashSolid + goal: + vessel: vessel + solvent: solvent + volume: volume + filtrate_vessel: filtrate_vessel + temp: temp + stir: stir + stir_speed: stir_speed + time: time + repeats: repeats + feedback: {} + result: {}