Делаю 3D принтер

Делись идеей, получай поддержку и критику!

Делаю 3D принтер

Postby Sergey Ivanov on 12 Feb 2013, 09:16

Всем привет !

Идея у меня зародилась относительно давно. Вот постепенно реализую, точнее пробую реализовать.
Печать осуществляется фотополимером. Вот тесты одного из них : http://youtu.be/iZEy-Iedv24 (вообще, несколько тестировал).
суть процесса такая (картинки нашёл :D ):
TR4.JPG

подготовка:
TR1.JPG


Собственно, хочу на :labview: сделать софт, который подготавливал бы модель для печати.

Для этого заказал программку, которая импортирует STL файл, режет его на слои и каждый слой сохраняет в виде ч/б картинки. С заданным шагом. Шаг - это сторона элементарного кубика. Например, если шаг 0,1 мм, то расстояние между слоями = 0,1 мм и размер пикселя картинки 0,1х0,1. Чем больше шаг, тем более зернистая картинка и тем меньше слоёв.

ехе программы, её исходники и пробная модель в stl находятся в приложении. вопрос у меня такой: можно ли как-то сделать так, чтобы эта программа была в :labview: , а не отдельным ехе ? как её можно туда запихать ? код , как я понимаю, можно через C node, а как вот импортировать окно, в котором отображается модель и выбирается гранб я вообще не знаю.
Last edited by Sergey Ivanov on 27 Apr 2013, 13:24, edited 1 time in total.
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby IvanLis on 12 Feb 2013, 09:44

Sergey Ivanov wrote:вопрос у меня такой: можно ли как-то сделать так, чтобы эта программа была в :labview: , а не отдельным ехе ? как её можно туда запихать ? код , как я понимаю, можно через C node, а как вот импортировать окно, в котором отображается модель и выбирается гранб я вообще не знаю.

По хорошему...
Нужно переписать програмулину, и запихнуть ее в библиотеку.
Что бы она была как внешняя функция, которая принимает два параметра: 1. путь к модели; 2. "зернистость"
И возвращала массив картинок (стопка слоев). Каждая картинка, это 2D (boolean) массив.
А потом к функции обращаться из :labview: , передавая ей параметры и принимая решение.

Это наверное самое оптимальное решение.
User avatar
IvanLis
professor
professor
 
Posts: 4573
Joined: 02 Dec 2009, 17:44
Location: СССР
Medals: 7
Activity (2) Professionalism (1) Tutorials (1) Gold (1) Man of the year 2012 (1)
Автор (1)
LabVIEW Version: 2010
Karma: 722
hardware VIP bloggers teachers

Re: Делаю 3D принтер

Postby Sergey Ivanov on 12 Feb 2013, 10:01

эх, я вот тоже об этом думал, если иначе не получится
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 12 Feb 2013, 10:01

IvanLis wrote:Что бы она была как внешняя функция, которая принимает два параметра: 1. путь к модели; 2. "зернистость"


ещё грань выбирать надо
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby IvanLis on 12 Feb 2013, 10:08

Sergey Ivanov wrote:ещё грань выбирать надо

я не запускал, стоит Linux
в описании этого не написано
подумал, что определяется осями координат в модели
User avatar
IvanLis
professor
professor
 
Posts: 4573
Joined: 02 Dec 2009, 17:44
Location: СССР
Medals: 7
Activity (2) Professionalism (1) Tutorials (1) Gold (1) Man of the year 2012 (1)
Автор (1)
LabVIEW Version: 2010
Karma: 722
hardware VIP bloggers teachers

Re: Делаю 3D принтер

Postby Sergey Ivanov on 12 Feb 2013, 10:13

в описании забыл написать (

в видео есть.

грань выбирать обязательно надо
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 13 Feb 2013, 08:40

у меня тут вопрос возник.

я открываю один слой. и пытаюсь управлять лазером. НО я хочу управлять по-умному а не как сейчас.

как сейчас: я считываю каждый пиксель (координаты его) и смотрю, включён ли лазер. если включён, то включаю, если выключен, то выключаю.
всё бы хорошо, но для того, чтобы просканировать картинку, которая в приложении, понадобится 29929 шагов (картитнка относительно маленькая 173х173). лазером управляет так называемый гальванометрический сканатор ( два зеркальца). максимальная скорость у него 12000 точек в сек. то есть чуть больше 2 сек. при том, новую строчку я начинаю сканировать слева. в приложении :vi: , если паузу поставить 10 мс, то видно будет.

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

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

или допустим, в строчке у нас две области с выключенным лазером и одна с включённым, то мы задаём всего 4 точки (вместо 173), соответсвенно, между ними включаем или выключаем лазер.

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

думаю, вот так:
строчка 0
например, лазер выключен с точки 0 по точку 50
включён с точки 51 до точки 100
выключен с точки 101 до точки 173

запись такая будет:

1 0-0-32*1-33-64*0-65-AD

тут:
первая цифра 0 - номер строки
0 лазер выключен
- разделитель
0 координата первой точки
-разделитель
32 координата второй точки в HEX (50)
* разделитель

1 лазер включили
- разделитель
33 координата первой точи в HEX (51)
- разделитель
64 координата второй точки в HEX (100)

0 лазер выключили
- разделитель
65 координата первой точи в HEX (101)
- разделитель
AD координата второй точки в HEX (173)

как-то так, в общем.
всем спасибо

read image.rar
(15.24 KiB) Downloaded 145 times
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Jakob Brontfeyn on 13 Feb 2013, 12:12

Я видел в Германии нечто похожее, а именно
в стеклянном блоке примерно 5 Х 5 Х 10 см
рисуется обьемная довольно сложная скульптура лазерным лучем.
Лазер для глаза невидим, но в месте его нахождения стекло
видимо быстро кристаллизуется(белеет) длина волны лазера?
Видимо это ноу-хау.
Вся устанока, довольно компактная, управляется компьютером
видел пару раз у гравера в сувенирном магазине и на выставках.
Можно например индивидуальный заказ голова клиента замурованная в стекле.
Задай в Ютубе
"Лазерная графика в стекле"
смотри также в гугле и википедии
User avatar
Jakob Brontfeyn
expert
expert
 
Posts: 1695
Joined: 28 Feb 2008, 11:01
Medals: 6
Activity (1) Gold (1) Silver (2) Black (2)
Karma: 226
VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 13 Feb 2013, 12:21

Jakob Brontfeyn, вы, наверно, такой принцип имели в виду:

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


у меня немного иное.
http://youtu.be/p7PcrbWG8EM (вместо подвижнго портала будут отклоняемый луч)
http://youtu.be/wrZiAz15v2Y
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 09 May 2013, 22:34

В общем, удалось мне провести первую печать !
Суть в том, что сначала управление у меня было по строкам, но внутри строки управление лазером осуществлялось "по зонам", типа векторно, поэтому, эта зону лазер "пролетал" быстро и полимер не полимеризовался. Сейчас я сделал "по точкам", типа растр. Появилась возможность задания скорости перемещеня лазера по точкам.
Кого интересует, могу описать подробнее (с картинками более подробно).
Вот видео:


Немного картинок:

20130509_144546.jpg

20130509_145641.jpg

20130509_145721.jpg

20130509_145850.jpg


До этого было вот так:
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Jakob Brontfeyn on 11 May 2013, 10:19

Как бы чего не вышло ...
http://www.lenta.ru/news/2013/05/10/blueprints/
User avatar
Jakob Brontfeyn
expert
expert
 
Posts: 1695
Joined: 28 Feb 2008, 11:01
Medals: 6
Activity (1) Gold (1) Silver (2) Black (2)
Karma: 226
VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 11 May 2013, 12:20

Я не собираюсь печатать пистолеты, и сомневаюсь, что из него можно было бы выстрелить, как из настоящго (в плане меткости с большого расстояния).
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 21 May 2013, 13:51

Потихоньку разбираюсь с остальными приводами будущего изделия (3D принтера). Вот заставил работать шаговый мотор на заданное количество шагов. Немного доделал вертикальную ось, отправил детальки (в виде чертежей) на производство для оценки. Прогу написал, естественно, в :labview: , залил её на LM3S8962, запустил в режиме Debug и управлял как хотел.


1.JPG
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 26 May 2013, 02:57

Сегодня занимался софтовой частью 3D принтера, а именно, написанием прошивки для микроконтроллера.
Что же он делает ?
1. Читает файлы с флеш карты. Если карта не вставлена, то сообщает об этом.
2. Составляет список файлов с расширением *.P3D (Print 3D). Это и есть управляющая программа для управления гальванометрами (2 оси), включением/выключением лазера, управлениея шаговым двигателем (3 ось). Остальные файлы микроконтроллер игнорирует.
3. Позволяет выбрать любой файл и запустить его.
В следствие того, что файлы не маленькие (от 500 кб) их нельзя целиком загрузить в память контроллера и работать с ним, поэтому, читаем по частям (сейчас часть сделана 200 байт, пларнирую увеличить до 5 кб).

ЗЫ всё написано на :labview: :crazy:
могу дать исходники (корявые) если кому интересно
ЗЫЫ (для себя) - упорядочить файлы в алфавитном порядке, исправить ошибку (вместо Files no found надо files not found)



20130526_030441.jpg

20130526_030514.jpg
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Re: Делаю 3D принтер

Postby Sergey Ivanov on 10 Jul 2013, 09:55

давно не писал )
пишу


Закончил, вроде как, с электроникой 3D принтера. Собрал всё в кучу - работет. Чему я очень рад. Осталось дособирать механику и можно будет запускать его. Описание процесса в видео.

кстати, весь софт, для компа и микроконтроллера сделан на :labview: :crazy:
Image

http://youtu.be/t2yvnl4dbY8
Last edited by Sergey Ivanov on 10 Jul 2013, 09:57, edited 1 time in total.
Добро пожаловать на http://rk-stud.ru/
User avatar
Sergey Ivanov
expert
expert
 
Posts: 1193
Joined: 01 Mar 2009, 20:54
Location: Санкт-Петербург, Кронштадт
Medals: 5
Activity (1) Professionalism (1) Gold (2) Автор (1)
LabVIEW Version: 2013
Karma: 117
hardware VIP

Next

Return to Проекты

Who is online

Users browsing this forum: No registered users and 1 guest

cron