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

Klipper: Аппроксимация дуг и рекомендации по использованию G2/G3

Эта статья поясняет, как в Klipper соотносятся [gcode_arcs], команды дуг G2/G3 и аппроксимация дуг слайсером. При повседневной 3D-печати не рекомендуется использовать аппроксимацию дуг на стороне Klipper в качестве основного способа повышения качества или производительности.

Важное предупреждение

Точность генерируемых современными слайсерами путей уже очень высока; разбивка кривых, упрощение путей и аппроксимация дуг могут быть выполнены на этапе слайсинга. При повседневной печати не рекомендуется дополнительно добавлять [gcode_arcs] в Klipper, чтобы прошивка заново разбивала дуги; нет необходимости заставлять Klipper пересчитывать то, что слайсер может сделать хорошо.

Распространенные ошибки

Сообщения об ошибках: Unknown command:"G2", Unknown command:"G3", G2/G3 requires IJ, IK or JK parameters, G2/G3 does not support relative move mode, G2/G3 does not support R moves.

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

  • Слайсер выводит команды дуг G2/G3, но в конфигурации Klipper не включен [gcode_arcs].
  • В командах дуг в G-коде отсутствуют параметры I, J, K.
  • В G-коде используется формат дуги с радиусом R, который не поддерживается Klipper.
  • Формат дуг, выводимых слайсером или скриптом постобработки, несовместим с поддерживаемым Klipper диапазоном.

Конфигурация только для совместимости с G2/G3

Добавлять следующую конфигурацию в качестве слоя совместимости рекомендуется только в тех случаях, когда G-код уже содержит G2/G3, и временно невозможно отключить вывод дуг в слайсере:

[gcode_arcs]
resolution: 1.0

resolution указывает точность, с которой Klipper разбивает дуги на отрезки. Чем меньше значение, тем мельче разбивка; чем больше значение, тем крупнее разбивка.

Рекомендации по использованию

[gcode_arcs] в Klipper не заставляет прошивку двигаться непосредственно по траектории дуги; вместо этого он заново разбивает дуги G2/G3 на множество маленьких прямолинейных отрезков, которые затем передаются в планировщик движения.

  • Маленькое значение resolution: отрезки тоньше, но нагрузка на CPU хост-машины и планировщик движения выше; на маломощных хост-машинах чаще возникают задержки, ошибки Timer too close или нестабильный ритм печати.
  • Большое значение resolution: вычислительная нагрузка снижается, но страдает детализация дуги, и фактический эффект ограничен.
  • Слайсер уже хорошо справляется с обработкой кривых модели, точностью разбивки и упрощением путей; нет необходимости заставлять прошивку пересчитывать это заново.

Повседневные рекомендации:

  1. Предпочтительнее использовать встроенные в слайсер функции точности кривых, аппроксимации дуг или упрощения путей.
  2. Если слайсер может напрямую выводить высокоточные отрезки, не рекомендуется включать [gcode_arcs] на стороне Klipper.
  3. Если совместимость с G2/G3 необходима, используйте [gcode_arcs] только как временный слой совместимости, не устанавливайте resolution слишком малым.
  4. При появлении задержек печати, ошибок Timer too close или высокой загрузки CPU хост-машины в первую очередь отключите вывод G2/G3 в слайсере, перейдя на генерацию отрезков непосредственно слайсером.
  5. Не рекомендуется одновременно включать аппроксимацию дуг в слайсере и устанавливать очень маленькое значение resolution в Klipper ради «более гладких» линий; это обычно только увеличивает вычислительную нагрузку.

Рекомендуемый порядок поиска и устранения неисправностей

  1. При появлении ошибки Unknown command:"G2" / Unknown command:"G3" сначала проверьте, включен ли в слайсере вывод дуг.
  2. Если вывод дуг не нужен, отключите в слайсере опции типа Arc / G2-G3 / Arc Welder и выполните повторную нарезку.
  3. Если вывод дуг обязательно нужно сохранить, добавьте [gcode_arcs] в качестве конфигурации совместимости.
  4. Если после включения появляются задержки или ошибки тайм-аута, сначала увеличьте resolution или отключите вывод дуг.
  5. Убедившись, что проблема исчезла, решите, оставлять ли эту функцию, исходя из фактического качества печати.

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

Loading...