Process Chain and Process Step Feedback

The manufacturing process chain consists of numerous process steps. The calculated values for process times and cost are based on 3D Sparks database and may differ from reality. To teach the algorithm adapt to real world scenarios, it is important to feedback actual values, which may be done via API.

Process Step Feedback (PUT)

Adjust values of a single process step.

Form Data
ParameterDescriptionTypeUnitValid Values
setup_timeTime required to manually setup the machine*floath0 – 100000
process_timeMachine* occupation.floath0 – 100000
unloading_timeTime required to manually unload the machine* till the next setup cycle can be started.floath0 – 100000
machine_hourly_rateMachine hourly rate of the involved machine*float€/h0 – 100000
staff_time_factorPercentage of the process time the machine* has to be supervised by personell.float0 – 1.0
leadtimeLead time added by this process step.intd0 – 100000

One of these values will suffice. Post the one with the greatest confidence. The other two will be calculated using the given parts per job or lot size depending on the context:

ParameterDescriptionTypeUnitValid Values
cost_ppTotal process step cost per part.float0 – 100000
cost_pjTotal process step cost per job.float0 – 100000
cost_plTotal process step cost per lot.float0 – 100000

One of these values will suffice. Post the one with the greatest confidence. The other two will be calculated using the given parts per job or lot size depending on the context:

ParameterDescriptionTypeUnitValid Values
labor_ppTotal labor time per part.floath0 – 100000
labor_pjTotal labor time per job.floath0 – 100000
labor_plTotal labor time per lot.floath0 – 100000

One of these values will suffice. Post the one with the greatest confidence. The other two will be calculated using the given parts per job or lot size depending on the context:

ParameterDescriptionTypeUnitValid Values
mac_t_ppTotal machine occupation per part.floath0 – 100000
mac_t_pjTotal machine occupation per lot.floath0 – 100000
mac_t_plTotal machine occupation per job.floath0 – 100000
Return Data

Returns the edited process step:

{
    "key": 1,
    "process_step_id": "d0805cb4cc9e41a5bc872ec81bad7206",
    "acronym": "slm_data_prp",
    "name": "Data Preparation",
    "tech": "additive_manufacturing",
    "prc_acronym": "slm",
    "step_type": "pre",
    "obligatory": true,
    "calc_lvl": "lot",
    "setup_time": 1,
    "process_time": 2,
    "unloading_time": 3,
    "machine_hourly_rate": 4,
    "staff_time_factor": 5,
    "cost": {
        "cost_pp": 1.1,
        "cost_pj": 1.33,
        "cost_pl": 45.225
    },
    "labor": {
        "labor_pp": "01:12",
        "labor_pj": "00:01",
        "labor_pl": "00:45"
    },
    "mac_t": {
        "mac_t_pp": "01:18",
        "mac_t_pj": "00:01",
        "mac_t_pl": "00:45"
    },
    "cost_bd": {
        "cost_bd_pp_pre": 0.09,
        "cost_bd_pp_main": 0,
        "cost_bd_pp_post": 0,
        "cost_bd_pp_mat": 0
    },
    "leadtime": 6,
    "order": 60
}
Usage
# PUT "https://platform.3dspark.de/api/v1/process-step-feedback/<process_step_id>/"

let formData = {
  "setup_time": 1,
  "process_time": 2,
  "unloading_time": 3,
  "machine_hourly_rate": 4,
  "staff_time_factor": 5,
  "leadtime": 6,
  "cost_pp": 1.1,
  // "cost_pj": 1,
  // "cost_pl": 1,
  "labor_pp": 1.2,
  // "labor_pj": 1,
  // "labor_pl": 1,
  "mac_t_pp": 1.3,
  // "mac_t_pj": 1,
  // "mac_t_pl": 1,
}

this.axiosInstance
  .put("/api/v1/process-step-feedback/d0805cb4cc9e41a5bc872ec81bad7206/", formData)
  .then((response) => {
    console.log(response.data);
    this.button1Result = response.data['message'];
  });

Process Chain Feedback (PUT)

Adjust values of the holistic process chain.

Form Data
ParameterDescriptionTypeUnitValid Values
leadtimeLead time added by this process step.intd0 – 100000

One of these values will suffice. Post the one with the greatest confidence. The other two will be calculated using the given parts per job or lot size depending on the context:

ParameterDescriptionTypeUnitValid Values
market_price_ppTotal market price per part.float0 – 100000
market_price_pjTotal market price per job.float0 – 100000
market_price_plTotal market price per lot.float0 – 100000

One of these values will suffice. Post the one with the greatest confidence. The other two will be calculated using the given parts per job or lot size depending on the context:

ParameterDescriptionTypeUnitValid Values
cost_ppTotal process step cost per part.float0 – 100000
cost_pjTotal process step cost per job.float0 – 100000
cost_plTotal process step cost per lot.float0 – 100000

One of these values will suffice. Post the one with the greatest confidence. The other two will be calculated using the given parts per job or lot size depending on the context:

ParameterDescriptionTypeUnitValid Values
labor_ppTotal labor time per part.floath0 – 100000
labor_pjTotal labor time per job.floath0 – 100000
labor_plTotal labor time per lot.floath0 – 100000

One of these values will suffice. Post the one with the greatest confidence. The other two will be calculated using the given parts per job or lot size depending on the context:

ParameterDescriptionTypeUnitValid Values
mac_t_ppTotal machine occupation per part.floath0 – 100000
mac_t_pjTotal machine occupation per lot.floath0 – 100000
mac_t_plTotal machine occupation per job.floath0 – 100000
Return Data

Returns the edited process step:

{
    "tech": "additive_manufacturing",
    "name": "SLM | 316L",
    "process_chain_id": "80532f35129d47659ba63691b823cf4d",
    "process_chain_stat": {...},
    "material_name": "316L",
    "prc": "Selective Laserbeam Melting",
    "prc_acronym": "slm",
    "mat_id": "d8a93dd106de48b1ad299437ff13a28e",
    "machine_name": "SLM 500",
    "machine_bld_size_x": 250,
    "machine_bld_size_y": 500,
    "machine_bld_size_z": 500,
    "mac_id": "8ab36fd1d20b49379ffee898cf2883bf",
    "fits_mac": true,
    "part_mass": 1949.09222561993,
    "sup_srf_area": 14.251663942216208,
    "sup_vol_full": 20.320529874786008,
    "sup_vol_real": 2.032052987478601,
    "sup_mass": 16.154821250454876,
    "rot_x_cost": 338.3663506195423,
    "rot_y_cost": 158.55899929204682,
    "rot_z_cost": 9.69426513639457,
    "rot_cost_euler": {
        "x": -154.07367439792347,
        "y": 15.83460253578514,
        "z": 162.49532993555314
    },
    "or_bb_x": 81.97025871666426,
    "or_bb_y": 90.91858364685575,
    "or_bb_z": 91.95759686546165,
    "parts_pj": 15,
    "bld_h": 96.95759686546165,
    "n_lyr": 2155,
    "leadtime": 0,
    "cost_ini_pp": 1270.2534092484589,
    "cost": {
        "cost_pp": 1.1,
        "cost_pj": 1.2,
        "cost_pl": 1.3
    },
    "cost_bd": {
        "cost_bd_pp_pre": 0.09,
        "cost_bd_pp_main": 985.0560409073936,
        "cost_bd_pp_post": 35.82,
        "cost_bd_pp_mat": 130.83906512972013
    },
    "labor": {
        "labor_pp": "02:06",
        "labor_pj": "02:12",
        "labor_pl": "02:18"
    },
    "mac_t": {
        "mac_t_pp": "03:06",
        "mac_t_pj": "03:12",
        "mac_t_pl": "03:18"
    },
    "break_even": {...},
    "feasibility": {
        "thickness": {
            "t_min": 54.72135543823242,
            "t_lim_min": 0.5,
            "t_min_chk": true,
            "t_max_chk": null,
            "t_max": 67.98809051513672
        },
        "gap_size": {
            "gap_min": 49.304962158203125,
            "gap_lim_min": 0.5,
            "gap_min_chk": true
        },
        "support": {
            "support_chk": false
        },
        "size": {
            "fits_mac": true,
            "size_min": 79.19655636210463,
            "size_max": 92.43813674371825,
            "size_lim_min": 7,
            "size_lim_max": 1000,
            "size_min_chk": true,
            "size_max_chk": true
        }
    },
    "has_scaling": false,
    "scale": [
        1,
        1,
        1
    ],
    "scaled_bounding_box": [
        86.50474166870117,
        109.58368682861328,
        91.1187717244029
    ],
    "scaled_minimal_bounding_box": [
        79.19655636210463,
        90.68146499756651,
        92.43813674371825
    ],
    "scaled_oriented_bounding_box": [
        81.97025871666426,
        90.91858364685575,
        91.95759686546165
    ],
    "scaled_part_volume": 245.16883341131197,
    "nst_style": "alone",
    "opt_style": "alpha_beta_gamma",
    "costing_config_id": "cde72c29705e4d96a8568396c00adc74",
    "margin_user_value": null,
    "float_feasibilities": {
        "overall": 33.333333333333336,
        "technical": 100,
        "leadtime": 0,
        "economic": 0
    },
    "market_price": {
        "market_price_pp": {
            "user": 4.1,
            "calculated": 1727.7140340556707
        },
        "market_price_pj": {
            "user": 4.2,
            "calculated": 25407.45322140692
        },
        "market_price_pl": {
            "user": 4.3,
            "calculated": 863853.2670278352
        }
    },
    "process_steps": {
        "d0805cb4cc9e41a5bc872ec81bad7206": {...},
        "f9ed5cdc880343b8baad723e8d2d3029": {...},
        "e40e5996d99d41ec93af1bfe627876e5": {...},
        "5509544bf2744578b92a4b087b33995f": {...},
        "06ce640807104e099d387ff3bc0d94f3": {...},
        "a79b5da2e752445283348d76b26b729d": {...}
    }
}
Usage
# PUT "https://platform.3dspark.de/api/v1/process-chain-feedback/<process_chain_id>/"

let formData = {
  "leadtime": 0,
  "cost_pp": 1.1,
  // "cost_pj": 1.2,
  // "cost_pl": 1.3,
  "labor_pp": 2.1,
  // "labor_pj": 2.2,
  // "labor_pl": 2.3,
  "mac_t_pp": 3.1,
  // "mac_t_pj": 3.2,
  // "mac_t_pl": 3.3,
  "market_price_pp": 4.1,
  // "market_price_pj": 4.2,
  // "market_price_pl": 4.3,
}

this.axiosInstance
  .put("/api/v1/process-chain-feedback/80532f35129d47659ba63691b823cf4d/", formData)
  .then((response) => {
    console.log(response.data);

  });

* “machine” in this context means the devices and workspace needed to perform this process step. This includes PC equipment, tools, workbenches, special machinery and any device that has an impact expressed via “machine hourly rate”.