1 Introduction

As a new type of the flexible forming technology, the sheet metal CNC incremental forming technology adapts to the forming needs of the small batches, individuation, and variety, which can form the complex shapes of the sheet metal parts without the special molds and has wide application prospect in the manufacturing industry [1, 2].

At present, the consecutive forming tool path is mainly adopted in the sheet metal CNC incremental forming technology, that is, the sheet metal is continuously extruded according to the pre-programmed tool path after the forming tool head is pressed against the sheet metal [1,2,3]. In the consecutive forming process, due to the pushing effect of the tool head on the sheet metal, the deformation of the sheet metal is mainly concentrated on the front side of the tool head, so that the formed sheet metal parts occur a twist which reduces the forming quality of the sheet metal part [4]. In recent years, a new punching (hammering) incremental forming method has been derived from the conventional sheet metal incremental forming methods. The equipment used in this forming method is the existing CNC machine added a specially designed auxiliary hammer mechanism. During the forming, the tool head not only moves circumferentially at a certain speed, but also moving up and down along the axis of the forming tool at a certain frequency. The sheet metal is finally shaped by the continuous hammering. Gao [5] also mentioned that the tool heads can perform jumping movements to form the sheet metal parts in a point-by-point extrusion manner. This forming method is also called the point-pressing incremental forming method of the sheet metal. Schafer et al. [6] proposed several auxiliary hammer mechanisms with different principles and made a contrast test with industrial robot. The contour tool paths generated directly from the CAD model were adopted in the experiment. Puzik [7] designed several punch mechanisms and used the contour tool paths generated by the CAD/CAM software to perform experiments. The result is that the parts with irregular shapes can be formed. Vihtonen et al. [8] used the tool paths generated by the CAD/CAM software to compare the differences between two methods of the robotic-assisted consecutive extrusion incremental forming and hammer incremental forming. In the experiment, not only the geometric deformation, metal thinning, and other parameters were compared, but also it was pointed out that the hammer incremental forming can form the mesh plate that cannot be formed by the incremental forming based on the consecutive extrusion.

Luo et al. [9, 10] developed a new incremental punching mechanism based on the 3-axis CNC system to make the tool head move along the contour tool path generated by the commercial software, and the high-speed hydraulic cylinder pushes the tool head to move up and down in its axial direction. The parts were finally formed by the continuous punching of the tool head. In the first article [9], a minimum energy principle and an inverse finite element modeling were used to predict the final shape and the stress-strain distribution, which were verified in the second article [10]. The experimental results showed that the prediction is accurate. In the second article [10], the design and manufacture of the mechanism were introduced. Two parts were formed by using the tool paths generated by the commercial software, which proved the feasibility of the forming method. In addition, they also proposed a method based on the M-K analysis to determine the forming limit curve of the sheet metal under the forming method [11]. Sedighi et al. [12] proposed the prediction method for the sheet metal punching incremental forming by combining the upper bound method and the slip line field analysis method. Asgari et al. [13] developed a hammer incremental forming system with a mass damper and experimentally explored the effect of the tool parameters on the surface quality and the maximum forming angle. Bleicher et al. [14] developed a magnetic hammer device to perform experiments and studied the residual stress and surface quality of the formed sheet metal parts. Riahi et al. [15] developed a magnetic driver as a hammer tool and successfully formed the desired artistic pattern. In another article [16], they analyzed the influence of the tool head diameter and the hammering frequency on the mechanical properties of Al-1100-O aluminum alloy sheet in the hammer incremental forming method. Most of these studies are based on the contour tool paths generated by the commercial CAD/CAM software. The experimental equipment is made up by adding a specially designed auxiliary hammer mechanism to the existing CNC system. During the forming process, the tool head moves along the contour tool path in the circumferential direction, and at the same time, it moves up and down along its axis at a certain frequency. The tool head hammers the sheet metal regularly to form the sheet metal into a certain shape. Developing an auxiliary hammer mechanism increases the cost of the experiment, and the manufacturing accuracy of the mechanism also affects the forming quality of the formed sheet metal parts. Therefore, some scholars proposed to form the sheet metal parts by using the ordinary CNC machine without a specially designed auxiliary hammer mechanism.

Zhang et al. [17] developed a new point-pressing incremental forming method. This method is to modify the tool path of the contour generated by the commercial software UG into sinusoidal incremental tool path by programming. By controlling the wavelength and amplitude parameters, the tool head moves sinusoidally on each layer during the forming experiment. The distance between two adjacent extrusion points is equal to the wavelength of a sine wave. The experimental results verified the feasibility of the point-pressing incremental forming process. In addition, they found that the thickness of the forming part formed using the sinusoidal incremental tool path is closer to the theoretical thickness of the sine theorem than the ordinary consecutive incremental forming, and the minimum principal strain is also significantly reduced in the uniform stretching zone [18]. Wang et al. [19] explored the effect of the wavelength and amplitude of the sinusoidal path on the sheet formability and surface quality of the mesh plates and non-mesh plates. The experimental results show that the point-pressing incremental forming method is feasible for the mesh plates and non-mesh plates. The wavelength has a significant effect on the formability and surface quality, and the amplitude only affects the formability. Li [20] found that the point-pressing incremental forming with sinusoidal path is better than the consecutive incremental forming though contrastive experiments, which can reduce the number of the forming passes for the multi-pass incremental forming, and the influence of the wavelength and amplitude on the forming performance was also explored. Zhang et al. [21] found that the mesh plate formed by the single-point consecutive incremental forming tool path has larger forming angle and smaller mesh deformation through two kinds of the incremental forming experiment and numerical simulation of the mesh plate. However, the mesh plate formed by the sinusoidal point-pressing incremental forming path has less forming force and less fluctuation in the strain and thickness variation. The surface residual features of the parts formed by the point-pressing incremental forming method are individual small protrusions, which are obviously different with the consecutive incremental forming. If the number of the squeezing points is too sparse, the surface of the formed part has a pronounced convex indentation. Aiming at this question, Xiao et al. [22] used the method of increasing the number of the extrusion points by setting the degree of the overlaps between the deformation area of the extrusion point and the deformation area around this extrusion point, so that the deformation area of the extrusion point has a certain degree of the overlap so as to reduce the indentation after forming.

In these studies mentioned above, there has been no relatively accurate calculation method for the superficial micro-residue of the workpiece based on the point-pressing incremental forming. Most of the equipments used in the forming experiment are the 3-axis CNC system. That is, the axis direction of the tool head was the same as the Z-axis direction during the forming process. The effect of the different extrusion directions on the forming quality of the point-pressing incremental forming was not taken into consideration according to the different surface characteristics.

Addressing this issue, a 5-axis CNC point-pressing incremental forming method was proposed, which fully considers the surface features of the sheet metal parts, the residual height of the surface after forming, and the efficiency of the forming process. The calculation methods of the point-pressing incremental forming tool path and the spatial posture of the extrusion tool were also given.

1.1 General method

As shown in Fig. 1, the 3-axis CNC point-pressing incremental forming method and the 5-axis CNC point-pressing incremental forming method are obviously different. In the 3-axis CNC point-pressing incremental forming, the extrusion tool head extrudes the sheet along the Z-axis direction as shown in Fig. 1a. While, in the 5-axis CNC point-pressing incremental forming, because the extrusion tool head has high degree of freedom, which can point-press the sheet metal in any direction as shown in Fig. 1b. As the result, the extrusion tool head can not only press the sheet metal according to the characteristics of the surface in the different extrusion directions to form a more complex sheet metal part but also can reduce the bending deformation of the tool head, the wrinkling, and rebound of the sheet metal. Therefore, the effect of the 5-axis CNC point-pressing incremental forming will be different from the 3-axis CNC point-pressing incremental forming.

Fig. 1
figure 1

The working principle. a Three-axis point-pressing incremental forming. b Five-axis point-pressing incremental forming

During the point-pressing forming process, the forming tool completes a whole point-pressing action by pressing down, lifting, moving, pressing down, lifting. As shown in Fig. 2, the initial cutter location point of the tool head at Pn is pressed down along the axis of the tool head to the terminal cutter location point according to the extrusion direction at this point, action (1). After a certain deformation was formed, forming tool is lifted back to the original initial cutter location position, action (2), and then moved to the next initial cutter location point at Pn + 1, action (3), and so on. In this way, the sheet metal is successively deformed point by point, and the sheet metal is finally shaped by the accumulation of these deformations.

Fig. 2
figure 2

Point-pressing process

In this paper, the method for the tool path generation of the 5-axis CNC point pressure incremental forming is proposed, that is, the calculating method of the cutter location points (initial cutter location point and terminal cutter location point) and the calculating method of the extrusion tool posture.

2 Five-axis CNC point-pressing incremental forming path generation

2.1 The overview of the cutter locations points generation for the point-pressing forming

The candidate terminal cutter location point is calculated based on the latitudinal and longitudinal residual heights, and then the convex cuspate residual height between the candidate terminal cutter location points and the adjacent cutter location points is calculated. If the value of the convex cuspate residual height less than the preset maximum residual height, the next candidate terminal cutter location point is continued to be calculated. If the value of the convex cuspate residual height exceeds the preset maximum residual height, the position of the candidate terminal cutter location point is adjusted until the value less than the preset value. In the condition of satisfying the maximum residual height, the extrusion points are sparsely formed, which improves the forming efficiency.

2.2 Generation algorithm of the point-pressing cutter location points

  1. 1.

    Generating the cutter location surface from the upper surface of the model

The offset vector of each vertex is obtained by averaging the vertex normal vectors of the triangular faces on the upper surface of the model [23]. Then, each vertex is offset along its respective offset vector to generate the terminal cutter location surface where the center of the extrusion tool head is located. The offset distance is the size of the tool head radius.

  1. 2.

    Selecting the first terminal cutter location point at the first layer

First, the upper and lower edges of the terminal cutter location surface are extracted, and the upper edge is used as the first layer of the calculation. Find the point with the largest x-coordinate value on each segment of the upper edge, and use it as the first terminal cutter location point on the first level. Theoretically, the first terminal cutter location point can be any point on the upper edge. Selecting any point has no effect on the forming results on the upper edge. Considering the convenience of the calculation, the point with the largest x-coordinate value on the first layer is selected as the first terminal cutter location point, as shown in point A in Fig. 3.

Fig. 3
figure 3

The first terminal cutter location point on the first layer

  1. 3.

    Calculating the other terminal cutter location points based on the latitudinal residual height on the first layer.

As shown in Fig. 4, to calculate the position of other terminal cutter location points based on the latitudinal residual height, the arc length Lij between the desired point and the acquired terminal cutter location point can be calculated according to formula (1) [24]. Then, the specific coordinates of the desired terminal cutter location point can be calculated. If the feature of the surface on the upper edge is different, the arc length Lij between each two terminal cutter location points is also not equal:

$$ {L}_{ij}=\frac{\left|{\rho}_{ij}\right|\sqrt{2\left({\rho_{ij}}^2+2{\rho}_{ij}r+2{r}^2\right){\left({\rho}_{ij}+h\right)}^2-{\left({\rho_{ij}}^2+2{\rho}_{ij}r\right)}^2-{\left({\rho}_{ij}+h\right)}^4}}{\left({\rho}_{ij}+h\right)\left({\rho}_{ij}+r\right)} $$
(1)

where, r is the radius of the extrusion tool, h is latitudinal or longitudinal residual height, ρij is the normal radius of the curvature.

Fig. 4
figure 4

Residual height and arc length between two terminal cutter location points

From formula (1), it can be concluded that the arc length between the first terminal cutter location point and the second terminal cutter location point can be calculated as long as the normal curvature Kij of the surface at the first terminal cutter location point is obtained. When calculating the terminal cutter location point in the STL model, the following situations may occur:

The first case is as follows: the terminal cutter location point coincides with the vertex of the triangular facets. In this case, when calculating the normal curvature Kij of the vertex Vk along the \( \overset{\rightharpoonup }{V_{k+1}-{V}_k} \) direction, the following formula (2) can be used for calculation [25]:

$$ {K}_{ij}=\frac{2\times \left\langle \overset{\rightharpoonup }{{\boldsymbol{N}}_{\boldsymbol{k}}},\overset{\rightharpoonup }{{\boldsymbol{V}}_{\boldsymbol{k}+\mathbf{1}}-{\boldsymbol{V}}_{\boldsymbol{k}}}\right\rangle }{{\left\Vert \overset{\rightharpoonup }{{\boldsymbol{V}}_{\boldsymbol{k}+\mathbf{1}}-{\boldsymbol{V}}_{\boldsymbol{k}}}\right\Vert}^2} $$
(2)

When calculating the second terminal cutter location point according to the first terminal cutter location point, the method for determining the \( \overset{\rightharpoonup }{V_{k+1}-{V}_k} \) direction is first to seek out the nearest point in the clockwise direction on first layer polygon, then making a direction vector, where the ending point of the vector is the calculated nearest point and the starting point of the vector is the first terminal cutter location point. This direction vector is used as the \( \overset{\rightharpoonup }{V_{k+1}-{V}_k} \) direction when calculating the second terminal cutter location point. In the same way, this method is used for calculating other terminal cutter location points on the first layer. \( \overset{\rightharpoonup }{N_k} \) is the normal vector of the vertex Vk, and its value can be calculated by using the following formula [26]:

$$ \overset{\rightharpoonup }{{\boldsymbol{N}}_{\boldsymbol{k}}}=\frac{1}{\sum_{l=1}^m\frac{\gamma_{kl}}{A_{kl}}}{\sum}_{l=1}^m\left[\frac{\gamma_{kl}}{A_{kl}}\overset{\rightharpoonup }{{\boldsymbol{N}}_{\boldsymbol{k}\boldsymbol{l}}}\right]\left(l=1,2,m\right). $$
(3)

where γkl is the angle on the vertex Vk of the lth triangular facet that contains the vertex Vk, Akl is the area of the lth triangular facet that contains the vertex Vk, \( \overset{\rightharpoonup }{N_{kl}} \) is the normal vector of the lth triangular facet that contains the vertex. The second case is as follows: As shown in Fig. 5, the terminal cutter location points are on the edge of the triangular facets, which can be calculated by the following formula [24]:

$$ {K}_{ij}={\mu K}_{v1}+{\nu K}_{v2}. $$
(4)

where μ and ν are the weighted value for the calculation, μ is equal to the length between point V2 and point Pij divided by the length between point V2 and point V1, ν = 1 – μ. V1 and V2 are two endpoints of the edge. Kv1 and Kv2 are the normal curvatures at the two endpoints of this line, respectively.

Fig. 5
figure 5

The normal curvature calculation of the terminal cutter location points on the edge of the triangular facets

The position of the terminal cutter location points on the first layer can be calculated using the above two conditions. However, the third case may occur when calculating the terminal cutter location points of other layers. That is, the terminal cutter location points may be inside the triangular facets, as shown in Fig. 6. The rowledge points calculated in Zhu et al. [27] are not inside the triangular facets, so it cannot be applied to this paper. Therefore, the solution to the third case based on Zhu et al. [27] was added. It is the normal curvature calculation of the terminal cutter location points inside the triangular facets. As shown in Fig. 6a, when the intersection points Q1 and Q2 do not coincide with the vertices of the triangular facets, the normal curvature at the intersection points Q1 and Q2 on the edge of the triangular facet can be calculated by formula (4), and then the normal curvature at the terminal cutter location point can be calculated by the following formula (5). When one of the intersection points coincides with the vertices of the triangular facet, as shown in Fig. 6b, the normal curvature at vertex V2 (Q1) of the triangular facet can be calculated by formula (2), and the normal curvature at the intersection point Q2 on the edge of the triangular facet can be calculated by formula (4). Then, the normal curvature at the terminal cutter location point can be calculated by the following formula (5).

$$ {K}_{ij}=\lambda {K}_{Q_1}+\eta {K}_{Q_2} $$
(5)

where λη are weighted value for the calculation, λ is equal to the length between the point Q2 and point Pij divided by the length between point Q2 and point Q1, η = 1 − λ. Q1 and Q2 are the intersection points on the two edges, respectively.

Fig. 6
figure 6

The normal curvature calculation of the terminal cutter location points inside the triangular facets. a The intersection points Q1 and Q2 do not coincide with the vertices of the triangular facets. b One of the intersection point Q1(or Q2) coincides with the vertices of the triangular facets

  1. 4.

    Calculation of the center axis

As shown in Fig. 7a, the negative CNC incremental forming method is adopted in this paper. For the model whose bottom surface is a plane, the lower fringe edge of the cutter location surface is first obtained, and the average value of the coordinate values of each endpoint on the lower fringe edge is taken as the center point coordinate of the polygonal ring. Then, taking the straight line that parallels to the Z-axis and through the center point as the center axis. If the cutter location surface has only one lowest point, as shown in Fig. 7b, the straight line that parallels to the Z-axis and through the lowest point is taken as the central axis.

Fig. 7
figure 7

Center axis

  1. 5.

    Calculating the first terminal cutter location point of the second layer based on the longitudinal residual height

Each terminal cutter location point on the first layer and the center axis can be used to define a plane. Cutting the terminal cutter location surface using the plane will obtain a series of intersecting lines. Similarly, using the above formula (1)~(5), calculate the arc length in the longitudinal direction. When using formula (2), the \( \overset{\rightharpoonup }{V_{k+1}-{V}_k} \) direction is calculated as follows: First, the closest point to the terminal cutter location point is calculated along the negative direction of the central axis on the intersecting line. Then, a direction vector is made, where the starting point of the vector is the terminal cutter location point, and the ending point of the vector is the closest point. Finally, this vector is taken as the direction of the vector \( \overset{\rightharpoonup }{V_{k+1}-{V}_k} \). The obtained points are connected in order to obtain a second-layer polygonal ring. The point corresponding to the first terminal cutter location point on the first layer are found on the second-layer polygonal ring and is used as the first terminal cutter location point on the second layer. It is also the first candidate terminal cutter location point on the second layer, as shown by point A1 in Fig. 9.

When calculating the second-level polygonal ring, if the two adjacent points are on the same triangle facet, the two points can be directly connected. However, it may also happen that two adjacent points are not on the same triangle facet, as shown in Fig. 8a. In this case, the point p′ on the edge should be inserted between the point pi + 1 and point pi + 2 as shown in Fig. 8b. Zhu et al. [27] made a plane that is perpendicular to the central axis and through the point pi + 1 as well as the point pi + 2. The intersection point of the plane with the edge AB serves as an insertion point p′. Zhu et al. [24] used the cross product vector of the vector \( \overrightarrow{{\mathrm{p}}_{i+1}\ {\mathrm{p}}_{i+2}} \) and the sum vector of the vector at the point pi + 1 and the point pi + 2 as the normal vector of the cutting plane. Then, a plane equation was found by the cross product vector and the two points. The intersection point of the plane with the edge AB serves as an insertion point p′. In this paper, the cutting plane equation was found by three point pi, pi + 1, and pi + 2. The intersection point of the plane and the edge AB is used as the insertion point p′ of the polygonal ring, and they are connected to each other in the order of pi-pi + 1-p′-pi + 2 to constitute the second layer polygonal ring.

Fig. 8
figure 8

Points connecting on the polygon ring

  1. 6.

    Calculating the second terminal cutter location point on the second layer according to the latitudinal residual height

After obtaining the first terminal cutter location point on the second layer, the next point in the clockwise direction can be calculated by the latitudinal residual height h according to Eqs. (1) to (5), and this point is used as the candidate terminal cutter location point, for example, point B1 as shown in the Fig. 9. When using formula (2), the calculation of the \( \overset{\rightharpoonup }{V_{k+1}-{V}_k} \) direction is the same as the first layer.

Fig. 9
figure 9

Calculating the terminal cutter location points on the second layer

  1. 7.

    Constructing the triangles based on the existing terminal cutter location points

The triangle can be constructed after obtaining the second terminal cutter location point on the second layer. When constructing a triangle, it is ensured that a convex cuspate residual can be formed using the three terminal cutter location points. The method is to select the closest point to the existing point as the third point of the triangle. As shown in Fig. 9, since the distance between point A1 and point B is smaller than the distance between point A and point B1, point B is used as the third point to construct the triangles AA1B and A1BB1 while the triangle is determined based on point A and point A1. In this way, a convex cuspate residual can be formed among the three terminal cutter location points that make up the triangle.

  1. 8.

    Calculating the maximum residual height of the triangle area

As shown in Fig. 10b, there is the convex cuspate residual among three terminal cutter location points. The point P is not only the highest point on the maximum residue, but also the common point on the tool head sphere where the center of the ball is located at three terminal cutter location points. If the coordinates of point P can be calculated, the distance from point P to the surface of the triangular mesh just is the value of the convex cuspate residual height. Therefore, it is needed to calculate the following three equations:

$$ \left\{\begin{array}{c}{\left(x-{x}_1\right)}^2+{\left(y-{y}_1\right)}^2+{\left(z-{z}_1\right)}^2={r}^2\\ {}{\left(x-{x}_2\right)}^2+{\left(y-{y}_2\right)}^2+{\left(z-{z}_2\right)}^2={r}^2\\ {}{\left(x-{x}_3\right)}^2+{\left(y-{y}_3\right)}^2+{\left(z-{z}_3\right)}^2={r}^2\end{array}\right. $$
(6)
Fig. 10
figure 10

The convex cuspate residual height. a 2D view. a 3D view

The (x1, y1, z1), (x2, y2, z2), and (x3, y3, z3) in formula (6) are the coordinates of the ball center O1, O2, and O3 of the extrusion tool (Fig. 10a) and are also the coordinates of the terminal cutter location points. r is the radius of the tool head. After obtaining the coordinates of the common point P and point Q of the three spheres, point P is selected by the distance between point P and point Q to the central axis. Further, the convex cuspate residual height is calculated by the following steps:

  1. 1.

    The angle θ between vector \( \overrightarrow{\boldsymbol{PQ}} \) and the Z-axis direction vector is calculated, and the model is rotated by angle θ in the direction of the intersection angle so that the direction of the rotated vector \( \overrightarrow{\boldsymbol{PQ}} \) is the same as Z-axis.

  2. 2.

    The rotated model and the point P are projected onto the horizontal plane, and the triangle containing point P is found on the horizontal plane. Then, the corresponding triangular facet on the original model is found by this triangle, and the intersection point S on line PQ with this triangle facet is calculated.

  3. 3.

    The calculated distance between point S and point P is the convex cuspate residual height, as shown in Fig. 10.

Of course, the direct calculation method can be used. That is, a straight line equation can be established by two points P and Q. Then, the intersection point of the straight line PQ with this triangle facet is calculated. If the intersection point S of the straight line and the triangular facet is inside the triangular facet, then the distance between point S and point P is the value of the convex cuspate residual height. Since it is necessary to calculate the intersection point of a straight line and each triangular facet and judge whether the intersection point is inside the triangular facet until the condition is satisfied, which needs a great deal of computation time.

  1. 9.

    Adjusting the candidate terminal cutter location points

If the convex cuspate residual height of the triangular region is less than the preset maximum residual height hmax, the calculation of the next candidate terminal cutter location point is continued. If the convex cuspate residual height of the triangular region exceeds the value of the preset maximum residual height hmax, the distance of the second terminal cutter location point in the \( \overset{\rightharpoonup }{V_{k+1}-{V}_k} \) direction is reduced. The reduction range is about 1/5 to 1/3 of the original length. Then, recalculate the convex cuspate residual height between the three points until the value of the residual height is less than the preset maximum residual height hmax. If the model is a regular axisymmetric workpiece, such as a spherical surface and a prismatic table, etc., the coordinates of the terminal cutter location point, which constitutes the triangle and satisfies the residual height condition, can be recorded in a new linked list as a means to judge whether the residual height among the other terminal cutter location points satisfies the residual height conditions when calculating the convex cuspate residual height of the triangular region. Since the curvatures of the axisymmetric workpieces are the same, if the subsequent second triangle is contained by the first triangle, it is not necessary to calculate the convex residual height between the second triangles that are subsequently constructed. If the first triangle is contained by the second triangle, the convex cuspate residual height of the second triangle should be calculated and the first triangle in the linked list should be deleted, at the same, the second triangle should be stored in the list. If the second triangle and the first triangle are in an intersecting relation, the convex cuspate residual height of the second triangle is also necessary to be calculated, and the second triangle also should be stored in the linked list so as to compare the subsequent triangles. In this way, by comparing the subsequent triangles with the existing triangles, it is not necessary to calculate the residual height of each terminal cutter location point every time, which reduces the time of the calculation.

  1. 10.

    Followed by analogy, calculating all the other terminal cutter location points

In this way, the terminal cutter location points on the other layers are calculated after the terminal cutter location points on the second layer are found. Finally, all the terminal cutter location points of model are calculated.

  1. 11.

    Calculating the initial cutter location points by using the terminal cutter location points

After all the terminal cutter location points are obtained, the initial cutter location points can be obtained by offset upward the terminal cutter location points along the axis of the extrusion tool by a suitable distance according to the different extrusion directions.

2.3 The case studies

The proposed algorithms have been implemented on the Windows XP environment by using the C++ language, VC++6.0, and the OpenGL graphics library, and the case studies have been given to verify the feasibility and correctness of the algorithm by taking the STL model shown in Fig. 11 as the test model.

Fig. 11
figure 11

STL model

Figure 12 shows the generated cutter location surface by offsetting the inner surface of the model by a tool head radius [23] that is inputted by the user.

Fig. 12
figure 12

The cutter location surface

Figure 13 shows the calculated terminal cutter location points based on the latitudinal and longitudinal residual height and maximum residual height. Figure 13a shows the terminal cutter location points when the value of the latitudinal and longitudinal residual height is set as 0.1 mm and the value of maximum residual height is set as 0.3 mm. Figure 13b shows the value of the latitudinal and longitudinal residual height is set as 0.05 mm and the value of maximum residual height is set as 0.14 mm. Obviously, the smaller the residual height is, the denser the points are.

Fig. 13
figure 13

The terminal cutter location points with the different latitudinal, longitudinal, and maximum residual height. a 0.1 mm, 0.1 mm and 0.3 mm. b 0.05 mm, 0.05 mm, and 0.14 mm

Figure 14 shows the point-pressing tool path when the front angle and side dip angle are zero, that is, the direction vector of the extrusion tool is the normal vector at the cutter location point and the tool head is always perpendicular to the inner surface of the sheet at the point-pressing point.

Fig. 14
figure 14

The point-pressing direction

Figure 15 shows the dynamic simulation of the point-pressing forming process according to the generated point-pressing incremental forming tool path.

Fig. 15
figure 15

The dynamic simulation of the point-press forming process

3 Calculating the forming tool postures in the 5-axis CNC point-pressing

3.1 The algorithms of the tool postures calculation

The 5-axis incremental forming is different from the 3-axis incremental forming. When the 5-axis incremental forming is used to form the sheet metal parts, not only the x, y, and z values of the pressing tool position is calculated, but also the i, j, and k value of the spatial posture of the pressing tool must be controlled. That is the space coordinate component value of the tool axis vector unit vector. The sheet can be pressed in the different extrusion directions by adjusting the space posture of the pressing tool. Zhu et al. [28] defined the direction from the cutter location point to the center point of the end section of the tool shank as the axial direction of the tool. The angle between the tool head axis and the plane perpendicular to the normal vector at the cutter location was defined as the extrusion angle in the plane defined by the Z-axis vector, the cutter location point, and the normal vector at the cutter location. This method is not suitable for the case where the axis of the extrusion tool is not in this plane, and it cannot indicate all the extrusion directions. Zhu et al. [29] used the direction of the normal vector and the feed direction of the tool at the cutter location point and the layer spacing direction of the forming tool path as the three axial directions of the local coordinate system. While the normal vector of the cutter location point is not perpendicular to the feed direction, the normal vector of the cutter location point is corrected so that the three axial directions of the local coordinate system are perpendicular to each other. Zhu et al. [30] take the normal direction of each cutter location point as the axis direction of the extrusion tool, which is perpendicular to the surface of the model to be formed.

In this paper, the new local coordinate system shown in Fig. 16 is adopted to describe the spatial posture of the extrusion tool at a certain cutter location point, where oi is a terminal cutter location point and n is the normal vector of the terminal cutter location point. c is a vector parallel to the Z-axis, which is also the direction vector of the central axis of the model. u is the unit vector of the cross product vector of the normal vector n at the terminal cutter location point oi and the parallel vector c of the Z-axis, that is, \( \boldsymbol{u}=\frac{\boldsymbol{n}\times \boldsymbol{c}}{\left\Vert \boldsymbol{n}\times \boldsymbol{c}\right\Vert } \). m is the unit vector of the cross product vector of the vector n and u, that is, \( \boldsymbol{m}=\frac{\boldsymbol{n}\times \boldsymbol{u}}{\left\Vert \boldsymbol{n}\times \boldsymbol{u}\right\Vert } \). Then, a local coordinate system with m, u, and n as the three coordinate axes was established at the terminal cutter location point.

Fig. 16
figure 16

Calculating the extrusion direction

The angle between the projection vector of the extrusion tool vector v in the plane noim and the vector n is defined as the front angle α. If the cross product vector of the extrusion tool vector v in the plane noim and the vector n are in the same direction as vector u, α is defined as a positive value, or else, α is defined as a negative value. The angle between the projection vector of the extrusion tool vector v in the plane noiu and the vector n is defined as the side dip angle β. If the cross product vector of the extrusion tool vector v in the plane noiu and the vector n are in the same direction as vector m, β is defined as a positive value, or else, β is defined as a negative value. The positive and negative of the angle can indicate the extrusion direction of the tool without distinguishing the upper and lower sides of the coordinate plane. In the local coordinate system, the directional vector v of the extrusion tool can be expressed as v = (vm, vu, vn), where vn, vm, and vu are the coordinate values in the local coordinate system (m, u, n). From the geometric relations can be derived

$$ \left\{\begin{array}{c}\frac{{\mathrm{v}}_{\mathrm{m}}}{{\mathrm{v}}_{\mathrm{n}}}=\tan \left(-\upalpha \right)\\ {}\frac{{\mathrm{v}}_{\mathrm{u}}}{{\mathrm{v}}_{\mathrm{n}}}=\tan \upbeta \\ {}{{\mathrm{v}}_{\mathrm{m}}}^2+{{\mathrm{v}}_{\mathrm{u}}}^2+{{\mathrm{v}}_{\mathrm{n}}}^2=1\end{array}\right. $$
(7)

Solving the simultaneous equations:

$$ \left\{\begin{array}{c}{\mathrm{v}}_{\mathrm{m}}=\frac{-\tan \upalpha}{\sqrt{\tan^2\upalpha +{\tan}^2\upbeta +1}}\\ {}{\mathrm{v}}_{\mathrm{u}}=\frac{\tan \upbeta}{\sqrt{\tan^2\upalpha +{\tan}^2\upbeta +1}}\\ {}{\mathrm{v}}_{\mathrm{n}}=\frac{1}{\sqrt{\tan^2\upalpha +{\tan}^2\upbeta +1}}\end{array}\right. $$
(8)

As shown in Fig. 17, according to the transformation relationship between the local coordinate system and the workpiece coordinate system, the directional vector v of the extrusion tool is expressed in the workpiece coordinate system as

$$ v={v}_mm+{v}_uu+{v}_nn $$
(9)
Fig. 17
figure 17

Transformation of the coordinate system

After substituting (8) into the above formula (9), the vector v can be obtained:

$$ \boldsymbol{v}=\frac{-\tan \upalpha}{\sqrt{\tan^2\upalpha +{\tan}^2\upbeta +1}}+\frac{\tan \upbeta}{\sqrt{\tan^2\upalpha +{\tan}^2\upbeta +1}}+\frac{1}{\sqrt{\tan^2\upalpha +{\tan}^2\upbeta +1}}\boldsymbol{n} $$
(10)

Therefore, the unit direction vector of the extrusion tool in the workpiece coordinate system is also determined after determining the values of the front angle and side dip angles. Then, the unit direction vector can be expressed by a component value (ii, ji, ki) as a description of the spatial posture of the pressing tool.

3.2 The case studies

In order to verify the correctness of the spatial posture calculation algorithms of the pressing tool of the 5-axis point-pressing CNC incremental forming, the proposed algorithm-based software has been developed using the VC++ 6.0 and OpenGL graphics library and the case studies have been given. Figure 18 shows the 5-axis point-pressing forming simulation process according to the different front angle and side dip angle, respectively.

Fig. 18
figure 18

Simulation process

4 Forming experiment and measurement analysis

4.1 Forming experiment

In order to further analyze the forming effect of the two forming methods of the point-pressing incremental forming and the consecutive pressing incremental forming, the actual forming experiments were carried out by taking the sheet metal part model shown in Fig. 11 as an example. The sheet metal used in the experiments was the 1060 ordinary aluminum sheet with 0.88-mm thickness. The feed rate was 800 mm/min and the diameter of the forming tool head was 10 mm. The machine oil was used as the lubricating oil. A point-pressing incremental forming tool path with a latitudinal/longitudinal residual height of 0.01 mm and a maximum residual height of 0.018 mm was used for the forming experiment. For comparison, a consecutive contour forming tool path with a residual height of 0.018 mm was also used.

Figure 19 shows the forming processes based on the consecutive pressing incremental forming tool path and the point-pressing incremental forming tool path. Figure 20 shows the sheet metal parts formed by using each forming methods, respectively.

Fig. 19
figure 19

Forming processes. a Five-axis consecutive incremental forming. b Five-axis point-pressing incremental forming

Fig. 20
figure 20

Sheet metal parts. a Formed by 5-axis consecutive incremental forming. b Formed by 5-axis point-pressing incremental forming

4.2 Measurement analysis

The profiles of the formed sheet metal parts were measured by using the 3-coordinate measuring instrument, as shown in Fig. 21. After obtaining the contour coordinates of the points on the X = 0 section under the forming coordinate system, compare them with the coordinate values of the corresponding points on the designed sheet metal parts, as shown in Fig. 22. As can be seen from Fig. 22, the section profiles of the sheet metal parts formed by the consecutive pressing incremental forming and the point-pressing incremental forming are very close. Compared with the designed parts, the section profiles of the two experimental sheet metal parts are basically consistent with the designed parts in the sidewall area, but there is an upward rebound in the bottom area.

Fig. 21
figure 21

Profile measurement of the formed parts. a Consecutive incremental forming. b Point-pressing incremental forming

Fig. 22
figure 22

Section profile curves

In order to further compare the profiles of the experimental and designed sheet metal parts, the Z-direction absolute deviation distributions of the section profiles are obtained, as shown in Fig. 23. It can be seen from the figure that the section profile deviation curves of the experimental parts under the two forming methods have similar trends. The Z-direction deviation of the sheet metal parts based on the 5-axis point-pressing incremental forming tool path is slightly lower than the sheet metal parts based on the 5-axis consecutive pressing tool path. Among them, the difference in the bottom area of the sheet metal parts is obvious, but the difference in the side wall area is small.

Fig. 23
figure 23

Absolute deviation of the section profile

For investigating the surface quality of the sheet metal parts formed by the two forming methods, the TIME 3200 roughness meter was used, and the TS110 curved surface sensor was selected to measure the formed sheet metal parts under the two forming methods, as shown in Fig. 24. In order to better reflect the surface quality of the formed parts, the sheet metal parts are respectively marked in eight positions which are equally divided, and then each position is measured in turn.

Fig. 24
figure 24

Roughness measurement. a Point-pressing incremental forming. b Consecutive incremental forming

After the measured data is processed, the average values of the contour arithmetic mean deviation Ra and the maximum height of profile Ry are respectively obtained, as shown in Fig. 25. As can be seen from the data, the sheet metal parts adopted the 5-axis consecutive incremental forming tool path is slightly lower than the sheet metal parts adopted the 5-axis point-pressing incremental forming tool path. However, the average values of maximum height of profile Ry of the two sets of data is less than 0.018 mm, which satisfies the preset maximum residual height value.

Fig. 25
figure 25

Roughness. a Point-pressing incremental forming. b Consecutive pressing incremental forming

To measure the thickness of the sheet metal parts, the sheet metal parts is first cut along the symmetrical center line of the model on the linear cutting machine, as shown in Fig. 26a. Then, use the altimeter to mark along the cutting section with a mark spacing of 2 mm, as shown in Fig. 26b. Finally, the thickness of the sheet metal parts at each mark is measured respectively by using a micrometer, as shown in Fig. 26c. The measurement results are shown in Fig. 27 and Table 1. The average thickness and the minimum thickness of the forming area of the sheet metal part formed by using the 5-axis point-pressing incremental forming tool path are slightly higher than the sheet metal parts formed by using the 5-axis consecutive incremental forming tool path.

Fig. 26
figure 26

Thickness measurement process. a Cutting sheet metal parts. b Marking height. c Measuring thickness

Fig. 27
figure 27

Thickness distribution curves

Table 1 Thickness

5 Conclusion

In this paper, a calculation method of the convex cuspate residual height in the point-pressing incremental forming is proposed based on the STL model, and a new point-pressing incremental forming tool path based on the residual height is developed. The squeezing point is made as sparse as possible while satisfying the maximum convex cuspate residual height, thereby improving the forming efficiency. A method for determining the posture of the pressing tool in the 5-axis point-pressing incremental forming is proposed, and the forming motion simulation is carried out. The sheet can be extruded in different directions by changing the front angle and side dip angle. The experimental results proved the feasibility of the methods of the tool path generation and the pressing tool posture determination. From the measurement results of the sheet metal parts, the surface quality of the sheet metal parts formed by the two forming methods satisfies the requirement of the preset maximum residual height, and the profiles of the two sheet metal parts are in good agreement with the designed parts. However, the Z-direction absolute deviation of the sheet metal parts formed by the 5-axis point-pressing incremental forming tool path is slightly lower than the sheet metal parts formed by the 5-axis consecutive incremental tool path, and the average thickness and minimum thickness in the forming region are also slightly higher than the sheet metal parts adopted 5-axis consecutive incremental tool path.