mirror of
https://github.com/grblHAL/core.git
synced 2026-09-25 00:19:08 +08:00
Added Axis settings for jerk
This commit is contained in:
@@ -1823,6 +1823,35 @@ Timezone offset from UTC in hours, allowed range is -12.0 - 12.0.
|
||||
#endif
|
||||
///@}
|
||||
|
||||
/*! @name 12x - Setting_AxisJerk
|
||||
*/
|
||||
///@{
|
||||
#if !defined DEFAULT_X_JERK|| defined __DOXYGEN__
|
||||
#define DEFAULT_X_Jerk 100.0f // mm/sec^2
|
||||
#endif
|
||||
#if !defined DEFAULT_Y_JERK|| defined __DOXYGEN__
|
||||
#define DEFAULT_Y_JERK 100.0f // mm/sec^2
|
||||
#endif
|
||||
#if !defined DEFAULT_Z_JERK || defined __DOXYGEN__
|
||||
#define DEFAULT_Z_JERK 100.0f // mm/sec^2
|
||||
#endif
|
||||
#if (defined A_AXIS && !defined DEFAULT_A_JERK) || defined __DOXYGEN__
|
||||
#define DEFAULT_A_JERK 100.0f // mm/sec^2
|
||||
#endif
|
||||
#if (defined B_AXIS && !defined DEFAULT_B_JERK) || defined __DOXYGEN__
|
||||
#define DEFAULT_B_JERK 100.0f // mm/sec^2
|
||||
#endif
|
||||
#if (defined C_AXIS && !defined DEFAULT_C_JERK) || defined __DOXYGEN__
|
||||
#define DEFAULT_C_JERK 100.0f // mm/sec^2
|
||||
#endif
|
||||
#if (defined U_AXIS && !defined DEFAULT_U_JERK) || defined __DOXYGEN__
|
||||
#define DEFAULT_U_JERK 100.0f // mm/sec^2
|
||||
#endif
|
||||
#if (defined V_AXIS && !defined DEFAULT_V_JERK) || defined __DOXYGEN__
|
||||
#define DEFAULT_V_JERK 100.0f // mm/sec^2
|
||||
#endif
|
||||
///@}
|
||||
|
||||
/*! @name 13x - Setting_AxisMaxTravel
|
||||
__NOTE:__ Must be a positive values.
|
||||
*/
|
||||
|
||||
@@ -202,6 +202,7 @@ PROGMEM const settings_t defaults = {
|
||||
.axis[X_AXIS].steps_per_mm = DEFAULT_X_STEPS_PER_MM,
|
||||
.axis[X_AXIS].max_rate = DEFAULT_X_MAX_RATE,
|
||||
.axis[X_AXIS].acceleration = (DEFAULT_X_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[X_AXIS].jerk = (DEFAULT_X_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[X_AXIS].max_travel = (-DEFAULT_X_MAX_TRAVEL),
|
||||
.axis[X_AXIS].dual_axis_offset = 0.0f,
|
||||
#if ENABLE_BACKLASH_COMPENSATION
|
||||
@@ -212,6 +213,7 @@ PROGMEM const settings_t defaults = {
|
||||
.axis[Y_AXIS].max_rate = DEFAULT_Y_MAX_RATE,
|
||||
.axis[Y_AXIS].max_travel = (-DEFAULT_Y_MAX_TRAVEL),
|
||||
.axis[Y_AXIS].acceleration = (DEFAULT_Y_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[Y_AXIS].jerk = (DEFAULT_Y_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[Y_AXIS].dual_axis_offset = 0.0f,
|
||||
#if ENABLE_BACKLASH_COMPENSATION
|
||||
.axis[Y_AXIS].backlash = 0.0f,
|
||||
@@ -220,6 +222,7 @@ PROGMEM const settings_t defaults = {
|
||||
.axis[Z_AXIS].steps_per_mm = DEFAULT_Z_STEPS_PER_MM,
|
||||
.axis[Z_AXIS].max_rate = DEFAULT_Z_MAX_RATE,
|
||||
.axis[Z_AXIS].acceleration = (DEFAULT_Z_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[Z_AXIS].jerk = (DEFAULT_Z_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[Z_AXIS].max_travel = (-DEFAULT_Z_MAX_TRAVEL),
|
||||
.axis[Z_AXIS].dual_axis_offset = 0.0f,
|
||||
#if ENABLE_BACKLASH_COMPENSATION
|
||||
@@ -230,6 +233,7 @@ PROGMEM const settings_t defaults = {
|
||||
.axis[A_AXIS].steps_per_mm = DEFAULT_A_STEPS_PER_MM,
|
||||
.axis[A_AXIS].max_rate = DEFAULT_A_MAX_RATE,
|
||||
.axis[A_AXIS].acceleration =(DEFAULT_A_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[A_AXIS].jerk = (DEFAULT_A_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[A_AXIS].max_travel = (-DEFAULT_A_MAX_TRAVEL),
|
||||
.axis[A_AXIS].dual_axis_offset = 0.0f,
|
||||
#if ENABLE_BACKLASH_COMPENSATION
|
||||
@@ -242,6 +246,7 @@ PROGMEM const settings_t defaults = {
|
||||
.axis[B_AXIS].steps_per_mm = DEFAULT_B_STEPS_PER_MM,
|
||||
.axis[B_AXIS].max_rate = DEFAULT_B_MAX_RATE,
|
||||
.axis[B_AXIS].acceleration = (DEFAULT_B_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[B_AXIS].jerk = (DEFAULT_B_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[B_AXIS].max_travel = (-DEFAULT_B_MAX_TRAVEL),
|
||||
.axis[B_AXIS].dual_axis_offset = 0.0f,
|
||||
#if ENABLE_BACKLASH_COMPENSATION
|
||||
@@ -253,6 +258,7 @@ PROGMEM const settings_t defaults = {
|
||||
#ifdef C_AXIS
|
||||
.axis[C_AXIS].steps_per_mm = DEFAULT_C_STEPS_PER_MM,
|
||||
.axis[C_AXIS].acceleration = (DEFAULT_C_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[C_AXIS].jerk = (DEFAULT_C_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[C_AXIS].max_rate = DEFAULT_C_MAX_RATE,
|
||||
.axis[C_AXIS].max_travel = (-DEFAULT_C_MAX_TRAVEL),
|
||||
.axis[C_AXIS].dual_axis_offset = 0.0f,
|
||||
@@ -265,6 +271,7 @@ PROGMEM const settings_t defaults = {
|
||||
#ifdef U_AXIS
|
||||
.axis[U_AXIS].steps_per_mm = DEFAULT_U_STEPS_PER_MM,
|
||||
.axis[U_AXIS].acceleration = (DEFAULT_U_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[U_AXIS].jerk = (DEFAULT_U_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[U_AXIS].max_rate = DEFAULT_U_MAX_RATE,
|
||||
.axis[U_AXIS].max_travel = (-DEFAULT_U_MAX_TRAVEL),
|
||||
.axis[U_AXIS].dual_axis_offset = 0.0f,
|
||||
@@ -276,6 +283,7 @@ PROGMEM const settings_t defaults = {
|
||||
#ifdef V_AXIS
|
||||
.axis[V_AXIS].steps_per_mm = DEFAULT_V_STEPS_PER_MM,
|
||||
.axis[V_AXIS].acceleration = (DEFAULT_V_ACCELERATION * 60.0f * 60.0f),
|
||||
.axis[V_AXIS].jerk = (DEFAULT_V_JERK * 60.0f * 60.0f * 60f),
|
||||
.axis[V_AXIS].max_rate = DEFAULT_V_MAX_RATE,
|
||||
.axis[V_AXIS].max_travel = (-DEFAULT_V_MAX_TRAVEL),
|
||||
.axis[V_AXIS].dual_axis_offset = 0.0f,
|
||||
@@ -552,6 +560,7 @@ PROGMEM static const setting_detail_t setting_detail[] = {
|
||||
{ Setting_AxisStepsPerMM, Group_Axis0, "-axis travel resolution", axis_steps, Format_Decimal, "#####0.000", NULL, NULL, Setting_IsLegacyFn, set_axis_setting, get_float, NULL, AXIS_OPTS },
|
||||
{ Setting_AxisMaxRate, Group_Axis0, "-axis maximum rate", axis_rate, Format_Decimal, "#####0.000", NULL, NULL, Setting_IsLegacyFn, set_axis_setting, get_float, NULL, AXIS_OPTS },
|
||||
{ Setting_AxisAcceleration, Group_Axis0, "-axis acceleration", axis_accel, Format_Decimal, "#####0.000", NULL, NULL, Setting_IsLegacyFn, set_axis_setting, get_float, NULL, AXIS_OPTS },
|
||||
{ Setting_AxisJerk, Group_Axis0, "-axis jerk", axis_jerk, Format_Decimal, "#####0.000", NULL, NULL, Setting_IsExtended, set_axis_setting, get_float, NULL, AXIS_OPTS },
|
||||
{ Setting_AxisMaxTravel, Group_Axis0, "-axis maximum travel", axis_dist, Format_Decimal, "#####0.000", NULL, NULL, Setting_IsLegacyFn, set_axis_setting, get_float, NULL, AXIS_OPTS },
|
||||
#if ENABLE_BACKLASH_COMPENSATION
|
||||
{ Setting_AxisBacklash, Group_Axis0, "-axis backlash compensation", axis_dist, Format_Decimal, "#####0.000", NULL, NULL, Setting_IsExtendedFn, set_axis_setting, get_float, NULL, AXIS_OPTS },
|
||||
|
||||
+2
-1
@@ -419,7 +419,7 @@ typedef enum {
|
||||
// Calculated base values for driver/plugin stepper settings
|
||||
Setting_AxisExtended0 = Setting_AxisSettingsBase2,
|
||||
Setting_AxisExtended1 = Setting_AxisSettingsBase2 + AXIS_SETTINGS_INCREMENT,
|
||||
Setting_AxisExtended2 = Setting_AxisSettingsBase2 + 2 * AXIS_SETTINGS_INCREMENT,
|
||||
Setting_AxisJerk = Setting_AxisSettingsBase2 + 2 * AXIS_SETTINGS_INCREMENT,
|
||||
Setting_AxisExtended3 = Setting_AxisSettingsBase2 + 3 * AXIS_SETTINGS_INCREMENT,
|
||||
Setting_AxisExtended4 = Setting_AxisSettingsBase2 + 4 * AXIS_SETTINGS_INCREMENT,
|
||||
Setting_AxisExtended5 = Setting_AxisSettingsBase2 + 5 * AXIS_SETTINGS_INCREMENT,
|
||||
@@ -630,6 +630,7 @@ typedef struct {
|
||||
float steps_per_mm;
|
||||
float max_rate;
|
||||
float acceleration;
|
||||
float jerk;
|
||||
float max_travel;
|
||||
float dual_axis_offset;
|
||||
#if ENABLE_BACKLASH_COMPENSATION
|
||||
|
||||
Reference in New Issue
Block a user