Modeling and optimization of direct metal laser sintering process
Anoop Verma, Satish Tyagi & Kai Yang
The International Journal of Advanced Manufacturing Technology ISSN 0268-3768 Int J Adv Manuf Technol DOI 10.1007/s00170-014-6443-x
1 23
Your article is protected by copyright and all rights are held exclusively by SpringerVerlag London. This e-offprint is for personal use only and shall not be self-archived in electronic repositories. If you wish to self-archive your article, please use the accepted manuscript version for posting on your own website. You may further deposit the accepted manuscript version in any repository, provided it is only made publicly available 12 months after official publication or later and provided acknowledgement is given to the original source of publication and a link is inserted to the published article on Springer's website. The link must be accompanied by the following text: "The final publication is available at link.springer.com”.
1 23
Author's personal copy Int J Adv Manuf Technol DOI 10.1007/s00170-014-6443-x
ORIGINAL ARTICLE
Modeling and optimization of direct metal laser sintering process Anoop Verma & Satish Tyagi & Kai Yang
Received: 31 March 2014 / Accepted: 29 September 2014 # Springer-Verlag London 2014
Abstract Direct metal laser sintering (DMLS) is a novel class of rapid manufacturing process that can fabricate functional parts of any complexity. However, the DMLS process takes almost 6–12 h to build parts of even small-moderate size. Reducing the build time of the parts is the key to success of the DMLS process at commercial level. A common solution to reduce the part build time is to sinter the parts with maximum allowable layer thickness. However, doing so will make staircase effect more prominent and lead to the poor surface accuracy of the part. In this paper, a bi-criteria-based optimization approach is presented to address this issue. The subprocesses, namely, part orientation, layer thickness identification, and laser scanning directions, are optimized with an aim to build the parts with: (a) minimum amount of time and (b) minimum surface inaccuracy. In addition, the material shrinkage is also incorporated in the proposed model. Parts with varying complexities are analyzed to elucidate the applicability of proposed approach. Comparisons with traditional slicing approaches are also made. Keywords Volumetric error . Build time . Optimization . Adaptive slicing . Genetic algorithm
1 Introduction Direct metal laser sintering (DMLS) is a novel rapid manufacturing technique for building functional parts. A. Verma (*) : S. Tyagi : K. Yang Department of Industrial and Systems Engineering, Wayne State University, Detroit, MI 48021, USA e-mail:
[email protected] S. Tyagi e-mail:
[email protected] K. Yang e-mail:
[email protected]
Metallic powder is used as a raw material for this process. The overall part is sliced into multiple layers, and metallic powder is sintered by a laser beam in a layer-by-layer fashion. The overall schematic of DMLS is shown in Fig. 1. The whole setup consists of two main subassemblies: (1) metal powder supply subassembly and (2) sintering subassembly. At each processing step, a powder dispenser system moves upward to supply the metal powder then a recoater arm transfers the metal powder from the repository to the actual sintering zone. Once the metal powder is sprayed on the sintering zone, a laser selectively hatches the metal powder and sinters the powder with base material. Hatching is done based on the 2D surface contour of the parts and typically involves (1) inner hatching, (2) jump/skip lines, and (3) outer boundary hatching. The piston then moves downward in order to keep the constant focal distance between laser and sprayed powder. The process is repeated for the next layer until the whole part is built. DMLS can fabricate functional parts with high degree of complexity. Due to this characteristic, it has found application in various industries including aerospace, medical, etc. The major concern with the DMLS process is the build time. Parts of even small-moderate size may require more than 6– 12 h of processing. Another concern is the part accuracy, which also needs to be kept as high as possible. Minimizing the build time can reduce the surface accuracy and vice versa. The ability of DMLS process to meet the desired accuracy of the part in the least amount of build time is very critical to its overall acceptance in the market [1]. In this paper, a bicriteria-based optimization approach is presented to address this issue. The sub-processes, namely, part orientation, layer thickness identification, and laser scanning directions, are optimized with an aim to build the parts with: (a) minimum amount of time and (b) minimum surface inaccuracy. In addition, the material shrinkage is also incorporated in the proposed model. Present research aims to minimize the part surface inaccuracy
Author's personal copy Int J Adv Manuf Technol
Fig. 1 Schematic of direct metal laser sintering (DMLS) process (courtesy: www.custompartnet.com)
and build time by simultaneously optimizing the following: (1) part orientation, (2) laser scan movement, and (3) part slicing. The paper is organized as follows. In Section 2, the related work is reviewed. In Section 3, the problem formulation and the issues concerning the overall process optimization are discussed. Results obtained from the analyses are provided in Section 4. Lastly, Section 5 discusses the findings of the work with some notes on future research directions.
2 Related work Research work carried out in rapid prototyping and manufacturing (RP&M) domain can be broadly divided into three categories: (1) input file format selection, (2) part slicing, and (3) overall process optimization. The input file formats are the source of preprocessing errors. Other problems associated with STL file are as follows: (1) incorrect facet surface normal, (2) incomplete geometry representation, (3) gaps, (4) overlapping facets, etc. Further information on STL file can be found in ref. [2, 3]. Apart from the input file format errors, other issues also exists Rock and Wozny [4] extracted the topological information from the faceted part using a marching algorithm. They considered the STL file format as a bucket of facets with no topological information and used a marching algorithm to determine the contours on each layer of the part. The process was computationally expensive as complex parts may contain thousands of facets. Subsequently, Kirschman and JaraAlmonte [5] recommended the use of parallel processing for better speed. Research work in slicing started with uniform slicing, where the part is built by considering a uniform layer thickness throughout the part height. Rajgopalan et al. [6] performed uniform slicing of non-polyhedral objects.
Farouki et al. [7] and Guduri et al. [8] performed slicing based on constructive solid geometry (CSG). For the tessellated CAD models, slicing based upon an allowable cusp height or Ra value is used in most of the researches. Dolenc and Makala [9] introduced the concept of cusp height, which represents the deviation of the desired layered part from the fabricated layered part. An allowable cusp height factor is used as a constraint to determine the layer thickness [10–13]. However, in general, a part may have different surface requirements at each layer. Thus, cusp height requirement should not be kept constant throughout the part height along the build direction. Considering these criticalities, Sabourin et al. [14] developed a stepwise uniform refinement concept, where initially, the part is uniformly sliced using the maximum layer thickness. Tyberg and Bohn [15] proposed a local adaptive slicing where initially, all the part features are extracted and their coordinate information is stored. Afterwards, slicing is performed independently in the upward direction from the base of the part. Considering part surface quality, local adaptive slicing is an efficient approach for slicing. However, the build time of the part is higher. In order to keep the build time minimum while achieving the desired surface accuracy, Sabourin et al. [14] developed an accurate exterior and thick interior-based slicing. In this concept, the outer boundary of the part was sliced with minimum layer thickness for good surface finish while the inner part was sliced with maximum layer thickness to minimize the build time. Though this slicing concept has lot a of potential to fabricate a part with required surface accuracy with minimum fabrication time, it is not an industry accepted format for powder-based manufacturing as the control logic required to sinter the same part layer with varying thickness is very complex. Later, in order to improve the performance of the slicing algorithm, Tata et al. [16] developed a facet-grouping technique that aimed to group the facets with common
Author's personal copy Int J Adv Manuf Technol
characteristics so that facet-searching time during actual slicing can be minimized. Their concept was based on four key terms, i.e., facet processor, key character identifier, thickness calculator, and slicer. The facet processor is used to group the facets based on some common characteristics such as height from the base, minimum and maximum z coordinate value, etc. The facet processor is also used to identify part features. The key character identifier was used to identify some common features (i.e., horizontal surface, pointed edges, etc.) of a part that can be helpful during slicing. Most adaptive slicing algorithms slice the part assuming a fixed cusp height. However, in reality, the desired cusp height of the part depends upon part geometry and varies from one point to other. Smoother faces of the part require tight cusp height, whereas for other faces, the requirement can be ignored. Another method to minimize the error was presented by Thomas et al. [12], where instead of vertical layers, the sloped layers were used to fabricate the whole part. It is evident that in case of curved surfaces, slicing with sloped surfaces will always result in minimum staircase error, as the build part will be closer to the desired part. This technique may not be appropriate for powder-based rapid manufacturing process such as selective laser sintering (SLS), direct metal laser sintering (DMLS), and stereo lithography (SLA). Path planning is another critical issue in rapid prototyping and manufacturing (RP&M) industry. Path planning determines the tool/laser movement to build the layered part. Depending on the application, path planning in layered manufacturing (LM) can be categorized into integral layer fabrication and step-wise layer fabrication [17–19]. In integral layer fabrication, the entire part is built in one attempt as in laminated object manufacturing (LOM). In step-wise layer fabrication, a tool moves in and around the contour to fabricate the whole part in layers. SLS and DMLS fall in this category. Path planning is very crucial for step-wise layer fabrication and considerable research has been reported. Chen et al. [19] analyzed the effects of various path patterns (large hatch patterns, small hatch pattern, and zigzag patterns) on the part build time in a SLA process. The impact of various patterns on geometric accuracy of the part was studied in [20, 21]. In case of depressions or internal holes, the tool should be turned off so that the undesired area is not fabricated. Considering this, Rock and Wozny [4] and Chari and Hall [21] determined the effective hatching area by firing a set of rays onto the STL model of the part. According to Ning et al. [22], due to neighborhood effect, the neighbor scan vectors will affect a portion of currently scanned hatch vector and therefore the energy absorption will be non-uniform for all laser scan vectors of a layered part, which leads to differential shrinkage in the part. Ning et al. [22] developed a scan speedbased compensation method for DMLS process to keep the shrinkage as uniform as possible. Based upon their recommendation, larger scan vector will always prevent
neighborhood effect. Other related research can be found in ref. [23–25]. In recent years, the energy aspects of the process are also investigated. Paul and Anand [26] computed the total energy consumption of the selective laser sintering process using the part geometry information. In their work, authors used the convex hull approach to calculate the total area of sintering (TAS). Most of the aforementioned approaches to slicing were based on a tessellated CAD model, which gives approximate part geometry (i.e., part surface curves are approximated by polygons). Therefore, the fabricated part will always possess some inaccuracy, irrespective of the slicing technique. Another stream of research is in the area of direct slicing of CAD models. It has been claimed that the direct slicing will always give the exact contour information at every part slice. However, most of the commercial systems still support STL file format, due to its simplicity in operations and availability of data exchange mechanism from a particular CAD system for LM fabrication [27, 28]. Although a great deal of work has been done in layered manufacturing domain, most of them have considered the layered manufacturing tasks such as slicing, laser movement independently. Optimizing the process individually may not be beneficial to the overall system. The present paper considers optimizing one of the critical layered manufacturing processes, i.e., DMLS. The approach developed in this paper is novel in terms of the following: (1) problem formulation and (2) integrated optimization. In the present approach, DMLS processing steps, namely, (1) part orientation, (2) laser scanning movement, and (3) slicing, are simultaneously optimized. Thus, the results obtained from the proposed research can be directly applied to the actual sintering process. In addition, an expert system based on the part geometry information that provides slicing decisions for the parts is also developed. The aim of the expert system is to provide intelligent decision on part slicing. A detailed description of the proposed methodology is presented in the next section.
3 Research methodology In rapid manufacturing processes, slice of the part is typically the protrusion of 2D contour layer. If the top and bottom contours of a layer are not identical, sintering will result in some error, commonly known as stair stepping. Stair stepping results in poor part accuracy, which may have an adverse effect on the usability of the part. Thus, it is often desirable to develop some means to reduce these errors. Error reduction can be done by post-processing the fabricated part, i.e. by using a three- or five-axis CNC machine to remove the excessive material or by filling the gaps and voids with processed material. Another way of reducing the part fabrication errors is
Author's personal copy Int J Adv Manuf Technol
to keep the layer size to the minimum allowable thickness. Using the minimum layer thickness will ensure that the part is relatively free from build errors, but may result in excessive build time, which is undesirable. It is important to minimize build errors while also minimizing build time. The present work aims to optimize both build time and layered process error in an integrated fashion by developing a multi-objective optimization function. Both objectives are combined by assigning appropriate weights, which represents the manufacturer’s preferences. Volumetric error has been considered as a metric for layered process error, as it closely represents the deviation of the fabricated part from the actual. The overall framework of the proposed research is provided in Fig. 2. The overall framework is divided into four steps: (1) optimization of part orientation, (2) decision making for slicing type, (3) optimal laser path planning, and (4) optimization of layer thickness. These steps are discussed next.
facets perpendicular to build direction. In tessellation process, triangular facets of varying size are used to approximate the part surface. A simpler surface such as square or rectangle needs only two facets; however, a circular surface or complex surface may contain more than hundreds of facets. Thus, the number of triangular facets of a surface provides an idea about the surface complexity. Keeping such kind of surfaces perpendicular to the build direction will minimize the staircase effect and hence surface inaccuracy in actual sintering process. Mathematically, BTI and SAI can be represented as Eqs. (1–2): BTI ¼
SAI ¼
3.1 Part orientation optimization
minfZMAX−ZMINg Ξ n n oo max count Nori ⊥BD or Nori BD
∀ ¼ 1; … F
The input 3D part is first converted into STL format from which the basic geometry of the part is extracted. After getting the part geometry information from the STL file, a top-level optimization using the surface accuracy index (SAI) and build time index (BTI) is performed. SAI and BTI are approximate measures of the surface inaccuracy and part build time, respectively. BTI aims to rotate the part in such a way that the part height (along the build direction) can be minimized. Whereas, SAI aims to maximize the number of triangular
ð1Þ
F
ð2Þ
where ZMAX=max (Zmaxi) for all i∈F and ZMIN=min (Zmini) for all i∈F. F is the number of facets. ZMAX is the overall maximum z coordinate values; ZMIN represents the overall minimum z coordinate value. Zmax is the maximum z coordinates value of each facet, and Zmin is the minimum z coordinate value of each facet. Ξ represents the overall maximum value for any coordinates (calculated as follows: max(max(xi,yi,zi)) In Eq. (2), SAI is the surface accuracy
Fig. 2 The overall optimization framework
Start
Input 3D part and perform triangulation Optimize the part orientation using SAI and BTI Apply decision making for slicing type Adaptive uniform slicing No
Part vertical along build direction •
Yes Adaptive slicing
Part contains features
Yes
No •
Apply genetic algorithm
Uniform slicing
• •
•
Determine the part height Divide the whole part into (n-1) slices (slice thickness = max. allowable thickness) Perform uniform slicing
•
•
Determine the slicing control points Divide the whole part into (n-1) slicing control points Perform uniform slicing for each subparts
Author's personal copy Int J Adv Manuf Technol
index, “Nor” is the facet normal, and BD is the build direction (i.e., [0, 0, 1]) and “i” is the facet index. In order to normalize the SAI value into the range (0–1), the total number of facets (F) divides SAI. Both BTI and SAI are optimized simultaneously by assigning equal weights, given as follows: 1 F ¼ min W 1 BTI þ W 2 ð3Þ SAI
available in the part domain. The part’s facets information is used to determine the origin and end of any feature (protrusion or depression) present in the part. Any horizontal surface (other than the top and bottom surface) represents the feature’s origin or end if there is a feature along the part’s build direction. If the z coordinate of all the facet’s vertices are equal, the facet is horizontal. Depending upon the number of control points, the part is divided into number of sub-parts, which are further sliced by using uniform slicing.
The above objectives is subjected to following constraints, 0 < ¼ α < ¼ 90; 0 < ¼ β < ¼ 90
ð4Þ
Where α and β are the part rotation angles about x-axis and y-axis, respectively. A sequential quadratic programming (SQP) algorithm is used to solve the non-linear optimization function. In next section, the laser path planning is discussed [29]. 3.2 Decision making for slicing type The determination of part layer thickness is based upon a combination of a set of rules and optimization procedures. These rules are used to decide if the part needs adaptive slicing or uniform slicing. If the decision is to use uniform slicing, a separate algorithm runs with the layer thickness equal to the maximum allowable layer thickness. In case of uniform slicing, the part’s facets are further checked for features. If any feature is found, “adaptive uniform slicing” is used. Here, the term “adaptive” indicates that determination of various control points up to which the part can be uniformly sliced. These control points refers to the height where part features originates or ends. The first and last control points refer to the height of part’s base and actual height of the part. Compared to adaptive slicing of vertical part with vertical features in general, the uniform adaptive slicing is efficient as slicing decisions are made in the part domain and not in the layer domain.
3.3 Optimal laser path planning Laser path planning determines the laser movement along each layer to build the part. In this research, hatching is based upon laser movement. The optimal laser movement will always give the minimum-layered build time. In this work, optimal laser movement has been identified by rotating the part along z-axis (i.e., build direction), while keeping the laser scanning direction fixed. A constrained non-linear optimization formulation has been used to solve the laser path-planning problem for each layer, presented below (5). (
1 Xγ 1 Xγ P BTL ¼ min ðSLl Þ þ ðJLl ℘ l Þ þ SS l¼1 JS l¼1 SS NSV
NSV
) ∀l
ð5Þ
¼ 1… NSV0 ::NSVπ=2 ; ∀γ ¼ 0…90;
where SLl ¼ SLl þ ς l P ¼ P þψ ς 1 ¼ 0:2101 þ 3:335 L þ 5:312 L2 1; if there is no scan line ℘l ¼ 0; otherwise subjected to
3.2.1 Adaptive uniform slicing This slicing concept is used for parts (including their features) which are mostly vertical along the build direction. Horizontal and vertical surfaces of a part can be easily identified by assessing the part’s facet information. Facets that are perpendicular to the build direction are considered vertical and the part surfaces consisting of these facets are referred to as vertical face. Due to similar surface area of the layered part along these vertical faces, there will not be any volumetric error and hence, the current slice of the part can be fabricated with the maximum allowable layer thickness. In the current research work, this method has been used to uniformly slice the parts that are vertical along the build direction. The process is computationally efficient, as the part surface information is
0 ≤ γ < 90 In Eq. (5), BTL is the layered build time, NSV is the number of scan vectors, SL is the laser scan length, JL is the laser jump length, P is the outer boundary of part layer, l is the index of scan vectors, and γ is the part rotation angle (around z-axis). ψ is the shrinkage factor for the outer boundary of the part, ς is the shrinkage factor for laser scan vectors. The shrinkage factor is calculated by fitting a non-linear regression model to the empirical data (Ning et al. [22]). L is the scan length. The abovementioned formulation is constrained by the part rotation along build direction only. In the next section, an effective hatching logic based on the status of the 2D contour’s line segments is described.
Author's personal copy Int J Adv Manuf Technol Fig. 3 Processing steps of genetic algorithm for part layer thickness identification
Start
Calculate and store the layer build time for optimized hatching pattern
Select first layer at h=ZMIN
No Cumulative layer thickness=ZMAX
Rotate the part along z axis keeping fixed hatching pattern
Yes
Next layer
Optimize the part hatching angle for minimum build time
Calculate overall volumetric error and build time
Repeat for the whole population
Apply GA operators to get the optimal/near optimal results
3.4 Optimization of layer thickness
3.4.1 Genetic algorithm-based thickness calculator
The layer thicknesses of the parts which cannot be built using uniform slicing are identified using the genetic algorithm. Objectives, namely, part build time, and surface inaccuracy, are minimized simultaneously. The algorithm starts by assuming a set of uniformly distributed layer thickness values for the whole part as the initial solution. Depending on the quality of solution provided by the initial feasible solution set, the layer thickness values are modified with minimum build time and volumetric error as criteria. The process is repeated until no further improvement can be found. Combination of both objectives ensures that the part is adaptively sliced in an optimal way. If there are vertical surfaces in the part, the algorithm selects the layer thickness as the maximum layer thickness. A detailed description of the proposed genetic algorithm-based adaptive slicing is given in Fig. 3. As the layer thickness is identified for the whole part, the laser scanning movement (described in Section 3.3) for each layer is optimized within the proposed genetic algorithm. The processing details of the genetic algorithm are provided next.
Genetic algorithm is a powerful search technique extensively used in computing to find the exact or approximate solution to optimization problems [30–32]. It simulates the process of biological evolution by considering a population of randomly generated candidate solutions and improves it by applying
Table 1 Parameters associated with genetic algorithm Parameter
Value/range
Cross-over probability Mutation probability Population size No. of generations Selection type Cross-over type Mutation type String length
0.7–0.85 0.01–0.04 4–10 50–500 Roulette wheel selection Two-point crossover Swap ZMAX−ZMIN ZMAX−ZMIN − 0:25 0:04
Author's personal copy Int J Adv Manuf Technol Table 2 Relevant data used in the analysis No. Data type
Value
1 2 3 4 5 6 7 8
220 200 0.2 270 170 α(0–90), β(0–90) γ(0–90) 170
9 10
Laser scan speed (mm/s) Laser power (W) Hatch spacing (mm) Laser jump speed (mm/s) Roller speed (mm/s) Part orientation angle (degree) Part rotation angle (degree) Non-processing time (piston upward and downward speed) (mm/s) Layer thickness range (mm) Build volume (mm3)
11 12
Roller travel distance Piston travel distance
0.04–0.25 250×250×200 (L×B×H) 125 mm (fixed) Layer thickness value
genetic operators such as crossover, selection, and mutation [33–36]. Interested readers can refer to [25–29] for a detailed description. In current work, genetic algorithm has been used for adaptive slicing of the parts with an aim to minimize the build time and surface inaccuracy. Layer thickness values and number of layers are the problem variables. Details of the application of genetic algorithm to the proposed thickness calculator are given below. Layer thickness initialization In the current adaptation of genetic algorithm, individual refers to a set of layer thickness values constituting a part and a population consists of a set of distinct individuals (i.e., part with different layer thickness combinations). The initially generated strings are repaired to avoid the cumulative layer thickness exceeding
Fig. 4 A sample part for uniform adaptive slicing description
Fig. 5 Input part used in the study
the actual part height. Also, the process capability of the machine (allowable layer thickness range) is taken into consideration for layer thickness initialization and other processing steps. In general, a DMLS machine can sinter metal powder in the thickness range (0.04–0.25 mm). In the current work, initial candidate solutions are obtained by generating a uniformly distributed random number in the range (0.04–0.25). The string length is set equal to the maximum possible layers for a part, which is equal to part height divided by minimum layer thickness value. Adjustment to the uniformly generated layer thickness values are performed to keep the cumulative layer thickness value equal to the part height. The first string is always assigned a value equal to the minimum z coordinate value to fix the base height of the part. Generation strategy for one such candidate solution is given below. The process is repeated until the required number of candidate solutions is obtained. Step1: Identify Part maximum (Zmax), minimum height (Zmin), and maximum number of layers (NMax) (NMax= Zmax/ltmin min allowable layer thickness). //NMax is the initial string length Step2: gene (1)=Zmin //Assign minimum part height to first gene of the chromosome. For i=2:Nmax gene (i)=unfrnd (0.04–0.25) //For remaining genes assign a layer thickness between the allowable limit. End for Step 3: Calculate the cumulative layer thickness for each gene, i.e. cum_val (2)=gene (2)+gene (1); Step 4: Identify the gene whose cumulative layer thickness exceeds the part height Count=0;/To count the number of layers. For i=2: Nmax If (cum_val (i)>Zmax) gene (i)=0 //Assigning value equals 0 to the gene that exceeds the maximum allowable layer thickness Count=i; Endif
Author's personal copy Int J Adv Manuf Technol Fig. 6 Resultant sub-part slicing after slicing-based decision making
Endfor N=count. //Number of layers Stop Layer thickness variation A roulette wheel-based selection mechanism is used to select the potential candidates for variation operators, namely, crossover and mutation. Two-point crossover and swap mutation based upon randomly generated crossover points and mutation points are performed to generate new candidate solutions. After crossover and mutation, the newly generated solutions sets are checked to see if they satisfy the constraints. In case of part height constraint violation, modification in the crossover/mutated string is performed. The infeasibility of the layer thickness related with the part height is taken into consideration and repaired accordingly. Crossover and mutation are performed from layer thickness index 2 to N, where N represents the maximum number of layers. Objective function calculation In the present work, both objectives (i.e., minimization of build time and maximization of overall surface accuracy) are combined by using a weighted approach. Before describing the overall objective, a mathematical description of both build time and surface accuracy is provided.
activities, and percentage shrinkage, whereas the surface accuracy is calculated by means of volumetric error. The overall build time can be decomposed into the following time factors: 1. Actual laser sintering time 2. Laser non-sintering time 3. Non-processing time a. Metal spraying time b. Piston upward movement c. Piston downward movement Mathematically, the build time can be written as BT ¼
N X
BTLi þ ðTRi þ TUDi Þ∀i ¼ 1…N
ð6Þ
i¼1
where N¼
dH=T e; if uniform slicing ; jCLTj; otherwise
CLT ¼ fclt1 ¼ lt1 ; :::::::cltn ¼ Hg; clti ¼
I X
lti
i¼1
(a) Build time calculation In the present research, build time is based on the laser scan speed, laser scan length, time for non-sintering
In Eq. (6), BT is the overall build time, whereas BTL is the optimized build time of each layer (Eq. 5). TR and TUD are non-processing time associated with travel distance of
Author's personal copy Int J Adv Manuf Technol Table 3 Results of the input part 1 Slicing type
Adaptive uniform slicing
Part rotation angle (α, β) Number of control point Hatching orientation (γ)
0,0 5 0
Both objectives (Eqs. (7–8)) are normalized in the range 0– 1 by diving the minimum possible build time (BTideal) and maximum possible accuracy (equivalent to minimum possible surface inaccuracy (SIAideal)). An inverse of the overall objective function is used as the fitness metric (Eq. (8)).
F¼ W1 recoater arm and piston movement, respectively. N is the number of layers, T is uniform layer thickness, and H is the part height. CLT is the set of cumulative layer thickness value; clt is the cumulative layer thickness, whereas lt is the individual layer thickness. (b) Surface accuracy calculation Part surface accuracy is calculated as the difference in volume between the fabricated part and the desired part. Surface accuracy is one of the critical aspects of part accuracy calculation. With minimum layer thickness and proper build orientation, surface accuracy can be improved. Parts with inclined and curved surfaces are more prone to staircase effects and hence higher inaccuracy. A mathematical description of surface inaccuracy that has been adapted from ref. [26] is given below. SIA ¼
S X
jAreasþ1 −Areas j 0:5 ltn
ð7Þ
s¼1
∀s ¼ 1; ::::::N þ 1; ∀n ¼ 1; ::::::N
ðW 1 þ W 2 Þ
BT SIA þ W2 BTideal SIAideal
ð8Þ
In Eq. (8), F is the fitness function; BTideal represents the ideal build time, which is calculated by considering uniform slicing with maximum layer thickness; and SIAideal is the ideal surface inaccuracy, which is calculated by considering uniform slicing with minimum layer thickness. BT is the overall build time from Eq. (6), and SAI is the surface inaccuracy from Eq. (7). W1, and W2 is the weight associated with objectives (W1 =W2 =0.5 in this work). Termination criteria The proposed approach terminates on reaching the maximum number of generations. At this point, the build time and surface inaccuracy corresponding to best objective value will be the optimal/near-optimal. The best solution string represents the optimal/near-optimal layer thickness values for whole part. Parameters values associated with genetic algorithms are given in Table 1. Considering the stochastic nature of GA, each test cases were run multiple times (five times in the present research) using GA and the average results of the runs were reported. In next section, the results of the experiments are discussed.
where Areas ¼
s þ1 X 1 TP xpt *yptþ1 − xptþ1 *ypt ∀s ¼ 1; ::::N þ 1 2 pt¼1
In Eq. (7), SIA is the overall surface inaccuracy, N is the total number of layers (N+1 will be the total number of surface contours). Area is the surface contour area, and lt is the layer thickness. In Eq. (3), xpt and ypt are the coordinates of intersection points of each slice; TP is the total number of intersection points; and s is the slice index.
Table 4 Results of the sub-parts of the input part 1 Slicing range No. of layers Built Time (h) Surface inaccuracy (in.)
4 Experimental results In this section, analysis of proposed model on various input parts is provided. Comparisons with traditional slicing approaches are also shown in the results. The description of the dataset used in the present study is provided next. 4.1 Problem data Description of relevant data used in analyzing all input parts is provided in Table 2. Most of the data is related to actual
Sub-part 1
Sub-part 2
Sub-part 3
Sub-part 4
Overall
(0–2.7) 51 1.963 0.00
(12.7–63.5) 207 1.994 0.00
(63.5–127) 255 2.048 0.00
(127–152.4) 102 1.973 0.00
(0–152.4) 615 7.97 0.00
Author's personal copy Int J Adv Manuf Technol Fig. 7 a Input part. b Sliced part with optimal orientation
(a)
(b)
(b)
(a)
(c) Fig. 8 Hatching patterns of part at different layers: a layer 1, b layer 4, and c layer 15
Author's personal copy Int J Adv Manuf Technol Table 5 Results of the analysis on input part 2 Slicing Type
Adaptive slicing
Part rotation angles (α, β) No. of layers Build time (h) Surface inaccuracy (in.) Hatching orientation (γ)
90, 0 15 0.145 0.002 [10,9.9,66.24,0.9,10.81,9.39,4.31,1. 71,10.05,10,10,10,10,10,10]
DMLS machine capability (obtained from literature). Data related with piston upward/downward speed, roller travel distance, and laser jump speed is assumed. In the coming sub-sections, parts of varying complexity are analyzed. 4.2 Case study In this section, experimental results of several example parts are presented. Parts with varying complexity are considered. Before the actual case study, the developed uniform adaptive slicing is discussed with following example. Example An input part with dimension 6×4×5.5 mm is shown in Fig. 4. Part height along the build direction was first optimized by rotating the part along x- and y-axis. All the facets of the parts are then checked to confirm the vertical orientation of the part. The part is found to be vertical along the build direction with 32 vertical facets. Hence, uniform slicing is used for part slicing. The part’s horizontal facets are checked to determine the presence of any features. Five horizontal faces are found at height 0, 1.5, 3.0, 4.5, and 5.5 mm, respectively. Since there are more than two horizontal faces present in the part, it can be concluded that the part has features at height 1.5,3.0, and 4.5 mm, respectively, after excluding the minimum and maximum height, i.e., 0 and 5.5 mm, respectively, of the part. Therefore, heights 1.5, 3.0,
and 4.5 mm are the control points for uniform slicing and uniform slicing is performed in four steps (0–1.5,1.5–3.0,3.0– 4.5, and 4.5–5.5 mm) by considering the maximum allowable layer thickness. In case of a part with inclined or curved surfaces, the recommendation will typically be to perform adaptive slicing. (a) Part 1 A prismatic part of dimensions (152.4 × 101.6 × 152.4 mm) with features is considered (Fig. 5). This part contains three features (two depressions and one protrusion). For better visualization, a wireframe model of the part is shown in Fig. 5. Optimization of part rotation resulted in the part rotation angles (α, β) equal to 0 and 0, respectively. Based on the slicing decision-making routine, the part is sliced using adaptive uniform slicing approach as the part is vertical along build direction and contains features. For slicing, 0-, 12.7-, 63.5-, 127-, and 154.4-mm height were derived as the control points. The part height at 0 mm and 154.4 represent the base and height of the part as shown in Fig. 6. Therefore, uniform slicing in the range 0–12.699, 12.699–63.5, 63.5–127, and 127–154.4 mm is performed separately by considering the slice thickness equal to maximum allowable thickness, i.e., 0.25 mm. Results are presented in Tables 3 and 4. (b) Part 2 A propeller of dimension 67×58.4×1.93 mm is considered for the analysis (Fig. 7a). First, the orientation of the part is optimized by rotating along the x- and y-axis. The optimization of part orientation resulted in the rotation angles (α, β) equal to 90 and 0, respectively. The decision-making routine determines the part that needs to be sliced using the adaptive slicing approach. Thus, the
Fig. 9 a Original part. b Sliced part with optimal orientation
(a)
(b)
Author's personal copy Int J Adv Manuf Technol
(b)
(a)
(c) Fig. 10 Hatching patterns of part layers: a layer 20, b layer 75, and c layer 280
proposed adaptive slicing approach is used to identify the number of layers and thickness of individual layers. The sliced part is shown in Fig. 7b. The optimal number of layers is found to be 15. In addition, the hatching patterns of lasers are also optimized for each layer. Hatching patterns of three random layers, i.e., layers 1, 10, and 15 are displayed in Fig. 8a–c. The results are provided in Table 5.
adaptive slicing approach. Thus, the proposed adaptive slicing approach is used to identify the number of layers and thickness of individual layers. Optimization of part rotation resulted in the rotation angles equal to 0 and 72, respectively, as shown in Fig. 9b. The optimal number of layers was 330. Hatching patterns of three random layers, i.e., layer 1, 10, and 15 are displayed in Fig. 10a–c. The overall results are provided in Table 6.
(c) Part 3
Table 6 Results of the analysis on input part 3
Part 3 is a pivot bracket of dimension 49.53×47.62× 48.27 mm as shown in Fig. 9a. First, the orientation of the part is optimized by rotating along the x- and y-axis. The optimization of part orientation resulted in the rotation angles (α, β) equal to 90 and 0, respectively. The decision-making routine determines the part that needs to be sliced using the
Slicing type
Adaptive slicing
Part rotation angles (α, β) No. of layers Build time (h) Surface inaccuracy (in.)
0,72 330 1.59 0.016
Author's personal copy Int J Adv Manuf Technol Table 7 Results comparison of various methods
Parts no.
Criteria
Uniform slicing (max. layer thickness)
Uniform slicing (min. layer thickness)
Proposed approach
2
Build time (h) Surface inaccuracy (in.) Build time (h) Surface inaccuracy (in.)
0.009 0.0038 0.95 0.033
0.05 0.0009 5.5 0.005
0.018 0.002 1.45 0.015
3
4.3 Comparison with traditional slicing approaches In order to determine the performance of the proposed approach, comparisons with traditional slicing is made. The traditional slicing approaches are categorized into: (1) build time-oriented and (2) surface accuracy-oriented. While both slicing approaches are based on uniform slicing, build timebased slicing tries to minimize the overall build time by keeping the maximum possible thickness, whereas surface accuracy-based slicing approach keeps the part layer height at the minimum possible thickness. Parts 2–3 have been considered for computing the performance of the methods. Table 7 displays the results obtained using three methods. In addition, to percentage improvement in build time and surface accuracy using the proposed approach has also been computed. The following equations are used. % improvement BT ¼
% improvement SIA ¼
BTtraditional −BTproposed BTtraditiona
SIAtraditional −SIAproposed SIAtraditional
ð9Þ
ð10Þ 5 Conclusions and future research
The overall improvement from the proposed method is given by: % improvement overall ¼ % improvement BT þ % improvement SIA
Equation (11) represents the overall percentage improvement. Build time and surface accuracy is calculated using Eqs. (7– 8). On an average, compared to uniform slicing with the maximum layer thickness, the proposed method improved the result by 28.39 %, while in case of uniform slicing with the minimum layer thickness, 34.21 % improvement was found, as shown in Table 8. In addition, the computational time of all case studies were recorded. Computations using the proposed approach involve three main tasks, i.e., pre-processing, part orientation, and overall objective function evaluation. Pre-processing includes 3D part generation and parsing of STL files, whereas part orientation involves the optimization of parts orientation using BTI and SAI. In objective function evaluation, GA (if required) is used to generate candidate solution along with optimization of hatching patterns for each part layer. The total computational time used in case studies 1– 3 is 1.05, 37.32, and 570.34 min, respectively. The variation in the computational time is due to part geometry and number of layers.
ð11Þ
Equation (9) represents the percentage improvement calculation in case of build time, where BTtraditional represents the build time obtained using uniform slicing (both uniform slicing with maximum layer thickness and minimum layer thickness). BTproposed represents the build time obtained using the proposed approach. Equation (10) represents the percentage improvement calculation in case of surface accuracy, where SIAother represents the surface inaccuracy obtained using uniform slicing (both uniform slicing with maximum layer thickness and minimum layer thickness). SIAproposed represents the surface inaccuracy obtained using proposed approach.
An algorithm for overall optimization of the DMLS process has been proposed and validated with a set of examples. On an average, compared to uniform slicing with the maximum layer thickness, the proposed method improved the result by 28.39 %, while in case of uniform slicing with the minimum layer thickness, 34.21 % improvement was found. The method is generic enough to be applicable to other RP/M techniques that do not need support structures. The role of part orientation in the initial phase of the task reduces the overall computational effort. Optimization of laser scan movement Table 8 Percentage improvement in the results using proposed slicing technique Parts no.
Percent improvement (uniform slicing with maximum layer thickness)
Percent improvement (uniform slicing with minimum layer thickness)
2 3
28.48 33.40
31.30 36.03
Author's personal copy Int J Adv Manuf Technol
ensures minimum layer build time, which results in great savings in terms of time for fabricating the whole part. This results in reducing fabricating cost without affecting the accuracy of the part. In addition, decision making on the type of slicing in part domain reduces the computational effort for the parts that can be uniformly and adaptively uniform sliced. In the present work, STL format is used as an input. In the future work, other CAD file formats such as NURBS and DFX will be explored. Considering the equipment cost and build time, development of the algorithm for maximizing the workspace utilization also deserves attention.
References 1. Beaman JJ (1996) Solid freeform fabrication—a new direction in manufacturing. Kluwer, Norwell 2. Lan PT, Chou SY, Chen LL, Douglas G (1997) Determining fabrication orientations for rapid prototyping with stereo lithography apparatus. Comput Aided Des 29:53–62 3. Masood SH, Rattanwong W, Iovenitti P (2003) A genetic algorithm for a best part orientation system for complex parts in rapid prototyping. J Mater Process Technol 139:110–116 4. Rock SJ, Wozny MJ (1992) In: Marcus HL et al (eds) Generating topological information from a ‘bucket of facets’, solid freeform fabrication symposium. University of Texas, Austin, pp 251–259 5. Kirschman CF, Jara-Almonte CC, Bagchi A, Dooley RL, Ogale AA (1991) Computer aided design of support structures for stereo lithographic components. Proceedings of the 1991 ASME Computers in Engineering Conference, Santa Clara, pp 443–448 6. Rajagopalan M, Aziz NM, Huey CO (1995) A model for interfacing geometric modeling data with rapid prototyping systems. Adv Eng Softw 23:889–896 7. Farouki RT, Konig T (1996) Computational methods for rapid prototyping of analytic solid models. Rapid Prototyp J 2(3):41–49 8. Guduri S, Crawford RH, Beaman JJ (1991) In: Marcus HL et al (eds) A method to generate exact contour files for solid freeform fabrication. In proceedings of solid freeform fabrication symposium. University of Texas at Austin, Austin, pp 95–101 9. Dolenc A, Mäkelä I (1994) Slicing procedures for layered manufacturing techniques. Comput Aided Des 26(2):119–126 10. Brown S (1993) Simulation of solid freeform fabrication. In: Marcus HL et al (eds) Solid freeform fabrication symposium. University of Texas, Austin, pp 143–149 11. Sabourin E, Houser SA, Bohn JH (1997) Accurate exterior, fast interior layered manufacturing. Rapid Prototyp J 3(2):44–52 12. Thomas CL, Gaffney TM, Kaza S, Lee CH (1996) Rapid prototyping of large scale aerospace structures. IEEE aerospace applications conference, Profet, R., chair, Aspen, Colorado, USA, February 4– 11, Vol. 4, pp. 219–230 13. Tyberg JT (1998) Local adaptive slicing for layered manufacturing. Master’s thesis, University of Virginia 14. Sabourin E, Houser SA, Bohn JH (1996) Adaptive slicing using stepwise uniform refinement. Rapid Prototyp J 2(4):20–26 15. Tyberg JT, Bohn JH (1998) Local adaptive slicing. Rapid Prototyp J 4(3):118–127
16. Tata K, Fadel G, Bagchi A, Aziz N (1998) Efficient slicing for layered manufacturing. Rapid Prototyp J 4(4):151–167 17. Kai CC, Fai KL (2003) Rapid prototyping principles and applications. World Scientific press, 2003 18. Marsan AL, Kumar V, Dutta D, Prat MJ (1998) An assessment of data requirements and data transfer formats for layered manufacturing. NIST, US Department of Commerce 19. Chen K, Crawford RH, Beaman JJ (1996) In: Bourell DL et al (eds) Parametric representation of part contours in SLS process. Solid freeform fabrication symposium 1996. University of Texas, Austin, pp 597–608 20. Crawford RH (1993) In: Marcus HL et al (eds) Computer aspects of solid freeform fabrication: geometry process control, and design, solid freeform fabrication symposium. University of Texas, Austin, pp 102–112 21. Chari JK, Hall JL (1993) In: Marcus HL et al (eds) Robust prototyping. Solid freeform fabrication symposium. University of Texas, Austin, pp 135–142 22. Ning Y, Wong YS, Fuh JYH, Loh HT (2006) An approach to minimize build errors in direct metal laser sintering. IEEE Trans Autom Sci Eng 3(1):73–80 23. Padhye N, Deb K (2010) Evolutionary multi-objective optimization and decision making for selective laser sintering. GECCO’10 24. Byun HS, Lee KH (2005) Determination of the optimal build direction in layered manufacturing using a genetic algorithm. Int J Prod Res 43(13):2709–2724 25. Padhye N, Kalia S (2009) Rapid prototyping using evolutionary algorithms: Part 1 and Part II. GECCO’09 26. Paul R, Anand S (2012) Process energy analysis and optimization in selective laser sintering. J Manuf Syst 31(4):429–437 27. Tyagi S, Ghorpade A, Karunakaran KP, Tiwari MK (2007) Optimal part orientation in layered manufacturing using evolutionary stickersbased DNA algorithm. Virtual Phys Prototyp 2(1):3–19 28. Dwivedi SN, Tyagi SK, Tiwari MK (2007) Optimal part orientation in fused deposition modeling: an approach based on continuous domain ant colony optimization. Int J Adv Manuf Syst 10(2):95–110 29. Lu K, Jing M, Zhang X, Liu H (2013) Optimization of sequential subdivision of depth of cut in turning operations using dynamic programming. Int J Adv Manuf Technol 68(5–8):1733–1744 30. Verma A, Tiwari MK (2009) Role of corporate memory in global supply chain environment. Int J Prod Res 27(1):5311–5342 31. Choi SH, Samavedam S (2001) Visualization of rapid prototyping. Rapid Prototyp J 7(2):99–114 32. Tyagi SK, Yang K, Verma A (2007) Non-discrete ant colony optimisation (NdACO) to optimise the development cycle time and cost in overlapped product development. Int J Prod Res 51(2):346–361 33. Goldberg DE (1989) Genetic algorithm in search, optimization and machine learning. Addison-Wesley, Reading 34. Tyagi SK, Yang K, Tyagi A, Dwivedi SN (2011) Development of a fuzzy goal programming model for optimization of lead time and cost in an overlapped product development project using a Gaussian adaptive particle swarm optimization-based approach. Eng Appl Artif Intell 24(5):866–879 35. Tyagi SK, Yang K, Tyagi A, Verma A (2012) A fuzzy goal programming approach for optimal product family design of mobile phones and multiple-platform architecture. IEEE Trans Syst Man Cybern Part C Appl Rev 42(6):1519–1530 36. Verma A, Shukla N, Tyagi S, Mishra N (2014) Stochastic modelling and optimisation of multi-plant capacity planning problem. Int. J. Intelligent Engineering Informatics, X(Y), 00–00