|
@@ -138,7 +138,7 @@ planner_settings_t Planner::settings; // Initialized by settings.load(
|
138
|
138
|
|
139
|
139
|
uint32_t Planner::max_acceleration_steps_per_s2[DISTINCT_AXES]; // (steps/s^2) Derived from mm_per_s2
|
140
|
140
|
|
141
|
|
-float Planner::steps_to_mm[DISTINCT_AXES]; // (mm) Millimeters per step
|
|
141
|
+float Planner::mm_per_step[DISTINCT_AXES]; // (mm) Millimeters per step
|
142
|
142
|
|
143
|
143
|
#if HAS_JUNCTION_DEVIATION
|
144
|
144
|
float Planner::junction_deviation_mm; // (mm) M205 J
|
|
@@ -1702,7 +1702,7 @@ void Planner::endstop_triggered(const AxisEnum axis) {
|
1702
|
1702
|
}
|
1703
|
1703
|
|
1704
|
1704
|
float Planner::triggered_position_mm(const AxisEnum axis) {
|
1705
|
|
- return stepper.triggered_position(axis) * steps_to_mm[axis];
|
|
1705
|
+ return stepper.triggered_position(axis) * mm_per_step[axis];
|
1706
|
1706
|
}
|
1707
|
1707
|
|
1708
|
1708
|
void Planner::finish_and_disable() {
|
|
@@ -1759,7 +1759,7 @@ float Planner::get_axis_position_mm(const AxisEnum axis) {
|
1759
|
1759
|
|
1760
|
1760
|
#endif
|
1761
|
1761
|
|
1762
|
|
- return axis_steps * steps_to_mm[axis];
|
|
1762
|
+ return axis_steps * mm_per_step[axis];
|
1763
|
1763
|
}
|
1764
|
1764
|
|
1765
|
1765
|
/**
|
|
@@ -2015,51 +2015,51 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
|
2015
|
2015
|
} steps_dist_mm;
|
2016
|
2016
|
#if IS_CORE
|
2017
|
2017
|
#if CORE_IS_XY
|
2018
|
|
- steps_dist_mm.head.x = da * steps_to_mm[A_AXIS];
|
2019
|
|
- steps_dist_mm.head.y = db * steps_to_mm[B_AXIS];
|
2020
|
|
- steps_dist_mm.z = dc * steps_to_mm[Z_AXIS];
|
2021
|
|
- steps_dist_mm.a = (da + db) * steps_to_mm[A_AXIS];
|
2022
|
|
- steps_dist_mm.b = CORESIGN(da - db) * steps_to_mm[B_AXIS];
|
|
2018
|
+ steps_dist_mm.head.x = da * mm_per_step[A_AXIS];
|
|
2019
|
+ steps_dist_mm.head.y = db * mm_per_step[B_AXIS];
|
|
2020
|
+ steps_dist_mm.z = dc * mm_per_step[Z_AXIS];
|
|
2021
|
+ steps_dist_mm.a = (da + db) * mm_per_step[A_AXIS];
|
|
2022
|
+ steps_dist_mm.b = CORESIGN(da - db) * mm_per_step[B_AXIS];
|
2023
|
2023
|
#elif CORE_IS_XZ
|
2024
|
|
- steps_dist_mm.head.x = da * steps_to_mm[A_AXIS];
|
2025
|
|
- steps_dist_mm.y = db * steps_to_mm[Y_AXIS];
|
2026
|
|
- steps_dist_mm.head.z = dc * steps_to_mm[C_AXIS];
|
2027
|
|
- steps_dist_mm.a = (da + dc) * steps_to_mm[A_AXIS];
|
2028
|
|
- steps_dist_mm.c = CORESIGN(da - dc) * steps_to_mm[C_AXIS];
|
|
2024
|
+ steps_dist_mm.head.x = da * mm_per_step[A_AXIS];
|
|
2025
|
+ steps_dist_mm.y = db * mm_per_step[Y_AXIS];
|
|
2026
|
+ steps_dist_mm.head.z = dc * mm_per_step[C_AXIS];
|
|
2027
|
+ steps_dist_mm.a = (da + dc) * mm_per_step[A_AXIS];
|
|
2028
|
+ steps_dist_mm.c = CORESIGN(da - dc) * mm_per_step[C_AXIS];
|
2029
|
2029
|
#elif CORE_IS_YZ
|
2030
|
|
- steps_dist_mm.x = da * steps_to_mm[X_AXIS];
|
2031
|
|
- steps_dist_mm.head.y = db * steps_to_mm[B_AXIS];
|
2032
|
|
- steps_dist_mm.head.z = dc * steps_to_mm[C_AXIS];
|
2033
|
|
- steps_dist_mm.b = (db + dc) * steps_to_mm[B_AXIS];
|
2034
|
|
- steps_dist_mm.c = CORESIGN(db - dc) * steps_to_mm[C_AXIS];
|
|
2030
|
+ steps_dist_mm.x = da * mm_per_step[X_AXIS];
|
|
2031
|
+ steps_dist_mm.head.y = db * mm_per_step[B_AXIS];
|
|
2032
|
+ steps_dist_mm.head.z = dc * mm_per_step[C_AXIS];
|
|
2033
|
+ steps_dist_mm.b = (db + dc) * mm_per_step[B_AXIS];
|
|
2034
|
+ steps_dist_mm.c = CORESIGN(db - dc) * mm_per_step[C_AXIS];
|
2035
|
2035
|
#endif
|
2036
|
2036
|
#if LINEAR_AXES >= 4
|
2037
|
|
- steps_dist_mm.i = di * steps_to_mm[I_AXIS];
|
|
2037
|
+ steps_dist_mm.i = di * mm_per_step[I_AXIS];
|
2038
|
2038
|
#endif
|
2039
|
2039
|
#if LINEAR_AXES >= 5
|
2040
|
|
- steps_dist_mm.j = dj * steps_to_mm[J_AXIS];
|
|
2040
|
+ steps_dist_mm.j = dj * mm_per_step[J_AXIS];
|
2041
|
2041
|
#endif
|
2042
|
2042
|
#if LINEAR_AXES >= 6
|
2043
|
|
- steps_dist_mm.k = dk * steps_to_mm[K_AXIS];
|
|
2043
|
+ steps_dist_mm.k = dk * mm_per_step[K_AXIS];
|
2044
|
2044
|
#endif
|
2045
|
2045
|
#elif ENABLED(MARKFORGED_XY)
|
2046
|
|
- steps_dist_mm.head.x = da * steps_to_mm[A_AXIS];
|
2047
|
|
- steps_dist_mm.head.y = db * steps_to_mm[B_AXIS];
|
2048
|
|
- steps_dist_mm.z = dc * steps_to_mm[Z_AXIS];
|
2049
|
|
- steps_dist_mm.a = (da - db) * steps_to_mm[A_AXIS];
|
2050
|
|
- steps_dist_mm.b = db * steps_to_mm[B_AXIS];
|
|
2046
|
+ steps_dist_mm.head.x = da * mm_per_step[A_AXIS];
|
|
2047
|
+ steps_dist_mm.head.y = db * mm_per_step[B_AXIS];
|
|
2048
|
+ steps_dist_mm.z = dc * mm_per_step[Z_AXIS];
|
|
2049
|
+ steps_dist_mm.a = (da - db) * mm_per_step[A_AXIS];
|
|
2050
|
+ steps_dist_mm.b = db * mm_per_step[B_AXIS];
|
2051
|
2051
|
#else
|
2052
|
2052
|
LINEAR_AXIS_CODE(
|
2053
|
|
- steps_dist_mm.a = da * steps_to_mm[A_AXIS],
|
2054
|
|
- steps_dist_mm.b = db * steps_to_mm[B_AXIS],
|
2055
|
|
- steps_dist_mm.c = dc * steps_to_mm[C_AXIS],
|
2056
|
|
- steps_dist_mm.i = di * steps_to_mm[I_AXIS],
|
2057
|
|
- steps_dist_mm.j = dj * steps_to_mm[J_AXIS],
|
2058
|
|
- steps_dist_mm.k = dk * steps_to_mm[K_AXIS]
|
|
2053
|
+ steps_dist_mm.a = da * mm_per_step[A_AXIS],
|
|
2054
|
+ steps_dist_mm.b = db * mm_per_step[B_AXIS],
|
|
2055
|
+ steps_dist_mm.c = dc * mm_per_step[C_AXIS],
|
|
2056
|
+ steps_dist_mm.i = di * mm_per_step[I_AXIS],
|
|
2057
|
+ steps_dist_mm.j = dj * mm_per_step[J_AXIS],
|
|
2058
|
+ steps_dist_mm.k = dk * mm_per_step[K_AXIS]
|
2059
|
2059
|
);
|
2060
|
2060
|
#endif
|
2061
|
2061
|
|
2062
|
|
- TERN_(HAS_EXTRUDERS, steps_dist_mm.e = esteps_float * steps_to_mm[E_AXIS_N(extruder)]);
|
|
2062
|
+ TERN_(HAS_EXTRUDERS, steps_dist_mm.e = esteps_float * mm_per_step[E_AXIS_N(extruder)]);
|
2063
|
2063
|
|
2064
|
2064
|
TERN_(LCD_SHOW_E_TOTAL, e_move_accumulator += steps_dist_mm.e);
|
2065
|
2065
|
|
|
@@ -2889,7 +2889,7 @@ bool Planner::buffer_segment(const abce_pos_t &abce
|
2889
|
2889
|
// When changing extruders recalculate steps corresponding to the E position
|
2890
|
2890
|
#if ENABLED(DISTINCT_E_FACTORS)
|
2891
|
2891
|
if (last_extruder != extruder && settings.axis_steps_per_mm[E_AXIS_N(extruder)] != settings.axis_steps_per_mm[E_AXIS_N(last_extruder)]) {
|
2892
|
|
- position.e = LROUND(position.e * settings.axis_steps_per_mm[E_AXIS_N(extruder)] * steps_to_mm[E_AXIS_N(last_extruder)]);
|
|
2892
|
+ position.e = LROUND(position.e * settings.axis_steps_per_mm[E_AXIS_N(extruder)] * mm_per_step[E_AXIS_N(last_extruder)]);
|
2893
|
2893
|
last_extruder = extruder;
|
2894
|
2894
|
}
|
2895
|
2895
|
#endif
|
|
@@ -3168,11 +3168,11 @@ void Planner::reset_acceleration_rates() {
|
3168
|
3168
|
}
|
3169
|
3169
|
|
3170
|
3170
|
/**
|
3171
|
|
- * Recalculate 'position' and 'steps_to_mm'.
|
|
3171
|
+ * Recalculate 'position' and 'mm_per_step'.
|
3172
|
3172
|
* Must be called whenever settings.axis_steps_per_mm changes!
|
3173
|
3173
|
*/
|
3174
|
3174
|
void Planner::refresh_positioning() {
|
3175
|
|
- LOOP_DISTINCT_AXES(i) steps_to_mm[i] = 1.0f / settings.axis_steps_per_mm[i];
|
|
3175
|
+ LOOP_DISTINCT_AXES(i) mm_per_step[i] = 1.0f / settings.axis_steps_per_mm[i];
|
3176
|
3176
|
set_position_mm(current_position);
|
3177
|
3177
|
reset_acceleration_rates();
|
3178
|
3178
|
}
|