KR101696560B1 - 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치 - Google Patents

3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치 Download PDF

Info

Publication number
KR101696560B1
KR101696560B1 KR1020150183944A KR20150183944A KR101696560B1 KR 101696560 B1 KR101696560 B1 KR 101696560B1 KR 1020150183944 A KR1020150183944 A KR 1020150183944A KR 20150183944 A KR20150183944 A KR 20150183944A KR 101696560 B1 KR101696560 B1 KR 101696560B1
Authority
KR
South Korea
Prior art keywords
processes
dimensional
dimensional model
unit groups
height value
Prior art date
Application number
KR1020150183944A
Other languages
English (en)
Inventor
김성석
양순옥
Original Assignee
서경대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서경대학교 산학협력단 filed Critical 서경대학교 산학협력단
Priority to KR1020150183944A priority Critical patent/KR101696560B1/ko
Application granted granted Critical
Publication of KR101696560B1 publication Critical patent/KR101696560B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

본 발명의 일 실시예에 의하면, 3 차원 모델을 3 차원 프린터용으로 시간-효율적으로 변환 가능할 수 있는 효과가 있다. 이를 위해 특히, 본 발명의 일 실시예는 N+1 개의 프로세스에 기반하여 소정 3 차원 모델에 대하여 3 차원 공간 좌표로 구성된 페이셋 집합 파일을 분산처리 하여 3 차원 프린터 헤드의 움직임 또는 동작에 대한 명령어 코드로 변환하는 단계(S10)를 포함하는 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법을 포함한다.

Description

3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치{DATA PROCESSING METHOD FOR 3 DIMENSIONAL PRINTING AND 3 DIMENSIONAL PRINTING DEVICE USING THE SAME METHOD}
본 발명은 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치에 관한 것이다.
3 차원 프린팅(3 Dimensional Printing)은 연속적인 계층의 물질을 뿌리면서 3 차원 물체를 만들어내는 제작 기술을 의미하며, 1984년 개발되었다. 3 차원 프린팅 분야는 2000년대 후반부터 각종 기관에서 미래 유망기술로 부각되기 시작하였다. 2007년 기술출현기 시대를 거쳐 2012년 기술 기대 정점 구간의 변곡점에 도달한 모습을 보였으며, 2013년에는 ‘개인용 3 차원 프린터’와 ‘3 차원 바이오프린터’ 기술로 나누어 기술이 성숙도 단계에 진입했으며, 일반인들을 포함한 시장의 기대감도 증가하고 있다.
3 차원 프린터는 시제품의 제작 비용 및 제작 시간 절감, 다품종 소량 생산(Mass Customization)·개인 맞춤형 제작 용이, 복잡한 형상 제작, 완제품 제작 시의 제조 공정 간소화 및 이에 따른 인건비·조립 비용 절감의 관점에서 많은 장점을 보유하고 있다. 이는 3 차원 디자인 파일만 있다면 시제품 제작이 용이할 뿐만 아니라, 매번 디자인이 다른 제품을 생산하더라도 추가 비용이 거의 발생하지 않기 때문이다.
3 차원 프린터 시스템의 판매와 서비스를 통한 매출이 2009~2013년 사이 두 배로 급격히 성장하고 있으나, 3 차원 프린터 시스템의 실제 활용은 미국, 독일 및 일본 3개국이 60% 이상을 차지하고 있다. 3 차원프린터 업체는 산업용 프린터를 중심으로 성장하여 왔으나, 최근 원천특허가 속속 만료됨에 따라 저가의 개인용 3 차원프린터 시장이 급속히 확대되고 있으며 2014년 Wohlers 발표에 의하면 시장규모는 2013년 30.7억 달러에서 2018년에는 128억 달러에 이를 것으로 보고 있다.
3 차원 프린터는 밀링이나 절삭이 아닌, 기존 잉크젯 프린터에서 쓰이는 것과 유사한 적층 방식으로 입체물을 제작하는 장치를 의미한다. 컴퓨터로 제어되기 때문에 만들 수 있는 형태가 다양하고 다른 제조 기술에 비해 사용하기 쉽다. 3 차원 프린터를 사용하기 위해서는 출력하고자 하는 대상에 대한 3 차원 모델 데이터를 제작한 후, 이를 3 차원 프린터의 동작 명령 G-code로 변환하여야 한다. 최종적으로 이 코드에 의해 프린터가 동작하면서 대상물을 출력하게 된다. 이 기술의 주요 단점은 제작 속도가 상대적으로 느리고, 적층 구조로 인해 표면이 매끄럽지 못하다는 점 등이 있다.
3 차원 프린팅과 관련된 데이터 처리 분야는 본래 3 차원 프린터를 위한 것이라기보다는 3 차원 이미지 제작과 관련되어 있다. 실제 최근 3 차원 프린터에 대한 관심이 매우 커지는 상황과 비교해 볼 때, 아직 3 차원 프린터를 위한 데이터 처리는 그렇게 많지 않다. 현재까지 데이터 처리와 관련된 주요한 연구는 크게 두 가지로 구분할 수 있다.
첫째로, 특정대상을 표현하기 위한 3 차원 모델 제작이 있다.
일반적으로 3 차원 프린팅을 위해 3 차원 모델 데이터를 생성하는 방법은 전용 소프트웨어(CAD 등)를 활용하여 직접 개발하는 방법, 3 차원 스캐너를 활용하는 방법, 여러 장의 2D 이미지를 이용하여 3 차원 모델을 생성하는 방법으로 구분할 수 있다. 전용 소프트웨어를 활용하는 방법 외에는 모두 실제 출력할 대상이 있어야 한다는 단점이 있다. 하지만 일반인들이 3 차원 프린터를 사용하기 위해 전용 소프트웨어 사용법을 능숙하게 익혀야 한다는 것은 다소 무리한 요구일 수 있다. 따라서 이와 관련된 주요한 연구들은 손쉽게 3 차원 모델을 제작할 수 있는 기법 제안과 밀접하게 관련되어 있다.
둘째로, 3 차원 프린팅 출력물을 위한 데이터 처리가 있다.
초기 3 차원 모델 데이터는 주로 Computer-Aid Design(CAD) 소프트웨어로 제작되었으며, 이 데이터가 얇은 레이어로 조각난 형태로 저장되었다. 이 데이터가 3 차원 프린터 출력용으로 제작되었다면, 출력물의 요구조건을 반영하고 있어야 한다. 예를 들면, 3 차원 프린터로 제작될 제품이 기 지정된 기계적인 스트레스를 버텨야 한다면, 이 수치도 STL 파일(Surface Tessellation Language file)이나 AMF 파일(Additive Manufacturing File) 내의 3 차원 형상과 함께 저장되어야 한다. 이와 관련된 데이터 처리는 대부분 장비나 재료 분야의 연구에 종속되어 있다. 최근에는 주로 금속을 용해시켜 합금을 만드는 과정에서 일부 연계가 되어 있으며, 이 분야는 크게 3가지로 구분된다. Powder bed fusion, direct metal deposition, metal sheet lamination 이 그것이다. 이러한 기법들은 대개 자동화 기법과 컴퓨터 제어에 크게 의존하고 있다. 사용중인 ALM(Additive Layer Manufacturing) 기법에 따라 다양한 제작 요소들인 출력물에 영향을 주고, 결과적으로 출력물의 물리적 속성도 차이가 발생하게 된다.
하지만, 이러한 연구들은 데이터 변환을 위한 데이터 처리와는 무관하며, 표현하고자 하는 대상에 대한 3 차원 모델 생성이거나, 혹은 특정한 대상에서 요구하는 조건을 만족할 수 있는 장비나 재료 분사 등을 제어하기 위한 데이터 처리 쪽의 연구들임을 알 수 있다.
결국, 3 차원 모델의 크기 및 정밀도에 따라 3 차원 프린팅에 소요되는 시간이 과다하게 많이 소요될 수 있음을 인지할 수 있다면, 이러한 문제를 해결하기 위해 3 차원 모델 데이터의 변환 처리와 관련된 연구의 필요성은 필수적이다.
본 발명은 상기와 같은 필요성에 의해 안출된 것으로서, 본 발명의 목적은 3 차원 모델을 3 차원 프린터용 명령어로 시간-효율적으로 변환 가능할 수 있는 데이터 처리 방법을 제공하는 데 있다.
상기와 같은 본 발명의 목적은, N+1 개의 프로세스에 기반하여 소정 3 차원 모델에 대하여 3 차원 공간 좌표로 구성된 페이셋 집합 파일을 분산처리 하여 3 차원 프린터 헤드의 움직임 또는 동작에 대한 명령어 코드로 변환하는 단계(S10)를 포함하는 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법을 제공함으로써 달성될 수 있다. 여기서, N+1은 분산처리 작업에 참여하는 프로세스의 총 수를 의미한다.
그리고, 명령어 코드 변환 단계(S10)는,
프로세스 0이 페이셋 집합 파일을 N 개의 부분 파일로 나누어 프로세스 1 내지 프로세스 N에게 전달하는 단계(S110); 프로세스 1 내지 프로세스 N 각각이 페이셋 집합 파일의 부분 파일을 높이값에 따라 T 개의 단위 그룹들로 구분하여 프로세스 0에게 전달하는 단계(S120); 프로세스 0이 T 개의 단위 그룹들을 합친 후 T 개의 프로세스들에게 배분하여 전달하는 단계(S130); T 개의 프로세스 각각이 대응되는 T 개의 단위 그룹들을 전달받아 그룹별 동작명령어 코드로 변환하는 단계(S140); T 개의 프로세스 각각이 변환된 그룹별 동작명령어 코드를 프로세스 0에게 전달하는 단계(S150); 및 프로세스 0이 변환된 그룹별 동작명령어 코드를 합쳐 최종 동작명령어 코드를 완성하는 단계(S160);를 포함한다. 여기서, T는 데이터의 분산처리를 위해 분할된 단위 그룹의 개 수를 의미하며, S120 단계 이후에는 T 개의 단위 그룹 각각에 매칭되는 T 개의 프로세스 각각은 상호 영향을 주지 않는다. 만약, N≤T 일 경우 프로세스 0은 먼저 작업이 끝난 프로세스 k(1≤k≤N)에게 T 개의 단위 그룹 중 나머지 다른 단위 그룹을 다시 전달할 수 있다.
그리고, T 개의 단위 그룹들 각각은 단위 높이값이 다음의 수학식 1로 나타내질 수 있다.
[수학식 1]
단위 높이값 =
Figure 112015125885100-pat00001
수학식 1에서 Zmax는 3 차원 모델의 최대 높이값이고, T는 단위 그룹의 개수이다.
S120 단계와 S130 단계 사이에,
3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법은 프로세스 1 내지 프로세스 N 각각이 전달받은 페이셋 집합 파일의 부분 파일에 대하여 페이셋 인덱스 정보를 구성하는 단계(S125)를 더 포함할 수 있다.
한편, S125 단계에서,
페이셋 인덱스 정보는 페이셋의 3 점 중 최소 높이값과 최대 높이값의 쌍으로 구성될 수 있다.
또한, 본 발명의 목적은 3 차원 모델 데이터의 처리 방법을 이용한 3 차원 프린팅 장치를 제공함으로써 달성될 수 있다.
상기와 같은 본 발명의 일 실시예에 의하면, 3 차원 모델을 3 차원 프린터용으로 시간-효율적으로 변환 가능할 수 있는 효과가 있다.
또한, 3 차원 프린팅을 위한 데이터 변환에 분산 처리를 적용할 수 있는 3 차원 프린팅 장비의 제작이 가능해진다.
도 1은 3 차원 모델을 다수의 삼각형으로 된 페이셋 집합으로 표현한 STL 파일을 설명하기 위한 도면이고,
도 2는 3 차원 모델의 정밀도에 따라 변환된 G 코드 데이터의 크기를 표로 나타낸 도면이고,
도 3은 본 발명인 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법을 개략적으로 나타낸 도면이고,
도 4는 본 발명인 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법의 일 실시예를 순차적으로 나타낸 순서도이고,
도 5는 본 발명인 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 중 페이셋 인덱스를 표현한 그래프를 나타낸 도면이다.
본 발명의 일 실시예는 N+1 개의 프로세스에 기반하여 소정 3 차원 모델에 대하여 3 차원 공간 좌표로 구성된 페이셋 집합 파일을 분산처리 하여 3 차원 프린터 헤드의 움직임 또는 동작에 대한 명령어 코드로 변환하는 단계(S10)를 포함하는 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법에 관한 것이다.
3 차원 프린팅 및 3 차원 모델 데이터
본 실시예를 자세히 설명하기 위해 우선, 본 실시예가 적용되는 3 차원 프린팅 및 3 차원 모델 데이터에 대해 설명한다.
도 1은 3 차원 모델을 다수의 삼각형으로 된 페이셋(facet) 집합으로 표현한 STL 파일을 설명하기 위한 도면이다. 도 1에 도시된 바와 같이, 도 1 a)에서의 일반적인 3 차원 모델은 표현하고자 하는 대상에 대하여 도 1의 b), c), d) 삼각형처럼 표현된 페이셋의 집합으로 표현된다. 정밀도가 높거나 대상의 크기가 클 경우에는 3 차원 모델 데이터 내에 포함된 페이셋의 개수가 증가하게 된다. 하나의 페이셋은 3개의 3 차원 공간 좌표로 구성되며, 일반적인 3 차원 모델 디자인 소프트웨어에 의해 생성된 STL 파일은 이진 형식(binary format)으로 되어있다.
명령어 코드의 일예인 G 코드(G-code)는 수치제어(NC) 프로그래밍 언어에서 널리 사용되고 있다. 이는 대상 장비에 대하여 어느 방향으로 얼마의 속도로 움직이면서 무슨 동작을 할 것인지를 지정하는 언어이다.
일반적인 3 차원 프린터에서 플레이트(plate)란 평면이 위-아래(Z 축) 방향으로 일정 간격으로 움직였다 멈추며, 멈춘 상태에서 프린터 헤드가 이동하면서 잉크를 분출하여 대상을 출력하게 된다. 따라서 G 코드는 3 차원 프린터의 움직임이나 동작에 대한 명령이며, 대개 플레이트를 일정 간격으로 움직이는 기능과, 플레이트가 멈추었을 때 헤드가 3 차원 모델 데이터에 적합하게 이동하면서 잉크를 뿌리는 명령으로 구성된다. 물론 그 외에도 3 차원 프린터의 기능에 따라 더 다양한 명령이 지원될 수도 있다.
대상의 정밀도가 G 코드에 미치는 영향
도 2는 3 차원 모델의 정밀도에 따라 변환된 G 코드 데이터의 크기를 표로 나타낸 도면이다. 이러한 3 차원 모델의 정밀도가 G 코드에 미치는 영향은 도 2에 도시된 표로서도 알 수 있는데, 도 2에 도시된 표는 Cura ver.14.09를 이용하여 인쇄될 STL 파일의 Accuracy를 변경하여 변환된 G 코드 파일의 크기를 비교한 결과를 나타낸 것이다. 정밀도에 영향을 주는 두 요소는 Layer height와 Fill Density(%)이다. 이는 생성되는 G 코드에서 플레이트의 이동 간격과 잉크가 뿌려지는 간격을 의미한다. 좀 더 구체적으로 Quality 및 fill 메뉴에 shell thickness와 Bottom/top thickness는 최종 인쇄결과물의 상태에 거의 영향을 주지 않기 때문에 본 실험에서 변경하지 않았다. 따라서 주 영향요인인 layer height, fill density만 변경하여 stl 파일에서 g-code 변환 실험을 진행하였다.
도 2의 표에 따른 변환 결과는 fill density에 비해 Layer height이 데이터 크기에 미치는 영향이 더 큼을 알 수 있다. 이는 단순히 결과로 나타난 g-code의 크기가 커졌음을 의미하지만, 실제 stl파일 자체의 크기가 더 커지거나 더 정밀해진다면, g-code로의 변환 과정에 큰 영향을 미칠 수 있음을 알 수 있었다. 왜냐하면 생성된 g-code의 크기가 커진다는 것은 그만큼 동일한 stl 파일 내의 페이셋들로부터 많은 명령어를 생성해야 함을 의미하기 때문이다. 만약 stl 파일 내 페이셋의 개수 자체가 늘어난다면 이는 g-code의 개수도 더 많아질 것이며, 당연히 변환에 걸리는 시간도 길어질 것임이 명백하다.
3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법
도 3은 본 발명인 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법의 일 실시예를 개략적으로 나타낸 도면이다. 본 실시예를 개략적으로 설명하면, 도 3에 도시된 바와 같이, 프로세스 0이 STL 파일을 열고 N 개의 프로세스에게 작업을 분배하면, 이후 프로세스 n(프로세스 1 ~ 프로세스 N)이 STL 파일에서 페이셋을 읽어들여 페이셋들을 Z 축(높이 축) 값에 따라 T 개의 그룹으로 구분하는 작업을 수행한다. 이후 다시 프로세스 0이 N 개의 프로세스 각각으로부터 전달받은 T 개의 페이셋 그룹을 통합하는 작업을 수행하고 이어서 T 개의 프로세스에게 T 개의 페이셋 그룹을 각 배분하는 작업이 진행된다. 이어서, 프로세스 n(T≥n≥1)은 전달받은 페이셋 그룹에 대하여 G 코드를 생성하여 프로세스 0에게 전달하면 프로세스 0은 각 프로세스로부터 전달받은 G 코드를 합쳐 최종적인 동작 명령어 코드를 완성하게 된다.
도 4는 본 발명인 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법의 일 실시예를 순차적으로 나타낸 순서도이다. 도 4를 참조하여 본 실시예 중 명령어 코드 변환 단계에 대하여 더 구체적으로 설명한다.
우선 본 실시예는 N+1 개의 프로세스에 기반하여 소정 3 차원 모델에 대하여 3 차원 공간 좌표로 구성된 페이셋 집합 파일을 분산처리 하여 3 차원 프린터 헤드의 움직임 또는 동작에 대한 명령어 코드로 변환하는 단계(S10)를 포함하는 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법에 관한 것인데, 이 중에서 명령어 코드 변환 단계(S10)는 다음과 같이 S110 내지 S160의 단계들을 포함하여 구성될 수 있다.
우선, 프로세스 0이 페이셋 집합 파일을 N 개의 부분 파일로 나누어 프로세스 1 내지 프로세스 N에게 전달한다(S110).
다음, 프로세스 1 내지 프로세스 N 각각이 페이셋 집합 파일의 부분 파일을 높이값에 따라 T 개의 단위 그룹들로 구분하여 프로세스 0에게 전달한다(S120).
다음, 프로세스 0이 T 개의 단위 그룹들을 합친 후 T 개의 프로세스들에게 배분하여 전달한다(S130). 여기서, T 개의 단위 그룹들 각각은 단위 높이값이 다음의 수학식 1로 나타내질 수 있다.
[수학식 1]
단위 높이값 =
Figure 112015125885100-pat00002
상기 수학식 1에서 Zmax는 3 차원 모델의 최대 높이값이고, T는 단위 그룹의 개수이다.
다음, T 개의 프로세스 각각이 대응되는 T 개의 단위 그룹들을 전달받아 그룹별 동작명령어 코드로 변환한다(S140).
다음, T 개의 프로세스 각각이 변환된 그룹별 동작명령어 코드를 프로세스 0에게 전달한다(S150).
마지막으로, 프로세스 0이 변환된 그룹별 동작명령어 코드를 합쳐 최종 동작명령어 코드를 완성함으로써(S160) 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법의 일 실시예가 수행된다.
전술한 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법에 관한 알고리즘은 완전한 분산 처리가 가능하도록 작용한다. 즉, 페이셋 집합 파일에 대하여 그룹핑 작업을 분산적으로 처리함과 동시에 T 개의 단위 그룹들에 대하여 동작 명령어 코드로의 변환 작업을 분산 처리할 수 있게 된다. 이는 플레이트의 높이에 따른 G 코드 생성 작업이 완전히 독립적으로 수행될 수 있기 때문이기도 하다. 이러한 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법은 나아가 클라우드 서버를 이용한 고속처리로 확장될 수도 있다.
인덱싱을 통한 3 차원 모델 데이터의 처리 방법
전술한 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법의 일 실시예 중 S120 단계와 S130 단계 사이에는, 프로세스 1 내지 프로세스 N 각각이 전달받은 페이셋 집합 파일의 부분 파일에 대하여 페이셋 인덱스 정보를 구성하는 단계를 더 포함하여 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법을 구성할 수도 있다. 이 경우, S130 단계에서 프로세스 0은 이 페이셋 인덱스 정보를 T 개의 단위 그룹 각각의 정보와 함께 통합 구성할 수 있으며, 따라서 S150 단계를 수행하는 각각의 프로세스가 많은 수의 페이셋 데이터를 검사하는 데 유용하다.
즉, 출력할 대상의 높이가 Zmax 일 때, 그룹핑 작업은 각 페이셋들을 Z 축의 값을 기준으로 [0,
Figure 112015125885100-pat00003
], [
Figure 112015125885100-pat00004
,
Figure 112015125885100-pat00005
×2], ... [
Figure 112015125885100-pat00006
,
Figure 112015125885100-pat00007
×(T-1)], [
Figure 112015125885100-pat00008
,
Figure 112015125885100-pat00009
×T]와 같이 T 개의 그룹 중 하나에 삽입하는 과정으로 수식화 할 수 있는데, 이 때 페이셋의 개수가 많아진다면 하나의 그룹 내에 상당히 많은 수의 조그만 크기의 페이셋들이 존재하게 되므로 이를 빠르게 처리하는 것도 성능 향상에 도움이 될 수 있다.
이하 도 5를 참조하여 페이셋 인덱스 정보 구성의 예를 들어 설명한다. 출력하고자 하는 대상의 크기를 7(=Zmax)이며, 그룹핑이나 G 코드 변환에 참여하는 프로세스의 개수를 각각 7개라고 가정하면, 이 경우 각 프로세스는 STL 파일의 1/7을 받아서 각 페이셋 별로 그룹핑을 수행하면서 필요한 인덱스 정보를 수집한다. 즉, 페이셋 t 에 대하여 ⅰ) 프로세스 ID와 고유값을 조합하여 식별자 IDXt 를 생성하고, ⅱ) 세 점 중에서 가장 작은 Z 값과 가장 큰 Z 값의 쌍 (Zmin, Zmax)을 추출한다.
Z축을 기준으로 가장 작은 값과 가장 큰 값은 당연히 Zmin ≤ Zmax 이므로, Z-Z' 평면에서 위와 같이 추출한 (Zmin, Zmax) 데이터를 하나의 점으로 표시한다면 도 5의 (a)와 같이 직선 Z'=Z을 기준으로 위쪽 면에만 데이터가 존재하게 된다. 한 페이셋의 작은 Z 값이 0.5, 가장 큰 Z 값이 1.6이라고 하고 이를 점으로 표시하면 (0.5, 1.6)이 되는데 이는 당연히 직선 Z'=Z의 윗 부분에 찍히게 된다. 또한 대부분의 페이셋이 대상의 아주 조그만 면만 표현한다고 가정했을 때 Zmax-Zmin 값은 그렇게 크지 않게 될 것이다. 당연히 다수의 페이셋들은 도 5 b)의 ①~⑦ 영역에 표현되게 될 것이다. 따라서, 이 ①~⑦ 영역을 세분화하여 그룹핑을 해둔다면 이후 G 코드 생성 작업에서 필요한 페이셋을 검색하는 것이 매우 편리해질 수 있다.
이러한 방식으로 인덱스를 구성할 때 얻을 수 있는 부수적인 장점은 Z축에 평행한 페이셋에 대한 연산을 쉽게 처리할 수 있다는 점이다. 예를 들어 한 페이셋의 Z 값이 모두 같은 값인 1.5라면, 이는 Z 축과 평행하며, 이 페이셋은 오직 플레이트가 1.5위치에 도착했을 때에만 고려하면 된다. 이러한 페이셋들은 도 5 (a)에서 z'=z 선분위에 위치하게 된다. 따라서 이 선분에 해당하는 페이셋들은 따로 처리하면 되므로, 고려해야할 데이터의 양이 줄어들게 된다.
이상 첨부된 도면을 참조하여 본 발명의 실시 예를 설명하였지만, 상술한 본 발명의 기술적 구성은 본 발명이 속하는 기술 분야의 당 업자가 본 발명의 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해되어야 한다. 아울러, 본 발명의 범위는 상기의 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어진다. 또한, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (6)

  1. N+1 개의 프로세스에 기반하여 소정 3 차원 모델에 대하여 3 차원 공간 좌표로 구성된 페이셋 집합 파일을 분산처리 하여 3 차원 프린터 헤드의 움직임 또는 동작에 대한 명령어 코드로 변환하는 단계(S10)를 포함하되,
    상기 N+1 개의 프로세스는 프로세스 0과 프로세스 1 ~ N 으로 구성되는 복수의 프로세스로 정의되고, 상기 N은 2 이상의 정수값이며,
    상기 명령어 코드 변환 단계(S10)는,
    상기 프로세스 0이 상기 페이셋 집합 파일을 N 개의 부분 파일로 나누어 상기 프로세스 1 내지 상기 프로세스 N에게 각각 전달하는 단계(S110);
    상기 프로세스 1 내지 상기 프로세스 N 각각이 상기 페이셋 집합 파일의 부분 파일을 높이값에 따라 2 이상의 정수값인 T 개의 단위 그룹들로 구분하여 상기 프로세스 0에게 전달하는 단계(S120);
    상기 프로세스 0이 상기 T 개의 단위 그룹들을 합친 후 상기 T 개의 단위 그룹들 갯수에 대응하는 T 개의 프로세스들에게 각 배분하여 전달하는 단계(S130);
    상기 T 개의 프로세스 각각이 대응되는 상기 T 개의 단위 그룹들을 전달받아 그룹별 동작명령어 코드로 변환하는 단계(S140);
    상기 T 개의 프로세스 각각이 상기 변환된 그룹별 동작명령어 코드를 상기 프로세스 0에게 전달하는 단계(S150); 및
    상기 프로세스 0이 상기 변환된 그룹별 동작명령어 코드를 합쳐 최종 동작명령어 코드를 완성하는 단계(S160);를 포함하고,
    상기 T 개의 단위 그룹들 각각은 단위 높이값이 다음의 수학식 1로 나타내지는 것을 특징으로 하는 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법:
    [수학식 1]
    단위 높이값 =
    Figure 112016076821612-pat00010

    상기 수학식 1에서 상기 Zmax는 3 차원 모델의 최대 높이값이고, 상기 T는 단위 그룹의 개수로서 2 이상의 정수값이다.
  2. 삭제
  3. 삭제
  4. 제1 항에 있어서,
    상기 S120 단계와 S130 단계 사이에,
    상기 프로세스 1 내지 상기 프로세스 N 각각이 전달받은 상기 페이셋 집합 파일의 부분 파일에 대하여 페이셋 인덱스 정보를 구성하는 단계(S125)를 더 포함하는 것을 특징으로 하는 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법.
  5. 제4 항에 있어서,
    상기 S125 단계에서,
    상기 페이셋 인덱스 정보는 페이셋의 3 점 중 최소 높이값과 최대 높이값의 쌍으로 구성되는 것을 특징으로 하는 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법.
  6. 제1 항, 제4항 및 제5 항 중 어느 한 항의 3 차원 모델 데이터의 처리 방법을 이용한 3 차원 프린팅 장치.
KR1020150183944A 2015-12-22 2015-12-22 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치 KR101696560B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150183944A KR101696560B1 (ko) 2015-12-22 2015-12-22 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150183944A KR101696560B1 (ko) 2015-12-22 2015-12-22 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치

Publications (1)

Publication Number Publication Date
KR101696560B1 true KR101696560B1 (ko) 2017-01-16

Family

ID=57993554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150183944A KR101696560B1 (ko) 2015-12-22 2015-12-22 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치

Country Status (1)

Country Link
KR (1) KR101696560B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114407369A (zh) * 2022-01-29 2022-04-29 上海漫格科技有限公司 一种基于三维打印的三维模型的z轴补偿方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Journal of KIIT, Vol. 12, No.5, pp.149-156, May 31 2014, 'Generation of 3D Models for 3D Printers based on the Characteristics of Objects'* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114407369A (zh) * 2022-01-29 2022-04-29 上海漫格科技有限公司 一种基于三维打印的三维模型的z轴补偿方法

Similar Documents

Publication Publication Date Title
Kulkarni et al. A review of process planning techniques in layered manufacturing
US20170266883A1 (en) Information processing apparatus, additive manufacturing system, and information processing method
US7406361B2 (en) Rapid prototyping method and apparatus using V-CAD data
US10326910B2 (en) Using three-dimensional threshold matrices in the production of three-dimensional objects
CN103950201B (zh) 三维模型单轴方向无限打印方法及系统
CN106600710B (zh) 一种几何网格模型邻接拓扑关联的层切多连通域构建方法
US10252513B2 (en) Combining structures in a three-dimensional object
CN103692654B (zh) 立体打印技术制作三维周期结构超材料的方法
CN104890237A (zh) 3d打印方法及系统
Micali et al. Fully three-dimensional toolpath generation for point-based additive manufacturing systems
KR101696560B1 (ko) 3 차원 프린팅을 위한 3 차원 모델 데이터의 처리 방법 및 이를 이용한 3 차원 프린팅 장치
JP2017109320A (ja) 情報処理装置、3dプリンタシステム、情報処理方法及びコンピュータプログラム
CN108351908B (zh) 在增材制造中的自支撑
Krishnanand et al. Generation of tool path in fused filament fabrication
Brown et al. Development of a stereolithography (STL) input and computer numerical control (CNC) output algorithm for an entry-level 3-D printer
CN104625047A (zh) 一种新型3d打印机
Luo et al. Trajectory generation and planning for simultaneous 3D printing of multiple objects
CN106926465A (zh) 一种控制增材制造应力变形的分段扫描路径生成方法
CN109049722B (zh) 连续协同的熔融沉积3d打印系统及方法
TWI585558B (zh) 立體列印方法
Srinivasan Automated Model Processing and Localization of Additively Manufactured Parts for Finish Machining.
JP2015208873A (ja) 3次元造形データ生成装置、3次元造形データ生成方法、及び、プログラム
CN206643356U (zh) 一种slm3d打印机
KR20150087526A (ko) 3차원 프린터를 이용한 토목 구조물의 모형제작 방법
Roberts et al. Precursor Additive Manufacturing Inventions

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20200108

Year of fee payment: 4