Прокачка Kingroon KP3S с Titan+блинчик+TMC2209+3D-touch

yarikamikadze
Идет загрузка
Загрузка
04.08.2021
1795
1
Техничка

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

8

Сегодня я с вами поделюсь историей своего апгрейда принтера Kingroon KP3S.

Прокачка Kingroon KP3S с Titan+блинчик+TMC2209+3D-touch

Если вы здесь с серьезными намерениями, настоятельно рекомендую ознакомиться с аналогичной статьей товарища nehiLo (https://3dtoday.ru/blogs/nehilo/kingroon-kp3s-marlin-btt-tmc-2209-bltouch-uart-novaya-golova-dostoinyi-printer).

Краткая предыстория апгрейда

В момент покупки данного принтера я уже горел идеей его прокачки, но не представлял, что именно буду модернизировать. После сборки и тестовой печати на принтере сразу понял, что это не тот принтер, на котором можно печатать быстро и много. В основном это была вина тяжелой головы в сборе, вследствие чего при повышении скорости печати выше 30 мм/сек начинали появляться различные дефекты на миниатюрных элементах моделей. В скором времени наткнулся на статью товарища nehiLo про апгрейд принтера заменой драйверов шаговых двигателей, добавлением 3Dtouch’а, заменой экструдера и его шагового двигателя и перепрошивкой на Marlin. Прочитал, вдохновился, закупился, приготовился к тотальному апгрейду.

Часть 1. Предыстория каретки

После получения всех комплектующих столкнулся с тем, что нигде не нашел модели каретки под купленные комплектующие. Вздохнул, собрался и приступил к моделированию своей каретки. Моделировал, печатал, собирал, выписывал недостатки, перемоделировал, перепечатывал и т.д. В процессе экспериментировал с расположением комплектующих и обкатывал новые идеи.

На изображении ниже представлены 5 неудачных версий каретки.

Прокачка Kingroon KP3S с Titan+блинчик+TMC2209+3D-touchОт начала моделирования до получения успешной 6-й версии каретки ушло полтора месяца рабочих вечеров. Но оно того стоило.

Часть 2. Каретка

Список комплектующих, под которые создавалась каретка:1.     Шаговый двигатель 17HS4023 Nema 17 ака «Блинчик»2.    Фидер Titan3.    Хотенд E3Dv6 под директ, short distance4.    Кулера 4010 и 5015 (улитка)5.    3Dtouch (по желанию)

Для интересующихся в покупке все ссылки размещены в заметках телеграмм-группы https://t.me/kingroonkp3_chat в разделе «Список запчастей и комплектующих».

Каретка состоит из 3-х или 4-х частей, которые соединяются между собой винтами М3 от штатной каретки:1.    База2.    Воздуховод3.    Натяжитель4.    Лапка для концевика (UART-либералам не нужна)

Скачать модели можно тут: https://www.thingiverse.com/thing:4907706.

Печатайте PETG или ABS, воздуховод возле хотенда немного подплавится и придется его немного подточить (как это сделал я). Угол поддержек – 72 градуса (чтобы их не было внутри, ну и чтобы лишние столбы не создавались).

Часть 3. Электроника

Эта часть для тех, кто решил также, как и я, обновить драйверы шаговых двигателей на TMC 2209 и попробовать этот загадочный UART с приправой безконцевичной парковки, а также для тех, кто решил просто попробовать 3Dtouch. Лезем под капот.

Вытаскиваем заменяемые драйверы и все перемычки под ними, отсоединяем концевые выключатели X и Y. Если вы не решились на 3Dtouch, то оставляете концевик Z на месте. Если же решились на этот новый опыт, как и я, то и Z-концевик также извлекаете. Прокачка Kingroon KP3S с Titan+блинчик+TMC2209+3D-touch

Прокачка Kingroon KP3S с Titan+блинчик+TMC2209+3D-touchСледующим этапом вставляете новые драйвера, сторона top смотрит в сторону концевиков.

Схема соединения проводов отлично изображена и объяснена в статье товарища nehiLo (https://3dtoday.ru/blogs/nehilo/kingroon-kp3s-marlin-btt-tmc-2209-bltouch-uart-novaya-golova-dostoinyi-printer).

Результат изображен на рисунке ниже: Прокачка Kingroon KP3S с Titan+блинчик+TMC2209+3D-touchДля соединения используйте что хотите, лишь бы это держалось и было изолировано.

Важный момент. На шлейфе «блинчика» необходимо поменять местами центральные контакты. Сделать это можно на разъеме в плату, либо на разъеме в двигатель. Причина схематично обозначена на рисунке ниже:

Прокачка Kingroon KP3S с Titan+блинчик+TMC2209+3D-touch

Часть 4. Прошивка Marlin

Исходники русских прошивок так и не нашел, а готовые варианты не подошли. Все что достал – это английский исходник по ссылке в статье товарища ericssonn’а (https://3dmdb.com/en/3d-model/kp3s-sensorless-homing-guide-tmc22092226-uart-by-ericssonn/8068013), за что ему огромный респект.

Изучил, отредактировал, испытал. Ссылка на мою прошивку с UART и 3Dtouch’ем: https://drive.google.com/file/d/1X7vh0NC1vruV6YXBkPAxQ2tTqQlizN_I/view?usp=sharing

Исходники моей прошивки, если вдруг надо изменить по-мелочи:https://drive.google.com/drive/folders/1uqnZlfv_1nfzTHYlWk18afZHXdK0Y2OF?usp=sharing

Скачиваем прошивку Robin_nano.bin, закидываем этот файл на флешку, вставляем в принтер и просто включаем его. Мелочные детали по обновлению прошивки можно найти в ютубе.

Часть 5. Калибровка Sensorless homing (TMC2209)

На этом этапе очень долго тупил, так как не было адекватного объяснения поведения моего принтера. Принцип Sensorless homing заключается в парковке каретки домой по осям X и Y по сигналам не от концевых выключателей, а по сигналу изменения нагрузки на шаговом двигателе. Очень упрощенно это выглядит так:1.    Каретка упирается в препятствие2.    Шаговый двигатель не может провернуть ремень в том же направлении3.    На обмотке возбуждения увеличивается ток4.    Это повышение регистрируется драйвером шагового двигателя5.    Драйвер посылает сигнал на плату о достижении нулевой координаты

Важный параметр этой операции – чувствительность драйверов. По сути (как это понял я) чувствительность – это та величина тока на обмотке возбуждения двигателя, при достижении которой драйвер шлет сигнал. Настраивается чувствительность в Settings – Configuration – Advanced Settings – TMC Drivers – Sensorless homing. Научного способа не знаю, описываю как делал сам, опуская ошибки:1.    Выставил по оси X чувствительность 1502.    Выхожу в Settings, затем Motion – Home X3.    Если каретка дернулась и замерла на месте, значит рабочий ток на обмотке больше измеряемого порога, значит надо чувствительность уменьшать. Я шел по 10, затем на 80 у меня каретка начала движение в сторону нуля. После чего подбирал по единичке чтобы нащупать предел. У меня предел чувствительности составил 87.4.    Отодвигаете голову на некоторое расстояние5.    На максимальной рабочей чувствительности берете палец, ставите его на рельсу возле упора оси X, снова запускаете парковку по оси Х  и по ощущениям определяете, насколько сильно каретка прижала палец. Если слабенько, немного уменьшаете чувствительность и повторяете. Меня устроил результат на 85. Это нужно для того, чтобы исключить ложное срабатывание при минимальной нагрузке двигателя от, например, небольшого застревания головы на направляющей или натяжения нити филамента с противоположной стороны.6.    То же самое проделываете с осью Y. Меня устроил тот же результат, что и на оси X.Если вы установили 3Dtouch, не выполнив калибровки не запускайте Auto home. Если голова и стол физически не окажется в нулях при парковке по X и Y, то после отработки парковки по этим самым осям голова очень быстро двинется на половину рабочего хода по X и Y (так сказать на теоретическую середину стола) для определения нуля по оси Z при помощи щупа. Если голова и стол окажутся где-то посередине, например, то они с бешеной скоростью выйдут на упоры и начнет с ужасным звуком проскальзывать ремень на шаговике. Страшно, неприятно, раздражает.

Часть 6. Проверка рабочей зоны для «ощупывания» стола

Чтобы определить, подходят ли вам мои параметры, зашитые в мою прошивку, по части ощупывания стола, зайдите в Settings – Motion – Bed leveling – Level corners. Запустится процесс парковки по всем осям, после чего голова переместится в левый ближний угол. Определите не упирается ли щуп или хотенд в ваши прищепки ультрабазы или в другие объекты. Если что-то мешает, то легче эти, например, прищепки переместить, или же придется редактировать параметры внутри прошивки. Если ситуация безвыходная и придется перепрошивать, то измерьте линейкой насколько вам было бы удобно переместить щуп или хотенд в миллиметрах вправо и от себя, т.к. влево и на себя сдвигать не  рекомендую по очевидным причинам.

После замера, или если вас устроила позиция нажимаете на зеленую галочку Next point и повторяете процедуру измерения или определения для этого угла. Повторить процедуру для всех четырех углов.

Имейте ввиду, измерительная зона, которая была определена углами выше, будет представлять из себя матрицу 4х4, в углах которой будет происходить ощупывание. То есть расстояние между углами делите на 3 равные части и прикидывайте, что на концы этих отрезков будет приземляться щуп. Если зона вас не устраивает, то вам в следующую часть.

Часть 7. Доработка прошивки

Параметры, которые я зашил в свою прошивку подошли исключительно для меня. Я предполагаю, что существует 2 момента, ради которых имеет смысл немного подогнать прошивку под себя:1.    Вы не планируете переходить на 3Dtouch, но поменяли драйвера шаговых двигателей2.    Вас не устроила зона ощупывания или ее границы.

Здесь поясню, как изменить зону. Как убрать из прошивки использование 3Dtouch догадываюсь, но лучше, если вы сами об этом разузнаете.

Для редактирования прошивки скачиваете программу Visual Studio Code, а внутри нее скачиваете расширения PlatfotmIO и Auto Build Marlin.

Для изменения зоны заходите в Visual Studio Code – файл – открыть папку – выбираете папку со скачанным исходником прошивки. 1.    Выбираете файл Marlin – Configuration.h2.    Ищите в нем строчку, выделенную на скриншоте ниже3.    Меняете необходимые отступы внутри скобок. {Слева, Спереди, Справа, Сзади}4.    Переключаетесь в дополнение Auto Build Marlin – Show ABM Panel – Build5.    По окончании процесса копируете файл из Прошивка KP3S - .pio – build - mks_robin_nano35 – robin_nano35.bin на флешку и переименовываете в robin_nano.bin6.    Вставляете, прошиваете, проверяете по части 5 указанные вами границы.

Часть 8. Стартовый и заключительный G-код в CURA

После модернизации принтера с 3Dtouch’ем нужно еще изменить стартовый G-код. Откопал в интернете чей-то рабочий образец, разобрался, немного подредактировал и выкладываю. Совет – разберитесь сами кто что значит в этом коде, придумайте свои доработки и обкатайте эти идеи. Знания лишними не бывают.

Стартовый G-код:

M140 S{material_bed_temperature_layer_0} ; Set Heat Bed temperatureM190 S{material_bed_temperature_layer_0} ; Wait for Heat Bed temperatureM104 S{material_print_temperature_layer_0}; start warming extruder G28 ; Home all axesG29 ; Auto bed-level (BL-Touch)G92 E0 ; Reset ExtruderG1 X8 Y10 Z0.2 F5000.0 ; Move to start positionM109 S{material_print_temperature_layer_0} ; Wait for Extruder temperature; G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat BedG1 X8 Y175 Z0.2 F1500.0 E15 ; Draw the first lineG1 X8.3 Y175 Z0.2 F5000.0 ; Move to side a littleG1 X8.3 Y10 Z0.2 F1500.0 E30 ; Draw the second lineG92 E0 ; Reset ExtruderG1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed

Завершающий G-код:

M104 S0M140 S0;Retract the filamentG92 E1G1 E-1 F300G28 XG1 Y175 F1500M84

Часть 9. Заключение

В рамках данной статьи я не стал подробно описывать все свои манипуляции в плате, проводах и прошивке, так как считаю это бессмысленным чтивом. Данный материал можно считать прожиточным минимумом для конкретно такой прокачки принтера, все остальные улучшения и изменения как в электронной, так и в программной части принтера выполняйте по своему усмотрению и на свой страх и риск. Лично я получил от модернизации определенный объем знаний как в матчасти принтера, так и в знании английского и теперь не так брезгую этим языком в прошивке.

Если вы обнаружили ошибку/недочет/глупость в статье/рисунках/прошивке, приглашаю вас поделиться своим замечанием в комментариях. Это позволит и мне исправить ее, и многим другим новичкам/любителям/профи не ошибиться в том или ином месте и получше изучить матчасть.

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

8
Комментарии к статье