diff --git a/unilabos/app/ws_client.py b/unilabos/app/ws_client.py index a4fb6433..eed32e1b 100644 --- a/unilabos/app/ws_client.py +++ b/unilabos/app/ws_client.py @@ -1369,6 +1369,10 @@ class WebSocketClient(BaseCommunicationClient): self.message_processor = MessageProcessor(self.websocket_url, self.send_queue, self.device_manager) self.queue_processor = QueueProcessor(self.device_manager, self.message_processor) + # running状态debounce缓存: {job_id: (last_send_timestamp, last_feedback_data)} + self._job_running_last_sent: Dict[str, tuple] = {} + self._job_running_debounce_interval: float = 10.0 # 秒 + # 设置相互引用 self.message_processor.set_queue_processor(self.queue_processor) self.message_processor.set_websocket_client(self) @@ -1468,22 +1472,32 @@ class WebSocketClient(BaseCommunicationClient): logger.debug(f"[WebSocketClient] Not connected, cannot publish job status for job_id: {item.job_id}") return + job_log = format_job_log(item.job_id, item.task_id, item.device_id, item.action_name) + # 拦截最终结果状态,与原版本逻辑一致 if status in ["success", "failed"]: + self._job_running_last_sent.pop(item.job_id, None) + host_node = HostNode.get_instance(0) if host_node: - # 从HostNode的device_action_status中移除job_id try: host_node._device_action_status[item.device_action_key].job_ids.pop(item.job_id, None) except (KeyError, AttributeError): logger.warning(f"[WebSocketClient] Failed to remove job {item.job_id} from HostNode status") - # logger.debug(f"[WebSocketClient] Intercepting final status for job_id: {item.job_id} - {status}") - - # 通知队列处理器job完成(包括timeout的job) self.queue_processor.handle_job_completed(item.job_id, status) - # 发送job状态消息 + # running状态按job_id做debounce,内容变化时仍然上报 + if status == "running": + now = time.time() + cached = self._job_running_last_sent.get(item.job_id) + if cached is not None: + last_ts, last_data = cached + if now - last_ts < self._job_running_debounce_interval and last_data == feedback_data: + logger.trace(f"[WebSocketClient] Job status debounced (skip): {job_log} - {status}") + return + self._job_running_last_sent[item.job_id] = (now, feedback_data) + message = { "action": "job_status", "data": { @@ -1499,7 +1513,6 @@ class WebSocketClient(BaseCommunicationClient): } self.message_processor.send_message(message) - job_log = format_job_log(item.job_id, item.task_id, item.device_id, item.action_name) logger.trace(f"[WebSocketClient] Job status published: {job_log} - {status}") def send_ping(self, ping_id: str, timestamp: float) -> None: diff --git a/unilabos/devices/liquid_handling/prcxi/prcxi.py b/unilabos/devices/liquid_handling/prcxi/prcxi.py index de657749..bcce1b26 100644 --- a/unilabos/devices/liquid_handling/prcxi/prcxi.py +++ b/unilabos/devices/liquid_handling/prcxi/prcxi.py @@ -797,10 +797,9 @@ class PRCXI9300Handler(LiquidHandlerAbstract): self.x_offset = x_offset self.y_offset = y_offset self.xy_coupling = xy_coupling - self.left_2_claw = Coordinate(-130.2, 34, -134) + self.left_2_claw = Coordinate(-130.2, 34, -74) self.right_2_left = Coordinate(22,-1, 11) - plate_positions = [] - + self.tip_height = 0 tablets_info = [] if is_9320 is None: @@ -989,12 +988,14 @@ class PRCXI9300Handler(LiquidHandlerAbstract): def plr_pos_to_prcxi(self, resource: Resource, offset: Coordinate = Coordinate(0, 0, 0)): z_pos = 'c' - if isinstance(resource, Tip): - z_pos = 'b' + tip_height = self.tip_height + if isinstance(resource, TipSpot): + z_pos = 't' + tip_height = 0 resource_pos = resource.get_absolute_location(x="c",y="c",z=z_pos) x = resource_pos.x y = resource_pos.y - z = resource_pos.z + z = resource_pos.z + tip_height # 如果z等于0,则递归resource.parent的高度并向z加,使用get_size_z方法 parent = resource.parent @@ -1157,6 +1158,49 @@ class PRCXI9300Handler(LiquidHandlerAbstract): _dis_list = dis_vols if isinstance(dis_vols, list) else [dis_vols] if all(v <= 10.0 for v in _asp_list) and all(v <= 10.0 for v in _dis_list): use_channels = [1] + mix_vol = max(min(mix_vol,10),0) + sources = await self._resolve_to_plr_resources(sources) + targets = await self._resolve_to_plr_resources(targets) + tip_racks = list(await self._resolve_to_plr_resources(tip_racks)) + change_slots = [] + change_slots.append(sources[0].parent) + change_slots.append(targets[0].parent) + if isinstance(tip_racks[0], TipRack): + tip_rack = tip_racks[0] + else: + tip_rack = tip_racks[0].parent + + change_slots.append(tip_rack) + + self.tip_height = tip_rack.children[0].get_size_z() + + change_slots_positions = [] + for slot in change_slots: + + number = self._get_slot_number(slot) + + pip_pos = self.plr_pos_to_prcxi(slot.children[0], self.left_2_claw) + half_x = slot.children[0].get_size_x() / 2 * abs(1 + self.x_increase) + z_wall = slot.children[0].get_size_z() + + change_slots_positions.append({ + "Number": number, + "XPos": pip_pos.x, + "YPos": pip_pos.y, + "ZPos": pip_pos.z, + "X_Left": half_x, + "X_Right": half_x, + "ZAgainstTheWall": pip_pos.z - z_wall, + "X2Pos": pip_pos.x + self.right_2_left.x, + "Y2Pos": pip_pos.y + self.right_2_left.y, + "Z2Pos": pip_pos.z + self.right_2_left.z, + "X2_Left": half_x, + "X2_Right": half_x, + "ZAgainstTheWall2": pip_pos.z - z_wall, + }) + if change_slots_positions: + self._unilabos_backend.api_client.update_pipetting_position(self._unilabos_backend.matrix_id, change_slots_positions) + res = await super().transfer_liquid( sources, @@ -1708,6 +1752,7 @@ class PRCXI9300Backend(LiquidHandlerBackend): assert mix_time > 0 step = self.api_client.Blending( + axis=axis, dosage=mix_vol, plate_no=PlateNo, is_whole_plate=False, diff --git a/unilabos/devices/liquid_handling/prcxi/prcxi_labware.py b/unilabos/devices/liquid_handling/prcxi/prcxi_labware.py index 74579b77..19fb1ba1 100644 --- a/unilabos/devices/liquid_handling/prcxi/prcxi_labware.py +++ b/unilabos/devices/liquid_handling/prcxi/prcxi_labware.py @@ -418,7 +418,7 @@ def PRCXI_10ul_eTips(name: str) -> PRCXI9300TipRack: item_dy=9.0, size_x=7.5, size_y=7.5, - size_z=0.0, + size_z=52.0, make_tip=lambda: _make_tip_helper(volume=10.0, length=52.0, depth=8.2) ) ) @@ -445,7 +445,7 @@ def PRCXI_300ul_Tips(name: str) -> PRCXI9300TipRack: item_dy=9.0, size_x=7.5, size_y=7.5, - size_z=0.0, + size_z=60.0, make_tip=lambda: _make_tip_helper(volume=300.0, length=60.0, depth=8.2) ) ) @@ -497,7 +497,7 @@ def PRCXI_10uL_Tips(name: str) -> PRCXI9300TipRack: item_dy=9.0, size_x=7.5, size_y=7.5, - size_z=0.0, + size_z=52.0, make_tip=lambda: _make_tip_helper(volume=10.0, length=52.0, depth=8.2) ) ) @@ -549,7 +549,7 @@ def PRCXI_200uL_Tips(name: str) -> PRCXI9300TipRack: item_dy=9.0, size_x=7.0, size_y=7.0, - size_z=0.0, + size_z=60.0, make_tip=lambda: _make_tip_helper(volume=300.0, length=60.0, depth=51.0) ) ) @@ -575,7 +575,7 @@ def PRCXI_50uL_tips(name: str) -> PRCXI9300TipRack: item_dy=9.0, size_x=7.5, size_y=7.5, - size_z=0.0, + size_z=53.0, make_tip=lambda: _make_tip_helper(volume=50.0, length=53.0, depth=8.2) ) ) diff --git a/unilabos/registry/devices/liquid_handler.yaml b/unilabos/registry/devices/liquid_handler.yaml index 145ee47f..d7a82e35 100644 --- a/unilabos/registry/devices/liquid_handler.yaml +++ b/unilabos/registry/devices/liquid_handler.yaml @@ -8,6 +8,7 @@ liquid_handler: goal: asp_vols: asp_vols blow_out_air_volume: blow_out_air_volume + delays: delays dis_vols: dis_vols flow_rates: flow_rates is_96_well: is_96_well @@ -23,84 +24,38 @@ liquid_handler: targets: targets use_channels: use_channels goal_default: - asp_vols: - - 0.0 - blow_out_air_volume: - - 0.0 - dis_vols: - - 0.0 - flow_rates: - - 0.0 + asp_vols: [] + blow_out_air_volume: [] + dis_vols: [] + flow_rates: [] is_96_well: false - liquid_height: - - 0.0 + liquid_height: [] mix_liquid_height: 0.0 mix_rate: 0 mix_time: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - reagent_sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + reagent_sources: [] spread: '' - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + targets: [] + use_channels: [] handles: {} placeholder_keys: reagent_sources: unilabos_resources targets: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerAdd_Feedback type: object goal: + additionalProperties: false properties: asp_vols: items: @@ -125,6 +80,8 @@ liquid_handler: type: number type: array mix_liquid_height: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: maximum: 2147483647 @@ -155,7 +112,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array reagent_sources: @@ -230,7 +186,6 @@ liquid_handler: - pose - config - data - title: reagent_sources type: object type: array spread: @@ -307,43 +262,21 @@ liquid_handler: - pose - config - data - title: targets type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - asp_vols - - dis_vols - - reagent_sources - - targets - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread - - is_96_well - - mix_time - - mix_vol - - mix_rate - - mix_liquid_height - - none_keys title: LiquidHandlerAdd_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerAdd_Result type: object required: @@ -362,41 +295,14 @@ liquid_handler: use_channels: use_channels vols: vols goal_default: - blow_out_air_volume: - - 0.0 - flow_rates: - - 0.0 - liquid_height: - - 0.0 - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - resources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + blow_out_air_volume: [] + flow_rates: [] + liquid_height: [] + offsets: [] + resources: [] spread: '' - use_channels: - - 0 - vols: - - 0.0 + use_channels: [] + vols: [] handles: {} result: name: name @@ -404,11 +310,11 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerAspirate_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: @@ -435,7 +341,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array resources: @@ -510,41 +415,27 @@ liquid_handler: - pose - config - data - title: resources type: object type: array spread: type: string use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: items: type: number type: array - required: - - resources - - vols - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread title: LiquidHandlerAspirate_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerAspirate_Result type: object required: @@ -574,7 +465,9 @@ liquid_handler: properties: none_keys: default: [] - type: string + items: + type: string + type: array protocol_author: type: string protocol_date: @@ -644,41 +537,19 @@ liquid_handler: goal: properties: tip_racks: - type: string + items: + type: object + type: array required: - tip_racks type: object - result: {} + result: + type: string required: - goal title: iter_tips参数 type: object type: UniLabJsonCommand - auto-post_init: - feedback: {} - goal: {} - goal_default: - ros_node: null - handles: {} - placeholder_keys: {} - result: {} - schema: - description: '' - properties: - feedback: {} - goal: - properties: - ros_node: - type: string - required: - - ros_node - type: object - result: {} - required: - - goal - title: post_init参数 - type: object - type: UniLabJsonCommand auto-set_group: feedback: {} goal: {} @@ -698,9 +569,13 @@ liquid_handler: group_name: type: string volumes: - type: string + items: + type: number + type: array wells: - type: string + items: + type: object + type: array required: - group_name - wells @@ -712,6 +587,259 @@ liquid_handler: title: set_group参数 type: object type: UniLabJsonCommand + auto-set_liquid: + feedback: {} + goal: {} + goal_default: + liquid_names: null + volumes: null + wells: null + handles: {} + placeholder_keys: {} + result: {} + schema: + description: set_liquid的参数schema + properties: + feedback: {} + goal: + properties: + liquid_names: + items: + type: string + type: array + volumes: + items: + type: number + type: array + wells: + items: + type: object + type: array + required: + - wells + - liquid_names + - volumes + type: object + result: + $defs: + ResourceDict: + properties: + class: + description: Resource class name + title: Class + type: string + config: + additionalProperties: true + description: Resource configuration + title: Config + type: object + data: + additionalProperties: true + description: 'Resource data, eg: container liquid data' + title: Data + type: object + description: + default: '' + description: Resource description + title: Description + type: string + extra: + additionalProperties: true + description: 'Extra data, eg: slot index' + title: Extra + type: object + icon: + default: '' + description: Resource icon + title: Icon + type: string + id: + description: Resource ID + title: Id + type: string + machine_name: + default: '' + description: Machine this resource belongs to + title: Machine Name + type: string + model: + additionalProperties: true + description: Resource model + title: Model + type: object + name: + description: Resource name + title: Name + type: string + parent: + anyOf: + - $ref: '#/$defs/ResourceDict' + - type: 'null' + default: null + description: Parent resource object + parent_uuid: + anyOf: + - type: string + - type: 'null' + default: null + description: Parent resource uuid + title: Parent Uuid + pose: + $ref: '#/$defs/ResourceDictPosition' + description: Resource position + schema: + additionalProperties: true + description: Resource schema + title: Schema + type: object + type: + anyOf: + - const: device + type: string + - type: string + description: Resource type + title: Type + uuid: + description: Resource UUID + title: Uuid + type: string + required: + - id + - uuid + - name + - type + - class + - config + - data + - extra + title: ResourceDict + type: object + ResourceDictPosition: + properties: + cross_section_type: + default: rectangle + description: Cross section type + enum: + - rectangle + - circle + - rounded_rectangle + title: Cross Section Type + type: string + extra: + anyOf: + - additionalProperties: true + type: object + - type: 'null' + default: null + description: Extra data + title: Extra + layout: + default: x-y + description: Resource layout + enum: + - 2d + - x-y + - z-y + - x-z + title: Layout + type: string + position: + $ref: '#/$defs/ResourceDictPositionObject' + description: Resource position + position3d: + $ref: '#/$defs/ResourceDictPositionObject' + description: Resource position in 3D space + rotation: + $ref: '#/$defs/ResourceDictPositionObject' + description: Resource rotation + scale: + $ref: '#/$defs/ResourceDictPositionScale' + description: Resource scale + size: + $ref: '#/$defs/ResourceDictPositionSize' + description: Resource size + title: ResourceDictPosition + type: object + ResourceDictPositionObject: + properties: + x: + default: 0.0 + description: X coordinate + title: X + type: number + y: + default: 0.0 + description: Y coordinate + title: Y + type: number + z: + default: 0.0 + description: Z coordinate + title: Z + type: number + title: ResourceDictPositionObject + type: object + ResourceDictPositionScale: + properties: + x: + default: 0.0 + description: x scale + title: X + type: number + y: + default: 0.0 + description: y scale + title: Y + type: number + z: + default: 0.0 + description: z scale + title: Z + type: number + title: ResourceDictPositionScale + type: object + ResourceDictPositionSize: + properties: + depth: + default: 0.0 + description: Depth + title: Depth + type: number + height: + default: 0.0 + description: Height + title: Height + type: number + width: + default: 0.0 + description: Width + title: Width + type: number + title: ResourceDictPositionSize + type: object + properties: + volumes: + items: + type: number + title: Volumes + type: array + wells: + items: + items: + $ref: '#/$defs/ResourceDict' + type: array + title: Wells + type: array + required: + - wells + - volumes + title: SetLiquidReturn + type: object + required: + - goal + title: set_liquid参数 + type: object + type: UniLabJsonCommand auto-set_liquid_from_plate: feedback: {} goal: {} @@ -721,7 +849,8 @@ liquid_handler: volumes: null well_names: null handles: {} - placeholder_keys: {} + placeholder_keys: + plate: unilabos_resources result: {} schema: description: '' @@ -730,20 +859,326 @@ liquid_handler: goal: properties: liquid_names: - type: string + items: + type: string + type: array plate: - type: string + additionalProperties: false + properties: + category: + type: string + children: + items: + type: string + type: array + config: + type: string + data: + type: string + id: + type: string + name: + type: string + parent: + type: string + pose: + additionalProperties: false + properties: + orientation: + additionalProperties: false + properties: + w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 + type: number + x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 + type: number + y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 + type: number + z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 + type: number + required: + - x + - y + - z + - w + title: orientation + type: object + position: + additionalProperties: false + properties: + x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 + type: number + y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 + type: number + z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 + type: number + required: + - x + - y + - z + title: position + type: object + required: + - position + - orientation + title: pose + type: object + sample_id: + type: string + type: + type: string + title: plate + type: object volumes: - type: string + items: + type: number + type: array well_names: - type: string + items: + type: string + type: array required: - plate - well_names - liquid_names - volumes type: object - result: {} + result: + $defs: + ResourceDict: + properties: + class: + description: Resource class name + title: Class + type: string + config: + additionalProperties: true + description: Resource configuration + title: Config + type: object + data: + additionalProperties: true + description: 'Resource data, eg: container liquid data' + title: Data + type: object + description: + default: '' + description: Resource description + title: Description + type: string + extra: + additionalProperties: true + description: 'Extra data, eg: slot index' + title: Extra + type: object + icon: + default: '' + description: Resource icon + title: Icon + type: string + id: + description: Resource ID + title: Id + type: string + machine_name: + default: '' + description: Machine this resource belongs to + title: Machine Name + type: string + model: + additionalProperties: true + description: Resource model + title: Model + type: object + name: + description: Resource name + title: Name + type: string + parent: + anyOf: + - $ref: '#/$defs/ResourceDict' + - type: 'null' + default: null + description: Parent resource object + parent_uuid: + anyOf: + - type: string + - type: 'null' + default: null + description: Parent resource uuid + title: Parent Uuid + pose: + $ref: '#/$defs/ResourceDictPosition' + description: Resource position + schema: + additionalProperties: true + description: Resource schema + title: Schema + type: object + type: + anyOf: + - const: device + type: string + - type: string + description: Resource type + title: Type + uuid: + description: Resource UUID + title: Uuid + type: string + required: + - id + - uuid + - name + - type + - class + - config + - data + - extra + title: ResourceDict + type: object + ResourceDictPosition: + properties: + cross_section_type: + default: rectangle + description: Cross section type + enum: + - rectangle + - circle + - rounded_rectangle + title: Cross Section Type + type: string + extra: + anyOf: + - additionalProperties: true + type: object + - type: 'null' + default: null + description: Extra data + title: Extra + layout: + default: x-y + description: Resource layout + enum: + - 2d + - x-y + - z-y + - x-z + title: Layout + type: string + position: + $ref: '#/$defs/ResourceDictPositionObject' + description: Resource position + position3d: + $ref: '#/$defs/ResourceDictPositionObject' + description: Resource position in 3D space + rotation: + $ref: '#/$defs/ResourceDictPositionObject' + description: Resource rotation + scale: + $ref: '#/$defs/ResourceDictPositionScale' + description: Resource scale + size: + $ref: '#/$defs/ResourceDictPositionSize' + description: Resource size + title: ResourceDictPosition + type: object + ResourceDictPositionObject: + properties: + x: + default: 0.0 + description: X coordinate + title: X + type: number + y: + default: 0.0 + description: Y coordinate + title: Y + type: number + z: + default: 0.0 + description: Z coordinate + title: Z + type: number + title: ResourceDictPositionObject + type: object + ResourceDictPositionScale: + properties: + x: + default: 0.0 + description: x scale + title: X + type: number + y: + default: 0.0 + description: y scale + title: Y + type: number + z: + default: 0.0 + description: z scale + title: Z + type: number + title: ResourceDictPositionScale + type: object + ResourceDictPositionSize: + properties: + depth: + default: 0.0 + description: Depth + title: Depth + type: number + height: + default: 0.0 + description: Height + title: Height + type: number + width: + default: 0.0 + description: Width + title: Width + type: number + title: ResourceDictPositionSize + type: object + properties: + plate: + items: + items: + $ref: '#/$defs/ResourceDict' + type: array + title: Plate + type: array + volumes: + items: + type: number + title: Volumes + type: array + wells: + items: + items: + $ref: '#/$defs/ResourceDict' + type: array + title: Wells + type: array + required: + - plate + - wells + - volumes + title: SetLiquidFromPlateReturn + type: object required: - goal title: set_liquid_from_plate参数 @@ -764,7 +1199,9 @@ liquid_handler: goal: properties: tip_racks: - type: string + items: + type: object + type: array required: - tip_racks type: object @@ -789,7 +1226,9 @@ liquid_handler: goal: properties: targets: - type: string + items: + type: object + type: array required: - targets type: object @@ -837,8 +1276,7 @@ liquid_handler: goal: use_channels: use_channels goal_default: - use_channels: - - 0 + use_channels: [] handles: {} result: name: name @@ -846,31 +1284,25 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDiscardTips_Feedback type: object goal: + additionalProperties: false properties: use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - use_channels title: LiquidHandlerDiscardTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDiscardTips_Result type: object required: @@ -889,39 +1321,13 @@ liquid_handler: use_channels: use_channels vols: vols goal_default: - blow_out_air_volume: - - 0 - flow_rates: - - 0.0 - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - resources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + blow_out_air_volume: [] + flow_rates: [] + offsets: [] + resources: [] spread: '' - use_channels: - - 0 - vols: - - 0.0 + use_channels: [] + vols: [] handles: {} result: name: name @@ -929,16 +1335,14 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDispense_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array flow_rates: @@ -958,7 +1362,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array resources: @@ -1033,40 +1436,27 @@ liquid_handler: - pose - config - data - title: resources type: object type: array spread: type: string use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: items: type: number type: array - required: - - resources - - vols - - use_channels - - flow_rates - - offsets - - blow_out_air_volume - - spread title: LiquidHandlerDispense_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDispense_Result type: object required: @@ -1083,32 +1473,9 @@ liquid_handler: use_channels: use_channels goal_default: allow_nonzero_volume: false - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - tip_spots: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + offsets: [] + tip_spots: [] + use_channels: [] handles: {} placeholder_keys: tip_spots: unilabos_resources @@ -1118,11 +1485,11 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDropTips_Feedback type: object goal: + additionalProperties: false properties: allow_nonzero_volume: type: boolean @@ -1139,7 +1506,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array tip_spots: @@ -1214,31 +1580,21 @@ liquid_handler: - pose - config - data - title: tip_spots type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - tip_spots - - use_channels - - offsets - - allow_nonzero_volume title: LiquidHandlerDropTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDropTips_Result type: object required: @@ -1285,21 +1641,28 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDropTips96_Feedback type: object goal: + additionalProperties: false properties: allow_nonzero_volume: type: boolean offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1308,6 +1671,7 @@ liquid_handler: title: offset type: object tip_rack: + additionalProperties: false properties: category: type: string @@ -1326,16 +1690,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1345,12 +1719,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1380,21 +1761,15 @@ liquid_handler: - data title: tip_rack type: object - required: - - tip_rack - - offset - - allow_nonzero_volume title: LiquidHandlerDropTips96_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDropTips96_Result type: object required: @@ -1417,47 +1792,31 @@ liquid_handler: mix_rate: 0.0 mix_time: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + targets: [] handles: {} - result: {} + placeholder_keys: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMix_Feedback type: object goal: + additionalProperties: false properties: height_to_bottom: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_time: maximum: 2147483647 @@ -1484,7 +1843,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array targets: @@ -1559,28 +1917,17 @@ liquid_handler: - pose - config - data - title: targets type: object type: array - required: - - targets - - mix_time - - mix_vol - - height_to_bottom - - offsets - - mix_rate - - none_keys title: LiquidHandlerMix_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMix_Result type: object required: @@ -1608,10 +1955,7 @@ liquid_handler: z: 0.0 drop_direction: '' get_direction: '' - intermediate_locations: - - x: 0.0 - y: 0.0 - z: 0.0 + intermediate_locations: [] lid: category: '' children: [] @@ -1666,19 +2010,26 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMoveLid_Feedback type: object goal: + additionalProperties: false properties: destination_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1703,10 +2054,10 @@ liquid_handler: - x - y - z - title: intermediate_locations type: object type: array lid: + additionalProperties: false properties: category: type: string @@ -1725,16 +2076,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1744,12 +2105,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1782,16 +2150,25 @@ liquid_handler: pickup_direction: type: string pickup_distance_from_top: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number put_direction: type: string resource_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1800,6 +2177,7 @@ liquid_handler: title: resource_offset type: object to: + additionalProperties: false properties: category: type: string @@ -1818,16 +2196,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1837,12 +2225,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -1872,28 +2267,15 @@ liquid_handler: - data title: to type: object - required: - - lid - - to - - intermediate_locations - - resource_offset - - destination_offset - - pickup_direction - - drop_direction - - get_direction - - put_direction - - pickup_distance_from_top title: LiquidHandlerMoveLid_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMoveLid_Result type: object required: @@ -1921,10 +2303,7 @@ liquid_handler: z: 0.0 drop_direction: '' get_direction: '' - intermediate_locations: - - x: 0.0 - y: 0.0 - z: 0.0 + intermediate_locations: [] pickup_direction: '' pickup_distance_from_top: 0.0 pickup_offset: @@ -1983,19 +2362,26 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMovePlate_Feedback type: object goal: + additionalProperties: false properties: destination_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2020,20 +2406,28 @@ liquid_handler: - x - y - z - title: intermediate_locations type: object type: array pickup_direction: type: string pickup_distance_from_top: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number pickup_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2042,6 +2436,7 @@ liquid_handler: title: pickup_offset type: object plate: + additionalProperties: false properties: category: type: string @@ -2060,16 +2455,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2079,12 +2484,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2117,12 +2529,19 @@ liquid_handler: put_direction: type: string resource_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2131,6 +2550,7 @@ liquid_handler: title: resource_offset type: object to: + additionalProperties: false properties: category: type: string @@ -2149,16 +2569,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2168,12 +2598,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2203,29 +2640,15 @@ liquid_handler: - data title: to type: object - required: - - plate - - to - - intermediate_locations - - resource_offset - - pickup_offset - - destination_offset - - pickup_direction - - drop_direction - - get_direction - - put_direction - - pickup_distance_from_top title: LiquidHandlerMovePlate_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMovePlate_Result type: object required: @@ -2253,10 +2676,7 @@ liquid_handler: z: 0.0 drop_direction: '' get_direction: '' - intermediate_locations: - - x: 0.0 - y: 0.0 - z: 0.0 + intermediate_locations: [] pickup_direction: '' pickup_distance_from_top: 0.0 put_direction: '' @@ -2295,19 +2715,26 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMoveResource_Feedback type: object goal: + additionalProperties: false properties: destination_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2332,16 +2759,18 @@ liquid_handler: - x - y - z - title: intermediate_locations type: object type: array pickup_direction: type: string pickup_distance_from_top: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number put_direction: type: string resource: + additionalProperties: false properties: category: type: string @@ -2360,16 +2789,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2379,12 +2818,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2415,12 +2861,19 @@ liquid_handler: title: resource type: object resource_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2429,12 +2882,19 @@ liquid_handler: title: resource_offset type: object to: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2442,28 +2902,15 @@ liquid_handler: - z title: to type: object - required: - - resource - - to - - intermediate_locations - - resource_offset - - destination_offset - - pickup_distance_from_top - - pickup_direction - - drop_direction - - get_direction - - put_direction title: LiquidHandlerMoveResource_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMoveResource_Result type: object required: @@ -2501,24 +2948,30 @@ liquid_handler: sample_id: '' type: '' handles: {} - result: {} + placeholder_keys: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMoveTo_Feedback type: object goal: + additionalProperties: false properties: channel: maximum: 2147483647 minimum: -2147483648 type: integer dis_to_top: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number well: + additionalProperties: false properties: category: type: string @@ -2537,16 +2990,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2556,12 +3019,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2591,21 +3061,15 @@ liquid_handler: - data title: well type: object - required: - - well - - dis_to_top - - channel title: LiquidHandlerMoveTo_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMoveTo_Result type: object required: @@ -2620,32 +3084,9 @@ liquid_handler: tip_spots: tip_spots use_channels: use_channels goal_default: - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - tip_spots: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + offsets: [] + tip_spots: [] + use_channels: [] handles: {} result: name: name @@ -2653,11 +3094,11 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerPickUpTips_Feedback type: object goal: + additionalProperties: false properties: offsets: items: @@ -2672,7 +3113,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array tip_spots: @@ -2747,30 +3187,21 @@ liquid_handler: - pose - config - data - title: tip_spots type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - tip_spots - - use_channels - - offsets title: LiquidHandlerPickUpTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerPickUpTips_Result type: object required: @@ -2815,19 +3246,26 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerPickUpTips96_Feedback type: object goal: + additionalProperties: false properties: offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2836,6 +3274,7 @@ liquid_handler: title: offset type: object tip_rack: + additionalProperties: false properties: category: type: string @@ -2854,16 +3293,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2873,12 +3322,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -2908,20 +3364,15 @@ liquid_handler: - data title: tip_rack type: object - required: - - tip_rack - - offset title: LiquidHandlerPickUpTips96_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerPickUpTips96_Result type: object required: @@ -2946,48 +3397,18 @@ liquid_handler: vols: vols waste_liquid: waste_liquid goal_default: - blow_out_air_volume: - - 0.0 - delays: - - 0 - flow_rates: - - 0.0 + blow_out_air_volume: [] + delays: [] + flow_rates: [] is_96_well: false - liquid_height: - - 0.0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + liquid_height: [] + none_keys: [] + offsets: [] + sources: [] spread: '' - top: - - 0.0 - use_channels: - - 0 - vols: - - 0.0 + top: [] + use_channels: [] + vols: [] waste_liquid: category: '' children: [] @@ -3014,11 +3435,11 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerRemove_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: @@ -3026,8 +3447,6 @@ liquid_handler: type: array delays: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array flow_rates: @@ -3057,7 +3476,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array sources: @@ -3132,7 +3550,6 @@ liquid_handler: - pose - config - data - title: sources type: object type: array spread: @@ -3143,8 +3560,6 @@ liquid_handler: type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: @@ -3152,6 +3567,7 @@ liquid_handler: type: number type: array waste_liquid: + additionalProperties: false properties: category: type: string @@ -3170,16 +3586,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3189,12 +3615,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3224,31 +3657,15 @@ liquid_handler: - data title: waste_liquid type: object - required: - - vols - - sources - - waste_liquid - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread - - delays - - is_96_well - - top - - none_keys title: LiquidHandlerRemove_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerRemove_Result type: object required: @@ -3273,48 +3690,18 @@ liquid_handler: vols: vols waste_liquid: waste_liquid goal_default: - blow_out_air_volume: - - 0.0 - delays: - - 0 - flow_rates: - - 0.0 + blow_out_air_volume: [] + delays: [] + flow_rates: [] is_96_well: false - liquid_height: - - 0.0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + liquid_height: [] + none_keys: [] + offsets: [] + sources: [] spread: '' - top: - - 0.0 - use_channels: - - 0 - vols: - - 0.0 + top: [] + use_channels: [] + vols: [] waste_liquid: category: '' children: [] @@ -3339,16 +3726,18 @@ liquid_handler: placeholder_keys: sources: unilabos_resources waste_liquid: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerRemove_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: @@ -3356,8 +3745,6 @@ liquid_handler: type: array delays: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array flow_rates: @@ -3387,7 +3774,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array sources: @@ -3462,7 +3848,6 @@ liquid_handler: - pose - config - data - title: sources type: object type: array spread: @@ -3473,8 +3858,6 @@ liquid_handler: type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: @@ -3482,6 +3865,7 @@ liquid_handler: type: number type: array waste_liquid: + additionalProperties: false properties: category: type: string @@ -3500,16 +3884,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3519,12 +3913,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3554,31 +3955,15 @@ liquid_handler: - data title: waste_liquid type: object - required: - - vols - - sources - - waste_liquid - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread - - delays - - is_96_well - - top - - none_keys title: LiquidHandlerRemove_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerRemove_Result type: object required: @@ -3593,8 +3978,7 @@ liquid_handler: use_channels: use_channels goal_default: allow_nonzero_volume: false - use_channels: - - 0 + use_channels: [] handles: {} result: name: name @@ -3602,34 +3986,27 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerReturnTips_Feedback type: object goal: + additionalProperties: false properties: allow_nonzero_volume: type: boolean use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - use_channels - - allow_nonzero_volume title: LiquidHandlerReturnTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerReturnTips_Result type: object required: @@ -3650,27 +4027,23 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerReturnTips96_Feedback type: object goal: + additionalProperties: false properties: allow_nonzero_volume: type: boolean - required: - - allow_nonzero_volume title: LiquidHandlerReturnTips96_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerReturnTips96_Result type: object required: @@ -3737,17 +4110,22 @@ liquid_handler: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerStamp_Feedback type: object goal: + additionalProperties: false properties: aspiration_flow_rate: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number dispense_flow_rate: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number source: + additionalProperties: false properties: category: type: string @@ -3766,16 +4144,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3785,12 +4173,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3821,6 +4216,7 @@ liquid_handler: title: source type: object target: + additionalProperties: false properties: category: type: string @@ -3839,16 +4235,26 @@ liquid_handler: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3858,12 +4264,19 @@ liquid_handler: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -3894,24 +4307,18 @@ liquid_handler: title: target type: object volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number - required: - - source - - target - - volume - - aspiration_flow_rate - - dispense_flow_rate title: LiquidHandlerStamp_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerStamp_Result type: object required: @@ -3944,20 +4351,22 @@ liquid_handler: description: '' properties: feedback: + additionalProperties: false properties: current_status: type: string progress: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number transferred_volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number - required: - - progress - - transferred_volume - - current_status title: Transfer_Feedback type: object goal: + additionalProperties: false properties: amount: type: string @@ -3970,31 +4379,27 @@ liquid_handler: rinsing_solvent: type: string rinsing_volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number solid: type: boolean time: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number to_vessel: type: string viscous: type: boolean volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number - required: - - from_vessel - - to_vessel - - volume - - amount - - time - - viscous - - rinsing_solvent - - rinsing_volume - - rinsing_repeats - - solid title: Transfer_Goal type: object result: + additionalProperties: false properties: message: type: string @@ -4002,10 +4407,6 @@ liquid_handler: type: string success: type: boolean - required: - - success - - message - - return_info title: Transfer_Result type: object required: @@ -4038,96 +4439,27 @@ liquid_handler: touch_tip: touch_tip use_channels: use_channels goal_default: - asp_flow_rates: - - 0.0 - asp_vols: - - 0.0 - blow_out_air_volume: - - 0.0 - delays: - - 0 - dis_flow_rates: - - 0.0 - dis_vols: - - 0.0 + asp_flow_rates: [] + asp_vols: [] + blow_out_air_volume: [] + delays: [] + dis_flow_rates: [] + dis_vols: [] is_96_well: false - liquid_height: - - 0.0 + liquid_height: [] mix_liquid_height: 0.0 mix_rate: 0 mix_stage: '' mix_times: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + sources: [] spread: '' - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - tip_racks: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + targets: [] + tip_racks: [] touch_tip: false - use_channels: - - 0 + use_channels: [] handles: input: - data_key: sources @@ -4160,16 +4492,18 @@ liquid_handler: sources: unilabos_resources targets: unilabos_resources tip_racks: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerTransfer_Feedback type: object goal: + additionalProperties: false properties: asp_flow_rates: items: @@ -4185,8 +4519,6 @@ liquid_handler: type: array delays: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array dis_flow_rates: @@ -4204,6 +4536,8 @@ liquid_handler: type: number type: array mix_liquid_height: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: maximum: 2147483647 @@ -4236,7 +4570,6 @@ liquid_handler: - x - y - z - title: offsets type: object type: array sources: @@ -4311,7 +4644,6 @@ liquid_handler: - pose - config - data - title: sources type: object type: array spread: @@ -4388,7 +4720,6 @@ liquid_handler: - pose - config - data - title: targets type: object type: array tip_racks: @@ -4463,50 +4794,23 @@ liquid_handler: - pose - config - data - title: tip_racks type: object type: array touch_tip: type: boolean use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - asp_vols - - dis_vols - - sources - - targets - - tip_racks - - use_channels - - asp_flow_rates - - dis_flow_rates - - offsets - - touch_tip - - liquid_height - - blow_out_air_volume - - spread - - is_96_well - - mix_stage - - mix_times - - mix_vol - - mix_rate - - mix_liquid_height - - delays - - none_keys title: LiquidHandlerTransfer_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerTransfer_Result type: object required: @@ -4525,12 +4829,12 @@ liquid_handler: config: properties: backend: - type: string + type: object channel_num: default: 8 type: integer deck: - type: string + type: object simulator: default: false type: boolean @@ -4573,6 +4877,8 @@ liquid_handler.biomek: goal: properties: bind_location: + additionalProperties: + type: number type: object bind_parent_id: type: string @@ -4612,6 +4918,36 @@ liquid_handler.biomek: title: create_resource参数 type: object type: UniLabJsonCommand + auto-deserialize: + feedback: {} + goal: {} + goal_default: + allow_marshal: false + data: null + handles: {} + placeholder_keys: {} + result: {} + schema: + description: deserialize的参数schema + properties: + feedback: {} + goal: + properties: + allow_marshal: + default: false + type: boolean + data: + type: object + required: + - data + type: object + result: + type: object + required: + - goal + title: deserialize参数 + type: object + type: UniLabJsonCommand auto-instrument_setup_biomek: feedback: {} goal: {} @@ -4678,8 +5014,7 @@ liquid_handler.biomek: protocol_type: protocol_type protocol_version: protocol_version goal_default: - none_keys: - - '' + none_keys: [] protocol_author: '' protocol_date: '' protocol_description: '' @@ -4687,16 +5022,18 @@ liquid_handler.biomek: protocol_type: '' protocol_version: '' handles: {} - result: {} + placeholder_keys: {} + result: + return_info: return_info schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerProtocolCreation_Feedback type: object goal: + additionalProperties: false properties: none_keys: items: @@ -4714,22 +5051,13 @@ liquid_handler.biomek: type: string protocol_version: type: string - required: - - protocol_name - - protocol_description - - protocol_version - - protocol_author - - protocol_date - - protocol_type - - none_keys title: LiquidHandlerProtocolCreation_Goal type: object result: + additionalProperties: false properties: return_info: type: string - required: - - return_info title: LiquidHandlerProtocolCreation_Result type: object required: @@ -4756,34 +5084,33 @@ liquid_handler.biomek: data_type: resource handler_key: plate_out label: plate - result: {} + placeholder_keys: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerIncubateBiomek_Feedback type: object goal: + additionalProperties: false properties: time: maximum: 2147483647 minimum: -2147483648 type: integer - required: - - time title: LiquidHandlerIncubateBiomek_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerIncubateBiomek_Result type: object required: @@ -4794,8 +5121,10 @@ liquid_handler.biomek: move_biomek: feedback: {} goal: - source: sources - target: targets + source: source + sources: sources + target: target + targets: targets goal_default: sources: '' targets: '' @@ -4812,36 +5141,33 @@ liquid_handler.biomek: data_type: resource handler_key: targets label: targets + placeholder_keys: {} result: - name: name + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMoveBiomek_Feedback type: object goal: + additionalProperties: false properties: sources: type: string targets: type: string - required: - - sources - - targets title: LiquidHandlerMoveBiomek_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMoveBiomek_Result type: object required: @@ -4870,16 +5196,19 @@ liquid_handler.biomek: data_type: resource handler_key: plate_out label: plate - result: {} + placeholder_keys: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerOscillateBiomek_Feedback type: object goal: + additionalProperties: false properties: rpm: maximum: 2147483647 @@ -4889,20 +5218,15 @@ liquid_handler.biomek: maximum: 2147483647 minimum: -2147483648 type: integer - required: - - rpm - - time title: LiquidHandlerOscillateBiomek_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerOscillateBiomek_Result type: object required: @@ -4915,26 +5239,25 @@ liquid_handler.biomek: goal: {} goal_default: {} handles: {} - result: {} + placeholder_keys: {} + result: + return_info: return_info schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: EmptyIn_Feedback type: object goal: - properties: {} - required: [] + additionalProperties: true title: EmptyIn_Goal type: object result: + additionalProperties: false properties: return_info: type: string - required: - - return_info title: EmptyIn_Result type: object required: @@ -4945,9 +5268,13 @@ liquid_handler.biomek: transfer_biomek: feedback: {} goal: + aspirate_technique: aspirate_technique aspirate_techniques: aspirate_techniques + dispense_technique: dispense_technique dispense_techniques: dispense_techniques + source: source sources: sources + target: target targets: targets tip_rack: tip_rack volume: volume @@ -4986,16 +5313,19 @@ liquid_handler.biomek: data_type: resource handler_key: targets_out label: targets - result: {} + placeholder_keys: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerTransferBiomek_Feedback type: object goal: + additionalProperties: false properties: aspirate_technique: type: string @@ -5008,25 +5338,18 @@ liquid_handler.biomek: tip_rack: type: string volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number - required: - - sources - - targets - - tip_rack - - volume - - aspirate_technique - - dispense_technique title: LiquidHandlerTransferBiomek_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerTransferBiomek_Result type: object required: @@ -5059,96 +5382,27 @@ liquid_handler.biomek: touch_tip: touch_tip use_channels: use_channels goal_default: - asp_flow_rates: - - 0.0 - asp_vols: - - 0.0 - blow_out_air_volume: - - 0.0 - delays: - - 0 - dis_flow_rates: - - 0.0 - dis_vols: - - 0.0 + asp_flow_rates: [] + asp_vols: [] + blow_out_air_volume: [] + delays: [] + dis_flow_rates: [] + dis_vols: [] is_96_well: false - liquid_height: - - 0.0 + liquid_height: [] mix_liquid_height: 0.0 mix_rate: 0 mix_stage: '' mix_times: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + sources: [] spread: '' - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - tip_racks: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + targets: [] + tip_racks: [] touch_tip: false - use_channels: - - 0 + use_channels: [] handles: input: - data_key: sources @@ -5183,16 +5437,18 @@ liquid_handler.biomek: sources: unilabos_resources targets: unilabos_resources tip_racks: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerTransfer_Feedback type: object goal: + additionalProperties: false properties: asp_flow_rates: items: @@ -5208,8 +5464,6 @@ liquid_handler.biomek: type: array delays: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array dis_flow_rates: @@ -5227,6 +5481,8 @@ liquid_handler.biomek: type: number type: array mix_liquid_height: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: maximum: 2147483647 @@ -5259,7 +5515,6 @@ liquid_handler.biomek: - x - y - z - title: offsets type: object type: array sources: @@ -5334,7 +5589,6 @@ liquid_handler.biomek: - pose - config - data - title: sources type: object type: array spread: @@ -5411,7 +5665,6 @@ liquid_handler.biomek: - pose - config - data - title: targets type: object type: array tip_racks: @@ -5486,50 +5739,23 @@ liquid_handler.biomek: - pose - config - data - title: tip_racks type: object type: array touch_tip: type: boolean use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - asp_vols - - dis_vols - - sources - - targets - - tip_racks - - use_channels - - asp_flow_rates - - dis_flow_rates - - offsets - - touch_tip - - liquid_height - - blow_out_air_volume - - spread - - is_96_well - - mix_stage - - mix_times - - mix_vol - - mix_rate - - mix_liquid_height - - delays - - none_keys title: LiquidHandlerTransfer_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerTransfer_Result type: object required: @@ -5539,7 +5765,7 @@ liquid_handler.biomek: type: LiquidHandlerTransfer module: unilabos.devices.liquid_handling.biomek:LiquidHandlerBiomek status_types: - success: String + success: '' type: python config_info: [] description: Biomek液体处理器设备,基于pylabrobot控制 @@ -5568,6 +5794,7 @@ liquid_handler.laiyu: goal: asp_vols: asp_vols blow_out_air_volume: blow_out_air_volume + delays: delays dis_vols: dis_vols flow_rates: flow_rates is_96_well: is_96_well @@ -5583,84 +5810,38 @@ liquid_handler.laiyu: targets: targets use_channels: use_channels goal_default: - asp_vols: - - 0.0 - blow_out_air_volume: - - 0.0 - dis_vols: - - 0.0 - flow_rates: - - 0.0 + asp_vols: [] + blow_out_air_volume: [] + dis_vols: [] + flow_rates: [] is_96_well: false - liquid_height: - - 0.0 + liquid_height: [] mix_liquid_height: 0.0 mix_rate: 0 mix_time: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - reagent_sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + reagent_sources: [] spread: '' - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + targets: [] + use_channels: [] handles: {} placeholder_keys: reagent_sources: unilabos_resources targets: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerAdd_Feedback type: object goal: + additionalProperties: false properties: asp_vols: items: @@ -5685,6 +5866,8 @@ liquid_handler.laiyu: type: number type: array mix_liquid_height: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: maximum: 2147483647 @@ -5715,7 +5898,6 @@ liquid_handler.laiyu: - x - y - z - title: offsets type: object type: array reagent_sources: @@ -5790,7 +5972,6 @@ liquid_handler.laiyu: - pose - config - data - title: reagent_sources type: object type: array spread: @@ -5867,43 +6048,21 @@ liquid_handler.laiyu: - pose - config - data - title: targets type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - asp_vols - - dis_vols - - reagent_sources - - targets - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread - - is_96_well - - mix_time - - mix_vol - - mix_rate - - mix_liquid_height - - none_keys title: LiquidHandlerAdd_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerAdd_Result type: object required: @@ -5919,57 +6078,33 @@ liquid_handler.laiyu: liquid_height: liquid_height offsets: offsets resources: resources + spread: spread use_channels: use_channels vols: vols goal_default: - blow_out_air_volume: - - 0.0 - flow_rates: - - 0.0 - liquid_height: - - 0.0 - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - resources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + blow_out_air_volume: [] + flow_rates: [] + liquid_height: [] + offsets: [] + resources: [] spread: '' - use_channels: - - 0 - vols: - - 0.0 + use_channels: [] + vols: [] handles: {} placeholder_keys: resources: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerAspirate_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: @@ -5996,7 +6131,6 @@ liquid_handler.laiyu: - x - y - z - title: offsets type: object type: array resources: @@ -6071,41 +6205,27 @@ liquid_handler.laiyu: - pose - config - data - title: resources type: object type: array spread: type: string use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: items: type: number type: array - required: - - resources - - vols - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread title: LiquidHandlerAspirate_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerAspirate_Result type: object required: @@ -6148,54 +6268,93 @@ liquid_handler.laiyu: goal: properties: asp_flow_rates: - type: string + items: + type: number + type: array asp_vols: - type: string + anyOf: + - items: + type: number + type: array + - type: number blow_out_air_volume: - type: string + items: + type: number + type: array delays: - type: string + items: + type: integer + type: array dis_flow_rates: - type: string + items: + type: number + type: array dis_vols: - type: string + anyOf: + - items: + type: number + type: array + - type: number is_96_well: default: false type: boolean liquid_height: - type: string + items: + type: number + type: array mix_liquid_height: - type: string + type: number mix_rate: - type: string + type: integer mix_stage: default: none + enum: + - none + - before + - after + - both type: string mix_times: - type: string + items: + type: integer + type: array mix_vol: - type: string + type: integer none_keys: default: [] items: type: string type: array offsets: - type: string + items: + type: object + type: array sources: - type: string + items: + type: object + type: array spread: default: wide + enum: + - wide + - tight + - custom type: string targets: - type: string + items: + type: object + type: array tip_racks: - type: string + items: + type: object + type: array touch_tip: default: false type: boolean use_channels: - type: string + items: + type: integer + type: array required: - sources - targets @@ -6217,60 +6376,35 @@ liquid_handler.laiyu: liquid_height: liquid_height offsets: offsets resources: resources + spread: spread use_channels: use_channels vols: vols goal_default: - blow_out_air_volume: - - 0 - flow_rates: - - 0.0 - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - resources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + blow_out_air_volume: [] + flow_rates: [] + offsets: [] + resources: [] spread: '' - use_channels: - - 0 - vols: - - 0.0 + use_channels: [] + vols: [] handles: {} placeholder_keys: resources: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDispense_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array flow_rates: @@ -6290,7 +6424,6 @@ liquid_handler.laiyu: - x - y - z - title: offsets type: object type: array resources: @@ -6365,40 +6498,27 @@ liquid_handler.laiyu: - pose - config - data - title: resources type: object type: array spread: type: string use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: items: type: number type: array - required: - - resources - - vols - - use_channels - - flow_rates - - offsets - - blow_out_air_volume - - spread title: LiquidHandlerDispense_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDispense_Result type: object required: @@ -6415,45 +6535,24 @@ liquid_handler.laiyu: use_channels: use_channels goal_default: allow_nonzero_volume: false - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - tip_spots: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + offsets: [] + tip_spots: [] + use_channels: [] handles: {} placeholder_keys: tip_spots: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDropTips_Feedback type: object goal: + additionalProperties: false properties: allow_nonzero_volume: type: boolean @@ -6470,7 +6569,6 @@ liquid_handler.laiyu: - x - y - z - title: offsets type: object type: array tip_spots: @@ -6545,31 +6643,21 @@ liquid_handler.laiyu: - pose - config - data - title: tip_spots type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - tip_spots - - use_channels - - offsets - - allow_nonzero_volume title: LiquidHandlerDropTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDropTips_Result type: object required: @@ -6592,49 +6680,32 @@ liquid_handler.laiyu: mix_rate: 0.0 mix_time: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + targets: [] handles: {} placeholder_keys: targets: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMix_Feedback type: object goal: + additionalProperties: false properties: height_to_bottom: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_time: maximum: 2147483647 @@ -6661,7 +6732,6 @@ liquid_handler.laiyu: - x - y - z - title: offsets type: object type: array targets: @@ -6736,28 +6806,17 @@ liquid_handler.laiyu: - pose - config - data - title: targets type: object type: array - required: - - targets - - mix_time - - mix_vol - - height_to_bottom - - offsets - - mix_rate - - none_keys title: LiquidHandlerMix_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMix_Result type: object required: @@ -6772,45 +6831,24 @@ liquid_handler.laiyu: tip_spots: tip_spots use_channels: use_channels goal_default: - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - tip_spots: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + offsets: [] + tip_spots: [] + use_channels: [] handles: {} placeholder_keys: tip_spots: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerPickUpTips_Feedback type: object goal: + additionalProperties: false properties: offsets: items: @@ -6825,7 +6863,6 @@ liquid_handler.laiyu: - x - y - z - title: offsets type: object type: array tip_spots: @@ -6900,30 +6937,21 @@ liquid_handler.laiyu: - pose - config - data - title: tip_spots type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - tip_spots - - use_channels - - offsets title: LiquidHandlerPickUpTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerPickUpTips_Result type: object required: @@ -6978,6 +7006,7 @@ liquid_handler.prcxi: goal: asp_vols: asp_vols blow_out_air_volume: blow_out_air_volume + delays: delays dis_vols: dis_vols flow_rates: flow_rates is_96_well: is_96_well @@ -6993,84 +7022,38 @@ liquid_handler.prcxi: targets: targets use_channels: use_channels goal_default: - asp_vols: - - 0.0 - blow_out_air_volume: - - 0.0 - dis_vols: - - 0.0 - flow_rates: - - 0.0 + asp_vols: [] + blow_out_air_volume: [] + dis_vols: [] + flow_rates: [] is_96_well: false - liquid_height: - - 0.0 + liquid_height: [] mix_liquid_height: 0.0 mix_rate: 0 mix_time: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - reagent_sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + reagent_sources: [] spread: '' - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + targets: [] + use_channels: [] handles: {} placeholder_keys: reagent_sources: unilabos_resources targets: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerAdd_Feedback type: object goal: + additionalProperties: false properties: asp_vols: items: @@ -7095,6 +7078,8 @@ liquid_handler.prcxi: type: number type: array mix_liquid_height: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: maximum: 2147483647 @@ -7125,7 +7110,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array reagent_sources: @@ -7200,7 +7184,6 @@ liquid_handler.prcxi: - pose - config - data - title: reagent_sources type: object type: array spread: @@ -7277,43 +7260,21 @@ liquid_handler.prcxi: - pose - config - data - title: targets type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - asp_vols - - dis_vols - - reagent_sources - - targets - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread - - is_96_well - - mix_time - - mix_vol - - mix_rate - - mix_liquid_height - - none_keys title: LiquidHandlerAdd_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerAdd_Result type: object required: @@ -7329,57 +7290,33 @@ liquid_handler.prcxi: liquid_height: liquid_height offsets: offsets resources: resources + spread: spread use_channels: use_channels vols: vols goal_default: - blow_out_air_volume: - - 0.0 - flow_rates: - - 0.0 - liquid_height: - - 0.0 - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - resources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + blow_out_air_volume: [] + flow_rates: [] + liquid_height: [] + offsets: [] + resources: [] spread: '' - use_channels: - - 0 - vols: - - 0.0 + use_channels: [] + vols: [] handles: {} placeholder_keys: resources: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerAspirate_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: @@ -7406,7 +7343,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array resources: @@ -7481,41 +7417,27 @@ liquid_handler.prcxi: - pose - config - data - title: resources type: object type: array spread: type: string use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: items: type: number type: array - required: - - resources - - vols - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread title: LiquidHandlerAspirate_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerAspirate_Result type: object required: @@ -7646,11 +7568,14 @@ liquid_handler.prcxi: goal: properties: tip_racks: - type: string + items: + type: object + type: array required: - tip_racks type: object - result: {} + result: + type: string required: - goal title: iter_tips参数 @@ -7930,7 +7855,9 @@ liquid_handler.prcxi: goal: properties: targets: - type: string + items: + type: object + type: array required: - targets type: object @@ -7976,41 +7903,39 @@ liquid_handler.prcxi: discard_tips: feedback: {} goal: + allow_nonzero_volume: allow_nonzero_volume + offsets: offsets use_channels: use_channels goal_default: - use_channels: - - 0 + use_channels: [] handles: {} - result: {} + placeholder_keys: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDiscardTips_Feedback type: object goal: + additionalProperties: false properties: use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - use_channels title: LiquidHandlerDiscardTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDiscardTips_Result type: object required: @@ -8023,63 +7948,38 @@ liquid_handler.prcxi: goal: blow_out_air_volume: blow_out_air_volume flow_rates: flow_rates + liquid_height: liquid_height offsets: offsets resources: resources spread: spread use_channels: use_channels vols: vols goal_default: - blow_out_air_volume: - - 0 - flow_rates: - - 0.0 - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - resources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + blow_out_air_volume: [] + flow_rates: [] + offsets: [] + resources: [] spread: '' - use_channels: - - 0 - vols: - - 0.0 + use_channels: [] + vols: [] handles: {} placeholder_keys: resources: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDispense_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array flow_rates: @@ -8099,7 +7999,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array resources: @@ -8174,40 +8073,27 @@ liquid_handler.prcxi: - pose - config - data - title: resources type: object type: array spread: type: string use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: items: type: number type: array - required: - - resources - - vols - - use_channels - - flow_rates - - offsets - - blow_out_air_volume - - spread title: LiquidHandlerDispense_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDispense_Result type: object required: @@ -8224,45 +8110,24 @@ liquid_handler.prcxi: use_channels: use_channels goal_default: allow_nonzero_volume: false - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - tip_spots: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + offsets: [] + tip_spots: [] + use_channels: [] handles: {} placeholder_keys: tip_spots: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerDropTips_Feedback type: object goal: + additionalProperties: false properties: allow_nonzero_volume: type: boolean @@ -8279,7 +8144,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array tip_spots: @@ -8354,31 +8218,21 @@ liquid_handler.prcxi: - pose - config - data - title: tip_spots type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - tip_spots - - use_channels - - offsets - - allow_nonzero_volume title: LiquidHandlerDropTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerDropTips_Result type: object required: @@ -8401,49 +8255,32 @@ liquid_handler.prcxi: mix_rate: 0.0 mix_time: 0 mix_vol: 0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - targets: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + none_keys: [] + offsets: [] + targets: [] handles: {} placeholder_keys: targets: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMix_Feedback type: object goal: + additionalProperties: false properties: height_to_bottom: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_time: maximum: 2147483647 @@ -8470,7 +8307,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array targets: @@ -8545,28 +8381,17 @@ liquid_handler.prcxi: - pose - config - data - title: targets type: object type: array - required: - - targets - - mix_time - - mix_vol - - height_to_bottom - - offsets - - mix_rate - - none_keys title: LiquidHandlerMix_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMix_Result type: object required: @@ -8582,6 +8407,7 @@ liquid_handler.prcxi: get_direction: get_direction intermediate_locations: intermediate_locations pickup_direction: pickup_direction + pickup_distance_from_top: pickup_distance_from_top pickup_offset: pickup_offset plate: plate put_direction: put_direction @@ -8594,10 +8420,7 @@ liquid_handler.prcxi: z: 0.0 drop_direction: '' get_direction: '' - intermediate_locations: - - x: 0.0 - y: 0.0 - z: 0.0 + intermediate_locations: [] pickup_direction: '' pickup_distance_from_top: 0.0 pickup_offset: @@ -8654,24 +8477,32 @@ liquid_handler.prcxi: plate: unilabos_resources to: unilabos_resources result: - name: name + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerMovePlate_Feedback type: object goal: + additionalProperties: false properties: destination_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -8696,20 +8527,28 @@ liquid_handler.prcxi: - x - y - z - title: intermediate_locations type: object type: array pickup_direction: type: string pickup_distance_from_top: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number pickup_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -8718,6 +8557,7 @@ liquid_handler.prcxi: title: pickup_offset type: object plate: + additionalProperties: false properties: category: type: string @@ -8736,16 +8576,26 @@ liquid_handler.prcxi: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -8755,12 +8605,19 @@ liquid_handler.prcxi: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -8793,12 +8650,19 @@ liquid_handler.prcxi: put_direction: type: string resource_offset: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -8807,6 +8671,7 @@ liquid_handler.prcxi: title: resource_offset type: object to: + additionalProperties: false properties: category: type: string @@ -8825,16 +8690,26 @@ liquid_handler.prcxi: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -8844,12 +8719,19 @@ liquid_handler.prcxi: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -8879,29 +8761,15 @@ liquid_handler.prcxi: - data title: to type: object - required: - - plate - - to - - intermediate_locations - - resource_offset - - pickup_offset - - destination_offset - - pickup_direction - - drop_direction - - get_direction - - put_direction - - pickup_distance_from_top title: LiquidHandlerMovePlate_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerMovePlate_Result type: object required: @@ -8916,45 +8784,24 @@ liquid_handler.prcxi: tip_spots: tip_spots use_channels: use_channels goal_default: - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - tip_spots: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' - use_channels: - - 0 + offsets: [] + tip_spots: [] + use_channels: [] handles: {} placeholder_keys: tip_spots: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerPickUpTips_Feedback type: object goal: + additionalProperties: false properties: offsets: items: @@ -8969,7 +8816,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array tip_spots: @@ -9044,30 +8890,21 @@ liquid_handler.prcxi: - pose - config - data - title: tip_spots type: object type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array - required: - - tip_spots - - use_channels - - offsets title: LiquidHandlerPickUpTips_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerPickUpTips_Result type: object required: @@ -9092,48 +8929,18 @@ liquid_handler.prcxi: vols: vols waste_liquid: waste_liquid goal_default: - blow_out_air_volume: - - 0.0 - delays: - - 0 - flow_rates: - - 0.0 + blow_out_air_volume: [] + delays: [] + flow_rates: [] is_96_well: false - liquid_height: - - 0.0 - none_keys: - - '' - offsets: - - x: 0.0 - y: 0.0 - z: 0.0 - sources: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + liquid_height: [] + none_keys: [] + offsets: [] + sources: [] spread: '' - top: - - 0.0 - use_channels: - - 0 - vols: - - 0.0 + top: [] + use_channels: [] + vols: [] waste_liquid: category: '' children: [] @@ -9158,16 +8965,18 @@ liquid_handler.prcxi: placeholder_keys: sources: unilabos_resources waste_liquid: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerRemove_Feedback type: object goal: + additionalProperties: false properties: blow_out_air_volume: items: @@ -9175,8 +8984,6 @@ liquid_handler.prcxi: type: array delays: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array flow_rates: @@ -9206,7 +9013,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array sources: @@ -9281,7 +9087,6 @@ liquid_handler.prcxi: - pose - config - data - title: sources type: object type: array spread: @@ -9292,8 +9097,6 @@ liquid_handler.prcxi: type: array use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array vols: @@ -9301,6 +9104,7 @@ liquid_handler.prcxi: type: number type: array waste_liquid: + additionalProperties: false properties: category: type: string @@ -9319,16 +9123,26 @@ liquid_handler.prcxi: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -9338,12 +9152,19 @@ liquid_handler.prcxi: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -9373,31 +9194,15 @@ liquid_handler.prcxi: - data title: waste_liquid type: object - required: - - vols - - sources - - waste_liquid - - use_channels - - flow_rates - - offsets - - liquid_height - - blow_out_air_volume - - spread - - delays - - is_96_well - - top - - none_keys title: LiquidHandlerRemove_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerRemove_Result type: object required: @@ -9412,30 +9217,9 @@ liquid_handler.prcxi: volumes: volumes wells: wells goal_default: - liquid_names: - - '' - volumes: - - 0.0 - wells: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + liquid_names: [] + volumes: [] + wells: [] handles: input: - data_key: wells @@ -9451,16 +9235,17 @@ liquid_handler.prcxi: label: 已设定液体孔 placeholder_keys: wells: unilabos_resources - result: {} + result: + return_info: return_info schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerSetLiquid_Feedback type: object goal: + additionalProperties: false properties: liquid_names: items: @@ -9542,21 +9327,15 @@ liquid_handler.prcxi: - pose - config - data - title: wells type: object type: array - required: - - wells - - liquid_names - - volumes title: LiquidHandlerSetLiquid_Goal type: object result: + additionalProperties: false properties: return_info: type: string - required: - - return_info title: LiquidHandlerSetLiquid_Result type: object required: @@ -9609,6 +9388,7 @@ liquid_handler.prcxi: type: string type: array plate: + additionalProperties: false properties: category: type: string @@ -9627,16 +9407,26 @@ liquid_handler.prcxi: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -9646,12 +9436,19 @@ liquid_handler.prcxi: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -9668,17 +9465,6 @@ liquid_handler.prcxi: type: string type: type: string - required: - - id - - name - - sample_id - - children - - parent - - type - - category - - pose - - config - - data title: plate type: object volumes: @@ -9732,6 +9518,11 @@ liquid_handler.prcxi: description: Resource ID title: Id type: string + machine_name: + default: '' + description: Machine this resource belongs to + title: Machine Name + type: string model: additionalProperties: true description: Resource model @@ -9795,6 +9586,14 @@ liquid_handler.prcxi: - rounded_rectangle title: Cross Section Type type: string + extra: + anyOf: + - additionalProperties: true + type: object + - type: 'null' + default: null + description: Extra data + title: Extra layout: default: x-y description: Resource layout @@ -9915,39 +9714,22 @@ liquid_handler.prcxi: goal: tip_racks: tip_racks goal_default: - tip_racks: - - category: '' - children: [] - config: '' - data: '' - id: '' - name: '' - parent: '' - pose: - orientation: - w: 1.0 - x: 0.0 - y: 0.0 - z: 0.0 - position: - x: 0.0 - y: 0.0 - z: 0.0 - sample_id: '' - type: '' + tip_racks: [] handles: {} placeholder_keys: tip_racks: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: - properties: {} - required: [] + additionalProperties: true title: LiquidHandlerSetTipRack_Feedback type: object goal: + additionalProperties: false properties: tip_racks: items: @@ -10021,22 +9803,17 @@ liquid_handler.prcxi: - pose - config - data - title: tip_racks type: object type: array - required: - - tip_racks title: LiquidHandlerSetTipRack_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: LiquidHandlerSetTipRack_Result type: object required: @@ -10069,20 +9846,22 @@ liquid_handler.prcxi: description: '' properties: feedback: + additionalProperties: false properties: current_status: type: string progress: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number transferred_volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number - required: - - progress - - transferred_volume - - current_status title: Transfer_Feedback type: object goal: + additionalProperties: false properties: amount: type: string @@ -10095,31 +9874,27 @@ liquid_handler.prcxi: rinsing_solvent: type: string rinsing_volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number solid: type: boolean time: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number to_vessel: type: string viscous: type: boolean volume: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number - required: - - from_vessel - - to_vessel - - volume - - amount - - time - - viscous - - rinsing_solvent - - rinsing_volume - - rinsing_repeats - - solid title: Transfer_Goal type: object result: + additionalProperties: false properties: message: type: string @@ -10127,10 +9902,6 @@ liquid_handler.prcxi: type: string success: type: boolean - required: - - success - - message - - return_info title: Transfer_Result type: object required: @@ -10163,8 +9934,7 @@ liquid_handler.prcxi: targets: null tip_racks: null touch_tip: false - use_channels: - - 0 + use_channels: [] handles: input: - data_key: sources @@ -10197,12 +9967,15 @@ liquid_handler.prcxi: sources: unilabos_resources targets: unilabos_resources tip_racks: unilabos_resources - result: {} + result: + return_info: return_info + success: success schema: description: '' properties: feedback: {} goal: + additionalProperties: false properties: asp_flow_rates: items: @@ -10222,8 +9995,6 @@ liquid_handler.prcxi: type: array delays: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array dis_flow_rates: @@ -10242,6 +10013,8 @@ liquid_handler.prcxi: type: number type: array mix_liquid_height: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number mix_rate: maximum: 2147483647 @@ -10276,7 +10049,6 @@ liquid_handler.prcxi: - x - y - z - title: offsets type: object type: array sources: @@ -10351,7 +10123,6 @@ liquid_handler.prcxi: - pose - config - data - title: sources type: object type: array spread: @@ -10429,7 +10200,6 @@ liquid_handler.prcxi: - pose - config - data - title: targets type: object type: array tip_racks: @@ -10504,7 +10274,6 @@ liquid_handler.prcxi: - pose - config - data - title: tip_racks type: object type: array touch_tip: @@ -10512,8 +10281,6 @@ liquid_handler.prcxi: type: boolean use_channels: items: - maximum: 2147483647 - minimum: -2147483648 type: integer type: array required: @@ -10829,11 +10596,13 @@ liquid_handler.revvity: action_value_mappings: run: feedback: + gantt: gantt status: status goal: + file_path: file_path params: params resource: resource - wf_name: file_path + wf_name: wf_name goal_default: params: '' resource: @@ -10858,27 +10627,29 @@ liquid_handler.revvity: type: '' wf_name: '' handles: {} + placeholder_keys: {} result: + return_info: return_info success: success schema: description: '' properties: feedback: + additionalProperties: false properties: gantt: type: string status: type: string - required: - - status - - gantt title: WorkStationRun_Feedback type: object goal: + additionalProperties: false properties: params: type: string resource: + additionalProperties: false properties: category: type: string @@ -10897,16 +10668,26 @@ liquid_handler.revvity: parent: type: string pose: + additionalProperties: false properties: orientation: + additionalProperties: false properties: w: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -10916,12 +10697,19 @@ liquid_handler.revvity: title: orientation type: object position: + additionalProperties: false properties: x: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number y: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number z: + maximum: 1.7976931348623157e+308 + minimum: -1.7976931348623157e+308 type: number required: - x @@ -10953,21 +10741,15 @@ liquid_handler.revvity: type: object wf_name: type: string - required: - - wf_name - - params - - resource title: WorkStationRun_Goal type: object result: + additionalProperties: false properties: return_info: type: string success: type: boolean - required: - - return_info - - success title: WorkStationRun_Result type: object required: @@ -10996,7 +10778,7 @@ liquid_handler.revvity: success: type: boolean required: - - success - status + - success type: object version: 1.0.0