Металл2024 Реклама
Метобр2024 Реклама

Позиционируем экструдер относительно стола - как?

LWDM
Идет загрузка
Загрузка
18.03.2019
1296
9
Вопросы и ответы
В процессе сборок-калибровок моего Re-D-Bot, столкнулся с проблемой позиционирования головы (экструдера) на столе. То пространство, где может бегать голова - гораздо больше, и расчитано на скорую установку стола 300*300, с возможностью выхода за пределы печатной зоны, и самоочистки.

Дисклеймер:

Все перечисленные ниже дефайны я много раз переключал в разных комбинациях, но четкого результата не добился - каждый раз голова начинает замерять ось Z в разных местах, а если и попадает на стол - печатает совсем не там, где объявляет слайсер. Это не техническая неполадка, это исключительно моё непонимание, что же от чего зависит и какие значения может принимать (актуально для кинематики CoreXY). Именно об этом я и хотел бы попросить помощи, а может у кого есть подробное разжёвывание, как же это всё настраивается, что от чего зависит, и как применимо в данной кинематике. Английские мануалы изучаю тяжело, как правило 'урывками'.

Задача:

До жути тривиальная - объяснить принтеру фактические размеры области печати, находящиеся не в 0.0, а немного дальше и правее. При этом есть датчик автоуровня BLtouch, он должен с g28 замерить z-расстояние в центре стола, а с g29 по 9 мультиточкам пройтись по всему столу.

При этом Избежать настроек программных концевиков и пр. в слайсерах. Все настройки произвести силами самой прошивки.

Вводные данные:

CoreXY

Marlin 2.0

RuRamps 1.3 + Arduino DUE, шью через PlatformIO, слайсер Cura 3.6.0

Стол (X)220 (Y)220

Рабочая область экструдера (то пространство где он может передвигаться) (X)370 (Y)290

Концевики расположены в левом дальнем углу:
X_HOME_DIR -1

Y_HOME_DIR 1

Z_HOME_DIR -1
Лимиты стоят вот такие:
X_MIN_POS 0

Y_MIN_POS 0

Z_MIN_POS 0

X_MAX_POS 370

MAX_POS 290

Z_MAX_POS 280
Первый вопрос касается X_MIN_POS / Y_MIN_POS, я хочу понять на что же влияют данные дефайны. MIN и MAX я понимаю как ограничитель перемещения экструдера, чтобы он не стучался о раму. Но если ставим, к примеру X_MIN 20, как воспринимает это принтер после парковки к концевикам?
//#define MANUAL_X_HOME_POS 0

//#define MANUAL_Y_HOME_POS 0

//#define MANUAL_Z_HOME_POS 0
Могут ли быть полезны в данном случае?
#define Z_SAFE_HOMING

#if ENABLED(Z_SAFE_HOMING)

#define Z_SAFE_HOMING_X_POINT 150 // X point for Z homing when homing all axes (G28).

#define Z_SAFE_HOMING_Y_POINT 100 // Y point for Z homing when homing all axes (G28).

#endif
Этим дефайном я постоянно играюсь, и он нужен, ведь если его не указать - g28 по Z будет проходить там где принтеру захочется, со всеми вытекающими - если захочется мимо стола. И не понимаю, почему указав по X 150, он уехал чуть-чуть дальше концевика. Откуда и до какой точки происходит измерение этих волшебных 150 попугаев?
#define X_PROBE_OFFSET_FROM_EXTRUDER -102 // X offset: -left +right [of the nozzle]

#define Y_PROBE_OFFSET_FROM_EXTRUDER -50 // Y offset: -front +behind [the nozzle]
Пожалуй это самые понятные дефайны в коде, поскольку имея информацию комментария - можно безо всяких проблем спозиционировать голову для z-проб.

И тем не менее, я окончательно запутался в настройках, и не понимаю, что от чего зависит.
Ответы на вопросы
Кремень КБ Реклама
Кремень КМ Реклама