Abstract
This paper presents an extension of multipoint machining technique, called the Drop Spin and Tilt (DST) method, that spins the tool on two axes, allowing for the generation of multiple contact points at varying distances around the first point of contact. The multiple DST second points of contact were used to manually generate a toolpath with uniform spacing between the two points of contact. The original DST method used a symbolic algebra package to position the tool on a bi-quadratic surface; our extension is a numerical solution that allows positioning a toroidal tool on a tensor product Bézier surface, which we tested on bi-degrees 2, 3, 4, and 5. On the three bicubic surfaces we tested, the average number of initial seeds for our numerical method was less than 5 across all three surfaces, and the average number of Newton iterations was less than 20 except when the curvature of the tool closely matches the local surface curvature (in which case more iterations were required). Furthermore, we investigate the spread of possible second points of contact as the tool is spun around these two axes, demonstrating the feasibility of using the method to control the machining strip width.
Similar content being viewed by others
References
Warkentin A, Ismail F, Bedi S (2000) Multi-point tool positioning strategy for 5-axis machining of sculptured surfaces. Comput Aided Geomet Design 17(1):83–100
Warkentin A, Ismail F, Bedi S (2000) Comparison between multipoint and other 5-axis tool positioning strategies. Int J Mach Tools Manuf 40(2):185–208
Gray P, Bedi S, Ismail F (2005) Arc-intersect method for 5-axis tool positioning, Computer-Aided Design, vol 37. Elsevier, Amsterdam, pp 663–674
Liang F, Kang C, Fang F (2020) A review on tool orientation planning in multi-axis machining. International Journal of Production Research, Int. J. Prod. Review, online 1–31
Duvedi RK, Bedi S, Batish A, Mann S (2014) A multipoint method for 5-axis machining of triangulated surface models. Comput Aided Des 52:17–26
Duvedi RK, Singh M, Bedi S, Mann S (2020) Multipoint tool positioning of a toroidal end mill for five-axis machining of generalized tensor product Bézier surfaces. Int J Adv Manuf Technol 111:495–503
Sharma SK, Duvedi RK, Bedi S, Mann S (2019) A method for generating multiple solutions for multipoint five-axis tool positioning. Int J Adv Manuf Technol 100:2509–2520
Sharma SK, Duvedi RK, Bedi S, Mann S (2019) A multipoint tool positioning method for five-axis machining in the region of two intersecting tensor product Bezier surfaces. Int J Machine Tools Manufact 142:42–53
Duvedi RK, Bedi S, Mann S (2017) Numerical implementation of drop and tilt method of 5-axis tool positioning for tensor product surfaces. In: International journal of advanced manufacturing technology. Springer, London, pp 1–14. https://doi.org/10.1007/s00170-017-1193-1
Duvedi RK, Bedi S, Mann S (2018) An efficient multipoint 5-axis tool positioning method for tensor product surfaces. In: International journal of advanced manufacturing technology. Springer, London, pp 279–295. https://doi.org/10.1007/s00170-018-1940-y
Funding
This research was supported by NSERC.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare no competing interests.
Additional information
Author contribution
The authors contributed the work in this paper.
Availability of data and material
Some of the surfaces used in this work are given in the paper. The remaining surfaces and other data are available on request.
Code availability
Pseudo-code for the work in this paper appears in the Appendix; the actual code is available on request.
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix A: Numerical implementation of DSTM
Appendix A: Numerical implementation of DSTM
The DSTM method comprises three steps: tool-drop, tool-spin, and tool-tilt. In the present work, Newton’s method was used to determine the solutions for the tool-drop and tool-tilt steps. In the Newton’s algorithm, first- and second-order partial differentials of the surface and surface normal need at each tool-drop and tool-tilt steps. To have a numerical solution that is independent of the degree of the Bèzier surface, we use the Richardson extrapolation to compute these partial differentials. The following sections discuss the implementation of the Richardson extrapolation method and Newton’s method to compute the gouge free tool-drop and tool-spin solution at each tool drop location.
1.1 A.1 Richardson extrapolation for numerical differentiation
The goal of numerical differentiation is to compute an accurate estimate of the partial derivative of a function. This accuracy can be improved by decreasing the interval step size h or by using a higher order formula that employs more points. The Richardson extrapolation employs a center difference approach and offers better convergence as the truncation error drops by a factor of 4 as the step interval drops from h to \(\frac {h}{2}\). The test surfaces S used in DSTM algorithm are function of parameters u and v. Figure 11 shows the procedure developed to numerically compute the partial derivative of surface S with respect to parameter u. Similar, procedure is used to determine the partial derivative of surface S with respect to parameter v. The initial value of the interval size hstep is set to 0.001 and hstep is reduced by half in each subsequent iteration. The iterations continues till the progressive truncation error is less than the specified error, given by 𝜖Richard = 10− 5. The numerical values of the computed derivatives were compared with the exact values computed symbolically in MAPLETM and both were found to be correct to the sixth decimal place.
1.2 A.2 Tool-drop algorithm
As a first step in DSTM implementation, the toroidal tool is dropped vertically through tool footprint location T (Fig. 12 gives pseudo-code for this algorithm). Equation 2 is solved by employing Newton’s method to compute the location of first point of contact S(u1, v1), and the height of the dropped tool h. Newton’s method needs an initial seed to start the solution search. In the first step, a random initial solution, [XDrop] = [u, v, h], is generated and the partial derivatives required in the Newton’s method are computed using the Richardson extrapolation method. Depending upon the local surface properties and the tool-drop location T, first point of contact P may lie on the outer-side or the inner-side of the cutting edge of the pseudo-insert, i.e., O1 (see Fig. 1).
If the first point of contact P lies on the outer-side of the pseudo-insert, Eq. 3 is used to compute \(\hat n_{r}\). However, when the point of contact P lies on the inner side of the pseudo-insert, as shown in Fig. 13, the surface normal \(\hat n_p\) is oriented in a direction away from the tool-axis \(\hat t\) and Eq. 3 can not be used to compute the radial vector \(\hat n_{r}\). In such scenarios, \(\hat n_{r}\) is computed alternatively by using the following equation,
Terms of the Jacobian matrix(JD), required in the Newton’s method, comprises the partial derivatives of Eq. 2 with respect to the unknown variables u, v, and h and are computed as given below
The partial derivatives of surface S, surface normal \(\hat n_p\), and radial vector \(\hat n_{r}\) are numerically computed by employing the Richardson extrapolation method as shown in Fig. 11.
Newton’s method starts with a randomly generated initial seed for {u, v, h} and attempts to converge to the solution within NIter iterations. If Newton’s method (Fig. 14) converges within the specified tolerance of 𝜖Drop, then the solution is tested for gouging. If the solution yields a non-gouging tool position, this is accepted as the final drop solution. If the tool is gouging with the surface or Newton’s method does not converge within the specified number of iterations NIter, then the solution is aborted and Newton’ method is re-initialized with another random seed. In the gouge check step, the tool bottom is discretized into 48 (Nϕ) and 36 (N𝜃) divisions along ϕ and 𝜃 directions respectively as shown in Fig. 17.
Thus, the tool-drop algorithm yields the first non-gouging point of contact P = S(u1, v1) between the tool and the surface, the unit surface normal \(\hat n_p\) through P, the unit radial vector \(\hat n_{r}\), center of the Pseudo-Insert O1, and the center of the dropped toroidal tool Tc.
1.3 A.3 Tool-spin and tilt algorithm
In the tool-spin and tool-tilt steps, the dropped tool is first rotated about the spin-axis (\(\hat n_p\)) through the specified spin-angle (α). Subsequently, the tool is rotated about the tilt-axis \(\hat i_3\), through an angle β so that the tool touches the surface at second point of contact, Q = S(u2, v2). In the tool-tilt algorithm, Newton’ method is employed to solve Eqs. 6 and 7 for four unknowns u2, v2, β, and ϕ. The procedure to determine the coordinate frames \(\{\hat i_0, \hat j_0,\hat k_0\}, \{\hat i_1, \hat j_1,\hat k_1\}, \{\hat i_2, \hat j_2,\hat k_2\}\) and \(\{\hat i_3, \hat j_3,\hat k_3\}\) is explained in Sections 3.1, 3.2, and 3.3 respectively.
If the tool-tilt solution of the previous footprint location is available, then the previous solution is taken as the initial seed for Newton’s method. Since the control points of the Bèzier surface are uniformly distributed, this approximation works at some locations and the tool-tilt solution from Newton method converges quickly. Otherwise, the initial seed [XTilt] for Newton method is determined using random seed generation. Next step in tool-tilt algorithm is to compute the values of the surface normal \(\hat n_q\), tilted tool-axis \(\hat t'\), tool-center \(T^{\prime }_c\), and circle of torus \(C^{\prime }_{tor}\) from the initial seed.
The Jacobian matrix JT used in the tool-tilt step is given as
The elements of Jacobian matrix JT are computed using the partial derivatives of Eqs. 6 and 7 with respect to the initial seed [X] = {u, v, β, ϕ}.
where, \(\gamma =\arccos (dot(\hat j_0,\hat j_1)),\) \(M(\beta )=\hat k_3 \cos \limits \gamma -\hat j_3\sin \limits \gamma \) and \(N(\beta )=O_1+R_o(\hat j_3 \cos \limits \gamma +\hat k_3\sin \limits \gamma \)).
Newton’s method in Tool-Tilt step converges when the solution for [XTilt] is found within the user specified tolerance given by parameter 𝜖Tilt. In case of convergence, the FlagNewton is set to be TRUE as shown in Fig. 15. The converged tool-tilt solution [XTilt] is then subjected to the following three checks before it is accepted as a valid solution:
-
1.
The first check is to ensure that the second point of contact Q = S(u2, v2) should not lie too close to the first point of contact P = S(u1, v1). To avoid this, a rectangular boundary for parametrs (u, v) is taken around point P to force the solution of second point of contact away from point P as shown in Fig. 16. The limits of the rectangular boundary are taken as an offset from point P using a tolerance of 𝜖vicinity. In case a converged solution for second contact point Q lies within the boundary defined around point P, then the tilt solution is discarded and a new trial with a new random seed is initiated.
-
2.
If the first check is satisfied, then the next check is implented to ensure that the converged tool-tilt solution has tool-axis orientation pointing in the desired direction. It is possible that the tool-axis solution can be such that the tilted tool may have its shank intersecting with the surface. This corresponds to the tool-tilt angle β being positive and the axis of the tilted tool points towards the negative z-direction. Such tilt solutions are also discarded and the new trial is initiated with new random seed.
-
3.
A tilt solution that satisfies the above two checks is finally tested for gouging. For gouge checking, the bottom surface of the toroidal tool, which is formed by surface of revolution of the cutting edge, is discretized into a polar grid as shown in Fig. 17. The grid is defined with circular rings that are normal to the tool axis and centered on the tool axis. Since the bottom arc of the cutting tool is expected to possibly gouge the surface, only a portion bounded between 𝜃min and 𝜃max is considered for the gouge check. This part of the cutting edge is divided into N𝜃 divisions and each ring in the grid corresponds to these divisions on the cutting edge. Each circular ring, defined in a plane normal to the tool axis, is divided into Nϕ divisions as shown in Fig. 17. Since the Bézier surface is uniformly defined in the X- and Y -directions, each grid point on the tool Ti, j can be mapped to the corresponding point on the Bézier surface and the Z component of the surface points is computed.
The Z −axis component of the grid point on tool-surface should not lie more than 𝜖Gouge below the corresponding point on Bézier surface. If all the points on the tool grid meet this criteria, then the tool-tilt solution is accepted as a valid solution. However, if any point on the tool surface lies below the corresponding point on the Bézier surface by a magnitude more than 𝜖Gouge, then the tool is considered to be gouging with surface. If the tool is found to be gouging then the solution is discarded and new trial is initiated with a new random seed. The gouge checking procedure is identical to [10] and therefore pseudo-code for the same is not given here.
At any given tool-drop location T, it is also possible that a valid tool-tilt solution is not found despite considering NTilt random seed points. In such cases, we assume that the local maximum principal curvature of the surface and the tool curvature are identical, making it infeasible to tilt the tool anymore. Therefore, in absence of a valid tilt solution, the first and second point of contact are considered to be at the same location.
Rights and permissions
About this article
Cite this article
Sharma, S.K., Duvedi, R.K., Bedi, S. et al. Numerical implementation of drop spin and tilt method for five-axis tool positioning for tensor product surfaces. Int J Adv Manuf Technol 115, 2001–2016 (2021). https://doi.org/10.1007/s00170-021-07137-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00170-021-07137-9