Настройка Marlin для датчика Biqu microprobe для платы BigTreeTech_SKR_mini_E3_V2.0
В этом руководстве я расскажу, как установить и настроить Biqu_microprobe на принтере Ender-3 с платой SKR_mini_E3_V2. Пишу тк не нашел полное описание на русском.
У меня Ender-3 к некоторыми модификациями, описание будет на его примере .
Голова Manta MK2 Duct & Tool Head System. Ссылка на модель:
https://www.printables.com/model/169137-manta-mk2-duct-tool-head-system
Крепление microprobe. Ссылка на крепление:
https://www.printables.com/model/551338-bigtreetech-microrobe-mount-for-manta-mk2
Датчик подключил вместо концевика Z, аналогично этой картинке
(картинка из интернета для примера)Я не очень разбираюсь в настройках Marlin, некоторые вещи осваивал методом проб и ошибок. Более знающие пользователи могут дополнить это руководство в комментариях.
Шаги для настройки
1. Скачиваем Marlin
Скачиваем прошивку и конфигурационный файл с сайта [Marlin] https://marlinfw.org/
2. Распаковка
Создаём папку Marlin на Диске С: , перемещаем оба архива туда и распаковываем.
В папке Configurations-release находим настройки для своего принтера. У меня получилось так :
C:\Marlin\Configurations-release-2.1.2.4\config\examples\Creality\Ender-3\BigTreeTech SKR Mini E3 2.0
Копируем все файлы в папку Marlin:
C:\Marlin\Marlin-2.1.2.4\Marlin .
Копируем с заменой файлов.
3. Устанавливаем Visual Studio
Скачиваем и устанавливаем [Visual Studio] https://code.visualstudio.com/download
Добовляем расширение “Auto Build Marlin”
1.Нажмите кнопку «Расширения» слева
2.Введите “Marlin” в поле поиска
3.Найдите “Auto Build Marlin”в списке и нажмите «Установить».
4. Открываем проект
Нажмите кнопку «Explorer», выберите папку Marlin:
C:\Marlin\Marlin-2.1.2.4\Marlin
Нас будут интересовать два файла: `Configuration.h` и `Configuration_adv.h`, которые будем редактировать.
5. Замена родной платы
После замены родной платы принтера Creality3D V1.1.3 на SKR_mini_E3_V2, сделал калибровку экструдера (PID hotend) и стола (PID bed) с помощью программы [Pronterface] (еще ее называют Printrun) https://www.pronterface.com/
Эта программа может отсылать GCode команды на наш 3D принтер и считывать с него данные.
Далее будем изменять/добавлять/убирать строки кода прошивки
Некоторые строки надо будет закомментировать поставить в начале знак "//" тогда они будут игнорироваться, или раскомментировать убрать в начале строки знак "//", тогда она будет выполнятся
для примера
Датчик автоуровня будет использовать разъём концевика Z
Если же все провода будут подключены к разъёму Z_probe
эту строку нужно закомментировать.
Далее если боитесь забыть значения по умолчанию и не хотите писать на бумаге, можно в конце строки поставить // и записать старые значения или свои комментарии и пояснения
было
Для быстрого поиска жмём cочетание клавиш Ctrl + F открывает окно поиска, чтобы найти текст на странице или в документе
Настройка прошивки Marlin
В Configuration.h
У меня получилось так:
Pid из программы Printrun
PID hotend
#define DEFAULT_Kp 37.35
#define DEFAULT_Ki 5.69
#define DEFAULT_Kd 61.26
PID bed
#define DEFAULT_bedKp 165.03
#define DEFAULT_bedKi 30.34
#define DEFAULT_bedKd 598.52
Если PID стола не работает раскомментировать строчку #define PIDTEMPBED
Настройка шагов экструдера
https://youtu.be/doenKnVk0Ec?t=1139
у меня получилось 714
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 714 }
#define LCD_LANGUAGE ru Переключить экран на русский
В Configuration_adv.h
#define UTF_FILENAME_SUPPORT Для поддержки кирилицы в именах файлов
Этого достаточно для работы принтера, далее настройки для работы BIQU MicroProbe.
В Configuration.h
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
Раскоментировать для подключения датчика к разъёму Z_MIN_ENDSTOP.
//#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
Закоментировать для подключения датчика к разъёму Z_Probe
(Comment out otherwise,the IO of the detection signal line will be automatically set to the IO of the Z_MIN_ENDSTOP port.)
//#define Z_MIN_PROBE_PIN -1 // в инсрукции biqu !PC14
Раскоментировать при использовании порта Z_Probe. Указать пин на плате (The detection IO on the SKR 3)
#define PROBE_ENABLE_DISABLE
Probe Enable / Disable
#define PROBE_ENABLE_PIN PA1
The control IO on the SKR 3
#define FIX_MOUNTED_PROBE
Set the type of leveling sensor
#define NOZZLE_TO_PROBE_OFFSET { 0, -38.5, 0 }
Расположение датчика относительно сопла. Выше этого пункта в прошивке будет инструкция. Пока что линейкой или штангенциркулем померить X и Y offset. Z offset будем делать в самом конце.
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // по умолчанию false
Detection signal line, V1 should be false means high-level triggered,V2 should be true means low-level triggered.
#define ENDSTOPPULLUP_ZMIN_PROBE
The detection signal is open-drain output, and a pull-up resistor needs to be set
#define Z_MIN_ENDSTOP_INVERTING true // по умолчанию false
//#define MIN_SOFTWARE_ENDSTOP_Z
чтобы устанавливать отступ оси Z меньше нуля
#define AUTO_BED_LEVELING_BILINEAR
метод измерения лучше всего подходит для больших или неровных слоев
#define Z_SAFE_HOMING
экструдер будет перемещатся в центр стола чтобы избежать наведения зонда Z за пределы стола
#define USE_PROBE_FOR_Z_HOMING
использовать щуп microprobe вместо концевика z
#define PROBING_MARGIN 15 // по умолчанию 10
Если используете стекло с прещепками, датчик не будет работать ближе15 мм от края стола чтоб щуп не зацепил прищепки (я c PEI оставить 10 )
//#define RESTORE_LEVELING_AFTER_G28
Закомментировать чтоб каждый раз карта измерений не обнулилась
Если раскомментировать #define ENABLE_LEVELING_AFTER_G28 то Bed_leveling будет делаться всегда после Autohome
#define GRID_MAX_POINTS_X 5
это означает сетку измерений 5 х 5, кому кажется долго можно сделать 3 х 3
#define EXTRAPOLATE_BEYOND_GRID
программа будет достраивать сетку до краёв стола
В Configuration_adv.h
#define BABYSTEP_ZPROBE_OFFSET
#define BABYSTEP_MULTIPLICATOR_Z 5 // по умолчанию 1
Далее как я понял для работы Marlin с Biqu_microprobe нужен bugfix-2.1.x
в котором будет специальный раздел для MicroProbe
Я просто скопировал нужный текст из bugfix-2.1.x в Configuration.h
В Configuration.h найти такой фрагмент
/**
* Bed Distance Sensor
*
* Measures the distance from bed to nozzle with accuracy of 0.01mm.
* For information about this sensor https://github.com/markniu/Bed_Distance_sensor
* Uses I2C port, so it requires I2C library markyue/Panda_SoftMasterI2C.
*/
//#define BD_SENSOR
И сразу после него вставить
#if ENABLED(BD_SENSOR)
//#define BD_SENSOR_PROBE_NO_STOP // Probe bed without stopping at each probe point
#endif
/**
* BIQU MicroProbe
*
* A lightweight, solenoid-driven probe.
* For information about this sensor https://github.com/bigtreetech/MicroProbe
*
* Also requires: PROBE_ENABLE_DISABLE
*/
//#define BIQU_MICROPROBE_V1 // Triggers HIGH
#define BIQU_MICROPROBE_V2 // Triggers LOW
// A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
//#define SOLENOID_PROBE
Далее переходим на вкладку Auto Build Marlin
Выбираем STM32F103RE_btt_(512K) и нажимаем Upload
Ждем, пока прошивка будет готова.
Жмём firmware.bin , откроется окно с файлом. Скопируйте firmware.bin в корень карты памяти, вставьте карту в выключенный принтер, включите и ждите завершения установки.
После этого всё работает
Следующие настройки я не использовал
В Configuration.h
#define Z_PROBE_OFFSET_RANGE_MIN -3 //-20 Предел для установки Z Offset в мм.
#define Z_PROBE_OFFSET_RANGE_MAX 3 //20 Эти параметры означают, что при замере датчиком срабатывание будет ожидаться в диапазоне от 3 до -3 мм. Если датчик сработает раньше или позже это будет расцениваться как ошибка.
//#define MULTIPLE_PROBING 2 щуп будет брать две пробы, одну быструю вторую медленную
//#define EXTRA_PROBING 1 щуп буде производить пробы 3 раза и выпадающее значение отбрасывать
//#define PROBING_HEATERS_OFF будет отключаться преднагрев стола и сопла во время измерений
//#define PREHEAT_BEFORE_PROBING преднагрев сопла и стола во время измерений
#if ENABLED(PREHEAT_BEFORE_PROBING)
#define PROBING_NOZZLE_TEMP 120 // (°C) Only applies to E0 at this time
#define PROBING_BED_TEMP 50
#endif
выбор желаемой температуры преднагрева
Дополнительные настройки
Калибровка
Я не нашел можно ли в Marlin на экран принтера вывести результат Bed Leveling.
Я ипользовал Printrun https://www.pronterface.com/ и этот сайт https://i.chillrain.com/index.php/3d-printer-auto-bed-leveling-mesh-visualizer/ где можно визуализировать результаты Bed Leveling
В Printrun отсылаем команду G28 - Auto Home, затем G29 - Bed Leveling и ждём, результат скопировать из Printrun и вставить на сайте, посмотреть результат, подкрутить винты стола. Повторять до достижения максимально хорошего результата.
Настройка Z offset.
Нужно выяснить насколько щуп датчика ниже сопла принтера
(картинка из интернета для примера)
Всё делается из меню принтера:
1. Auto Home, датчик остановится в центре стола
2. Перемещаем сопло в центр стола, расстояния у вас есть ( у меня получило сместить ось Y на 38.5 мм, по оси X у меня щуп и сопло перпендикулярны )
3. Пункт Конфигурация => Смещение Z
Подкладываем под сопло бумагу, и поворотом энкодера опускаем сопло пока оно не прижмет бумагу
У меня получилось -00.600
4. Пункт Конфигурация => Сохранить настройки
Для более точной настройки используем шаблон в 1 слой, круг или квадрат стороной 20-30 мм по центру стола.
Повторять до нужного результата.
(картинка из интернета для примера)
Потом используйте тест Bed Level Test для проверки калибровки.
На этом пока всё .
Уже приобрёл BTT PI V1.2, буду пробовать накатить Klipper, потом отпишусь.
Использовал статьи:
https://3dtoday.ru/questions/ne-zapuskaetsya-kalibrovka-pid-stola
https://youtu.be/doenKnVk0Ec?t=1139
https://3dtoday.ru/questions/kak-rusificirovat-marlin
https://reprap.org/forum/read.php?415,893513
https://www.reddit.com/r/BIGTREETECH/comments/169jbq0/biqu_microprobe_marlin_setup/
https://github.com/bigtreetech/MicroProbe/issues/8#issuecomment-1917897335
https://www.youtube.com/watch?v=VlIFgICFWbM
https://i.chillrain.com/index.php/3d-printer-auto-bed-leveling-mesh-visualizer/
Еще больше интересных статей
Замена нагревательного элемента на хотэнде QIDI Tech Q1 Pro
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Обновленный хотэнд QIDI Tech Q1 Pro
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Blue Pill & SSD1306, ну очень маленькие.., но 32 бит!
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Решил я тут попробовать перейти с 8 бит на 32.
Готовы...
Комментарии и вопросы
ИБП слишком просто
И тем не менее.Подобные фильтр...
Эх, вас бы ко мне в гости тогд...
Здравствуйте! Мне нужно сделат...
Всем 3д-печатника привет. Печа...
Я тут затупил, решил сопло вык...
Ищу оптимальную - лучшую настр...