Подробный гайд по настройке Z-щупа в Marlin 1.1.9 - Часть 3
9. Многократное измерение
Для повышения точности можно включить повторные опросы:
#define MULTIPLE_PROBING 2
или:
#define MULTIPLE_PROBING 3
Marlin будет несколько раз опрашивать точку и усреднять результат.
Для нестабильного щупа полезно.
10. Настройка автоуровня стола
Если щуп нужен для автоматического выравнивания, выберите один из типов.
Самый популярный и простой для новичка:
#define AUTO_BED_LEVELING_BILINEAR
Также можно использовать:
#define AUTO_BED_LEVELING_LINEAR
или:
#define AUTO_BED_LEVELING_3POINT
Для большинства принтеров рекомендую:
#define AUTO_BED_LEVELING_BILINEAR
Пример:
#define AUTO_BED_LEVELING_BILINEAR
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
#define GRID_MAX_POINTS_X 3
#define GRID_MAX_POINTS_Y 3
#endif
Если стол большой, можно сделать:
#define GRID_MAX_POINTS_X 4
#define GRID_MAX_POINTS_Y 4
или:
#define GRID_MAX_POINTS_X 5
#define GRID_MAX_POINTS_Y 5
Чем больше точек, тем точнее, но дольше.
11. Безопасный home по Z
Очень рекомендую включить:
#define Z_SAFE_HOMING
Тогда при G28 ось Z будет парковаться в безопасной точке, обычно в центре стола.
Пример:
#define Z_SAFE_HOMING
#if ENABLED(Z_SAFE_HOMING)
#define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE) / 2)
#define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE) / 2)
#endif
Это снижает риск воткнуть сопло в стол, клипсу или кривой край.
Также полезно:
#define Z_HOMING_HEIGHT 4
После home каретка поднимется на 4 мм.
12. Настройка подтяжки резисторов
Для механических концевиков включите подтяжку:
#define ENDSTOPPULLUPS
Или только для Z_MIN:
#define ENDSTOPPULLUP_ZMIN
Для индуктивных/ёмкостных датчиков подтяжка обычно не нужна, если датчик имеет собственный выходной каскад.
Если датчик ведёт себя нестабильно, проверьте питание, GND и экран проводов.
13. Пример базовой конфигурации для фиксированного датчика на Z_MIN
Пример для индуктивного или механического щупа, подключённого к Z_MIN:
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
#define Z_MIN_PROBE_ENDSTOP_INVERTING true
#define FIX_MOUNTED_PROBE
#define PROBE_OFFSET_FROM_EXTRUDER {0, 0, -1.0}
#define Z_PROBE_OFFSET_RANGE_MIN -20
#define Z_PROBE_OFFSET_RANGE_MAX 20
#define Z_CLEARANCE_DEPLOY_PROBE 10
#define Z_CLEARANCE_BETWEEN_PROBES 5
#define Z_CLEARANCE_MULTI_PROBE 5
#define XY_PROBE_SPEED 4000
#define Z_PROBE_SPEED 700
#define MULTIPLE_PROBING 2
#define AUTO_BED_LEVELING_BILINEAR
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
#define GRID_MAX_POINTS_X 3
#define GRID_MAX_POINTS_Y 3
#endif
#define Z_SAFE_HOMING
#define Z_HOMING_HEIGHT 4
Инверсию Z_MIN_PROBE_ENDSTOP_INVERTING обязательно проверяйте через M119.
14. Пример конфигурации для BLTouch
#define BLTOUCH
#define BLTOUCH_DELAY 500
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
#define Z_MIN_PROBE_ENDSTOP_INVERTING true
#define PROBE_OFFSET_FROM_EXTRUDER {0, 0, -1.5}
#define Z_PROBE_OFFSET_RANGE_MIN -20
#define Z_PROBE_OFFSET_RANGE_MAX 20
#define Z_CLEARANCE_DEPLOY_PROBE 10
#define Z_CLEARANCE_BETWEEN_PROBES 5
#define Z_CLEARANCE_MULTI_PROBE 5
#define XY_PROBE_SPEED 4000
#define Z_PROBE_SPEED 700
#define MULTIPLE_PROBING 2
#define AUTO_BED_LEVELING_BILINEAR
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
#define GRID_MAX_POINTS_X 3
#define GRID_MAX_POINTS_Y 3
#endif
#define Z_SAFE_HOMING
#define Z_HOMING_HEIGHT 4
Для BLTouch состояние инверсии лучше проверять командой M119.
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.