С помощью Klipper, BLTouch автоматизирует процесс выравнивания печатного стола. Читайте далее, чтобы узнать, как настроить и использовать BLTouch с Klipper!
Микрокомпьютер Raspberry Pi 5 На борту Raspberry Pi 5 уже есть четыре порта USB, беспроводные интерфейсы Wi-Fi/Bluetooth и полноценный гигабитный Ethernet, чтобы сразу приступить к работе.
Для всех, кто занимается FDM 3D-печатью, независимо от конфигурации принтера ровная печатная пластина — это святой Грааль для получения идеального и надежного первого слоя. К сожалению в реальном мире «идеальный» слой редко существует. Даже самая ровная печатная пластина может деформироваться, слегка сдвинуться или просто иметь дефекты. Популярные съемные магнитные печатные пластины могут потенциально привносить погрешности в поверхность, задерживая пыль между рабочей пластиной и магнитным листом, что делает поверхность печати менее ровной.
Современные встроенные программы 3D-принтеров, такие как Klipper и Marlin, позволяют осуществлять процесс, называемый автоматическим выравниванием сетки пластины (ABL), путем измерения высоты поверхности печати в различных точках. Чем больше точек мы измерим, тем точнее будет представление стола, но с точки зрения вычислительной техники это просто нерентабельно. Поэтому создается сетка из измеренных точек, а промежуточные точки рассчитываются на основе выбранного метода. Делать это вручную с помощью бумажного или щупового метода трудоемко и непрактично.
Именно здесь на помощь приходят автоматические саморазвертывающиеся датчики. Они не требуют вмешательства пользователя и работают быстрее, чем ручные методы. Но покупатель должен остерегаться, автоматическое зондирование может осуществляться с помощью различных датчиков и важно понимать их различия. Далее мы объясним, как настроить ABL в Klipper с помощью BLTouch.
Сначала мы кратко рассмотрим различные типы датчиков и объясним, почему датчик типа BLTouch имеет здесь особое значение. Затем мы представим ABL в Klipper и доступные варианты выравнивания стола. Оставшаяся часть статьи будет посвящена тому, как реализовать BLTouch в Klipper в виде простых шагов. Обратите внимание, что мы предполагаем, что у вас уже есть знания о выравнивании стола и достаточно хорошо настроенный 3D-принтер. Если вам нужно освежить в памяти ситуацию, пожалуйста, обратитесь к нашим статьям о настройке выравнивания стола и решении проблем с первым слоем.
- BLTouch
- Настройки
- Основные настройки ABL
- Расширенная настройка ABL
- Установка
- Как установить BLTouch
- Монтаж электрооборудования
- Настройка программного обеспечения
- Настройка сетки стола
- Расширенная конфигурация
- Тестирование и калибровка
- Тестирование
- Калибровка
- Устранение неполадок
- Проблемы во время тестирования
- Состояние ошибки
- Клоны
BLTouch

BLTouch — это датчик на эффекте Холла, который определяет близость путем обнаружения присутствия магнитного поля, но существуют и альтернативные технологии, включая индукционные, емкостные, пьезо и механические датчики. Однако альтернативы не идеальны. Некоторые из них зависят от того, является ли измеряемая поверхность металлической, а на другие влияют колебания температуры. Точность может быть проблемой или такие датчики просто не доступны. Именно здесь на помощь приходит BLTouch. Он не страдает ни от одной из этих проблем.
Оригинальные датчики BLTouch производятся компанией Antlabs в Корее и существуют с 2015 года. Датчик подвергался постоянному совершенствованию и в настоящее время его версия — это версия 3.1. Датчик состоит из пластикового штыря с постоянным магнитом на верхнем конце, электромагнитной катушки, пластикового корпуса с монтажным фланцем и печатной платы. Как видно на изображении, оригинальные датчики BLTouch имеют QR-код на печатной плате, а также надпись «Made in Korea». Мы упомянули об этом, потому что существует широкий спектр подделок в стиле BLTouch, некоторые из которых работают, а многие — нет.
Все датчики BLTouch, а также их клоны, работают по одному и тому же принципу. Катушка притягивает и отпускает сенсорный зонд для определения уровня. Постоянный магнит на зонде вызывает сигнал через датчик Холла на печатной плате, который в свою очередь, вызывает функцию записи высоты сопла над поверхностью печатной пластины.
Настройки
Прежде чем перейти к тонкостям настройки BLTouch в Klipper, давайте обсудим настройку ABL в Klipper. В документации Klipper предлагает сначала основные настройки, а затем расширенные.
Идея заключается в том, что базовые настройки позволят пользователю начать работу и настроить базовую функциональность. Расширенные настройки добавляют гораздо больше сложности, но они также позволяют производить тонкую настройку, что будет интересно всем, кто хочет улучшить качество печати.
При настройке 3D-принтера настоятельно рекомендуется сначала заставить принтер работать с базовыми настройками, прежде чем добавлять расширенные. Так будет легче устранять неполадки. Кроме того, меняйте только один элемент за раз по одной и той же причине.
Основные настройки ABL

Поскольку мы предполагаем, что уже знаем Klipper и как получить доступ к конфигурации, мы сразу перейдем к ABL и его опциям. Имейте в виду, что ABL не заменит плохо собранные принтеры и механические проблемы, но она заменит утомительные и неточные ручные «бумажные тесты» для определения уровня печатной пластины.
Говоря о ABL, мы имеем в виду автоматическое создание сетки стола с целью автоматической компенсации колебаний высоты Z для создания идеального первого слоя. Сетка стола представляет собой серию точек измерения высоты Z по всей поверхности пластины. Поэтому мы начнем с изучения параметров конфигурации в Klipper для сетки пластины.
Ниже приведен краткий обзор базовой конфигурации Klipper. Настройки немного отличаются в зависимости от того, прямоугольная или круглая печатная поверхность у вашего принтера.
Прямоугольная пластина
- «speed» — это скорость перемещения головки. По умолчанию установлено значение 50 мм/с.
- «horizontal_move_z» — перемещение головки вдоль оси Z перед переходом к следующей точке измерения.
- «mesh_min» представляет собой координаты первой точки измерения относительно местоположения зонда.
- «mesh_max» представляет собой координаты самой удаленной точки измерения относительно места расположения датчика.
- «probe_count» — количество точек зондирования вдоль осей X и Y соответственно. По умолчанию установлено значение 3,3.
Круглая пластина
- «speed» — то же, что и выше.
- «horizontal_move_z» — то же, что и выше.
- «mesh_radius» представляет собой радиус зондирования относительно начала сетки.
- «mesh_origin» представляет собой начало координат для зондирования. По умолчанию установлено значение 0,0.
- «round_probe_count» — максимальное количество точек зондирования вдоль осей X и Y соответственно. По умолчанию установлено значение 5.
Расширенная настройка ABL

Расширенные настройки немного интереснее, так как они позволяют выполнить тонкую настройку. Функции разделены на пять функциональных групп. Поскольку подробное описание каждой функции выходит за рамки данной статьи, мы предоставим обзор, чтобы вы могли получить представление о том, что делают функции в рамках функциональных групп.
- «Mesh Interpolation» Настройки предоставляют нам различные опции для определения того, насколько тонкую сетку мы хотим рассчитать с дополнительными математически выведенными точками между точками зондирования в нашей базовой конфигурации. Мы можем определить количество этих дополнительных точек вдоль осей X и Y, математический метод с помощью которого мы рассчитываем эти точки (Lagrange и бикубический), а также коэффициент натяжения для бикубического метода, который изменяет расчетную высоту для дополнительных точек сетки (т.е. он преувеличивает или преуменьшает расчетную высоту).
- «Move Splitting» позволяет пользователю определить, насколько точно головка инструмента будет следовать рассчитанной сетке, путем установки расстояния, на которое перемещается сопло перед сверкой с сеткой и коррекцией высоты. Мы также можем установить разницу в высоте Z, которая вызовет разделение.
- «Mesh Fade» помогает пользователю в конечном итоге выровнять заготовку путем уменьшения количества коррекции слоя сетки в течение заданного количества слоев.
- «Relative Reference Index» — интересная настройка, поскольку она предоставляет пользователям с датчиками склонными к дрейфу, возможность автоматически корректировать Z-offset на основе опорной точки датчика. Для BLTouch эта настройка не нужна, поскольку этот датчик просто не страдает от дрейфа или помех.
- «Faulty Regions» позволяет пользователям определить области кровати, где результаты зондирования могут быть ошибочными, а затем компенсировать их путем многократного зондирования по краям таких областей.
Установка
Установка BLTouch включает в себя несколько отдельных разделов, которые мы разделим на отдельные шаги ниже. Мы начнем с установки BLTouch, уделяя особое внимание высоте установки, затем перейдем к электрической настройке, а затем к настройке программного обеспечения.
Для выполнения всех шагов нам понадобится следующее:
- 3D-принтер с уже установленным и функционирующим Klipper
- BLTouch, а также крепление для принтера
- Кабели и возможно удлинители
- Схема распиновки материнской платы с указанием названий контактов
- Размеры печатного стола
- Маркер
- Лист бумаги или измерительный щуп
Проверить цену датчика BLTouch на сайте:
Как установить BLTouch

Установить BLTouch очень просто. Монтажные кронштейны для большинства популярных 3D-принтеров доступны на Thingiverse или могут быть приобретены в интернет-магазинах. Так же можно разработать свой собственный.
Есть несколько общих моментов, которые следует учитывать при установке BLTouch:
- BLTouch должен быть установлен перпендикулярно поверхности сборки. В противном случае датчик не обеспечит точных измерений.
- Установите датчик как можно ближе к соплу. Всегда лучше, чтобы смещение между датчиком и соплом было как можно меньше, чтобы избежать появления странных артефактов.
- Обеспечьте достаточное пространство в местах парковки и очистки, чтобы не повредить зонд.
- Убедитесь, что кабель для подключения BLTouch к плате контроллера принтера проложен разумным образом.
Установочная высота
Самым важным параметром для успешной настройки BLTouch является высота установки!
Убедитесь, что датчик установлен на правильной высоте в соответствии с документацией BLTouch. На изображении выше показана последняя версия 3.1, она обратно совместима с версией 2. Наиболее важными размерами являются падение толкающего зонда 6,6 мм и разница в высоте между зондом в выдвинутом положении и кончиком сопла, которая должна составлять от 2,3 до 4,3 мм, как показано выше.
Если BLTouch не настроен в соответствии с рекомендациями, ряд вещей может пойти не так. Возможно, датчик не сработает, что позволит соплу удариться и повредить печатную пластину (не очень хорошо). Или же может быть недостаточный зазор в выдвинутом положении датчика, что вообще сопло не достанет пластину.
Монтаж электрооборудования

Далее нам необходимо определить соответствующие выводы на плате контроллера нашего принтера. Из-за широкого спектра плат и проблем с определением нужных выводов у некоторых пользователей, компания Antlabs любезно предоставила ссылки с QR-кодами в руководстве BLTouch, которые ведут на сайты, объясняющие где найти нужные выводы.
BLTouch probe V3.1 поддерживает логику 5 В и 3,3 В, что означает, что он поддерживает платы контроллеров, которые могут работать с высоким сигналом 5 В на входных контактах (например Arduino), а также те, которые используют 3,3 В (например Esp32 или Raspberry Pi). Он поставляется с белым пятиконтактным разъемом на одном конце и с другой стороны, двух и трехконтактным штекером со следующим распределением цветов между контактами:
ДВУХКОНТАКТНЫЙ ШТЕКЕР
- Белый: Z-min
- Черный: Ground
ТРЕХКОНТАКТНЫЙ ШТЕКЕР
- Оранжевый: Signal
- Красный: +
- Черный или синий: Ground
Инструкция
- Убедитесь, что 3D-принтер выключен и на нем безопасно работать.
- Проложите соединительный кабель от BLTouch к плате контроллера таким образом, чтобы кабель не мешал механике и свободному движению печатающей головки.
- При необходимости закрепите кабель кабельными стяжками. Если поставляемый кабель слишком короткий, можно приобрести удлинители.
- Создайте соединения в соответствии с указанным выше распределением контактов.
Советы
На некоторых платах порядок расположения разъемов для трехконтактного штекера может отличаться от кабеля. В этом случае нужно освободить заделки проводов от штекера и снова вставить их в нужном порядке.
В том маловероятном случае, если плата контроллера не указана в списке, Google обычно является нашим другом. Используйте его для поиска распиновки вашей платы контроллера. Вам понадобится точная маркировка вывода сервопривода для оранжевого сигнального соединения BLTouch и вывода Z-min для белого провода BLTouch. Обязательно запишите название выводов, потому что оно понадобится вам позже для настройки программного обеспечения!

Некоторые пользователи сообщали о проблемах, связанных с электрическими помехами, которые можно устранить, используя экранированную проводку и держа соединительные провода подальше от других проводов. Однако эти сообщения следует воспринимать с долей соли, поскольку многие проблемы, о которых сообщается, часто связаны с тем, что рассматриваемый датчик является клоном.
Как уже упоминалось выше, некоторые поддельные зонды работают хорошо, а другие — нет. Как гласит старая поговорка, «Скупой платит дважды, тупой трижды, лох платит постоянно!».
Настройка программного обеспечения

Теперь, когда мы установили датчик BLTouch, он готов к настройке. Что бы мы ни использовали для взаимодействия с Klipper — Mainsail, Repetier или другие — процесс настройки одинаков. Для завершения конфигурации нам понадобится следующее:
- Названия контактов Z-min и сервоприводов, используемых для подключения BLTouch, для конкретной платы.
- Размеры и форма нашей печатной пластины
В данном примере использовалась плата контроллера Ramps 1.6.
Инструкция
- Откройте конфигурацию Klipper, затем добавьте (или удалите, если уже есть) заголовок, как показано на рисунке выше.
- Под заголовком добавьте следующие записи. Помните, что название выводов на вашей плате может быть другими.
sensor_pin: ^PD3control_pin: PH3
- Сохраните конфигурацию.
- Включите принтер.
- Перезапустите Klipper.
- Наблюдайте и проверяйте зонд.
Во время начальной самопроверки зонд несколько раз втянется и опустит штифт. В конце проверки будет гореть красный светодиод, а штифт будет находиться в верхнем положении. Если BLTouch прошел начальную самопроверку, все в порядке.
Что касается входа для сенсорного штырька, имейте в виду, что не каждый BLTouch требует активации подтягивающего резистора с помощью ‘^’.
Настройка сетки стола

Прежде чем перейти к тестированию и калибровке, мы рекомендуем воспользоваться этой возможностью и настроить сетку стола. Хотя это и не является обязательным условием для запуска датчика BLTouch, цель данной статьи — дать нашим читателям возможность успешно выполнять ABL, а для этого требуется сетка.
Инструкция
Следующие инструкции приведены для того, чтобы показать вам, как настроить сетку печатной основы. Исходные данные предполагают наличие печатной формы размером 250 x 220 мм со смещением по оси X 24 мм и смещением по оси Y 5 мм.
- Откройте конфигурацию Klipper
- Добавьте заголовок, если его еще нет
- Затем добавьте следующее под заголовком:
speed: 120horizontal_move_z: 5mesh_min: 35, 6mesh_max: 240, 198probe_count: 5, 3
Опять же, приведенные выше значения — это примеры, которые служат только в качестве руководства. Используемое вами смещение должно быть определено с помощью процедуры калибровки, описанной в следующем разделе и ваши записи должны быть отредактированы соответствующим образом.
Расширенная конфигурация
Пока не обращайте внимания на расширенные настройки, для начала все должно быть просто. Когда все будет в порядке и работать как надо, смело экспериментируйте с расширенными настройками и настраивайте принтер. Когда вы будете готовы к этому, мы настоятельно рекомендуем изменять по одной настройке за раз, чтобы увидеть эффект.
Тестирование и калибровка
Мы установили BLTouch на наш принтер, но нам все еще необходимо протестировать, откалибровать и в конечном итоге устранить неисправности нашего нового датчика. В следующих нескольких разделах мы шаг за шагом объясним процедуру тестирования, а также процесс калибровки. В конце мы дадим несколько советов по устранению неисправностей.
Тестирование

Нам необходимо протестировать работу датчика без риска повреждения принтера. Для этого мы отправим на принтер несколько команд, одну за другой в указанном ниже порядке через наш командный терминал.
Тест 1
Начнем с отправки нескольких команд.
- Отправьте команду
BL_DEBUG COMMAND=pin_down. Контакт должен переместиться вниз, а красный светодиод должен погаснуть. - Отправьте команду
BL_DEBUG COMMAND=pin_up. Контакт должен двигаться вверх, а красный светодиод должен гореть. - Затем отправьте следующую команду:
BL_DEBUG COMMAND=pin_downBL_DEBUG COMMAND=touch_modeQUERY_PROBE
- После отправки последней команды проверьте, что она сообщает
probe: open.
Тест 2
Затем осторожно подтолкните контакт вверх на несколько миллиметров. Затем отправьте команду QUERY_PROBE и убедитесь, что она сообщит: probe: triggered.
После этого отправьте команду BL_DEBUG COMMAND=pin_up. Контакт должен подняться вверх.
Тест 3
Для последнего теста, пожалуйста, будьте готовы выключить принтер в случае неисправности. Отправьте команду PROBE.
Пусть зонд коснется чего-нибудь на безопасном расстоянии от печатной пластины. В зависимости от настроек принтер может коснуться чего-либо два или более раз. Принтер должен остановиться, как и предполагалось.
Если все работает, как задумано, мы закончили базовую настройку BLTouch. Если по окончании теста светодиод мигает или зонд не работает, ознакомьтесь с приведенными ниже советами по устранению неполадок.
Советы
При нормальных обстоятельствах датчик должен работать так, как задумано. Если тесты ведут себя не так, как должны, проверьте настройку еще раз, шаг за шагом. Это включает в себя проверку того, что все соответствующие кабели и разъемы подключены так, как они должны быть подключены.
Пользователи с менее распространенными платами контроллеров могут найти возможные решения на многочисленных форумах. Наконец, если датчик не является оригинальным BLTouch, есть вероятность, что он просто не работает. В таких случаях мы рекомендуем приобрести оригинал.
Калибровка

Теперь когда мы уверены, что датчик работает так, как нужно нам необходимо откалибровать смещения по X, Y и Z. Калибровка датчика хорошо описана в Klipper, но мы приведем краткое описание.
Шаг 1
Через терминал выполните команду PROBE, затем физически отметьте маркером место, где зонд касается кровати.
Затем отправьте команду GET_POSITION. В ответ вы получите нечто похожее на следующее:
Recv: // : X:46.500000 Y:27.000000 Z:15.000000 E:0.000000
Запишите позиции X и Y как «probe x» и «probe y». Используя приведенный выше пример, записи должны выглядеть следующим образом:
probe x= 46.5probe x= 27
Шаг 2
Для следующего шага нам нужно переместить сопло к маркеру с помощью команд G1. Может потребоваться несколько команд, прежде чем насадка будет идеально отцентрирована на маркере. X и Y будут разными для каждого, но для иллюстрации формата команды выглядят следующим образом: G1 F300 X30 Y30 Z10
Когда сопло полностью совпадет с положением отметки, которую мы сделали ранее, отправьте команду GET_POSITION. На этот раз запишите положения X и Y как «nozzle x» и «nozzle y».
Например, если вы получили Recv: // : X:60.500000 Y:60.000000 Z:15.000000 E:0.000000, вы запишете сопло x= 60.5 и сопло y= 60.
Теперь вы можете рассчитать смещения по X и Y. Формула проста: nozzle x – probe x и nozzle y – probe y. В нашем примере смещение равно x=14 и y=33.
Наконец, в конфигурационном файле под заголовком добавьте смещения следующим образом:
x_offset: 14y_offset: 33

Шаг 3
Почти готово! Последний шаг калибровки — определение Z Offset. Klipper предлагает команду, позволяющую легко это сделать. Сначала мы включим принтер, затем запустим PROBE_CALIBRATE. Она выполнит автоматическую калибровку, затем переместит сопло для ручной калибровки.
Большинство пользователей Klipper знакомы с бумажным тестом:
- Поместите лист бумаги или 0,1-мм лезвие щупа между соплом и станиной.
- Отрегулируйте высоту Z вверх или вниз с помощью команды
TESTZ, пока не будет ощущаться небольшое трение при перемещении бумаги или щупа. Например, чтобы переместить сопло вверх или вниз на .1 мм, введите следующее:TESTZ Z=+.1TESTZ Z=-.1
- Когда вы будете удовлетворены результатами, введите
ACCEPTв терминале. - В завершение введите
SAVE_CONFIGи перезапустите принтер.
Шаг 4
Наконец-то мы готовы к созданию нашей первой сетки. Введите BED_MESH_CALIBRATE в терминале и наслаждайтесь!
После того, как автоматическая калибровка сетки стола будет создано, нам будет предложено SAVE_CONFIG. Это сохранит сетку в нашей конфигурации для дальнейшего использования.
Не забудьте установить соответствующую команду mesh в вашем слайсере. В противном случае она не будет включена в генерируемый нами G-код.
Устранение неполадок

Мы можем столкнуться с рядом проблем с BLTouch, и есть дополнительные шаги по настройке, которые могут быть интересны для взыскательного пользователя. Ниже мы порекомендуем решения наиболее распространенных проблем. Не забудьте также ознакомиться с документацией Klipper для более тонких моментов ABL, которые выходят за рамки этой статьи.
Проблемы во время тестирования
На наиболее очевидные проблемы указывает быстрое мигание красного светодиода BLTouch или неработающий пин в начале работы принтера. Если обнаружено вышеперечисленное, скорее всего, проблема в проводке. Проверьте все соединения, затем повторите попытку. Обратите внимание, что бывали случаи, когда BLT подключался в обратном направлении.
Если при первоначальном тестировании мигает красный светодиод или контакт находится внизу, когда его не должно быть, проверьте проводку и конфигурацию еще раз. Правильны ли названия выводов? Был ли указан подтягивающий резистор?
Состояние ошибки
Иногда BLTouch может выйти из строя без видимых причин и перейти в состояние ошибки, о чем свидетельствует мигающий красный светодиод. Чтобы выйти из состояния ошибки, введите в терминал BLTOUCH_DEBUG COMMAND=reset, чтобы сбросить датчик.
Точно такая же ошибка может произойти, когда нажимной штифт не разворачивается, потому что он не отсоединяется от металлической вставки в верхней части зонда. К счастью, штифт можно вытащить, а металлическую вставку можно отрегулировать с помощью маленького шестигранного ключа. Просто немного открутите винт и аккуратно вставьте штифт на место. Затем повторите попытку со следующими командами, пока все не заработает:
BLTOUCH_DEBUG COMMAND=resetBL_DEBUG COMMAND=pin_downBL_DEBUG COMMAND=pin_up
Клоны
Если мы имеем дело с клоном или подделкой, может возникнуть множество других проблем. Klipper предлагает ряд решений в своей документации по BLTouch в разделе «BL-Touch ‘clones'».







