mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2024-11-29 23:07:42 +00:00
BEZIER_JERK_CONTROL => S_CURVE_ACCELERATION
This commit is contained in:
parent
9186123676
commit
949ee7afe9
@ -118,7 +118,7 @@ script:
|
||||
# Add a Sled Z Probe, use UBL Cartesian moves, use Japanese language
|
||||
#
|
||||
- opt_set LANGUAGE kana_utf8
|
||||
- opt_enable Z_PROBE_SLED SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE BEZIER_JERK_CONTROL
|
||||
- opt_enable Z_PROBE_SLED SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE S_CURVE_ACCELERATION
|
||||
- opt_disable SEGMENT_LEVELED_MOVES
|
||||
- opt_enable_adv BABYSTEP_ZPROBE_OFFSET DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||
- build_marlin
|
||||
|
@ -612,15 +612,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -273,6 +273,8 @@
|
||||
#error "FILAMENT_CHANGE_LOAD_LENGTH is now FILAMENT_CHANGE_FAST_LOAD_LENGTH. Please update your configuration."
|
||||
#elif ENABLED(LEVEL_BED_CORNERS) && !defined(LEVEL_CORNERS_INSET)
|
||||
#error "LEVEL_BED_CORNERS requires a LEVEL_CORNERS_INSET value. Please update your Configuration.h."
|
||||
#elif defined(BEZIER_JERK_CONTROL)
|
||||
#error "BEZIER_JERK_CONTROL is now S_CURVE_ACCELERATION. Please update your configuration."
|
||||
#endif
|
||||
|
||||
#define BOARD_MKS_13 -47
|
||||
|
@ -637,15 +637,14 @@
|
||||
#define DEFAULT_EJERK 10.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -665,15 +665,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -624,15 +624,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -605,15 +605,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -618,15 +618,14 @@
|
||||
#define DEFAULT_EJERK 1.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -605,15 +605,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -616,15 +616,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -627,15 +627,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -636,15 +636,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -627,15 +627,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -621,15 +621,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -621,15 +621,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -627,15 +627,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -599,15 +599,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -599,15 +599,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -623,15 +623,14 @@
|
||||
#define DEFAULT_EJERK 4.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -632,15 +632,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 4.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -632,15 +632,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -632,15 +632,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -621,15 +621,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -629,15 +629,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -637,15 +637,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -621,15 +621,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -621,15 +621,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -657,15 +657,14 @@ Black rubber belt(MXL), 18 - tooth aluminium pulley : 87.489 step per mm (Huxley
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -615,15 +615,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -630,15 +630,14 @@
|
||||
#define DEFAULT_EJERK 3.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -648,15 +648,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -668,15 +668,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -628,15 +628,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -646,15 +646,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 20.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 20.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -627,15 +627,14 @@
|
||||
#define DEFAULT_EJERK 1.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -617,15 +617,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -699,15 +699,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -699,15 +699,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -699,15 +699,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -704,15 +704,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -689,15 +689,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -689,15 +689,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -682,15 +682,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -692,15 +692,14 @@
|
||||
#define DEFAULT_EJERK 20.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -630,15 +630,14 @@
|
||||
#define DEFAULT_EJERK 4.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -620,15 +620,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -612,15 +612,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -622,15 +622,14 @@
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
* Realtime Jerk Control
|
||||
* S-Curve Acceleration
|
||||
*
|
||||
* This option eliminates vibration during printing by fitting a Bézier
|
||||
* curve to move acceleration, producing much smoother direction changes.
|
||||
* Because this is computationally-intensive, a 32-bit MCU is required.
|
||||
*
|
||||
* See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
|
||||
*/
|
||||
//#define BEZIER_JERK_CONTROL
|
||||
//#define S_CURVE_ACCELERATION
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
|
@ -221,7 +221,7 @@ void Planner::init() {
|
||||
delay_before_delivering = 0;
|
||||
}
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
|
||||
// This routine, for AVR, returns 0x1000000 / d, but trying to get the inverse as
|
||||
// fast as possible. A fast converging iterative Newton-Raphson method is able to
|
||||
@ -726,7 +726,7 @@ void Planner::init() {
|
||||
// Return the result
|
||||
return r11 | (uint16_t(r12) << 8) | (uint32_t(r13) << 16);
|
||||
}
|
||||
#endif // BEZIER_JERK_CONTROL
|
||||
#endif // S_CURVE_ACCELERATION
|
||||
|
||||
#define MINIMAL_STEP_RATE 120
|
||||
|
||||
@ -743,7 +743,7 @@ void Planner::calculate_trapezoid_for_block(block_t* const block, const float &e
|
||||
NOLESS(initial_rate, uint32_t(MINIMAL_STEP_RATE));
|
||||
NOLESS(final_rate, uint32_t(MINIMAL_STEP_RATE));
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
uint32_t cruise_rate = initial_rate;
|
||||
#endif
|
||||
|
||||
@ -764,12 +764,12 @@ void Planner::calculate_trapezoid_for_block(block_t* const block, const float &e
|
||||
accelerate_steps = MIN(uint32_t(MAX(accelerate_steps_float, 0)), block->step_event_count);
|
||||
plateau_steps = 0;
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
// We won't reach the cruising rate. Let's calculate the speed we will reach
|
||||
cruise_rate = final_speed(initial_rate, accel, accelerate_steps);
|
||||
#endif
|
||||
}
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
else // We have some plateau time, so the cruise rate will be the nominal rate
|
||||
cruise_rate = block->nominal_rate;
|
||||
#endif
|
||||
@ -777,7 +777,7 @@ void Planner::calculate_trapezoid_for_block(block_t* const block, const float &e
|
||||
// block->accelerate_until = accelerate_steps;
|
||||
// block->decelerate_after = accelerate_steps+plateau_steps;
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
// Jerk controlled speed requires to express speed versus time, NOT steps
|
||||
uint32_t acceleration_time = ((float)(cruise_rate - initial_rate) / accel) * (HAL_STEPPER_TIMER_RATE),
|
||||
deceleration_time = ((float)(cruise_rate - final_rate) / accel) * (HAL_STEPPER_TIMER_RATE);
|
||||
@ -797,7 +797,7 @@ void Planner::calculate_trapezoid_for_block(block_t* const block, const float &e
|
||||
block->accelerate_until = accelerate_steps;
|
||||
block->decelerate_after = accelerate_steps + plateau_steps;
|
||||
block->initial_rate = initial_rate;
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
block->acceleration_time = acceleration_time;
|
||||
block->deceleration_time = deceleration_time;
|
||||
block->acceleration_time_inverse = acceleration_time_inverse;
|
||||
@ -2118,7 +2118,7 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
|
||||
}
|
||||
block->acceleration_steps_per_s2 = accel;
|
||||
block->acceleration = accel / steps_per_mm;
|
||||
#if DISABLED(BEZIER_JERK_CONTROL)
|
||||
#if DISABLED(S_CURVE_ACCELERATION)
|
||||
block->acceleration_rate = (uint32_t)(accel * (4096.0 * 4096.0 / (HAL_STEPPER_TIMER_RATE)));
|
||||
#endif
|
||||
#if ENABLED(LIN_ADVANCE)
|
||||
|
@ -110,11 +110,11 @@ typedef struct {
|
||||
uint32_t accelerate_until, // The index of the step event on which to stop acceleration
|
||||
decelerate_after; // The index of the step event on which to start decelerating
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
uint32_t cruise_rate; // The actual cruise rate to use, between end of the acceleration phase and start of deceleration phase
|
||||
uint32_t acceleration_time, // Acceleration time and deceleration time in STEP timer counts
|
||||
deceleration_time;
|
||||
uint32_t acceleration_time_inverse, // Inverse of acceleration and deceleration periods, expressed as integer. Scale depends on CPU being used
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
uint32_t cruise_rate, // The actual cruise rate to use, between end of the acceleration phase and start of deceleration phase
|
||||
acceleration_time, // Acceleration time and deceleration time in STEP timer counts
|
||||
deceleration_time,
|
||||
acceleration_time_inverse, // Inverse of acceleration and deceleration periods, expressed as integer. Scale depends on CPU being used
|
||||
deceleration_time_inverse;
|
||||
#else
|
||||
uint32_t acceleration_rate; // The acceleration rate used for acceleration calculation
|
||||
@ -769,7 +769,7 @@ class Planner {
|
||||
return target_velocity_sqr - 2 * accel * distance;
|
||||
}
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
/**
|
||||
* Calculate the speed reached given initial speed, acceleration and distance
|
||||
*/
|
||||
|
@ -107,7 +107,7 @@ int32_t Stepper::counter_X = 0,
|
||||
|
||||
uint32_t Stepper::step_events_completed = 0; // The number of step events executed in the current block
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
int32_t __attribute__((used)) Stepper::bezier_A __asm__("bezier_A"); // A coefficient in Bézier speed curve with alias for assembler
|
||||
int32_t __attribute__((used)) Stepper::bezier_B __asm__("bezier_B"); // B coefficient in Bézier speed curve with alias for assembler
|
||||
int32_t __attribute__((used)) Stepper::bezier_C __asm__("bezier_C"); // C coefficient in Bézier speed curve with alias for assembler
|
||||
@ -155,7 +155,7 @@ volatile signed char Stepper::count_direction[NUM_AXIS] = { 1, 1, 1, 1 };
|
||||
uint32_t Stepper::ticks_nominal;
|
||||
uint8_t Stepper::step_loops, Stepper::step_loops_nominal;
|
||||
|
||||
#if DISABLED(BEZIER_JERK_CONTROL)
|
||||
#if DISABLED(S_CURVE_ACCELERATION)
|
||||
uint32_t Stepper::acc_step_rate; // needed for deceleration start point
|
||||
#endif
|
||||
|
||||
@ -367,7 +367,7 @@ void Stepper::set_directions() {
|
||||
#endif // !LIN_ADVANCE
|
||||
}
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
/**
|
||||
* We are using a quintic (fifth-degree) Bézier polynomial for the velocity curve.
|
||||
* This gives us a "linear pop" velocity curve; with pop being the sixth derivative of position:
|
||||
@ -1091,7 +1091,7 @@ void Stepper::set_directions() {
|
||||
return (r2 | (uint16_t(r3) << 8)) | (uint32_t(r4) << 16);
|
||||
}
|
||||
|
||||
#endif // BEZIER_JERK_CONTROL
|
||||
#endif // S_CURVE_ACCELERATION
|
||||
|
||||
/**
|
||||
* Stepper Driver Interrupt
|
||||
@ -1460,7 +1460,7 @@ uint32_t Stepper::stepper_block_phase_isr() {
|
||||
// Calculate new timer value
|
||||
if (step_events_completed <= current_block->accelerate_until) {
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
// Get the next speed to use (Jerk limited!)
|
||||
uint32_t acc_step_rate =
|
||||
acceleration_time < current_block->acceleration_time
|
||||
@ -1491,7 +1491,7 @@ uint32_t Stepper::stepper_block_phase_isr() {
|
||||
else if (step_events_completed > current_block->decelerate_after) {
|
||||
uint32_t step_rate;
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
// If this is the 1st time we process the 2nd half of the trapezoid...
|
||||
if (!bezier_2nd_half) {
|
||||
// Initialize the Bézier speed curve
|
||||
@ -1689,12 +1689,12 @@ uint32_t Stepper::stepper_block_phase_isr() {
|
||||
// make a note of the number of step loops required at nominal speed
|
||||
step_loops_nominal = step_loops;
|
||||
|
||||
#if DISABLED(BEZIER_JERK_CONTROL)
|
||||
#if DISABLED(S_CURVE_ACCELERATION)
|
||||
// Set as deceleration point the initial rate of the block
|
||||
acc_step_rate = current_block->initial_rate;
|
||||
#endif
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
// Initialize the Bézier speed curve
|
||||
_calc_bezier_curve_coeffs(current_block->initial_rate, current_block->cruise_rate, current_block->acceleration_time_inverse);
|
||||
|
||||
|
@ -117,7 +117,7 @@ class Stepper {
|
||||
static int32_t counter_X, counter_Y, counter_Z, counter_E;
|
||||
static uint32_t step_events_completed; // The number of step events executed in the current block
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
static int32_t bezier_A, // A coefficient in Bézier speed curve
|
||||
bezier_B, // B coefficient in Bézier speed curve
|
||||
bezier_C; // C coefficient in Bézier speed curve
|
||||
@ -149,7 +149,7 @@ class Stepper {
|
||||
static uint8_t step_loops, step_loops_nominal;
|
||||
|
||||
static uint32_t ticks_nominal;
|
||||
#if DISABLED(BEZIER_JERK_CONTROL)
|
||||
#if DISABLED(S_CURVE_ACCELERATION)
|
||||
static uint32_t acc_step_rate; // needed for deceleration start point
|
||||
#endif
|
||||
|
||||
@ -328,7 +328,7 @@ class Stepper {
|
||||
return timer;
|
||||
}
|
||||
|
||||
#if ENABLED(BEZIER_JERK_CONTROL)
|
||||
#if ENABLED(S_CURVE_ACCELERATION)
|
||||
static void _calc_bezier_curve_coeffs(const int32_t v0, const int32_t v1, const uint32_t av);
|
||||
static int32_t _eval_bezier_curve(const uint32_t curr_step);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user