Input Shaping: как убрать эхо после углов и не маскировать механику
Короткий ответ
Input Shaping (англ. «формирование входного сигнала», далее IS) - это математический фильтр в прошивке принтера, который гасит вибрации рамы при резких ускорениях. Без него на высоких скоростях после каждого угла идёт волна-эхо: по детали словно прошлись пальцем по натянутой струне. Эта рябь и называется ringing (звон) или ghosting (тень). В OrcaSlicer есть встроенный калибратор: печатаете башню, измеряете линейкой высоту с самой гладкой поверхностью, вбиваете число в профиль принтера. Полчаса работы - и можно гонять Bambu, Voron или Klipper-кит на полной скорости без потери качества.
Если у Вас Bambu Lab X1C / P1S / A1 / H2D с встроенным акселерометром - IS калибруется автоматически из меню принтера за несколько минут, печатать ничего не нужно. Эта статья для всех остальных: самосборных Voron 2.4, Creality K1 / K2 с Klipper, Marlin-машин и сборок RatRig / Sovol, где акселерометра нет.
Важно понимать сразу: IS не ремонтирует ослабленный шкив, люфт, повреждённый ремень или шаткую раму. Сначала устраняете механику, потом калибруете компенсацию. Иначе математика будет маскировать поломку, а не решать задачу.
Что такое ringing и почему он появляется
Каркас 3D-принтера - это не монолит, а конструкция из профилей, болтов и ремней. На каждое резкое ускорение головки рама отвечает упругой вибрацией, как камертон. Частота этой вибрации зависит от жёсткости конструкции и у бытовых FDM-принтеров (англ. Fused Deposition Modeling - печать расплавленной нитью) обычно лежит в районе 25-80 Гц - это ориентир, у конкретной машины значение своё.
Пока скорость низкая, амплитуда вибрации мала и на детали её не видно. Но как только разгоняетесь, после каждого угла рама заводится на своей собственной частоте - и сопло «дрожит» вдоль траектории. Каждый виток дрожи переносится на пластик поперечной волной. Глазом это читается как «отголоски» углов на ровных стенках детали.
Простые способы борьбы - снизить ускорение и jerk (англ. рывок, скорость изменения ускорения) - лечат симптом, но убивают и саму скорость. Input Shaping решает задачу хитрее: прошивка заранее знает резонансную частоту рамы и сглаживает команды моторам так, чтобы вибрация компенсировала сама себя. Условно: вместо одного резкого толчка она даёт два, разнесённых по времени. Первый толчок поднимает волну, второй её гасит. На выходе - чистая стенка на высокой скорости.
Технология пришла из робототехники в Klipper, затем перекочевала в Marlin и в прошивки Bambu. Сейчас IS поддерживают почти все серьёзные машины.
Кому это нужно
Input Shaping имеет смысл калибровать, если хотя бы один пункт про Вас:
- Принтер ездит быстро по периметрам, и Вы видите эхо-волны после острых углов.
- Заменили ремни, моторы, профили рамы, переехали с тумбы на стол - резонансы сдвинулись.
- Собрали Voron / RatRig / Hypercube сами - без калибровки IS такая машина печатает как обычный бюджетный принтер на низкой скорости.
- На Klipper-сборке акселерометр (например, ADXL345) не стоит или сломался, а печатать быстро хочется.
Кому НЕ надо тратить время:
- У Bambu X1C, P1S, A1, A1 mini, H2D, H2S, H2C - встроенный сенсор. Запускаете в меню виброкомпенсацию (Vibration Compensation), принтер сам всё измеряет за несколько минут и сохраняет в свой профиль. Никаких тест-башен не нужно.
- Если печатаете на низкой скорости и довольны качеством - пропускайте, на такой скорости ringing не появляется.
Калибровать IS производитель OrcaSlicer советует раз в год или после любых механических изменений: новые ремни, моторы, переезд принтера с одного стола на другой, замена профилей. Износ ремней за активную работу заметно сдвигает резонансную частоту.
Что подготовить перед стартом
Чек-лист «до того как нажать Print»:
- Пластик с глянцевой поверхностью. Глянцевый чёрный, серый или красный PLA - идеально. Матовый PETG и шёлковый PLA ringing маскируют, и Вы ничего не увидите на отпечатке.
- Откалиброванный flow ratio (коэффициент подачи) и Pressure Advance (компенсация давления в экструдере). Если они кривые - увидите на башне не звон, а дефекты подачи, и измерения будут бесполезны. Порядок калибровок такой: сначала температура, потом flow, потом Pressure Advance, и только потом IS.
- Не закрытая камера. Корпус (англ. enclosure - закрытый бокс вокруг принтера) для PLA снимите или откройте - иначе PLA «поплывёт» от перегрева и Вы не разберёте, где звон, а где деформация.
- Принтер на штатном месте. Если стол шатается - поставьте на что-то жёсткое и устойчивое, иначе получите резонансы стола, а не принтера.
В OrcaSlicer заранее ничего настраивать не нужно - мастер калибровки сам поднимет ускорение и скорость на время теста, а после вернёт значения в исходные.
Шаг 1. Калибровка частоты
В OrcaSlicer откройте меню Calibration → More → Input shaping. Программа откроет окно с параметрами:
Заполняем:
- Test model:
Ringing Tower(стандарт). Если рама совсем кривая и звон сильный -Fast Tower(укороченная версия). - Shaper Type: для большинства принтеров
MZV(универсальный, баланс качества и скорости). Есть такжеZV,ZVD,EI,2HUMP_EI.EIхорошо подходит для дельт. Если сомневаетесь -MZVподойдёт почти всегда. - Frequency range: диапазон сканирования. По умолчанию охватывает весь рабочий диапазон бытовых принтеров - нормальный старт. Сужать имеет смысл, только если уже знаете примерное значение.
- Damping: коэффициент демпфирования. Для первого прогона можно оставить значение по умолчанию - демпфирование калибруется отдельно на Шаге 2.
Жмёте OK, слайсер режет модель и отправляет на принтер. Печать займёт примерно полчаса в зависимости от размера сопла и материала.
Как читать результат
На башне Вы увидите два «крыла» - одно вдоль оси X, второе вдоль Y. Каждое крыло - лесенка с горизонтальными полосами. Каждая полоса напечатана на своей частоте: внизу нижняя граница диапазона, наверху верхняя.
Берёте обычную линейку (или штангенциркуль) и измеряете высоту от низа крыла до того места, где волны-эхо самые слабые. Должна получиться явная зона, где поверхность гладкая.
Вбиваете число в миллиметрах в поля X height и Y height в окне OrcaSlicer - программа сама посчитает частоту. Получите два значения. Часто частоты по X и Y отличаются - это нормально, потому что подвижные массы по осям разные.
Если на крыле нет ОДНОЙ явно гладкой зоны, а есть две примерно одинаковые - измерьте
minиmaxвысоты «приемлемой» зоны и сделайте повторный прогон уже в более узком диапазоне частот. Точность вырастет.
Шаг 2. Калибровка демпфирования (опционально)
После того как нашли частоту, можно отдельно прогнать тест демпфирования (damping ratio - насколько быстро вибрация гаснет). Это тонкая настройка: для большинства принтеров значение по умолчанию уже даёт хороший результат, и Шаг 2 можно пропустить.
Если перфекционизм не отпускает - открывайте тот же мастер, но теперь выбираете Damping calibration. Окно похожее, но с парой отличий:
В поля X frequency и Y frequency подставляете значения, найденные на Шаге 1. Печатаете башню той же логикой:
Измеряете высоту с самым гладким сегментом, вбиваете в окно - получаете два значения демпфирования по X и Y.
Как трактовать результат калибровки
Самый частый ступор выглядит так: башня напечатана, стоит на столе, Вы вертите её в руках - и не понимаете, какое место считать «самым гладким» и какое число вбивать в слайсер. Разберём по порядку.
Что искать глазами
Первое и главное - правильный свет. Поставьте настольную лампу сбоку, почти вровень со столом, чтобы луч скользил по стенке башни под острым углом. При верхнем или фронтальном свете мелкая рябь просто не отбрасывает тени, и Вы её не увидите. Тёмный глянцевый PLA плюс косой свет - и волны проявляются, как рифление на воде.
Что именно Вы ищете: повторяющиеся поперечные волны сразу после выступа на модели, затухающие по мере удаления от него. Главная примета настоящего звона - рисунок ряби повторяет форму выступов-насечек тест-модели. Если дефект на них не похож (идёт строго по одной вертикали, выглядит как наплыв или провал подачи) - это не ringing, а другая болячка: Z-шов (место, где слой замыкается), люфт каретки или проблемы с подачей. Калибровкой IS такое не лечится, и меряете Вы тогда не то.
Если глаза подводят или пластик тёмный - проведите ногтем поперёк стенки, сверху вниз. В зоне звона палец чувствует «стиральную доску», в чистой зоне ноготь идёт ровно. Способ грубее, но на спорных участках решает вопрос.
Нижние несколько миллиметров башни и самую верхушку в расчёт не берите - там краевые эффекты первых слоёв и завершения печати, а не резонанс.
Как выбрать частоту
Не ищите одну идеальную полоску - ищите зону. Отметьте карандашом, где рябь начинает пропадать и где снова появляется, и берите середину этой зоны, а не край.
Почему именно середину - вопрос запаса. Шейпер MZV подавляет вибрацию примерно в 20 раз, пока Вы попадаете в ±4% от настоящей частоты, и примерно в 10 раз при отклонении от -10% до +15%. Для частоты 40 Гц это значит: попадание с точностью до пары герц - отлично. Ловить десятые доли герца бессмысленно, а вот встать с краю зоны - значит отдать весь запас в одну сторону и потерять его при первом же изменении в механике.
Как выбрать коэффициент затухания
Коэффициент затухания (демпфирования) влияет на результат заметно тоньше, чем частота. Разница между соседними значениями читается на башне хуже, чем разница в несколько герц по частоте, - это нормально, а не признак того, что Вы что-то сделали не так.
Отсюда практическое правило: если на башне демпфирования чёткой зоны не видно - не мучайтесь, ставьте 0,1. Это значение по умолчанию в Klipper, и выбрано оно не случайно: расчётные диапазоны шейперов вокруг него покрывают реальные коэффициенты большинства бытовых принтеров.
Правильно найденная частота даёт основную часть результата, демпфирование - только доводку. Не переставляйте его туда-сюда, если базовая проблема со звоном ещё не решена.
Если чёткой границы не видно
Отсутствие явной границы само по себе не означает, что калибровка провалилась. Оно означает одно из трёх:
- Тест слишком грубый для Вашей рамы. Шаг частоты между полосами крупный, и настоящий минимум размазан между двумя соседними полосами.
- Дефект вообще не звон. См. приметы выше: если рисунок не повторяет насечки модели, Input Shaping тут ни при чём.
- Звона нет. Если гладкая вся башня целиком, включая низ и верх, - Ваш принтер на тестовой скорости не звенит вовсе. Новость хорошая, но замерить на такой башне нечего: поднимите скорость и ускорение теста и прогоните заново, иначе Вы измеряете шум, а не резонанс.
Если результат каждый раз разный
Расхождение в пару герц между двумя прогонами - норма. Оно укладывается в допуск шейпера, выбирать между близкими значениями смысла нет: берите среднее и идите дальше.
А вот разброс в 10 Гц и больше означает, что принтер физически разный от прогона к прогону. Проверяйте по порядку:
- Принтер не прогрет. Резонансная частота зависит от натяжения ремней и геометрии рамы, а те заметно меняются от температуры. Холодный принтер и принтер после часа печати - две разные машины. Прогрейте стол и камеру до условий, близких к рабочей печати, и только потом запускайте тест.
- Ремни и крепёж. Ремень, который «уходит» между прогонами, - это не вопрос калибровки. Натяжение должно держаться, винты кареток и шкивов - быть затянуты.
- Меняется масса и опора. Полная катушка на кронштейне рамы и пустая - разная нагрузка на конструкцию. Полка, которая качается, когда рядом кто-то ходит, добавляет свои частоты. Держатель катушки лучше вынести с рамы на отдельную стойку.
- Условия прогонов не совпадают. Другой пластик, другая скорость, другое ускорение, другой Shaper Type - и результат честно будет другим. Меняйте что-то одно.
Рабочий приём: три прогона подряд в одинаковых условиях. Сошлись в пределах пары герц - берите среднее и сохраняйте. Не сошлись - проблема механическая, и усреднять её бесполезно, надо чинить.
Шаг 3. Сохраняем настройки
Теперь главное - закрепить результат, иначе после следующего перезапуска принтера всё откатится. Сначала обязательно сбросьте ускорение и jerk в окне OrcaSlicer обратно к своим рабочим значениям (мастер калибровки задирал их специально для теста).
Дальше есть два места, куда нужно сохранить.
Вариант 1: профиль принтера в OrcaSlicer (Marlin / RepRap)
Идёте в Printer Settings → Motion ability → Resonance Compensation:
Вбиваете Type, X frequency, Y frequency, X damping, Y damping. Слайсер при каждой нарезке будет сам вставлять команды в G-код.
Вариант 2: команды в стартовом G-коде принтера
Если хотите, чтобы настройки жили в самом принтере (надёжнее - не зависит от слайсера), пропишите команды в Machine start G-code.
Для Klipper (большинство Voron, Creality K1 / K2, Sovol SV08, RatRig) - подставьте свои значения частот и демпфирования:
SET_INPUT_SHAPER SHAPER_TYPE=MZV SHAPER_FREQ_X=37.5 DAMPING_RATIO_X=0.1 SHAPER_FREQ_Y=37.5 DAMPING_RATIO_Y=0.1
Лучше прописать эти значения прямо в printer.cfg в секцию [input_shaper] (shaper_type_x, shaper_freq_x, shaper_type_y, shaper_freq_y) - тогда они применятся при загрузке прошивки и будут работать всегда.
Для Marlin (многие Ender, старые Anycubic Kobra):
M593 X F37.5 D0.1
M593 Y F37.5 D0.1
M500
Команда M500 критична - она сохраняет настройки в EEPROM принтера, иначе после перезагрузки всё сбросится.
Для RepRap (Duet-платы):
M593 P"ZVD" F37.5 S0.1
Типичные ошибки
- Калибровали на матовом PETG, ничего не увидели. Матовая поверхность маскирует звон. Берите глянцевый PLA, потом перенесите значения на другой материал - резонансы рамы от материала не зависят.
- Принтер стоит на расшатанном столе, и Вы калибруете «резонанс стола». Найденные частоты будут специфичны для этого стола, и после переноса принтера всё развалится. Калибровка делается на финальном месте установки.
- Не сбросили ускорение после теста. Мастер задирает ускорение специально для теста; если продолжить печатать на таком - это лишняя нагрузка на моторы и ремни. После калибровки верните рабочие значения.
- Делаете IS до калибровки Pressure Advance и flow ratio. Все калибровки зависят друг от друга, но порядок такой: температура, flow, Pressure Advance, IS. В другом порядке будете гонять тесты по второму кругу.
- Один раз откалибровали и забыли на годы. Ремни растягиваются, болты выкручиваются, прошивка обновляется. Раз в год пройти заново - норма для рабочего принтера.
Что делать, если идеальной зоны на башне не видно
Иногда после печати тест-башни смотрите - а гладкой зоны вообще нет, везде волны примерно одинаковы. Это означает одну из трёх проблем:
- Шаг частоты слишком большой. Сузьте диапазон, и прогон даст более чёткую картину.
- Резонанс выше или ниже Вашего диапазона. Расширьте диапазон. Чаще проблема в нижней границе - у тяжёлых самосборных рам резонанс может уехать очень низко. Если он ниже примерно 20-25 Гц, сначала стоит поработать над жёсткостью рамы, а не полагаться только на IS.
- Механическая проблема. Сломанный подшипник, расхлябанный болт, ослабленный ремень - никакая математика прошивки это не лечит. Проверьте, что каретки двигаются плавно, ремни натянуты «как струна гитары» (издают чистый звук при щелчке), линейные направляющие без люфта.
Если после устранения механики тест-башня всё равно показывает мутную картину - попробуйте сменить Shaper Type. EI даёт более мягкий результат для шумных принтеров, но немного снижает чёткость углов. 2HUMP_EI ещё толерантнее.
Что улучшится после калибровки
На бытовых принтерах с правильно настроенным IS Вы получите:
- Скорость периметров можно поднять заметно выше без потери качества внешних стенок - и печать идёт быстрее.
- На углах и резких поворотах исчезает «эхо» - стенки становятся ровными.
- Шум при работе субъективно становится мягче - прошивка перестаёт «стучать» резкими ускорениями по раме.
Главный выигрыш - экономия времени. Если печатаете на заказ, рост скорости напрямую увеличивает пропускную способность фермы.
Чеклист
- Принтер стоит на финальном рабочем месте, стол не шатается.
- Откалиброваны температура, flow ratio и Pressure Advance.
- Заряжен глянцевый PLA.
- Принтер прогрет до условий рабочей печати.
- В OrcaSlicer:
Calibration → More → Input shaping. - Печатаете Ringing Tower, ждёте около получаса.
- Смотрите башню при боковом свете, берёте середину гладкой зоны.
- Линейкой измеряете высоту с минимальным звоном по X и Y.
- Вбиваете в OrcaSlicer, получаете частоты в Гц.
- Опционально: damping calibration с найденными частотами.
- Возвращаете ускорение и jerk на рабочие значения.
- Сохраняете значения в
printer.cfg(Klipper) или черезM593+M500(Marlin). - Пробный отпечаток рабочей детали на высокой скорости - должно быть чисто.
Связанные статьи
- Калибровка Pressure Advance 2026 - без неё IS калибровать нет смысла, делается строго раньше.
- Калибровка Flow Rate в OrcaSlicer - первый шаг, который должен быть сделан до всех остальных калибровок.
- Калибровочный кубик и порядок тестов 2026 - общий порядок калибровок для нового принтера или нового материала.
- Klipper: когда он реально нужен - если думаете, ставить ли Klipper ради IS и скорости.
- Adaptive Pressure Advance в OrcaSlicer - следующий шаг продвинутой калибровки после IS и PA.
- VFA-тест - тонкие вертикальные артефакты, соседняя тема по качеству стенок.
- Вибрация на ферме - когда несколько принтеров раскачивают друг друга.