Run the interactive online version of this notebook (takes 1-2 minutes to load): Binder badge

Describing GMAW processes

Imports

[2]:
import asdf
import weldx
from weldx import Q_
from weldx.asdf.extension import WeldxAsdfExtension, WeldxExtension
from weldx.core import TimeSeries as TS
from weldx.welding.processes import GmawProcess

spray arc processes

[3]:
# Note: For some reasons, using integers in Q_ fails upon ASDF reading !
params_spray = dict(
    wire_feedrate=Q_(10.0, "m/min"),
    voltage=TS(data=Q_([40.0,20.0], "V"),time=Q_([0.0,10.0],"s")),
    impedance=Q_(10.0, "percent"),
    characteristic=Q_(5,"V/A"),
)
process_spray = GmawProcess(
    "spray", "CLOOS", "Quinto", params_spray, tag="CLOOS/spray_arc"
)

pulsed arc processes

UI modulation

[4]:
params_pulse = dict(
    wire_feedrate=Q_(10.0, "m/min"),
    pulse_voltage=Q_(40.0, "V"),
    pulse_duration=Q_(5.0, "ms"),
    pulse_frequency=Q_(100.0, "Hz"),
    base_current=Q_(60.0, "A"),
)
process_pulse = GmawProcess(
    "pulse",
    "CLOOS",
    "Quinto",
    params_pulse,
    tag="CLOOS/pulse",
    meta={"modulation": "UI"},
)

II modulation

[5]:
params_pulse_II = dict(
    wire_feedrate=Q_(10.0, "m/min"),
    pulse_current=Q_(0.3, "kA"),
    pulse_duration=Q_(5.0, "ms"),
    pulse_frequency=Q_(100.0, "Hz"),
    base_current=Q_(60.0, "A"),
)
process_pulse_II = GmawProcess(
    "pulse",
    "CLOOS",
    "Quinto",
    params_pulse_II,
    tag="CLOOS/pulse",
    meta={"modulation": "II"},
)

using ASDF

[6]:
tree = {"spray": process_spray, "pulse_UI": process_pulse, "pulse_II": process_pulse_II}
[7]:
buffer = weldx.asdf.util._write_buffer(tree)
weldx.asdf.util.notebook_fileprinter(buffer)
[7]:
#ASDF 1.0.0
#ASDF_STANDARD 1.5.0
%YAML 1.1
%TAG ! tag:stsci.edu:asdf/
--- !core/asdf-1.1.0
asdf_library: !core/software-1.0.0 {author: Space Telescope Science Institute, homepage: 'http://github.com/spacetelescope/asdf',
  name: asdf, version: 2.7.3}
history:
  extensions:
  - !core/extension_metadata-1.0.0
    extension_class: asdf.extension.BuiltinExtension
    software: !core/software-1.0.0 {name: asdf, version: 2.7.3}
  - !core/extension_metadata-1.0.0
    extension_class: weldx.asdf.extension.WeldxExtension
    software: !core/software-1.0.0 {name: weldx, version: 0.2.3.dev50+ga977bb0}
pulse_II: !<tag:weldx.bam.de:weldx/process/CLOOS/pulse-1.0.0>
  base_process: pulse
  manufacturer: CLOOS
  meta: {modulation: II}
  parameters:
    base_current: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: ampere
      value: 60.0
    pulse_current: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: kiloampere
      value: 0.3
    pulse_duration: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: millisecond
      value: 5.0
    pulse_frequency: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: hertz
      value: 100.0
    wire_feedrate: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: meter / minute
      value: 10.0
  power_source: Quinto
  tag: CLOOS/pulse
pulse_UI: !<tag:weldx.bam.de:weldx/process/CLOOS/pulse-1.0.0>
  base_process: pulse
  manufacturer: CLOOS
  meta: {modulation: UI}
  parameters:
    base_current: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: ampere
      value: 60.0
    pulse_duration: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: millisecond
      value: 5.0
    pulse_frequency: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: hertz
      value: 100.0
    pulse_voltage: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: volt
      value: 40.0
    wire_feedrate: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: meter / minute
      value: 10.0
  power_source: Quinto
  tag: CLOOS/pulse
spray: !<tag:weldx.bam.de:weldx/process/CLOOS/spray_arc-1.0.0>
  base_process: spray
  manufacturer: CLOOS
  parameters:
    characteristic: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: volt / ampere
      value: 5
    impedance: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: percent
      value: 10.0
    voltage: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      &id001 values: &id002 !core/ndarray-1.0.0
        source: 1
        datatype: float64
        byteorder: little
        shape: [2]
      time: !<tag:weldx.bam.de:weldx/time/timedeltaindex-1.0.0>
        values: !core/ndarray-1.0.0
          source: 0
          datatype: int64
          byteorder: little
          shape: [2]
        start: !<tag:weldx.bam.de:weldx/time/timedelta-1.0.0> {value: P0DT0H0M0S}
        end: !<tag:weldx.bam.de:weldx/time/timedelta-1.0.0> {value: P0DT0H0M10S}
        min: !<tag:weldx.bam.de:weldx/time/timedelta-1.0.0> {value: P0DT0H0M0S}
        max: !<tag:weldx.bam.de:weldx/time/timedelta-1.0.0> {value: P0DT0H0M10S}
      unit: volt
      shape: [2]
      interpolation: linear
      *id001 : *id002
    wire_feedrate: !<tag:weldx.bam.de:weldx/core/time_series-1.0.0>
      unit: meter / minute
      value: 10.0
  power_source: Quinto
  tag: CLOOS/spray_arc
...
[8]:
data = weldx.asdf.util._read_buffer(buffer)

Generated by nbsphinx from a Jupyter notebook.