LINUX.ORG.RU

Трехмерная печать в GNU/Linux

 ,


5

5

Привет, ЛОР.

Так получилось, что я давно сюда ничего не писал, и уже начал немного скучать. Давай я расскажу тебе про свой 3d принтер.

На скриншоте запечатлен процесс изготовления пластиковой детали, состоящий из разработки трехмерной модели, преобразования модели в G-code и печати на 3d принтере.

Модель спроектирована во FreeCAD 0.16. Несколько лет назад FreeCAD у меня глючил, сегфолтился и не работал. Но в последней версии разработчики существенно подтянули стабильность, ну или я просто научился нормально его собирать в своей gentoo. Сейчас это вполне годная (и единственная?) свободная трехмерная САПР в GNU/Linux. Осваивал его по серии видеоуроков на youtube.

После создания модели её нужно преобразовать в G-code. Для этого существует ряд свободных и коммерческих программ, которые называются 3D printer slicing application, или просто слайсеры. Я использую Slic3r. Преобразование модели в G-code — это самый ответственный и сложный этап. Часть работы софт делает автоматически, но пользователю нужно самостоятельно подобрать ряд таких параметров, как скорость печати различных частей детали (внешних границ, заполнения, «мостов», верха, низа и т.д.), температуры сопла и стола, толщины слоев и т.д. От этих параметров зависит качество и время печати. Неправильно подобранные параметры могут привести к отклеиванию от стола, расслаиванию, расплавлению, ну или просто кривизне детали. В интернете есть множество дельных рекомендаций на этот счет, но все равно для качественной и относительно быстрой печати приходится подбирать эти параметры опытным путем для каждого бюджетного 3d принтера (не для конкретной модели, а для конкретного экземпляра с его перекосами, сделанными при сборке, криво выточенными китайскими осями и подшипниками, погрешностями термопар, которые делают обратную связь от нагревателей, красителя в пластике и т.п.).

Когда у вас есть готовый G-code, его нужно отправить на принтер. Сделать это можно массой способов, например, можно сохранить его в текстовый файл на sd карту и вставить её в принтер, или подключиться к принтеру через minicom и вбить команды через терминал. Я использую для этого хост из OctoPrint на raspberry pi. OctoPrint — это приложение с веб-интерфейсом, через который можно управлять принтером, следить за процессом печати через веб-камеру и визуализатор G-code'а. Еще у OctoPrint есть REST API, с которым умеет работать Slic3r, куча плагинов и возможность удобной интеграции своих скриптов в веб-интерфейс.

Сам принтер называется Anet A6 и представляет собой китайскую модификацию свободного принтера Prusa i3. Обошелся мне в 14к руб. с доставкой из Китая. По сути это простой ЧПУ станок с экструдером. Как и все 3d-принтеры из его ценового сегмента (до ~$500), он не умеет работать по принципу магического ящика, которому на входе дают пластик и модель, а на выходе получают деталь. С ним нужно разбираться. В нем нет защиты от дурака, а подготовленный человек вполне сможет буквально разломать его на части, имея лишь доступ к последовательной шине передачи данных. Но в этой простоте есть свои плюсы в виде широких возможностей модификации. Почти каждый владелец дешевого китайского 3d принтера рано или поздно начинает печатать на нем свой 3d принтер. Плата управления сделана на базе ATmega1284 и CH340. Для нее в данный момент есть две свободные альтернативные прошивки.

Сейчас я добился относительно приемлемого качества печати со средней скоростью до 100 мм/с. С большей скоростью акриловая рама начинает раскачиваться так, что печатать уже невозможно. На скриншоте печатается пинхол для байонета К со средней скоростью 30 мм/с. Печать шла около двух часов, вот так выглядит финальный результат. Можно было бы и лучше, но я плохо откалибровал стол перед печатью и получилось так, как получилось. Вот несколько фото, снятых на эту поделку: 1 2 3. А вот для сравнения резьба М39, которую я напечатал за 1.5 часа с нормально откалиброванным столом и правильно подобранными параметрами для пластика. Она идеально накручивается.

В целом, качество печати обратно пропорционально скорости печати. Скорее всего, я даже смогу на своем кривом дешевом принтере напечатать заднюю крышку смартфона, внешне неотличимую от качественного заводского литья/штамповки. Только одна печать при этом займет больше суток. И тут мы подходим к самой главной проблеме: я боюсь надолго оставлять работающий принтер без присмотра. Нагреватель в экструдере вполне может расплавить алюминиевый подшипник. В принципе, такого не должно произойти, т.к. в прошивке есть защита от перегрева и аварийное отключение при выходе термопары из строя. Но даже, если бы эту прошивку писал я сам, и был бы на 100% в ней уверен, управляющую плату, контроллер и прочие компоненты на плате делал всё равно не я. И я в любом случае могу только верить или не верить в надежность и безглючность платы, но не могу ничего гарантировать. Расплавленный подшипник я увидел на фото на одном из форумов по 3d печати. В гугле можно найти еще много фотографий, которые наводят на размышления. И если даже принтер не сгорит, всё равно нужно следить, чтобы деталь не развалилась и не отклеилась в процессе печати, а вероятность этого велика даже на топовых принтерах, особенно если ты в первый раз печатаешь что-то сложнее кирпича. После нескольких проб и ошибок, конечно, можно подобрать оптимальные параметры в слайсере для конкретной детали и запустить серийное производство.

А так подробно я расписал предыдущие три абзаца, потому что после покупки принтера часто слышу вопросы вроде: «Почему печать детали весом в 100 г. стоит в конторе n*x руб., если 100 г. пластика стоят x руб.?», — где n>1. Пластик — это ничто по сравнению с трудом, который нужно вложить в подготовку детали к печати, даже если у вас есть готовая модель, и в обучение 3d печати в целом. Но все равно, трехмерная печать — это безумно круто, за ней будущее, и GNU/Linux готов к этому будущему уже сейчас.

>>> Просмотр (3200x900, 1164 Kb)

Deleted

Проверено: JB ()
Последнее исправление: cetjs2 (всего исправлений: 3)

Круто. Спасибо за детальный пост.

И да, в сфере 3D печати, как я заметил, все очень floss. Кто этому вообще способствовал. Там, вроде, какие-то открытые проекты 3Д принтеров есть. Можешь еще этот момент осветить? Было бы интересно.

BceM_IIpuBeT ★★☆☆☆
()

Что-то уж совсем нищебродно

fornlr ★★★★★
()

Всегда интересовался вопросом: возможно ли распечатать работающий пистолет на 3D-принтере?

batya
()

Все верно. Именно поэтому принтеры так отличаются по цене.

AVL2 ★★★★★
()

какие планы на доработку? смена экструдера на химеру с двумя соплами? auto leveling? стол от 220в чтобы быстрее грелся?

ft232r
()
Ответ на: комментарий от BceM_IIpuBeT

Кто этому вообще способствовал. Там, вроде, какие-то открытые проекты 3Д принтеров есть.

http://reprap.org/ — вот эти парни, пожалуй, дали старт.

AP ★★★★★
()

Товарищ, которому я переслал это сообщение, интересуется:

==================

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

ATMega1284... Это 128 кило флэша, 4 кило ЕПРОМ и 16 кило РАМы. Интересно, чем столь тяжелым она занимается? И если принимает не G-код с карты памяти, а команды «Step/Dir», можно бы и Mach3 (x86) или LinuxCNC (на той же Малинке) поюзать.

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

Подпись: «В музыке, PCB и прочих работах я обычно подписываюсь как Aq [..]

===========

ВотЪ. Соотвественно, я сюда за возможным ответом и вообще ещё загляну ....

Andrew-R ★★★★★
()
Ответ на: комментарий от batya

работающий пистолет

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

kirill_rrr ★★★★★
()

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

kirill_rrr ★★★★★
()
Ответ на: комментарий от BceM_IIpuBeT

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

Мне интересно, что реально, на практике, можно выжать из модели ценой в ноутбук.

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)
Ответ на: комментарий от batya

Всегда интересовался вопросом: возможно ли распечатать работающий пистолет на 3D-принтере?

Распечатай лучше фаллос :)

Odalist ★★★★★
()

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

nuxster ★★★
()
Ответ на: комментарий от BceM_IIpuBeT

И да, в сфере 3D печати, как я заметил, все очень floss. Кто этому вообще способствовал. Там, вроде, какие-то открытые проекты 3Д принтеров есть. Можешь еще этот момент осветить? Было бы интересно.

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

Deleted
()
Ответ на: комментарий от batya

Всегда интересовался вопросом: возможно ли распечатать работающий пистолет на 3D-принтере?

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

Deleted
()
Ответ на: комментарий от ft232r

какие планы на доработку? смена экструдера на химеру с двумя соплами? auto leveling? стол от 220в чтобы быстрее грелся?

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

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

Deleted
()

Таки не осилил Slic3r, только вывел более-менее правильные скорости, он мне начал слои очень странно раскладывать. Мучился, мучился, но так и не осилил, вернулся на Cura, там теперь параметров не меньше, но изначально настройки лучше, можно практически сразу печатать. Но всё время чего-то не хватает. Поковырять, чтоли опять Slic3r?

Deleted
()
Ответ на: комментарий от Andrew-R

Не понимаю, где он добыл *алюминиевый* подшипник.

https://ru.aliexpress.com/item/10pcs-set-400mm-Linear-Rail-Shaft-SCS8UU-Linea... У меня стоят примерно такие.

ATMega1284... Это 128 кило флэша, 4 кило ЕПРОМ и 16 кило РАМы. Интересно, чем столь тяжелым она занимается? И если принимает не G-код с карты памяти, а команды «Step/Dir», можно бы и Mach3 (x86) или LinuxCNC (на той же Малинке) поюзать.

Там 5 шаговых двигателей, 2 нагревателя, 2 термопары, слот для sd карт, экран 128x64 с графическим меню. Работает оно только с G-code через sd карту или uart. Может это и оверкилл, но с другой стороны ATMega1284 стоит всего 200 руб., что не существенно для принтера с общей стоимостью в 14к, но зато с ней не нужно будет париться, влезет ли в контроллер твоя кастомная прошивка.

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

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

Deleted
()
Ответ на: комментарий от kirill_rrr

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

Производитель моего принтера заявляет поддержку ABS, из которого делают кубики LEGO и бамперы для авто, и PLA, из которого делают одноразовую пластиковую посуду. Диаметр проволоки 1.75 мм. В РФ есть несколько производителей такого пластика, цены можешь посмотреть в гугле.

Я думаю, при должной сноровке можно печатать почти всем с рабочей температурой плавления где-то от 120 до 300 градусов.

Deleted
()
Ответ на: комментарий от Deleted

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

Deleted
()

да не готова вся эта инфраструктура для 3d-печати. Чего народ тащит всюду этот дебильный формат STL? В сечениях от треугольной сетки ничего кроме мелких кусочков прямых линий не получается, даром что многие армовские платы нынче умеют и арки рисовать, и сплайны.

Отвратительно в slic3r реализовано перемещение экструдера, не связанное с печатью. Ну, типа на максимальной скорости, без какого-то контроля за ускорениями.

В итоге имеем всякие сопли, не совпадающие идеально слои пластика.

demidrol ★★★★★
()
Ответ на: комментарий от demidrol

Чего народ тащит всюду этот дебильный формат STL?

Я кормлю слайсер моделями в OBJ. Какой формат по-твоему нужно тащить?

Отвратительно в slic3r реализовано перемещение экструдера, не связанное с печатью. Ну, типа на максимальной скорости, без какого-то контроля за ускорениями.

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

Deleted
()
Ответ на: комментарий от Deleted

Они всё-таки разные. Не знаю, толи я привык, толи Cura стала лучше, но раньше мне у неё очень не нравились «крышки», как она их раскладывала. А в Slic3r как раз получалось делать хорошие крышки, поддержки нравились, но остальное я испортил не успев настроить :) А после нескольких неудачных попыток обновить, перекомпилировать, просто пришлось пересесть на Cura. Но, как только придёт новенький E3D V6, попробую снова. Ты виноват.

Deleted
()
Ответ на: комментарий от Deleted

Всё мечтаю собрать экструдер и начать печатать молочными пакетами :)

Deleted
()
Ответ на: комментарий от kirill_rrr

А на сколько падает прочность по сравнению с тем же монолитным пластиком?

От нуля до бесконечности, в зависимости от параметров печати. Структура готового изделия похожа на древесные волокна, в одном направлении деталь всегда прочная, а в другом всё зависит от адгезии между слоями. Вот например ручка для балконной двери из PLA https://files.somestuff.org.ru/20170209_180511.mp4, она мерзла зимой при -10, жарилась на солнце при +28, и мне кажется, ее вообще нереально сломать, скорее вырвется кусок стеклопакета. Но если сломается — я просто напечатаю за час еще одну ручку. До нее сломал две ручки заводского производства.

Deleted
()

Я тут заказал raspberry и хочу замутить себе smart часы а-ля pip-boy. Но т.к. pipboy на raspberry уже сделали это должно быть что-то другое и ретрофутуристичное. Чисто лулзов ради. Нет желания поучаствовать в разработке? Правда, я из Москвы. Материалы оплачу, да.

Postal_Dude
()
Ответ на: комментарий от Postal_Dude

У меня есть Rpi и 7" тачскрин к нему. Хочу портативный ПК в форм-факторе «кирпич». И самые сложные проблемы тут не в том чтобы сделать корпус...

kirill_rrr ★★★★★
()
Ответ на: комментарий от Postal_Dude

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

Deleted
()
Ответ на: комментарий от kirill_rrr

Автономное питание можно сделать из аккумулятора 18650 и вот этих штук: https://ru.aliexpress.com/item/1pcs-MT3608-2A-Max-DC-DC-Step-Up-Power-Module-... https://ru.aliexpress.com/item/Free-Shipping-5V-Micro-USB-1A-18650-Lithium-Ba...

Всякие кнопки можно повесить на GPIO и написать для них код например на python.

Но зачем нужен портативный ПК в форм-факторе «кирпич»?

Deleted
()
Ответ на: комментарий от Deleted

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

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

У меня есть большие сомнения на этот счет. Rpi 3 будет греться и выжирать банку 18650 за 3-4 часа (данные взяты с потолка, но я почему-то склонен им верить), а остальные версии навряд ли потянут современный веб, в отличие от планшета.

Deleted
()
Ответ на: комментарий от Deleted

Как-то для хьюлетовского принтака заказали шестерёночку(самая популярная - из редуктора привода печки, но у нас под рукой не оказалось).
Нам отпечатали за полдня. Кустарно. Ещё день надфилями убирали лесенку на зубьях(зато все в конторе научились пользоваться моим штангеном). Погоняли, понравилось, отдали клиенту
Принёс через два дня с зажёванной бумагой - шестерня лопнула. Съездили к соседям за 100км, купили у них шестерёнку. С бензом(точнее соляркой) еле-еле на нули с таким ремонтом вышли.

Зареклись нагруженные пластик-детали брать со стороны - лучше заказать/выдрать_с_БУ.

Хотя неизвестно из чего и как печатали... Но лесенка была где-то в 0.3мм, никак не 0.1

drfaust ★★★★★
()
Последнее исправление: drfaust (всего исправлений: 2)
Ответ на: комментарий от Deleted

У меня с декабря-февраля Rpi3 на половинной частоте заменил ноут как основной комп. Тяжёлый веб мне нужен редко, видео я тоже смотрю не так часто. Вот что меня действительно волнует - управление яркостью дисплея. И прочие вопросы ПО. Вроде бы известно, куда копать, но это не на один день работы.

kirill_rrr ★★★★★
()
Ответ на: комментарий от drfaust

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

Deleted
()
Ответ на: комментарий от Deleted

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

А перемещение — да нигде оно хорошо не реализовано. Только если бы так генерили программы для станков с ЧПУ... ну, ты понял.

demidrol ★★★★★
()
Ответ на: комментарий от demidrol

Ну как ты настроишь slic3r, так он и нагенерирует. Я не вижу в нем каких-то фундаментальных проблем, всё печатается. Может быть ты просто хочешь печатать со скоростями, на которые не рассчитана рама твоего принтера?

Deleted
()
Ответ на: комментарий от kirill_rrr

Да, знакомая проблема. Я тоже почти год собираю сетевую звуковую карту на rpi, es9023 и cmoy. Осталось спаять усилитель и закорпусировать эту поделку, но всё время как-то не до этого.

Deleted
()
Ответ на: комментарий от Deleted

да бог с ними, с траекториями.

Вот у меня в качестве контроллера используется Beaglebone Black + CRAMPS. Он замечательно умеет коды G2, G3 (аппаратные дуги окружностей). Вместо этого слайсер предлагает мне тонну G1-кодов. Не раз замечал, что интерпретатор просто не справляется их успевать пережевывать, в результате чего на криволинейных участках (где сетка в исходной модели была «густой») экструдер явно «опаздывает» (движется медленнее, чем на аналогичных прямолинейных участках при том, что фидрейт тот же самый).

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

demidrol ★★★★★
()
Ответ на: комментарий от demidrol

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

Deleted
()
Ответ на: комментарий от kirill_rrr

Все зависит от кривизны рук пользователя. У нас как-то так получается. Они напечатаны на makerbot'ах, паре дельт за 8к и самодельном принтере с здоровым полем печати.

Jack_Vo ★★
()
Ответ на: комментарий от BceM_IIpuBeT

Ну, когда у меня появился первый комп, 20 Мб/сек была неплохой скоростью работы для жёстких дисков. И раз это всё равно быстрее 100 Мбит эзернета, по которому usb-хард обменивается данными в 50% случаев... Да и мне не больше 2-3 раз в год надо разом прочитать весь терабайт. Обычно куски по паре гигов.

Короче приемлимо.

Да, системный диск. microSD на 64Г. Он также сидит на шине usb2, так что теоретический предел скорости у него тот же. Имеется проблема 12309, но шаманство с размером кеша и карточка samsung класса HC I его почти снимают. Реальные скорости работы плавают, но чтение всегда 10М+, а запись ~2-5М/сек (кеш уменьшен до 2М).

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)
Ответ на: комментарий от BceM_IIpuBeT

Есть 2 мнения: что должны быстро дохнуть и что после поголовного внедрения чипа автоматического выравнивания износа это миф и дохнуть они будут лет 5-10. Учитывая мои завалы старых 2Гб флешек и микроСД, я болшьше склоняюсь ко 2 мнению.

На всякий случай поотключал логи, повыносил кеши в tmpfs и разместил своп на usb-hdd (имея 12309, размещать его на флешке - садомазо). Полгода полёт нормальный, чредний аптайм ~5 суток. При отключении света раз в 10-14 дней.

kirill_rrr ★★★★★
()

Модель спроектирована во FreeCAD 0.16. Несколько лет назад FreeCAD у меня глючил, сегфолтился и не работал. Но в последней версии разработчики существенно подтянули стабильность, ну или я просто научился нормально его собирать в своей gentoo. Сейчас это вполне годная (и единственная?) свободная трехмерная САПР в GNU/Linux.

А у меня вопрос не совсем по теме. Насколько freecad сейчас пригоден/не пригоден для замены autocad'а в общем и целом?

aureliano15 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.