a topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

14
A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing S.H. Choi * , H.H. Cheung Department of Industrial and Manufacturing Systems Engineering, The University of Hong Kong, Pokfulam Road, Hong Kong Received 6 January 2005; accepted 29 August 2005 Abstract This paper proposes a topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing (MMLM) of heterogeneous prototypes. The approach facilitates control of MMLM and increases the fabrication efficiency of complex objects by generating multi-toolpaths that avoid redundant tool movements and potential collisions. It uses a topological hierarchy-sorting algorithm to group complex multi-material slice contours into families connected by a parent-and-child relationship. Subsequently, a sequential toolpath planning algorithm generates multi-toolpaths for sequential deposition of materials without redundant tool movements. To reduce build time further, a concurrent toolpath planning algorithm generates collision-free multi-toolpaths to control the tools that deposit materials concurrently. It uses parametric polygons to construct tool envelopes for contour families of the same material property to simplify detection of tool collisions. The tightness of polygons can be controlled to suit the processing speed and the optimality of the resulting concurrent toolpaths. The proposed approach has been implemented as an integral part of a multi-material virtual prototyping (MMVP) system that can process complex slice contours for planning, stereoscopic simulation, and validation of multi-toolpaths. It may be adapted for subsequent control of MMLM processes. q 2005 Elsevier Ltd. All rights reserved. Keywords: Multi-material layered manufacturing; Topological hierarchy; Sequential and concurrent toolpath planning; Virtual prototyping 1. Introduction Multi-material prototypes may be made of materials that change gradually from one type to another, or of a collection of heterogeneous materials. In comparison with single-material prototypes, multi-material prototypes can differentiate clearly one part from others, or tissues from blood vessels of a human organ; and they perform better in rigorous environments [1]. As high value-added products now often involve complex designs while surgical operations become more complicated, multi- material prototypes are especially useful for advanced product development and biomedical applications. It is therefore desirable and timely to develop the multi-material layered manufacturing (MMLM) technology for fabrication of multi- material prototypes [2]. In general, an MMLM machine may consist of two main sub-systems, namely (i) a hardware material-depositing mechanism, and (ii) a computer software system for processing complex slice contours to plan multi-toolpaths for effective control of the material-depositing mechanism. Some researchers have developed experimental MMLM machines for relatively simple objects. [3] developed a discrete multiple material selective laser sintering (M 2 SLS) machine for fabrication of prototypes with discrete multiple materials. [2] proposed a multi-component powder-dispensing device for selective laser sintering (SLS) to make parts of 3D functional gradients. [4] extended the fused deposition modelling (FDM) hardware mechanism to form a fused deposition of multiple ceramics (FDMC) machine that could deposit up to four different materials in a layer of a multi-material ceramic part. However, further development of the control software system would be required to deposit more materials. [5] reported a 3D printing (3DP) machine developed in the Massachusetts Institute of Technology (MIT) that contained a multiple nozzle print-head mechanism for fabrication of objects with local composition control (LCC), such as drug delivery devices and gradient index lenses. For biomedical products, a Multi-nozzle Deposition Manufacturing (MDM) system was proposed for direct fabrication of tissue-engineering scaffold with gradient 3D structure [6]. Some companies have also attempted to produce commercial MMLM machines. Examples include FDMM and MP [7] for electroceramic components, and Computer-Aided Design 38 (2006) 143–156 www.elsevier.com/locate/cad 0010-4485//$ - see front matter q 2005 Elsevier Ltd. All rights reserved. doi:10.1016/j.cad.2005.08.005 * Corresponding author. Tel.: C852 2859 7054; fax: C852 2858 6535. E-mail address: [email protected] (S.H. Choi).

Upload: sh-choi

Post on 26-Jun-2016

216 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

A topological hierarchy-based approach to toolpath planning

for multi-material layered manufacturing

S.H. Choi *, H.H. Cheung

Department of Industrial and Manufacturing Systems Engineering, The University of Hong Kong, Pokfulam Road, Hong Kong

Received 6 January 2005; accepted 29 August 2005

Abstract

This paper proposes a topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing (MMLM) of

heterogeneous prototypes. The approach facilitates control of MMLM and increases the fabrication efficiency of complex objects by generating

multi-toolpaths that avoid redundant tool movements and potential collisions. It uses a topological hierarchy-sorting algorithm to group complex

multi-material slice contours into families connected by a parent-and-child relationship. Subsequently, a sequential toolpath planning algorithm

generates multi-toolpaths for sequential deposition of materials without redundant tool movements. To reduce build time further, a concurrent

toolpath planning algorithm generates collision-free multi-toolpaths to control the tools that deposit materials concurrently. It uses parametric

polygons to construct tool envelopes for contour families of the same material property to simplify detection of tool collisions. The tightness of

polygons can be controlled to suit the processing speed and the optimality of the resulting concurrent toolpaths. The proposed approach has been

implemented as an integral part of a multi-material virtual prototyping (MMVP) system that can process complex slice contours for planning,

stereoscopic simulation, and validation of multi-toolpaths. It may be adapted for subsequent control of MMLM processes.

q 2005 Elsevier Ltd. All rights reserved.

Keywords: Multi-material layered manufacturing; Topological hierarchy; Sequential and concurrent toolpath planning; Virtual prototyping

1. Introduction

Multi-material prototypes may be made of materials that

change gradually from one type to another, or of a collection of

heterogeneous materials. In comparison with single-material

prototypes, multi-material prototypes can differentiate clearly

one part from others, or tissues from blood vessels of a human

organ; and they perform better in rigorous environments [1]. As

high value-added products now often involve complex designs

while surgical operations become more complicated, multi-

material prototypes are especially useful for advanced product

development and biomedical applications. It is therefore

desirable and timely to develop the multi-material layered

manufacturing (MMLM) technology for fabrication of multi-

material prototypes [2].

In general, an MMLM machine may consist of two main

sub-systems, namely (i) a hardware material-depositing

mechanism, and (ii) a computer software system for processing

0010-4485//$ - see front matter q 2005 Elsevier Ltd. All rights reserved.

doi:10.1016/j.cad.2005.08.005

* Corresponding author. Tel.: C852 2859 7054; fax: C852 2858 6535.

E-mail address: [email protected] (S.H. Choi).

complex slice contours to plan multi-toolpaths for effective

control of the material-depositing mechanism.

Some researchers have developed experimental MMLM

machines for relatively simple objects. [3] developed a discrete

multiple material selective laser sintering (M2SLS) machine

for fabrication of prototypes with discrete multiple materials.

[2] proposed a multi-component powder-dispensing device for

selective laser sintering (SLS) to make parts of 3D functional

gradients. [4] extended the fused deposition modelling (FDM)

hardware mechanism to form a fused deposition of multiple

ceramics (FDMC) machine that could deposit up to four

different materials in a layer of a multi-material ceramic part.

However, further development of the control software system

would be required to deposit more materials. [5] reported a 3D

printing (3DP) machine developed in the Massachusetts

Institute of Technology (MIT) that contained a multiple nozzle

print-head mechanism for fabrication of objects with local

composition control (LCC), such as drug delivery devices and

gradient index lenses. For biomedical products, a Multi-nozzle

Deposition Manufacturing (MDM) system was proposed for

direct fabrication of tissue-engineering scaffold with gradient

3D structure [6]. Some companies have also attempted to

produce commercial MMLM machines. Examples include

FDMM and MP [7] for electroceramic components, and

Computer-Aided Design 38 (2006) 143–156

www.elsevier.com/locate/cad

Page 2: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156144

DMDe [8] and LENSe [9] for tooling parts and mould

cavities. These systems are among the pioneering work.

Though they were more suitable for relatively simple parts of

a limited variety of materials, they can be adapted for further

development of the hardware material-depositing mechanism.

However, the main software issue remains to be tackled.

Indeed, a toolpath planning algorithm for effective and efficient

control of MMLM, particularly for complex objects, has yet to

be developed.

Toolpath planning for layered manufacturing is mainly

concerned with (i) contour filling strategy, and (ii) tool

sequencing strategy. Two common approaches to contour

filling strategy are the zigzag toolpaths parallel to a specific

direction, and the spiral toolpaths by inward offsetting of

contours. Indeed, contour-filling strategy has been well studied

[10,11,12]. However, few researchers have attempted to

develop tool-sequencing strategy. An obstacle is how to sort

and group complex slice contours into an appropriate sequence.

[13] introduced a maximum linear intersection algorithm to

link a set of contours for minimising non-cutting laser motion

of the laminated object modelling (LOM) system. This

approach enhanced the efficiency of single-material LOM.

However, it might not be suitable for toolpath planning for

layered manufacturing of multi-material prototypes.

In comparison, toolpath planning for MMLM is much more

complicated, in that it is necessary to process material

information for sequencing an array of tools to deposit specific

materials on the appropriate contours. Without efficient multi-

toolpaths, redundant back-and-forth movements and potential

collisions of tools may occur.

Toolpath planning for MMLM is normally based on 2D

slice contours, which are generally very complex and random.

For each tool to deposit a specific material on the related

contours, it is necessary to identify and relate specific contours

of a slice to a particular tool, such that the area is properly

deposited with the desired material, and at the same time to

detect and avoid possible collisions of tools, which move

otherwise independently to increase efficiency. This is a

complicated task because high value-added products and

biomedical models, such a necklace and a human skull in

Fig. 1, tend to be complex and their slice contours are random

in nature with no explicit topological hierarchy relationship.

1.1. Topological hierarchy of slice contours

As shown in Fig. 2(a), a slice of an object may contain

groups of contours, each of which may have multiple external

(solid) and internal (void or cavity) contours. Medical imaging,

in particular, often involves complex human structures

surrounded by tissues and blood vessels, or test specimens

with lots of internal cavities.

Due to the complexity and a lack of topological hierarchy

information, the slice contours to be made of a particular

material cannot be easily identified and linked up accordingly.

Consequently, it is extremely difficult to generate multi-

toolpaths to control an array of nozzles or tools for efficient

fabrication of such layers, because it is necessary to identify

and relate contours to a particular nozzle one-by-one. This is

particularly tedious if potential tool collisions are to be

detected and avoided when the tools deposit materials

concurrently to reduce build time.

The relationship of any two contours of a slice can be either

(1) external-and-external, or (2) external-and-internal, or (3)

internal-and-internal. On the one hand, it can be seen in

Fig. 2(a) that contours C1 and C7 illustrate an external-and-

external case as they are independent of each other, while

contours C1 and C5 give an external-and-internal case with C5

being an internal contour of C1. On the other hand, internal-

and-internal contours should be isolated by at least one external

contour in the slice.

In Fig. 2(b), C1 and C7 are the two outermost contours of the

slice. These two contours are at Level 0, meaning that they

have no parent and are therefore not contained in any contours.

Similarly, a Level 1 contour, such as C4, C5, C2, and C3, has

one and only one parent, although a parent may have multiple

children. Further, C6 is a Level 2 contour for it is contained in

both C3 and C7. Hence, according to the parent-and-child

relationship that defines the contour containment, the slice

contours can be grouped into two contour entities, namely

Isolating the contours of one generation of parent-and-child

relationship, the contour entities can be regarded as containing

three contour families, namely

It can be seen that a contour family may contain (1) one or

more than one pair of external-internal contours, and/or (2) one

or more than one external contour. A contour family is indeed a

solid area of a specific material property; and contour families

of the same material property can be linked together and

treated as a single solid area.

Based on such topological hierarchy, groups of related

external and internal contours can be linked to form contour

entities or families, as shown in Fig. 2(c), to simplify the

complexity of the slice contours. Subsequently, toolpath

planning for MMLM becomes straightforward because it is

no longer necessary to identify and relate individual contours

one-by-one to a particular tool. It can be concluded that

topological hierarchy of slice contours is of vital importance to

toolpath planning for MMLM. For this purpose, the author has

developed a topological hierarchy-sorting algorithm [14],

based on which an intelligent approach to toolpath planning

for MMLM of heterogeneous multi-material objects is

proposed. It includes a sequential toolpath planning algorithm

that generates multi-toolpaths for sequential deposition of

materials without redundant tool movements, and a concurrent

toolpath planning algorithm to generate collision-free

Page 3: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 1. (a) A slice of a necklace; (b) a slice of a human skull.

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156 145

multi-toolpaths for control of tools that deposit materials

concurrently. The following sections first describe the

topological hierarchy-sorting algorithm briefly to help under-

stand the concept, and then discuss the proposed approach to

toolpath planning for MMLM in detail.

2. The topological hierarchy-sorting algorithm

Hierarchy sorting is based on containment tests of contours,

with which a parent-and-child list is established to define the

hierarchy relationship of slice contours. The traditional

Page 4: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 2. (a) A slice of a machine part with external and internal contours; (b) topological hierarchy based on parent-and-child relationship; (c) slice contours may

be treated as two contours external entities containing three families.

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156146

ray-shooting technique is used to test whether one contour is

contained in another. For a pair of contours, Cx and Cy, an

arbitrary point in Cx is tested with Cy. If Cy contains this point,

then Cy must contain Cx, and hence Cy is on the parent list of Cx.

Otherwise, the process is reversed and an arbitrary point in Cy is

tested with Cx. Similarly, if Cx contains this point, then Cx must

contain Cy, and hence Cx is on the parent list of Cy. These two

cases are mutually exclusive since valid contours do not intersect.

If both cases return false, they are ignored and the process

proceeds to the next pair of contours. Subsequently, all contours

of each layer are tested to build their own parent lists. Moreover,

each contour is assigned a level number, which indicates its

number of parents. Thus, slice contours may be grouped based on

the level numbers to avoid time-consuming sequential searching.

The level numbers and the parent lists obtained may now be

used to generate the topological hierarchy sequence. Firstly, all

contours are grouped according to their level numbers. Each

group contains all the contours of the current layer with the

respective level number. For instance, a Level 0 contour is a

member of Group 0, and Group 0 contains all Level 0 contours

of the layer. The maximum group number and the number of

members of each group determine how complex the slice

contours are. The algorithm starts from a Level 0 contour from

Group 0, and puts it to the hierarchy sequence. It then searches

for Level 1 contours among Group 1 for child contours. If a

child is found, it is attached to the hierarchy sequence and the

level number is increased by 1, and

(1) if there exists any contour in the new level, the algorithm

continues to search for children in the new level;

(2) if there are not contours in the new level or if no child is

found in (1), the algorithm goes back to the previous level

Page 5: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 3. Topological hierarchy relationship of the necklace slice contours.

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156 147

by decreasing the level number by 1 and repeats the

process till the end of the contour list.

Otherwise, the algorithm is repeated with another Level 0

contour until the end of Group 0 is reached.

At this instant, the algorithm has arranged the multiple-level

contours in an appropriate sequence. However, for the contours

at the same level, they are still random in nature. Hence, the

contours with the same level number are further sorted using

their bounding boxes. They are arranged according to the

minimum and maximum x and y values of their bounding

boxes. Subsequently, the contours at the same level belonging

to the same parent are re-ordered from the outermost inwards

accordingly.

After the process above, all slice contours are sorted into an

appropriate hierarchy sequence suitable for toolpath planning.

Fig. 3 shows the topological hierarchy relationship of the slice

contours of a necklace layer sorted by the algorithm.

To facilitate both recording and retrieval of the hierarchy

information along with the slice contours, the Modified-

Common Layer Interface format (MLI) [14] is adopted. It is an

ASCII file type based on the common layer interface (CLI)

[15], which is a simple universal file format for exchange of

geometry data for the LM technology. The MLI file format is

the addition of a HIERARCHY data line per layer, similar to

the POLYLINE structure in the standard CLI format. The

syntax of HIERARCHY data line is as follows:

Command: start hierarchy

Syntax: $$HIERARCHY/id,n,Cmax,[C1x,C1L],[C2x,C2L],

.,[Cnx,CnL]

All Parameters are INTEGER

id: identifier to allow more than one model information in

one file. It refers to the parameter id of command $$LABEL

(HEADER-section)

n: total number of contours of the layer

Cmax: maximum number of levels

C1x.CnL: sequence of the contours with reference to the

CLI sequence and the corresponding level number

With MLI, contour hierarchy can be stored along with the

contour data, so that for the contours of each layer there is a

corresponding hierarchy information list.

3. Topological hierarchy-based toolpath planning

for MMLM

Based on the established topological hierarchy relationship,

the proposed toolpath planning algorithm can generate both

sequential and concurrent multi-toolpaths for MMLM. It first

arranges slice contours in an appropriate sequence, and then

generates multi-toolpaths that can avoid redundant movements

and potential collisions of tools.

Given the topological hierarchy and material information,

the slice contours with the same material property are sorted

and grouped into contour families that serve as basic units for

planning multi-toolpaths. To safeguard collision-free concur-

rent toolpaths, a parametric polygonal approach is adopted to

approximate the envelopes within which specific tools can

work safely. The accuracy or tightness of the polygons can be

controlled with a parameter to suit the requirements of

processing speed and optimality of the resulting concurrent

toolpaths. In the following sections, a layer of a gearbox is used

as an example to elaborate the proposed algorithm.

Page 6: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 4. A layer of a multi-material gearbox assembly.

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156148

Fig. 4 shows a gearbox, together with a layer to be made of

four kinds of materials represented in blue, purple, brown, and

green. Multi-toolpaths generated from the raw, random

contours may result in redundant tool movements. To shorten

build time, four nozzles, N1, N2, N3, and N4, should be

appropriately controlled to deposit blue, purple, brown, and

green materials, respectively, on the related contours without

redundant movements and collisions.

For this purpose, the topological hierarchy relationship of

the contours, as shown in Fig. 5, is established to construct the

connectivity of the external contours and the internal cavities.

Based on this, the contours are grouped into six entities,

namely C3, C8, C4, C5/C7/C1, C6, and C2. Furthermore,

according to the relationship of external contours and internal

contours, the contour entities are sorted into seven contour

families, namely, C3 (Family 1), C8 (Family 2), C4 (Family 3),

C5/C7 (Family 4), C1 (Family 5), C6 (Family 6), and C2

(Family 7). Such grouping significantly simplifies toolpath

Fig. 5. Topological hierarchy relations

planning for MMLM, for it will not be necessary to identify

and relate the contours one-by-one to a particular nozzle.

Instead, only grouping of the outermost contours is required.

Hence, the query time for collision detection is reduced

substantially.

3.1. Sequential toolpath planning based

on topological hierarchy

Based on the topological hierarchy relationship above, the

seven contour families can be conveniently processed to

generate hatch vectors that define the toolpaths. Thus, seven

toolpaths (PC3, PC8, PC4, PC5,7, PC1, PC6, and PC2) for the tools

to deposit the respective materials are generated. In order to

avoid redundant tool movements, the seven toolpaths should be

further arranged based on the specific geometric and material

information of each contour. As shown in Fig. 6, PC3, PC4, and

PC2 are grouped into a toolpath-set {S1(PC3/PC4/PC2)},

hip of the gearbox slice contours.

Page 7: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 6. Generation of toolpath-sets for the gearbox slice contours.

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156 149

which is associated with nozzle N1 because contour families 1,

3, and 7 are of blue material. In the same way, PC8, PC5,7 and

PC6, and PC1 are grouped into {S2(PC8)}, {S3(PC5,7/PC6)},

and {S4(PC1)}, which are associated with N2, N3, and N4,

respectively. After associating the toolpath-sets with the

related nozzles, the toolpath-sets are arranged in a sequence

of S1/S2/S3/S4 according to the hierarchy levels of the

contours. As a result, practical sequential multi-toolpaths can

be conveniently generated, and the movement sequence of the

nozzles is given as:

N1fS1ðPC3/PC4/PC2Þg0N2fS2ðPC8Þg

0N3fS3ðPC5;7/PC6Þg0N4fS4ðPC1Þg:

3.2. Concurrent toolpath planning based

on topological hierarchy

The fabrication efficiency of relatively large and complex

products can be further enhanced if the tools deposit materials

concurrently. However, planning of concurrent multi-toolpaths

requires detection of tool collisions, which may occur when the

tools move simultaneously. For efficient detection and

avoidance of tool collisions, the proposed algorithm mainly

consists of the following steps:

(i) a parametric polygonal approach is adopted to

approximate the envelopes in which specific tools can

fabricate contour families of the same material proper-

ties;

(ii) overlap tests are performed among all pairs of such

envelopes in each layer;

(iii) based on the result of the overlap tests, collision-free

concurrent toolpaths are efficiently planned.

With the parametric polygonal approach, a polygon is

constructed around each contour family by selecting and

linking a limited number of dominant points along the exterior

of the contour family. The polygon is then offset outward a

distance of the tool-holder radius; and polygons of the same

material property are linked to form an envelope for the tool. A

tool envelope is an area in which only the related tool or nozzle

is allowed.

The number of dominant points defining a tool envelope

polygon is proportional to the value of t, in the range of 0–1.

The accuracy or tightness of the polygon can be controlled by

choosing the value of t to suit the requirements of the

processing speed and the optimality of the resulting concurrent

toolpaths. On the one extreme when tZ0, the polygon is

reduced to only four points, forming an axis-aligned bounding

box which is the simplest possible for detection of tool

collisions but is less optimal for the resulting toolpaths. On the

other extreme for tZ1, the polygon is an exact offset of the

exterior of a contour family, resulting in relatively slow

collision detections but good optimality of the toolpaths. In

general, a value of tZ0.3 is a good compromise.

Having constructed all tool envelopes, potential tool

collisions may now be detected by overlap tests, which are

achieved by calculating the minimum separation distance

between all pairs of envelopes. If the minimum separation

distance between two envelopes is larger than zero, the two

tools can move concurrently in their respective envelopes

without collisions. Hence, the number of overlap queries is

given by O((1/2)n(nK1)), where n is the number of toolpath-

sets in a layer. In comparison, the number of queries without

topological hierarchy relationship is O((1/2)m(mK1)), where

m is the total number of individual contours of a layer. Since, n

is generally much smaller than m, the proposed algorithm

simplifies collision detection considerably.

For simplicity of explanation, axis-aligned bounding box

approximation of tool envelopes by setting tZ0 is used below

to illustrate the proposed algorithm for concurrent toolpath

planning. The effect of polygonal tool envelopes with tO0 is

demonstrated in the case study in Section 4.

Referring to the example above, four axis-aligned

bounding boxes (B1, B2, B3, and B4) for the toolpath-

sets, and four tool envelopes E1, E2, E3, and E4 for four

nozzles (N1, N2, N3, and N4), are constructed, respectively,

as shown Fig. 7. It can be seen that nozzles N1, N2, and

N3 can move concurrently without collision in envelopes

E1, E2, and E3, respectively, for E1, E2, and E3 do not

overlap. On the other hand, nozzles N3 and N4 cannot

move concurrently since E3 encloses E4, because contours

C5, C7, and C1 belong to the same contour entity, as

shown in Fig. 5. For such cases, however, it is not

necessary to test overlapping of E3 and E4, since their

containment relationship, C5/C7/C1, has already been

established in the topological hierarchy. Hence, the number

of overlap queries, O((1/2)n(nK1)), can be further

reduced.

Page 8: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Table 1

Result of overlap tests for tool envelopes in Fig. 7(b)

Column envelope, Ej

E2 E3 E4

Row envel-

ope, Ei

E1 Non-overlap Non-overlap Non-overlap

E2 Non-overlap Non-overlap

E3 Overlap

Result of overlap test, OT(Ei, Ej)

Fig. 7. (a) Four bounding boxes for the contours in Fig. 4; (b) tool envelopes of nozzles.

Table 2

Sequence of concurrent nozzle movements

Tool movement for envelopes, Ei (Nozzle, Ni)

E1 (N1) E2 (N2) E3 (N3) E4 (N4)

Sequence Yes Yes Yes No

No No No Yes

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156150

Table 1 shows the result of overlap tests, OT(Ei, Ej), for the

pairwise combinations of the four envelopes in Fig. 7(b). The

value of OT(Ei, Ej) indicates whether or not concurrent

movements can be planned for nozzles Ni and Nj to deposit

materials in the contours bounded by envelopes Ei and Ej,

respectively. If OT(Ei, Ej)Znon-overlap, the envelope pair (Ei,

Ej) do not overlap and concurrent movements can be planned

for nozzles Ni and Nj; otherwise the envelope pair overlap and

concurrent tool movements cannot be planned. Based on the

result of envelope overlap tests, the proposed algorithm plans

concurrent toolpaths as follows:

Define:

nZtotal number of envelopes of a layer;

iZenvelope number in a row;

jZenvelope number in a column.

Steps:

1. set the status of all envelopes to ‘NOT DONE’;

2. set the values of i and j to 1 and 2, respectively;

3. for envelope Ei in a row, if its status is ‘DONE’, go to step 8;

4. check the OT(Ei, Ej) values in the column corresponding to

envelope Ej. If ALL these values are non-overlap, then

check:

(a) the status of envelopes Ei. If it is ‘NOT DONE’, set it to

‘READY’;

(b) the status of envelopes Ej. If it is ‘NOT DONE’, set it to

‘READY’;

5. increase the value of j by 1. If j%n, repeat from Step 4;

6. if NO envelope has been set to ‘READY’ status in the above

steps and the status of envelope Ei equals ‘NOT DONE’, set

it to ‘READY’;

7. generate concurrent toolpath-sets of all nozzles for the

contours in the corresponding envelopes with ‘READY’

status; set the status of these envelopes to ‘DONE’;

8. delete row i; increase the value of i by 1 and set the value of j

to iC1. If i%nK1, repeat from Step 3;

9. if there exists an envelope with ‘NOT DONE’, then set the

envelope to ‘READY’, generate toolpath-sets for the related

nozzle, and set it to ‘DONE’;

10. repeat from Step 1 for the next layer until all layers are

completed.

Page 9: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 8. Concurrent movements of nozzles for depositing materials on the related contours.

Fig. 9. A toy excavator.

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156 151

The result of overlap tests for the four envelopes in

Table 1 is used to demonstrate the above algorithm. In this

case, the total number of envelopes in a layer is nZ4. The

following steps illustrate how the proposed algorithm

generates concurrent toolpaths for the slice contours in

Fig. 4:

1. the status of all the envelopes are set to ‘NOT

DONE’;

2. the envelope number in a row, i, and in a column, j,

are set to 1 and 2, respectively;

3. for envelope Ei for iZ1; i.e. the envelope in the first

row for the first iteration;

4. the OT( ) values in the column corresponding to

envelope E2 are checked. For example, the OT(E1, E2)

value in the column corresponding to envelope E2 is

non-overlap, and then check the status of envelope E1

and E2. Since, they are ‘NOT DONE’, their status is

set to ‘READY’;

5. the value of j is increased by 1. Repeat Step 4 until

the value of j is equal to 4;

6. the envelopes E1, E2, and E3 have been set to

‘READY’ status in the above steps;

7. thus, concurrent toolpath-sets for nozzles N1, N2, and

N3 are generated for concurrent deposition of the

desired materials on the contours in the corresponding

envelopes E1, E2, and E3, with ‘READY’ status,

respectively. These envelopes are set to ‘DONE’

status;

Page 10: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156152

8. the value of i is increased to 2 and the value of j is

set to 3. As i!3, repeat from Step 3;

9. after processing all the rows, all the envelopes have

been set to ‘DONE’ status except E4. Envelope E4

remains ‘NOT DONE’, and it is therefore set to

‘READY’. Hence, concurrent toolpath-set of nozzle

N4 is generated, and then the status of envelope E4 is

set to ‘DONE’;

10. the algorithm repeats all the above steps for the next

layer until all layers are completed.

Fig. 10. (a) A layer of a multi-material toy excavator; (b) topological hierarchy relati

toy excavator slice contours.

The resulting sequence of concurrent nozzle movements is

given in Table 2. The status ‘YES’ represents that a nozzle

can deposit a material, while ‘NO’ otherwise. It can be seen

that the nozzle movements are sequenced into two steps. In

the first step, nozzles N1, N2, and N3 can move concurrently to

deposit the contours in envelopes E1, E2, and E3, respectively.

After this, nozzle N4 deposits contours in Envelope E4. The

details of the concurrent nozzle movements are as follows, while

Fig. 8 illustrates the resulting sequence of concurrent nozzle

movements.

onship of the toy excavator slice contours; (c) generation of toolpath-sets for the

Page 11: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 11. Tool envelopes of the nozzles constructed with parametric polygons.

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156 153

4. Case study

The proposed algorithm was implemented as an integral

part of an MMVP system for visualisation and optimisation

of MMLM processes [16]. The system was developed with

CCC and WorldToolKit Release 9. A toy excavator is used

to demonstrate its possible applications for product

development.

4.1. A toy excavator

Hong Kong is a major exporter of high-quality toys,

despite keen competition in global markets. In order to reduce

operation costs and to enhance competitiveness, most toy

manufacturers have set up production facilities on mainland

China, while shifting their roles in Hong Kong to marketing,

product design, quality control, and production management.

To shorten product development cycles of toys, they have

adopted CAD/CAM and LM for toy design and prototype

fabrication. Hence, the proposed MMVP system will be

particularly useful for the toy industry. Fig. 9 shows an

example of a toy excavator comprising a number of

components with different materials.

Table 3

Result of overlap test for tool envelopes with parametric polygons (tZ0.3)

Column envelope, Ej

E2 E3

Row Envelope, Ei E1 Non-overlap Non-overlap

E2 Overlap

E3

E4

E5

Result of overlap

test, OT (Ei, Ej)

Fig. 10(a) shows a layer of the toy excavator. It

contains 24 contours to be made of six kinds of materials,

namely from m1 to m6. Each of six nozzles, namely from

N1 to N6, is assigned to deposit a specific material from

m1 to m6, respectively. Fig. 10(b) shows the topological

hierarchy relationship of the contours in Fig. 10(a). Twelve

toolpaths (PC1, PC2,3, PC4,5,6,7,8,9, PC10, PC11, PC12, PC13,

PC14,15, PC16,17,18,19,20,21, PC22, PC23, and PC24) are

generated according to the contour families in Fig. 10(c).

The toolpaths are further grouped into six toolpath-sets,

namely from S1 to S6, according to the material

information. The toolpath-sets from S1 to S6 are associated

with the nozzles from N1 to N6, respectively.

To demonstrate the effect of tightness of parametric

polygonal tool envelopes on the optimality of concurrent

toolpaths, a value of 0.3 is set for the parameter t. In

Fig. 11, twelve polygons, namely from P1 to P12,

approximate the tool envelopes of the twelve contour

families. The polygons of the related contour families with

the same material property are linked to form six sets of

tool envelopes, namely E1(P1), E2 (P2 and P8), E3(P3 and

P9), E4(P4 and P10), E5(P5 and P6), and E6(P7, P11, and

P12) for the nozzles from N1 to N6, respectively. To detect

potential tool collisions, overlap of the envelopes is tested,

E4 E5 E6

Non-overlap Non-overlap Non-overlap

Overlap Overlap Non-overlap

Overlap Non-overlap Non-overlap

Non-overlap Non-overlap

Non-overlap

Page 12: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Table 4

Sequence of concurrent nozzle movements with parametric polygons for tool envelopes (tZ0.3)

Tool movement for envelopes, Ei (Nozzle, Ni)

E1 (N1) E2 (N2) E3 (N3) E4 (N4) E5 (N5) E6 (N6)

Sequence Yes Yes No No No Yes

No No Yes No Yes No

No No No Yes No No

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156154

as shown in Table 3. The sequence of concurrent nozzle

movements is given in Table 4.

Fig. 12 shows the details and simulation of the concurrent

nozzle movements for digital fabrication of the slice contours

in Fig. 10. It can be seen that the layer can be completed in

three steps.

To assess the effectiveness of this concurrent toolpath

sequence, it is compared with those obtained using axis-

aligned bounding boxes (for tZ0) and using the sequential

toolpath planning. For tZ0, there is one more overlap

of the bounding boxes corresponding to (P2 and P8) and

(P7, P11, and P12), resulting in four steps as shown in

Fig. 13.

Fig. 12. (a) Details of concurrent nozzle movements with parametric polygons for

For the sequential toolpath planning, six steps are required

and the tool sequence is

N1fS1ðPC1Þg0N2fS2ðPC2;3/PC14;15Þg0N3fS3ðPC4;5;6;7;8;9

/PC16;17;18;19;20;21Þg0N4fS4ðPC10/PC22Þg0N5fS5ðPC11

/PC12Þg0N6fS6ðPC13/PC23/PC24Þg:

On the other hand, it may not be advantageous to set

tO0.3 to increase the tightness of the tool envelope

polygons for this layer, because this will not reduce the

number of steps below three without excessively increasing

the processing time.

tool envelopes (tZ0.3); (b) digital fabrication of a layer of the toy excavator.

Page 13: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

Fig. 13. Details of concurrent nozzle movements with axis-aligned bounding boxes for tool envelopes (tZ0).

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156 155

The digital fabrication process of different layers of the

multi-material virtual prototype is shown in Fig. 14. The

prototype can be superimposed on the excavator model with

which designers can study the excessive materials. Besides,

the system can calculate the average and maximum cusp

heights of the prototype to facilitate evaluation of the overall

Fig. 14. Digital fabrication process of a multi

accuracy of the prototype. Its average and maximum cusp

heights are 0.268 and 0.598 mm, respectively. The designers

can therefore repeat digital fabrication of the excavator

prototype until a satisfactory one is obtained. Hence, an

optimal combination of process parameters can be obtained

for subsequent fabrication of physical excavator prototypes of

-material prototype of the toy excavator.

Page 14: A topological hierarchy-based approach to toolpath planning for multi-material layered manufacturing

S.H. Choi, H.H. Cheung / Computer-Aided Design 38 (2006) 143–156156

satisfactory quality without incurring much cost and time.

Hence, the MMVP system is useful for shortening develop-

ment cycle of toys.

4.2. Limitation of the proposed algorithm

The case study above shows that the proposed algorithm

is simple and effective for planning toolpaths for practical

control of multi-material layered manufacturing processes.

Nevertheless, it should be pointed out that the resulting

concurrent toolpaths may not be perfectly optimal, because

the tools in overlapping envelopes are not allowed to move

simultaneously. Indeed, this rule may be relaxed in some

situations to improve the efficiency of concurrent multi--

toolpaths by allowing the tools to deposit specific contours

without collision in relatively large overlapping envelopes.

For this purpose, it requires further research effort to

enhance the algorithm such that overlapping envelopes can

be suitably sub-divided for detailed detection of possible

tool collisions.

5. Conclusion

This paper proposes a practical approach to toolpath

planning for multi-material layered manufacturing of

complex heterogeneous objects. It adopts a topological

hierarchy-sorting algorithm to construct a topological

hierarchy relationship that simplifies the complexity of

slice contours for subsequent generation of multi-toolpaths.

To balance the processing speed and the optimality of

concurrent toolpaths, parametric polygons with controllable

tightness are used to approximate tool envelopes for

related contour families. Such envelopes facilitate detec-

tion and avoidance of potential collisions of tools that

deposit materials concurrently. This approach is flexible

and effective for generation of multi-toolpaths without

redundant tool movements and collisions. It has been

implemented to form an integral part of a multi-material

virtual prototyping system for planning, stereoscopic

simulation, and validation of multi-toolpaths of multi-

material prototyping processes.

Acknowledgements

The authors would like to acknowledge the Research Grant

Council of the Hong Kong SAR Government and the CRCG

of the University of Hong Kong for their financial support for

this project.

References

[1] Samanta K, Koc B. Feature-based and material blending for free-form

heterogeneous object modelling. Comput Aided Des 2005;37(3):

287–305.

[2] Yang SF, Evans JRG. A multi-component powder dispensing system for

three dimensional functional gradients. Mater Sci Eng 2004;379(1–2):

351–9.

[3] Lappo K, Jackson B, Wood K, Bourell D, Beaman JJ. Discrete

multiple material selective laser sintering (M2SLS): experimental

study of part processing. In: Bourell DL, et al., editor. Solid

freeform fabrication symposium. Austin, TX: The University of

Texas; 2003. p. 109–19.

[4] Jafari MA, Han W, Mohammadi F, Safari A, Danforth SC,

Langrana N. A novel system for fused deposition of advanced

multiple ceramics. Rapid Prototyping J 2000;6(3):161–75.

[5] Cho WJ, Sachs EM, Patrikalakis NM, Troxel DE. A dithering algorithm

for local composition control with three-dimensional printing. Comput

Aided Des 2003;35(9):851–67.

[6] Yan YN, Xiong Z, Hu YY, Wang SG, Zhang RJ, Zhang C. Layered

manufacturing of tissue engineering scaffolds via multi-nozzle

deposition. Mater Lett 2003;57(18):2623–8.

[7] Bremnan RE, Turcu S, Hall A, Hagh NM, Safari A. Fabrication of

electroceramic components by layered manufacturing (LM). Ferro-

electrics 2003;293(1):3–17.

[8] DMDTM. http://www.pom.net/; 2004.

[9] LENSTM. http://mfgshop.sandia.gov/1400_ext/1400_ext_LENS.htm; 2004.

[10] Kao JH, Prinz FB. Optimal motion planning for deposition in layered

manufacturing. Proceedings of ASME design engineering technical

conferences, Atlanta, GA; 1998. p. 1–10.

[11] Yang Y, Fuh JYH, Loh HT. An efficient scanning pattern for layered

manufacturing processes. Proceedings of the IEEE international

conference on robotic and automation, Seoul, Korea; 2001. p. 1340–45.

[12] Liang JS, Lin AC. System development of adaptive spraying paths for

rapid prototyping. Rapid Prototyping J 2003;9(5):289–300.

[13] Tang K, Pang A. Optimal connection of loops in laminated object

manufacturing. Comput Aided Des 2003;35(11):1011–22.

[14] Choi SH, Kwok KT. A topological hierarchy-sorting algorithm for

layered manufacturing. Rapid Prototyping J 2004;10(2):98–113.

[15] CLI version 2.0. http://129.69.86.144/raptec/general/cli/cli_v20.html;

2004.

[16] Choi SH, Cheung HH. A multi-material virtual prototyping system.

Comput Aided Des 2005;37(1):123–36.

S.H. Choi is associate professor in the IMSE

Department at the University of Hong Kong. He

obtained both his B.Sc. and Ph.D degrees at the

University of Birmingham. He worked in

computer industry as CADCAM consultant

before joining the University of Hong Kong.

His current research interests include CADCAM,

advanced manufacturing systems and virtual

prototyping technology.

H.H. Cheung gained his B.Eng. degree from

the IMSE Department at the University of

Hong Kong. He continued his postgraduate

research study in the Department, and his

research interest is in virtual prototyping

technology.