added basic accelleration management with trapezoid accelleration profiles but no look ahead optimization (coming next patch)
This commit is contained in:
43
config.c
43
config.c
@@ -32,19 +32,10 @@ void reset_settings() {
|
||||
settings.steps_per_mm[2] = Z_STEPS_PER_MM;
|
||||
settings.pulse_microseconds = STEP_PULSE_MICROSECONDS;
|
||||
settings.default_feed_rate = DEFAULT_FEEDRATE;
|
||||
<<<<<<< Updated upstream
|
||||
settings.default_seek_rate = RAPID_FEEDRATE;
|
||||
settings.dead_feed_rate = DEFAULT_FEEDRATE/5;
|
||||
settings.acceleration = DEFAULT_FEEDRATE/100;
|
||||
settings.acceleration = DEFAULT_ACCELERATION;
|
||||
settings.mm_per_arc_segment = MM_PER_ARC_SEGMENT;
|
||||
settings.invert_mask = STEPPING_INVERT_MASK;
|
||||
=======
|
||||
settings.seek_rate = DEFAULT_SEEKRATE;
|
||||
settings.mm_per_arc_segment = DEFAULT_MM_PER_ARC_SEGMENT;
|
||||
settings.invert_mask = 0;
|
||||
settings.max_jerk = DEFAULT_MAX_JERK;
|
||||
settings.accelleration = DEFAULT_ACCELLERATION;
|
||||
>>>>>>> Stashed changes
|
||||
}
|
||||
|
||||
void dump_settings() {
|
||||
@@ -53,15 +44,13 @@ void dump_settings() {
|
||||
printPgmString(PSTR(" (steps/mm y)\r\n$2 = ")); printFloat(settings.steps_per_mm[2]);
|
||||
printPgmString(PSTR(" (steps/mm z)\r\n$3 = ")); printInteger(settings.pulse_microseconds);
|
||||
printPgmString(PSTR(" (microseconds step pulse)\r\n$4 = ")); printFloat(settings.default_feed_rate);
|
||||
printPgmString(PSTR(" (mm/sec default feed rate)\r\n$5 = ")); printFloat(settings.default_seek_rate);
|
||||
printPgmString(PSTR(" (mm/sec default seek rate)\r\n$7 = ")); printFloat(settings.dead_feed_rate);
|
||||
printPgmString(PSTR(" (mm/sec max start and stop feed rate)\r\n$8 = ")); printFloat(settings.mm_per_arc_segment);
|
||||
printPgmString(PSTR(" (mm/sec^2 max acceleration)\r\n$9 = ")); printFloat(settings.acceleration);
|
||||
printPgmString(PSTR(" (mm/arc segment)\r\n$10 = ")); printInteger(settings.invert_mask);
|
||||
printPgmString(PSTR(" (mm/min default feed rate)\r\n$5 = ")); printFloat(settings.default_seek_rate);
|
||||
printPgmString(PSTR(" (mm/min default seek rate)\r\n$6 = ")); printFloat(settings.mm_per_arc_segment);
|
||||
printPgmString(PSTR(" (mm/min^2 max acceleration)\r\n$7 = ")); printFloat(settings.acceleration);
|
||||
printPgmString(PSTR(" (mm/arc segment)\r\n$8 = ")); printInteger(settings.invert_mask);
|
||||
printPgmString(PSTR(" (step port invert mask. binary = ")); printIntegerInBase(settings.invert_mask, 2);
|
||||
printPgmString(PSTR(")\n\r$8 = ")); printFloat(settings.max_jerk);
|
||||
printPgmString(PSTR(" (max jerk in delta mm/second)\r\n$9 = ")); printFloat(settings.accelleration);
|
||||
printPgmString(PSTR(" (accelleration in mm/second^2)"));
|
||||
printPgmString(PSTR(")\r\n$9 = ")); printFloat(settings.acceleration);
|
||||
printPgmString(PSTR(" (acceleration in mm/min^2)"));
|
||||
printPgmString(PSTR("\r\n'$x=value' to set parameter or just '$' to dump current settings\r\n"));
|
||||
}
|
||||
|
||||
@@ -88,22 +77,14 @@ void store_setting(int parameter, double value) {
|
||||
settings.steps_per_mm[parameter] = value; break;
|
||||
case 3: settings.pulse_microseconds = round(value); break;
|
||||
case 4: settings.default_feed_rate = value; break;
|
||||
<<<<<<< Updated upstream
|
||||
case 5: settings.default_seek_rate = value; break;
|
||||
case 6: settings.dead_feed_rate = value; break;
|
||||
case 8: settings.mm_per_arc_segment = value; break;
|
||||
case 9: settings.acceleration = value; break;
|
||||
case 10: settings.invert_mask = trunc(value); break;
|
||||
=======
|
||||
case 5: settings.seek_rate = value; break;
|
||||
case 6: settings.mm_per_arc_segment = value; break;
|
||||
case 7: settings.invert_mask = trunc(value); break;
|
||||
case 8: settings.max_jerk = value; break;
|
||||
case 9: settings.accelleration = fabs(value); break;
|
||||
>>>>>>> Stashed changes
|
||||
case 7: settings.acceleration = value; break;
|
||||
case 8: settings.invert_mask = trunc(value); break;
|
||||
case 9: settings.acceleration = fabs(value); break;
|
||||
default:
|
||||
printPgmString(PSTR("Unknown parameter\r\n"));
|
||||
return;
|
||||
printPgmString(PSTR("Unknown parameter\r\n"));
|
||||
return;
|
||||
}
|
||||
write_settings();
|
||||
printPgmString(PSTR("Stored new setting\r\n"));
|
||||
|
||||
Reference in New Issue
Block a user