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

Проблемы конфигурации компенсации резонанса и упреждения давления

На этой странице собраны ошибки конфигурации и проблемы настройки, связанные с Input Shaper (компенсация резонанса) и Pressure Advance (упреждение давления). По вопросам подключения аппаратного обеспечения акселерометра и ошибок связи обратитесь к разделу Тестирование и калибровка акселерометра.

Усиление вибрационных дефектов или размытие печати после включения Input Shaper

Симптомы: После настройки [input_shaper] вибрационные дефекты на поверхности отпечатка (призраки/волны) становятся более заметными, чем до включения, или детали становятся размытыми, углы округляются.

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

  • shaper_freq_x / shaper_freq_y сильно отклоняются от фактической резонансной частоты.
  • shaper_type выбран неподходящим для текущей модели станка (например, использование 2hump_ei на жесткой конструкции приводит к чрезмерному сглаживанию).
  • Ослабление механической конструкции (ослабленный ремень, большой люфт каретки/направляющих, незатянутые винты), компенсация резонанса не может исправить механические проблемы.
  • После включения Input Shaper не была выполнена повторная калибровка Pressure Advance, их叠加 приводит к аномальной экструзии.

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

  1. Сначала исключите механические проблемы: при выключенном питании проверьте натяжение ремней, люфт кареток/направляющих, затяжку винтов рамы.

  2. Выполните повторное измерение резонанса для получения точных частот:

    TEST_RESONANCES AXIS=X
    TEST_RESONANCES AXIS=Y
  3. Выберите подходящий тип формирователя на основе графика резонанса:

    ФормировательОбласть примененияДопуск по частотеВлияние на сглаживание
    zvВысокожесткие, низковибрационные станки±5%Наименьшее
    mzvБольшинство настольных станков (рекомендуется первым)±10%Среднее
    eiСтанки с подвижной станиной / высокая вибрация±20%Средне-высокое
    2hump_eiНаличие нескольких резонансных частот±45%Высокое
    3hump_eiСложные резонансные режимы±60%Наивысшее
  4. После включения Input Shaper необходимо повторно откалибровать Pressure Advance:

    SET_PRESSURE_ADVANCE ADVANCE=0
    TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005
  5. При сильном размытии попробуйте снизить shaper_freq примерно на 5–10% или переключиться на формирователь с меньшим допуском.

Справочная информация по конфигурации: Официальная документация Klipper по компенсации резонанса.

Ошибки конфигурации TEST_RESONANCES / SHAPER_CALIBRATE

Сообщения об ошибках:

  • accel_chip not configured / No accelerometer configured
  • probe_points must be specified или координаты выходят за пределы области печати
  • Invalid accel_chip / не удается найти указанное имя чипа

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

  • В [resonance_tester] не настроен accel_chip, или имя не совпадает с именем секции [adxl345] / [mpu9250] / [lis2dw].
  • Координаты probe_points выходят за пределы position_max, определенного в [stepper_x] / [stepper_y].
  • При настройке нескольких акселерометров в accel_chip указан неверный регистр или префикс.

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

  1. Убедитесь, что имена секций конфигурации совпадают:

    [adxl345]
    cs_pin: toolboard:gpio12
    spi_bus:spi0_gpio4_gpio3_gpio2

    [resonance_tester]
    accel_chip: adxl345
    probe_points:
    150, 150, 20
  2. Координаты X, Y в probe_points должны находиться в пределах области печати, координата Z — это высота сопла над столом во время теста (рекомендуется 20 мм).

  3. При использовании акселерометра на инструментальной плате имя accel_chip должно полностью совпадать с именем секции (с учетом регистра).

  4. В сценарии с несколькими чипами можно указать accel_chip_x и accel_chip_y для соответствия разным осям.

Ошибки аппаратной связи: если ACCELEROMETER_QUERY возвращает таймаут или ошибку ID, обратитесь к разделу Тестирование и калибровка акселерометра для решения распространенных проблем.

axes_map не определяется автоматически

Симптомы: ACCELEROMETER_QUERY возвращает данные нормально, но после выполнения TEST_RESONANCES / SHAPER_CALIBRATE направление графика резонанса аномально, результаты осей X/Y疑似互换, или качество печати не улучшается после включения Input Shaper.

Пояснение:

В Klipper конфигурации акселерометров [adxl345], [lis2dw], [mpu9250], [bmi160], [icm20948] используют один и тот же тип логики анализа axes_map. Klipper только считывает axes_map из конфигурации и не определяет автоматически сопоставление координат по направлению установки датчика.

Если axes_map не заполнен, значение по умолчанию:

axes_map: x,y,z

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

  • Направление установки инструментальной платы или внешнего акселерометра не совпадает с направлением осей X/Y/Z принтера.
  • Скопирована конфигурация другой модели станка или другого направления установки, что приводит к ошибке в порядке или знаках x, y, z.
  • После замены инструментальной платы, корпуса сопла или места установки акселерометра не была повторно проверена axes_map.

Правильное написание:

axes_map должен содержать 3 оси, поддерживается перестановка осей и инверсия:

[adxl345]
axes_map: x,y,z

# Пример: X без изменений, Y/Z переставлены
# axes_map: x,z,y

# Пример: направления X/Y инвертированы, Z без изменений
# axes_map: -x,-y,z

Метод проверки:

  1. Сначала убедитесь, что связь с акселерометром нормальная:

    ACCELEROMETER_QUERY
  2. Начните запись данных акселерометра, затем протестируйте направления X и Y с помощью небольших перемещений:

    ACCELEROMETER_MEASURE
    G91
    G1 X10 F3000
    G1 X-10 F3000
    G1 Y10 F3000
    G1 Y-10 F3000
    G90
    ACCELEROMETER_MEASURE NAME=axes_map_check
  3. Просмотрите в /tmp/<тип_чипа>-axes_map_check.csv, какой столбец данных изменяется больше всего при перемещении по X/Y. Например, для [adxl345] будет создан файл /tmp/adxl345-axes_map_check.csv; при использовании секции с именем (например, [adxl345 hotend]) имя файла будет содержать соответствующее имя чипа.

  4. Если при перемещении по X основной отклик появляется в Y или Z, это означает, что порядок осей требует корректировки; если направление отклика противоположное, добавьте - перед соответствующей осью.

  5. В сценарии с несколькими акселерометрами к ACCELEROMETER_MEASURE можно добавить CHIP=<имя_чипа> для указания тестируемого акселерометра.

  6. После изменения axes_map выполните RESTART, затем повторно запустите TEST_RESONANCES или SHAPER_CALIBRATE.

Совет

axes_map влияет только на то, как данные акселерометра сопоставляются с координатами принтера, и не исправляет проблемы связи с акселерометром. Если ACCELEROMETER_QUERY сам по себе выдает ошибку, сначала решите проблемы связи или подключения акселерометра.

Failed to configure shaper(s)

Сообщения об ошибках: configparser.Error: Failed to configure shaper(s) shaper_x with given parameters, Failed to configure shaper(s) shaper_z with given parameters.

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

  • shaper_freq_x или shaper_freq_y выходят за пределы доступного диапазона частот для выбранного shaper_type. Например, mzv может не иметь допустимого решения на более высоких частотах.
  • damping_ratio задан неправильно (слишком малое или слишком большое значение), что приводит к невозможности генерации допустимых параметров формирователя.
  • Вручную указана комбинация параметров, не проверенная с помощью SHAPER_CALIBRATE.

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

  1. Повторно выполните SHAPER_CALIBRATE, используйте автоматически рекомендованные shaper_type и shaper_freq.
  2. При ручной настройке попробуйте снизить shaper_freq или переключиться на формирователь с большим допуском (например, ei или 2hump_ei).
  3. Убедитесь, что damping_ratio находится в разумном диапазоне (по умолчанию 0.1, обычный диапазон 0.05–0.2).
  4. Если необходимо отключить формирователь для какой-либо оси, задайте shaper_freq_x: 0, а не вводите недопустимое значение.

Слишком высокое значение shaper_freq приводит к постороннему шуму двигателя или потере шагов

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

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

  • Значение shaper_freq установлено значительно выше фактической резонансной частоты (например, фактическая 40 Гц, а задано 80 Гц).
  • Ошибка интерпретации графика резонанса, пик шума принят за резонансную частоту.
  • max_accel установлен слишком высоко, превышая возможности крутящего момента двигателя. Способы решения:
  1. Повторно выполните SHAPER_CALIBRATE, чтобы автоматически рекомендовать частоту и тип шейпера.

  2. При ручной интерпретации графика резонанса выбирайте частоту, соответствующую самому высокому и самому резкому пику, игнорируя низкие и широкие шумы.

  3. Снизьте max_accel до диапазона, в котором двигатели не теряют шаги (рекомендуется начинать с 3000 и постепенно повышать):

    [printer]
    max_accel: 3000
  4. Если двигатели продолжают издавать посторонние звуки, временно отключите Input Shaper, чтобы подтвердить, является ли это проблемой конфигурации:

    SET_INPUT_SHAPER SHAPER_FREQ_X=0 SHAPER_FREQ_Y=0

После включения Pressure Advance появляются вздутия на углах или нехватка материала

Симптомы: После включения pressure_advance на углах напечатанных деталей появляется скопление материала (вздутия) или перед углом наблюдается нехватка материала/утоньшение линии.

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

  • Слишком малое значение PA: остаточное давление в сопле недостаточно компенсируется при замедлении → вздутия на углах.
  • Слишком большое значение PA: чрезмерный ретракт при ускорении → нехватка материала перед углом, утоньшение линий.
  • В слайсере одновременно включены Coasting или Extra restart distance, что конфликтует с компенсацией PA.
  • Не откалиброван rotation_distance экструдера, базовый объем экструзии неточен.

Способы решения:

  1. Убедитесь, что в слайсере отключены Coasting, Extra restart distance и динамическое управление ускорением.

  2. Сначала откалибруйте rotation_distance экструдера, затем калибруйте PA.

  3. Используйте TUNING_TOWER для печати тестовой башни:

    SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500
    TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005

    Для экструдера с прямым приводом используйте FACTOR=.005, для удаленного Bowden — FACTOR=.020.

  4. Выберите слой с наиболее четкими углами и равномерными линиями, соответствующую высоту, и рассчитайте значение PA:

    pressure_advance = START + высота × FACTOR

  5. Типичные диапазоны значений: прямой привод 0.02–0.15, Bowden 0.1–1.0. Если улучшений нет даже при значении более 1.0, проблема не в PA.

Соответствующая справочная конфигурация: Официальная документация Klipper Pressure Advance.

Слишком высокое значение PA приводит к пропуску шагов экструдера

Симптомы: При использовании высоких значений pressure_advance (например, >0.2) на этапах ускорения/замедления экструдер издает щелчки или на отпечатке появляются обрывы нити.

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

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

Способы решения:

  1. Снизьте max_accel, уменьшив мгновенный объем экструзии при компенсации PA.
  2. Соответственно уменьшите значение PA, найдя баланс между качеством углов и надежностью экструзии.
  3. Проверьте, достаточно ли тока экструдера (настройка run_current для драйверов TMC).
  4. Убедитесь, что филамент не проскальзывает (проверьте износ подающей шестерни, давление пружины).
Внимание

Система PA не изменяет время печати и общий объем экструзии, она лишь перераспределяет движение экструзии на этапах ускорения и замедления. Чрезвычайно высокие значения PA приводят к очень большим мгновенным движениям экструдера, и не существует параметров конфигурации для ограничения амплитуды этих движений.

Неправильная настройка pressure_advance_smooth_time

Симптомы: На поверхности печати появляются периодические волны, скорость экструзии неравномерна, или переходы на углах выглядят неестественно.

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

  • Слишком большое значение pressure_advance_smooth_time (>0.1s), компенсация PA реагирует вяло.
  • Слишком малое значение (<0.01s), компенсация PA слишком агрессивна, вызывая дрожание экструзии.
  • В старой конфигурации использовался устаревший отдельный блок [pressure_advance].

Способы решения:

  1. Значение по умолчанию 0.040 подходит для большинства сценариев, обычно его не нужно изменять.

  2. Конфигурация должна быть записана в блоке [extruder]:

    [extruder]
    pressure_advance: 0.05
    pressure_advance_smooth_time: 0.040
  3. Не используйте отдельный блок конфигурации [pressure_advance] (устарел).

  4. При использовании длинной трубки Bowden можно немного увеличить до 0.060–0.080.

Конфликт настроек слайсера с управлением экструзией Klipper

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

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

  • В слайсере включен Coasting, который叠加 с компенсацией замедления PA.
  • Extra restart distance в Simplify3D вызывает резкие изменения скорости экструзии.
  • PreloadVE в KISSlicer дублирует функцию PA.
  • "Динамическое управление ускорением" или "Scarf joint" в слайсере мешают тестированию.

Способы решения:

  1. Отключите в слайсере следующие функции:
    • Coasting
    • Extra restart distance
    • PreloadVE (KISSlicer)
    • Динамическое управление ускорением / динамическое управление давлением
    • Scarf joint (при калибровке PA)
  2. Оставьте обычные настройки ретракта (рекомендуется 0.5–1.0 мм) и "протирку при ретракте".
  3. Отключите "Z-lift on retract" (подъем по Z при ретракте) в слайсере, этим будет управлять макрос Klipper.
Совет

При калибровке PA рекомендуется скорость печати 100 мм/с, высота слоя около 75% от диаметра сопла, заполнение 0%, динамическое управление ускорением отключено, чтобы полностью выявить эффект PA.

Изменения конфигурации компенсации резонанса после обновления Klipper

Симптомы: После обновления Klipper поведение SHAPER_CALIBRATE изменилось, результаты теста резонанса отличаются от прежних, или появляются предупреждения об устаревании конфигурации.

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

  • Klipper обновил параметры по умолчанию в [resonance_tester] (например, sweeping_period, accel_per_hz).
  • Старый max_accel_to_decel заменен на minimum_cruise_ratio.
  • Обновлена логика выборки данных акселерометра или алгоритм фильтрации.

Способы решения:

  1. После обновления ознакомьтесь с Журналом изменений конфигурации Klipper, чтобы проверить, есть ли пункты, влияющие на компенсацию резонанса.

  2. Если необходимо восстановить прежнее поведение тестирования, явно добавьте в [resonance_tester]:

    [resonance_tester]
    sweeping_period: 0
    accel_per_hz: 75
  3. После обновления рекомендуется заново выполнить SHAPER_CALIBRATE, не используя старые значения частот.

  4. Если max_accel_to_decel сообщает об устаревании, используйте вместо него:

    [printer]
    minimum_cruise_ratio: 0.5

Миграция конфигурации: Дополнительные вопросы миграции конфигурации после обновления см. в соответствующем разделе Ошибки конфигурации.

Loading...