Насткройка L и K коэффициентов для QUADRATIC_ADVANCE в Repetier

Anidal
Идет загрузка
Загрузка
23.12.2018
5067
15
Техничка

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

47
Обеспечение точной подачи филамента одно из ключевых задач FFF печати.

3D принтер по сути является предиктивным автоматом. Исключая регулировку температур и начавшие получать распространение сервошаговые системы, мы можем рассчитывать лишь на адекватность математической модели и 'правильные' настройки.

В число факторов, влияющих на поток филамента включается и поведение прутка филамента между экструдером и хотэндом.

Чем длиннее трубка бодена, тем филамент всё больше походит на пружину, сжимающуюся при ускорении движения и разжимающуюся при торможении.

Поэтому простое регулирование потока по закону Vфиламента=Vперемещения*К,

где К - коэффициент, зависящий от характеристик экструдера и сопла

приводит к недоливу в момент начала движения и переливу в конце. И утончению с ростом скорости.

Применение таких настроек слайсера, как Coast at End и Extra restart distance+Wipe лишь несколько 'скрывают' проблему, но не решают её.

Однако использование метода адаптации подачи по линейному( Linear Advance) или квадратичному законам (Quadratic Advance) улучшает модель предсказания движения филамента.

Перейдем от скучной теории к практике.

В Repetier поддерживаются оба типа адаптации.

Для каждого из экструдеров возможно через

#define EXT0_ADVANCE_K 1

#define EXT0_ADVANCE_L 100

задать коэффициенты адаптации.

Описание закона можно увидеть как в коде, так и в статье https://forum.repetier.com/discussion/4599/linear-advance-and-m900

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

M233 X1.0 Y100.0, где X - К, а Y -L

можно на ходу менять коэффициенты для текущего экструдера.

Воспользуемся утилитой-генератором тестовый паттернов о Марлина

http://marlinfw.org/tools/lin_advance/k-factor.html

После генерации следует в файле заменить M900 Kx.xx на M233 Yx.xx или M233 Xy.yy

В прошивке включите и линейную и квадратичную адаптацию, но коэффициент К сделайте минимальным (0.001).

Сначала настроим линейную часть, подменяя M900 Kxxx на M233 Yxxx

Печатаем линии от коэффициента 0 и до победы.

Линии делятся на 3 части, слева на право 20мм/сек, 110 мм/сек и снова 20.

Вот пример L [0..2] внизу L=0
Виден эффект утоньшения линий при высокой скорости

Разница между 0 и 2 слабо заметна в пользу 2-х

Теперь L[40-100] вверху 40 внизу 100
При 100 линия не утончается, но видны перходы

Начинаем подбирать K - также меняя M900 Kxxx на M233 Y100.0 Xy.yyy

Вверху K=0 шаг 0.1
И крупнее
Коэффициент K=1.0 самый удачный.

Вносим L=100 и K=1 в прошивку, оперативно можно будет изменять в скриптах всё той-же M233.

И результат.

До включения адаптации приемлемые результаты были при ретракте 12мм, Coast=1.2 Wipe 1.2 мм.

Максимальная скорость печати по неразрыву внутреннего заполнения 115 мм/с

После Ретракт 3 мм, 'улучшители' выключены, заполнение цельное при 138 мм/c

Кубик напечатан соплом 0.6 слой 0.2 за 17 минут.
Кубик немного 'отлип' по краям, стол холодный, но так ничего.

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

Исчезли петельки на краях заполнения, высота на краю и в центре одинаковая.

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

47
Комментарии к статье

Комментарии

23.12.2018 в 21:33
0

Благодарю!

Математика - штука полезная, пригодится.

23.12.2018 в 22:07
1

Спасибо. На кубике на ребрах какие-то петельки, хвостики. И впечатление что слои на ребрах немного 'пляшут' Это что?

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

23.12.2018 в 22:33
1

На кубике не петельки а волосики филамента, кубик 20мм всего. Пр переходе с уровня на уровень обдув сдувает.

Прозрачный пластик специально, чтобы видно было внутри.

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

24.12.2018 в 02:24
1

Могли бы вы написать про коэффициенты для Марина?

24.12.2018 в 05:11
2

Ну так для Марлина даже патчить код не надо, берёте родной генератор (ссылка в тексте) и подбираете.

24.12.2018 в 10:28
1

Попробовал, правда для Марлина 1,1,9 и версия  адаптации 1,5 вы я так понял описываете  версию 1,0. Да все видно наглядно, только использовал черный пластик. Вопрос вот по этому пункту вашего описания.

И результат.
До включения адаптации приемлемые результаты были при ретракте 12мм, Coast=1.2 Wipe 1.2 мм.
Максимальная скорость печати по неразрыву внутреннего заполнения 115 мм/с

После Ретракт 3 мм, 'улучшители' выключены, заполнение цельное при 138 мм/c
Касательно ретракта. В генераторе кода, используется значение ретракта. У меня он 10.4 мм, с этим значением подбирался коэфф К. У меня он вышел 1.25. Вы пишите что у вас ретракт  стал меньше. Правильно я понимаю. Подобранное значение К, вносим в еепром, а  в слайсере просто устанавливаем ретракт вместо  10.4мм другое значение которое подбираем ориентируясь на отсутствие соплей и волосков.

Да и  K нужно подбирать для разных типов пластика?

24.12.2018 в 11:18
2

1. Ретракт (если не говорить о длительных простоях) на идеальном принтере не нужен. Вообще.
В реальности без адаптации в конце печати линии в сопле ещё есть давление - и ретракт его сбрасывает.
Чем выше давление - тем больше нужен ретракт.

В утилите-генераторе сразу надо ставить маленький ретракт (я поставил 3) и под него настраивать.

Возможно (я ещё не успел протестить), ретракт будет вообще не нужен или нужен еще меньше.

2. Да, надо для разных типов пластика, для разных диаметров сопел. Хотя настройки для SBS 0.8мм я применил для ABS 0.6мм и вроде всё хорошо. Но в идеале надо калибровать и записывать в тетрадку для всех вариантов

24.12.2018 в 17:01
1

Спасибо за работу. Нужно будет попробовать у себя.

26.12.2018 в 11:59
1

В марлине я нашел LIN_ADVANCE_K, а L в нем есть?

26.12.2018 в 15:55
1

/** * Implementation of linear pressure control * * Assumption: advance = k * (delta velocity) * K=0 means advance disabled. * See Marlin documentation for calibration instructions. */ #define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) #define LIN_ADVANCE_K

Как я понимаю, мерлин поддерживает только линейную адаптацию, так что в мерлине коэффициент K===L в Repiter

18.02.2019 в 19:42
0

Здравствуйте. Чего-то не проходит у меня команда с пронторфейса(( Где в репитетере включаются эти настройки? Спасибо.

22.04.2019 в 07:55
0

В прошивке надо активировать


Enable advance algorithm (not stable) (USE_ADVANCE)
 Enable quadratic advance terms (ENABLE_QUADRATIC_ADVANCE)
Чз конфигуратор это вот так: И прошить принтер.

04.05.2019 в 08:37
0

хоть убейте но на этой вкладке не вижу этих галок (версия та же version 1.0.4dev)

или киньте ваш конфиг файл,чтоб по аналогии выставить свои данные,спасибо!

04.05.2019 в 17:46
0

хоть убейте но на этой вкладке не вижу этих галок
Эти галки и другие появляются, если Эксперт выбран:

или киньте ваш конфиг файл
Вот на мои некоторые, но это не все текущие.

04.04.2019 в 12:12
0

спасибо

Для написания комментариев, пожалуйста, авторизуйтесь.

Читайте в блогах

КОНКУРС "Мое знакомство с Tiger3D"

Покрышки с отверстием.

Настольные боевые роботы - Спиннер

5. Калибровка

Папина машинка

Светильник Wb Nightlight