diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 9c5a133ca..93e74fab5 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -9,12 +9,14 @@ changes ======= - Updated the outdated tutorial about the `LocalCoordinateSystem` [:pull:`775`] +- ``weld_seam`` is now a required field in the ``multi_pass_weld`` schema [:pull:`790`] fixes ===== - `MathematicalExpression` now uses SciPy and NumPy in numerical function evaluation. This enables it to use advanced integration methods and fixes lengths computation of `DynamicShapeSegment` [:pull:`770`]. +- Fix errors in tutorial about quality standards [:pull:`777`] ******************** 0.6.1 (19.05.2022) @@ -34,7 +36,6 @@ fixes - Fix interactive ``view_tree`` display [:pull:`756`]. - Increase ``mypy`` coverage and update type hints and GH action [:pull:`753`]. -- Fix errors in tutorial about quality standards [:pull:`777`] dependencies ============ diff --git a/weldx/schemas/weldx.bam.de/weldx/datamodels/multi_pass_weld-0.1.0.yaml b/weldx/schemas/weldx.bam.de/weldx/datamodels/multi_pass_weld-0.1.0.yaml index 8a546b0ee..fd1276afc 100644 --- a/weldx/schemas/weldx.bam.de/weldx/datamodels/multi_pass_weld-0.1.0.yaml +++ b/weldx/schemas/weldx.bam.de/weldx/datamodels/multi_pass_weld-0.1.0.yaml @@ -50,17 +50,18 @@ definitions: type: object properties: - workpiece: - description: | - The workpiece to be welded defined by the base metal and the geometric description of the weld seam. - type: object + workpiece: + description: | + The workpiece to be welded defined by the base metal and the geometric description of the weld seam. + type: object + + weld_seam: + description: | + List of weld seams composing the final weldment. + type: array + items: + $ref: "#/definitions/weld_seam" - weld_seam: - description: | - List of weld seams composing the final weldment. - type: array - items: - $ref: "#/definitions/weld_seam" examples: - diff --git a/weldx/schemas/weldx.bam.de/weldx/datamodels/multi_pass_weld-0.1.1.yaml b/weldx/schemas/weldx.bam.de/weldx/datamodels/multi_pass_weld-0.1.1.yaml new file mode 100644 index 000000000..7f995772c --- /dev/null +++ b/weldx/schemas/weldx.bam.de/weldx/datamodels/multi_pass_weld-0.1.1.yaml @@ -0,0 +1,147 @@ +%YAML 1.1 +--- +$schema: "http://stsci.edu/schemas/yaml-schema/draft-01" +id: "asdf://weldx.bam.de/weldx/schemas/datamodels/multi_pass_weld-0.1.1" + +title: | + A generic multi-layer GMAW weldment. +description: | + This schema describes a welding application consisting of multiple passes. + + The individual weldments are hierarchically grouped into beads, layers and seams. This is reflected by a nested array + with the name `weld_seam` and a nesting depth of 4 (seam, layer, bead, weldment). + + Each weldment may contain the following data: + + - process + - TCP + - welding_current + - welding_voltage + + The `process` entry contains all relevant data that describes the welding process. A comprehensive list of all + optional and required fields can be [found here](https://weldx.readthedocs.io/projects/weldx-standard/en/latest/generated/schemas/process/terms-0.1.0.html#base_process). + `TCP` describes the trajectory of the torch during the weldment process. The TCP data of all weldments must be + defined in relation to the workpiece coordinate system. + The welding_current and welding_voltage entries refer to signals containing the final measurement data of corresponding dimensions [current] and [voltage]. + + > Note that this schema is currently work in progress and some optional data might become required in the future. + +definitions: + weld_seam: + description: | + A single weld seam consisting of one or more layers. + type: array + items: + $ref: "#/definitions/weld_layer" + + weld_layer: + description: | + A single weld layer consisting of one or more beads. + type: array + items: + $ref: "#/definitions/weld_bead" + + weld_bead: + description: | + A single weld bead consisting of one or more weldments. + type: array + items: + $ref: "./terms-0.1.0#/weldment" + +type: object +properties: + workpiece: + description: | + The workpiece to be welded defined by the base metal and the geometric description of the weld seam. + type: object + + weld_seam: + description: | + List of weld seams composing the final weldment. + type: array + items: + $ref: "#/definitions/weld_seam" +required: [weld_seam] + + +examples: + - + - Two seams with a single layer and bead, but the first seam has two weldments while the second has only one. + - | + ! + weld_seam: + - - - - TCP: ! + time: ! + values: !core/ndarray-1.0.0 + data: [0, 30000000000] + datatype: int64 + shape: [2] + start: ! P0DT0H0M0S + end: ! P0DT0H0M30S + min: ! P0DT0H0M0S + max: ! P0DT0H0M30S + coordinates: ! + name: coordinates + dimensions: [c] + dtype: millimeter + data: !core/ndarray-1.0.0 + data: [[0, 0, 0], [50, 0, 0]] + datatype: float64 + shape: [2, 3] + welding_voltage: ! + units: ! volt + value: 30 + welding_current: ! + units: ! ampere + value: 250 + - - TCP: ! + time: ! + values: !core/ndarray-1.0.0 + data: [0, 30000000000] + datatype: int64 + shape: [2] + start: ! P0DT0H0M0S + end: ! P0DT0H0M30S + min: ! P0DT0H0M0S + max: ! P0DT0H0M30S + coordinates: ! + name: coordinates + dimensions: [c] + dtype: millimeter + data: !core/ndarray-1.0.0 + data: [[0, 5, 0], [50, 5, 0]] + datatype: float64 + shape: [2, 3] + welding_voltage: ! + units: ! volt + value: 30 + welding_current: ! + units: ! ampere + value: 250 + - - - - TCP: ! + time: ! + values: !core/ndarray-1.0.0 + data: [0, 30000000000] + datatype: int64 + shape: [2] + start: ! P0DT0H0M0S + end: ! P0DT0H0M30S + min: ! P0DT0H0M0S + max: ! P0DT0H0M30S + coordinates: ! + name: coordinates + dimensions: [c] + dtype: millimeter + data: !core/ndarray-1.0.0 + data: [[0, 2.5, 5], [50, 2.5, 5]] + datatype: float64 + shape: [2, 3] + welding_voltage: ! + units: ! volt + value: 30 + welding_current: ! + units: ! ampere + value: 350