Перейти к основному содержанию

Установка BDsensor

Подключите кабель датчика к материнской плате или к плате инструмента CAN-шины.

  • Обратите внимание, что SB2040 не может использовать BDsensor.
  • Обратите внимание, что для SHT36 необходимо подключить CLK/SCL (Input) BDsensor к входу высокого напряжения и установить перемычку.
  • Провода CKL и SDA BDsensor можно подключать к любым выводам GPIO платы. Вы также можете подключить кабель BD-датчика непосредственно к разъему Bltouch, например:
BLtouch | BDsensor
5V --> 5V
GND --> GND
S --> CLK/SCL (Input)
GND --> GND
Zmin --> SDA (Input/Output)
  • Поскольку некоторые выводы в разъемах материнской платы могут быть не подключены напрямую к GPIO микроконтроллера (например, на них могут быть фильтрующие конденсаторы, или они могут быть изолированы через MOSFET, диод или оптопару, но если они изолированы через резистор или резистивный подтягивающий/стягивающий резистор, это также допустимо), они не могут использоваться с BDsensor. И прошивка сообщит об ошибке подключения. Например:

  • Разъемы вентиляторов и нагревателей изолированы через MOSFET,

  • Разъемы для термисторов температуры и концевых выключателей/щупов в некоторых платах обычно подключены к GND через фильтрующие конденсаторы.

  1. Установите BD-датчик рядом с хот-эндом, как показано на рисунке ниже. STL крепления, STL_mount_VzBot_Goliath short

    Loading...

Установка патча в прошивку Marlin

BD-датчик интегрирован в Marlin 2.1.x (с 27.08.2022).

Вы можете скачать релизную версию. Но сейчас рекомендуется скачать последнюю версию с исправлениями ошибок: https://github.com/MarlinFirmware/Marlin

Вам нужно изменить файлы конфигурации и файлы выводов.

Редактирование Configuration.h

  1. Включите BD_SENSOR

    Раскомментируйте

    #define BD_SENSOR`
    `#define Z_SAFE_HOMING
    #define BD_SENSOR_PROBE_NO_STOP //добавьте эту новую строку для быстрого выравнивания стола без остановки сопла,

    Только BD_SENSOR_PROBE_NO_STOP

    Последняя версия Marlin с исправлениями ошибок: https://github.com/MarlinFirmware/Marlin

    Описание: https://github.com/MarlinFirmware/Marlin/pull/25847

  2. Используйте щуп для хоуминга

    Убедитесь, что Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN отключен, и включите USE_PROBE_FOR_Z_HOMING, как показано ниже:

    //#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
    // Принудительное использование щупа для хоуминга оси Z
    #define USE_PROBE_FOR_Z_HOMING
  3. Замедлите вторую скорость хоуминга Z

    #define Z_PROBE_FEEDRATE_SLOW (Z_PROBE_FEEDRATE_FAST / 16)

    Здесь мы должны замедлить скорость удара и скорость хоуминга Z, так как считывание упора из процесса BDsensor не происходит в реальном времени, как у обычного упора.

    Редактирование Configuration_adv.h

    #define BABYSTEPPING Включите эту функцию для выравнивания в реальном времени.

    #define HOMING_BUMP_DIVISOR { 2, 2, 8 } // Делитель скорости повторного удара (Делит скорость подачи хоуминга)

Редактирование pins_boardname.h

Настройте пины SDA и SCL для BDsensor в файле выводов pins_boardname.h (например, pins_PANDA_PI_V29.h), добавив следующие 3 строки:

#define I2C_BD_SDA_PIN PC6 // Измените на фактический номер, к которому подключен провод SDA на вашей материнской плате
#define I2C_BD_SCL_PIN PB2 // Измените на фактический номер, к которому подключен провод SLK на вашей материнской плате
#define I2C_BD_DELAY 20 // значение по умолчанию 20, должно быть в диапазоне [20,50].

Если вы хотите выполнять автоматическое выравнивание стола (G29) перед печатью, как обычный BLtouch, раскомментируйте

#define AUTO_BED_LEVELING_BILINEAR

и отредактируйте значения, как показано ниже:

#define Z_CLEARANCE_DEPLOY_PROBE 0 // Z Зазор для развертывания/установки
#define Z_CLEARANCE_BETWEEN_PROBES 1 // Z Зазор между точками щупа
#define Z_CLEARANCE_MULTI_PROBE 1 // Z Зазор между несколькими щупами

Отображение значения BD-датчика на ЖК-экране

  • Для принтеров с отображением состояния (поддерживающих G-код M117), таких как LCD12864 или некоторые UART-экраны, например, Ender3 V2...

Калибровка

  1. Очистите сопло, затем переместите ось Z в консоли до тех пор, пока сопло не коснется стола (BDsensor будет использовать эту позицию как нулевую точку, поэтому z_offset не требуется, мы устанавливаем значение 0).

  2. Отправьте G-код M102 S-6, принтер будет медленно поднимать ось Z на 0,1 мм каждый раз, пока не достигнет 4 мм. Не запускайте M102 S-6 перед установкой датчика, а также не выключайте питание принтера во время калибровки, иначе старые данные калибровки будут удалены. Если это произошло, просто откалибруйте снова.

  3. Вы можете отправить M102 S-5, чтобы проверить, успешно ли откалиброван BD-датчик. Это вернет необработанные данные калибровки, хранящиеся в BD-датчике.

Существует также инструмент калибровки, который может это сделать: https://github.com/markniu/Bed_Distance_sensor/raw/new/marlin/BD_Config_Tool_Marlin.zip img

Примечание: Значение данных 1015 или > 1010 указывает на то, что датчик находится вне диапазона. Если первые 5 точек (0~0,5 мм) или более находятся в диапазоне от 0 до 1000, а дельта увеличения значения >= 10, это означает, что калибровка прошла успешно. Как показано на диаграмме выше.

Если первое необработанное значение калибровки, возвращаемое M102 S-5, больше 400, это означает, что датчик установлен слишком высоко, и его необходимо переустановить ближе к столу. Также убедитесь, что второе значение как минимум на 10 больше первого.

Тестирование и печать

Меню Bed

Auto Bed

Есть два способа автоматического выравнивания стола:

1. Использование M102 для выравнивания в реальном времени на первых нескольких слоях

Мы можем легко включить или отключить этот автоматический уровень, отправив G-код или добавив G-код в G-файл.

Чтобы включить выравнивание стола в Cura, добавьте G-код M102 S2 непосредственно под G-код G28 (Home all axes) в разделе "Start G-code" в настройках машины принтера. Например, под G28 это означает, что выравнивание стола будет выполняться только на высоте оси Z менее 0,2 мм.

Отправка M102 S0 отключит или, по умолчанию, отключит выравнивание стола с помощью BD-датчика. Кстати, по умолчанию оно отключено. G28 M18

M102 S-1 //Чтение информации о датчике, можно использовать для проверки подключения.
M102 S-2 //Чтение текущего значения расстояния
M102 S-5 //Чтение необработанных данных калибровки
M102 S-6 //Начать калибровку. Перед этим убедитесь, что сопло только коснулось стола, а затем перезапустите принтер. Не выполняйте хоуминг оси Z перед этим.
M102 S4 //Установка регулируемого значения высоты Z, например, M102 S4 означает, что коррекция будет выполняться, когда высота Z <= 0,4 мм. Отключить с помощью M102 S0.

2. G29 Автоматическое выравнивание стола

Другой способ автоматического выравнивания стола — как BLtouch с G29, просто добавьте строку G28 под G29.

Видео по установке

Видео по установке от Chris Basement

Проверка Z-концевика M119

Пожалуйста, не выполняйте хоуминг Z перед проверкой этого шага, иначе сопло может удариться о стол принтера.

Это сообщение, возвращаемое после отправки команды M119 (сообщить состояние концевых выключателей).

Send: M119
Recv: x:open y:open z:open

Если z min не открыт, проверьте вашу конфигурацию. #define Z_MAX_ENDSTOP_HIT_STATE HIGH

  • Убедитесь, что двигатели Z выключены/разблокированы.
  • Опустите ось Z вручную, пока сопло не коснется стола.
  • Отправьте M102 S-2, возвращаемое значение должно быть 0,00 мм, затем снова отправьте M119, вы должны увидеть, что Z-концевик теперь сработал.
Send: M119
Recv: x:open y:open z:TRIGGERED

Проверка подключения

Проверьте подключение с помощью M102 S-1. Это пример возвращаемого сообщения. Проверьте, не возвращает ли подключение и порядок проводов пустое значение или другую строку.

Send: M102 S-1
Recv: V1.0 pandapi3d.com

Если все вышеперечисленные шаги выполнены правильно, то теперь вы можете выполнить хоуминг оси Z.

Loading...