mirror of
https://github.com/MarlinFirmware/Configurations.git
synced 2025-07-08 07:27:44 -06:00
parent
5ea5c385d2
commit
b62e73a728
260 changed files with 13519 additions and 12478 deletions
|
@ -1988,65 +1988,69 @@
|
|||
|
||||
/**
|
||||
* Thermal Probe Compensation
|
||||
* Probe measurements are adjusted to compensate for temperature distortion.
|
||||
* Use G76 to calibrate this feature. Use M871 to set values manually.
|
||||
* For a more detailed explanation of the process see G76_M871.cpp.
|
||||
*
|
||||
* Adjust probe measurements to compensate for distortion associated with the temperature
|
||||
* of the probe, bed, and/or hotend.
|
||||
* Use G76 to automatically calibrate this feature for probe and bed temperatures.
|
||||
* (Extruder temperature/offset values must be calibrated manually.)
|
||||
* Use M871 to set temperature/offset values manually.
|
||||
* For more details see https://marlinfw.org/docs/features/probe_temp_compensation.html
|
||||
*/
|
||||
#if HAS_BED_PROBE && TEMP_SENSOR_PROBE && TEMP_SENSOR_BED
|
||||
// Enable thermal first layer compensation using bed and probe temperatures
|
||||
#define PROBE_TEMP_COMPENSATION
|
||||
//#define PTC_PROBE // Compensate based on probe temperature
|
||||
//#define PTC_BED // Compensate based on bed temperature
|
||||
//#define PTC_HOTEND // Compensate based on hotend temperature
|
||||
|
||||
// Add additional compensation depending on hotend temperature
|
||||
// Note: this values cannot be calibrated and have to be set manually
|
||||
#if ENABLED(PROBE_TEMP_COMPENSATION)
|
||||
#if ANY(PTC_PROBE, PTC_BED, PTC_HOTEND)
|
||||
/**
|
||||
* If the probe is outside the defined range, use linear extrapolation with the closest
|
||||
* point and the point with index PTC_LINEAR_EXTRAPOLATION. e.g., If set to 4 it will use the
|
||||
* linear extrapolation between data[0] and data[4] for values below PTC_PROBE_START.
|
||||
*/
|
||||
//#define PTC_LINEAR_EXTRAPOLATION 4
|
||||
|
||||
#if ENABLED(PTC_PROBE)
|
||||
// Probe temperature calibration generates a table of values starting at PTC_PROBE_START
|
||||
// (e.g., 30), in steps of PTC_PROBE_RES (e.g., 5) with PTC_PROBE_COUNT (e.g., 10) samples.
|
||||
#define PTC_PROBE_START 30 // (°C)
|
||||
#define PTC_PROBE_RES 5 // (°C)
|
||||
#define PTC_PROBE_COUNT 10
|
||||
#define PTC_PROBE_ZOFFS { 0 } // (µm) Z adjustments per sample
|
||||
#endif
|
||||
|
||||
#if ENABLED(PTC_BED)
|
||||
// Bed temperature calibration builds a similar table.
|
||||
#define PTC_BED_START 60 // (°C)
|
||||
#define PTC_BED_RES 5 // (°C)
|
||||
#define PTC_BED_COUNT 10
|
||||
#define PTC_BED_ZOFFS { 0 } // (µm) Z adjustments per sample
|
||||
#endif
|
||||
|
||||
#if ENABLED(PTC_HOTEND)
|
||||
// Note: There is no automatic calibration for the hotend. Use M871.
|
||||
#define PTC_HOTEND_START 180 // (°C)
|
||||
#define PTC_HOTEND_RES 5 // (°C)
|
||||
#define PTC_HOTEND_COUNT 20
|
||||
#define PTC_HOTEND_ZOFFS { 0 } // (µm) Z adjustments per sample
|
||||
#endif
|
||||
|
||||
// G76 options
|
||||
#if BOTH(PTC_PROBE, PTC_BED)
|
||||
// Park position to wait for probe cooldown
|
||||
#define PTC_PARK_POS { 0, 0, 100 }
|
||||
|
||||
// Probe position to probe and wait for probe to reach target temperature
|
||||
//#define PTC_PROBE_POS { 12.0f, 7.3f } // Example: MK52 magnetic heatbed
|
||||
#define PTC_PROBE_POS { 90, 100 }
|
||||
|
||||
// Enable additional compensation using hotend temperature
|
||||
// Note: this values cannot be calibrated automatically but have to be set manually via M871.
|
||||
//#define USE_TEMP_EXT_COMPENSATION
|
||||
|
||||
// Probe temperature calibration generates a table of values starting at PTC_SAMPLE_START
|
||||
// (e.g., 30), in steps of PTC_SAMPLE_RES (e.g., 5) with PTC_SAMPLE_COUNT (e.g., 10) samples.
|
||||
|
||||
//#define PTC_SAMPLE_START 30 // (°C)
|
||||
//#define PTC_SAMPLE_RES 5 // (°C)
|
||||
//#define PTC_SAMPLE_COUNT 10
|
||||
|
||||
// Bed temperature calibration builds a similar table.
|
||||
|
||||
//#define BTC_SAMPLE_START 60 // (°C)
|
||||
//#define BTC_SAMPLE_RES 5 // (°C)
|
||||
//#define BTC_SAMPLE_COUNT 10
|
||||
|
||||
#if ENABLED(USE_TEMP_EXT_COMPENSATION)
|
||||
//#define ETC_SAMPLE_START 180 // (°C)
|
||||
//#define ETC_SAMPLE_RES 5 // (°C)
|
||||
//#define ETC_SAMPLE_COUNT 20
|
||||
#endif
|
||||
|
||||
// The temperature the probe should be at while taking measurements during bed temperature
|
||||
// calibration.
|
||||
//#define BTC_PROBE_TEMP 30 // (°C)
|
||||
// The temperature the probe should be at while taking measurements during
|
||||
// bed temperature calibration.
|
||||
#define PTC_PROBE_TEMP 30 // (°C)
|
||||
|
||||
// Height above Z=0.0 to raise the nozzle. Lowering this can help the probe to heat faster.
|
||||
// Note: the Z=0.0 offset is determined by the probe offset which can be set using M851.
|
||||
//#define PTC_PROBE_HEATING_OFFSET 0.5
|
||||
|
||||
// Height to raise the Z-probe between heating and taking the next measurement. Some probes
|
||||
// may fail to untrigger if they have been triggered for a long time, which can be solved by
|
||||
// increasing the height the probe is raised to.
|
||||
//#define PTC_PROBE_RAISE 15
|
||||
|
||||
// If the probe is outside of the defined range, use linear extrapolation using the closest
|
||||
// point and the PTC_LINEAR_EXTRAPOLATION'th next point. E.g. if set to 4 it will use data[0]
|
||||
// and data[4] to perform linear extrapolation for values below PTC_SAMPLE_START.
|
||||
//#define PTC_LINEAR_EXTRAPOLATION 4
|
||||
// Note: The Z=0.0 offset is determined by the probe Z offset (e.g., as set with M851 Z).
|
||||
#define PTC_PROBE_HEATING_OFFSET 0.5
|
||||
#endif
|
||||
#endif
|
||||
#endif // PTC_PROBE || PTC_BED || PTC_HOTEND
|
||||
|
||||
// @section extras
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue