mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-15 10:47:49 -06:00
Align expected time of auxillary commands to what CuraEngine estimates
CuraEngine doesn't take most of these into its time estimate at all so they can just be 0. Contributes to issue CURA-5561.
This commit is contained in:
parent
bddfe44f2c
commit
cf5f66db9f
1 changed files with 20 additions and 24 deletions
|
@ -303,8 +303,8 @@ class Command:
|
||||||
|
|
||||||
travel_time_in_ms = -1 #Signal that we need to include this in our second pass.
|
travel_time_in_ms = -1 #Signal that we need to include this in our second pass.
|
||||||
|
|
||||||
# G4: Dwell, pause the machine for a period of time. TODO
|
# G4: Dwell, pause the machine for a period of time.
|
||||||
if cmd_num == 4:
|
elif cmd_num == 4:
|
||||||
# Pnnn is time to wait in milliseconds (P0 wait until all previous moves are finished)
|
# Pnnn is time to wait in milliseconds (P0 wait until all previous moves are finished)
|
||||||
cmd, num = get_code_and_num(parts[1])
|
cmd, num = get_code_and_num(parts[1])
|
||||||
num = float(num)
|
num = float(num)
|
||||||
|
@ -313,25 +313,20 @@ class Command:
|
||||||
estimated_exec_time_in_ms = num
|
estimated_exec_time_in_ms = num
|
||||||
|
|
||||||
# G90: Set to absolute positioning. Assume 0 seconds.
|
# G90: Set to absolute positioning. Assume 0 seconds.
|
||||||
if cmd_num == 90:
|
elif cmd_num == 90:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# G91: Set to relative positioning. Assume 0 seconds.
|
# G91: Set to relative positioning. Assume 0 seconds.
|
||||||
if cmd_num == 91:
|
elif cmd_num == 91:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# G92: Set position. Assume 0 seconds.
|
# G92: Set position. Assume 0 seconds.
|
||||||
if cmd_num == 92:
|
elif cmd_num == 92:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# G280: Prime. Assume 10 seconds for using blob and 5 seconds for no blob.
|
# G280: Prime. Assume 0 seconds. Actually more like 10 if using blob and 5 if not.
|
||||||
if cmd_num == 280:
|
elif cmd_num == 280:
|
||||||
use_blob = True
|
estimated_exec_time_in_ms = 0.0
|
||||||
if len(parts) > 1:
|
|
||||||
cmd, num = get_code_and_num(parts[1])
|
|
||||||
if cmd == "S" and num == 1:
|
|
||||||
use_blob = False
|
|
||||||
estimated_exec_time_in_ms = (10.0 if use_blob else 5.0) * 1000
|
|
||||||
|
|
||||||
# Update estimated execution time
|
# Update estimated execution time
|
||||||
self._estimated_exec_time_in_ms = round(estimated_exec_time_in_ms, 5)
|
self._estimated_exec_time_in_ms = round(estimated_exec_time_in_ms, 5)
|
||||||
|
@ -344,33 +339,34 @@ class Command:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M83: Set extruder to relative mode. Assume 0 execution time.
|
# M83: Set extruder to relative mode. Assume 0 execution time.
|
||||||
if cmd_num == 83:
|
elif cmd_num == 83:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M104: Set extruder temperature (no wait). Assume 0 execution time.
|
# M104: Set extruder temperature (no wait). Assume 0 execution time.
|
||||||
if cmd_num == 104:
|
elif cmd_num == 104:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M106: Set fan speed. Assume 0 execution time.
|
# M106: Set fan speed. Assume 0 execution time.
|
||||||
if cmd_num == 106:
|
elif cmd_num == 106:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M107: Turn fan off. Assume 0 execution time.
|
# M107: Turn fan off. Assume 0 execution time.
|
||||||
if cmd_num == 107:
|
elif cmd_num == 107:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M109: Set extruder temperature (wait). Uniformly random time between 30 - 90 seconds.
|
# M109: Set extruder temperature (wait). Assume 0 execution time. Actually more like a minute.
|
||||||
if cmd_num == 109:
|
elif cmd_num == 109:
|
||||||
estimated_exec_time_in_ms = random.uniform(30, 90) * 1000 # TODO: Check
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M140: Set bed temperature (no wait). Assume 0 execution time.
|
# M140: Set bed temperature (no wait). Assume 0 execution time.
|
||||||
if cmd_num == 140:
|
elif cmd_num == 140:
|
||||||
estimated_exec_time_in_ms = 0.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M203: Set maximum feedrate. Only Z is supported. Assume 0 execution time.
|
# M203: Set maximum feedrate. Only Z is supported. Assume 0 execution time.
|
||||||
if cmd_num == 203:
|
elif cmd_num == 203:
|
||||||
value_dict = get_value_dict(parts[1:])
|
value_dict = get_value_dict(parts[1:])
|
||||||
buf.max_z_feedrate = value_dict.get("Z", buf.max_z_feedrate)
|
buf.max_z_feedrate = value_dict.get("Z", buf.max_z_feedrate)
|
||||||
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
# M204: Set default acceleration. Assume 0 execution time.
|
# M204: Set default acceleration. Assume 0 execution time.
|
||||||
if cmd_num == 204:
|
if cmd_num == 204:
|
||||||
|
@ -389,8 +385,8 @@ class Command:
|
||||||
self._estimated_exec_time_in_ms = estimated_exec_time_in_ms
|
self._estimated_exec_time_in_ms = estimated_exec_time_in_ms
|
||||||
|
|
||||||
def _handle_t(self, cmd_num: int, parts: List[str]) -> None:
|
def _handle_t(self, cmd_num: int, parts: List[str]) -> None:
|
||||||
# Tn: Switching extruder. Assume 2 seconds.
|
# Tn: Switching extruder. Assume 0 seconds. Actually more like 2.
|
||||||
estimated_exec_time_in_ms = 2.0
|
estimated_exec_time_in_ms = 0.0
|
||||||
|
|
||||||
self._estimated_exec_time_in_ms = estimated_exec_time_in_ms
|
self._estimated_exec_time_in_ms = estimated_exec_time_in_ms
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue