diff --git a/Cell/Cell-v1.json b/Cell/Cell-v1.json index e8658ee..ff5b427 100644 --- a/Cell/Cell-v1.json +++ b/Cell/Cell-v1.json @@ -1,41 +1,46 @@ { - "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Cell-v1.json", - "$schema": "https://json-schema.org/draft/2020-12/schema", - "title": "Cell", - "type": "object", - "properties": { - "Schema_UUID": { - "const": "aa8f98ad-2c6e-4fef-86d1-f01b576b35ed" + "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Cell-v1.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Cell", + "type": "object", + "properties": { + "Schema_UUID": { + "const": "aa8f98ad-2c6e-4fef-86d1-f01b576b35ed" + }, + "Instance_UUID": { + "description": "The unique identifier for this object. (A UUID specified by RFC4122).", + "type": "string", + "format": "uuid" + }, + "Safety": { + "type": "object", + "properties": { + "Emergency_Stops": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9_]*$": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Emergency_Stop-v1.json" + } + } }, - "Instance_UUID": { - "description": "The unique identifier for this object. (A UUID specified by RFC4122).", - "type": "string", - "format": "uuid" + "Protective_Stops": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9_]*$": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Protective_Stop-v1.json" + } + } }, - "Safety": { - "type": "object", - "properties": { - "Emergency_Stops": { - "type": "object", - "patternProperties": { - "^[a-zA-Z0-9_]*$": { - "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Emergency_Stop-v1.json" - } - } - }, - "Protective_Stops": { - "type": "object", - "patternProperties": { - "^[a-zA-Z0-9_]*$": { - "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Protective_Stop-v1.json" - } - } - } + "Doors": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9_]*$": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Door-v1.json" } + } } - }, - "required": [ - "Schema_UUID", - "Instance_UUID" - ] -} \ No newline at end of file + } + } + }, + "required": ["Schema_UUID", "Instance_UUID"] +} diff --git a/Cell/Door-v1.json b/Cell/Door-v1.json new file mode 100644 index 0000000..de2a370 --- /dev/null +++ b/Cell/Door-v1.json @@ -0,0 +1,50 @@ +{ + "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Cell/Door-v1.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "type": "object", + "properties": { + "Schema_UUID": { + "const": "2497b25d-c768-4e1f-8b80-024127c17487" + }, + "Instance_UUID": { + "description": "The unique identifier for this object. (A UUID specified by RFC4122).", + "type": "string", + "format": "uuid" + }, + "Locked": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Closed": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": ["Schema_UUID", "Instance_UUID"] +} diff --git a/Robot/Fastening_Robot/Fastening_Axis-v1.json b/Robot/Fastening_Robot/Fastening_Axis-v1.json new file mode 100644 index 0000000..dd21b19 --- /dev/null +++ b/Robot/Fastening_Robot/Fastening_Axis-v1.json @@ -0,0 +1,1114 @@ +{ + "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/Fastening_Axis-v1.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Fastening Axis", + "type": "object", + "properties": { + "Schema_UUID": { + "const": "f7458af9-1377-490f-bc70-55315cb09bf9" + }, + "Instance_UUID": { + "description": "The unique identifier for this object. (A UUID specified by RFC4122).", + "type": "string", + "format": "uuid" + }, + "Torque_Data_Logging": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Torque_Data_Ready": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Torque_Data_Overflow": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "MC_POWER": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Stop_Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Start_Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Status": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_RESET": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Restart": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_HALT": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Deceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Jerk": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Abort_Acceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_MOVEJOG": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Acceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Deceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Jerk": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Position_Controlled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Jog_Backward": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Jog_Forward": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "In_Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_TORQUELIMITING": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Limit": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "In_Limitation": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "In_Clamping": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_MOVEVELOCITY": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Acceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Deceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Jerk": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Direction": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Current": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Position_Controlled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "In_Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "Base_Axis": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Axis-v1.json" + } + }, + "required": ["Schema_UUID", "Instance_UUID", "Axis_Type"] +} diff --git a/Robot/Fastening_Robot/Fastening_End_Effector-v1.json b/Robot/Fastening_Robot/Fastening_End_Effector-v1.json new file mode 100644 index 0000000..8e4f801 --- /dev/null +++ b/Robot/Fastening_Robot/Fastening_End_Effector-v1.json @@ -0,0 +1,1306 @@ +{ + "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/Fastening_End_Effector-v1.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Fastening End Effector", + "type": "object", + "properties": { + "Schema_UUID": { + "const": "50718563-6da6-40ae-8929-44e170f83096" + }, + "Instance_UUID": { + "description": "The unique identifier for this object. (A UUID specified by RFC4122).", + "type": "string", + "format": "uuid" + }, + "End_Effector_Index": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Sparkplug_Type": { + "enum": ["UInt8", "UInt16", "UInt32"] + }, + "Value": { + "type": "integer" + }, + "Documentation": { + "default": "End effector index (specific to this end effector position)." + } + } + } + ] + }, + "Non_Fastening_Axes": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9_]*$": { + "$comment": "An axis name or identifier - can be any regular string", + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/Non_Fastening_Axis-v1.json" + } + } + }, + "Fastening_Axes": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9_]*$": { + "$comment": "An axis name or identifier - can be any regular string", + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/Fastening_Axis-v1.json" + } + } + }, + "Pose": { + "$comment": "The position of the end effector", + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Pose-v1.json" + }, + "Vision_System": { + "$comment": "The position of the end effector", + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Vision_System-v1.json" + }, + "Current_State": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "Current_Step": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "In_Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Auto": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Required": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Enabled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Healthy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Ident_OK": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "On_Robot": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "Manual": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Required": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "On_Robot": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Ident_OK": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "Job_Manual": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute_m": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Request": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Request_Echo": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "Job_Auto": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Request": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "Execute_m": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Request_Echo": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "Servo_Drives": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Load_Supply_Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Logic_Supply_Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Load_Supply_Enabled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Logic_Supply_Enabled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Healthy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "IPU": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Supply_Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Supply_Enabled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Healthy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "Inspection_Fastener": { + "type": "object", + "properties": { + "Pass": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Fastener_Score": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Fastener_OK": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Fastener_Break_Off_Score": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Fastener_Diameter": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + } + }, + "required": [] + }, + "STO": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "SBC": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Ring_Light": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Override": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Enabled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "ILDs": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9_]*$": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/ILD-v1.json" + } + } + }, + "Correction_Fastener_Find": { + "type": "object", + "properties": { + "Fastener_Score": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Fastener_Present": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Fastener_Head_Dia": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Fastener_Whole_Dia": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Pass": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "X": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Y": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + } + } + }, + "Correction_Hole_Find": { + "type": "object", + "properties": { + "Hole_Clear": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Hole_Score": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Inner_Hole_Dia": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Outer_Csnk_Dia": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Pass": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "X": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Y": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + } + } + }, + "Correction_Laser": { + "type": "object", + "properties": { + "Above_Crossover": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Rx": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Ry": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Valid": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Z_Corr": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + } + } + } + }, + "required": ["Schema_UUID", "Instance_UUID"] +} diff --git a/Robot/Fastening_Robot/ILD-v1.json b/Robot/Fastening_Robot/ILD-v1.json new file mode 100644 index 0000000..212aa81 --- /dev/null +++ b/Robot/Fastening_Robot/ILD-v1.json @@ -0,0 +1,402 @@ +{ + "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/ILD-v1.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "type": "object", + "properties": { + "Schema_UUID": { + "const": "90be902e-3ad1-44f9-80c7-cf323ee21f59" + }, + "Instance_UUID": { + "description": "The unique identifier for this object. (A UUID specified by RFC4122).", + "type": "string", + "format": "uuid" + }, + "Ctrl": { + "type": "object", + "properties": { + "Enable_Laser": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Healthy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Mastered": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Laser_On": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "Counter": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Sensor_Status": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "Timestamp": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Frequency": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Unlinearized_Gravity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Exposure_Time": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Intensity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Peak_Before_POI": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Peak_After_POI": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "No_Peak": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Dist_Before_SMR": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Dist_After_EMR": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Meas_Value_Triggered": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Led_Status": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["UInt8"] + } + } + } + ] + }, + "Distance_Measured_mm": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Distance": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": ["Schema_UUID", "Instance_UUID"] +} diff --git a/Robot/Fastening_Robot/Non_Fastening_Axis-v1.json b/Robot/Fastening_Robot/Non_Fastening_Axis-v1.json new file mode 100644 index 0000000..8d13f11 --- /dev/null +++ b/Robot/Fastening_Robot/Non_Fastening_Axis-v1.json @@ -0,0 +1,1456 @@ +{ + "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/Non_Fastening_Axis-v1.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Non-fastening Axis", + "type": "object", + "properties": { + "Schema_UUID": { + "const": "777dd941-f426-4355-8130-e144530b1376" + }, + "Instance_UUID": { + "description": "The unique identifier for this object. (A UUID specified by RFC4122).", + "type": "string", + "format": "uuid" + }, + "MC_POWER": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Stop_Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Start_Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Status": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_RESET": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Restart": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_HOME": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Position": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + }, + "Sensor": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Reference_Mark_Position": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_HALT": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Deceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Jerk": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Abort_Acceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_MOVEABSOLUTE": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Position": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Acceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Deceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Jerk": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Direction": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_MOVEJOG": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Acceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Deceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Jerk": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Position_Controlled": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Jog_Backward": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Jog_Forward": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "In_Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_MOVERELATIVE": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Execute": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Distance": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Velocity": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Acceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Deceleration": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Jerk": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Done": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Command_Aborted": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "MC_TORQUELIMITING": { + "type": "object", + "properties": { + "Ctrl": { + "type": "object", + "properties": { + "Enable": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Limit": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + }, + "Mode": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Int8"] + } + } + } + ] + } + }, + "required": [] + }, + "Status": { + "type": "object", + "properties": { + "Busy": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "Error_Id": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Bytes"] + } + } + } + ] + }, + "Error": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "In_Clamping": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "In_Limitation": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] + } + } + } + ] + }, + "LinearDriveTorque": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["FloatLE"] + } + } + } + ] + } + }, + "required": [] + } + }, + "required": [] + }, + "Base_Axis": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Axis-v1.json" + } + }, + "required": ["Schema_UUID", "Instance_UUID", "Axis_Type"] +} diff --git a/Robot/Fastening_Robot/Robot-v1.json b/Robot/Fastening_Robot/Robot-v1.json new file mode 100644 index 0000000..0f56800 --- /dev/null +++ b/Robot/Fastening_Robot/Robot-v1.json @@ -0,0 +1,32 @@ +{ + "$id": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Fastening_Robot/Robot-v1.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "DELTA Robot", + "type": "object", + "properties": { + "Schema_UUID": { + "const": "6b0383f5-e6ea-44d9-8e82-39aa64d1a0d5" + }, + "Instance_UUID": { + "description": "The unique identifier for this object. (A UUID specified by RFC4122).", + "type": "string", + "format": "uuid" + }, + "Device_Information": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Device_Information-v1.json" + }, + "Base_Robot": { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Robot/Robot-v1.json" + }, + "Fastening_End_Effectors": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9_]*$": { + "$comment": "An end effector position identifier", + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Fastening_Robot/Fastening_End_Effector-v1.json" + } + } + } + }, + "required": ["Schema_UUID", "Instance_UUID", "Device_Information", "Axes"] +} diff --git a/Vision/Vision_System-v1.json b/Vision/Vision_System-v1.json index 8608984..9d154d9 100644 --- a/Vision/Vision_System-v1.json +++ b/Vision/Vision_System-v1.json @@ -75,9 +75,24 @@ "default": "The success status of the inspection" }, "Sparkplug_Type": { - "enum": [ - "Boolean" - ] + "enum": ["Boolean"] + } + } + } + ] + }, + "Inspection_Complete": { + "allOf": [ + { + "$ref": "https://raw.githubusercontent.com/AMRC-FactoryPlus/schemas/main/Common/Metric-v1.json" + }, + { + "properties": { + "Documentation": { + "default": "" + }, + "Sparkplug_Type": { + "enum": ["Boolean"] } } } @@ -94,12 +109,7 @@ "default": "The X position of the pattern in the frame" }, "Sparkplug_Type": { - "enum": [ - "FloatLE", - "FloatBE", - "DoubleLE", - "DoubleBE" - ] + "enum": ["FloatLE", "FloatBE", "DoubleLE", "DoubleBE"] } } } @@ -116,20 +126,12 @@ "default": "The Y position of the pattern in the frame" }, "Sparkplug_Type": { - "enum": [ - "FloatLE", - "FloatBE", - "DoubleLE", - "DoubleBE" - ] + "enum": ["FloatLE", "FloatBE", "DoubleLE", "DoubleBE"] } } } ] } }, - "required": [ - "Schema_UUID", - "Instance_UUID" - ] + "required": ["Schema_UUID", "Instance_UUID"] }