diff --git a/unilabos/registry/devices/liquid_handler.yaml b/unilabos/registry/devices/liquid_handler.yaml index df38dbb8..8c3543cd 100644 --- a/unilabos/registry/devices/liquid_handler.yaml +++ b/unilabos/registry/devices/liquid_handler.yaml @@ -155,7 +155,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array reagent_sources: @@ -194,7 +194,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -208,12 +208,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -230,7 +230,7 @@ liquid_handler: - pose - config - data - title: Resource + title: reagent_sources type: object type: array spread: @@ -271,7 +271,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -285,12 +285,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -307,7 +307,7 @@ liquid_handler: - pose - config - data - title: Resource + title: targets type: object type: array use_channels: @@ -436,7 +436,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array resources: @@ -475,7 +475,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -489,12 +489,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -511,7 +511,7 @@ liquid_handler: - pose - config - data - title: Resource + title: resources type: object type: array spread: @@ -826,7 +826,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array resources: @@ -865,7 +865,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -879,12 +879,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -901,7 +901,7 @@ liquid_handler: - pose - config - data - title: Resource + title: resources type: object type: array spread: @@ -1007,7 +1007,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array tip_spots: @@ -1046,7 +1046,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1060,12 +1060,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1082,7 +1082,7 @@ liquid_handler: - pose - config - data - title: Resource + title: tip_spots type: object type: array use_channels: @@ -1173,7 +1173,7 @@ liquid_handler: - x - y - z - title: Point + title: offset type: object tip_rack: properties: @@ -1210,7 +1210,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1224,12 +1224,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1246,7 +1246,7 @@ liquid_handler: - pose - config - data - title: Resource + title: tip_rack type: object required: - tip_rack @@ -1352,7 +1352,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array targets: @@ -1391,7 +1391,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1405,12 +1405,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1427,7 +1427,7 @@ liquid_handler: - pose - config - data - title: Resource + title: targets type: object type: array required: @@ -1552,7 +1552,7 @@ liquid_handler: - x - y - z - title: Point + title: destination_offset type: object drop_direction: type: string @@ -1571,7 +1571,7 @@ liquid_handler: - x - y - z - title: Point + title: intermediate_locations type: object type: array lid: @@ -1609,7 +1609,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1623,12 +1623,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1645,7 +1645,7 @@ liquid_handler: - pose - config - data - title: Resource + title: lid type: object pickup_direction: type: string @@ -1665,7 +1665,7 @@ liquid_handler: - x - y - z - title: Point + title: resource_offset type: object to: properties: @@ -1702,7 +1702,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1716,12 +1716,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1738,7 +1738,7 @@ liquid_handler: - pose - config - data - title: Resource + title: to type: object required: - lid @@ -1869,7 +1869,7 @@ liquid_handler: - x - y - z - title: Point + title: destination_offset type: object drop_direction: type: string @@ -1888,7 +1888,7 @@ liquid_handler: - x - y - z - title: Point + title: intermediate_locations type: object type: array pickup_direction: @@ -1907,7 +1907,7 @@ liquid_handler: - x - y - z - title: Point + title: pickup_offset type: object plate: properties: @@ -1944,7 +1944,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1958,12 +1958,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1980,7 +1980,7 @@ liquid_handler: - pose - config - data - title: Resource + title: plate type: object put_direction: type: string @@ -1996,7 +1996,7 @@ liquid_handler: - x - y - z - title: Point + title: resource_offset type: object to: properties: @@ -2033,7 +2033,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2047,12 +2047,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2069,7 +2069,7 @@ liquid_handler: - pose - config - data - title: Resource + title: to type: object required: - plate @@ -2181,7 +2181,7 @@ liquid_handler: - x - y - z - title: Point + title: destination_offset type: object drop_direction: type: string @@ -2200,7 +2200,7 @@ liquid_handler: - x - y - z - title: Point + title: intermediate_locations type: object type: array pickup_direction: @@ -2244,7 +2244,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2258,12 +2258,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2280,7 +2280,7 @@ liquid_handler: - pose - config - data - title: Resource + title: resource type: object resource_offset: properties: @@ -2294,7 +2294,7 @@ liquid_handler: - x - y - z - title: Point + title: resource_offset type: object to: properties: @@ -2308,7 +2308,7 @@ liquid_handler: - x - y - z - title: Point + title: to type: object required: - resource @@ -2421,7 +2421,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2435,12 +2435,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2457,7 +2457,7 @@ liquid_handler: - pose - config - data - title: Resource + title: well type: object required: - well @@ -2540,7 +2540,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array tip_spots: @@ -2579,7 +2579,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2593,12 +2593,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2615,7 +2615,7 @@ liquid_handler: - pose - config - data - title: Resource + title: tip_spots type: object type: array use_channels: @@ -2701,7 +2701,7 @@ liquid_handler: - x - y - z - title: Point + title: offset type: object tip_rack: properties: @@ -2738,7 +2738,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2752,12 +2752,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2774,7 +2774,7 @@ liquid_handler: - pose - config - data - title: Resource + title: tip_rack type: object required: - tip_rack @@ -2925,7 +2925,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array sources: @@ -2964,7 +2964,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2978,12 +2978,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3000,7 +3000,7 @@ liquid_handler: - pose - config - data - title: Resource + title: sources type: object type: array spread: @@ -3054,7 +3054,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3068,12 +3068,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3090,7 +3090,7 @@ liquid_handler: - pose - config - data - title: Resource + title: waste_liquid type: object required: - vols @@ -3255,7 +3255,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array sources: @@ -3294,7 +3294,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3308,12 +3308,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3330,7 +3330,7 @@ liquid_handler: - pose - config - data - title: Resource + title: sources type: object type: array spread: @@ -3384,7 +3384,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3398,12 +3398,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3420,7 +3420,7 @@ liquid_handler: - pose - config - data - title: Resource + title: waste_liquid type: object required: - vols @@ -3650,7 +3650,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3664,12 +3664,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3686,7 +3686,7 @@ liquid_handler: - pose - config - data - title: Resource + title: source type: object target: properties: @@ -3723,7 +3723,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3737,12 +3737,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3759,7 +3759,7 @@ liquid_handler: - pose - config - data - title: Resource + title: target type: object volume: type: number @@ -4107,7 +4107,7 @@ liquid_handler: - x - y - z - title: Point + title: offsets type: object type: array sources: @@ -4146,7 +4146,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4160,12 +4160,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4182,7 +4182,7 @@ liquid_handler: - pose - config - data - title: Resource + title: sources type: object type: array spread: @@ -4223,7 +4223,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4237,12 +4237,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4259,7 +4259,7 @@ liquid_handler: - pose - config - data - title: Resource + title: targets type: object type: array tip_racks: @@ -4298,7 +4298,7 @@ liquid_handler: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4312,12 +4312,12 @@ liquid_handler: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4334,7 +4334,7 @@ liquid_handler: - pose - config - data - title: Resource + title: tip_racks type: object type: array touch_tip: @@ -5099,7 +5099,7 @@ liquid_handler.biomek: - x - y - z - title: Point + title: offsets type: object type: array sources: @@ -5138,7 +5138,7 @@ liquid_handler.biomek: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5152,12 +5152,12 @@ liquid_handler.biomek: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5174,7 +5174,7 @@ liquid_handler.biomek: - pose - config - data - title: Resource + title: sources type: object type: array spread: @@ -5215,7 +5215,7 @@ liquid_handler.biomek: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5229,12 +5229,12 @@ liquid_handler.biomek: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5251,7 +5251,7 @@ liquid_handler.biomek: - pose - config - data - title: Resource + title: targets type: object type: array tip_racks: @@ -5290,7 +5290,7 @@ liquid_handler.biomek: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5304,12 +5304,12 @@ liquid_handler.biomek: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5326,7 +5326,7 @@ liquid_handler.biomek: - pose - config - data - title: Resource + title: tip_racks type: object type: array touch_tip: @@ -5555,7 +5555,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array reagent_sources: @@ -5594,7 +5594,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5608,12 +5608,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5630,7 +5630,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: reagent_sources type: object type: array spread: @@ -5671,7 +5671,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5685,12 +5685,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5707,7 +5707,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: targets type: object type: array use_channels: @@ -5837,7 +5837,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array resources: @@ -5876,7 +5876,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5890,12 +5890,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5912,7 +5912,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: resources type: object type: array spread: @@ -6255,7 +6255,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array resources: @@ -6294,7 +6294,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -6308,12 +6308,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -6330,7 +6330,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: resources type: object type: array spread: @@ -6435,7 +6435,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array tip_spots: @@ -6474,7 +6474,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -6488,12 +6488,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -6510,7 +6510,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: tip_spots type: object type: array use_channels: @@ -6626,7 +6626,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array targets: @@ -6665,7 +6665,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -6679,12 +6679,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -6701,7 +6701,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: targets type: object type: array required: @@ -6790,7 +6790,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array tip_spots: @@ -6829,7 +6829,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -6843,12 +6843,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -6865,7 +6865,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: tip_spots type: object type: array use_channels: @@ -7027,7 +7027,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array sources: @@ -7066,7 +7066,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -7080,12 +7080,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -7102,7 +7102,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: sources type: object type: array spread: @@ -7156,7 +7156,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -7170,12 +7170,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -7192,7 +7192,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: waste_liquid type: object required: - vols @@ -7315,7 +7315,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -7329,12 +7329,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -7351,7 +7351,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: wells type: object type: array required: @@ -7448,7 +7448,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -7462,12 +7462,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -7484,7 +7484,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: tip_racks type: object type: array required: @@ -7800,7 +7800,7 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: offsets type: object type: array sources: @@ -7839,7 +7839,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -7853,12 +7853,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -7875,7 +7875,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: sources type: object type: array spread: @@ -7916,7 +7916,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -7930,12 +7930,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -7952,7 +7952,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: targets type: object type: array tip_racks: @@ -7991,7 +7991,7 @@ liquid_handler.prcxi: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -8005,12 +8005,12 @@ liquid_handler.prcxi: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -8027,7 +8027,7 @@ liquid_handler.prcxi: - pose - config - data - title: Resource + title: tip_racks type: object type: array touch_tip: @@ -8220,7 +8220,7 @@ liquid_handler.revvity: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -8234,12 +8234,12 @@ liquid_handler.revvity: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -8256,7 +8256,7 @@ liquid_handler.revvity: - pose - config - data - title: Resource + title: resource type: object wf_name: type: string diff --git a/unilabos/registry/devices/organic_miscellaneous.yaml b/unilabos/registry/devices/organic_miscellaneous.yaml index 1ac2ac28..025fad59 100644 --- a/unilabos/registry/devices/organic_miscellaneous.yaml +++ b/unilabos/registry/devices/organic_miscellaneous.yaml @@ -336,7 +336,7 @@ separator.homemade: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -350,12 +350,12 @@ separator.homemade: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -372,7 +372,7 @@ separator.homemade: - pose - config - data - title: Resource + title: vessel type: object required: - vessel diff --git a/unilabos/registry/devices/robot_gripper.yaml b/unilabos/registry/devices/robot_gripper.yaml index f3ee1415..0e79395f 100644 --- a/unilabos/registry/devices/robot_gripper.yaml +++ b/unilabos/registry/devices/robot_gripper.yaml @@ -533,7 +533,7 @@ gripper.mock: required: - position - max_effort - title: GripperCommand + title: command type: object required: - command diff --git a/unilabos/registry/devices/robot_linear_motion.yaml b/unilabos/registry/devices/robot_linear_motion.yaml index 4cc4eaf9..1aeb8612 100644 --- a/unilabos/registry/devices/robot_linear_motion.yaml +++ b/unilabos/registry/devices/robot_linear_motion.yaml @@ -139,12 +139,12 @@ linear_motion.grbl: required: - sec - nanosec - title: Time + title: stamp type: object required: - stamp - frame_id - title: Header + title: header type: object pose: properties: @@ -163,7 +163,7 @@ linear_motion.grbl: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -177,17 +177,17 @@ linear_motion.grbl: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object required: - header - pose - title: PoseStamped + title: current_pose type: object distance_remaining: type: number @@ -204,7 +204,7 @@ linear_motion.grbl: required: - sec - nanosec - title: Duration + title: estimated_time_remaining type: object navigation_time: properties: @@ -219,7 +219,7 @@ linear_motion.grbl: required: - sec - nanosec - title: Duration + title: navigation_time type: object number_of_poses_remaining: maximum: 32767 @@ -262,12 +262,12 @@ linear_motion.grbl: required: - sec - nanosec - title: Time + title: stamp type: object required: - stamp - frame_id - title: Header + title: header type: object pose: properties: @@ -286,7 +286,7 @@ linear_motion.grbl: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -300,17 +300,17 @@ linear_motion.grbl: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object required: - header - pose - title: PoseStamped + title: poses type: object type: array required: @@ -323,7 +323,7 @@ linear_motion.grbl: result: properties: {} required: [] - title: Empty + title: result type: object required: - result @@ -371,12 +371,12 @@ linear_motion.grbl: required: - sec - nanosec - title: Time + title: stamp type: object required: - stamp - frame_id - title: Header + title: header type: object position: type: number @@ -406,7 +406,7 @@ linear_motion.grbl: required: - sec - nanosec - title: Duration + title: min_duration type: object position: type: number diff --git a/unilabos/registry/devices/temperature.yaml b/unilabos/registry/devices/temperature.yaml index f83d921a..bb717b56 100644 --- a/unilabos/registry/devices/temperature.yaml +++ b/unilabos/registry/devices/temperature.yaml @@ -362,7 +362,7 @@ heaterstirrer.dalong: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -376,12 +376,12 @@ heaterstirrer.dalong: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -398,7 +398,7 @@ heaterstirrer.dalong: - pose - config - data - title: Resource + title: vessel type: object required: - vessel diff --git a/unilabos/registry/devices/virtual_device.yaml b/unilabos/registry/devices/virtual_device.yaml index d97d6251..f94bdad5 100644 --- a/unilabos/registry/devices/virtual_device.yaml +++ b/unilabos/registry/devices/virtual_device.yaml @@ -145,7 +145,7 @@ virtual_centrifuge: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -159,12 +159,12 @@ virtual_centrifuge: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -181,7 +181,7 @@ virtual_centrifuge: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -446,7 +446,7 @@ virtual_column: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -460,12 +460,12 @@ virtual_column: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -482,7 +482,7 @@ virtual_column: - pose - config - data - title: Resource + title: from_vessel type: object pct1: type: string @@ -531,7 +531,7 @@ virtual_column: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -545,12 +545,12 @@ virtual_column: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -567,7 +567,7 @@ virtual_column: - pose - config - data - title: Resource + title: to_vessel type: object required: - from_vessel @@ -850,7 +850,7 @@ virtual_filter: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -864,12 +864,12 @@ virtual_filter: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -886,7 +886,7 @@ virtual_filter: - pose - config - data - title: Resource + title: filtrate_vessel type: object stir: type: boolean @@ -929,7 +929,7 @@ virtual_filter: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -943,12 +943,12 @@ virtual_filter: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -965,7 +965,7 @@ virtual_filter: - pose - config - data - title: Resource + title: vessel type: object volume: type: number @@ -1071,8 +1071,8 @@ virtual_filter: - status - progress - current_temp - - filtered_volume - current_status + - filtered_volume - message - max_temp - max_stir_speed @@ -1455,7 +1455,7 @@ virtual_heatchill: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1469,12 +1469,12 @@ virtual_heatchill: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1491,7 +1491,7 @@ virtual_heatchill: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -1610,7 +1610,7 @@ virtual_heatchill: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1624,12 +1624,12 @@ virtual_heatchill: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1646,7 +1646,7 @@ virtual_heatchill: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -1747,7 +1747,7 @@ virtual_heatchill: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1761,12 +1761,12 @@ virtual_heatchill: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1783,7 +1783,7 @@ virtual_heatchill: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -2397,7 +2397,7 @@ virtual_rotavap: required: - sec - nanosec - title: Duration + title: time_remaining type: object time_spent: properties: @@ -2412,7 +2412,7 @@ virtual_rotavap: required: - sec - nanosec - title: Duration + title: time_spent type: object required: - status @@ -2468,7 +2468,7 @@ virtual_rotavap: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2482,12 +2482,12 @@ virtual_rotavap: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2504,7 +2504,7 @@ virtual_rotavap: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -2889,7 +2889,7 @@ virtual_separator: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2903,12 +2903,12 @@ virtual_separator: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2925,7 +2925,7 @@ virtual_separator: - pose - config - data - title: Resource + title: from_vessel type: object product_phase: type: string @@ -2964,7 +2964,7 @@ virtual_separator: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2978,12 +2978,12 @@ virtual_separator: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3000,7 +3000,7 @@ virtual_separator: - pose - config - data - title: Resource + title: product_vessel type: object purpose: type: string @@ -3043,7 +3043,7 @@ virtual_separator: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3057,12 +3057,12 @@ virtual_separator: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3079,7 +3079,7 @@ virtual_separator: - pose - config - data - title: Resource + title: separation_vessel type: object settling_time: type: number @@ -3128,7 +3128,7 @@ virtual_separator: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3142,12 +3142,12 @@ virtual_separator: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3164,7 +3164,7 @@ virtual_separator: - pose - config - data - title: Resource + title: to_vessel type: object vessel: properties: @@ -3201,7 +3201,7 @@ virtual_separator: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3215,12 +3215,12 @@ virtual_separator: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3237,7 +3237,7 @@ virtual_separator: - pose - config - data - title: Resource + title: vessel type: object volume: type: string @@ -3276,7 +3276,7 @@ virtual_separator: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3290,12 +3290,12 @@ virtual_separator: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3312,7 +3312,7 @@ virtual_separator: - pose - config - data - title: Resource + title: waste_phase_to_vessel type: object waste_vessel: properties: @@ -3349,7 +3349,7 @@ virtual_separator: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3363,12 +3363,12 @@ virtual_separator: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3385,7 +3385,7 @@ virtual_separator: - pose - config - data - title: Resource + title: waste_vessel type: object required: - vessel @@ -3951,7 +3951,7 @@ virtual_solid_dispenser: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3965,12 +3965,12 @@ virtual_solid_dispenser: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3987,7 +3987,7 @@ virtual_solid_dispenser: - pose - config - data - title: Resource + title: vessel type: object viscous: type: boolean @@ -4332,7 +4332,7 @@ virtual_stirrer: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4346,12 +4346,12 @@ virtual_stirrer: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4368,7 +4368,7 @@ virtual_stirrer: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -4492,7 +4492,7 @@ virtual_stirrer: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4506,12 +4506,12 @@ virtual_stirrer: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4528,7 +4528,7 @@ virtual_stirrer: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -4639,7 +4639,7 @@ virtual_stirrer: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4653,12 +4653,12 @@ virtual_stirrer: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4675,7 +4675,7 @@ virtual_stirrer: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -4704,6 +4704,7 @@ virtual_stirrer: status_types: current_speed: float current_vessel: str + device_info: dict is_stirring: bool max_speed: float min_speed: float @@ -4738,6 +4739,8 @@ virtual_stirrer: type: number current_vessel: type: string + device_info: + type: object is_stirring: type: boolean max_speed: @@ -4759,6 +4762,7 @@ virtual_stirrer: - remaining_time - max_speed - min_speed + - device_info type: object version: 1.0.0 virtual_transfer_pump: diff --git a/unilabos/registry/devices/work_station.yaml b/unilabos/registry/devices/work_station.yaml index c2f02484..5f20f450 100644 --- a/unilabos/registry/devices/work_station.yaml +++ b/unilabos/registry/devices/work_station.yaml @@ -103,7 +103,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -117,12 +117,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -139,7 +139,7 @@ workstation: - pose - config - data - title: Resource + title: from_repo type: object from_repo_position: type: string @@ -178,7 +178,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -192,12 +192,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -214,7 +214,7 @@ workstation: - pose - config - data - title: Resource + title: to_repo type: object to_repo_position: type: string @@ -390,7 +390,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -404,12 +404,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -426,7 +426,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object viscous: type: boolean @@ -579,7 +579,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -593,12 +593,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -615,7 +615,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -752,7 +752,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -766,12 +766,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -788,7 +788,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -892,7 +892,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_remaining type: object time_spent: properties: @@ -907,7 +907,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_spent type: object required: - status @@ -961,7 +961,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -975,12 +975,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -997,7 +997,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object volume: type: number @@ -1138,7 +1138,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1152,12 +1152,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1174,7 +1174,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object volume: type: number @@ -1345,7 +1345,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1359,12 +1359,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1381,7 +1381,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object volume: type: string @@ -1514,7 +1514,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1528,12 +1528,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1550,7 +1550,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - compound @@ -1641,7 +1641,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_remaining type: object time_spent: properties: @@ -1656,7 +1656,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_spent type: object required: - status @@ -1704,7 +1704,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1718,12 +1718,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1740,7 +1740,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -1841,7 +1841,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_remaining type: object time_spent: properties: @@ -1856,7 +1856,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_spent type: object required: - status @@ -1912,7 +1912,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -1926,12 +1926,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -1948,7 +1948,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -2117,7 +2117,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2131,12 +2131,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2153,7 +2153,7 @@ workstation: - pose - config - data - title: Resource + title: filtrate_vessel type: object stir: type: boolean @@ -2196,7 +2196,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2210,12 +2210,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2232,7 +2232,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object volume: type: number @@ -2431,7 +2431,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2445,12 +2445,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2467,7 +2467,7 @@ workstation: - pose - config - data - title: Resource + title: filter_through type: object from_vessel: properties: @@ -2504,7 +2504,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2518,12 +2518,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2540,7 +2540,7 @@ workstation: - pose - config - data - title: Resource + title: from_vessel type: object residence_time: type: number @@ -2579,7 +2579,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2593,12 +2593,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2615,7 +2615,7 @@ workstation: - pose - config - data - title: Resource + title: to_vessel type: object required: - from_vessel @@ -2771,7 +2771,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2785,12 +2785,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2807,7 +2807,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -2938,7 +2938,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -2952,12 +2952,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -2974,7 +2974,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -3087,7 +3087,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3101,12 +3101,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3123,7 +3123,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -3245,7 +3245,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3259,12 +3259,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3281,7 +3281,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - temp @@ -3434,7 +3434,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_remaining type: object time_spent: properties: @@ -3449,7 +3449,7 @@ workstation: required: - sec - nanosec - title: Duration + title: time_spent type: object required: - status @@ -3501,7 +3501,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3515,12 +3515,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3537,7 +3537,7 @@ workstation: - pose - config - data - title: Resource + title: from_vessel type: object rate_spec: type: string @@ -3590,7 +3590,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3604,12 +3604,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3626,7 +3626,7 @@ workstation: - pose - config - data - title: Resource + title: to_vessel type: object transfer_flowrate: type: number @@ -3784,7 +3784,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3798,12 +3798,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3820,7 +3820,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object volume: type: string @@ -3939,7 +3939,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -3953,12 +3953,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -3975,7 +3975,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - solvent @@ -4136,7 +4136,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4150,12 +4150,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4172,7 +4172,7 @@ workstation: - pose - config - data - title: Resource + title: from_vessel type: object pct1: type: string @@ -4221,7 +4221,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4235,12 +4235,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4257,7 +4257,7 @@ workstation: - pose - config - data - title: Resource + title: to_vessel type: object required: - from_vessel @@ -4542,7 +4542,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4556,12 +4556,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4578,7 +4578,7 @@ workstation: - pose - config - data - title: Resource + title: from_vessel type: object product_phase: type: string @@ -4617,7 +4617,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4631,12 +4631,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4653,7 +4653,7 @@ workstation: - pose - config - data - title: Resource + title: product_vessel type: object purpose: type: string @@ -4696,7 +4696,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4710,12 +4710,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4732,7 +4732,7 @@ workstation: - pose - config - data - title: Resource + title: separation_vessel type: object settling_time: type: number @@ -4781,7 +4781,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4795,12 +4795,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4817,7 +4817,7 @@ workstation: - pose - config - data - title: Resource + title: to_vessel type: object vessel: properties: @@ -4854,7 +4854,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4868,12 +4868,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4890,7 +4890,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object volume: type: string @@ -4929,7 +4929,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -4943,12 +4943,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -4965,7 +4965,7 @@ workstation: - pose - config - data - title: Resource + title: waste_phase_to_vessel type: object waste_vessel: properties: @@ -5002,7 +5002,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5016,12 +5016,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5038,7 +5038,7 @@ workstation: - pose - config - data - title: Resource + title: waste_vessel type: object required: - vessel @@ -5182,7 +5182,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5196,12 +5196,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5218,7 +5218,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -5358,7 +5358,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5372,12 +5372,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5394,7 +5394,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -5517,7 +5517,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5531,12 +5531,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5553,7 +5553,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object required: - vessel @@ -5856,7 +5856,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5870,12 +5870,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5892,7 +5892,7 @@ workstation: - pose - config - data - title: Resource + title: filtrate_vessel type: object mass: type: string @@ -5947,7 +5947,7 @@ workstation: - y - z - w - title: Quaternion + title: orientation type: object position: properties: @@ -5961,12 +5961,12 @@ workstation: - x - y - z - title: Point + title: position type: object required: - position - orientation - title: Pose + title: pose type: object sample_id: type: string @@ -5983,7 +5983,7 @@ workstation: - pose - config - data - title: Resource + title: vessel type: object volume: type: string @@ -6146,26 +6146,6 @@ workstation.example: - work_station class: action_value_mappings: - auto-append_resource: - feedback: {} - goal: {} - goal_default: {} - handles: {} - result: {} - schema: - description: '' - properties: - feedback: {} - goal: - properties: {} - required: [] - type: object - result: {} - required: - - goal - title: append_resource参数 - type: object - type: UniLabJsonCommand auto-create_resource: feedback: {} goal: {} @@ -6218,6 +6198,62 @@ workstation.example: title: create_resource参数 type: object type: UniLabJsonCommand + auto-transfer_bottle: + feedback: {} + goal: {} + goal_default: + base_plate: null + tip_rack: null + handles: {} + result: {} + schema: + description: '' + properties: + feedback: {} + goal: + properties: + base_plate: + type: string + tip_rack: + type: string + required: + - tip_rack + - base_plate + type: object + result: {} + required: + - goal + title: transfer_bottle参数 + type: object + type: UniLabJsonCommand + auto-trigger_resource_update: + feedback: {} + goal: {} + goal_default: + from_plate: null + to_base_plate: null + handles: {} + result: {} + schema: + description: '' + properties: + feedback: {} + goal: + properties: + from_plate: + type: string + to_base_plate: + type: string + required: + - from_plate + - to_base_plate + type: object + result: {} + required: + - goal + title: trigger_resource_update参数 + type: object + type: UniLabJsonCommand module: unilabos.ros.nodes.presets.workstation:WorkStationExample status_types: {} type: ros2 diff --git a/unilabos/registry/registry.py b/unilabos/registry/registry.py index 3cb29379..7ca71ea9 100644 --- a/unilabos/registry/registry.py +++ b/unilabos/registry/registry.py @@ -24,12 +24,11 @@ DEFAULT_PATHS = [Path(__file__).absolute().parent] class Registry: def __init__(self, registry_paths=None): import ctypes + try: import unilabos_msgs except ImportError: - logger.error( - "[UniLab Registry] unilabos_msgs模块未找到,请确保已根据官方文档安装unilabos_msgs包。" - ) + logger.error("[UniLab Registry] unilabos_msgs模块未找到,请确保已根据官方文档安装unilabos_msgs包。") sys.exit(1) try: ctypes.CDLL(str(Path(unilabos_msgs.__file__).parent / "unilabos_msgs_s__rosidl_typesupport_c.pyd")) @@ -219,7 +218,7 @@ class Registry: yaml.dump(complete_data, f, allow_unicode=True, default_flow_style=False, Dumper=NoAliasDumper) self.resource_type_registry.update(data) - logger.trace( + logger.trace( # type: ignore f"[UniLab Registry] Resource-{current_resource_number} File-{i+1}/{len(files)} " + f"Add {list(data.keys())}" ) @@ -406,7 +405,7 @@ class Registry: devices_path = abs_path / "devices" device_comms_path = abs_path / "device_comms" files = list(devices_path.glob("*.yaml")) + list(device_comms_path.glob("*.yaml")) - logger.trace( + logger.trace( # type: ignore f"[UniLab Registry] devices: {devices_path.exists()}, device_comms: {device_comms_path.exists()}, " + f"total: {len(files)}" ) diff --git a/unilabos/registry/resources/organic/workstation.yaml b/unilabos/registry/resources/organic/workstation.yaml index 440f06c7..5250dfc9 100644 --- a/unilabos/registry/resources/organic/workstation.yaml +++ b/unilabos/registry/resources/organic/workstation.yaml @@ -1,12 +1,12 @@ -get_workstation_plate_resource: - category: - - workstation - class: - module: unilabos.ros.nodes.presets.workstation:get_workstation_plate_resource - type: pylabrobot - description: workstation example resource - handles: [] - icon: '' - init_param_schema: {} - registry_type: resource - version: 1.0.0 +#get_workstation_plate_resource: +# category: +# - workstation +# class: +# module: unilabos.devices.workstation.workstation_base:get_workstation_plate_resource +# type: pylabrobot +# description: workstation example resource +# handles: [] +# icon: '' +# init_param_schema: {} +# registry_type: resource +# version: 1.0.0 diff --git a/unilabos/ros/msgs/message_converter.py b/unilabos/ros/msgs/message_converter.py index b0716aab..ae8d80ee 100644 --- a/unilabos/ros/msgs/message_converter.py +++ b/unilabos/ros/msgs/message_converter.py @@ -508,7 +508,7 @@ def convert_from_ros_msg_with_mapping(ros_msg: Any, value_mapping: Dict[str, str Python字典 """ data: Dict[str, Any] = {} - + # # 🔧 添加调试信息 # print(f"🔍 convert_from_ros_msg_with_mapping 开始") # print(f"🔍 ros_msg 类型: {type(ros_msg)}") @@ -517,14 +517,14 @@ def convert_from_ros_msg_with_mapping(ros_msg: Any, value_mapping: Dict[str, str # print("-" * 60) for msg_name, attr_name in value_mapping.items(): - # print(f"🔍 处理映射: {msg_name} -> {attr_name}") - + # print(f"🔍 处理映射: {msg_name} -> {attr_name}") + msg_path = msg_name.split(".") current = ros_msg - + # print(f"🔍 msg_path: {msg_path}") # print(f"🔍 current 初始值: {current} (类型: {type(current)})") - + try: if not attr_name.endswith("[]"): # 处理单值映射 @@ -537,7 +537,7 @@ def convert_from_ros_msg_with_mapping(ros_msg: Any, value_mapping: Dict[str, str else: # print(f"❌ 属性 '{name}' 不存在于 {type(current)}") break - + converted_value = convert_from_ros_msg(current) # print(f"🔍 转换后的值: {converted_value} (类型: {type(converted_value)})") data[attr_name] = converted_value @@ -585,13 +585,13 @@ def convert_from_ros_msg_with_mapping(ros_msg: Any, value_mapping: Dict[str, str # print(f"❌ 映射转换错误 {msg_name} -> {attr_name}: {e}") logger.debug(f"Mapping conversion error for {msg_name} -> {attr_name}") continue - + # print(f"🔍 当前 data 状态: {data}") # print("-" * 40) - #print(f"🔍 convert_from_ros_msg_with_mapping 结束") - #print(f"🔍 最终 data: {data}") - #print("=" * 60) + # print(f"🔍 convert_from_ros_msg_with_mapping 结束") + # print(f"🔍 最终 data: {data}") + # print("=" * 60) return data @@ -646,25 +646,28 @@ basic_type_map = { } -def ros_field_type_to_json_schema(type_info: Type | str, slot_type: str = None) -> Dict[str, Any]: +def ros_field_type_to_json_schema( + type_info: Type | str, field_name: str +) -> Dict[str, Any]: """ 将 ROS 字段类型转换为 JSON Schema 类型定义 Args: type_info: ROS 类型 slot_type: ROS 类型 + field_name: 字段名,用于设置复杂类型的title Returns: 对应的 JSON Schema 类型定义 """ if isinstance(type_info, UnboundedSequence): - return {"type": "array", "items": ros_field_type_to_json_schema(type_info.value_type)} + return {"type": "array", "items": ros_field_type_to_json_schema(type_info.value_type, field_name)} # type: ignore if isinstance(type_info, NamespacedType): cls_name = ".".join(type_info.namespaces) + ":" + type_info.name type_class = msg_converter_manager.get_class(cls_name) - return ros_field_type_to_json_schema(type_class) + return ros_field_type_to_json_schema(type_class, field_name) elif isinstance(type_info, BasicType): - return ros_field_type_to_json_schema(type_info.typename) + return ros_field_type_to_json_schema(type_info.typename, field_name) elif isinstance(type_info, UnboundedString): return basic_type_map["string"] elif isinstance(type_info, str): @@ -681,8 +684,9 @@ def ros_field_type_to_json_schema(type_info: Type | str, slot_type: str = None) }, "required": ["sec", "nanosec"], } + return {} else: - return ros_message_to_json_schema(type_info) + return ros_message_to_json_schema(type_info, field_name) # # 处理数组类型 # if field_type.endswith('[]'): # item_type = field_type[:-2] @@ -706,28 +710,28 @@ def ros_field_type_to_json_schema(type_info: Type | str, slot_type: str = None) # return {'type': 'object', 'description': f'未知类型: {field_type}'} -def ros_message_to_json_schema(msg_class: Any) -> Dict[str, Any]: +def ros_message_to_json_schema(msg_class: Any, field_name: str) -> Dict[str, Any]: """ 将 ROS 消息类转换为 JSON Schema Args: msg_class: ROS 消息类 + field_name: 字段名,用于设置schema的title,如果为None则使用类名 Returns: 对应的 JSON Schema 定义 """ schema = {"type": "object", "properties": {}, "required": []} - # 获取类名作为标题 - if hasattr(msg_class, "__name__"): - schema["title"] = msg_class.__name__ + # 优先使用字段名作为标题,否则使用类名 + schema["title"] = field_name # 获取消息的字段和字段类型 try: for ind, slot_info in enumerate(msg_class._fields_and_field_types.items()): slot_name, slot_type = slot_info type_info = msg_class.SLOT_TYPES[ind] - field_schema = ros_field_type_to_json_schema(type_info, slot_type) + field_schema = ros_field_type_to_json_schema(type_info, slot_name) schema["properties"][slot_name] = field_schema schema["required"].append(slot_name) # if hasattr(msg_class, 'get_fields_and_field_types'): @@ -786,15 +790,15 @@ def ros_action_to_json_schema(action_class: Any, description="") -> Dict[str, An "properties": { "goal": { # 'description': 'Action 目标 - 从客户端发送到服务器', - **ros_message_to_json_schema(action_class.Goal) + **ros_message_to_json_schema(action_class.Goal, action_class.Goal.__name__) }, "feedback": { # 'description': 'Action 反馈 - 执行过程中从服务器发送到客户端', - **ros_message_to_json_schema(action_class.Feedback) + **ros_message_to_json_schema(action_class.Feedback, action_class.Feedback.__name__) }, "result": { # 'description': 'Action 结果 - 完成后从服务器发送到客户端', - **ros_message_to_json_schema(action_class.Result) + **ros_message_to_json_schema(action_class.Result, action_class.Result.__name__) }, }, "required": ["goal"],