Установка BDsensor-m-m
Подключение кабеля датчика к разъему EXP1 на материнской плате
- Если длины кабеля датчика недостаточно, можно использовать удлинитель из упаковки.
- Линии CKL и SDA датчика BDsensor-m-m можно подключить к любым выводам GPIO на плате. Вы также можете подключить кабель датчика BD напрямую к порту Bltouch, например:
BLtouch | BDsensor-m
5V --> 5V
GND --> GND
S --> CLK/SCL (Вход)
GND --> GND
Zmin --> SDA (Вход/Выход)
-
Некоторые выводы в разъеме материнской платы могут не быть напрямую подключены к GPIO микроконтроллера (например, на них могут быть фильтрующие конденсаторы или они изолированы через MOSFET, диод или оптопару, но если они изолированы через резистор или подтяжку/стяжку резистором, это тоже подходит), поэтому их нельзя использовать с BDsensor-m. В этом случае прошивка сообщит об ошибке подключения. Например:
-
Разъемы вентиляторов и нагревателей изолированы через MOSFET,
-
Разъемы для термисторов и эндстопов/зондов на некоторых платах обычно подключены к GND через фильтрующие конденсаторы.
-
Установите датчик BD рядом с хот-эндом, как показано на рисунке ниже. STL крепления, STL_крепление_VzBot_Goliath short
Loading...
Установка патча в прошивку Marlin
Датчик BD интегрирован в Marlin 2.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 //добавьте эту новую строку для быстрого выравнивания стола без остановки сопла,Только
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// Принудительное использование зонда для парковки по оси Z#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 } // Делитель скорости повторного касания (делит скорость подачи при парковке)
Редактирование pins_boardname.h
Добавьте следующие 3 строки в файл выводов pins_boardname.h (например, pins_PANDA_PI_V29.h) для настройки выводов SDA и SCL датчика BDsensor-m:
#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 на LCD-экране
- Для принтеров с дисплеем состояния (поддерживающим G-код M117), таких как LCD12864 или некоторые UART-экраны, например, Ender 3 V2...
Калибровка
-
Очистите сопло, затем переместите ось Z через консоль, пока сопло не коснется стола (BDsensor-m будет использовать это положение как нулевую точку, поэтому z_offset не нужен, устанавливаем значение в 0).
-
Отправьте G-код
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, а дельта увеличения значения составляет >=10, значит, калибровка прошла успешно. Как на диаграмме, показанной выше.
Если первое необработанное значение калибровки, возвращаемое M102 S-5, больше 400, это означает, что датчик установлен слишком высоко, и его необходимо переустановить ближе к столу. Также убедитесь, что второе значение как минимум на 10 больше первого.
Тестирование и печать
Меню "Стол"
Автоматическое выравнивание стола
Есть два способа автоматического выравнивания стола:
1. Использование M102 для实时ного выравнивания первых нескольких слоев
Мы можем легко включить или отключить этот автоматический уровень, отправляя G-код или добавляя G-код в G-файл.
Чтобы включить выравнивание стола в Cura, добавьте G-код M102 сразу после G-кода G28 (парковка всех осей) в разделе "Начальный G-код" в настройках машины принтера. Например, после G28 это означает, что выравнивание стола будет выполняться только при высоте оси Z ниже 0.2 мм. M102 S2
Отправка 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 Автоматическое выравнивание стола
Другой способ автоматического выравнивания стола, как G29 с BLtouch, просто добавьте строку G29 после G28.
Видео по установке от 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