Перейти к основному содержанию

Ошибки движения, концевых выключателей и выравнивания

На этой странице собраны ошибки, связанные с перемещением, возвратом в ноль, концевыми выключателями, щупами, сеткой стола и выравниванием по нескольким осям Z. При работах, связанных с подключением, разъемами и ручной механической регулировкой, сначала отключайте питание.

Move out of range

Сообщение об ошибке: Целевая координата выходит за допустимый диапазон движения Klipper. В логе обычно отображается что-то вроде Move out of range: X Y Z [E].

Loading...

Распространенные причины:

  • Размеры машины в слайсере не соответствуют position_min / position_max в конфигурации Klipper.
  • В стартовом G-code, финишном G-code, макросе замены материала или паузы выполняется перемещение за пределы рабочей области машины.
  • После использования коррекции перекоса, смещения щупа или конфигурации сетки стола расчетные координаты становятся отрицательными или превышают максимальный ход.
  • Высота модели превышает максимальный ход по оси Z.

Методы решения:

  1. Определите по координатам в ошибке, какая ось вышла за пределы.
  2. Проверьте position_min, position_max для этой оси и размеры машины в слайсере.
  3. Проверьте координаты парковки в макросах старта, финиша, паузы, замены материала, избегайте остановки в точке 0,0 или на максимальных границах.
  4. Если ошибка возникает при обмере стола, проверьте mesh_min, mesh_max в [bed_mesh] и смещение щупа.
  5. Сохраните конфигурацию, перезапустите Klipper и повторите тест.

Соответствующие справочные материалы: Введение в макросы, Руководство по возврату в ноль и калибровке направления.

Unable to parse move / Invalid speed

Сообщение об ошибке: Unable to parse move 'G1 Z', Unable to parse move 'G1 X... Y... Z...', Invalid speed in 'G1 ...', Machine does not support G20 (inches) command, Unknown g-code state: xxx.

Распространенные причины:

  • Неполный формат строки G-code, например, в G1 Z отсутствует конкретное значение координаты.
  • Пустая переменная макроса, в итоговой команде перемещения отсутствуют значения X, Y, Z, E или F.
  • Ошибка в форматировании (переносы строк, фигурные скобки, имена переменных или экранирование) в стартовом/финишном G-code слайсера.
  • Параметр скорости F пуст, равен 0 или не является числом.
  • В файле G-code используется дюймовый режим G20, Klipper не поддерживает эту команду.
  • Несоответствие имен, используемых в SAVE_GCODE_STATE / RESTORE_GCODE_STATE в макросах.

Методы решения:

  1. Найдите в klippy.log полную строку ошибки, определите, какая команда G1, G0 или управления состоянием вызывает проблему.
  2. Проверьте макросы старта, финиша, паузы, возобновления и замены материала слайсера, убедитесь, что все команды перемещения содержат полные значения.
  3. Установите значения по умолчанию для параметров макросов и преобразуйте их в числа перед использованием, например, params.Z|default(10)|float.
  4. Убедитесь, что единицы измерения в слайсере установлены в миллиметры, не выводите G20.
  5. Если возникает ошибка Unknown g-code state, проверьте, что в SAVE_GCODE_STATE NAME= и RESTORE_GCODE_STATE NAME= используется одно и то же имя.

Соответствующие справочные материалы: Введение в макросы.

Must home axis first

Сообщение об ошибке: Ось еще не возвращена в ноль, нельзя выполнить текущую команду перемещения.

Распространенные причины:

  • После включения питания или FIRMWARE_RESTART не была выполнена команда G28.
  • В макросе сначала выполняется команда перемещения, а затем команда возврата в ноль.
  • После паузы, возобновления или отмены печати состояние машины было сброшено.
  • Некорректная конфигурация макроса возврата в ноль, макроса щупа или возврата в ноль без концевиков, из-за чего Klipper неправильно регистрирует состояние возврата.

Методы решения:

  1. Выполните G28 вручную перед перемещением соответствующей оси.
  2. Проверьте стартовый G-code и макросы, убедитесь, что возврат в ноль завершен перед командами перемещения.
  3. Если вы недавно обновляли Klipper или прошивку, проверьте совместимость макросов возврата в ноль с текущей версией.
  4. При использовании возврата в ноль без концевиков проверьте ток драйвера, чувствительность и homing_retract_dist.

Соответствующие справочные материалы: Руководство по возврату в ноль и калибровке направления, Использование без концевиков.

Endstop still triggered after retract

Сообщение об ошибке: После срабатывания концевого выключателя при возврате в ноль, по завершении расстояния отката концевой выключатель все еще находится в сработанном состоянии.

Распространенные причины:

  • Неправильно настроена логика нормально разомкнутого/нормально замкнутого концевого выключателя.
  • Концевой выключатель заклинило, он поврежден или неправильная распиновка.
  • Слишком маленькое значение homing_retract_dist, после отката выключатель все еще нажат.
  • Слишком высокая чувствительность при возврате в ноль без концевиков, после отката состояние все еще определяется как сработанное.
  • Ошибка в конфигурации enable_pin драйвера, направления двигателя или пина концевого выключателя, приводящая к некорректной работе возврата.

Методы решения:

Работа при отключенном питании

Перед проверкой разъема концевого выключателя, распиновки мотора или переподключением жгутов полностью выключите принтер и отключите источник питания. При тестировании под напряжением используйте только веб-команды и механически нажимайте на концевой выключатель, не прикасайтесь к клеммам.

  1. Выполните QUERY_ENDSTOPS, убедитесь, что в несработанном состоянии отображается open, а после ручного нажатия - TRIGGERED.
  2. Если состояние противоположное, откорректируйте ! перед пином концевого выключателя.
  3. После отключения питания проверьте механическое состояние концевого выключателя, распиновку и разъем.
  4. Увеличьте homing_retract_dist и повторите тест.
  5. При использовании возврата в ноль без концевиков снизьте чувствительность и убедитесь, что ток возврата подходит.

Соответствующие справочные материалы: О концевиках, Использование без концевиков.

No trigger on endstop after full movement

Сообщение об ошибке: No trigger on x after full movement, No trigger on y after full movement или аналогичное сообщение о том, что концевой выключатель не сработал.

Распространенные причины:

  • Неправильно настроено направление возврата в ноль, двигатель движется в сторону от концевого выключателя.
  • Концевой выключатель не подключен, разъем ослаблен или неправильная конфигурация пина.
  • position_endstop, position_min, position_max не соответствуют фактическому ходу, расстояние возврата недостаточно.
  • Слишком низкая чувствительность при возврате в ноль без концевиков, удар о механический концевик не определяется как срабатывание.
  • Неправильная распиновка мотора или конфигурация направления, ось движется в направлении, противоположном ожидаемому.

Методы решения:

  1. Выполните QUERY_ENDSTOPS, вручную нажмите концевой выключатель, убедитесь, что состояние меняется с open на TRIGGERED.
  2. Переместите ось на небольшое расстояние, чтобы определить направление, затем проверьте, нужно ли изменить ! перед dir_pin.
  3. Убедитесь, что homing_positive_dir совпадает с направлением, в котором находится концевой выключатель.
  4. Проверьте соответствие position_endstop, position_min, position_max фактическому механическому ходу.
  5. В сценарии возврата без концевиков снизьте скорость возврата и отрегулируйте чувствительность TMC.

Соответствующие справочные материалы: Руководство по возврату в ноль и калибровке направления, О концевиках.

Проблемы с щупом и выравниванием

Работа при отключенном питании

Перед проверкой подключения, разъемов или распиновки щупов BLTouch, Probe, TAP, Klicky, EDDY и т.д. полностью выключите принтер и отключите источник питания. При работе под напряжением выполняйте только запросы команд или наблюдайте за состоянием, не вставляйте и не извлекайте жгуты.

Probe triggered prior to movement

Сообщение об ошибке: Перед началом перемещения для возврата в ноль или измерения щуп уже находится в сработанном состоянии.

Причина ошибки:

  • Состояние щупа по умолчанию после подачи питания или сброса - TRIGGERED.
  • Неправильная распиновка или плохой контакт щупа, сигнал постоянно находится в сработанном состоянии.
  • Механическая неисправность щупа, например, стержень BLTouch застрял и не может втянуться.
  • Ось Z находится в самом нижнем положении, из-за чего щуп прижат.

Методы решения:

  1. Выполните QUERY_PROBE, убедитесь, что в состоянии, когда щуп не касается стола, отображается open.
  2. Выполните QUERY_ENDSTOPS, чтобы убедиться в правильности сигнала концевого выключателя/щупа.
  3. Для BLTouch: BLTOUCH_DEBUG COMMAND=pin_up убедитесь, что стержень втянут, затем QUERY_PROBE.
  4. Проверьте текущее положение оси Z, при необходимости поднимите ось Z.
  5. После отключения питания проверьте подключение щупа и конфигурацию sensor_pin.

Соответствующие справочные материалы: О концевиках, Часто используемые отладочные команды.

No trigger on probe after full movement

Сообщение об ошибке: Щуп не сработал в течение полного хода вниз.

Распространенные причины:

  • Ошибка в подключении, питании или конфигурации пина щупа.
  • Неподходящая высота установки щупа, он не может сработать в пределах хода вниз.
  • Ошибка в конфигурации направления оси Z, смещения щупа или области выравнивания.
  • Неисправность самого щупа или плохой контакт в жгуте при движении.

Методы решения:

  1. Выполните QUERY_PROBE, вручную активируйте щуп, убедитесь, что состояние меняется нормально.
  2. После отключения питания проверьте питание щупа, сигнальные линии и сконфигурированный пин.
  3. Проверьте высоту установки щупа, убедитесь, что перед опусканием он находится в диапазоне срабатывания.
  4. Проверьте, не выходят ли точки измерения за пределы стола в [probe], [bed_mesh], [z_tilt] или [quad_gantry_level].
  5. Если проблема возникает только в определенных позициях, особое внимание уделите протяжке жгута и смещению щупа.

Соответствующие справочные материалы: О концевиках, Введение в макросы.

Probe samples exceed samples_tolerance

Сообщение об ошибке: Probe samples exceed samples_tolerance или в логе многократно появляется Probe samples exceed tolerance. Retrying....

Распространенные причины:

  • Низкая повторяемость щупа, разница по высоте Z между несколькими измерениями превышает samples_tolerance.
  • Стол, портал, хотэнд или щуп закреплены ненадежно, есть люфт при измерении.
  • Слишком высокая скорость щупа или неподходящее расстояние опускания/отскока.
  • Влияние температурного дрейфа или электромагнитных помех на индуктивные, вихретоковые или тензодатчики.

Методы решения:

  1. Проверьте надежность крепления щупа, хотэнда, платформы стола и портала.
  2. Уменьшите speed в [probe], немного увеличьте sample_retract_dist.
  3. Временно ослабьте samples_tolerance для теста, например, с 0.01 до 0.03 или 0.05.
  4. Если используется индуктивный/вихретоковый щуп, дождитесь стабилизации температуры стола и сопла перед выравниванием.
  5. Если проблема возникает только в одной области, проверьте поверхность стола, магнитный лист, протяжку жгута и смещение щупа в этой области.

Соответствующие справочные материалы: Калибровка машины, Введение в макросы.

Must home before probe

Сообщение об ошибке: Must home before probe.

Распространенные причины:

  • Команды PROBE, BED_MESH_CALIBRATE, Z_TILT_ADJUST или QUAD_GANTRY_LEVEL выполняются без предварительного G28.
  • Перед вызовом команды выравнивания в макросе не гарантируется, что оси X/Y/Z возвращены в ноль.
  • После FIRMWARE_RESTART, аварийной остановки или восстановления после ошибки Klipper сбросил состояние возврата в ноль.

Методы решения:

  1. Сначала выполните G28, затем выполняйте команды щупа или выравнивания.
  2. Добавьте проверку возврата в ноль или просто G28 в начало макроса выравнивания.
  3. Если используется отдельный Z-щуп, убедитесь, что конфигурация endstop_pin: probe:z_virtual_endstop и [probe] полна.

Соответствующие справочные материалы: Руководство по возврату в ноль и калибровке направления, Введение в макросы.

BLTouch failed to verify sensor state

Сообщение об ошибке: BLTouch failed to verify sensor state; retrying. Ошибка после многократных повторов.

Распространенные причины:

  • Пиратский/клонированный BLTouch не может пройти внутреннюю проверку датчика Klipper.
  • Для sensor_pin не настроен подтягивающий резистор (отсутствует префикс ^).
  • Ошибка в подключении управляющего пина или пина датчика BLTouch.
  • Самотестирование щупа не удалось, мигает красный светодиод.

Методы решения:

  1. Сначала выполните BLTOUCH_DEBUG COMMAND=pin_down, BLTOUCH_DEBUG COMMAND=touch_mode и QUERY_PROBE, чтобы проверить состояние.
  2. Если ручной тест проходит, но авто-возврат/измерение все равно выдает ошибку, добавьте в [bltouch]:
    pin_up_touch_mode_reports_triggered: False
  3. Убедитесь, что для sensor_pin настроен подтягивающий резистор, например, sensor_pin: ^PC4.
  4. Проверьте, нормально ли проходит самотестирование BLTouch: после подачи питания стержень несколько раз выдвигается и втягивается, постоянно горящий красный светодиод - это нормально.

BLTouch failed to raise probe

Сообщение об ошибке: После возврата в ноль или измерения Klipper обнаружил, что стержень BLTouch не втянулся успешно.

Распространенные причины:

  • Старые версии клонов BLTouch не могут сообщить о состоянии втягивания стержня.
  • Механическое заедание стержня, смещение магнитного сердечника или ослабление винтов.
  • Ошибка в подключении или конфигурации control_pin.

Методы решения:

  1. Проверьте функцию управления щупом: BLTOUCH_DEBUG COMMAND=pin_down и BLTOUCH_DEBUG COMMAND=pin_up.
  2. Если движение нормальное, но ошибка все равно появляется, добавьте в [bltouch]:
    pin_up_reports_not_triggered: False
  3. Если стержень застрял, рекомендуется заменить модуль щупа или обратиться в службу поддержки, не разбирайте электрооборудование под напряжением.

horizontal_move_z can't be less than probe's z_offset

Сообщение об ошибке: horizontal_move_z can't be less than probe's z_offset.

Распространенные причины:

  • Сохраненный z_offset после PROBE_CALIBRATE больше, чем horizontal_move_z в конфигурации выравнивания.
  • После замены сопла, держателя щупа или хотэнда высота установки щупа сильно изменилась.
  • В нескольких include-файлах дублируется конфигурация horizontal_move_z или z_offset.

Методы решения:

  1. Найдите все вхождения horizontal_move_z и z_offset, определите окончательную действующую конфигурацию.
  2. Установите horizontal_move_z в соответствующей конфигурации выравнивания на значение, большее, чем z_offset щупа, для безопасности.
  3. Если z_offset аномально велик, заново проверьте высоту установки щупа и выполните PROBE_CALIBRATE.
  4. После сохранения выполните RESTART, затем повторите тест BED_MESH_CALIBRATE или команды выравнивания.

Соответствующие справочные материалы: Калибровка машины, Введение в макросы.

bed_mesh: cannot exceed a probe_count of 6

Сообщение об ошибке: bed_mesh: cannot exceed a probe_count of 6 when using lagrange interpolation.

Причина ошибки: Интерполяция lagrange склонна к осцилляции при большом количестве сэмплов. Klipper ограничивает количество точек измерения на одну ось до 6 при использовании этого алгоритма.

Методы решения:

  1. Если требуется сетка 7x7, 9x9 или плотнее, установите в [bed_mesh]:
    algorithm: bicubic
  2. Если плотная сетка не нужна, уменьшите probe_count до 6,6 или меньше.
  3. При использовании адаптивной сетки, передаваемой слайсером или макросом PROBE_COUNT, также убедитесь в соответствии итогового количества точек и алгоритма.
  4. После изменения сохраните и выполните RESTART.

Соответствующие справочные материалы: Введение в макросы.

bed_mesh: Unknown profile

Сообщение об ошибке: bed_mesh: Unknown profile [xxx] или при загрузке конфигурации сетки стола сообщается, что профиль не найден.

Распространенные причины:

  • В стартовом G-code или макросе выполняется BED_MESH_PROFILE LOAD=xxx, но профиль с таким именем никогда не сохранялся.
  • Была выполнена команда BED_MESH_CLEAR или удалены данные сетки из автоматически сохраненной области.
  • После завершения калибровки сетки стола не была выполнена команда SAVE_CONFIG.
  • Несовпадение регистра или наличие пробелов в имени профиля.

Методы решения:

  1. Выполните BED_MESH_OUTPUT или просмотрите автоматически сохраненную область в конце конфигурации, чтобы узнать существующие имена профилей.
  2. Если нужного профиля нет, заново выполните BED_MESH_CALIBRATE, затем SAVE_CONFIG.
  3. Измените BED_MESH_PROFILE LOAD= в стартовом G-code, чтобы имя совпадало с фактически сохраненным.
  4. Если сетка строится заново перед каждой печатью, можно удалить ненужную команду загрузки профиля.

Соответствующие справочные материалы: Введение в макросы.

Ошибки расширенной конфигурации bed_mesh

Сообщение об ошибке: bed_mesh: ERROR, fade_target lies outside of mesh z range, bed_mesh: Mesh extends outside of the fade range, bed_mesh: Cannot probe zero reference position, bed_mesh: invalid min/max points, bed_mesh: malformed 'xxx' value.

Распространенные причины:

  • fade_target выходит за пределы текущего диапазона высот Z сетки, или данные сетки имеют слишком большое общее отклонение.
  • mesh_min, mesh_max, zero_reference_position после расчета со смещением щупа попадают в недоступную для измерения область.
  • faulty_region перекрывает нулевую опорную точку, из-за чего Klipper не может измерить опорную позицию.
  • Неправильный формат списка координат, отсутствуют запятые или используются символы пунктуации другого языка.
  • MESH_MIN / MESH_MAX, передаваемые макросом адаптивной сетки, не соответствуют размерам машины и смещению щупа.

Методы решения:

  1. Проверьте mesh_min, mesh_max, probe_count, fade_start, fade_end, fade_target в [bed_mesh].
  2. Если значение fade_target неясно, лучше удалить этот параметр, позволив Klipper использовать поведение по умолчанию.
  3. Убедитесь, что все точки измерения с учетом x_offset / y_offset из [probe] находятся в пределах досягаемости машины.
  4. Если настроены zero_reference_position или faulty_region, убедитесь, что нулевая опорная точка не попадает в область сбоя.
  5. При ошибках адаптивной сетки сначала протестируйте с фиксированными mesh_min / mesh_max, чтобы убедиться в нормальной работе базовой конфигурации сетки, затем возвращайте макрос.

Соответствующие справочные материалы: Введение в макросы, Калибровка машины.

Ошибки Z_TILT_ADJUST / QUAD_GANTRY_LEVEL

Сообщение об ошибке: Z_TILT_ADJUST: Point X,Y not reachable with current probe offset, QUAD_GANTRY_LEVEL: Max adjustment X.XXXX exceeds limit или отклонение после выравнивания портала все еще слишком велико.

Распространенные причины:

  • Неправильная конфигурация смещения щупа, из-за чего рассчитанные точки измерения выходят за пределы стола.
  • Отклонение портала по нескольким осям Z превышает допустимый предел max_adjust.
  • Несовпадение направления двигателей Z, приводящее к наклону портала в противоположную сторону.
  • Неодинаковая высота установки концевых выключателей, после возврата в ноль начальные положения разных осей Z сильно различаются.
  • Ослабление механической конструкции портала, проскальзывание ремня или чрезмерный зазор в ходовой гайке/винте.

Методы решения:

Работа при отключенном питании

Перед ручной регулировкой винтов Z, синхронных ремней, муфт или проверкой установки концевых выключателей портала полностью выключите принтер и отключите источник питания. Не пытайтесь принудительно вращать винты или синхронные ремни, когда двигатели находятся под напряжением и удерживают момент.

  1. Проверьте x_offset, y_offset в [probe], а также points в [z_tilt] или [quad_gantry_level].
  2. Если отклонение превышает max_adjust, полностью обесточьте принтер, вручную выровняйте портал примерно, затем снова включите питание, выполните возврат в ноль и выравнивание.
  3. Выполните STEPPER_BUZZ STEPPER=stepper_z и STEPPER_BUZZ STEPPER=stepper_z1 (по фактическим именам), чтобы убедиться, что направление движения каждого Z-мотора совпадает.
  4. После отключения питания проверьте одинаковость высоты установки концевых выключателей портала, затяжку ходовых гаек/винтов, натяжение синхронных ремней и отсутствие проскальзывания муфт.
  5. Если просто слишком мало значение max_adjust, можно немного увеличить его, но не более чем в 2-3 раза от значения по умолчанию.

Соответствующие справочные материалы: Руководство по возврату в ноль и калибровке направления.

Loading...