Экспериментальный датчик уровня печатной платформы 3D принтера

levscha
Идет загрузка
Загрузка
01.06.2022
7027
102
Техничка

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

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

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

51

Добрый вечер!

В последнее время я уделил много внимания разработке своего варианта датчика автоуровня. Поставил себе задачу- создать универсальное решение для всех типов покрытий печатного стола. Ключевое требование к новому устройству я сформулировал так: включай и работай (Plug and Play).

Существенное отличие от популярного датчика автоуровня BLTouch корейских разработчиков (ссылка) заключается в отсутствии необходимости ручной калибровки после смены сопла или ремонта хотэнда. Алгоритм работы разработанного датчика при калибровке платформы будет состоять из двух этапов:

1. Определение уровня сопла;

2. Замер всех точек калибровки на платформе печати. Замер производится дистанционно без контакта между соплом и поверхностью.

Все измерения осуществляется по штоку- зонду. Длина выдвижения штока составляет 15 мм и по всей длине выдвижения он может осуществлять замеры с разрешающей способностью в 1 мкм. На первом этапе определение уровня сопла осуществляется по моменту остановки штока при достижении кончика сопла поверхности стола (сопло останавливает стол). Настраиваемый параметр срабатывания датчика на этом этапе– прогнозируемое перемещение стола в отсутствии сопла - тоесть если шток остановился и разность между точкой остановки штока и точкой где он бы двигался без остановки стала больше чем уставка, то датчик срабатывает; установить этот параметр можно в диапазоне (20мкм- 1мм).

Второй этап алгоритма заключается в следующем: датчик на штоке делает «метку», определяющую положение сопла, далее прибавляя целое число к полученному значению, (допустим 3 мм) щуп начинает срабатывать на новую отметку, тем самым, осуществляется дистанционное зондирование поверхности стола, без соприкосновения с соплом. При этом, в прошивке принтера, после замера точек, вся сетка смещается на эту величину дистанционного зондирования (3мм).Экспериментальный датчик уровня печатной платформы 3D принтераИспытания

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

Первый тест определяет уровень сопла.  Уставка на разность смещений сопла и штока- 50мкм.Результаты теста представлены на скриншоте.  Полученная повторяемость срабатываний в определении уровня сопла составила 7мкм.

Экспериментальный датчик уровня печатной платформы 3D принтераВторой тест- срабатывание датчика на условную величину отметку штока, без соприкасания сопла и поверхности стола.

Результаты теста представлены на скриншоте.  Полученная повторяемость срабатываний в определении уровня сопла составила 4мкм.

Экспериментальный датчик уровня печатной платформы 3D принтераВ ходе тестирования, мне стало интересно, насколько верно определяется уровень сопла по тесту 1?  С целью выяснения этого, я подключил выход датчика вместо эндстопа оси Z, подредактировал G-код, прибавив к величине высоты первого слоя то смещение, которое стоит в датчике (уставка 50мкм), т.е., вместо 0.2мм, вписал 0.25мм. Разместил модель в точке, ближайшей к хоуминг-позиции, и запустил печать.

Результат печати представлен на фото. В целом результатом я остался доволен. Правый нижний угол у модели тонковат, это следствие неправильно выставленного горизонта платформы. Кроме того, видно, что там где был замер высоты сопла, высота слоя не соответствует 0.2 мм, слой получился тоньше желаемого. Очевидно, в будущем потребуется корректировка через Z-offset, но предположительно, такое смещение нужно будет выставить один раз и на разных принтерах оно будет завесить от жёсткости стола и крепления датчика, люфтов и т.д.

Экспериментальный датчик уровня печатной платформы 3D принтераКонструкция

Датчик состоит из подъемного механизма и измерительного узла. Для надежности датчика в подъемном механизме применил микро шаговый двигатель, управляемый микросхемой драйвером A4988. Применение шагового двигателя с контролируемым током обуславливает долговечность разработанной конструкции. Винт поднимающий шток, установлен на двух подшипниках. Стальной шток зонд диаметром 3 мм, перемещается в пористых бронзовых маслонаполненных подшипниках. В серийной модели предполагаю применить полимерные подшипники IGUS, однако их применение может наложить ограничение на рабочую температуру устройства, в связи с этим, предполагается две версии- стандартная до 70-80 градусов и высокотемпературная.

Габариты разработанного датчика составляют 40х40х12 мм3. Датчик выполнен в форм-факторе вентилятора, что весьма для удобно для установки на печатающую голову принтера. Габариты серийного датчика предположительно составят 40х40х10 мм3, что полностью повторяет размеры стандартного вентилятора. Экспериментальный датчик уровня печатной платформы 3D принтераПрименение.

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

Уставка на определение уровня сопла по первому этапу алгоритма (20мкм- 1мм), будет в доступе у пользователей. Увеличивая ее, можно настроить раздавливание пластика вытекающим из сопла об стол, а, так как эта уставка не что иное, как длина (в отличие от тензо- автоуровней, где уставка масса) то в независимости от его значения датчик ее учтет в итоговом зондировании платформы.

Для термокамеры со шторками, шток также удобен, так как его можно сделать любой длины и спокойно вывести сам датчик из зоны нагрева камеры (возможно, потребуется дополнительная опора в виде линейного подшипника).

Развитие.

Алгоритм работы датчика в два этапа, будет реализован в моей прошивке и с моей платой (ссылка) и опробован в ближайшее время. Как это все внедрить в существующие Open Source, пока я не представляю…. Очевидно, на первом этапе можно попробовать использовать команды BLTouch и работать только по первому этапу алгоритма- зондировать всю поверхность стола соплом. При этом, можно сделать команды и для режима зондирования в два этапа. Вполне возможно, что в будущем поддержка таких команд будет реализовано в прошивках Open Source их авторами.

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

На основе разрабатываемого датчика, можно создать любой другой с максимальной длиной вылета штока 60 мм и с любым шаговым двигателем подъема на выбор.

Интересным направлением развития датчика будет интегрировать его части в радиатор хотэнда, именно для этого я опробовал пайку алюминия (ссылка), так как еще в то время предполагал, что радиатор будет не только охлаждать… а быть еще и корпусом для датчика автоуровня. Интегрировав все части датчика, можно выиграть в общих габаритах, весе и приблизить шток зонд максимально близко к соплу. Но это пока размышления, но теперь эту идею можно реализовывать.

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

Вообще все сложно сделано, но это работает.

Экспериментальный датчик уровня печатной платформы 3D принтера

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

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

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

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