reaction_station.bioyond: category: - work_station - reaction_station_bioyond class: action_value_mappings: drip_back: feedback: {} goal: assign_material_name: assign_material_name temperature: temperature time: time titration_type: titration_type torque_variation: torque_variation volume: volume goal_default: assign_material_name: '' temperature: '' time: '' titration_type: '' torque_variation: '' volume: '' handles: {} result: {} schema: description: 滴回去 properties: feedback: {} goal: properties: assign_material_name: description: 物料名称(不能为空) type: string temperature: description: 温度设定(°C) type: string time: description: 观察时间(分钟) type: string titration_type: description: 是否滴定(1=否, 2=是) type: string torque_variation: description: 是否观察 (1=否, 2=是) type: string volume: description: 分液公式(μL) type: string required: - volume - assign_material_name - time - torque_variation - titration_type - temperature type: object result: {} required: - goal title: drip_back参数 type: object type: UniLabJsonCommand extract_actuals_from_batch_reports: feedback: {} goal: batch_reports_result: batch_reports_result goal_default: batch_reports_result: '' handles: input: - data_key: batch_reports_result data_source: handle data_type: string handler_key: BATCH_REPORTS_RESULT io_type: source label: Batch Order Completion Reports output: - data_key: return_info data_source: executor data_type: string handler_key: ACTUALS_EXTRACTED io_type: sink label: Extracted Actuals result: return_info: return_info schema: description: 从批量任务完成报告中提取每个订单的实际加料量,输出extracted列表。 properties: feedback: {} goal: properties: batch_reports_result: description: 批量任务完成信息JSON字符串或对象,包含reports数组 type: string required: - batch_reports_result type: object result: properties: return_info: description: JSON字符串,包含actuals数组,每项含order_code, order_id, actualTargetWeigh, actualVolume type: string required: - return_info title: extract_actuals_from_batch_reports结果 type: object required: - goal title: extract_actuals_from_batch_reports参数 type: object type: UniLabJsonCommand liquid_feeding_beaker: feedback: {} goal: assign_material_name: assign_material_name temperature: temperature time: time titration_type: titration_type torque_variation: torque_variation volume: volume goal_default: assign_material_name: '' temperature: '' time: '' titration_type: '' torque_variation: '' volume: '' handles: {} result: {} schema: description: 液体进料烧杯 properties: feedback: {} goal: properties: assign_material_name: description: 物料名称 type: string temperature: description: 温度设定(°C) type: string time: description: 观察时间(分钟) type: string titration_type: description: 是否滴定(1=否, 2=是) type: string torque_variation: description: 是否观察 (1=否, 2=是) type: string volume: description: 分液公式(μL) type: string required: - volume - assign_material_name - time - torque_variation - titration_type - temperature type: object result: {} required: - goal title: liquid_feeding_beaker参数 type: object type: UniLabJsonCommand liquid_feeding_solvents: feedback: {} goal: assign_material_name: assign_material_name solvents: solvents temperature: temperature time: time titration_type: titration_type torque_variation: torque_variation volume: volume goal_default: assign_material_name: '' solvents: '' temperature: '25.00' time: '360' titration_type: '1' torque_variation: '2' volume: '' handles: input: - data_key: solvents data_source: handle data_type: object handler_key: solvents io_type: source label: Solvents Data From Calculation Node result: {} schema: description: 液体投料-溶剂。可以直接提供volume(μL),或通过solvents对象自动从additional_solvent(mL)计算volume。 properties: feedback: {} goal: properties: assign_material_name: description: 物料名称 type: string solvents: description: '溶剂信息对象(可选),包含: additional_solvent(溶剂体积mL), total_liquid_volume(总液体体积mL)。如果提供,将自动计算volume' type: string temperature: default: '25.00' description: 温度设定(°C),默认25.00 type: string time: default: '360' description: 观察时间(分钟),默认360 type: string titration_type: default: '1' description: 是否滴定(1=否, 2=是),默认1 type: string torque_variation: default: '2' description: 是否观察 (1=否, 2=是),默认2 type: string volume: description: 分液量(μL)。可直接提供,或通过solvents参数自动计算 type: string required: - assign_material_name type: object result: {} required: - goal title: liquid_feeding_solvents参数 type: object type: UniLabJsonCommand liquid_feeding_titration: feedback: {} goal: assign_material_name: assign_material_name extracted_actuals: extracted_actuals feeding_order_data: feeding_order_data temperature: temperature time: time titration_type: titration_type torque_variation: torque_variation volume_formula: volume_formula x_value: x_value goal_default: assign_material_name: '' extracted_actuals: '' feeding_order_data: '' temperature: '25.00' time: '90' titration_type: '2' torque_variation: '2' volume_formula: '' x_value: '' handles: input: - data_key: extracted_actuals data_source: handle data_type: string handler_key: ACTUALS_EXTRACTED io_type: source label: Extracted Actuals From Reports - data_key: feeding_order_data data_source: handle data_type: object handler_key: feeding_order io_type: source label: Feeding Order Data From Calculation Node result: {} schema: description: 液体进料(滴定)。支持两种模式:1)直接提供volume_formula;2)自动计算-提供x_value+feeding_order_data+extracted_actuals,系统自动生成公式"1000*(m二酐-x)*V二酐滴定/m二酐滴定" properties: feedback: {} goal: properties: assign_material_name: description: 物料名称 type: string extracted_actuals: description: 从报告提取的实际加料量JSON字符串,包含actualTargetWeigh(m二酐滴定)和actualVolume(V二酐滴定) type: string feeding_order_data: description: 'feeding_order JSON对象,用于获取m二酐值(type为main_anhydride的amount)。示例: {"feeding_order": [{"type": "main_anhydride", "amount": 1.915}]}' type: string temperature: default: '25.00' description: 温度设定(°C),默认25.00 type: string time: default: '90' description: 观察时间(分钟),默认90 type: string titration_type: default: '2' description: 是否滴定(1=否, 2=是),默认2 type: string torque_variation: default: '2' description: 是否观察 (1=否, 2=是),默认2 type: string volume_formula: description: 分液公式(μL)。可直接提供固定公式,或留空由系统根据x_value、feeding_order_data、extracted_actuals自动生成 type: string x_value: description: 公式中的x值,手工输入,格式为"{{1-2-3}}"(包含双花括号)。用于自动公式计算 type: string required: - assign_material_name type: object result: {} required: - goal title: liquid_feeding_titration参数 type: object type: UniLabJsonCommand liquid_feeding_vials_non_titration: feedback: {} goal: assign_material_name: assign_material_name temperature: temperature time: time titration_type: titration_type torque_variation: torque_variation volume_formula: volume_formula goal_default: assign_material_name: '' temperature: '' time: '' titration_type: '' torque_variation: '' volume_formula: '' handles: {} result: {} schema: description: 液体进料小瓶(非滴定) properties: feedback: {} goal: properties: assign_material_name: description: 物料名称 type: string temperature: description: 温度设定(°C) type: string time: description: 观察时间(分钟) type: string titration_type: description: 是否滴定(1=否, 2=是) type: string torque_variation: description: 是否观察 (1=否, 2=是) type: string volume_formula: description: 分液公式(μL) type: string required: - volume_formula - assign_material_name - time - torque_variation - titration_type - temperature type: object result: {} required: - goal title: liquid_feeding_vials_non_titration参数 type: object type: UniLabJsonCommand process_and_execute_workflow: feedback: {} goal: task_name: task_name workflow_name: workflow_name goal_default: task_name: '' workflow_name: '' handles: {} result: {} schema: description: 处理并执行工作流 properties: feedback: {} goal: properties: task_name: description: 任务名称 type: string workflow_name: description: 工作流名称 type: string required: - workflow_name - task_name type: object result: {} required: - goal title: process_and_execute_workflow参数 type: object type: UniLabJsonCommand reactor_taken_in: feedback: {} goal: assign_material_name: assign_material_name cutoff: cutoff temperature: temperature goal_default: assign_material_name: '' cutoff: '' temperature: '' handles: {} result: {} schema: description: 反应器放入 - 将反应器放入工作站,配置物料名称、粘度上限和温度参数 properties: feedback: {} goal: properties: assign_material_name: description: 物料名称 type: string cutoff: description: 粘度上限 type: string temperature: description: 温度设定(°C) type: string required: - cutoff - temperature - assign_material_name type: object result: {} required: - goal title: reactor_taken_in参数 type: object type: UniLabJsonCommand reactor_taken_out: feedback: {} goal: {} goal_default: {} handles: {} result: {} schema: description: 反应器取出 - 从工作站中取出反应器,无需参数的简单操作 properties: feedback: {} goal: properties: {} required: [] type: object result: properties: code: description: 操作结果代码(1表示成功,0表示失败) type: integer return_info: description: 操作结果详细信息 type: string type: object required: - goal title: reactor_taken_out参数 type: object type: UniLabJsonCommand solid_feeding_vials: feedback: {} goal: assign_material_name: assign_material_name material_id: material_id temperature: temperature time: time torque_variation: torque_variation goal_default: assign_material_name: '' material_id: '' temperature: '' time: '' torque_variation: '' handles: {} result: {} schema: description: 固体进料小瓶 - 通过小瓶向反应器中添加固体物料,支持多种粉末类型(盐、面粉、BTDA) properties: feedback: {} goal: properties: assign_material_name: description: 物料名称(用于获取试剂瓶位ID) type: string material_id: description: 粉末类型ID,1=盐(21分钟),2=面粉(27分钟),3=BTDA(38分钟) type: string temperature: description: 温度设定(°C) type: string time: description: 观察时间(分钟) type: string torque_variation: description: 是否观察 (1=否, 2=是) type: string required: - assign_material_name - material_id - time - torque_variation - temperature type: object result: {} required: - goal title: solid_feeding_vials参数 type: object type: UniLabJsonCommand module: unilabos.devices.workstation.bioyond_studio.reaction_station:BioyondReactionStation protocol_type: [] status_types: all_workflows: dict average_viscosity: float bioyond_status: dict force: float in_temperature: float out_temperature: float pt100_temperature: float sensor_average_temperature: float setting_temperature: float speed: float target_temperature: float viscosity: float workstation_status: dict type: python config_info: [] description: Bioyond反应站 handles: [] icon: reaction_station.webp init_param_schema: config: properties: config: type: object deck: type: object required: [] type: object data: properties: all_workflows: type: object bioyond_status: type: object workstation_status: type: object required: - bioyond_status - all_workflows - workstation_status type: object version: 1.0.0 reaction_station.reactor: category: - reactor - reaction_station_bioyond class: action_value_mappings: {} module: unilabos.devices.workstation.bioyond_studio.reaction_station:BioyondReactor status_types: average_viscosity: float force: float in_temperature: float out_temperature: float pt100_temperature: float sensor_average_temperature: float setting_temperature: float speed: float target_temperature: float viscosity: float type: python config_info: [] description: 反应站子设备-反应器 handles: [] icon: reaction_station.webp init_param_schema: config: properties: config: type: object required: [] type: object data: properties: average_viscosity: type: number force: type: number in_temperature: type: number out_temperature: type: number pt100_temperature: type: number sensor_average_temperature: type: number setting_temperature: type: number speed: type: number target_temperature: type: number viscosity: type: number required: [] type: object version: 1.0.0