Металл2024 Реклама
Метобр2024 Реклама

Китайский клон Bltouch , хождение по граблям

test3210
Идет загрузка
Загрузка
01.09.2018
4072
10
Техничка

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

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

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

6
Статья относится к принтерам:
P3 Steel 200
Началось все у меня с того что но моем рабочем принтере драйвера ТМС2100 стали пропускать шаги, решил проверить ток, в итоге ардуина в мусор и драйвера туда-же. Печали добавило то что на тот момент я имел работу для принтера и не имел времени. Пока жаба отвернулась быстренько купил себе другой принтер. Вообще все началось у меня с деревянного пруса анет подобного принтера, потом была стальная пруса собранная от начала до конца самостоятельно, любовно допиленная надфилем и заполированная тряпочкой :)

В результате у меня появился Goldberg XY Этот принтер был на боудене что меня несколько напрягло, так как печать у меня в основном инженерных деталей, важна точность, но как потом оказалось печатает боуден сравнительно неплохо после настройки, хотя и дольше чем директ но это тема другого поста. По факту на принтере стоял китайский тач который абсолютно нормально работал.

У меня на прусе тоже стоял автоуровень, но самодельный на оптическом датчике, только что и надо его было перед печатью взводить и все. Кроме того валялся без дела в свое время купленный 3d touch. Короче говоря как только у меня появилось немного времени я занялся реанимацией и модернизаций прусы.

Решено было сменить экструдер на титан, в каретке титана уже было место под блтач и я решил что датчику быть, лень взводить перед печатью

Так как основные настройки автоуровня у меня были проведены товсе что я сделал это подключил на место оптики (у меня это Z+ )выход блтача, и сам датчик подключил на Х+ так как такое подключение мне было удобнее. В файле pin_ramps поменял местами выходы серво и Х+ , датчик задвигался и я пошел работать.

Как оказалось я сам положил перед собой грабли и начал по ним ходить кругами. Вина была моя из за незнания тонкостей работы датчика. Нет, датчик работал, проходил стол и мерял, вот только точность, при выполнении M48 X100 Y100 P10 на 10

измерениях я имел разницу в показаниях в 0,2-0,3 мм. Это никуда не годилось. я решил что дело в винтике и давай его крутить, не помогло. Разобрал датчик подогнул датчик холла, стало лучше, 0.15-0.2 мм, но все равно никуда не годится. Разбирался я дня 4.

Первое что я сделал не так как оказалось это я взял свои болтики М3 вместо тех которые были даны китайцами. Будь использован в качестве датчика оптический сенсор это не играло бы роли, но тут датчик холла, реагирующий на магнитное поле, и магнитный болтик вносил искажения. Установка болтиков м2,5 из нержавейки (немагнитные) которые лежали в пакете существенно улучшили ситуацию. Результаты теста 0,05-0,125. Уже можно работать

Но обещают лучше ...

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

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

Итак что я правил

первое в файле marlin_main.cpp ищем

// Do a first probe at the fast speed

и меняем в следующей строке

if (do_probe_move(z_probe_low_point, MMM_TO_MMS(Z_PROBE_SPEED_FAST)))

на

if (do_probe_move(z_probe_low_point, MMM_TO_MMS(Z_PROBE_SPEED_SLOW)))

при этом скорость опускания первого измерения будет ниже, как при мультипробе , и если не использовать мультипробу то мы сразу меряем точно.

Далее в конфиге у нас получается скорость опускания это Z_PROBE_SPEED_SLOW а поднятия Z_PROBE_SPEED_FAST, и каждая настраивается отдельно, что я и хотел

По прошивке

перенастройка пинов в pin_ramps.h

меняем

#define SERVO0_PIN 15 //пин У+ раньше был пин 11

#define Y_MAX_PIN 11 // раньше это была серва пин15

если хотим оставить эндстоп по z и просто добавить автоуровень то

замечаем #define Z_MAX_PIN 19

ищем

//#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN

добавляем после

#define Z_MIN_PROBE_PIN 19 //z_max

#define Z_MIN_PROBE_ENDSTOP

и комментируем

//#define Z_MIN_PROBE_ENDSTOP

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

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

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

6
Комментарии к статье
Кремень КБ Реклама
Кремень КМ Реклама