Калибровка Дельта-принтера

Калибровка Дельта-принтера.

В этой статье мы постарались максимально подробно рассказать о калибровке 3D-принтера, на примере Anycubic Kossel. 3D-принтер Anycubic Kossel является классическим примером принтера дельта типа без автоматической калибровки, поэтому статья будет полезна для все владельцев подобных 3D-принтеров.

Этапы калибровки

  1. Устанавливаем прошивку. (в нашем случае это Marlin RC8 «Anicubic»);
  2. Определяем приблизительную высоту в центре стола:

Для этого пункта и далее, когда речь идет об управлении принтером лучше всего использовать такие программы как RepitierHost или PronterFace, в целом подойдет любая программа, которая работает с g-code.

На примере RepitierHost:

  1. Запускаем программу, подключаемся к принтеру.
  2. Отправляем все оси в «дом» командой «g28» в строке команд во вкладке «Управление»;
  3. Начинаем опускать экструдер командой «g1 z(ВЫСОТА)"; Например: g1 z100. Лучше это делать постепенно (в несколько заходов). Когда экструдер опустится достаточно низко продолжаем опускать его по несколько миллиметров, чтобы избежать "втыкания" экструдера в стол.
  4. Когда экструдер максимально приблизится к столу проверяем расстояние между соплом и столом с помощью листка бумаги (классика!).
  5. Открываем прошивку Marlin, находим строчки во вкладке Configuration.h:

#define MANUAL_X_HOME_POS 0

#define MANUAL_Y_HOME_POS 0

#define MANUAL_Z_HOME_POS 300

  1. Изменяем значение MANUAL_Z_HOME_POS: прибавляем полученную высоту Z (модуль числа), если Z-отрицательное, вычитаем – если положительное!

*все это расписано в инструкции к Anycubic Kosel.

  1. Прошиваем 3D-принтер.

Теперь у нас выставлена примерная высота по Z.

       III.Исправляем линзу, калибруем опозитные точки:

  1. Открываем онлайн-калькулятор http://escher3d.com/pages/wizards/wizarddelta.php
  2. Остановимся  на пунктах меню:

  1. Выбираем тип прошивки (Firmware type). В нашем случае Marlin
  2. Выставляем количество шагов/мм – этот параметр зависит от используемых шкивов и ремней (в моем случае 20-зубый шкив, ремень gt2), тут все просто
  3. Initial endstop correction – офсеты концевиков. Оставляем 0, если прошивка и eeprom чистые, но если ранее это значение менялось, то подставлем свои. Значения можно посмотреть в настройках eeprom. В Repitier открываем выпадающее меню «Конфигурация/конфигурация EEPROM».
  4. Initial diagonal rod length – длина тяг, можно измерить линейкой (от центра винта крепления тяги к каретке, до центра винта крепления на эффекторе) или взять из прошивки во вкладке Configuration.h : #define DELTA_DIAGONAL_ROD значение.
  5. Initial delta radius – горизонтальный радиус принтера, проще всего взять из прошивки во вкладке Configuration.h: #define DELTA_RADIUS значение.
  6. Initial homed height – наша высота принтера, которую находили выше.
  7. Initial tower angular position corrections – угловые корректировки башен, поступаем так же как и с Initial endstop correction.
  8. Printable bed radius – радиус печати принтера. Лучше всего проверить, в ручную передвигая голову по столу, как правило он меньше заявленного! Или довериться прошивке во вкладке Configuration.h: #define DELTA_PRINTABLE_RADIUS значение.
  9. Numder of probe points – количество точек калибровки. Можно оставить так, как есть.
  10. Number of factors to calibrate – прежде всего лучше ознакомиться с этим:
  • 3 factors (endstop corrections only)
  • 4 factors (endstop corrections and delta radius)
  • 6 factors (endstop corrections, delta radius, and two tower angular position corrections)
  • 7 factors (endstop corrections, delta radius, two tower angular position corrections, and diagonal rod length);

Лучше всего выбрать 6 факторную калибровку, 7ми факторная калибровка работает безусловно лучше, однако она меняет длину тяг, а это потом сказывается на размере печатаемых деталей.

k. Normalise endstop corrections: убираем галку. 

3. Нажимаем кнопку: «Suggest probe points» и получаем значения точек наших проб. На данном этапе нам нужно получить значения погрешности в наших точках (Nozzle height error). Для этого делаем следующее:

  1. Возвращаемся в
  2. Отправляем экструдер в «дом» (g28);
  3. Перемещаем экструдер в точку.

Пример: 

Точка 0 имеет координаты X0, Y150 – команда для перемещения в координату выглядит следующим образом: g1 x0 y150 z5. Значения Z изначально лучше делать значительно больше, для того, чтобы не повредить экструдер или стол.

d. Опускаем экструдер до стола командой: g1 x0 y150 z5, в которой меняем значение Z. (Делаем это так же деликатно, как и в пункте II-3 !!!)

e. Проверяем расстояние между соплом и столом листком бумаги (самый простой и проверенный способ)

f. Полученное значение заносим в соответвующую ячейку калькулятора с противоположным знаком. Пример: Экструдер прижат к столу со значением Z=0.3 мм, в ячейку мы запишем -0.2 (вычитаем толщину листа бумаги! Хватит забывать про это!);

g. Повторяем все то же самое с остальными точками.

 

  1. Нажимаем кнопку «Calculate». Если у нас все значения введены правильно, то появится надпись на зеленом фоне: Success!
  2. Мы получили значения для корректировки наших параметров: 

  1. Исправляем начальную высоту печати на значением «New home height» (см. II-5);
  2. Заходим во вкладку MarlinMain.cpp, находим строчки:

 

#if ENABLED(DELTA)

 

  #define SIN_60 0.8660254037844386

  #define COS_60 0.5

c. Дописываем снизу:

  #define SIN_A значение                             

  #define COS_A значение                            

  #define SIN_B значение                            

  #define COS_B значение

d. Находим значения SIN_A, COS_A, SIN_B, COS_B: угол A=60-(New tower position angle corrections X), угол B=60+(New tower position angle corrections Y), cos и sin вычисляем инженерным калькулятором и подставляем в прошивку. Должно получиться, что-то вроде этого:

  #define SIN_A 0.877732213                             

  #define COS_A 0.479151503                            

  #define SIN_B 0.864888712                             

  #define COS_B 0.501963661

e. В строках прошивки ниже:

        delta_tower1_x = -SIN_60 * (delta_radius + DELTA_RADIUS_TRIM_TOWER_1), // front left tower

        delta_tower1_y = -COS_60 * (delta_radius + DELTA_RADIUS_TRIM_TOWER_1),

        delta_tower2_x =  SIN_60 * (delta_radius + DELTA_RADIUS_TRIM_TOWER_2), // front right tower

        delta_tower2_y = -COS_60 * (delta_radius + DELTA_RADIUS_TRIM_TOWER_2),

Меняем 60 на A для первой башни и на B для второй.

        delta_tower1_x = -SIN_A * (delta_radius + DELTA_RADIUS_TRIM_TOWER_1), // front left tower

        delta_tower1_y = -COS_A * (delta_radius + DELTA_RADIUS_TRIM_TOWER_1),

        delta_tower2_x =  SIN_B * (delta_radius + DELTA_RADIUS_TRIM_TOWER_2), // front right tower

        delta_tower2_y = -COS_B * (delta_radius + DELTA_RADIUS_TRIM_TOWER_2),

 

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

С корректировкой углов разобрались! УРА!

f. Прошиваем принтер полученной прошивкой.

g. Снова заходим в Repitier и отправляем в принтер команды из тех кто получились в калькулторе:

M665 R177.14 L355.00  и

M666 X0.25 Y0.48 Z-0.97 (ПРИМЕР!)

h. Сохраняем значения в eeprom командой M Можно проверить значения открыв настройки eeprom (выпадающее меню «Конфигурация/конфигурация EEPROM»).

i. В калькуляторе жмем «Copy to initial parameters», для того, чтобы наши полученные значения заменили начальные.

 

IV. Самое интересное! Начинаем проделывать все действия начиная с пункта III-3 (кроме нажатия кнопки «Suggest probe points», это нам ничего не даст), тем самым проверяем на сколько откалибровался наш принтер. После первого раза, если все сделали правильно, значения Nozzle height error должны быть порядка 0.1-0.2мм. Далее повторяем все пункты калибровки до посинения или пока значения нас не будут устраивать. Результат лучше проверить напечатав калибровочные фигуры (https://www.thingiverse.com/thing:745523).

 

Ссылки на статьи:

http://3dtoday.ru/blogs/3dq/calibration-delta-printer-for-example-mini-prism/

https://geektimes.ru/company/3dquality/blog/252368/

http://3dtoday.ru/blogs/starletovod/calibration-delta-kossel-in-opposite-points-between-axestowers/

http://escher3d.com/pages/wizards/wizarddelta.php

https://github.com/Bougakov/Micromake-D1-3D-printer/blob/master/calibrating.md#manual-calibration-of-micromake-d1-3d-printer

Корзина (0)

Корзина

Оформить заказ

Закрыть