|
@@ -945,16 +945,16 @@ void Planner::check_axes_activity() {
|
945
|
945
|
block->acceleration_steps_per_s2 = ceil(acceleration * steps_per_mm); // convert to: acceleration steps/sec^2
|
946
|
946
|
}
|
947
|
947
|
// Limit acceleration per axis
|
948
|
|
- xsteps = max_acceleration_steps_per_s2[X_AXIS],
|
949
|
|
- ysteps = max_acceleration_steps_per_s2[Y_AXIS],
|
950
|
|
- zsteps = max_acceleration_steps_per_s2[Z_AXIS],
|
951
|
|
- esteps = max_acceleration_steps_per_s2[E_AXIS],
|
952
|
948
|
unsigned long acc_st = block->acceleration_steps_per_s2,
|
|
949
|
+ x_acc_st = max_acceleration_steps_per_s2[X_AXIS],
|
|
950
|
+ y_acc_st = max_acceleration_steps_per_s2[Y_AXIS],
|
|
951
|
+ z_acc_st = max_acceleration_steps_per_s2[Z_AXIS],
|
|
952
|
+ e_acc_st = max_acceleration_steps_per_s2[E_AXIS],
|
953
|
953
|
allsteps = block->step_event_count;
|
954
|
|
- if (xsteps < (acc_st * bsx) / allsteps) acc_st = (xsteps * allsteps) / bsx;
|
955
|
|
- if (ysteps < (acc_st * bsy) / allsteps) acc_st = (ysteps * allsteps) / bsy;
|
956
|
|
- if (zsteps < (acc_st * bsz) / allsteps) acc_st = (zsteps * allsteps) / bsz;
|
957
|
|
- if (esteps < (acc_st * bse) / allsteps) acc_st = (esteps * allsteps) / bse;
|
|
954
|
+ if (x_acc_st < (acc_st * bsx) / allsteps) acc_st = (x_acc_st * allsteps) / bsx;
|
|
955
|
+ if (y_acc_st < (acc_st * bsy) / allsteps) acc_st = (y_acc_st * allsteps) / bsy;
|
|
956
|
+ if (z_acc_st < (acc_st * bsz) / allsteps) acc_st = (z_acc_st * allsteps) / bsz;
|
|
957
|
+ if (e_acc_st < (acc_st * bse) / allsteps) acc_st = (e_acc_st * allsteps) / bse;
|
958
|
958
|
|
959
|
959
|
block->acceleration_steps_per_s2 = acc_st;
|
960
|
960
|
block->acceleration = acc_st / steps_per_mm;
|