Подробный гайд по настройке Z-щупа в Marlin 1.1.9 - Часть 5
18. Типичные проблемы и решения
18.1. M119 всегда показывает TRIGGERED
Причины:
- неправильная инверсия;
- датчик постоянно срабатывает;
- рядом металл;
- короткое замыкание;
- питание датчика неправильное;
- сигнальный провод замкнут на GND или питание.
Решение:
- Отключите датчик.
- Проверьте
M119. - Подключите снова.
- Подберите инверсию:
#define Z_MIN_PROBE_ENDSTOP_INVERTING true
или:
#define Z_MIN_PROBE_ENDSTOP_INVERTING false
18.2. M119 всегда показывает open
Причины:
- датчик не питается;
- неверный пин;
- оборван провод;
- датчик не срабатывает;
- нет подтяжки для механического концевика.
Решение:
- проверить питание;
- проверить GND;
- проверить сигнальный провод;
- проверить
pins_*.h; - для механического концевика включить:
#define ENDSTOPPULLUP_ZMIN
18.3. При G28 сопло втыкается в стол
Причины:
- датчик не срабатывает;
- инверсия неправильная;
- датчик установлен слишком высоко;
- щуп не опускается;
- выбран неправильный пин;
Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PINне включён.
Перед каждым G28 держите руку на кнопке питания.
Проверьте:
M119
Если при поднесении металла/нажатии щупа нет TRIGGERED, не делайте G28.
18.4. Щуп срабатывает слишком высоко
Если после G28 сопло далеко от стола, измените:
#define PROBE_OFFSET_FROM_EXTRUDER {0, 0, -1.0}
или откалибруйте через:
M851
18.5. Щуп срабатывает слишком поздно
Если сопло почти упирается в стол перед срабатыванием:
- опустите датчик физически;
- измените смещение по Z;
- уменьшите скорость щупа:
#define Z_PROBE_SPEED 500
18.6. Ошибка выхода щупа за границы стола
Проверьте:
#define PROBE_OFFSET_FROM_EXTRUDER {0, 0, 0}
Если датчик сильно смещён, точки автоуровня могут выходить за пределы стола.
Также проверьте параметры:
#define MIN_PROBE_EDGE
#define LEFT_PROBE_BED_POSITION
#define RIGHT_PROBE_BED_POSITION
#define FRONT_PROBE_BED_POSITION
#define BACK_PROBE_BED_POSITION
18.7. BLTouch не выдвигается
Проверьте:
- питание серво-части;
- правильность пина
SERVO0_PIN; - включён ли
#define BLTOUCH; - достаточна ли задержка:
#define BLTOUCH_DELAY 500
Проверьте вручную:
M280 P0 S10
M280 P0 S90
M280 P0 S160
18.8. BLTouch выдаёт ошибку
Обычно помогает:
M280 P0 S160
Если не помогает:
- перезагрузите принтер;
- проверьте питание;
- проверьте провода датчика;
- увеличьте
BLTOUCH_DELAY; - проверьте, не перекошен ли щуп.
19. Настройка в Configuration_adv.h
Откройте:
Marlin/Configuration_adv.h
Полезно включить:
#define EEPROM_SETTINGS
Если его нет в Configuration.h, он может быть в другом месте, в зависимости от версии.
Также полезны:
#define BABYSTEPPING
и, если есть:
#define BABYSTEP_ZPROBE_OFFSET
Это позволит менять Z-offset прямо во время печати.
20. Рекомендуемый порядок настройки с нуля
- Соберите и закрепите щуп.
- Проверьте провода.
- Подключите датчик к нужному пину.
4. Включите:
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
5. Выберите тип щупа:
#define FIX_MOUNTED_PROBE
или:
#define BLTOUCH
или:
#define Z_ENDSTOP_SERVO_NR 0
#define Z_SERVO_ANGLES {70, 0}
- Настройте инверсию через
M119.
7. Настройте:
#define PROBE_OFFSET_FROM_EXTRUDER {0, 0, 0}
8. Включите автоуровень:
#define AUTO_BED_LEVELING_BILINEAR
9. Включите:
#define Z_SAFE_HOMING
10. Установите безопасные высоты:
#define Z_CLEARANCE_DEPLOY_PROBE 10
#define Z_CLEARANCE_BETWEEN_PROBES 5
11. Установите медленную скорость щупа:
#define Z_PROBE_SPEED 500
- Прошейте принтер.
13. Сбросьте настройки:
M502
M500
- Проверьте
M119. - Аккуратно выполните
G28. - Проверьте
G30. - Проверьте повторяемость
M48. - Откалибруйте
M851.
19. Сохраните:
M500
21. Минимальный рабочий пример
Если нужен простой безопасный минимум для фиксированного щупа на 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_CLEARANCE_DEPLOY_PROBE 10
#define Z_CLEARANCE_BETWEEN_PROBES 5
#define XY_PROBE_SPEED 4000
#define Z_PROBE_SPEED 500
#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
#define EEPROM_SETTINGS
После прошивки обязательно проверьте инверсию через M119.
22. Важные команды для диагностики
| Команда | Назначение |
|---|---|
M119 |
проверить состояние концевиков и щупа |
M502 |
сбросить настройки на значения по умолчанию |
M500 |
сохранить настройки в EEPROM |
M501 |
прочитать настройки из EEPROM |
G28 |
парковка в исходное положение |
G29 |
автоматическое выравнивание стола |
G30 |
одиночное измерение щупом |
M48 |
тест повторяемости щупа |
M851 |
установка Z-offset щупа |
M290 |
babystepping, ручная подстройка по Z |
M280 |
управление сервоприводом / BLTouch |
23. Короткая памятка
Для быстрого старта:
#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_CLEARANCE_DEPLOY_PROBE 10
#define Z_CLEARANCE_BETWEEN_PROBES 5
#define XY_PROBE_SPEED 4000
#define Z_PROBE_SPEED 500
#define MULTIPLE_PROBING 2
#define AUTO_BED_LEVELING_BILINEAR
#define GRID_MAX_POINTS_X 3
#define GRID_MAX_POINTS_Y 3
#define Z_SAFE_HOMING
#define Z_HOMING_HEIGHT 4
Затем:
M502
M500
M119
G28
G30
M48 P10
M851 Z-0.15
M500
Значение M851 подберите под ваш принтер и лист бумаги.
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.