mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-16 11:17:49 -06:00
Implement M203, setting maximum Z feedrate
It's important. Contributes to issue CURA-5561.
This commit is contained in:
parent
5d292e1a79
commit
1037b09188
1 changed files with 7 additions and 1 deletions
|
@ -228,7 +228,7 @@ class Command:
|
|||
current_abs_feedrate = [abs(f) for f in current_feedrate]
|
||||
feedrate_factor = min(1.0, MACHINE_MAX_FEEDRATE_X)
|
||||
feedrate_factor = min(feedrate_factor, MACHINE_MAX_FEEDRATE_Y)
|
||||
feedrate_factor = min(feedrate_factor, MACHINE_MAX_FEEDRATE_Z)
|
||||
feedrate_factor = min(feedrate_factor, buf.max_z_feedrate)
|
||||
feedrate_factor = min(feedrate_factor, MACHINE_MAX_FEEDRATE_E)
|
||||
#TODO: XY_FREQUENCY_LIMIT
|
||||
|
||||
|
@ -337,6 +337,11 @@ class Command:
|
|||
if cmd_num == 140:
|
||||
estimated_exec_time_in_ms = 0.0
|
||||
|
||||
# M203: Set maximum feedrate. Only Z is supported. Assume 0 execution time.
|
||||
if cmd_num == 203:
|
||||
value_dict = get_value_dict(parts[1:])
|
||||
buf.max_z_feedrate = value_dict.get("Z", buf.max_z_feedrate)
|
||||
|
||||
# M204: Set default acceleration. Assume 0 execution time.
|
||||
if cmd_num == 204:
|
||||
value_dict = get_value_dict(parts[1:])
|
||||
|
@ -377,6 +382,7 @@ class CommandBuffer:
|
|||
self.max_xy_jerk = MACHINE_MAX_JERK_XY
|
||||
self.max_z_jerk = MACHINE_MAX_JERK_Z
|
||||
self.max_e_jerk = MACHINE_MAX_JERK_E
|
||||
self.max_z_feedrate = MACHINE_MAX_FEEDRATE_Z
|
||||
|
||||
# If the buffer can depletes less than this amount time, it can be filled up in time.
|
||||
lower_bound_buffer_depletion_time = self._buffer_size / self._buffer_filling_rate # type: float
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue