New stepper algorithm. Optimized planner.
- Brand-new stepper algorithm. Based on the Pramod Ranade inverse time algorithm, but modified to ensure step events are exact. Currently limited to about 15kHz step rates, much more to be done to enable 30kHz again. - Removed Timer1. Stepper algorithm now uses Timer0 and Timer2. - Much improved step generation during accelerations. Smoother. Allows much higher accelerations (and speeds) than before on the same machine. - Cleaner algorithm that is more easily portable to other CPU types. - Streamlined planner calculations. Removed accelerate_until and final_rate variables from block buffer since the new stepper algorithm is that much more accurate. - Improved planner efficiency by about 15-20% during worst case scenarios (arcs). - New config.h options to tune new stepper algorithm.
This commit is contained in:
10
defaults.h
10
defaults.h
@ -57,12 +57,12 @@
|
||||
#ifdef DEFAULTS_SHERLINE_5400
|
||||
// Description: Sherline 5400 mill with three NEMA 23 185 oz-in stepper motors, driven by
|
||||
// three Pololu A4988 stepper drivers with a 30V, 6A power supply at 1.5A per winding.
|
||||
#define MICROSTEPS 4
|
||||
#define MICROSTEPS 2
|
||||
#define STEPS_PER_REV 200.0
|
||||
#define MM_PER_REV (0.050*MM_PER_INCH)) // 0.050 inch/rev leadscrew
|
||||
#define DEFAULT_X_STEPS_PER_MM (STEP_PER_REV*MICROSTEPS/MM_PER_REV)
|
||||
#define DEFAULT_Y_STEPS_PER_MM (STEP_PER_REV*MICROSTEPS/MM_PER_REV)
|
||||
#define DEFAULT_Z_STEPS_PER_MM (STEP_PER_REV*MICROSTEPS/MM_PER_REV)
|
||||
#define MM_PER_REV (0.050*MM_PER_INCH) // 0.050 inch/rev leadscrew
|
||||
#define DEFAULT_X_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
|
||||
#define DEFAULT_Y_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
|
||||
#define DEFAULT_Z_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
|
||||
#define DEFAULT_STEP_PULSE_MICROSECONDS 10
|
||||
#define DEFAULT_MM_PER_ARC_SEGMENT 0.1
|
||||
#define DEFAULT_RAPID_FEEDRATE 635.0 // mm/min (25ipm)
|
||||
|
Reference in New Issue
Block a user