Переключатель сопла контактного зонда автоматическое выравнивание с помощью Marlin 2.0

marlin bed-leveling skr-v1.3 robo-r1+

У меня есть Robo R1+, который использует сопло, соприкасающееся со стеклянным печатным столом, чтобы выровнять принтер. Когда печатающая головка ударяется о стол, концы Z-min открываются, сигнализируя о том, что стол коснулся.

Недавно я перешел с Arduino на SKR 1.3 под управлением Marlin 2.0 и пытался сделать принтер автоматическим. Однако все примеры, которые я могу найти, связаны с зондом. Я даже не знаю точно, как называется этот вид автоуровня.

Есть ли способ настроить Marlin 2.0 для выполнения такого рода автоматического выравнивания? И если да, то какие строки я должен комментировать и не комментировать?

, 👍1


1 ответ


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

1

В принципе, вы также используете зонд, сопло-это зонд. Таким образом, это очень похоже на автоматическую настройку выравнивания с использованием емкостного или индуктивного датчика, разница заключается в том, что ваше сопло M851 для зондирования расстояния равно нулю и может получить положительное значение, чтобы немного поднять его, чтобы получить лист бумаги между соплом и печатающей поверхностью.

Обратите внимание, что ниже рассматриваются только изменения для выравнивания, а не другие особенности в Marlin 2.x для Robo R1+!

Сначала вы определяете смещение сопла в конфигурации.h, которое находится точно в сопле, так что X и Y (и Z) равны нулю.

#define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }

Вы также можете установить:

define NOZZLE_AS_PROBE

Кроме того, необходимо определить метод выравнивания в том же файле конфигурации:

//#define AUTO_BED_LEVELING_3POINT
//#define AUTO_BED_LEVELING_LINEAR
#define AUTO_BED_LEVELING_BILINEAR
//#define AUTO_BED_LEVELING_UBL
//#define MESH_BED_LEVELING

Для безопасности мы обычно размещаем Z в центре печатной поверхности:

#define Z_SAFE_HOMING

Также убедитесь, что активен следующий оператор:

#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN

Далее нужно определить границы "зонда", куда именно может заходить сопло (кроме небольшого безопасного смещения по всем краям, называемого MIN_PROBE_EDGE); как это сделать, описано в вопросе "Как установить границы Z-зонда в прошивке при использовании автоматического выравнивания стола?", в Marlin 2.x это должно быть установлено в Configuration_adv.h:

#если PROBE_SELECTED && !IS_KINEMATIC
  #define MIN_PROBE_EDGE_LEFT MIN_PROBE_EDGE
  #define MIN_PROBE_EDGE_RIGHT MIN_PROBE_EDGE
  #define MIN_PROBE_EDGE_FRONT MIN_PROBE_EDGE
  #define MIN_PROBE_EDGE_BACK MIN_PROBE_EDGE
#endif

,

Спасибо, Оскар. Как только я закончу проект САПР, я его протестирую. Очень ясно., @henradrie

Robo r1+ использует инвертированный концевой переключатель оси z. Когда сигнал истинен, ось перемещается и становится ложной при достижении предела. Переключатель конечной остановки также необходимо перевернуть, но программное обеспечение предупредит вас, если вам потребуется его изменить., @henradrie