Next Article in Journal
Mathematical Modeling of the Hydrodynamic Instability and Chemical Inhibition of Detonation Waves in a Syngas–Air Mixture
Previous Article in Journal
Modeling the Five-Element Windkessel Model with Simultaneous Utilization of Blood Viscoelastic Properties for FFR Achievement: A Proof-of-Concept Study
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Novel Multi-Directional Partitioning Method for Support-Free 3D Printing of Inner Runner Structural Components

School of Mechanical Engineering and Automation, Northeastern University, Shenyang 110819, China
*
Author to whom correspondence should be addressed.
Mathematics 2023, 11(24), 4878; https://doi.org/10.3390/math11244878
Submission received: 25 October 2023 / Revised: 27 November 2023 / Accepted: 1 December 2023 / Published: 5 December 2023
(This article belongs to the Section Computational and Applied Mathematics)

Abstract

:
Three-dimensional printing has great advantages in manufacturing parts with complex internal structures. At present, there are still significant challenges in the unsupported 3D printing of thick-walled parts with inner runners. In this paper, a partitioning method for support-free-fabricating workparts with a built-in inner runner structure is proposed and discussed in detail. With the method, partitioning planes are firstly created according to the direction changes of the inner runner, a “top to bottom” method is used for avoiding the interference of the generated planes, and thirdly the outer surface of the workpiece is considered for a second partition for the support-free purpose. A key algorithm for calculating partitioning planes for inner runner structures is also proposed and introduced in detail, including the iteration method, the calculation for intersectional profile mass centers, and the discussion of the convergence. Algorithm analysis is also performed with a simple model for assessing the influence from the defined parameters, including the proximity Φs and the increment coefficient σ, on the iteration results as well as on the iteration process. Also, an application test is carried out on a column model with a complex inner runner structure built-in. The result from all the tests indicates that the proposed algorithm is successful in partitioning inner runner structures for support-free fabrication.

1. Introduction

Many components used in jet engines and turbine generation contain the important features of inner runners, such as valves, nozzles, and turbines. It is usually difficult to obtain such internal structures through subtractive machining. In recent years, 3D printing technology, especially LMD (laser melting deposition), is increasingly being used in fabricating and repairing such components. Traditionally, in order to avoid the collapse of melted materials during printing processes such as LMD or FDM (fused deposition molding), support structures are usually needed, which is time-consuming and wasteful of materials. Meanwhile, support structure removal processes, which may be time-, labor-, or cost-intensive processes, are inevitable [1]. Usually, it is not feasible to add or remove support structures inside parts with inner runner structures, due to the lack of space. For parts like a jet engine fuel nozzle or a turbine, the shape of inner runners cannot be simply modified for less support generation, because the features have to serve hydrodynamic requirements. From this point of view, improvements in 3D printing methods need to be prioritized over the modification of inner runner design.
There are mainly three categories of methods for support-free 3D printing: partition and combination (P&C) methods, self-support, and multi-direction printing methods. P&C methods firstly divide a model into finite minor parts, which can be 3D-printed without support structures; then, these minor parts are fabricated separately; finally, the minor parts are combined together as a whole. In this field, Wei et al. proposed a skeleton-based partitioning method particularly for support-free printing shell models “while minimizing the effect of the seams and cracks” [2]. Karasik et al. also proposed a method where the partitioning planes “were not chosen randomly but were derived from shape analysis routines that identify and resolve various commonly-found geometric configurations” [3]. This P&C process breaks the fabrication procedure into two steps of “printing” and “combining” where after the printing step, the minor parts must be soldered or stuck, which likely involves more complicated soldering processes especially dealing with metal materials. From this point of view, this P&C process is currently more suitable for the FDM machines with plastic materials.
For self-support methods, Zhao et al. proposed an inclined slicing method for non-support printing, in which “the overhanging structures are supported by the adjacent layer” [4]. Also, Xie and Chen developed an interior carving method with a voxel structure, which is self-supportable during printing with acrylonitrile butadiene styrene plastic (ABS) and polylactic acid (PLA) materials [5]. The self-support methods are more suitable for support-free printing with high-viscosity materials, such as plastics, because the material in overhanging structures has to be held by the viscidity of the material itself to keep its deposition on the right position. For low-viscosity materials, such as melted metals, this method may fail to prevent material collapse.
For support-free fabrication with metal powder materials, such as in LMD processes, multi-direction slicing and printing processes have been accepted and developed by researchers, taking advantage of multi-axis motion mechanisms such as industrial robots and five-axis machine tools. Existing multi-direction slicing and printing methods usually focus on specific features of support-free printing, e.g., methods especially for revolving workparts, for outer surfaces, or for shell workparts [6].
As early as 2004, Sundaram et al. proposed a slicing method for support-free 3D printing using five-axis machine tools [7]. This method determines the overhanging structure by the angle between the surface-normal direction and the construction direction as well as the surface isocline. This method is particularly useful for revolved bodies, because the central axis of the workpart is needed by the method.
Multi-axis printing methods have also been developed by combining with the partitioning process by Gao [8], Dai [9], and Wu [10]. In their methods, the models are firstly analyzed and partitioned into minor parts which can be non-support printed. Secondly, the minor parts are sliced using planes [7] or curved surfaces [9,10]. Finally, the minor parts are printed in a successive sequence, using a multi-axis printing platform without sticking or soldering processes.
These methods have the possibility to be modified for the LMD processes, though their verifications were performed using FDM processes. Similar to this idea, various partitioning and slicing methods were also developed by other researchers [11,12,13,14,15], using planar or curved [13] slicing surfaces, and equal or unequal [11,14,15] layer thicknesses. The methods above have been successful in printing the outer profiles of the workparts without support structures; however, inner profiles of built-in runners or cavities have not been considered.
Ding et al. [16] proposed a method particularly useful for 3D-printing components with a large number of holes without support structures. This method is capable of printing parts with multi-direction straight holes. Zhang et al. proposed an adaptive slicing method for multi-axis hybrid plasma deposition 3D printing [17,18]. This method used unequal-thickness slices (thickness varies even in one slice) in changeable slicing directions and was verified by printing a hollowed helix part. Wall thickness around the hollowed features in these two methods is a vital factor which may make the method unreliable, because, if the wall thickness becomes larger, the thickness between the two adjacent slicing surfaces varies from one end to the other, making the dimension of the thicker side go beyond the deposition capability of the printing process.
According to the currently published literature, most of the relevant research focuses on the support-free printing methods of the outer surface, and there are few reports on the printing of inner profiles. At present, there are still significant challenges in the unsupported printing of thick-walled metal parts with inner runners. In addition, for some key parts that require a high surface quality or shape accuracy of the inner runner, the additive and subtractive hybrid manufacturing of the inner runner are necessary to meet their requirements.
In this paper, a novel multi-directional partitioning/slicing idea for the non-support printing of thick wall workparts with a curved-guideline inner runner is proposed and the key algorithm for calculating the partitioning planes is also presented and discussed. This method focuses on printing workpart partitions with one directional varying inner runner, such as the fuel nozzle, valve block, and turbine, where the shape of the runner must be ensured. With this method on a multi-axis machine, the slicing direction will be periodically changed according to the mass-center-curve of runner intersections (circular or non-circular) and the printing process parameters, helping to keep the printing process reliable using a constant slice thickness. This method allows for precise milling or carving of the inner runner surface during the printing process. Through the additive and subtractive hybrid manufacturing, high-precision requirements for the surface quality and shape of the inner runner in some key components can be met.

2. The Basic Idea of the New Support-Free Method

Compared with traditional parts, an inner runner built-in workpart has two profiles, the inner profile and the outer profile. Thus, both profiles shall be considered when designing the forming methods involving LMD processes. In this method, the support-free problem of the inner contour can be solved before the outer.
Consider the following steps: (1) start from the bottom along an initial direction; (2) calculate the tilting angle k of the inner runner guideline; (3) create a new “base plane” p perpendicular to the guideline at the point at which k is larger than a valve value k0 (which is a preset value and related to printing parameters); (4) set the calculation direction to the normal of p; and (5) iterate the steps from (1) to (4). It is obvious that a series of planes of p1; p2; p3…can be acquired for partitioning the part. If the valve value k0 is carefully selected, the melt material collapse could be avoided during the additive manufacturing so that the support-free process can be achieved.
The method is discussed in detail as follows.

2.1. Setup of the Initial Plane, Direction, and Step Length for the Calculation

The initial bottom surface is generally horizontal, the initial forming direction is the normal of the bottom surface, and the moving step length of the slicing plane is set manually, depending on the slicing thickness. The threshold value k0 and the maximum tilt angle of the single-direction construction can be calculated according to the 3D printing process parameters and the performance of the equipment.
As shown in Figure 1, the initial base plane is the bottom plane, and the offset distance along the normal direction of the slicing plane is the step length. The angle between the normal directions of the inner runner surface and the slicing plane in the intersectional profile is calculated as k. When the threshold value is greater than or equal to k0, the slicing plane stops moving.
Note that the real calculation adopts the “stl” format, in which the inner runner surface is approximated by a number of triangle facets, so the value of k needs to be calculated for the corresponding times and the largest one is selected.

2.2. Determine a Partitioning Plane

Choose the point N where the largest k < k0 occurs (since there are a number of facets intersecting with one slicing plane) in the last slicing plane. A new partitioning plane can be created through point N, using d n as the normal vector, as shown in Figure 2.
Choose the new partitioning plane as the new base plane, and continue the calculation as introduced above in the direction of d n . Thus, all the partitioning planes can be acquired by repeating the processes in subsections A and B.

2.3. Top-to-Bottom Partitioning

Some of the partitioning planes may intersect with each other, causing minor partitions as shown in Figure 3, if the thickness between the workpart’s outer surface and the surface of the inner runner is too large. However, for thin-wall hollowed workparts, the partitioning process is completed and all the partitioning planes are determined. To avoid those minor partitions, by simplifying the following slicing processes, a “Top to Bottom” partitioning process can be used. First, the workpart is partitioned by the last calculated partitioning plane from the top, by the one before the last, and so on until the initial base plane. In this way, a workpart like that in Figure 3 can be partitioned to a series of sub-models as shown in Figure 4.

2.4. Sub-Model Partitioning for Outer Surface

All the sub-models can be support-free-printed according to the inner runner surface, when the workpart is partitioned by the process above. But some of the outer surface may now encounter the overhanging issues, because for each base plane, some surfaces may incline too much outward to hold the melt material at the right position during 3D printing. Taking the partition result of Figure 4 as an example, a discussion follows on a process to solve this emerging issue.
As shown in Figure 5, two planes are created perpendicular to the base plane, passing through the two corresponding edges at the bottom, and the sub-model is partitioned again into three pieces. For the largest one, the part can be sliced through the normal direction of its base plane, and for the two small ones, they can be sliced through the normal direction of the newly created partitioning planes. In the LMD processes, these three parts can be constructed using multi-axis 3D printing equipment, without any support structures. And then all those partitions can be constructed one by one without any soldering process.
In all, our plan is to partition the workpart considering the support-free slicing issue for the inner runner first, and then solve the non-support problem for the sub-models for the outer surface, using a second partitioning and slicing process. Finally, the whole part can be 3D-printed using multi-axis LMD equipment without support structures. Detailed calculation processes considering the inner runner are discussed in the following sections. Note that the methods for solving the support-free problem for the outer surface are not included in this paper, because this issue has already been solved by many researchers mentioned in the introduction.

3. Position Calculations for the Partitioning Plane

A point position and a normal vector are necessary for determining a new plane; thus, in this section, the point position calculation for the partitioning plane is explained in detail. All the calculations in this paper are based on the “stl” format.

3.1. The Pre-Slicing Method

Initially, the bottom plane is chosen as the first partitioning plane (base plane), and a value of s is set as the scanning step length, which is the distance that the slicing plane moves along its normal direction in every step. With these two parameters, a series of planes can be created for a pre-slicing process along the normal of the base plane, searching for a facet whose inclination toward the pre-slicing plane is large enough to cause a failure of the melted material deposition in the current direction.
When a pre-slicing plane intersects with the inner runner, an intersectional profile is generated in a number of facets composing the surface of the runner. These facets are marked as Equation (1), the corresponding unit normal vectors are marked as Equations (2) and (3) is a unit normal vector of the current partitioning plane.
F n = ( F 0 , F 1 , F 2 , , F n )
n n ( n 0 , n 1 , n 2 , , n n )
d n ( d n x , d n y , d n z )
Thus, the dot product between d n and ~ n n T can be presented as Equation (4). All dot products are cosine values because d n and n n are unit vectors. In Equation (4), the minimum value is presented as Equation (5).
n n d n = ( c o s θ 0 , c o s θ 1 , c o s θ 2 , c o s θ n )
m i n ( c o s θ j ) , j [ 0 , n ]
As shown in Figure 6, if the last pre-slicing plane is marked as SliceB, and if the current is SliceT, they will be related according to Equation (6), and the minimum values of Equation (4) for both SliceB and SliceT are marked as Equations (7) and (8), respectively.
S l i c e T = S l i c e B + s d n
B m i n ( c o s θ j )
T m i n ( c o s θ k )
Therefore, the whole searching process can be described as repeat calculations of Equation (9) until the conditions of Equation (10) are satisfied.
S l i c e B = S l i c e T S l i c e T = S l i c e B + s d n
B m i n = B m i n ( c o s θ j ) > c o s θ m a x T m i n = T m i n ( c o s θ k ) c o s θ m a x

3.2. The Base Point Selection

When Equation (10) occurs, the iteration of Equation (9) will stop. The current SliceB will be called a “Restricting Plane (RP)”, and the corresponding facet where Bmin occurs will marked as B(Fj). The position of a new partitioning plane which needs to be determined is a point below the RP, making the intersecting profile of the partitioning plane and the inner runner surface remain below the RP. So, three vertices of B(Fj) should be considered prior to the other points as the base point. Set Vn(xn; yn; zn); (n = 1; 2; 3) are the coordinates of the vertices of B(Fj) and SliceB(x; y; z) = 0 is the function of SliceB; thus, the new needed base point shall satisfy SliceB(Vn) ≤ 0, which means the vertex(vertices) of B(Fi) below the RP could be selected, as shown in Figure 7. If there is not only one vertex below the RP, the closest Vl satisfying Equation (11) will be selected as the base point. The distance calculation was performed using the traditional equation of Equation (12).
d ( V l ) = m i n d ( V n ) d ( V n ) 0 n ( 1,2 , 3 )
d = A B x n + B B y n + C B z n + D B A B 2 + B B 2 + C B 2

3.3. Verification and Adjustment of Base Point Position

Sometimes, the intersection profile of the new partitioning plane and the inner runner surface may also intersect with the RP; however, once the base point is selected, the new slicing direction can be calculated and, consequently, the partitioning plane through the base point will be created. To avoid this, the base point position needs to be moved by md along the negative normal direction of the pre-slicing plane, and the md is defined by Equation (13). In Equation (13), dt is the distance between a point in the intersection profile and the RP according to Figure 8.
m d = λ m a x ( d t )
In Equation (13), max(dt) is the maximum distance between a point in the intersection profile and the RP, while λ is the length coefficient, which is used for controlling the moving distance of the position adjustment for the base point.

4. Normal Calculations for the Partitioning Plane

With an “stl” file, the normal direction for creating the new partitioning plane has to be calculated with the vertices’ information, and the result would likely be not very close to the direction of the inner runner; however, the normal direction of the new partitioning plane should be in the direction of the inner runner, which is not available in an “stl” format file. In this section, an iteration method is introduced in detail.

4.1. The Iteration Method

As shown in Figure 9, the normal unit vector for partitioning plane pm is defined as d n m , which needs to be iterated a number of times, and the iterative equation for the n-th step is defined as Equation (14), in which σ is an increment coefficient. The function U ( x ) is a normalizing function defined in Equation (15), and the vector c ( n 1 ) is defined in Equation (16).
d n m ( n ) = U ( d n m ( n 1 ) + σ ( c ( n 1 ) d n m ( n 1 ) ) ) σ ( 0,1 )
U ( x ) = x x
c ( n 1 ) = U ( C ( n 1 ) C ( n 1 ) )
In Equation (16), C(n−1) and C′(n−1) are the mass center positions of the intersection profile by the inner runner surface and the iterating partitioning planes, respectively, and the vector c ( n 1 ) is called the mass center variation vector. These three parameters are all from the iteration step n − 1, and the relative calculation processes are introduced in the following subsection B.
At the beginning of the iteration, d n m ( 0 ) is set as d n m 1 , which is the normal unit vector of the last determined partitioning plane pm−1. With the point Vl and the normal vector d n m ( 0 ) , the first iterating partitioning plane p m ( 0 ) can be created. The p m ( 0 ) intersects with the inner runner surface, generating an intersection profile, whose mass center is C(0). Then, moving plane p m ( 0 ) along the d n m ( 0 ) for a tiny offset of μ, a new intersection profile will be generated and the corresponding mass center is C′(0).
The stop condition for the iteration is defined as Equation (17), in which Φ is an angle function calculating the cosine value of the intersection angle between two assigned vectors. Φ can be defined as Equation (18).
ϕ n = d n m ( n ) c ( n ) ϕ s
ϕ = v a v b = c o s γ a b
Obviously, according to Equation (18), Φ ∈ [−1, 1]. Φs is the iteration stop condition value, which is a constant and assigned manually. Considering with the iteration target, Φs should be close to 1, which means the vectors d n m ( n ) and c ( n ) should be in very close directions.
If the stop condition is achieved at the n-th step during the iteration, the normal direction of the partitioning plane pm will be set as Equation (19).
d n m = d n m ( n )

4.2. Calculations for Intersectional Profile Mass Centers

In an “stl” file, all surfaces are approximated by finite triangle facets, so the intersectional profiles are also composed by segments in the intersecting plane, as shown in Figure 10; an intersection profile has finite vertices such as (P0, P1, P2,…, Pm). Then, the mass center CI of the profile P0P1P2P3P4P5P6P7P8 can be acquired through two steps: (1) calculate the mass centers C0i(i+1) of all the triangles in Figure 10; (2) perform weighted calculations for all C0i(i+1) values by each corresponding triangle size. The calculation steps can be presented as Equation (20).
A 0 i ( i + 1 ) = 1 2 ( P 0 P i × P 0 P i + 1 ) n I C 0 i ( i + 1 ) = P 0 + P i + P i + 1 3 C I = i = 1 m 1 C 0 i ( i + 1 ) A 0 i ( i + 1 ) / i = 1 m 1 A 0 i ( i + 1 )
where A0i(i+1) and C0i(i+1) are the size and the mass center of ΔP0PiPi+1, respectively, and n I and CI are the normal unit vector and the mass center of the intersection profile P0P1P2P3P4P5P6P7P8, respectively.

4.3. Discussions of the Convergence

In order to acquire an ideal result from Equation (14), the iteration has to be convergent to satisfy the condition defined in Equation (21), in which v is the direction of the inner runner and theoretically shall be the tangent unit vector of the guideline; however, it is approximated by c ( n ) . Thus, Equation (21) means the result in the n step has to always be closer to v than that in the n − 1 step until Equation (17) is satisfied.
d n m ( n ) v > d n m ( n 1 ) v
Equation (21) can also be rewritten in the form of Equation (22), which means that, every time, the vector d n m ( n ) should not go too far toward the vector v in each step of the iteration, so the value of σ should not be too large.
  ( d n m ( n ) d n m ( n 1 ) ) v > 0
Also, according to Equation (14), set M is the modulus of d n m ( n ) + σ ( c ( n ) d n m ( n ) ) , and the relationship between M and σ can be derived as Equation (23), in which γ is the angle between d n m ( n ) and c ( n ) . It is obvious that when Φ ∈ [0, π/2], M is a monotonic function for γ; thus, only if the value of σ is small enough, the iteration can stop upon satisfying the condition of Equation (17), and at this time, M should be a value which is smaller than but very close to 1.
M 2 = σ 2 + ( 1 σ ) 2 + 2 σ ( 1 σ ) c o s γ

4.4. Analysis of Applicable Conditions

The partitioning method is not applicable to all parts with an inner runner. The applicability analysis is conducted below to clarify the limitations of this method’s application.
(1)
The partitioning plane cannot intersect with the bottom surface. If, for some reason, such as a large change in the direction of the inner runner, only a portion of the bottom surface can be printed at the beginning, then the subsequent printing process will be difficult to achieve, as shown in Figure 11a.
(2)
Only one inner runner contour can be present in the model to obtain a determined partitioning plane. As shown in Figure 11b, there are two inner runners in the model and the directions of each runner are different. Two sets of different partitioning planes will be generated, causing the model to be unable to correctly partition. To address this situation, it is necessary to pre-partition the model before implementing this method.

5. Algorithm Analyses

A set of programs were developed in Python 3.7.3 (Python Software Foundation, Wilmington, DE, USA) and the VTK 8.1.2 visualization toolkit (Kitware Inc., Clifton Park, NY, USA). A series of tests were carried out for assessing and adjusting the algorithm with some variables, and the result is discussed in detail in this section. All the physical meanings of the variables are listed below.
  • α—the angle between the normal of a facet and the fabrication direction.
  • γ—the angle between d n m ( n ) and c ( n ) .
  • θ—tilt angle, α = θ + π/2.
  • il—tilt limit, il = cosαmax.
  • s—scanning step length, the distance for the slicing plane to move along its normal direction in every step in pre-slicing process.
  • μ—offset, the tiny distance in Figure 9, used for calculating Equation (16).
  • Φ—proximity, Φ = cosγ.
  • Φs—proximity requirement, set manually, for stopping the iteration.
  • σ—increment coefficient in Equation (14).
  • λ —length coefficient in Equation (13).
  • fc—cosine value of the angle between the normal of the inner runner facet at the current partitioning plane Pm and the normal of the former partitioning plane Pm−1.
  • mc—the minimum cosine value of the angles between the normals of the inner runner facets at Pm and the normal of Pm.
The analysis is carried out by investigating the influence of the variation in Φs and σ on the partitioning result and the calculation process with a test “stl” model. As shown in Figure 12, the test model is a 50 mm × 40 mm × 80 mm cuboid with a single-direction crooked inner runner.

5.1. Influences from Φs to the Partitioning Results

Φ defines the proximity of two vectors, and it is a cosine value of the angle between the partitioning plane’s normal direction and the mass center vector, c . The closer Φ is to 1.0, the more likely that the two vectors will have the same direction. Φs is set manually as a requirement of proximity from the partitioning plane’s normal vector to the mass center variation vector c . Φs has a significant influence on the calculation process, because the iteration stops only if ΦΦs is satisfied. So, the following analysis was carried out by varying Φs with il set to –0.2924, the scanning step length s set to 0.7, the offset μ set to 0.01, and the increment coefficient σ set to 1/8. The result is listed in Table 1, and Figure 13 presents the relationships between mc, Φs, and the final number of partitioning planes generated.
According to Figure 13, when Φs was set to smaller values, more partitioning planes were finally acquired, and during the whole process, smaller mc values were achieved. In contrast, if Φs was set to values closer to 1.0, fewer partitioning planes could be generated and greater mc values closer to 0.0 could be achieved.
Theoretically, a smaller mc value indicates a large angle between the normal directions of the facet and the partitioning plane where they interact with each other. This also revealed that a large angle was present between the guideline of the inner runner and the normal direction of the partitioning plane. Under this condition, the partitioning plane did not perform well, a large tilting angle was still present between the inner runner and the partitioning plane, and even the construction direction changed along the normal of the generated partitioning plane. Consequently, the following would repeatedly take place as the scanning continued: il would be reached sooner, the new partitioning plane would be generated with a small Φs, and finally a greater number of partitioning planes would be achieved.
From this point of view, a greater value for Φs will help to reduce the number of partitioning planes, and for each plane, the angle between the normal directions of the facet of the inner runner and the partitioning planes will also be decreased. However, there will not always be a better result for a larger value of Φs. Also, as shown in Table 1 and Figure 13, the value of mc had no significant changes when Φs was set to 0.999, 0.9999, and 0.9999, meaning that Φs = 0.999 was large enough compared with the other two values. Thus, in this point of view, a proper Φs shall be selected, or if an even greater value is set, more calculation time and resources will be spent.
It is important to point out that Φs = 1.0 is an ideal situation which will never be adopted, for following three reasons:
(1)
It is meaningless. As we know from Equation (14), the aim of the iteration is to turn the d n vector into a direction close to c , which is actually used for approximating the guiding line direction. At this point, a Φs = 1.0 requirement is to make the d n vector turn toward the same direction as c (but not the real guiding line direction), which does not make sense.
(2)
Errors have already existed, as the program worked on the “stl” files which use triangle facets to approximate all the workparts’ surface features. Thus, Φs = 1.0 would theoretically not achieve a better result than a smaller value.
(3)
It took too much calculation time, because on the one hand, to turn the vector into a more accurate angle but not a range, the increment coefficient σ has to be set to a very small value. In this way, many more iteration steps will be required. On the other hand, from Figure 13, when Φs is great enough, better results will not be achieved with an even larger value, but more calculation resources will be consumed.
Besides the above, from the fourth column of Table 1, it was clear that during all the calculations, every fc value was smaller than the set il, indicating that our method succeeded in partitioning the model for the support-free LMD process.

5.2. Influences from σ to the Partitioning Results

The increment coefficient σ is used for controlling the iteration increments, which is defined by the product of σ, the differential vector of the partitioning plane’s normal unit vector d n , and the mass center variation vector c , according to the iteration equation (Equation (14)). Table 2 and Figure 14 show the test results of the influence from a varying increment coefficient, with related parameters set as il = −0.2924, s = 0.7, μ= 0.01, Φs = 0.9999, and λ = 1.5. From Table 2, when σ was set to greater values of 1/2 or 1/4, only the first partitioning plane was fully acquired, but for the second plane, the iteration did not converge to the desired range of ΦnΦs. This means that the program knows that a partitioning plane is needed here, but the normal direction of the plane cannot be acquired. As a comparison, when σ was set to smaller values such as 1/8, 1/16, and 1/32, all four partitioning planes were fully acquired. From the third column of Table 2, as σ became smaller, the mc values did not change much, because all iterations stopped when ΦnΦs was satisfied. From this point of view, for the same given value of Φs, the iteration result will almost be the same for the variation in σ.
On the other hand, from Figure 14, the value of σ influenced the total number of iteration steps for acquiring the same partitioning plane. It is clear that when σ was reduced to half its value, the total number of iteration steps would be doubled for calculating the same plane, causing more calculation time to be spent.
In all, for a certain Φs, too great a σ value will cause the convergence of the iteration to fail; when the convergence is valid, the iteration result will be almost the same for different σ values; a smaller σ will cause more iteration steps.
Also, from the fourth column of Table 2, the fc value was always greater that il, indicating that the algorithm worked successfully for support-free partitioning.

5.3. Analysis of the Iteration Process

Two calculation processes for iterating the third partitioning plane are presented here for comparison. In one process, Φs was set to 0.9999 and σ was set to 1/6, while in the other process, Φs was set to 0.99999 and σ was set to 1/10. The other parameters were set to the same values in the two processes as il = −0.2924, s = 0.7, and μ = 0.01. Table 3 and Table 4 show the data generated in relative iterations. With these data, Figure 15 and Figure 16 were created to reveal the relationships between Φ and the number of iteration steps as well as mc and the number of iteration steps in the same calculation work with different pre-set parameters.
As shown in Figure 15, the value of Φ increased sharply at about the first 1/4 of the total iteration steps, and then this acceleration decreased to quite a small value, increasing the Φ value little by little until the desired value of Φs was exceeded. Also, Figure 16 indicates that the increasing speed of the mc value would slow down with the increase in the iteration steps, and, finally, mc would converge.
During the iteration, the mass center variation vector of the intersectional profile of the inner runner and the pre-partitioning planes was not a constant, because in each iteration step, new pre-partitioning planes would be created with an adjusted direction; however, the iteration calculations still turn the normal of the pre-partitioning plane into a direction that was very close to the mass center variation vector. Thus, from the situation presented by Table 3 and Table 4 and Figure 15 and Figure 16, it was believable that the iteration algorithm in this paper was convergent, and in all, through the calculation, the fc values were greater than the required il values, which also backed up the algorithm’s convergence.

6. An Application Test

The runner profile used in the section above is too simple to fully verify the capability of the support-free algorithm. So, in this section, a model with more complicated features is used for extensive testing, and the results are listed for the assessment to see whether the algorithm was still capable of solving the support-free partitioning problem. A simple outer profile is used here because the method in this paper focuses on solving support-free-printing inner runner problems, and the methods for the outer profiles are already developed.
As shown in Figure 17, the model was a Φ50 mm × 150.83 mm column outside with a compound inner runner inside, which was composed of two parts of straight runners at both ends, a three-dimensional spiral runner in the middle, and smooth transitions among the three parts. The diameter of the spiral runner was Φ10 mm, the diameter of the spiral was Φ30 mm, the rotation angle was 330°, and the pitch was 110 mm; the diameter of the inner straight runner was also Φ10 mm and the length was 10 mm.
The solution process was performed with the following parameters: the tilting limit il = −0.34, of which the corresponding intersecting angle (between the facet and the fabricating direction) was 19.88°; scanning step length s = 0.7; offset μ = 0.01; proximity Φs = 0.9999; and increment coefficient σ= 1/16. The algorithm was run on a regular computer with an i3 processor and 8 GB of memory, with a solution time of 8 s. The solution output data are listed in Table 5, illustrating that 15 partitioning planes were finally acquired, and the maximum number of iteration steps for calculating each plane was 58, the minimum mc value was −0.066840 with the corresponding intersecting angle of 3.83°, and for the spiral runner part, the minimum mc value was −0.047030 with the corresponding intersecting angle of 2.7°. These two intersecting angles were both far less than the tilting limit of 19.88°, indicating that the change in the contribution direction by the partitioning planes can significantly decrease the intersecting angles. And also, at each partitioning plane, the fc values were all greater than il, implying that the inclination was not too large to hinder the support-free construction. The partitioning result is visualized in Figure 18, showing that the position and the direction of the partitioning planes changed with the variation in the guideline of the inner runner. The profile rings were constructed correctly, consistent with the actual situation, under the conditions of complex intersection among the partitioning planes and model. Figure 19 presents the slicing result. The slicing process was performed after the mentioned “top to bottom partitioning” process, and it can be seen from the result that no slice interference occurred in the end, and the slicing direction is the desired fabricating direction.
Note that Figure 19 only presents the partitioning result for considering the inner runner, but for some sub-models, further consideration of the outer surface was needed to achieve the non-support fabrication. The method for considering the outer surface is not discussed, because it has already been solved by various researchers mentioned in the introduction section.

7. Conclusions and Future Work

In this paper, a novel partitioning method for support-free fabrication models with an inner runner is proposed, and relative mathematical methods are presented. Analysis has been carried out for some varying parameters, and a program was coded in Python language and the VTK toolkit for visualization of the partitioning result. The analysis and verification indicated that the method was successful in partitioning the model for support-free construction of the inner runner. The achievements of this paper can be concluded as follows:
(1)
The proximity Φs affects the number of partitioning planes acquired, the accuracy of the partitioning plane’s directions, and the calculation time. A smaller Φs causes less time consumption, but will generate more planes with larger intersecting angles between the normals of the partitioning planes and the inner runner guideline direction.
(2)
The increment coefficient σ mainly affects the calculation time, where a greater σ will also reduce the time consumption, accelerating the converging speed. However, greater σ values will also bring iteration difficulties when approaching a greater Φs.
(3)
There is a turning point in the solution process of the algorithm. When the proximity Φ is less than or equal to a certain critical value, the increasing rate is significant (but gradually decreases) during the iteration. When Φ is greater than that critical value, the increasing rate of Φ will sharply decrease, and then the Φ value will increase slowly in each iteration step until the validation of ΦΦs. The critical value of Φ occurs at about the 1/4 of the total iteration steps needed for each plane.
(4)
During the whole solution process, the fc values are always less than il, implying that the planes generated by the proposed method certainly partition the model, avoiding too large tilting angles existing between the facets that approximate the inner runner surface and the guideline direction. Thus, support-free printing for the inner runner is possible.
In the future, more work considering real additive manufacturing processes will be carried out on this project, and the decision of the key parameter, the tilt limit il, will be investigated, depending on corresponding additive manufacturing process parameters and material characteristics.

Author Contributions

Methodology, J.Y. and Q.W.; software, Q.W. and Y.B.; writing—original draft, Y.B.; validation, Y.B.; writing—review and editing, Q.W.; resources, H.X. and J.Y.; project administration, J.Y.; supervision, H.X. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The authors approve that data used to support the findings of this study are included in the article.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Zheng, A.; Zhu, Z.; Bian, S.; Chang, J.; Haron, H.; Iglesias, A.; You, L.; Zhang, J. Optimized Unidirectional and Bidirectional Stiffened Objects for Minimum Material Consumption of 3D Printing. Mathematics 2021, 9, 2835. [Google Scholar] [CrossRef]
  2. Wei, X.; Qiu, S.; Zhu, L.; Feng, R.; Tian, Y.; Xi, J.; Zheng, Y. Toward support-free 3D printing: A skeletal approach for partitioning models. IEEE Trans. Vis. Comput. Graph. 2018, 24, 2799–2812. [Google Scholar] [CrossRef] [PubMed]
  3. Karasik, E.; Fattal, R.; Werman, M. Object partitioning for support-free 3d-printing. Comput. Graph. Forum 2019, 38, 305–316. [Google Scholar] [CrossRef]
  4. Zhao, H.; He, Y.; Fu, J.; Qiu, J. Inclined layer printing for fused deposition modeling without assisted supporting structure. Robot. Comput.-Integr. Manuf. 2018, 51, 1–13. [Google Scholar] [CrossRef]
  5. Xie, Y.; Chen, X. Support-free interior carving for 3d printing. Vis. Inform. 2017, 1, 9–15. [Google Scholar] [CrossRef]
  6. Nayyeri, P.; Zareinia, K.; Bougherara, H. Planar and nonplanar slicing algorithms for fused deposition modeling technology: A critical review. Int. J. Adv. Manuf. Technol. 2022, 119, 2785–2810. [Google Scholar] [CrossRef]
  7. Sundaram, R.; Choi, J. A slicing procedure for 5-axis laseraided DMD process. J. Manuf. Sci. Eng. 2004, 126, 632–636. [Google Scholar] [CrossRef]
  8. Gao, Y.; Wu, L.; Yan, D.; Nan, L. Near support-free multidirectional 3D printing via global-optimal decomposition. Graph. Models 2019, 104, 101034. [Google Scholar] [CrossRef]
  9. Dai, C.; Wang, C.; Wu, C.; Lefebvre, S.; Fang, G.; Liu, Y. Support-free volume printing by multi-axis motion. ACM Trans. Graph. 2018, 37, 1–14. [Google Scholar] [CrossRef]
  10. Wu, C.; Dai, C.; Fang, G.; Liu, Y.-J.; Wang, C.C. RoboFDM: A robotic system for support-free fabrication using FDM. In Proceedings of the 2017 IEEE International Conference on Robotics and Automation (ICRA), Singapore, 29 May–3 June 2017; pp. 1175–1180. [Google Scholar]
  11. Xu, K.; Chen, L.; Tang, K. Support-free layered process planning toward 3+2-axis additive manufacturing. IEEE Trans. Autom. Sci. Eng. 2019, 16, 838–850. [Google Scholar] [CrossRef]
  12. Ruan, J.; Sparks, T.E.; Panackal, A.; Liou, F.W.; Eiamsa-ard, K.; Slattery, K.; Chou, H.; Kinsella, M. Automated slicing for a multiaxis metal deposition system. Trans. ASME J. Manuf. Sci. Eng. 2007, 129, 303–310. [Google Scholar] [CrossRef]
  13. Singh, P.; Dutta, D. Offset slices for multidirection layered deposition. J. Manuf. Sci. Eng. 2008, 130, 011011. [Google Scholar] [CrossRef]
  14. Zhang, J. Adaptive slicing for a multi-axis laser aided manufacturing process. Trans. ASME J. Mech. Des. 2004, 126, 254–261. [Google Scholar] [CrossRef]
  15. Zhang, J.; Liou, F. Multi-axis planinng of a hybrid material deposition and removal combined process. J. Mach. Manuf. Autom. 2013, 2, 46–57. [Google Scholar]
  16. Ding, D.; Pan, Z.; Cuiuri, D.; Li, H.; Larkin, N.; van Duin, S. Automatic multi-direction slicing algorithms for wire based additive manufacturing. Robot. Comput.-Integr. Manuf. 2016, 37, 139–150. [Google Scholar] [CrossRef]
  17. Wang, X.; Zhang, H.; Wang, G.; Wu, L. Adaptive slicing for multi-axis hybrid plasma deposition and milling. In Proceedings of the 25th Annual International Solid Freeform Fabrication Symposium, Austin, TX, USA, 4–6 August 2014; pp. 1277–1287. [Google Scholar]
  18. Hu, B.; Zhang, H.; Jiang, J.; Wang, G. Layered-deposition manufacturing complex metal parts by unequal thickness slicing. J. Huazhong Univ. Sci. Technol. 2011, 39, 57–60. [Google Scholar]
Figure 1. Determination of the large overhanging position of the inner runner.
Figure 1. Determination of the large overhanging position of the inner runner.
Mathematics 11 04878 g001
Figure 2. Determination of a new partitioning plane.
Figure 2. Determination of a new partitioning plane.
Mathematics 11 04878 g002
Figure 3. Minor partitions caused by the intersection of partitioning planes.
Figure 3. Minor partitions caused by the intersection of partitioning planes.
Mathematics 11 04878 g003
Figure 4. Partitioning results.
Figure 4. Partitioning results.
Mathematics 11 04878 g004
Figure 5. Results for sub-model partitioning.
Figure 5. Results for sub-model partitioning.
Mathematics 11 04878 g005
Figure 6. Pre-slicing process.
Figure 6. Pre-slicing process.
Mathematics 11 04878 g006
Figure 7. Point selection.
Figure 7. Point selection.
Mathematics 11 04878 g007
Figure 8. Base point adjustment.
Figure 8. Base point adjustment.
Mathematics 11 04878 g008
Figure 9. Iteration for the new normal direction.
Figure 9. Iteration for the new normal direction.
Mathematics 11 04878 g009
Figure 10. Calculations for a profile’s mass center.
Figure 10. Calculations for a profile’s mass center.
Mathematics 11 04878 g010
Figure 11. Cases where partitioning methods are not applicable. (a) Partitioning plane intersecting with the bottom surface. (b) Model with two inner runners.
Figure 11. Cases where partitioning methods are not applicable. (a) Partitioning plane intersecting with the bottom surface. (b) Model with two inner runners.
Mathematics 11 04878 g011
Figure 12. Test model with inner runner.
Figure 12. Test model with inner runner.
Mathematics 11 04878 g012
Figure 13. Test of variation in Φs on the generated number of partitioning planes.
Figure 13. Test of variation in Φs on the generated number of partitioning planes.
Mathematics 11 04878 g013
Figure 14. Test results of needed iteration steps for the variation in σ.
Figure 14. Test results of needed iteration steps for the variation in σ.
Mathematics 11 04878 g014
Figure 15. Relationship between Φ and the number of iterations.
Figure 15. Relationship between Φ and the number of iterations.
Mathematics 11 04878 g015
Figure 16. Relationship between mc and the number of iterations.
Figure 16. Relationship between mc and the number of iterations.
Mathematics 11 04878 g016
Figure 17. A model with three-dimensional spiral inner runner.
Figure 17. A model with three-dimensional spiral inner runner.
Mathematics 11 04878 g017
Figure 18. Partitioning result visualization.
Figure 18. Partitioning result visualization.
Mathematics 11 04878 g018
Figure 19. Slicing result visualization.
Figure 19. Slicing result visualization.
Mathematics 11 04878 g019
Table 1. Test results by Φs.
Table 1. Test results by Φs.
i l = 0.2924 s = 0.7 μ = 0.01 σ = 1 / 8 λ = 1.5
φsNo. PPmcfc
0.971−0.161757−0.257633
2−0.145814−0.281714
3−0.213203−0.287227
4−0.184432−0.291998
5−0.003358−0.249331
6−0.204769−0.275151
7−0.186980−0.245675
8−0.016641−0.239250
0.981−0.134533−0.257633
2−0.127699−0.257868
3−0.176095−0.275733
4−0.095078−0.255620
5−0.172584−0.270708
6−0.109987−0.260786
7−0.154680−0.279234
0.991−0.077480−0.257633
2−0.116569−0.291271
3−0.055903−0.254650
4−0.060716−0.239921
5−0.136024−0.257967
6−0.059599−0.239716
0.9991−0.005015−0.257633
2−0.040578−0.269465
3−0.051910−0.235418
4−0.044187−0.291792
0.99991−0.013161−0.257633
2−0.050654−0.261617
3−0.025590−0.224373
4−0.046411−0.266750
0.999991−0.004503−0.257633
2−0.050597−0.269991
3−0.021840−0.224427
4−0.046025−0.263151
No. PP: number of partitioning planes.
Table 2. Test results for σ.
Table 2. Test results for σ.
i l = 0.2924 s = 0.7 μ = 0.01 Φ s = 0.9999 λ = 1.5
σ No. PPmcfcI.T.
1/21−0.009083−0.25763314
2---
1/41−0.011499−0.25763318
2---
1/81−0.013161−0.25763337
2−0.050654−0.26161719
3−0.025590−0.22437319
4−0.046411−0.26675013
1/161−0.014245−0.25763372
2−0.051053−0.20302033
3−0.026169−0.22398339
4−0.046481−0.26731427
1/321−0.014045−0.257633145
2−0.050863−0.20321667
3−0.026438−0.22416879
4−0.046514−0.26757655
No. PP: number of partitioning planes. I.T.: iteration times.
Table 3. Data from iteration test 1.
Table 3. Data from iteration test 1.
i l = 0.2924 s = 0.7 μ = 0.01 Φ s = 0.9999 σ = 1 / 6 λ = 1.5
I. Step ϕ n mcfc
00.964026−0.226507−0.226507
10.975772−0.182994−0.226507
20.983359−0.146965−0.226507
30.989437−0.116933−0.226507
40.996767−0.092912−0.226507
50.997755−0.079589−0.226507
60.998441−0.068473−0.226507
70.998917−0.059203−0.226507
80.999248−0.051474−0.226507
90.999478−0.045031−0.226507
100.999638−0.039661−0.226507
110.999748−0.035186−0.226507
120.999825−0.031456−0.226507
130.999879−0.028348−0.226507
140.999916−0.025503−0.224562
I. step: iteration step.
Table 4. Data from iteration test 2.
Table 4. Data from iteration test 2.
i l = 0.2924 s = 0.7 μ = 0.01 Φ s = 0.99999 σ = 1 / 10 λ = 1.5
I. Step ϕ n mcfc
00.964364−0.226288−0.226288
10.971713−0.200400−0.226288
20.977065−0.177190−0.226288
30.981492−0.156186−0.226288
40.985288−0.137244−0.226288
50.988720−0.120303−0.226288
60.992218−0.105431−0.226288
70.996756−0.093054−0.226288
80.997372−0.085049−0.226288
90.997871−0.077839−0.226288
100.998276−0.071346−0.226288
110.998603−0.065499−0.226288
120.998869−0.060234−0.226288
130.999084−0.055495−0.226288
140.999258−0.051228−0.226288
150.999399−0.047387−0.226288
160.999513−0.043930−0.226288
170.999606−0.040818−0.226288
180.999681−0.038017−0.226288
190.999741−0.035497−0.226288
200.999791−0.033228−0.226288
210.999830−0.031186−0.226288
220.999863−0.029348−0.226288
230.999889−0.027694−0.226288
240.999910−0.025944−0.224319
250.999928−0.024617−0.224319
260.999957−0.023432−0.224319
270.999982−0.022511−0.224319
280.999991−0.021917−0.224319
I. step: iteration step.
Table 5. Data output from the application test.
Table 5. Data output from the application test.
i l = 0.34 θ m a x = 19.8 8 s = 0.7
μ = 0.01 Φ s = 0.9999 σ = 1 / 16 λ = 1.5
PPmcfcNo. IS
1−0.044808−0.24865047
2−0.058916−0.29169230
3−0.047030−0.29354644
4−0.014190−0.30614856
5−0.043214−0.32432443
6−0.033065−0.32217257
7−0.013896−0.31934157
8−0.043283−0.32452843
9−0.033151−0.32221357
10−0.013828−0.31926057
11−0.043234−0.32465043
12−0.033131−0.32220657
13−0.013707−0.31921858
14−0.055656−0.32982645
15−0.066840−0.26579636
PP: partitioning plane. No. IS: number of iteration steps.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wen, Q.; Bin, Y.; Xie, H.; Yang, J. A Novel Multi-Directional Partitioning Method for Support-Free 3D Printing of Inner Runner Structural Components. Mathematics 2023, 11, 4878. https://doi.org/10.3390/math11244878

AMA Style

Wen Q, Bin Y, Xie H, Yang J. A Novel Multi-Directional Partitioning Method for Support-Free 3D Printing of Inner Runner Structural Components. Mathematics. 2023; 11(24):4878. https://doi.org/10.3390/math11244878

Chicago/Turabian Style

Wen, Quan, Yuanyuan Bin, Hualong Xie, and Jianyu Yang. 2023. "A Novel Multi-Directional Partitioning Method for Support-Free 3D Printing of Inner Runner Structural Components" Mathematics 11, no. 24: 4878. https://doi.org/10.3390/math11244878

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop