Mesh Bed Leveling
Mesh Bed Leveling — это метод автоматической компенсации неровностей рабочей поверхности (стола) в 3D-принтерах, работающих по технологии FDM (Fused Deposition Modeling, моделирование методом послойного наплавления). В отличие от традиционных систем выравнивания, которые стремятся сделать стол идеально горизонтальным, Mesh Bed Leveling создаёт цифровую карту отклонений и корректирует траекторию движения печатающей головки в процессе печати, чтобы расстояние между соплом и столом оставалось постоянным в каждой точке.
История
Проблема неравномерности стола возникла одновременно с появлением первых реп-рап-принтеров (RepRap) в середине 2000-х годов. Ранние модели требовали ручной настройки по трём или четырём точкам с помощью листа бумаги, что было трудоёмко и неточно. С развитием прошивок, таких как Marlin, появились программные методы компенсации.
Первые реализации Mesh Bed Leveling появились в прошивках Marlin около 2013–2014 годов. Изначально они были примитивными: измерялось всего несколько точек, а коррекция применялась линейно. Со временем алгоритмы усложнились: количество точек измерения увеличилось, а методы интерполяции стали более точными. В 2015–2016 годах широкое распространение получили датчики автоматического зондирования (BLTouch, индуктивные датчики), что позволило автоматизировать процесс сбора сетки. Сегодня Mesh Bed Leveling является стандартной функцией практически всех современных прошивок для FDM-принтеров.
Принцип работы
Mesh Bed Leveling основан на создании трёхмерной карты поверхности стола. Процесс включает несколько этапов.
Сбор данных (зондирование)
Перед началом печати или в её начале печатающая головка последовательно перемещается в заданные точки стола. В каждой точке измеряется расстояние от сопла до поверхности. Для измерения используются:
- Механические датчики: например, BLTouch, который выдвигает щуп и фиксирует момент касания.
- Индуктивные датчики: реагируют на металлическую поверхность стола.
- Емкостные датчики: определяют расстояние до любого материала.
- Датчики на основе пьезоэлементов: фиксируют давление при касании сопла.
- Датчики нагрузки (load cell): измеряют усилие на сопле.
Измерения выполняются по сетке (grid), обычно от 3×3 до 15×15 точек. Чем больше точек, тем точнее карта, но тем дольше процесс зондирования.
Построение карты (сетки)
Полученные значения отклонений (Z-смещения) сохраняются в памяти прошивки в виде двумерного массива — сетки (mesh). Каждой точке сетки соответствует значение, показывающее, насколько выше или ниже находится стол в этой точке относительно идеальной плоскости.
Интерполяция
Во время печати прошивка непрерывно вычисляет поправку для текущей позиции сопла. Если сопло находится точно в узле сетки, используется сохранённое значение. Если между узлами, применяется интерполяция — вычисление промежуточного значения на основе соседних точек. Наиболее распространённые методы:
- Билинейная интерполяция: учитывает четыре ближайших узла сетки.
- Бикубическая интерполяция: использует 16 узлов для более гладкой коррекции, но требует больше вычислительных ресурсов.
Коррекция траектории
Прошивка динамически изменяет координату Z (высоту) печатающей головки на каждом шаге движения, добавляя или вычитая поправку. Таким образом, даже если стол имеет наклон или волнистость, расстояние между соплом и столом остаётся постоянным, что обеспечивает равномерное прилипание первого слоя.
Классификация методов
Mesh Bed Leveling можно классифицировать по способу получения данных и по способу хранения карты.
По способу зондирования
- Ручной: пользователь вручную перемещает головку в каждую точку сетки и регулирует расстояние с помощью бумаги или щупа. Требует времени и внимания.
- Автоматический: используется датчик, который самостоятельно измеряет все точки. Наиболее распространённый и удобный метод.
- Полуавтоматический: пользователь задаёт начальную точку, а принтер автоматически обходит все остальные, но измерение выполняется вручную.
По способу хранения карты
- В оперативной памяти (RAM): сетка создаётся и используется только в текущем сеансе печати. При выключении питания данные теряются. Требует повторного зондирования перед каждой печатью.
- В энергонезависимой памяти (EEPROM): сетка сохраняется и может быть повторно загружена при следующем включении. Это позволяет выполнять зондирование реже, например, при смене стола или изменении температуры.
Настройка и калибровка
Для корректной работы Mesh Bed Leveling требуется правильная настройка прошивки и калибровка датчика.
Параметры прошивки (на примере Marlin)
В прошивке Marlin настройка выполняется в файле Configuration.h:
MESH_BED_LEVELING— включает поддержку ручного выравнивания.AUTO_BED_LEVELING_BILINEAR— включает автоматическое выравнивание с билинейной интерполяцией.AUTO_BED_LEVELING_UBL— включает универсальное выравнивание (Unified Bed Leveling), наиболее гибкий метод.GRID_MAX_POINTS_X— количество точек по оси X.MESH_INSET— отступ от краёв стола, чтобы избежать зондирования за пределами рабочей области.Z_PROBE_OFFSET_FROM_EXTRUDER— смещение между датчиком и соплом по оси Z.
Процесс калибровки
- Выравнивание стола: сначала необходимо грубо выровнять стол механически (например, с помощью регулировочных винтов). Mesh Bed Leveling не заменяет механическое выравнивание, а лишь компенсирует оставшиеся неровности.
- Калибровка датчика: определяется точное смещение датчика относительно сопла (Z-офсет).
- Создание сетки: запускается процесс зондирования (команда G29 в G-коде).
- Сохранение сетки: при необходимости сетка сохраняется в EEPROM (команда M500).
- Проверка: печатается тестовый квадрат первого слоя для оценки качества.
Преимущества и недостатки
Преимущества
- Компенсация сложных неровностей: позволяет печатать на столах с волнистостью, вмятинами или перекосом, которые невозможно устранить механически.
- Автоматизация: значительно сокращает время подготовки к печати, особенно при частой смене столов или материалов.
- Повышение качества: обеспечивает равномерное прилипание первого слоя по всей площади, снижая риск отслоения и деформации.
- Совместимость с различными столами: работает с любыми материалами (стекло, алюминий, PEI, BuildTak), если используется подходящий датчик.
Недостатки
- Зависимость от температуры: тепловое расширение стола может изменять его геометрию, поэтому сетку, созданную на холодном столе, может потребоваться обновить после нагрева.
- Точность датчика: низкокачественные датчики могут давать нестабильные показания, что ухудшает результат.
- Время зондирования: создание сетки с большим количеством точек (например, 10×10) может занимать несколько минут.
- Сложность настройки: требует понимания параметров прошивки и процесса калибровки.
- Не заменяет механическое выравнивание: при сильном перекосе стола (более 1–2 мм) компенсация может быть неэффективной или привести к ошибкам.
Применение
Mesh Bed Leveling используется в большинстве современных FDM-принтеров, от любительских до промышленных. Особенно актуален он для:
- Принтеров с большим столом: на больших площадях неровности более заметны.
- Принтеров с гибкими столами: магнитные или пружинные столы часто имеют нестабильную геометрию.
- Принтеров с автоматической сменой столов: при замене стола его положение может меняться.
- Печати с высокими требованиями к точности: например, для создания функциональных прототипов или ювелирных изделий.
Альтернативные методы
Помимо Mesh Bed Leveling, существуют и другие подходы к выравнивания стола:
- Ручное выравнивание: настройка стола с помощью регулировочных винтов и листа бумаги. Требует навыков и времени, но не требует датчиков.
- Автоматическое выравнивание по трём точкам: принтер измеряет три точки на столе и вычисляет плоскость. Компенсирует только наклон, но не волнистость.
- Динамическое выравнивание (Dynamic Bed Leveling): используется в некоторых прошивках, например, в Klipper. Позволяет корректировать траекторию в реальном времени на основе данных с датчика, установленного на столе.
- Плавающий стол (floating bed): стол подвешен на пружинах или магнитах и может самоустанавливаться относительно сопла. Требует сложной механики.
Интересные факты
- Первые реализации Mesh Bed Leveling в прошивке Marlin были написаны разработчиком под псевдонимом «thinkyhead».
- В прошивке Marlin существует три различных режима автоматического выравнивания:
AUTO_BED_LEVELING_LINEAR,AUTO_BED_LEVELING_BILINEARиAUTO_BED_LEVELING_UBL. Последний считается наиболее универсальным. - Некоторые прошивки, такие как RepRapFirmware, поддерживают создание нескольких сеток для разных температур стола.
- Mesh Bed Leveling может быть использован не только для компенсации неровностей, но и для печати на наклонных поверхностях.
Источники
- Документация прошивки Marlin (раздел «Bed Leveling»).
- Документация прошивки Klipper (раздел «Bed Mesh»).
- Статья «Mesh Bed Leveling: Everything You Need to Know» на портале All3DP.
- Статья «How to Use Mesh Bed Leveling» на портале 3D Printing Stack Exchange.
- Обсуждения на форумах RepRap и Reddit (r/3Dprinting).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →