roboforum.ru

Технический форум по робототехнике.

3D принтер (СОФТ)

Re: 3D принтер (СОФТ)

geroin » 29 окт 2008, 18:28

Digit писал(а):А в чем траблы со Slice'ом? (вторая ссылка)
Проверить возможности нет, но по мануалам вроде все просто...
[/url]


Да так оно и есть. Все просто как унитаз. Токо я с програмированием не знаком. А вот это уже трабл.
Slice'r режет stl отлично, но выдает результет в формате XLM (кстати открывал с помощю Mozilla FireFOX, выглядит красиво) или DVG, а первый и второй это набор координат, цифр. Вот щас ищу прогу которая сможет эти цифры превращать в принтебл рисунки, и желательно что бы загнал в прогу XLS файл, а он тебе типа много страниц с рисунками и в одном файле (может PDF или еще какой). Нажал принт и пошел процесс печати 2х тыщ страниц... :shock:
hudbrog писал(а):Вот, чесслово, не понимаю че вы мучаетесь...
Ради интереса просто, решил написать такую софтинку(благо работать седня ну ооооочень не хотелось :D )

Млин аж слюни потекли :oops: уже больше месяца бьюсь головой о стену :durak: , все равно когда то пробью. Вот если бы добрые люди помогли человечеству... и мне заодно немного :RTFM:
Красывые разрезы получились. Ням, ням, ням. :good:

Re: 3D принтер (СОФТ)

hudbrog » 29 окт 2008, 18:32

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

Re: 3D принтер (СОФТ)

geroin » 29 окт 2008, 18:58

hudbrog если соберу железяку, обещаеш помочь с ее оживлением (научить печатать именно слои и в масштабе)?
Если да то обещаю в эту ветку не постить пока не появится что то похожее на 3D принтер :D
Реально немного побаиваюсь собирать по причине отсутствия знания програмированния...
З.Ы.Вот только плохо что находимся в 2х часах лету на самолёте :cry:

Re: 3D принтер (СОФТ)

hudbrog » 29 окт 2008, 19:06

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

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

Re: 3D принтер (СОФТ)

Master » 29 окт 2008, 20:43

я не собираюсь использовать электронику от принтера, соответственно мне надо управлять всей своей электроникой

Я надеюсь это ты щас про Polyjet говоришь, а то придется в категории Crazy Projects сделать еще одну подкатегорию, "Ваще безбашенные проекты"?
Спасибо за исходники они правда мало чем помогли, походу там они юзают библиотеку которая и делает нарезку по слоям. Ну да ладно я уже давно убедился, что проще заново написать программу, чем разобраться в чужем коде.

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

geroin ты в контроллерах шаришь хоть чуть-чуть? Можешь сделать чтобы диодик мигал хотябы?
Последний раз редактировалось Master 29 окт 2008, 20:50, всего редактировалось 1 раз.

Re: 3D принтер (СОФТ)

Digit » 29 окт 2008, 20:46

geroin писал(а):Slice'r режет stl отлично, но выдает результет в формате XLM (кстати открывал с помощю Mozilla FireFOX, выглядит красиво) или DVG, а первый и второй это набор координат, цифр.

Он режет в SVG. Чем его смотреть я уже писал выше

Re: 3D принтер (СОФТ)

hudbrog » 29 окт 2008, 22:08

Master писал(а):
я не собираюсь использовать электронику от принтера, соответственно мне надо управлять всей своей электроникой

Я надеюсь это ты щас про Polyjet говоришь, а то придется в категории Crazy Projects сделать еще одну подкатегорию, "Ваще безбашенные проекты"?

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

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

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

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

Я ленивый слишком... предпочитаю быстрый результат :oops: А может просто уже обуржуел... о в целом, мне просто жаль времени на то, чтобы делать что-то, что кем-то уже сделано.

Добавлено спустя 10 минут 22 секунды:
Ладно, рассказываю как вообще режутся stl.
Формат крайне дураций на самом деле. Он описывает поверхности фигуры набором полигонов. Причем, вообще говоря, в нем есть только этот самый набор полигонов, которые между собой никак не связаны.
Что нужно чтобы его порезать? Допустим, на высоте Z.
Проходим по всем полигонам файла, смотрих на их координату З, сортируем
1) Если все координаты ниже, то нам это уже нафик не нужно (типа уже произведено)
2) Если все координаты выше - то пока нам это не нужно.
3) Если есть полигон, часть которого попадает под нашу высоту, мы высчитываем его пересечение с плоскостью Z и сохраняем у себя как линию.

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

Добавлено спустя 44 минуты 16 секунд:
Во, добился окончательно чего от этой тулзы хотел, теперь она умеет рисовать путь следования каретки ) Осталось заставить картеку по нему следовать.. :D ну это уже мелочи, завтра заберу микросхемы и опять начну железо мучать...
hatched.png

Re: 3D принтер (СОФТ)

Master » 30 окт 2008, 11:42

Спасибо за урок, помогло. Действительно из-за того что все числа в ПК имеют конечную точку возникают некоторые трудности с этим я уже столкнулся. В принципе для того чтобы соседние грани полигонов совпадали нужно предварительно делать проверку на то что соседние точки треугольников совпадают, даже 3Д макс при открытии STL файла спрашивает про некий трешхолд, если соседние точки лежат ближе чем эта величина они сводяца в одну.
Я вот тока не понял ты изучал процедурный язык тока для того чтобы работать с рэп-рапом или это просто совпадение, или рап написан на другом языке?

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

Добавлено спустя 54 минуты 7 секунд:
Преобразуем в растровый формат, заливаем, все готово.

Вот здесь кстати тоже интересный момент, нужен еще алгоритм по заливке сечений, т. е. нужно найти замкнутые контуры и залить их. (Рис 2)

Добавлено спустя 1 минуту 38 секунд:
Сейчас просмотрел STL файл сформированный 3Д максом у каждого полигона есть по 2 одинаковые координаты с соседним, вроде без ошибок.

Добавлено спустя 3 минуты 47 секунд:
А еще сечение может быть вот таким, и внутренний контур не должен быть залит. (Рис 1)
Вложения
.JPG
.JPG (2.64 КиБ) Просмотров: 3730
.JPG
.JPG (2.92 КиБ) Просмотров: 3751

Re: 3D принтер (СОФТ)

hudbrog » 30 окт 2008, 12:38

Master писал(а):Я вот тока не понял ты изучал процедурный язык тока для того чтобы работать с рэп-рапом или это просто совпадение, или рап написан на другом языке?

Я уже какое-то время не изучаю языки программирования, я ими пользуюсь... ибо все они похожи один на другого как братья близнецы.. :oops:
А вообще, процедурным ты видимо назвал processing - он не совсем процедурный, он вообще смесь бульдога с носорогом, что мне в нем и нравица. А репрап написан на джаве. Процессинг, как ни странно, очень похож по синтаксису на джаву, с небольшой пачкой изменений.
Замечание по твоему софту. У тебя по идеи линии должны быть разного цвета, один цвет это проход головки с подачей полимера и другой без подачи оного.

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

Преобразуем в растровый формат, заливаем, все готово.

Вот здесь кстати тоже интересный момент, нужен еще алгоритм по заливке сечений, т. е. нужно найти замкнутые контуры и залить их. (Рис 2)

Есть готовые алгоритмы заливки полигонов... типа вот такого http://alienryderflex.com/polygon_fill/
Делать вырезы - тоже вполне решабельный момент.. Если есть именно замкнутые полигоны - это уже действительно ничего сложного.

Добавлено спустя 4 минуты 5 секунд:
Кстати, как на второй картинке у тебя оно быть не может =)

Re: 3D принтер (СОФТ)

Master » 30 окт 2008, 12:52

Кстати, как на второй картинке у тебя оно быть не может =)

Ну почему же, к примеру объекты могут просто пересекаца.

Re: 3D принтер (СОФТ)

hudbrog » 30 окт 2008, 12:55

Master писал(а):
Кстати, как на второй картинке у тебя оно быть не может =)

Ну почему же, к примеру объекты могут просто пересекаца.

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

Re: 3D принтер (СОФТ)

Master » 30 окт 2008, 13:44

А как ихний алгоритм поведет себя вот в такой ситуации?
http://alienryderflex.com/polygon_fill/

Добавлено спустя 2 минуты 42 секунды:
Или они намеренно делают зеленую линия на 2 пикселя шире секущей?
Вложения
efficient_polygon_fill_3.gif
efficient_polygon_fill_3.gif (4.79 КиБ) Просмотров: 3652

Re: 3D принтер (СОФТ)

hudbrog » 30 окт 2008, 13:45

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

Re: 3D принтер (СОФТ)

Master » 30 окт 2008, 18:11

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

Добавлено спустя 3 часа 40 минут 22 секунды:
2 hudbrog в твоей софтине нужно поправить чтобы вначале головка прошла по контуру детали, а уже потом делала заливку, так по идее более четкая фигура буит получаца.

Re: 3D принтер (СОФТ)

hudbrog » 30 окт 2008, 18:22

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


Rambler\'s Top100 Mail.ru counter