Установка BDsensor-m-m
Подключите кабель датчика к разъему EXP1 на материнской плате
- Если кабель датчика слишком короткий, используйте удлинитель из комплекта
- Кабели CKL и SDA BDsensor-m-m можно подключить к любым GPIO-пинам на плате. Вы также можете подключить кабель BDsensor напрямую к порту Bltouch, например:
BLtouch | BDsensor-m
5V --> 5V
GND --> GND
S --> CLK/SCL (Input)
GND --> GND
Zmin --> SDA (Input/Output)
-
Некоторые пины в коннекторе платы могут не быть напрямую подключены к GPIO MCU (например, на них могут быть установлены фильтрующие конденсаторы или изолированы через MOSFET, диод или оптопару, но если они изолированы через резистор или резистор с подтяжкой/оттяжкой, то они могут быть использованы с BDsensor-m). И прошивка сообщит об ошибке подключения. Например:
-
Коннекторы для вентиляторов и нагревателей изолированы через MOSFET,
-
В некоторых платах коннекторы для термисторов и концевых выключателей/зондов обычно подключены к GND через фильтрующие конденсаторы,
-
Установите датчик BD возле термоблока, как показано на рисунке. STL монтажа, STL_mount_VzBot_Goliath short
Установка патча в прошивку Marlin
Датчик BD интегрирован в Marlin2.1.x (с 27.08.2022),
Вы можете загрузить релизную версию. Но сейчас рекомендуется загрузить последнюю версию с исправлением ошибок: https://github.com/MarlinFirmware/Marlin
Вам нужно изменить файлы конфигурации и пины.
Редактирование configuration.h
-
Включение BD_SENSOR
Раскомментируйте
#define BD_SENSOR`
#define Z_SAFE_HOMING
#define BD_SENSOR_PROBE_NO_STOP //adding this new line for fast bed leveling without nozzle stop,Только
BD_SENSOR_PROBE_NO_STOP
Последняя версия Marlin с исправлениями: https://github.com/MarlinFirmware/Marlin
Описание: https://github.com/MarlinFirmware/Marlin/pull/25847
-
Использование датчика для возвращения
Убедитесь, что
Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
отключен, и включитеUSE_PROBE_FOR_Z_HOMING
//#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
// Force the use of the probe for Z-axis homing
#define USE_PROBE_FOR_Z_HOMING -
Замедление скорости второго возврата по Z
#define Z_PROBE_FEEDRATE_SLOW (Z_PROBE_FEEDRATE_FAST / 16)
Здесь мы должны замедлить скорость возврата по Z, потому что концевой выключатель, считываемый процессом BDsensor-m, не так реактивен, как обычный концевой выключатель.
Редактирование Configuration_adv.h
#define BABYSTEPPING
включите эту функцию для реального времени выравнивания платформы#define HOMING_BUMP_DIVISOR { 2, 2, 8 } // Re-Bump Speed Divisor (Divides the Homing Feedrate)
Редактирование pins_boardname.h
Настройте пины SDA и SCL для BDsensor-m в файле пинов pins_boardname.h, добавив следующие 3 строки (например,): pins_PANDA_PI_V29.h
#define I2C_BD_SDA_PIN PC6 // Please change to the actual number which the SDA wire is connected to your mainboard
#define I2C_BD_SCL_PIN PB2 // Please change to the actual number which the SLK wire is connected to your mainboard
#define I2C_BD_DELAY 20 // default value is 20, should be in the range [20,50].
Если вы хотите использовать автоматическое выравнивание платформы (G29) перед печатью, как обычный BLtouch, раскомментируйте
#define AUTO_BED_LEVELING_BILINEAR
И отредактируйте значения следующим образом
#define Z_CLEARANCE_DEPLOY_PROBE 0 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 1 // Z Clearance between probe points
#define Z_CLEARANCE_MULTI_PROBE 1 // Z Clearance between multiple probes
Отображение значений BD-датчика на экране
- Для принтеров с поддержкой отображения состояния (поддержка gcode M117), таких как LCD12864 или некоторые UART-экраны, например, ender3V2 ...
Калибровка
-
Очистите сопло, затем переместите ось Z с помощью консоли, пока сопло не коснется платформы (BDsensor-m использует эту позицию как точку 0, поэтому нам не нужен z_offset, установим значение на 0).
-
Отправьте команду gcode
M102 S-6
, принтер медленно поднимет ось Z на 0.1мм, пока не достигнет 4мм. Не запускайте M102 S-6 до установки датчика, также не выключайте принтер во время калибровки, иначе старые данные калибровки будут удалены. В этом случае просто повторите калибровку -
Вы можете отправить
M102 S-5
для проверки успешности калибровки BD-датчика, это вернет исходные данные калибровки, хранящиеся в BD-датчике.
Есть инструмент для калибровки: https://github.com/markniu/Bed_Distance_sensor/raw/new/marlin/BD_Config_Tool_Marlin.zip
Внимание: Значение данных 1015 или > 1010 указывает на выход за пределы диапазона датчика. Если первые 5 точек (0~0.5мм) или больше находятся в диапазоне от 0 до 1000 и увеличение значения delta >=10, то калибровка прошла успешно. Как показано на диаграмме выше.
Если M102 S-5 возвращает первое значение исходных данных калибровки больше 400, это означает, что датчик установлен слишком высоко, его нужно установить ближе к платформе. Также убедитесь, что второе значение больше первого на 10 и более.
Тестирование и печать
Меню выравнивания платформы
Автоматическое выравнивание
Существует два способа автоматического выравнивания платформы:
1. Использование M102 для реального времени выравнивания первых нескольких слоев
Мы можем легко включить или отключить этот автоматический уровень, отправив команду gcode или добавив ее в файл gcode.
Чтобы включить выравнивание платформы в Cura, добавьте gcode M28 в разделе "Стартовый G-код" в настройках принтера прямо под G102 (возврат всех осей). Например, под G28 это означает, что выравнивание будет выполняться только при высоте Z менее 0.2мм. M102 S2
Отправьте или используйте для отключения выравнивания платформы с помощью BD-датчика, по умолчанию отключено. M102 S0``G28``M18
M102 S-1 //Read sensor information, and we can use this for connection checking.
M102 S-2 //Read current distance value
M102 S-5 //Read raw Calibrate data
M102 S-6 //Start Calibrate,before that make sure the nozzle is just touched the bed,and then the printer restarted. don't home z axis before this.
M102 S4 //Set the adjustable Z height value,e.g. M102 S4 means it will do adjusting while the Z height <=0.4mm , disable it by M102 S0.
2. Автоматическое выравнивание платформы G29
Другой способ автоматического выравнивания платформы, как G29 для BLtouch, просто добавьте строку G28 под G29.
Проверка концевого выключателя 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