В одной из предыдущих статей я рассказывал об установке датчика стола на мой Graber i3. Эта доработка позволила перейти от исключительно ручной настройки к измерению положения поверхности стола с помощью Klipper.
Но тогда я практически не затрагивал вопрос выбора самого датчика.
Сегодня существует множество готовых решений для автоматического измерения стола. Среди наиболее известных — BLTouch и его более дешёвые аналоги, например 3DTouch.
Однако для своего принтера я выбрал обычный индукционный датчик.
И на это было несколько причин.
Зачем вообще нужен датчик стола?
Даже если стол 3D-принтера выставлен вручную, его поверхность не обязательно будет идеально параллельна плоскости перемещения печатающей головки.
Кроме того, сам стол может иметь небольшие неровности.
При печати первого слоя это особенно заметно: в одной части стола сопло оказывается слишком близко к поверхности, а в другой — слишком далеко.
Klipper позволяет измерить положение поверхности в нескольких точках и использовать полученные данные для компенсации отклонений.
Но для этого необходимо каким-то образом определить расстояние до стола.
И здесь существуют разные подходы.
BLTouch и 3DTouch — как они работают
BLTouch — это датчик с выдвижным щупом, который физически касается поверхности стола.
Перед измерением щуп выдвигается, печатающая головка опускается, а при контакте с поверхностью датчик формирует сигнал срабатывания.
После измерения щуп убирается обратно.
3DTouch — распространённое название более дешёвых датчиков аналогичной конструкции.
Главное преимущество такого решения заключается в том, что датчик определяет положение непосредственно рабочей поверхности.
Ему практически неважно, из какого материала изготовлен стол.
Стекло, металл, PEI или другое покрытие — если щуп может корректно коснуться поверхности, датчик способен выполнить измерение.
Это действительно универсальный подход.
Но у него есть и особенности, которые мне не очень нравятся.
Подвижный механизм — потенциальное слабое место
Главная особенность BLTouch и 3DTouch — выдвижной щуп.
Для работы датчика он должен свободно перемещаться, правильно выдвигаться и убираться после измерения.
Сам по себе такой механизм не означает низкую надёжность.
Оригинальные BLTouch широко используются на 3D-принтерах и при правильной установке способны работать достаточно стабильно.
Однако наличие подвижной детали всё равно добавляет ещё один элемент, от которого зависит корректность измерений.
Особенно это касается недорогих аналогов.
Судя по отзывам пользователей, у некоторых 3DTouch встречаются проблемы с повторяемостью измерений, срабатыванием или работой выдвижного щупа.
Разумеется, это не означает, что все 3DTouch работают плохо.
Но лично мне такой механизм не внушал особого доверия.
Если ту же задачу можно решить датчиком без подвижных частей, почему бы не воспользоваться этим вариантом?
Индукционный датчик — другой принцип работы
Индукционный датчик работает без физического контакта с поверхностью.
Внутри него находится катушка, создающая переменное электромагнитное поле.
Когда в зоне действия датчика появляется подходящий металлический объект, изменяются электрические характеристики системы, и датчик формирует сигнал срабатывания.
Никакого выдвижного щупа здесь нет.
Датчик просто закреплён рядом с печатающей головкой и определяет приближение металлической поверхности.
Именно простота конструкции мне и понравилась.
Нет механизма, который должен выдвигаться перед каждым измерением, нет необходимости касаться стола и нет подвижного щупа, который потенциально можно повредить.
Но, конечно, у такого решения есть ограничения.
Главный недостаток — зависимость от материала стола
В отличие от BLTouch, индукционный датчик не может одинаково работать с любой поверхностью.
Он реагирует на металл, причём расстояние срабатывания зависит от его типа.
Например, сталь и алюминий могут обнаруживаться на разных расстояниях даже одним и тем же датчиком.
На результат также влияют размеры металлического объекта, конструкция датчика и условия измерения.
Если печатать на толстом стекле, под которым находится металлический стол, обычный индукционный датчик может оказаться неподходящим: металл будет слишком далеко.
Поэтому выбирать такой датчик нужно с учётом конкретной конструкции принтера.
Но в моём случае использование неметаллической основы рабочей поверхности не планировалось.
Более того, в перспективе я собираюсь перейти на магнитную съёмную пластину.
А как насчёт магнитной PEI-пластины?
На первый взгляд здесь может возникнуть вопрос: ведь PEI — это пластик, а индукционный датчик реагирует на металл.
Но обычная магнитная PEI-пластина состоит не только из полимерного покрытия.
Как правило, это гибкий лист пружинной стали с нанесённым слоем PEI.
Снизу на нагревательном столе находится магнитное основание, которое удерживает стальную пластину.
Сам PEI является неметаллическим материалом, но под ним расположена сталь.
Именно её и обнаруживает индукционный датчик.
Таким образом, переход на магнитную PEI-пластину вполне совместим с выбранным мной способом измерения стола.
Конечно, нужно учитывать толщину покрытия и рабочее расстояние конкретного датчика.
Кроме того, при замене пластины на другую может измениться положение рабочей поверхности относительно металла, на который реагирует датчик.
Поэтому после подобных изменений необходимо проверять Z-offset.
Но принципиальных препятствий для использования индукционного датчика с такой конструкцией стола я не вижу.
А что с точностью измерений?
Здесь важно понимать, что ни один из рассматриваемых датчиков не гарантирует идеальный первый слой сам по себе.
BLTouch и 3DTouch определяют положение поверхности с помощью механического контакта.
Индукционный датчик определяет расстояние до металлического слоя.
Это разные методы измерения, и у каждого есть свои источники погрешности.
У механических датчиков результат зависит в том числе от состояния щупа и повторяемости его срабатывания.
У индукционных — от материала металла, расстояния до него и характеристик самого датчика.
Некоторые индукционные датчики также чувствительны к изменению температуры.
Это означает, что измерения на холодном и прогретом столе могут немного отличаться.
Поэтому при использовании индукционного датчика важно проверять повторяемость показаний и по возможности проводить измерения в одинаковых температурных условиях.
В моём случае установленный датчик показал достаточно стабильные результаты, чтобы использовать его для настройки стола.
Именно это для меня было главным.
Стоимость тоже имеет значение
Есть ещё один фактор, который я не хотел игнорировать, — цена.
Оригинальный BLTouch стоит заметно дороже обычного индукционного датчика.
Для старого Graber i3 такая покупка выглядела не особенно оправданной.
Конечно, можно приобрести более дешёвый 3DTouch.
Но тогда возникает вопрос качества конкретного экземпляра и стабильности его работы.
При этом у меня уже был индукционный датчик.
То есть покупать вообще ничего не требовалось.
Я мог установить имеющийся датчик, подключить его к принтеру и проверить результат на практике.
Так я и поступил.
И поскольку результат меня устроил, причин переходить на другое решение не появилось.
Только ли для старого Graber i3?
Интересно, что мой выбор не ограничивается желанием сэкономить на старом принтере.
Сейчас я также занимаюсь проектом собственного CoreXY.
И в его конструкции изначально планирую использовать индукционный датчик.
Причины примерно те же: простая конструкция, отсутствие подвижного щупа и совместимость с металлической съёмной пластиной стола.
Разумеется, при разработке нового принтера можно предусмотреть практически любой вариант датчика.
Но пока я не вижу необходимости переходить на BLTouch или 3DTouch.
Если индукционный датчик обеспечивает необходимую повторяемость измерений и подходит для выбранной поверхности, этого вполне достаточно.
Значит ли это, что BLTouch хуже?
Нет.
BLTouch и аналогичные контактные датчики имеют важное преимущество — возможность измерять положение рабочей поверхности независимо от наличия металлической основы.
Для принтера со стеклянным столом или другими неметаллическими покрытиями это может оказаться решающим аргументом.
Кроме того, оригинальный BLTouch — достаточно распространённое и хорошо поддерживаемое решение.
Поэтому я не считаю его плохим датчиком.
Просто для моей конструкции его преимущества не оправдывали дополнительных расходов.
А потенциальные недостатки механизма выдвижного щупа, наоборот, склоняли меня в сторону более простого решения.
Итоги
При модернизации Graber i3 я стараюсь не заменять компоненты только потому, что существуют более современные или популярные решения.
Каждая доработка должна решать конкретную задачу.
С датчиком стола получилось именно так.
Индукционный датчик уже был у меня в наличии, не требовал дополнительных расходов и не содержал подвижного механизма.
При этом он обеспечил необходимую повторяемость измерений и подошёл для выбранного подхода к конструкции стола.
У него есть ограничения, связанные с материалом поверхности и температурной стабильностью, но для моего принтера они не стали причиной отказываться от этого решения.
В результате я получил работающую систему измерения стола без покупки BLTouch или 3DTouch.
И пока не вижу причин что-либо менять.
Что дальше
С электроникой и датчиком стола я постепенно разобрался, но оставалась ещё одна важная часть старого Graber i3 — механика.
Даже правильно настроенный Klipper и современные драйверы не способны устранить люфты, перекосы и недостаточную жёсткость конструкции.
Поэтому следующим этапом стала работа с механическими узлами принтера.
Об этом и будет следующая статья.