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

Тому, что у нас сейчас есть возможность за разумные деньги купить или собрать собственный FDM 3D-принтер, мы обязаны движению RepRap. Не буду сейчас о его истории и идеологии - нам сейчас важно то, что именно в рамках RepRap сформировался определенный "джентльменский набор" железа и софта.

Чтобы не повторяться, скажу один раз: в рамках данного материала я рассматриваю только "обычные" FDM 3D принтеры, не уделяя внимания промышленным проприетарным монстрам, это совершенно отдельная вселенная со своими законами. Бытовые устройства с "собственными" железом и софтом тоже остануться за рамками этой статьи. Далее под "3D принтером" я понимаю полностью или частично открытое устройство, "уши" которого торчат из RepRap.

Часть первая - 8 бит хватит всем.

Поговорим про восьмибитные микроконтроллеры Atmel с архитектурой AVR, применительно к 3D-печати. Исторически сложилось так, что "мозг" большинства принтеров - это восьмибитный микроконтроллер от Atmel с архитектурой AVR, в частности, ATmega 2560. А в этом виноват другой монументальный проект^ его название - Arduino. Программная его составляющая в данном случае не интереса - Arduino-код более прост для понимания новичками (по сравнению с обычным C/С++), но работает медленно, а ресурсы жрет как бесплатные.

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

По факту, Arduino IDE используется как удобный в установке набор из компилятора и программатора, "языком" Arduino в прошивках и не пахнет.

Но я немного отвлекся. Задача микроконтроллера - выдавать управляющие воздействия (осуществлять так называемый "ногодрыг") в соответствии с получаемыми инструкциями и показаниями датчиков. Очень важный момент: данные маломощные микроконтроллеры обладают всеми типичными чертами компьютера - в маленьком чипе есть процессор, оперативная память, постоянная память (FLASH и EEPROM). Но если ПК работает под управлением операционной системы (и она уже "разруливает" взаимодействие железа и многочисленных программ), то на "меге" у нас крутится ровно одна программа, работающая с железом напрямую. Это принципиально.

Часто можно услышать вопрос, почему не делают контроллеры 3D-принтеров на основе микрокомпьютера вроде того же Raspberry Pi. Казалось бы, вычислительной мощности вагон, можно сразу сделать и веб-интерфейс, и кучу удобных плюшек… Но! Тут мы вторгаемся в страшную область систем реального времени.

Википедия дает следующее определение: "Система, которая должна реагировать на события во внешней по отношению к системе среде или воздействовать на среду в рамках требуемых временных ограничений". Если совсем на пальцах: когда программа работает "на железе" непосредственно, программист полностью контролирует процесс и может быть уверен, что заложенные действия произойдут в нужной последовательности, и что на десятом повторении между ними не вклинится какое-то другое. А когда мы имеем дело с операционной системой, то она решает, когда исполнять пользовательскую программу, а когда отвлечься на работу с сетевым адаптером или экраном. Повлиять на работу ОС, конечно, можно. Но предсказуемую работу с требуемой точностью можно получить не в Windows, и не в Debian Linux (на вариациях которой в основном работают микро-пк), а в так называемой ОСРВ (операционная система реального времени, RTOS), изначально разработанной (или доработанной) для данных задач. Применение RTOS в RepRap на сегодняшний день - жуткая экзотика. А вот если заглянуть к разработчикам станков с ЧПУ, там уже нормальное явление.

Для примера - плата не на AVR, а на 32-битном NXP LPC1768. Smoothieboard называется. Мощи - уйма, функций - тоже.

А дело все в том, что на данном этапе развития RepRap, "8 бит хватит всем". Да, 8 бит, 16 МГц, 256 килобайт флеш-памяти и 8 килобайт оперативной. Если не всем, то очень многим. А тем, кому недостаточно (это бывает, например, при работе с микрошагом 1/32 и с графическим дисплеем, а также с дельта-принтерами, у которых относительно сложная математика расчета перемещений), в качестве решения предлагаются более продвинутые микроконтроллеры. Другая архитектура, больше памяти, больше вычислительной мощности. И софт все равно в основном работает "на железе", хотя, некоторые заигрывания с RTOS маячат на горизонте.

Marlin и Mega: частота сигнала STEP

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

Для проверки этого продположения я построил "тестовый стенд", подключил логический анализатор, и стал экспериментировать. "Стенд" представляет собой классический бутерброд "Mega+RAMPS" с переделанным пятивольтовым питанием, установлен один драйвер DRV8825 (1/32). Двигатель и ток упоминать смысла нет - результаты полностью идентичны при "полном" подключении, при наличии драйвера и отсутствии двигателя, при отсутствии и драйвера и двигателя.

Анализатор - китайский клон Saleae Logic, подключен к пину STEP драйвера. Прошивка Marlin 1.0.2 настроена следующим образом: максимальная скорость 1000 мм/с на ось, CoreXY, 160 шагов на мм (это для двигателя с шагом 1.8", 20-зубого шкива, ремня GT2 и дробления 1/32).

Методика эксперимента

Задаем маленькое ускорение (100 мм/с) и запускаем перемещение по оси X на 1000 мм с различными целевыми скоростями. Например, G-код G1 X1000 F20000. 20000 - это скорость в мм/мин, 333.3(3) мм/с. И смотрим, что у нас с импульсами STEP.

Общие результаты


То есть, отталкиваясь от частоты прерываний в 10 КГц, мы получаем эффективную частоту до 40 КГц. Применив к этому немножко арифметики, получаем вот что:

до 62.5 мм/с - один шаг на прерывание;
до 125 мм/с - два шага на прерывание;
до 250 мм/с - четыре шага на прерывание.

Это теория. А что на практике? А если задать больше 250 мм/с? Ну, хорошо, даю G1 X1000 F20000 (333.3(3) мм/с) и анализирую полученное. Измеренная частота импульсов при этом составляет почти 40 КГц (250 мм/с). Логично.

На скорости выше 10000 мм/мин (166,6(6) мм/с) я стабильно получаю провалы в тактировании. На обоих движках синхронно (напомню, CoreXY). Длятся они 33 мс, находятся примерно за 0.1 с до начала снижения скорости. Иногда такой же провал есть в начале движения - через 0.1 после завершения набора скорости. Вообще, есть подозрение, что он устойчиво пропадает на скорости до 125 мм/с - то есть, когда не применяются 4 шага на прерывание, но это только подозрение.

Как интерпретировать этот результат - я не знаю. С какими-то внешними воздействиями она не коррелирует - с общением по последовательному порту не совпадает, прошивка собрана без поддержки всяких дисплеев и SD-карт.

Мысли

1. Если не пытаться что-то нашаманить с Marlin, потолок скорости (1.8", 1/32, 20 зубов, GT2) - 250 мм/с.
2. На скоростях выше 125 мм/с (гипотетически) есть глюк с провалом тактирования. Где и как он будет проявляться в реальной работе - я предсказать не могу.
3. В более сложных условиях (когда процессор что-то усиленно считает) точно будет не лучше, а скорее - хуже. Насколько - вопрос для куда более монументального исследования, ведь придется сопоставлять запланированные программой перемещения с реально выданными (и захваченными) импульсами - на это у меня пороху не хватит.

Часть 2. Шаговый квартет.

Во второй части речь пойдет о том, как описанный ранее микроконтроллер управляет шаговыми двигателями.


Move it!

В «прямоугольных» принтерах нужно обеспечить перемещение по трем осям. Допустим, двигать печатающую головку по X и Z, а стол с моделью - по Y. Это, например, привычный, любимый китайскими продавцами и нашими покупателями Prusa i3. Или Mendel. Можно двигать голову только по X, а стол - по Y и Z. Это, например, Felix. Я практически сразу как вляпался в 3D-печать (с МС5, у которого XY-стол и Z-голова), так стал поклонником перемещения головы по X и Y, а стола - по Z. Это кинематика Ultimaker, H-Bot, CoreXY.

Короче, вариантов много. Давайте для простоты считать, что у нас три мотора, каждый из которых отвечает за движение чего-нибудь по одной из осей в пространстве, согласно декартовой системе координат. У «прюши» за вертикальное перемещение отвечают два двигателя, суть явления это не меняет. Итак, три мотора. Почему в заголовке квартет? Потому что надо еще пластик подавать.

В ногу

Традиционно используются шаговые двигатели. Их фишка - хитрая конструкция обмоток статора, в роторе используется постоянный магнит (то есть, контактов, касающихся ротора нет - ничего не стирается и не искрит). Шаговый двигатель, согласно своему названию, двигается дискретно. Наиболее распространенный в рамках RepRap образчик имеет типоразмер NEMA17 (по сути, регламентируется посадочное место - четыре крепежных отверстия и выступ с валом, плюс два габарита, длина может варьироваться), оснащен двумя обмотками (4 провода), а полный оборот его состоит из 200 шагов (1.8 градуса на шаг).

В простейшем случае, вращение шагового двигателя осуществляется путем последовательной активации обмоток. Под активацией понимается приложение к обмотке напряжения питания прямой или обратной полярности. При этом схема управления (драйвер) должна не только уметь коммутировать «плюс» и «минус», но и ограничивать потребляемый обмотками ток. Режим с коммутацией полного тока называется полношаговым, и у него есть весомый недостаток - на низких скоростях двигатель жутко дергается, на чуть более высоких - начинает греметь. В общем, ничего хорошего. Для увеличения плавности движения (точность не увеличивается, дискретность полных шагов никуда не пропадает!) применяется микрошаговый режим управления. Он заключается в том, что ограничение тока, подаваемого на обмотки, изменяется по синусоиде. То есть, на один реальный шаг приходится некоторое количество промежуточных состояний - микрошагов.

Для реализации микрошагового управления двигателями применяются специализированные микросхемы. В рамках RepRap их две - A4988 и DRV8825 (модули на основе этих микросхем обычно называются так же). Плюс, осторожно сюда начинают проникать хитроумные TMC2100. Драйверы шаговых двигателей традиционно выполняются в виде модулей с ножками, но бывают и напаяны на плату. Второй вариант с первого взгляда менее удобен (нет возможности изменить тип драйвера, да и при выходе оного из строя возникает внезапный геморрой), но плюсы тоже имеются - на продвинутых платах обычно реализуется программное управление током двигателей, а на многослойных платах с нормальной разводкой запаянные драйверы охлаждаются через «пузо» чипа на теплоотводный слой платы.

Но, опять же, говоря о самом распространенном варианте - микросхема драйвера на собственной печатной плате с ножками. На входе у нее три сигнала - STEP, DIR, ENABLE. Еще три вывода отвечают за конфигурацию микрошага. На них мы подаем или не подаем логическую единицу, устанавливая или снимая джамперы (перемычки). Логика микрошага прячется внутри чипа, нам туда влезать не надо. Можно запомнить только одно - ENABLE разрешает работу драйвера, DIR определяет направление вращения, а импульс, поданный на STEP, говорит драйверу о том, что необходимо сделать один микрошаг (в соответствии с заданной джамперами конфигурацией).

Основное отличие DRV8825 от A4988 - поддержка дробления шага 1/32. Есть другие тонкости, но для начала достаточно этого. Да, модули с этими чипами вставляются в колодки управляющей платы по-разному. Ну, так получилось с точки зрения оптимальной разводки плат модулей. А неопытные пользователи жгут.

В общем случае, чем выше значение дробления, тем плавнее и тише работают двигатели. Но при этом увеличивается нагрузка на «ногодрыг» - ведь выдавать STEP приходится чаще. О проблемах при работе на 1/16 лично мне не известно, а вот когда возникает желание полностью перейти на 1/32, уже может возникнуть нехватка производительности «меги». Особняком тут стоят TMC2100. Это драйверы, которые принимают сигнал STEP с частотой как для 1/16, а сами «додумывают» до 1/256. В результате имеем плавную бесшумную работу, но не без недостатков. Во-первых, модули на TMC2100 стоят дорого. Во-вторых, лично у меня (на самодельном CoreXY под названием Kubocore) с этими драйверами наблюдаются проблемы в виде пропуска шагов (соответственно, сбой позиционирования) при ускорениях выше 2000 - с DRV8825 такого нет.

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

Спотыкач

В RepRap не предусмотрено обратной связи по положению. То есть, программа управляющего контроллера не знает, где в данный момент находятся подвижные части принтера. Странно, конечно. Но при прямой механике и нормальных настройках это работает. Принтер перед началом печати перемещает все, что можно, в начальную позицию, и от нее уже отталкивается во всех передвижениях. Так вот, противное явление пропуска шагов. Контроллер выдает драйверу импульсы, драйвер пытается провернуть ротор. Но при чрезмерной нагрузке (или недостаточном токе) происходит "отскок" - ротор начинает поворачиваться, а потом возвращается в исходное положение. Если это происходит на оси X или Y, мы получаем сдвиг слоя. На оси Z - принтер начинает "вмазывать" следующий слой в предыдущий, тоже ничего хорошего. Нередко пропуск происходит на экструдере (из-за забива сопла, чрезмерной подачи, недостаточной температуры, слишком малого расстояния до стола при начале печати), тогда мы имеем частично или полностью непропечатанные слои.

С тем, как проявляется пропуск шагов, все относительно понятно. Почему это происходит? Вот основные причины:

1. Слишком большая нагрузка. Например, перетянутый ремень. Или перекошенные направляющие. Или "убитые" подшипники.

2. Инерция. Чтобы быстро разогнать или затормозить тяжелый объект, нужно затратить больше усилий, чем при плавном изменении скорости. Поэтому сочетание больших ускорений с тяжелой кареткой (или столом) вполне может вызвать пропуск шагов при резком старте.

3. Неправильная настройка тока драйвера.

Последний пункт - вообще тема для отдельной статьи. Если вкратце - у каждого шагового двигателя есть такой параметр, как номинальный ток. Он для распространенных моторов находится в диапазоне 1.2 - 1.8 А. Так вот, при таком ограничении тока у вас должно все хорошо работать. Если нет - значит, двигатели перегружены. Если нет пропуска шагов с более низким ограничением - вообще прекрасно. При снижении тока относительно номинала уменьшается нагрев драйверов (а они могут перегреваться) и двигателей (больше 80 градусов не рекомендуется), плюс, снижается громкость "песни" шаговиков.

Часть 3. Горячка.

В первой части цикла я рассказывал о маленьких слабеньких 8-битных микроконтроллерах Atmel архитектуры AVR, конкретно - о Mega 2560, которая "рулит" большинством любительских 3D-принтеров. Вторая часть посвящена управлению шаговыми двигателями. Теперь - о нагревательных приборах.

Суть FDM (fused deposition modeling, торговая марка Stratasys, всем обычно до лампочки, но острожные люди придумали FFF - fused filament fabrication) в послойном наплавлении филамента. Наплавление происходит следующим образом: филамент должен расплавиться в определенной зоне хотэнда, и расплав, подталкиваемый твердой частью прутка, выдавливается через сопло. При движении печатающей головки происходит одновременное выдавливание филамента и приглаживание его к предыдущему слою концом сопла.

Казалось бы, все просто. Охлаждаем верхнюю часть трубки термобарьера, а нижнюю - нагреваем, и все хорошо. Но есть нюанс. Нужно с приличной точностью поддерживать температуру хотэнда, чтобы она гуляла лишь в небольших пределах. Иначе получим неприятный эффект - часть слоев печатается при более низкой температуре (филамент более вязкий), часть - при более высокой (более жидкий), а результат выглядит похожим на Z-вобблинг. И вот, у нас в полный рост встает вопрос стабилизации температуры нагревателя, обладающего очень маленькой инерцией - из-за малой теплоемкости любой внешний «чих» (сквозняк, вентилятор обдува, мало ли что еще) или ошибка регулирования моментально приводит к заметному изменению температур.

Здесь мы вторгаемся в чертоги дисциплины под названием ТАУ (теория автоматического управления). Не совсем моя специальность (айтишник, но выпускающая кафедра АСУ), но курс такой у нас был, с преподавателем, который показывал слайды на проекторе и периодически над ними угорал с комментариями: «Ой, доверил этим студентам лекции в электронный вид переводить, они тут таких косяков налепили, ну, ничего, вы разберетесь». Ладно, лирические воспоминания в сторону, поприветствуем ПИД-регулятор.

Нельзя писать про ПИД-регулирование без этой формулы. В рамках данной статьи она просто для красоты.

Очень рекомендую ознакомиться со статьей , там довольно доступно написано про ПИД-регулирование. Если же совсем упростить, то выглядит картина так: у нас есть некоторое целевое значение температуры. И с определенной частотой мы получаем текущее значение температуры, и нам необходимо выдать управляющее воздействие, чтобы уменьшить ошибку - разницу между текущим и целевым значением. Управляющее воздействие в данном случае - ШИМ-сигнал на затвор полевого транзистора (мосфета) нагревателя. От 0 до 255 «попугаев», где 255 - максимальная мощность. Для тех, кто не знает, что такое ШИМ - простейшее описание явления.


Итак. Каждый «такт» работы с нагревателем нам необходимо принять решение о выдаче от 0 до 255. Да, мы можем просто включать или выключать нагреватель, не заморачиваясь ШИМ. Допустим, температура выше 210 градусов - не включаем. Ниже 200 - включаем. Только в случае с нагревателем хотэнда такой разброс нас не устроит, придется поднимать частоту «тактов» работы, а это дополнительные прерывания, работа АЦП тоже не бесплатная, а у нас крайне ограниченные вычислительные ресурсы. В общем, надо управлять точнее. Поэтому ПИД-регулирование. П - пропорциональное, И - интегральное, Д - дифференциальное. Пропорциональная составляющая отвечает за «прямую» реакцию на отклонение, интегральная - за на накопленную ошибку, дифференциальная в ответе за обработку скорости изменения ошибки.

Если еще проще - ПИД-регулятор выдает управляющее воздействие в зависимости от текущего отклонения, с учетом «истории» и скорости изменения отклонения. Нечасто я слышу о калибровке ПИД-регулятора «марлина», но функция такая имеется, в результате мы получаем три коэффициента (пропорциональный, интегральный, дифференциальный) позволяющие наиболее точно управлять именно нашим нагревателем, а не сферическим в вакууме. Желающие могут почитать про код M303 .


График температуры хотэнда (Repetier-Host, Marlin)

Чтобы проиллюстрировать крайне низкую инерцию хотэнда, я на него просто дунул.

Ладно, это про хотэнд. Он есть у всех, если речь идет о FDM/FFF. Но некоторые любят погорячее, так возникает великий и ужасный, жгущий мосфеты и рампсы, нагревательный стол. С электронной точки зрения с ним все сложнее, чем с хотэндом - мощность относительно большая. А вот с позиций автоматического регулирования проще - система более инертная, да и допустимая амплитуда отклонения выше. Поэтому стол с целью экономии вычислительных ресурсов обычно управляется по принципу bang-bang («пыщь-пыщь»), этот подход я выше описывал. Пока температура не достигла максимума, греем на 100%. Потом пусть остывает до допустимого минимума, и снова греем. Также отмечу, что при подключении горячего стола через электромеханическое реле (а так нередко делают, чтобы «разгрузить» мосфет) только bang-bang является допустимым вариантом, ШИМить реле не надо.

Датчики

Напоследок - про терморезисторы и термопары. Терморезистор изменяет свое сопротивление в зависимости от температуры, характеризуется номинальным сопротивлением при 25 градусах и температурным коэффициентом. По факту, устройство нелинейное, и в том же «марлине» есть таблицы для пересчета полученных с терморезистора данных в температуру. Термопара - редкий гость в RepRap, но попадается. Принцип действия иной, термопара является источником ЭДС. Ну, то есть, выдает определенное напряжение, величина которого зависит от температуры. Напрямую к RAMPS и подобным платам не подключается, но активные адаптеры существуют. Что интересно, также в «марлине» предусмотрены таблицы для металлических (платиновых) термометров сопротивления. Не такая уж редкая вещь в промышленной автоматике, но встречается ли «живьем» в RepRap - мне не известно.

Часть 4. Единение.

3D-принтер, работающий по принципу FDM/FFF состоит, по сути, из трех частей: механики (передвижение чего-то в пространстве), нагревательных приборов и электроники, всем этим управляющей.

В общих чертах я уже рассказал, как каждая из этих частей работает, а теперь попробую порассуждать на тему "как это собирается в одно устройство". Важно: многое буду описывать с позиций кустаря-самодельщика, не оснащенного дерево- или металлообрабатывающими станками и оперирующего молотком, дрелью и ножовкой. И еще, чтобы не распыляться, в основном про "типовой" RepRap - один экструдер, область печати в районе 200х200 мм.

Наименее вариативное

Оригинальный E3D V6 и его очень недобрая цена.

Начну с нагревателей, тут популярных вариантов не очень много. Сегодня в среде самодельщиков наиболее распространен хотэнд E3D .

Точнее, его китайские клоны весьма плавающего качества. Про мучения с полировкой цельнометаллического барьера или использование трубки боудена "до сопла" не буду - это отдельная дисциплина. Из личного небольшого опыта - хороший металлический барьер прекрасно работает с ABS и PLA, без единого разрыва. Плохой металлический барьер нормально работает с ABS и отвратно (вплоть до "никак" - с PLA), и в таком случае бывает проще поставить столь же плохой термобарьер, но с тефлоновой вставкой.

В целом же, E3D очень удобны - можно поэкспериментировать как с термобарьерами, так и с нагревателями - доступны как "маленькие", так и Volcano (для толстых сопел и быстрой брутальной печати). Тоже условное деление, кстати. Сейчас использую Volcano с соплом 0.4. А некоторые изобретают втулку-проставку, и работают себе спокойно с короткими соплами от обычного E3D.

Программа минимум - покупаем типовой китайский комплект "E3D v6 + нагреватель + набор сопел + кулер". Ну и, рекомендую сразу пачку разных термобарьеров, чтобы когда дело дойдет до этого, не ждать очередной посылки.

Второй нагреватель - это не второй хотэнд (хотя тоже неплохо, но не будем погружаться), а стол. Можно причислить себя к рыцарям холодного стола, и вообще не поднимать вопрос нижнего подогрева - да, тогда сужается выбор филамента, придется немного подумать о надежной фиксации модели на столе, но зато вы никогда не узнаете про обугленные клеммы RAMPS, глубокие отношения с тонкими проводами и дефект печати типа "слоновья нога". Ладно, пусть нагреватель все-таки будет. Два популярных варианта - из фольгированного стеклотекстолита и алюминия.

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

По сути, та же печатная плата, только в качестве подложки - алюминий. Хорошая собственная жесткость, равномерный прогрев, но стоит дороже.

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

Самое интересное


3D-принтер с кинематикой "руки робота".

Самая вкусная часть - это выбор кинематики. Я в первом абзаце обтекаемо упомянул механику как средство "передвижения чего-то в пространстве". Вот, теперь как раз к тому, что и куда двигать. В общем и целом, нам надо получить три степени свободы. А двигать можно печатающую головку и стол с деталью, отсюда и все многообразие. Есть радикальные конструкции с неподвижным столом (дельта-принтеры), есть попытки воспользоваться схемами фрезерных станков (XY-стол и Z-головка), есть вообще извращения (полярные принтеры или позаимствованная из робототехники SCARA-механика). Про весь этот беспредел можно долго рассуждать. Так что, ограничусь двумя схемами.

"Прюша"

XZ-портал и Y-стол. Политкорректно назову эту схему "заслуженной". Все более-менее ясно, сто раз реализовано, допилено, модифицировано, на рельсы посажено, в габаритах смасштабировано.

Общая идея такова: есть буква "П", по ногам которой ездит перекладина, приводимая в движение двумя синхронизированными двигателями с помощью передачи "винт-гайка" (редкая модификация - с ремнями). На перекладине висит двигатель, который за ремень таскает влево-вправо каретку. Третья степень свободы - это движущийся вперед-назад стол. Плюсы конструкции есть, например, изученность вдоль и поперек или чрезвычайная простота в кустарной реализации из подручных материалов. Минусы тоже известны - проблема синхронизации двигателей Z, зависимость качества печати аж от двух шпилек, которые должны быть более-менее одинаковы, сложно разогнаться до высоких скоростей (поскольку двигается относительно тяжелый инертный стол).

Z-стол

При печати медленнее всего изменяется координата Z, да еще и только в одну сторону. Вот и будем двигать по вертикали стол. Теперь надо придумать, как перемещать в одной плоскости печатающую головку. Есть решение проблемы "в лоб" - по сути. берем портал "прюши", кладем его на бок, заменяем шпильки на ремень (и убираем лишний движок, заменяя его на передачу), поворачиваем на 90 градусов хотэнд, вуаля, получаем нечто вроде MakerBot Replicator (не последнего поколения).

Как еще улучшить эту схему? Надо добиться минимальной массы подвижных деталей. Если откажемся от директ-экструдера и будем подавать филамент по трубке, все равно остается двигатель X, который нужно зазря катать по направляющим. И вот тут включается настоящая инженерная смекалка. По-голландски она выглядит как куча валов и ремней в ящике под названием Ultimaker. Конструкция доведена до такого уровня, что многие считают Ultimaker лучшим настольным 3D-принтером.

Но есть более простые инженерные решения. Например, H-Bot. Два неподвижных мотора, один длинный ремень, горстка роликов. И это дело позволяет перемещать каретку в плоскости XY путем вращения двигателей в одну или в разные стороны. Красиво. На практике предъявляет повышенные требования к жесткости конструкции, что несколько усложняет изготовление из спичек и желудей, особенно при использовании деревянных подшипников.


Классическая CoreXY с перекрещенными ремнями.

Более сложная схема, с двумя ремнями и бОльшей кучкой роликов - CoreXY. Считаю лучшим вариантом для реализации, когда вы уже собрали свою или китайскую "прюшу", а творческий зуд не утих. Можно делать из фанеры, алюминиевого профиля, табуреток и других ненужных предметов мебели. По принципу действия результат похож на H-Bot, но меньше склонен к заклиниванию и скручиванию рамы в бараний рог.

Электроника

Если нужно сэкономить деньги - то Mega+RAMPS в китайском исполнении просто вне конкуренции. Если же нет особых познаний в электрике и электронике, а нервы не лишние, то лучше посмотреть в сторону более дорогих, но грамотно сделанных плат от Makerbase или Geeetech.

Основные болячки бутерброда в виде "не тех" выходных транзисторов и питания всего пятивольтового колхоза через стабилизатор на плате Arduino там вылечены. Если говорить о совсем альтернативных вариантах, то я жду, когда появится возможность приобрести плату на LPC1768, например, ту же MKS SBase, и поразвлекаться с 32-битным ARM и прошивкой Smoothieware. А параллельно - неторопливо изучаю прошивку Teacup применительно к Arduino Nano и Nanoheart.

Самодельщику

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

В общем-то, отталкиваться надо от финансовых возможностей и от того, что можно найти в гараже или подвале. А также от наличия или отсутствия доступа к станкам и радиуса кривизны рук. Грубо говоря, есть возможность потратить 5 тысяч рублей - хорошо, обходимся самым минимумом. За десятку уже можно немного разгуляться, а приближение бюджета к 20 тысячам изрядно развязывает руки . Конечно, сильно облегчает жизнь возможность купить китайский конструктор "прюши" - можно и разобраться в основах 3D-печати, и получить отличный инструмент для развития самопала.

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

Начало сборки Kubocore 2.

На этом пожалуй всё. Возможно, получилось немного галопом. Но по-другому объять необъятное в рамках общего обзорного материала сложно. Хотя, полезных ссылок для размышления я накидал, ищущий по-любому обрящет. Вопросы и дополнения традиционно приветствуются. Ну и, да, в обозримом будущем будет продолжение - уже о конкретных решениях и граблях в рамках проектирования и постройки Kubocore 2.

О конструкторе Хватоход. Сейчас идет подготовка к обучению людей разного возраста конструированию и электронике, в нашем коворкинг-центре. Для этого так же необходимо подобрать оборудование.

Согласно поставленной руководством задаче, оборудование для конструирования должно отвечать следующим требованиям:

Стоимость не более 30 тысяч рублей
- открытая архитектура (программная и аппаратная)
- простота в обслуживании и доступность деталей
- безопасность эксплуатации
- возможность изготовления на нем сложных изделий
- быстрая окупаемость

Ранее у меня был опыт работы в сфере 3D-печати более 1,5 лет. Поэтому выбор был сделан в пользу 3D-принтера.

Для занятий конструированием и электроникой был выбран набор для самостоятельной сборки DIY(Do It Yorself), 3D-принтер MC5 от МастерКит, созданный на базе одного из российских производителей 3D-принтеров:

Набор для сборки, создан для того чтобы его продать собрать и обучать. Он будет использоваться для создания деталей самого себя (RepRap концепция), вспомогательного оборудования и обучения электроники.

Весь процесс достаточно тривиален, если вес отвертки в руке вас не пугает. Имеется вполне понятная, русскоязычнаяинструкция . Перед началом процесса сборки, детали из фанеры лучше пометить карандашом для удобства восприятия:

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

Печатающая головка J-Head:

Временное решение было найдено при помощи кольца от лазерной указки, которую подложил вместо указанной шайбы:

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

Но процесс не остановить. При помощи лазера дрели и сверл на 3 мм и 8 мм, легко проделаны отсутствующие 3 отверстия:

Обратите внимание на драйвер двигателя экструдера. У меня все 4 драйвера были А4988 (MP4988), поэтому они должны быть ориентированы подстроечным резистором в одном направлении, как показано на схеме. Резисторы крутить не надо.

Вид собранного 3D принтера:

Провода прятать и крепить сразу - не советую. Потерпите немного.

Плата управления использует открытую аппаратную и программную архитектуру: Mastertronics (именно она была в комплекте) это гибрид Arduino MEGA 2560 и шилда для 3D-принтеров Ramps 1.4:

Поэтому смело качаем open source бесплатный софт: Repetier-host (для связи ПК с платой управления 3D-принтером) иArduino IDE (Для допиливания кода прошивки микроконтроллера). О тонкостях настройки этого программного обеспечения будет рассказано во второй части:

После настройки софта можно будет печатать:

Специально для хабра Мастер Кит предоставил промо-код HABR, который дает скидку 7% на любой заказ на сайте

3D-принтер – устройство, которое может печатать или создавать объемные изображения.

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

О чём пойдет речь:

Как это работает

Принцип создания объекта также может по факту быть разным – от фрезерования, до нанесения пластичного материала в виде заданной формы послойно. Уже сейчас существуют большие строительные модели, которые «печатают» дома из бетона, имеются и сенсационные слухи о попытке печати на принтере живых органов.

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

Подготовка к сборке

Начнем с того, что соберем 3D принтер H BOT своими руками – речь идет о доступной методологи сборки, включающей схемы и даже видео. В результате устройство поможет вам делать небольшие объемные фигурки.

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

В промышленной сборке используются технологии:

  • лазерного попиксельного нанесения пластичного вещества;
  • лазерного спекания пластика;
  • струйную, выдавливающую на форму разогретый пластик.

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

Что потребуется:

  • датчики, которые будут считывать характеристики наносимого вещества, в случае пластика речь идет о замерах температуры в сопле экструдера и стола, где происходит формовка;
  • шаговые двигатели с функцией микрошага, которые будут заниматься позиционированием печатной головки (есть готовый комплект H bot);
  • концевые датчики, отслеживающие точность движения и соответствие системе координат;
  • термисторы;
  • нагревательные элементы для печатного вещества.

Если вы будете печатать кондитерские изделия из теста или крема, в зависимости от его состава и консистенции может потребоваться нагревание или охлаждение материала, а также перемешивание, чтобы сохранить наносимую массу пластичной. Вариаций на тему может быть множество, но мы рассматриваем общий случай создания 3D-печатного устройства. Для тренировки можно использовать комплекты «сделай сам», H bot и пошаговые инструкции – так называемые Rewrap 3D, предназначенные именно для самостоятельной сборки. Они работают в основном на базе акрила, с помощью которого получают различные фигурки или детали из пластика.

Выбираем лучшее из имеющегося опыта

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

Осталось выбрать готовые модули, которые могут быть использованы в самостоятельной сборке такого устройства (на фото):

  • Конструкция представляет собой корпус, собранный из отдельных деталей, выполненных по чертежам из фанеры на лазерной резке. Пример можно посмотреть у UltiMaker Original (предлагаем пошаговую инструкцию на английском в PDF в виде слайд-презентации, всего 109 страниц). Можно начинать работы, сделав стол для 3D принтера.
  • Позиционирующая рамка (ее также называют скоростной кинематикой), самая лучшая и точная – это H BOT. Она есть в продаже и представляет собой уже готовую рельсовую рамку, обеспечивающую отличную базу позиционирования сопла на рельсовом механизме. H BOT впервые показан был в устройстве от Replicator 5, аналог есть MakerBot.

В качестве электроники в самостоятельно собранных моделях себя отлично показал RAMPS 1.4 c прошивкой MARLIN.

Экструдер МК8, требуется небольшая доработка, но вполне реально даже для неопытных мастеров, в качестве хотэнта (термонагревателя для акрила) используется E3D V6, который оптимизирован термотрубкой.

В качестве основы, опыт показывает, лучше всего подходят полупромышленные модели Signum Thingiverse, а также ZAV, которые можно найти на Робофоруме.

Корпусные рамки доступны уже в продаже, но их можно сделать по собственным чертежам, которые составляются по визуальному примеру. На их базе можно увидеть не один 3D принтер, собранный своими руками.

Итоговые параметры самодельного 3D принтера

  1. Размеры заготовки 20*20*20 см.
  2. Материал – любой пластик с диаметром нити 1,6-1,9 мм;
  3. Скорость печати – 200 мм/с, высокоскоростная подача материала.

Некоторые важные дополнения к пошаговой инструкции

  • Необходимо изолировать шаговые двигатели и установить на них охлаждение;
  • Чтобы получить термокамеру, конструкцию собираем со стеклом. Особенно оно актуально при установке второго экструдера с целью повышения скорости печати и создания более сложных форм.
  • Также можно заимствовать позитивный и известный многим опыт китайских разработчиков makeblock на платформе i3 – речь идет о фирменной раме, доступной в продаже. Для управления с компьютера используется arduino mega 2560+ ramps с софтом printrun, который можно свободно скачать.

Что такое Arduino MEGA 2560? Это микроконтролер на основе ATmega2560. В него входит все необходимое для управления периферическим устройством типа 3D принтера. Arduino представляет собой довольно сложное устройство для неопытных пользователей, с которым однако, можно просто разобраться при необходимости. Можно использовать рекомендованный микроконтролер RAMPS 1.4. Для сборки рекомендуем собирать по PDF файлам, показанным выше.

Иван Зарубин

IT-специалист, DIY-стартапер.

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

Сразу хотелось бы внести ясность - почему не стоит покупать дешманский китайский принтер за 15 тысяч рублей.

Как правило, они идут с акриловыми или фанерными корпусами, печать деталей с таким принтером превратится в постоянную борьбу с жёсткостью корпуса, калибровками и прочими событиями, которые омрачат всю прелесть владения принтером.

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

Владельцы таких рам часто колхозят различные усилители/уплотнители и постоянно вносят изменения в конструкцию, убивая тем самым своё время и настроение заниматься именно печатью, а не доработкой принтера.

Стальная рама даст возможность насладиться именно созданием деталей, а не борьбой с принтером.

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

Руководство рассчитано в основном на новичков, гуру 3D-печати, скорее всего, не найдут здесь для себя ничего нового. А вот те, кто хотел бы приобщиться, после сборки такого комплекта будут чётко понимать, что к чему. При этом не требуется специальных навыков и инструментов, достаточно паяльника, набора отвёрток и шестигранников.

Стоимость комплектующих актуальна на январь 2017 года.

Заказываем детали

1. Основа для принтера - рама, чем она крепче и тяжелее, тем лучше. Тяжёлую и крепкую раму не будет колбасить при печати на повышенных скоростях, и качество деталей будет оставаться приемлемым.

Стоимость: 4 900 рублей за штуку.

Рама идёт со всем необходимым крепежом. Винтиков и гаечек ребята кладут с запасом.

2. Направляющие валы и шпильки M5. Резьбовые шпильки и направляющие валы не идут в комплекте с рамой, хотя на картинке они есть.

  • Полированные валы идут комплектом из 6 штук .

Стоимость: 2 850 рублей за комплект.

Возможно, найдёте и подешевле. Если будете искать, то выбирайте обязательно полированные, иначе все косяки валов отразятся на деталях и общем качестве.

  • Шпильки M5 необходимо приобрести парой .

Стоимость: 200 рублей за штуку.

Это, по сути, обычные шпильки, которые можно приобрести и в строительном магазине. Главное, чтобы они были как можно более ровными. Проверить несложно: нужно положить шпильку на стекло и прокатить её по стеклу, чем лучше катается, тем ровнее шпилька. Валы проверяются соответствующим способом.

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

Стоимость комплекта: 1 045 рублей.

RAMPS 1.4 - плата расширения для Arduino. Именно к ней подключается вся электроника, в неё вставляются драйверы двигателей. За всю силовую часть принтера отвечает она. В ней нет мозгов, гореть и ломаться в ней нечему, запасную можно не брать.

Arduino Mega 2560 R3 - мозг нашего принтера, на который мы будем заливать прошивку. Советую взять запасной: по неопытности его легко спалить, например вставив неправильно драйвер шагового двигателя или перепутав полярность при подключении концевика. Многие с этим сталкиваются, и я в том числе. Дабы вам не пришлось неделями ждать новую, берите сразу ещё хотя бы одну.

Шаговые драйверы A4988 отвечают за работу моторов, желательно приобрести ещё один комплект запасных. На них есть построечный резистор, не крутите его, возможно он уже выставлен на необходимый ток!

  • Запасная Arduino MEGA R3 .

Стоимость: 679 рублей за штуку.

  • Запасные драйверы шагового двигателя A4988 . Советую дополнительно взять ещё запасной комплект из 4 штук.

Стоимость: 48 рублей за штуку.

Стоимость: 75 рублей за штуку.

Он необходим для защиты нашей Arduino. В ней есть свой понижающий регулятор с 12 В на 5 В, но он крайне капризен, сильно греется и быстро умирает.

Стоимость комплекта: 2 490 рублей.

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

Стоимость комплекта: 769 рублей.

В этом комплекте есть всё необходимое для данного принтера.

Стоимость: 501 рубль за штуку.

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

Если планируете подключать принтер напрямую к компу и печатать с компа, то экран и вовсе необязателен, печать можно производить и без него. Но, как показала практика, с SD-карточки печатать удобнее: принтер никак не связан с компьютером, его можно ставить хоть в другую комнату, не опасаясь, что комп зависнет или вы его нечаянно вырубите на середине печати.

Стоимость: 1 493 рубля за штуку.

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

Стоимость: 448 рублей за штуку.

Необходим для печати ABS-пластиком. Для печати PLA и другими видами пластика, не дающими усадки при остывании, можно печатать не нагревая платформу, но стол обязателен, на него кладётся стекло.

Стоимость: 99 рублей за штуку.

Стоимость: 2 795 рублей за штуку.

Данный экструдер является директ-экструдером, то есть механизм подачи пластика находится непосредственно перед его нагревательным элементом. Советую брать именно такой, он позволит вам печатать всеми видами пластика без особых напрягов. В комплекте есть всё необходимое.

Стоимость: 124 рубля за штуку.

Собственно, необходим для обдува PLA и прочих медленно затвердевающих видов пластика.

Стоимость: 204 рубля за штуку.

Очень нужен. Больший кулер существенно уменьшит шум от принтера.

Стоимость: 17 рублей за штуку.

При засорении проще поменять сопла, чем чистить. Обратите внимание на диаметр отверстия. Как вариант, можно набрать разных диаметров и выбрать для себя. Я предпочёл остановиться на 0,3 мм, качества получаемых деталей с таким соплом мне достаточно. Если качество не играет особой роли, берите сопло шире, например 0,4 мм. Печать будет в разы быстрее, но слои будут более заметны. Берите сразу несколько.

Стоимость: 31 рубль за штуку.

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

Стоимость: 56 рублей за штуку.

В комплекте 5 штук, 4 используем для стола, одну пружинку используем для ограничителя оси X.

Процесс сборки достаточно увлекателен и чем-то напоминает сборку советского металлического конструктора.

Собираем всё по инструкции за исключением следующих пунктов

В пункте 1.1, в самом конце, где крепятся торцевые опоры, не ставим подшипники 625z - впрочем, мы их и не заказывали. Ходовые винты оставляем в «свободном плавании» в верхней позиции, это избавит нас от эффекта так называемого вобблинга.

В пункте 1.4 на картинке присутствует чёрная проставка. В комплекте с рамой её нет, вместо неё идут пластиковые втулки, используем их.

В пункте 1.6 держатель концевика оси Y крепим не к задней, а к передней стенке принтера. Если этого не сделать, детали печатаются зеркально. Как я ни пытался в прошивке это победить, мне не удалось.

Для этого надо перепаять клемму на заднюю часть платы:

В пункте 2.4 у нас другой экструдер, но крепится он точно так же. Для этого нужны длинные болты, их мы берём из комплекта для регулировки стола (18-я позиция в списке). В наборе с рамой нет таких длинных болтов, как и в местных магазинах.

В пункте 2.6 мы начинаем сборку нашего «бутерброда» из Arduino и RAMPS и сразу же сделаем очень важную доработку, про которую редко пишут в мануалах, но которая тем не менее очень важна для дальнейшей бесперебойной работы принтера.

Нам необходимо отвязать нашу Arduino от питания, которое приходит с платы RAMPS. Для этого выпаиваем или отрезаем диод с платы RAMPS.

Припаиваем регулятор напряжения ко входу питания, который заблаговременно выставляем на 5 В, попутно выпаивая стандартное гнездо питания. Приклеиваем регулятор кому куда удобнее, я приклеил на заднюю стенку самой Arduino.

Питание от блока питания к RAMPS я припаял отдельно к ножкам, чтобы оставить свободной клемму для подключения других устройств.

Перед запуском проверяем, что нигде ничего не заедает, каретка двигается до ограничителя и обратно без препятствий. Поначалу всё будет двигаться туго, со временем подшипники притрутся и всё пойдёт плавно. Не забудьте смазать направляющие и шпильки. Я смазываю силиконовой смазкой.

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



Подготовка к эксплуатации

Если всё подключено верно, можно переходить к следующей инструкции по эксплуатации.

Полезные материалы по некоторым параметрам нашей прошивки

  • Мой настроенный и рабочий вариант прошивки под этот принтер и экструдер. Он слегка откалиброван под те детали, которые мы заказали.

Заливаем прошивку через IDE Arduino 1.0.6, выбираем на экране принтера Auto Home, убеждаемся в правильном подключении концевиков и правильной полярности шаговиков. Если двигается в противоположную сторону, просто поверните клемму у мотора на 180 градусов. Если после начала движения слышен противный писк, это писк драйверов шаговиков. Надо подкрутить на них подстроечный резистор согласно инструкции .

Советую начать печатать из PLA-пластика: он не капризен и хорошо прилипает к синему скотчу, который продаётся в строительных магазинах.

Я беру пластик фирмы Bestfilament. Брал фирмы REC, но мне не понравилось, как ложатся слои. Есть ещё море различных брендов и видов пластика: от резиновых до «деревянных», от прозрачных до металлизированных… Ещё одна фирма, которую я порекомендую, - Filamentarno. У них чумовые цвета и отличный собственный вид пластика с отличными свойствами.

Пластиком ABS и HIPS я печатаю на каптоновом скотче, намазанном обычным клеем-карандашом из магазина канцтоваров. Такой способ хорош тем, что нет запаха. Есть много других разных способов повышения адгезии детали к столу, об этом вы узнаете сами в процессе проб и ошибок. Всё достигается опытным путём, и каждый выбирает свой способ.

Почему именно этот принтер на базе Prusa i3?

  1. Принтер «всеяден». Печатать можно любыми доступными видами пластика и гибкими прутками. На сегодня рынок различных видов пластика достаточно развит, нет такой необходимости иметь закрытый бокс.
  2. Принтер прост в сборке, настройке и обслуживании. Ковыряться с ним может даже ребёнок.
  3. Достаточно надёжен.
  4. Распространён, соответственно в Сети море инфы о его настройке и модернизации.
  5. Пригоден для апгрейда. Можно заказать второй экструдер или экструдер с двумя печатными головками, заменить линейные подшипники на капролоновые или медные втулки, тем самым повысив качество печати.
  6. Доступен по деньгам.

Фильтр для филамента

Печатал крепление для экструдера E3D V6, печатал какое-то время этим экструдером с боуден-подачей. Но вернулся обратно на MK10.

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

Утеплил стол для более быстрого разогрева: подложка с отражающим фольгированным слоем и клейкой основой. В два слоя.

Сделал подсветку из светодиодной ленты. В какой-то момент надоело включать свет для контроля печати. В дальнейшем планирую закрепить камеру и подключить к принтеру Raspberry Pi для удалённого наблюдения и отправки моделей в печать без передёргивания флешки.

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

Кстати, по стране сейчас активно открываются детские технопарки, в которых детей обучают новым технологиям, в том числе моделированию и трёхмерной печати. Иметь такой принтер дома будет очень полезно для увлечённого ребёнка.

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

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

Спасибо за внимание, если есть вопросы, задавайте.

Весьма полезный русскоязычный ресурс, на котором вы найдёте любую информацию по этому направлению:

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

Мы тоже не будем отставать от этого человека с головой, и сделаем 3D принтер своими руками из доступных материалов!

Неподготовленного читателя сперва может смутить вид самодельного 3D принтера, но хочу напомнить, что смысл RepRap 3D принтера в том, что он может сам для себя печатать детали. Поэтому собрав изначально 3D принтер своими руками из подручных материалов вы постепенно обновите все его детали и станете обладателем вот такого вот пластикового красавчика, как на фото. Ну или какого-нибудь другого… какого сами захотите

Создавать 3D принтер своими руками я начал с конструкции, относящейся к классу Delta-роботов. Попытался создать так называемый Дельта 3D принтер. Он обладает достаточно простой конструкцией для изготовления своими руками, которую вполне возможно сделать достаточно жесткой, чтобы обеспечить высокую точность при достаточно высоких скоростях 3D печати, характерных именно для Dleta 3D принтеров.

Как видно из фотографии, все оси у Delta 3D принтера располагаются параллельно на трех ребрах жесткости, которые одновременно могут быть и направляющими для кареток осей. Ребра жесткости образуют треугольник с углами в 120°, образуя латинскую букву Δ - Дельта. Отсюда и название.

Но пока я временно заморозил строительство делта 3D принтера своими руками по причине того, что для его печатающей головки требуются шариковые шарниры стоимостью не менее 300 рублей за штуку. А надо их по 4 на каждую ось. Итого выходит 300 руб Х 4 шт Х 3 оси = 3600 рублей только на одни шарниры. Это уже немного не бюджетно, поэтому я в фоновый мозговой процесс погрузил задачу снижения стоимости шарниров для Дельта 3Д принтера.

А пока этот процесс выполняется, я начал делать 3D принтер своими руками по более традиционной конструктивной схеме — в виде кубика с ортогональным размещением осей X и Y, а также подъемным столиком с подогревом в качестве оси Z. И в процессе конструирования у меня появились некоторые мысли по поводу того, как минимизировать размер занимаемого 3D принтером пространства на рабочем столе. В итоге должно получиться не менее компактно по площади, чем у Delta-принтера, и гораздо меньше в высоту. Слишком большая высота — это как раз один из минусов Delta 3D принтеров.

Корпус моего первого 3D принтера выполнен из обычной ламинированной ДСП. Ее всегда можно купить в любом строительном торговом центре или в фирмах по распиловке ДСП. Когда делаешь 3D принтер своими руками в виде кубика, то получаешь дополнительные преимущества в виде защиты от сквозняков, от которых часто страдают модели, печатаемые ABS-пластиком. На круглые дырки в стенке не обращайте внимания — они остались от предыдущего недоделанного проекта, и на самом деле их там быть не должно

Как видите, в верхней крышке короба 3D принтера проделано оконце для подачи пластика в печатающую головку. Я решил сделать выносной экструдер, чтобы максимально облегчить вес печатающей головки, оставив на ней только нагреватель и сопло (так называемый «горячий конец» — HotEnd 3D принтера).

Сама печатающая головка висит на направляющих осей X и Y, которые тоже прикручены к верхней крышке 3D принтера. Когда делаешь 3D принтер своими руками, то нужно стараться выбирать для монтажа только ровные поверхности, полученные промышленным способом. Так, например, поверхность ДСП можно считать условно ровной (укладывающейся в приемлемые допуски по точности). Поэтому мы можем смело разместить в разных концах этой поверхности по одной направляющей, и считать их параллельными (плоскости ДСП, разумеется), без необходимости их юстировки (точного выставления параллельности).

Параллельность этих же направляющих в другой плоскости мы будем выставлять уже при помощи собранной каретки оси X. Сперва мы перемещаем каретку X вдоль оси Y в одно крайнее положение и засверливаем отверстия для крепежа, затем ведем вдоль оси Y в другое крайнее положение и засверливаем уже с другого конца. Фиксируем держатели направляющих винтами также перемещая каретку сперва в одно крайнее положение, затем в другое.

На фотографиях выше также очень хорошо виден подъемный столик с подогревом. Это ось Z нашего 3D принтера. Он тоже сделан своими руками из обычного куска ДСП, у которого по углам вырезаны отверстия для крепления подшипников скольжения, ходящих вдоль четырех направляющих. Направляющие и подшипники скольжения — это то, что в любом случае скорее всего придется купить.

Если же вы хотите сделать 3D принтер своими руками, минимизируя количество покупных компонентов, то направляющие и подшипники скольжения можно вынуть из старых струйных принтеров. Как раз парочку я недавно нашел на помойке, когда вывозил мусор. Но так везет все реже, поэтому что-то все равно придется покупать

Приводом для перемещения каретки по осям X и Y служат зубчатые ремни, вращаемые шаговыми двигателями. На оси X стоит всего один шаговый двигатель, т.к. ему достается самая легкая работа — таскать печатающую головку, состоящую из лёгенького HotEnd’а. Вдоль оси Y будут трудиться уже два шаговых двигателя на зубчатых ремнях, каждый из которых будет тянуть свою сторону каретки оси X. Изготавливая 3D принтер своими руками лучше лишний раз перестраховаться и исключить возможные перекосы каретки из-за недостаточной жесткости, а жесткости будет всегда не хватать, когда во главу угла ставиться максимальная экономия.

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

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

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

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

Теперь про ось Z, вдоль которой будет подниматься подогреваемый столик 3D принтера. От разрешающей способности оси Z в большей степени зависит итоговое качество напечатанной детали. Поэтому чем меньший шаг может обеспечить ваша ось Z, тем более детализованной получится итоговая деталь. Но, правда, и печататься она будет гораздо дольше, это мы уже будем решать отдельно для каждой напечатанной детали. Главное, чтобы у нас была возможность печатать максимально точно, если уж мы делаем 3D принтер своими руками.

Для этого привод оси Z обычно делается на винтовой передаче, а не на зубчатом ремне. Если взять в качестве винта строительную шпильку с шагом резьбы в 1 мм и шаговый двигатель с 200 шагами на один оборот (стандартный двигатель с 1,8° на шаг), то минимальное теоретическое перемещение оси Z нашего 3D принтера получится 1/200 мм или 0,005 мм (5 микрон)! На практике такое перемещение вряд ли осуществимо с применением стандартных направляющих и подшипников скольжения, поэтому даже 0,05 мм нам хватит за глаза.

Я решил для своего подъемного столика установить две винтовых передачи с разных сторон и вращать их двумя шаговыми двигателями, подключенными параллельно. Такая возможность уже заложена в ставшую стандартом плату RAMPS 1.4, где под ось Z предполагается подключение сразу двух двигателей. Однако есть риск получить артефакты на итоговой детали в виде волнистых перепадов между напечатанными слоями. Это будет свидетельствовать о несинхронном вращении винтов или о неких перепадах шага резьбы на винтах. В конце концов, строительная шпилька производится, чтобы стянуть две доски опалубки при заливке бетона, а не для оси 3D принтера с микроперемещениями

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

Кстати, снял небольшое видео 3D принтера. Показан подъемный столик в работе. Вроде движется и не клинит, хотя движочки поставил довольно слабенькие: ток обмотки всего 0,4 А и момент на валу 1,7 кг х см. Покуда движков два и подключены они параллельно, то на драйвере выставил двойной ток — около 800 мА. Не нравятся мне эти стандартные драйвера A4988 — у них после прекращения поступления шагов включается режим удержания, причем его ток значительно превышает номинальный, и движки начинают греться. На винтовой передаче вообще удержание не требуется, но я не знаю, как это отключить на этих драйверах. Прям хоть снова свои драйвера паяй

А вот видео 3D принтера, в котором я испытывал ось X. Перемещения довольно бодрые, но при этом корпус немного пошатывает. При печати это обязательно скажется, поэтому нужно корпус связать треугольными перемычками, которые не дадут ему расшатываться в этой плоскости. У корпусной мебели для этих целей служит обычно задняя стенка из ДВП, которая прибивается по всему периметру и не дает корпусу шататься по диагоналям.

Теперь по поводу экструдера для 3D принтера. Ему я посветил отдельную статью, потому как он является довольно ответственной частью 3D принтера. В этой статье я расскажу, как изготовить .

Обновление от 28.11.2015

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

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

Благодаря точности моего ЧПУ станочка, я могу выпиливать посадочные места для подшипников качения и жестко запрессовывать их туда без необходимости их дополнительного крепежа (хрен их оттуда потом вынешь — приходится ломать всю балку и вытачивать новую). Это куда более надежно, чем пластмассовые затяжки, которые я сперва применял, насмотревшись фоток любительских конструкций 3D принтеров в интернете.

Обновление от 3.12.2015

Работа кипит. Я так вдохновился результатами конструирования 3D принтера из фанеры, что решил построить 3D принтер своими руками из фанеры целиком! Но для такого ответственного мероприятия у меня уже не хватает воображения для плоского моделирования деталей 3D принтера в QCAD, поэтому я переключился на объемное моделирование во FreeCAD. Конечно, освоение параметрического моделирования идет туговато, но кое-что уже получается. Тяжело в учении — легко в бою! Вот примерно так будет выглядеть мой 3D принтер из фанеры:

Особенность данной конструкции 3D принтера будет заключаться в том, что в нее заложена возможность роста в прямом смысле слова. Верхняя печатающая часть будет легко сниматься и переставляться на более высокую коробку с осью Z.

Кстати, я, как и советовали мне в комментариях, решил пересмотреть кинематическую схему и попробовать CoreXY. Кратко об основных преимуществах кинематики CoreXY:

1. Мы не таскаем с собой двигатели — они жестко крепятся на раме. Отсюда возможность получить ускорения, недостижимые со стандартной кинематикой (когда приходится с собой таскать двигатель оси X).

2. Уравновешенность моментов на каретке. Отсутствие сил скручивания, стремящихся нарушить перпендикулярность осей X и Y.

Вот, пожалуй, и все преимущества Но уже их достаточно для того, чтобы отказаться от стандартной кинематики. Тем более, что кинематика CoreXY теперь очень хорошо поддерживается в популярной прошивке Marlin. Как раз с весны по лето разработчики активно допиливали именно эту кинематику.

Посмотрим, что получится.

Обновление от 9.12.2015

Ну вот, работа над корпусом почти закончена. Пробные выпиливания на моем станке с ЧПУ выявили некоторые погрешности проектирования, которые тут же исправляю в файле проекта. Ни разу еще не делал конструкцию по чертежам. 3D принтер своими руками — это мой первый проект, в котором я применил сурьезный инженерский подход — сперва подумать, потом сделать. Обычно делаю все наоборот:)

Тем не менее, то, что у меня получается на данный момент мне и самому нравится. Оказывается, правильно спроектированный 3D принтер из фанеры может быть довольно прочным. Я даже начинаю проникаться уважением к такому материалу, как фанера. Надо будет попробовать сделать из нее ее что-нибудь.

Теперь возвращаясь к моему самодельному 3D принтеру из фанеры, хочу отметить невероятную компактность своей конструкции. По площади основания он получился точь в точь как мой настольный лазерный принтер! Для дома — самое то.

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

Все, что остается на данный момент — это натянуть зубчатый ремень и установить винтовую передачу на ось Z. Ах, да! Еще экструдер

Обновление от 15.12.2015

Ура! Я сделал 3D принтер своими руками! Переходим теперь к .

  • Направляющие (полированные валы Ф12 мм) 1,5 м = 1 080 руб
  • Линейные подшипники LM12UU — 6 шт х 150 руб = 900 руб
  • Шаговые двигатели Nema 17 — 4шт х 750 руб = 3 000 руб
  • Ремень GT2 300 см по 300 руб/м = 900 руб
  • Шкивы 20 зубов 3 шт в наборе = 840 руб
  • Контроллер (Arduino Mega 2560 r3 + Ramps 1.4 с драйверами шаговиков) = 2 000 руб
  • Стекло с каптоном 200 х 200 мм = 230 руб
  • Нагреватель стола 220 V 200 x 200 мм = 1 000 руб
  • HotEnd E3D v5 с соплом 0,3 мм, фитингом и фторопластовой трубкой = 2 200 руб
  • Блок питания ATX 350 Вт = 650 руб
  • Лист фанеры 8 мм = 300 руб
  • Винты Ф3 х 25, гайки, шайбы = 400 руб

Итого: 13 500 руб

Все детали куплены в специализированных магазинах в Москве. Те, кто любит все заказывать в Китае, наверное, могли бы сэкономить еще больше денег.