Double-sided incremental forming (DSIF) is a dieless sheet metal forming process that uses two generic tools to form a part of arbitrary geometry from a clamped sheet via the accumulation of small localized deformations. In DSIF, there is a need for an automatic toolpath generation method to separate geometric features coupled with a strategy to form these features in the correct sequence such that they can be accurately formed. Traditional CNC machining toolpaths are not suitable for DSIF because these toolpaths are designed for material removal processes, which do not have to account for the motion of the virgin material during the process. This paper presents a novel and simple way to represent geometric features in a hierarchical tree structure during z-height-based slicing along with algorithms to generate different forming strategies using this tree structure. The proposed approach is demonstrated through physical experiments by forming a complex part with multiple features.
The concept of dieless forming processes is introduced briefly first to provide the perspectives of the need and the main categories of dieless forming. This will be followed by the description of the limitations of existing computer-aided methods that are used to generate toolpaths for double-sided incremental forming (DSIF) and by a description of the proposed method.
Dieless Forming Process Concepts.
In manufacturing, with the advent of processes like additive manufacturing (AM), there has been an increased need for rapid production, customization, and personification of parts. Due to the inherent nature of a thermal process in metal-based AM and the usage of powder materials, fabrication of thin-wall parts (e.g., a car body panel traditionally made from sheet metal) using AM is impractical as thermal residual stresses would lead to shape distortion and powder materials affect surface finish. Hence, novel sheet metal forming processes, such as incremental forming, have become good alternatives for forming complex features on thin sheets. Incremental forming is a manufacturing process in which generic shaped tools are used to deform a metal sheet into a predefined shape by following a predescribed toolpath. Incremental forming has great potential by offering flexibility in sheet metal manufacturing because it allows parts to be formed directly from three-dimensional (3D) computer-aided design (CAD) geometries with the aid of a suitably defined toolpath. The flexible nature of the process and the potential it has for value-added manufacturing has propelled research in the field, including toolpath generation methodologies for two main forming strategies: single point incremental forming (SPIF) (Fig. 1(a)) and DSIF (Fig. 1(b)).
In SPIF, only one tool is used to deform the clamped sheet blank. Jeswiet et al.  showed that SPIF gives significant improvements in forming limits when compared to conventional sheet metal forming processes. For low volume production, SPIF is a good economical alternative to processes like deep drawing because the time and expense invested in manufacturing tooling, i.e., punches and dies for different geometries, can be completely eliminated. The toolpath plays a major role in the surface finish, geometric accuracy, sheet thinning, and overall forming time in SPIF. CNC-based contour toolpaths, such as the ones developed by Loney and Ozsoy , which use the chordal deviation and scallop height to dictate the step size calculation and the one developed by Li et al. , which generates the most productive toolpath for milling of geometries with a single island and very little nonconvexity, are often used for toolpath generation in SPIF. Skjoedt et al.  used cam toolpath generation software to generate a contour-based toolpath and produced a continuous spiral toolpath by interpolating between the contours. Using this technique, the authors were able to show that a spiral toolpath significantly improves the surface quality of the formed part. Although the method employed led to plausible results, the distance between consecutive contours was kept constant. Therefore, a very small step size had to be used to obtain accurately formed geometries. Lee  solved this problem for high speed machining by offsetting the boundary curve of the part being machined along its sculptured surface, using an offset distance dictated by the minimum surface roughness, and generating a spiral toolpath by using a diagonal curve on the sculptured surface to link consecutive offset curves. A method similar to the one used by Lee  was used by Malhotra et al.  to generate 3D spiral toolpaths for SPIF by using the volumetric error (calculated between consecutive slice intersections and the desired geometry) and the scallop height (calculated between the tool positions in consecutive contour paths) to adaptively refine the step size between the contour paths. They then generated a 3D helix by linearly interpolating between the points on successive generated contour paths. All toolpath generation methods described are performed by slicing the geometry with a series of horizontal curves at different z-heights. Therefore, this toolpath generation method can be referred to as z-height slicing. A feature-based toolpath generation technique to improve the surface quality and geometric accuracy in SPIF by using feature edges to modify the toolpath such that the toolpath does not have to follow the z-level slicing paths was proposed by Lu et al. . A spiral toolpath was also used by Cao et al.  to perform hole flanging using a feature tool.
Double-sided incremental forming, as opposed to SPIF, uses two tools, which are positioned on either side of the clamped blank to deform the blank into the desired geometry. The DSIF strategy leads to improved geometric accuracy compared to SPIF because the squeezing of the blank by the two tools leads to the stabilization of the deformation of the blank into a local region, thereby, significantly reducing undesired global bending which plagues SPIF. Naturally, the position of one of the tools (the “forming tool”) in DSIF can be determined from the geometry of the part, while the position of the other tool, referred to as a “supporting tool,” is dictated by process requirements. Malhotra et al.  used a squeezing toolpath strategy with tools in which the supporting tool was positioned relative to the forming tool by using a sine law that predicts the sheet thickness at the contact point in tandem with a predefined squeeze factor. Meier et al.  performed experiments with two superimposed forming tools on either side of the sheet and showed a 12.5% increase in the maximum drawing angle when compared to SPIF. In general, toolpath generation for DSIF is accomplished by extending the aforementioned SPIF toolpath for one tool and positioning the second tool relative to the contact points from the spiral/contour paths already generated. Meier et al.  also used a combination of position and force control to eliminate inaccuracies associated with the sine law thickness prediction and to reduce tool deflection by maintaining a specified contact force between the tools and the sheet. An alternative to DSIF called accumulative double-sided incremental forming (ADSIF), which always maintains contact between the two tools and the sheet by forming the innermost parts of the geometry first then moving outward with each step was proposed by Malhotra et al. . This implies that at each step, the tools are forming virgin material and, therefore, contact is always maintained. The already formed geometry is translated downward at each step via rigid body motion until the whole geometry is formed. Ndip-Agbor et al.  developed a framework for selecting the process parameters for ADSIF by using a simplified numerical simulation, physical experiments, and a Gaussian process model. Zhang et al.  used a mixture of the DSIF and ADSIF strategies to form the same part (ADSIF done first followed by DSIF) and showed that this mélange gave better geometric accuracy over only one of either forming strategy. Note that the geometries considered in the aforementioned DSIF-related literature reviewed above contained only one feature, while the DSIF process itself can be extended to more complex geometries like the ones presented in this paper.
Lingam et al.  developed a methodology to recognize features from freeform components. The authors sliced the recognized features via horizontal, inclined, or offset strategies to produce a toolpath based on the best feature forming sequence and process mechanics. Geometries with two layers of features were formed, and it was shown that the maximum deviation between the formed and intended geometries was less than 400 μm when the correct forming sequence and toolpath strategy was picked. This work differs from that proposed in Ref.  because feature recognition and slicing are performed at the same time. This makes the developed method more generalizable because slicing functionality is available in all commercial and open-source CAD APIs. Also, geometric features in this work are represented using a novel abstract hierarchical data structure during slicing, which allows traversal algorithms to be utilized to formulate several automated forming strategies as opposed to the single strategy developed in Ref. .
Limits of Current CAD/CAM Toolpath Approaches for DSIF.
Using two tools for incremental forming has an added advantage in forming complex geometries because the role of both tools can be selectively changed depending on the out-of-plane curvature of the features. For concave features, the top tool acts as the forming or driving tool while the bottom tool acts as the supporting or squeezing tool, while for convex features, the roles of the tools are reversed, which allows features to be formed in both upward and downward directions as shown in Fig. 2. However, a complication arises from the fact that in incremental forming, unlike machining, the sheet metal inside the contour/spiral passes of the toolpath is translated to the current toolpath depth during forming. This means that embedded features in a geometry must be formed in a correct sequence because the undeformed material inside a feature, for example feature A, being formed must be translated to the depth at which the features (for example features B and C, etc.) inside feature A are to be formed. This is particularly important for DSIF because forming is conducted in both directions, so the virgin material must be translated to the proper position for the features to be correctly formed. For example, to form the part shown in Fig. 2, the correct forming sequence and direction are: feature 1 downward, feature 2 upward, feature 3 downward, and feature 4 upward. Forming features in the wrong order and/or direction might lead to forming the wrong geometry or even cause the tools to poke a hole through the blank.
For an arbitrarily geometry with embedded features, the toolpath for DSIF can be obtained from the machining-based approach by:
Step 1. Generating contour/spiral paths and separating the features using conventional methods designed for machining operations in the cad/cam software;
Step 2. Manually selecting the forming order and direction for each feature; and
Step 3. Combining the toolpaths for all the features into the final toolpath with the correct feature order and tool positions.
It is obvious that generating DSIF toolpaths for complex freeform geometries in this manner is both inefficient and inflexible. The inefficiency arises from the fact that machining toolpaths, which were not designed for DSIF, have to be analyzed point-by-point to determine the correct feature forming order and direction. The inflexibility arises from the fact that process parameters, like the incremental depth, cannot be changed in the resulting toolpath without repeating the generation process. Furthermore, the success of a forming operation greatly depends on the skills of the operator who manually determines the forming order and on the direction in step 2 above, which limits the DSIF technology from being widely adopted in industry.
Motivation and Approach.
The motivation for this work lies in the fact that the toolpath generation methods for machining and SPIF are severely limiting for a versatile process like DSIF in which forming can be conducted in two directions (upward and downward) and can also involve multistage forming for select features in a complex geometry. An ideal toolpath generation method for DSIF should allow:
arbitrary changes to the forming order and direction of the features within the feasibility of a forming operation;
translation of each individual feature to the plane, which results in the best geometric accuracy after forming.
In this work, an abstract way of representing geometric features in a rooted tree is presented. Tree traversal methods can then be used to generate toolpaths for the individual features, which allow the forming order and direction of the features to be changed accordingly. This work also uses a map to hold information about the relationship between intersection curves during z-height slicing and to build the feature tree. This approach is unique in its use of fundamental data structures to develop a new way of representing features in DSIF and similar processes giving users incredible versatility and control over the toolpath generation process and forming strategy for geometries with multiple features. This work focuses solely on the development of automated forming strategies for complex geometries using DSIF, so variation of process parameters like incremental depth, federate, squeeze factor, scallop height, and tool diameter, which also affect geometry accuracy and surface quality, will not be discussed.
During z-height slicing, a horizontal plane is used to intersect the geometry at a constant height to produce closed intersection curves. This slicing is performed at different z-heights across the part to produce a series of intersection curve groups, which are then used to generate a toolpath by determining tool tip points on each curve. A simple way to build maps containing the relationships between intersection curves during z-height slicing and a simple algorithm for incrementally grouping intersection curves into features during slicing are presented. The relationship between the features, obtained by reducing the relationship maps at every slice, is then used to construct a hierarchical feature tree. Finally, two tree traversal methods are presented for toolpath generation that will lead to different forming strategies.
Relationship Between Intersection Curves.
During z-height slicing, there exist two key relationships: one relationship between the intersection curves at the same z-level slicing plane and another relationship between intersection curves at adjacent z-level slicing planes. For any two intersection curves at the same z-level, the first relationship simply defines whether the area enclosed by one curve is contained within the area enclosed by the other. Consider two intersection curves: C1 and C2, at the same z-height. Using the above methodology, it can be shown that C1 enclosed C2 as illustrated in Fig. 3(a). Note that Fig. 3 is just an illustration, and that the feature boundary can be any closed curve with irregular shape, not necessarily a circle. While for two intersection curves on adjacent slices, the second relationship defines whether the area enclosed by one curve contains the area enclosed by the other when both curves are projected onto the same plane. This concept is illustrated in Fig. 3(b) using two intersection curves: C1 and P1 on adjacent slices, and it can be inferred that curve C1 encloses curve P1.
Consider z-height slicing for the geometry in Fig. 2. The in-plane and out-of-plane relationships between the labeled intersection curves on two slicing planes, an incremental depth (Δz) apart, are shown in Fig. 4. Slicing planes 1 and 2 both produce four intersection curves: C1–C4 and P1–P4, respectively (Fig. 4(a)). The relationship map between the curves on the same slicing plane is shown in the tables in Figs. 4(b) and 4(c) for slicing planes 1 and 2, respectively. These maps are constructed for each slice independently by selecting the curves, in turn, and using the aforementioned method to find the curves, on the same slice, it encloses. To account for the curvature of the geometry, two maps need to be constructed to hold the relationship between the intersection curves on adjacent slices. For each intersection curve on a slicing plane, all the intersection curves on the adjacent slicing plane are tested to determine if they are contained in the current curve, for example, the table in Fig. 4(d) shows all the curves on slicing plane 2 (P1–P4) enclosed by each curve on slicing plane 1 (C1–C4), and vice versa in Fig. 4(e).
Given two arbitrary z-height slicing planes, h1 and h2, which intersect an arbitrary geometry, the algorithm shown in Fig. 5 can be used to construct the in-plane and out-of-plane relationship maps shown in Fig. 4 for each slicing plane in turn. It should be noted that during slicing, self-intersecting curves may arise at intermediate planes between features.
Self-intersecting curves, which usually occur at the interface between geometric features, may cause the algorithm in Fig. 5 to fail; therefore, an equalization step is added to ensure that relationship maps are only created at a slicing height with intersection curves from distinct features. This is done by introducing a critical incremental depth, Δzcrit (e.g., Δz/4) whenever the numbers of intersection curves on two adjacent slices do not match. The geometry is sliced at several z-heights, Δzcrit apart, until the number of intersection curves between successive slices remains constant. The smallest z-height that leads to a constant number of intersection curves is then used in the algorithm in Fig. 5. This skips the self-intersecting curves usually present between features in DSIF geometries because a constant number of intersection curves over several close z-heights means that distinct features are present.
Combining Curves Into Features.
The intersection curves obtained during z-height slicing belong to a feature in the geometry. Therefore, the intersection curves at two adjacent slices can be matched and added to the correct feature group. This grouping is done at two slicing planes at a time. The out-of-plane relationship maps shown in Fig. 4 are used to match the intersection curves on both slices. Figure 6 shows how ungrouped intersection curves on a z-height h2 can be added to the correct feature group through matching with intersection curves on the grouped slice h1.
Adding each intersection curve at the first z-height (Z = Δz) as the first curve of a new feature, the algorithm shown in Fig. 6 can be used to produce a relationship map between all the z-height features present in the geometry. This is performed by iterating through the intersection curves on each new slice, one at a time, and looking up each curve in the appropriate out-of-plane relationship map (Figs. 4(d) and 4(e)). If the curve index matches with another curve in the out-of-plane relationship maps, then the curve being processed is a continuation of the matched curve; else, the current curve is the first curve of a new feature, which is added to a feature relationship map. The features are numbered in the order in which they are encountered during slicing.
Building Feature Tree.
A rooted tree is defined as an extension of the scheme used to represent binary trees where each node contains a pointer to a parent, left child, and right sibling  as shown in Fig. 7(a). For this proposed method, representing all the features in a geometry as a rooted tree is advantageous because it provides an easy and arbitrary way to manipulate features via tree traversal algorithms .
The rooted tree is built directly from the previously constructed feature relationship maps, so it also encodes the relationship information between all the features in the geometry as shown in Fig. 7(b). This is done simply by recursively looking up features in the feature relationship maps to find out what other features are embedded in them as shown in Fig. 8.
Using the geometry in Fig. 7(b) as an example, feature 1 is considered the only feature in the outermost curve group by the algorithm since feature 1 is the only feature in the feature relationship map that is not of value to any other feature. The BUILD-TREE function is called with feature 1 and the feature relationship map. Since feature 2 is a child of feature 1, it is added to the children list, but the sibling list is empty since feature 1 is the only outermost feature. The tree node value attribute is then assigned the current intersection curve group number (assigned during z-height slicing), the BUILD-TREE function is then called recursively with the current children list (feature 2 only in this case) and sibling list (empty) to build the nodes at the left child and right sibling attributes, respectively, of the current node.
Using the grouped intersection curves for each feature and the feature tree, which contains the child and sibling relationships between these features, traversal algorithms can be used to generate different forming strategies for geometry. In this work, the curvature of a feature is defined as concave if the curves that make up the feature are successively enclosed by one another in the slicing direction, or convex if the curves are successively enclosed opposite to the slicing direction. This is important during toolpath generation because convex features have to be formed in the opposite directions from concave features. In strategy 1, shown in Fig. 9, the feature tree is traversed in a preorder fashion .
Preorder traversal of a tree is recursively defined as: (1) visiting and processing the root of a tree, (2) recursively performing a pre-order traversal of the subtree of children at the root, and (3) reclusively performing a preorder traversal of the subtree of siblings at the root.
If processing a node is defined as generating toolpath points for all the intersection curves belonging to the feature at that tree node, the algorithm shown in Fig. 9 produces a toolpath that forms the features in the correct order and direction because the hierarchical structure of the rooted tree always ensures that the virgin (undeformed) material is at the depth of the current feature being formed before proceeding to form its enclosed features.
Using a tree traversal algorithm to perform toolpath generation is incredibly flexible, because the order in which the features are formed can be changed by simply traversing the rooted tree differently. Maintaining contact between the tools and the sheet is very challenging in DSIF because the process mechanics and machine capabilities (particularly tool compliance) are not well understood . Loss of contact between the tools and the sheet during forming makes it very difficult to form the features accurately because the position of the virgin material in the toolpath is different from its actual position. This problem can be solved using strategy 2 in which features that do not enclose any other features are formed on the virgin material first followed by successively forming features immediately outside them. In this strategy, rigid body translation allows the inner features to move with the undeformed sheet to their correct geometric positions while outer features are being formed. A toolpath for such a forming strategy can be trivially generated by performing a postorder traversal of the feature tree as shown in Fig. 10.
Postorder traversal of a tree is recursively defined as: (1) recursively performing a postorder traversal of the subtree of children at the root, reclusively performing a postorder traversal of the subtree of siblings at the root (2), and visiting and processing the root of a tree (3).
The start of a feature is considered to be the slicing depth at which the first intersection curve of this feature is detected, while the end of a feature is the slicing depth at which an intersection curve belonging to the feature cannot be matched with an intersection curve on the adjacent slice; therefore, a feature can be translated to the virgin material by simply subtracting its starting depth (concave) or its ending depth (convex) from all the discretized toolpath points derived from the intersection curves that make up the feature. This is done while recursively traversing the feature tree, which ensures that the features are always formed in the correct sequence (from enclosed to enclosing features) as shown in Fig. 10.
Results and Discussion
The setup shown in Fig. 11 was used to verify the forming strategies proposed. In this setup, a two-motor double-gantry system controls the X- and Y-axes of each tool while a motor and linear guide control the Z-axes. Both tools are controlled by a custom-built DELTA-TAU system. Over 5 mm diameter D2 steel tools were used to form a peripherally constrained 1 mm thick AA5754-O sheet. A feed rate of 10 mm/s was used for all the experiments, which took about 8 h each to run. All experiments were run with an incremental depth of 0.1 mm.
The methods described in Sec. 2 were used to generate toolpaths for the geometry shown in Figs. 12(a) and 12(b). The features in this geometry can be numbered in the order in which they are encountered during slicing as shown in Fig. 12(c). Features 1, 8, 9, and 10 are concave, and features 2, 3, 4, 5, 6, and 7 are convex. After z-height slicing is performed on the part to build the feature tree, as discussed in Secs. 2.1–2.3, the rooted tree shown in Fig. 13(a) is obtained. Using strategies 1 and 2, shown in Figs. 9 and 10, respectively, the correct forming order and direction of the features can be determined as shown in Figs. 13(b) and 13(c), respectively.
The experiment for strategy 1 is shown in Fig. 14. During this strategy, the outer shell of the geometry is formed first followed by the inner domes. During the experiment, there was contact between the top tool (forming tool) and the sheet, but it was observed that contact between the bottom tool (supporting tool when forming downward) and the sheet was lost at a forming depth of 6 mm when the outer shell (feature 1) was being formed. After the out shell was formed, loss of contact was again observed when the inner domes features (features 2–7) were formed, but this time around the top tool (supporting tool when forming upward) lost contact with the sheet. Finally, a similar trend was observed when features 8–10 were formed as the bottom tool also lost contact with the sheet. Loss of contact is a recurring problem in DSIF [9,17]. It is primarily caused by the inaccuracy of the sine law in predicting the sheet thickness and machine-specific factors such as compliance in the tools.
In the experiment for strategy 2 shown in Fig. 15, loss of contact between the forming and supporting tools was avoided by forming all the features on the virgin material. This is done by translating all the inner features to the surface of the sheet by subtracting the feature ending depth from all the toolpath points that make up the feature, and forming the features in reversed order (from enclosed features to the features that enclose them) starting from the innermost feature. During the experiment, contact between both tools and the sheet was maintained throughout forming.
Strategy 2 leads to a significant improvement in the overall geometric accuracy of the formed part when compared to strategy 1 as shown by the comparison of the profiles through sections A-A and B-B, shown in Fig. 16, of the desired geometry with the experimental geometry. As seen in Figs. 16(b) and 16(c), the geometric profile of strategy 1 starts deviating from the desired profile for the outermost feature due to loss of contact. This loss of contact in the outer shell trickles down to the inner dome features because after feature 1 is formed, the undeformed material inside the outer shell is at a different depth than assumed in the toolpath. Therefore, when the inner domes are being formed upward, the tool top (supporting tool) bends virgin material downward to the height prescribed in the toolpath and the bottom tool (forming tool) attempts to form the domes upward. This leads to very poor contact conditions between both tools and the sheet. The lack of squeezing between the tools and the sheet in DSIF leads to the low formability observed.
The improvement in geometric accuracy for strategy 2 happens because forming each feature on the virgin material ensures that there is always contact between the tools and the sheet at the start of every feature. The theoretical position of the sheet in the toolpath is most accurate for the undeformed sheet at Z = 0; therefore, the squeezing of the material at the contact point of both tools and the sheet leads to high formability as shown in Figs. 16(b) and 16(c). Also, alternatively forming features in both directions of the virgin material has a stiffening effect on the sheet metal. In strategy 1, the bottom tool loses contact with the sheet when forming the outer shell at a forming depth of 6 mm, but in strategy 2, after the inner domes are formed upward, forming the outer shell downward leads to no loss of contact between the bottom tool and the sheet. This is a very interesting effect, which has not been observed before in DSIF.
Even though strategy 2 resulted in an improvement of overall geometric accuracy, the geometric profile at the top of the domes was not very accurate as shown in Fig. 16(c). This inaccuracy at the top of the domes features was caused by the size of the tool compared to the geometry of the feature. The tops of the domes have a circumference of 10 mm, so during forming with the 5 mm tools, there was interference between the supporting tool and the already formed geometry. This can be solved by adding a module to the toolpath generation algorithm, which selects the tool diameter for each feature according to the local curvature of its intersection curves.
In this work, a new method for generating toolpaths for different forming strategies in double-sided incremental forming of geometries with multiple features was presented. The major accomplishments are:
A map structure that stores the relationship between intersection curves during z-height-based slicing. This map stores both the relationship between intersection curves at the same z-height and intersection curves at adjacent z-heights.
An algorithm that uses the stored relationships between the intersection curves to group them into features. This algorithm also constructs a relationship map between these newly created features by simply accumulating the maps of their constituent curves.
A hierarchical data structure (rooted tree) constructed from the feature relationship maps and used to represent the features in the geometry.
Feature forming strategies obtained via tree traversal algorithms to determine the feature forming sequence and forming direction directly from the rooted trees.
This method provides the foundation for a new way to represent features in a complex geometry, which provides the needed flexibility during toolpath generation in a versatile process like double-sided incremental forming, which is characterized by complex process mechanics and machine behavior.
The authors would like to acknowledge the Department of Energy: DE-EE0005764 and the Advanced Manufacturing Office (AMO), Energy Efficiency and Renewable Energy (EERE) Research Participation Program for their support.
Advanced Manufacturing Office (DE-EE0005764).