Как установить смещение Z?

marlin bed-leveling g-code anet-a6 print-axis-offset

После просмотра всех возможных видео на YouTube по этому вопросу и чтения любого доступного источника, и хотя я доктор философии и довольно хорошо разбираюсь в компьютерах, я все еще не могу заставить свой Anet A6 (no probe) вести себя с точки зрения Z-смещения. Я перешел на силиконовые буферы стола вместо обычных пружин; теперь мой стол поднят на ~5 мм, и я не знаю, как продолжать. Некоторые наблюдения:

  • G28 заставляет сопло идти к центру стола. Дисплей показывает X 111 и Y 111. Предпочтительнее ли установить дом в левом нижнем углу или просто в центре?

  • G28 заставляет сопло хлюпать по ложу глубиной ~5 мм.

  • Я пробовал подход G92 и подход M428. Я не совсем понимаю, в чем между ними разница. Может ли кто-нибудь объяснить, почему иногда используется первое, а иногда второе?

  • Я возлагал большие надежды на М428. Что может быть проще? Вы физически направляете сопло туда, где оно должно быть, посылаете команду, и это ваш новый 0,0,0. Но, наверное, нет. Поскольку мой "дом" находится на отметке 111 111 и, по-видимому, M428 можно использовать только максимум на 20 мм от 0, я получаю сообщение об ошибке "слишком далеко от эталона".

  • Во всяком случае, оба подхода (также M206) не помогли. Когда я Г28, сопло все еще хлюпает стол. На дисплее либо написано Z 5, либо Z -5, или что я там играл, но сопло все равно хлюпает бедный стол.

  • В моем ЖК-меню (Marlin 1.1.9) у меня нет Control - > Motion - > > Z offset. Поскольку многие видео рекомендуют использовать это, это довольно грустно. Может кто-нибудь сказать мне, почему этот вариант отсутствует?

  • На очень концептуальном уровне я не совсем понимаю, почему во всех видео-направляющих винты стола полностью игнорируются при обсуждении смещения Z. Один парень показал, как он исправляет смещение Z 0.3 мм с помощью G-кода. Но он мог бы легко сделать это, поправив винты... Все они говорят: "Смещение Z означает расстояние между вашим соплом и столом, и вот как его отрегулировать". Теперь идет G-код, или жидкокристаллическое меню, и т. Д. Но почему все забывают, что вы можете регулировать расстояние между вашим столом и соплом с помощью винтов?! Я никак не могу собраться с мыслями. В моем случае, конечно, я не могу использовать винты-они достигли своего предела, поэтому мне нужно добавить дополнительные, используя G-код. Но, похоже, никто толком этого не объясняет...

Резюме: Мне срочно нужно пошаговое руководство для 6-летних детей. Пусть это будут 4-летние дети.

, 👍1


2 ответа


Лучший ответ:

2

Значит, новые силиконовые буферы подняли стол на 5 мм? Когда это произойдет, вы должны поднять концевой упор также на 5 мм. В противном случае принтер опустится до Z-образного упора, который фактически находится на 5 мм ниже уровня стола. Я предполагаю, что буферы не могут быть сжаты на 5 мм, поэтому вам нужно переместить конечную остановку до уровня, до которого ваше сжатие буфера находится в пределах досягаемости.

Никакое программное смещение не будет работать (для вашей текущей настройки: самонаведение на поверхность стола не работает, так как переключатель должен быть активирован до того, как какое-либо смещение будет включено), кроме аппаратного изменения или сжатия буферов на 5 мм. Можно было бы использовать программное смещение только тогда, когда сопло находится вне поверхности стола (рядом со столом). Единственное, что вам нужно было бы сделать, это добавить в свой стартовый G-код:

G0 Z5 ; Переместите головку на 5 мм 
G92 Z0 ; Назовем это Z = 0 

Если #define Z_SAFE_HOOMING включен, вы должны прокомментировать строку в конфигурационном файле, чтобы сделать ее home Z в позиции homed X, Y.

Я не буду вдаваться во все G-коды, подробности читаются на вики-страницах G-кодов и прошивках Marlin G-кодов, они не смогут вам помочь, если вы не исправите самонаведение на поверхности стола. В настоящее время вам нужно сделать аппаратное исправление, ваш конечный упор находится ниже уровня поверхности стола. Альтернативой является удаление самонаводящегося Z над поверхностью стола и переопределение смещения Z. Аппаратное исправление - лучшее решение, и если вам удастся напечатать причудливый держатель Z endstop и его аналог с помощью винта, вы сможете легче выровнять стол.

Например, М428 может установить смещение, да, но ему нужна ссылка; эта ссылка является ссылкой самонаведения или текущей позицией. Текущее положение принтера, который только что включен, бессмысленно, он может быть везде в объеме печати. Поэтому вам нужно сначала вызвать конечные точки, что невозможно, когда они недоступны (без сжатия стола).


,

@0scar♦ Итак, в заключение, все, что мне нужно сделать, это избавиться от моего самонаведения в центре стола (я полагаю, раскомментировав #define BED_CENTER_AT_0_0 в моей прошивке?), и тогда все мои проблемы закончатся, и мои смещения будут работать?, @Pixie

Я согласен со всеми советами 0scar. Немного забавная идея: я бы сказал, что есть альтернативное решение, но все же аппаратное, и я никогда не пытался этого сделать: (1) добавьте второй (верхний) ограничитель для Z (или переместите и измените существующий), (2) измените прошивку на обратное направление самонаведения Z (найдите самую высокую точку и, возможно, отключите Z-отступ), а затем в G-Коде примите это положение как точное высокое значение (например, используйте "G92 Z250", чтобы исправить это). Затем ваше фактическое смещение применяется без погружения в стол! Я хотел бы увидеть доказательство концепции :), @octopus8

@Pixie, "избавься от моего самонаводящегося центрального стола"- > не только, тебе нужно нацелиться на Z за пределами стола. Вам нужно будет обеспечить порядок наведения (сначала X или Y, затем Z) и отступить, чтобы переместить каретку за стойку (например, -30 или 250, я не знаю Anet A6!). Настройка такого отступления может оказаться невозможной. В прошивке могут быть включены настройки, позволяющие ее вообще блокировать. Или вы можете разместить каждую ось отдельно (например, "G28 X") и обмануть прошивку - например, после X=0 вы вызываете "G92 X50", а затем можете выйти за пределы стола (и врезаться в кадр?), а затем вернуться домой Z. Очень преувеличенный, хитрый метод, подверженный ошибкам, вообще не стоящий усилий., @octopus8

@Pixie ваш рабочий стол не может быть посередине, это есть только у нескольких принтеров. SAFE_HOMING должен быть в комментариях. Поскольку BED_CENTER_AT_0_0 также должен быть в комментариях., @0scar


0

Установка любого смещения переместит всю печать ("эффективно сдвигает координатное пространство") - так что вы можете настроить печать над или под столом или сдвинуть на несколько сантиметров вправо, например, - и тогда ваша печать может фактически не соответствовать печатному пространству. Например: моя рамка блокирует X перемещений в верхней части, я могу установить смещение 20 мм X, чтобы избежать несчастного случая при высокой печати (так сдвиньте печать). Или при установке новой печати поверх другой печати, таким образом смещая положение и т. Д. Если вы вызовете М428 в любой позиции, то текущая позиция станет новым смещением. Текущие настройки смещения сообщаются M503 (или M206 без параметров).

Также G92 используется в качестве специальной операции при использовании относительного позиционирования. Он имеет смысл для перемещения экструдера, но на практике не используется для перемещения печатающей головки. Я бы сказал,что любые такие призывы к X,Y, Z звучат как какой-то взлом, и вы должны точно знать, что вы делаете для того, чтобы обмануть логику принтера таким образом. Я бы вообще этого избегал.

Обычно (0,0,0) для декартовых принтеров является ближайшей нижней левой точкой стола. Если правильно обнулить принтер - это то, чего вы пытаетесь достичь, то вам следует:

  • ноль любых смещений X,Y,Z: M206 X0 Y0 Z0 (если только некоторые из них не оправданы, как в примере фрейма)
  • сохраните эту настройку на будущее: M500
  • домашний принтер - он обнуляет позицию, а затем автоматически отступает на некоторое "безопасное расстояние" (запрограммированное в прошивке).
  • используйте жидкокристаллический дисплей для перемещения каретки обратно в ноль: по крайней мере, для оси Z
  • отрегулируйте винты стола так, чтобы они соответствовали нулевому положению печатающей головки

В файле Configuration_adv.h Марлина есть настройки:

  • Марлин 1.1:

    #define X_HOME_BUMP_MM 5
    #define Y_HOME_BUMP_MM 5
    #define Z_HOME_BUMP_MM 2
    
  • Марлин 2.х:

    #define HOMING_BUMP_MM { 5, 5, 2 } // (мм) Откат от торцевых стопов после первого удара
    

Они не меняют ноль (не устанавливают смещение), но заставляют каретку отходить от нуля во время операции самонаведения и (Марлин 1.1) после самонаведения, потому что обычно это удобно. Marlin 2.x предлагает отдельный параметр для окончательного отката:

//#define HOMING_BACKOFF_MM { 2, 2, 2 }

Если вы хотите центрировать головку после самонаведения, я бы предложил использовать эти настройки.

,