Ультрафиолетовый 3D-принтер с покачиванием стола
3D-принтер для печати из смолы ультрафиолетового отверждения с покачиванием стола для лучшего перемешивания и ручным управлением подъемом стола
Деталь печатается из жидкой смолы, затвердевающей под воздействием ультрафиолета.
Для этого плоский стол погружается в жидкую смолу на глубину одного печатного слоя. После этого ультрафиолетовый проектор проецирует на стол черно-белое изображение нужного слоя. В месте падения света (соответствует белой области на монохромном изображении слоя) смола затвердевает. По окончании времени выдержки проектор выключается (переходит на отображение черного прямоугольника). После этого стол погружается в смолу глубже на толщину следующего слоя и включается изображение следующего слоя детали. Программное обеспечение CreationWorkshop отвечает за генерацию изображений слоев, доставку изображения на проектор и управление перемещением стола в процессе печати.
[!ВНИМАНИЕ] Во избежание повреждения глаз область печати должна быть закрыта или защищена тонированным стеклом, непроницаемым для ультрафиолета!
Из-за того, что толщина слоев достаточно мала, после погружения смола не всегда достигает всей поверхности детали. Из-за этого могут появиться поры или внутренние полости, что ухудшает прочность готового изделия. Чтобы этого избежать, используется функция «Покачивание стола» в перерывах между экспозициями: стол несколько раз покачивается, что позволяет более равномерно распределить смолу по всей поверхности печатной детали.
Механика принтера
Основной печатный стол погружен в емкость с жидкой смолой и установлен на ШВП, соединенных с шаговыми двигателями. Это позволяет поднимать и опускать стол с высокой точностью.
В верхнем и нижнем положениях стола установлены концевые выключатели, которые подают сигнал контроллеру о блокировке дальнейшего движения.
Над столом установлен ультрафиолетовый проектор с соответствующей оптикой, подключенный к управляющему ПК кабелем HDMI.
Основной контроллер подключается к этому же ПК через USB (с эмулируемым COM-портом), через который передаются G-команды для управления принтером.
Бак со смолой можно наклонять под небольшим углом с помощью шагового двигателя. В крайних положениях также установлены концевые выключатели для предотвращения раскачивания. Для управления принтером используется джойстик с фиксацией положений, который позволяет поднимать и опускать стол вручную.
В режиме печати любое движение джойстика останавливает текущее движение. В обычном режиме при нажатии и отпускании джойстика вниз начинается движение вниз до тех пор, пока не сработает нижний концевой выключатель. Если во время этого движения нажать и отпустить джойстик вверх, движение остановится. Если вы снова нажмете и отпустите джойстик вверх, начнется непрерывное движение вверх до тех пор, пока не сработает верхний концевой выключатель или джойстик не переместится и не опустится вниз.
Для управления столом также можно использовать элементы управления в программе Creation Workshop.
Настройки творческой мастерской
В приложении Creation Workshop загрузите профиль для работы с принтером (Configure->Configure Slicing Profile->Slicing Profile->mUVe.1.3) Задайте толщину слоя (Configure->Configure Slicing Profile->Settings->Slice Tickness (mm)->0,1)
Задаем общее время цикла, в течение которого будут совершаться все движения стола и плиты для одного слоя (Configure->Configure Slicing Profile->Lift and Sequence->Lift and Sequence time (ms)->8000) Это время не должно быть меньше, чем полный цикл движения рабочей плиты и поворотного стола, настроенного в прошивке. В противном случае экспозиция следующего слоя начнется раньше, чем стол и плита вернутся в рабочую точку!
При изменении настроек и перед печатью каждый раз открывайте 3D-модель и используйте команду «Срез» с mUVe.1.3
Последовательность печати
Предполагается, что в начале печати принтер установлен в нулевое положение. При желании вы можете сбросить настройки контроллера.
При запуске экспозиция первого кадра начинается в течение 1 секунды (измените Configure->Configure Slicing Profile->Settings- >Explosure time (ms)->1000). Затем проектор начинает показывать черную рамку. При использовании сервозатвора объектива он закрывается.
Сразу после окончания экспозиции качающийся стол начинает двигаться вниз со скоростью 10 мм/сек (переменная TiltDownSpeed=3200) Стол останавливается через 2 секунды, пройдя 20 мм ( переменная StepsToRaiseLowerVat=6400)
Через 1,2 секунды после окончания воздействия (переменная TimeForRaiseBuild=1200)
Подъем рабочей пластины начинается со скоростью 2 мм/сек (переменная LiftUpSpeed = 1600) Пластина останавливается через 2 секунды после прохождения 4 мм (переменная StepsToRaiseLowerBuildPlate = 3200) код>)
Через 3,4 секунды с момента окончания воздействия (переменная TimeForGoZeroPos=3400) начинается опускание рабочей плиты и подъем качающегося стола.
Стол опускается со скоростью 1 мм/сек (переменная LiftDownSpeed = 800) и останавливается через 4 секунды после прохождения 3,9 мм (4 мм минус толщина слоя).
Качалка поднимается со скоростью 5 мм/сек (переменная TiltUpSpeed = 1600) и останавливается через 4 секунды после прохождения 20 мм
Через 8 секунд (переменная Creation Workshop->Lift and Sequencetime=8000) цикл движений завершается, при использовании сервопривод объектива, затвор открывается. Начинается экспозиция следующего кадра.
По окончании печати или при срабатывании верхнего концевого выключателя печать прекращается и сервоклапан закрывается
При изменении скорости и расстояния необходимо убедиться, что все движения завершены до начала экспонирования следующего кадра, и соответствующим образом установить переменные времени подъема и последовательности. После его изменения или изменения толщины слоя перед печатью необходимо повторно использовать команду «Срез» с профилем mUVe.1.3
Основные параметры системы:
- Основной контроллер – Arduino Mega
- Процессор – 16 МГц, ATmega2560
- Память контроллера — 256 КБ + 8 КБ SRAM + 4 КБ EEPROM.
- Шаговые двигатели – Nema 17 0,4А
- Крутящий момент шагового двигателя – 26 Нсм.
- Питание – 12В 5А
- Шаг ШВП – 4 мм.
- Минимальная толщина печатного слоя – 0,00125 мм.
- Время экспозиции –2..8с (зависит от смолы, мощности проектора и толщины слоя
Прошивка принтера
На основе модифицированной прошивки Marvin для 3D-принтеров.
Распечатать переменные и их настройки по умолчанию для времени цикла подъема и последовательности (мс) = 8000
int PlatenStepsPerLayer = 80;
Действия по перемещению толщины слоя на одну толщину. Рассчитывается путем деления Толщины среза (мм) из настроек печати Creation Workshop на мм/шаг. Для слоя 0,05 мм винт с шагом 4 мм и 1/16 микрошага = 0,05/0,00125= 40 Для слоя 0,1 мм винт с шагом 4 мм и 1/16 микрошага = 0,1/0,00125=80
int StepsToRaiseLowerBuildPlate = 3200;
шаги подъема стола между экспозициями Для винта с шагом 4мм и 3200 шагов на оборот - 3200 соответствует подъему 4мм (~2 сек при 1600шаг/сек, ~4 сек при 800шаг/сек) р>
int StepsToRaiseLowerVat = 6400;
Шаги подъема/опускания качалки Для винта с шагом 10 мм и 3200 шагов на оборот – 6400 соответствует подъему на 20 мм (~2 сек при 3200шаг/сек, ~4 сек при 1600шаг/сек). )
int TimeForRaiseBuild=1200; — Время от начала цикла до начала подъема рабочей плиты
int TimeForGoZeroPos=3400; Время от начала цикла, с которого плита и стол начинают возвращаться в рабочее положение, до начала следующего цикла не должно работать раньше рабочей плиты поднимается в верхнее положение, а поворотный стол опускается в нижнее
int MotorSpeed = 3200; - Скорость движения в ручном режиме управления, шагов/с
int MotorAccel = 12000; - Ускорение движения в ручном режиме управления, шагов/с²
int LiftDownSpeed = 800; - Скорость опускания рабочей плиты, шаг/с;
int LiftDownAccel = 4000; - Ускорение при опускании рабочей плиты, шагов/сек²;
int LiftUpSpeed = 1600; - Скорость подъема рабочей плиты, шагов/с;
int LiftUpAccel = 12000; - Ускорение при подъеме рабочей плиты, шагов/с²;
int TiltDownSpeed = 3200; - Скорость опускания поворотного стола, шагов/сек;
int TiltDownAccel = 12000;- Ускорение при опускании качающегося стола, шагов/с²;
int TiltUpSpeed = 1600; - Скорость опускания поворотного стола, шагов/с;
int TiltUpAccel = 8000; - Ускорение при подъеме качающегося стола, шагов/с²;
bool LiftMotorReverse=false; — инвертирует направление движения двигателя рабочей пластины. По умолчанию вверх — по часовой стрелке, вниз — против часовой стрелки;
bool TiltMotorReverse=false; — инвертирует направление движения двигателя поворотного стола. false – вверх по часовой стрелке, вниз – против часовой стрелки. true – вниз по часовой стрелке, вверх – против часовой стрелки.
Набор G-кодов для управления принтером:
Z0– остановить движение рабочего стола;Z+/-50– непрерывное движение рабочего столаZ+/-10– один оборот двигателя рабочего стола (3200 шагов)Z+/-1– 1/200 оборота двигателя рабочего стола (16 шагов)X0– остановить движение стола SwingX+/-100– непрерывное перемещение стола SwingZ+/-10– Перемещение стола Swing в крайние положения (верхнее и нижнее)Z+/-1– 1/200 оборота двигателя поворотного стола (16 шагов)
Аппаратное обеспечение
- Ардуино Мега – 1 шт.
- Материнская плата 3D-принтера Ramps 1.4 – 1 шт.
- Шаговой двигатель – 3шт.
- Драйвер шагового двигателя A4988 – 2 шт.
- Концевой выключатель – 4шт.
- Блок питания 12В 5А – 1шт.
- УФ-проектор – 1шт.
Схема подключения

Возможные дальнейшие улучшения
- Добавление дополнительных элементов управления принтером (кнопки остановки, аналоговые контроллеры параметров и т. д.)
- Добавление сервозатвора для закрытия объектива проектора (уменьшает рассеянный свет).
- Печать без подключения к ПК (на основе набора фотографий и контрольных G-кодов, загруженных на внешний носитель)
Фотографии



Книги
Техника
Электроника
Программирование
Начинающему программисту
Веб-интерфейс
Графический интерфейс
Оконное приложение
Видео
Изображения
Аудио
Текст
HTML
Лог-файлы
Нейронные сети
Все теги
Вооружение
Ардуино
Проекты