From 9112ce3a4dd1e5505ada685617e55e161af542da Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 9 May 2016 18:30:51 +0200 Subject: [PATCH 1/3] JSON feat: acceleration and jerk settings per feature type (CURA-1443) --- resources/machines/fdmprinter.json | 333 +++++++++++++++++++++++++++++ 1 file changed, 333 insertions(+) diff --git a/resources/machines/fdmprinter.json b/resources/machines/fdmprinter.json index 23f5a67af9..f8d00d1b5b 100644 --- a/resources/machines/fdmprinter.json +++ b/resources/machines/fdmprinter.json @@ -1010,6 +1010,339 @@ "max_value_warning": "300", "visible": false, "global_only": true + }, + + + "acceleration_enabled": { + "label": "Enable Acceleration Control", + "description": "Enables adjusting the print head acceleration. Increasing the accelerations can reduce printing time at the cost of print quality.", + "type": "boolean", + "default": false, + "visible": false, + "global_only": "True" + }, + "acceleration_print": { + "label": "Print Head Acceleration", + "description": "The acceleration with which printing happens.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "max_value_warning": "10000", + "min_value_warning": "100", + "default": 3000, + "visible": true, + "enabled_WTF": "acceleration_enabled", + "children": { + "acceleration_infill": { + "label": "Infill Acceleration", + "description": "The acceleration with which infill is printed.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "default": 3000, + "visible": false, + "enabled_WTF": "acceleration_enabled" + }, + "acceleration_wall": { + "label": "Wall Acceleration", + "description": "The acceleration with which the walls are printed.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "default": 3000, + "visible": false, + "enabled_WTF": "acceleration_enabled", + "children": { + "acceleration_wall_0": { + "label": "Outer Wall Acceleration", + "description": "The acceleration with which the outermost walls are printed.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "default": 3000, + "visible": false, + "enabled_WTF": "acceleration_enabled" + }, + "acceleration_wall_x": { + "label": "Inner Wall Acceleration", + "description": "The acceleration with which all inner walls are printed.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "default": 3000, + "visible": false, + "enabled_WTF": "acceleration_enabled" + } + } + }, + "acceleration_topbottom": { + "label": "Top/Bottom Acceleration", + "description": "The acceleration with which top/bottom layers are printed.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "default": 3000, + "visible": false, + "enabled_WTF": "acceleration_enabled" + }, + "acceleration_support": { + "label": "Support Acceleration", + "description": "The acceleration with which the support structure is printed.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "default": 3000, + "visible": false, + "enabled_WTF": "acceleration_enabled and support_roof_enable", + "children": { + "acceleration_support_infill": { + "label": "Support Infill Acceleration", + "description": "The acceleration with which the infill of support is printed.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "visible": false, + "enabled_WTF": "acceleration_enabled and support_enable", + "global_only": true + }, + "acceleration_support_roof": { + "label": "Support Roof Acceleration", + "description": "The acceleration with which the roofs of support are printed. Printing the support roof at lower accelerations can improve overhang quality.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "visible": false, + "enabled_WTF": "acceleration_enabled and support_roof_enable", + "global_only": true + } + } + } + } + }, + "acceleration_travel": { + "label": "Travel Acceleration", + "description": "The acceleration with which travel moves are made.", + "unit": "mm/s²", + "type": "float", + "default": 5000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "inherit_function": "acceleration_print if magic_spiralize else 5000", + "global_only": true, + "visible": true, + "enabled_WTF": "acceleration_enabled" + }, + "acceleration_layer_0": { + "label": "Initial Layer Acceleration", + "description": "The acceleration for the initial layer.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "visible": false, + "enabled_WTF": "acceleration_enabled" + }, + "acceleration_skirt": { + "label": "Skirt Acceleration", + "description": "The acceleration with which the skirt and brim are printed. Normally this is done with the initial layer acceleration, but sometimes you might want to print the skirt at a different acceleration.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "visible": false, + "inherit_function": "acceleration_layer_0", + "global_only": true, + "enabled_WTF": "acceleration_enabled" + }, + + + + "jerk_enabled": { + "label": "Enable Jerk Control", + "description": "Enables adjusting the jerk of print head when the X ar Y axis halts or starts to move. Increasing the jerk can reduce printing time at the cost of print quality.", + "type": "boolean", + "default": false, + "visible": false, + "global_only": "True" + }, + "jerk_print": { + "label": "Print Jerk", + "description": "The maximal allowed jerk of the print head when starting to move or when changing direction.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": true, + "enabled_WTF": "jerk_enabled", + "children": { + "jerk_infill": { + "label": "Infill Jerk", + "description": "The jerk with which infill is printed.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": false, + "enabled_WTF": "jerk_enabled" + }, + "jerk_wall": { + "label": "Wall Jerk", + "description": "The jerk with which the walls are printed.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": false, + "enabled_WTF": "jerk_enabled", + "children": { + "jerk_wall_0": { + "label": "Outer Wall Jerk", + "description": "The jerk with which the outermost walls are printed. Printing the outer wall at a lower jerk improves the final skin quality. However, having a large difference between the inner wall jerk and the outer wall jerk will effect quality in a negative way.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": false, + "enabled_WTF": "jerk_enabled" + }, + "jerk_wall_x": { + "label": "Inner Wall Jerk", + "description": "The jerk with which all inner walls are printed Printing the inner wall faster than the outer wall will reduce printing time. It works well to set this in between the outer wall jerk and the infill jerk.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": false, + "enabled_WTF": "jerk_enabled" + } + } + }, + "jerk_topbottom": { + "label": "Top/Bottom Jerk", + "description": "The jerk with which top/bottom layers are printed.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": false, + "enabled_WTF": "jerk_enabled" + }, + "jerk_support": { + "label": "Support Jerk", + "description": "The jerk with which the support structure is printed. Printing support at higher jerks can greatly reduce printing time. The surface quality of the support structure is not important since it is removed after printing.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": false, + "enabled_WTF": "jerk_enabled and support_roof_enable", + "children": { + "jerk_support_infill": { + "label": "Support Infill Jerk", + "description": "The jerk with which the infill of support is printed. Printing the infill at lower jerks improves stability.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "visible": false, + "enabled_WTF": "jerk_enabled and support_enable", + "global_only": true + }, + "jerk_support_roof": { + "label": "Support Roof Jerk", + "description": "The jerk with which the roofs of support are printed. Printing the support roof at lower jerks can improve overhang quality.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "visible": false, + "enabled_WTF": "jerk enabled and support_roof_enable", + "global_only": true + } + } + } + } + }, + "jerk_travel": { + "label": "Travel Jerk", + "description": "The jerk with which travel moves are made.", + "unit": "mm/s³", + "type": "float", + "default": 30, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "inherit_function": "jerk_print if magic_spiralize else 30", + "global_only": true, + "visible": true, + "enabled_WTF": "jerk_enabled" + }, + "jerk_layer_0": { + "label": "Initial Layer Jerk", + "description": "The print jerk for the initial layer. A lower value is advised to improve adhesion to the build plate.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "visible": false, + "enabled_WTF": "jerk_enabled" + }, + "jerk_skirt": { + "label": "Skirt Jerk", + "description": "The jerk with which the skirt and brim are printed. Normally this is done at the initial layer jerk, but sometimes you might want to print the skirt with a different jerk.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "visible": false, + "inherit_function": "jerk_layer_0", + "global_only": true, + "enabled_WTF": "jerk_enabled" } } }, From 1919c63f0c113127b7e5c53f0aa1c36f14c222ad Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 9 May 2016 18:48:45 +0200 Subject: [PATCH 2/3] JSON feat: prime tower and raft acceleration and jerk (CURA-1443) --- .../machines/dual_extrusion_printer.json | 34 +++++ resources/machines/fdmprinter.json | 122 +++++++++++++++++- 2 files changed, 154 insertions(+), 2 deletions(-) diff --git a/resources/machines/dual_extrusion_printer.json b/resources/machines/dual_extrusion_printer.json index 2977345bcb..ccb1d4e96c 100644 --- a/resources/machines/dual_extrusion_printer.json +++ b/resources/machines/dual_extrusion_printer.json @@ -49,6 +49,40 @@ } } }, + "acceleration_print": { + "children": { + "acceleration_prime_tower": { + "label": "Prime Tower Acceleration", + "description": "The acceleration with which the prime tower is printed.", + "unit": "mm/s²", + "type": "float", + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "default": 3000, + "visible": false, + "enabled": "prime_tower_enable and acceleration_enabled", + "global_only": true + } + } + }, + "jerk_print": { + "children": { + "jerk_prime_tower": { + "label": "Prime Tower Jerk", + "description": "The jerk with which the prime tower is printed.", + "unit": "mm/s³", + "type": "float", + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "default": 20, + "visible": false, + "enabled": "prime_tower_enable and jerk_enabled", + "global_only": true + } + } + }, "line_width": { "children": { "prime_tower_line_width": { diff --git a/resources/machines/fdmprinter.json b/resources/machines/fdmprinter.json index f8d00d1b5b..e0b19eb6b5 100644 --- a/resources/machines/fdmprinter.json +++ b/resources/machines/fdmprinter.json @@ -1022,13 +1022,13 @@ "global_only": "True" }, "acceleration_print": { - "label": "Print Head Acceleration", + "label": "Print Acceleration", "description": "The acceleration with which printing happens.", "unit": "mm/s²", "type": "float", "min_value": "0.1", - "max_value_warning": "10000", "min_value_warning": "100", + "max_value_warning": "10000", "default": 3000, "visible": true, "enabled_WTF": "acceleration_enabled", @@ -2097,6 +2097,124 @@ } } }, + + + + "raft_acceleration": { + "label": "Raft Print Acceleration", + "description": "The acceleration with which the raft is printed.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "inherit_function": "acceleration_print", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and acceleration_enabled", + "children": { + "raft_surface_acceleration": { + "label": "Raft Surface Print Acceleration", + "description": "The acceleration with which the surface raft layers are printed.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and acceleration_enabled" + }, + "raft_interface_acceleration": { + "label": "Raft Interface Print Acceleration", + "description": "The acceleration with which the interface raft layer is printed.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and acceleration_enabled" + }, + "raft_base_acceleration": { + "label": "Raft Base Print Acceleration", + "description": "The acceleration with which the base raft layer is printed.", + "unit": "mm/s²", + "type": "float", + "default": 3000, + "min_value": "0.1", + "min_value_warning": "100", + "max_value_warning": "10000", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and acceleration_enabled" + } + } + }, + + + + "raft_jerk": { + "label": "Raft Print Jerk", + "description": "The jerk with which the raft is printed.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "inherit_function": "jerk_print", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and jerk_enabled", + "children": { + "raft_surface_jerk": { + "label": "Raft Surface Print Jerk", + "description": "The jerk with which the surface raft layers are printed.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "100", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and jerk_enabled" + }, + "raft_interface_jerk": { + "label": "Raft Interface Print Jerk", + "description": "The jerk with which the interface raft layer is printed.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and jerk_enabled" + }, + "raft_base_jerk": { + "label": "Raft Base Print Jerk", + "description": "The jerk with which the base raft layer is printed.", + "unit": "mm/s³", + "type": "float", + "default": 20, + "min_value": "0.1", + "min_value_warning": "5", + "max_value_warning": "50", + "global_only": "True", + "visible": false, + "enabled": "adhesion_type == \"raft\" and jerk_enabled" + } + } + }, + + "raft_fan_speed": { "label": "Raft Fan Speed", "description": "The fan speed for the raft.", From 8785e4cedaac8f3d0454cfe2d25f776e05b5616d Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Tue, 10 May 2016 09:41:23 +0200 Subject: [PATCH 3/3] JSON fix: bug in enabled function (CURA-1443) there was a space instead of an underscore in jerk_enabled --- resources/machines/fdmprinter.json | 48 +++++++++++++++--------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/resources/machines/fdmprinter.json b/resources/machines/fdmprinter.json index e0b19eb6b5..8275ed1945 100644 --- a/resources/machines/fdmprinter.json +++ b/resources/machines/fdmprinter.json @@ -1031,7 +1031,7 @@ "max_value_warning": "10000", "default": 3000, "visible": true, - "enabled_WTF": "acceleration_enabled", + "enabled": "acceleration_enabled", "children": { "acceleration_infill": { "label": "Infill Acceleration", @@ -1043,7 +1043,7 @@ "max_value_warning": "10000", "default": 3000, "visible": false, - "enabled_WTF": "acceleration_enabled" + "enabled": "acceleration_enabled" }, "acceleration_wall": { "label": "Wall Acceleration", @@ -1055,7 +1055,7 @@ "max_value_warning": "10000", "default": 3000, "visible": false, - "enabled_WTF": "acceleration_enabled", + "enabled": "acceleration_enabled", "children": { "acceleration_wall_0": { "label": "Outer Wall Acceleration", @@ -1067,7 +1067,7 @@ "max_value_warning": "10000", "default": 3000, "visible": false, - "enabled_WTF": "acceleration_enabled" + "enabled": "acceleration_enabled" }, "acceleration_wall_x": { "label": "Inner Wall Acceleration", @@ -1079,7 +1079,7 @@ "max_value_warning": "10000", "default": 3000, "visible": false, - "enabled_WTF": "acceleration_enabled" + "enabled": "acceleration_enabled" } } }, @@ -1093,7 +1093,7 @@ "max_value_warning": "10000", "default": 3000, "visible": false, - "enabled_WTF": "acceleration_enabled" + "enabled": "acceleration_enabled" }, "acceleration_support": { "label": "Support Acceleration", @@ -1105,7 +1105,7 @@ "max_value_warning": "10000", "default": 3000, "visible": false, - "enabled_WTF": "acceleration_enabled and support_roof_enable", + "enabled": "acceleration_enabled and support_roof_enable", "children": { "acceleration_support_infill": { "label": "Support Infill Acceleration", @@ -1117,7 +1117,7 @@ "min_value_warning": "100", "max_value_warning": "10000", "visible": false, - "enabled_WTF": "acceleration_enabled and support_enable", + "enabled": "acceleration_enabled and support_enable", "global_only": true }, "acceleration_support_roof": { @@ -1130,7 +1130,7 @@ "min_value_warning": "100", "max_value_warning": "10000", "visible": false, - "enabled_WTF": "acceleration_enabled and support_roof_enable", + "enabled": "acceleration_enabled and support_roof_enable", "global_only": true } } @@ -1149,7 +1149,7 @@ "inherit_function": "acceleration_print if magic_spiralize else 5000", "global_only": true, "visible": true, - "enabled_WTF": "acceleration_enabled" + "enabled": "acceleration_enabled" }, "acceleration_layer_0": { "label": "Initial Layer Acceleration", @@ -1161,7 +1161,7 @@ "min_value_warning": "100", "max_value_warning": "10000", "visible": false, - "enabled_WTF": "acceleration_enabled" + "enabled": "acceleration_enabled" }, "acceleration_skirt": { "label": "Skirt Acceleration", @@ -1175,7 +1175,7 @@ "visible": false, "inherit_function": "acceleration_layer_0", "global_only": true, - "enabled_WTF": "acceleration_enabled" + "enabled": "acceleration_enabled" }, @@ -1198,7 +1198,7 @@ "max_value_warning": "50", "default": 20, "visible": true, - "enabled_WTF": "jerk_enabled", + "enabled": "jerk_enabled", "children": { "jerk_infill": { "label": "Infill Jerk", @@ -1210,7 +1210,7 @@ "max_value_warning": "50", "default": 20, "visible": false, - "enabled_WTF": "jerk_enabled" + "enabled": "jerk_enabled" }, "jerk_wall": { "label": "Wall Jerk", @@ -1222,7 +1222,7 @@ "max_value_warning": "50", "default": 20, "visible": false, - "enabled_WTF": "jerk_enabled", + "enabled": "jerk_enabled", "children": { "jerk_wall_0": { "label": "Outer Wall Jerk", @@ -1234,7 +1234,7 @@ "max_value_warning": "50", "default": 20, "visible": false, - "enabled_WTF": "jerk_enabled" + "enabled": "jerk_enabled" }, "jerk_wall_x": { "label": "Inner Wall Jerk", @@ -1246,7 +1246,7 @@ "max_value_warning": "50", "default": 20, "visible": false, - "enabled_WTF": "jerk_enabled" + "enabled": "jerk_enabled" } } }, @@ -1260,7 +1260,7 @@ "max_value_warning": "50", "default": 20, "visible": false, - "enabled_WTF": "jerk_enabled" + "enabled": "jerk_enabled" }, "jerk_support": { "label": "Support Jerk", @@ -1272,7 +1272,7 @@ "max_value_warning": "50", "default": 20, "visible": false, - "enabled_WTF": "jerk_enabled and support_roof_enable", + "enabled": "jerk_enabled and support_roof_enable", "children": { "jerk_support_infill": { "label": "Support Infill Jerk", @@ -1284,7 +1284,7 @@ "min_value_warning": "5", "max_value_warning": "50", "visible": false, - "enabled_WTF": "jerk_enabled and support_enable", + "enabled": "jerk_enabled and support_enable", "global_only": true }, "jerk_support_roof": { @@ -1297,7 +1297,7 @@ "min_value_warning": "5", "max_value_warning": "50", "visible": false, - "enabled_WTF": "jerk enabled and support_roof_enable", + "enabled": "jerk_enabled and support_roof_enable", "global_only": true } } @@ -1316,7 +1316,7 @@ "inherit_function": "jerk_print if magic_spiralize else 30", "global_only": true, "visible": true, - "enabled_WTF": "jerk_enabled" + "enabled": "jerk_enabled" }, "jerk_layer_0": { "label": "Initial Layer Jerk", @@ -1328,7 +1328,7 @@ "min_value_warning": "5", "max_value_warning": "50", "visible": false, - "enabled_WTF": "jerk_enabled" + "enabled": "jerk_enabled" }, "jerk_skirt": { "label": "Skirt Jerk", @@ -1342,7 +1342,7 @@ "visible": false, "inherit_function": "jerk_layer_0", "global_only": true, - "enabled_WTF": "jerk_enabled" + "enabled": "jerk_enabled" } } },