Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

In theory, the five-axis machining of sculptured surfaces with flat-end cutter offers many advantages over three-axis machining with ball end-mill, including faster material removal rate, improved surface finish and elimination of hand finish [1]. Nowadays, due to increasing competitiveness in the market, decreasing production time without sacrificing the part quality is becoming more vital. The new popular technique for advancing productivity and quality of machining processes is virtual machining. Manufacturing process include designing, testing and producing the parts is simulated in a virtual environment before it sent to the real machining. One of the main purposes of virtual machining is how to predict the instantaneous cutting force in milling operation, and hence the proper feedrate can be selected. Proper feedrate selection is always being very critical because it is directly influence the machining productivity and product quality. Selecting the most suitable feedrate values for free-form surface parts where the amount of material removal is constantly changing has the potential for great advantages. One of the optimization methods which have become popular in recently is feedrate scheduling. Process optimization is performed by adjusting feedrate.

In supporting the machining optimization, the precise geometrical information is very important especially in the modeling and calculating cutting force [2]. Various studies in geometric simulation strategy based on solid modeling include constructive solid geometry (CSG) and boundary representations (B-Rep) have been conducted. Altintas and Spence [3, 4] used CSG to identify cutter workpiece intersection to predict cutting forces. While El-Mounayri et al. [5] used a solid modeling system to compute the volume removed for a three-axis tool path. Other researchers who have contributed significantly are Jerard et al. [68]. They evaluated the conditions of cutter part engagement with computationally efficient algorithms called Z-map method. In this method, the workpiece was broken into a set of evenly distributed discrete z-direction vectors (ZDV). The Z-map or dexel can be thought of as a special type of discrete vector model, or also known as discrete vertical vector [9]. Another type of discrete vector model is discrete normal vector. This model represents the workpiece as a set of position and direction vectors where the directions are generally normal to the corresponding surface point. Solid modeling gives more accurate information, but computation time drastically increased. Meanwhile discrete vector model makes the calculation become faster than solid modeling. However, the computation time increases intensely as the precision and accuracy is to be improved.

Discretization method to obtain Cutter Workpiece Engagement (CWE) data is time consuming, especially for a simple surface like flat surface. To overcome such problem, Ozturk and Lazoglu [10] proposed an analytical method to determine chip load of ball-end mill during 3D free-form machining. In spite of the method is fast and accurate, but it is only applicable for 3-axis milling with flat workpiece surface. Another study was performed by Tunc and Budak [11]. When the surface is flat, a simple analytical method called bounding point coordinate was used. However, if the sculptured workpiece surface is machined, then they used faceted model to represent the workpiece surface. Analytical method was proven much faster and more accurate compared with the discrete approaches. However, study on CWE by using analytical method has not been well developed. Another limitation of the current analytical methods is they cannot provide Cutter Workpiece Engagement (CWE) data with respect to engagement angle. The instantaneous length of cut and cut thickness information are required to predict the instantaneous cutting force [12].

This paper presents a new analytical method for generating the instantaneous CWE in five-axis milling. The method is not only applicable for the workpiece with flat surface, but also for free form surfaces. The length of CWE can be determined by determining the coordinate of upper CWE (n) and cutter contact point (C) as shown in Fig. 1a. Upper CWE is end of engagement point that located on the workpiece surface. The workpiece surface is discretized by a number of normal vectors. Even though the normal vectors are applied in this model, but there is no calculation to check the contact between cutter and normal vector. The coordinate and orientation of the normal vector are used as the reference to define the shape of the surface at every tool position, mathematically. The predicted surface shape and the tool orientation will be employed to define the intersection of the tool and the workpiece surface. This paper is part of research project on analytical method for obtaining CWE in various stages of five-axis milling. The results are divided into three technical papers. Part 1 is focused on model development during semi-finish milling. Meanwhile free-form workpiece surface with toroidal cutting tool is discussed in Part 2.

Fig. 1
figure 1

Workpiece surface representation, a projection line and upper CWE, b number and location of the reference vectors

2 Identifying Normal Vector and Surface Shape

In this study the workpiece surface is represented by a number of normal vectors. The vectors are distributed on the surface with \( k_{x} \) and \( k_{y} \) equal to half of cutter diameter. Where \( k_{x} \) and \( k_{y} \) are the distance between normal vector in x-direction and in y-direction, respectively. Three reference vectors are selected at every cutter location point (T) as shown in Fig. 1b. \( v_{1} \) is a reference vector which is closest to point C at engagement angle \( \left( \varphi \right) \) equal to 90. It can be located inside or outside the tool. While \( v_{2} \) and \( v_{3} \) are two vectors which are located before \( v_{1} . \) The normal vectors can be defined as a point on the workpiece surface which has the orientation relative to surface in x-axis (\( \varepsilon_{x} \)) and the orientation of surface in y-axis (\( \varepsilon_{y} \)). Vector information is obtained by converting surface data generated from the CAM software \( v_{i} (x_{i} ,\, y_{i} ,\, z_{i} ,\, I_{x} ,\,I_{y} ,\, I_{z} ) \) to become \( v_{i} (x_{i} , y_{i} , z_{i} , \varepsilon_{xi} , \varepsilon_{yi} ). \) Their orientations are simply calculated by these equations,

$$ \varepsilon_{xi} = \tan^{ - 1} \left( {I_{x} /I_{z} } \right);\; \varepsilon_{yi} = \tan^{ - 1} \left( {I_{y} /I_{z} } \right);\quad \text{where}\;\left( {i = 1,2,3} \right) $$
(1)

Based on the vector information, the shape of the surface at every cutter location (Cl) point can be defined. The radius of surface in x-axis (\( R_{x} \)) and surface in y-axis (\( R_{y} \)) can be determined by,

$$ R_{x} \,=\, \frac{{\sqrt {(x_{2} - x_{1} )^{2} + (z_{2} - z_{1} )^{2} } }}{{2\sin (0.5 (\varepsilon_{x2} - \varepsilon_{x1} ))}} ; \quad R_{y}\, =\, \frac{{\sqrt {(y_{3} - y_{1} )^{2} + (z_{3} - z_{1} )^{2} } }}{{2\sin (0.5 (\varepsilon_{y3} - \varepsilon_{y1} ))}} $$
(2)

After \( R_{x} \) and \( R_{y} \) are obtained, then some conclusions regarding the shape of the surface in x-axis (\( S_{x} \)) and y-axis (\( S_{y} \)) can be taken.

  • Convex surface: if \( R_{x} > 0 , \) \( R_{y} > 0 \)

  • Concave surface: if \( R_{x} < \,0,\, R_{y} < \,0 \)

  • Flat surface: if \( R_{x} = 0 \) and \( \varepsilon_{x1} = 0; \) or \( R_{y} = 0 \) and \( \varepsilon_{y1} = 0 \)

  • Slope surface: if \( R_{x} = 0 \) and \( \varepsilon_{x1} \ne 0 , \) slope angle \( (\gamma ) = \varepsilon_{x1} ; \) or \( R_{x} = 0 \) and \( \varepsilon_{y1} \ne 0 , \) \( \gamma = \varepsilon_{y1} \)

Some feasible surface shape from combination of \( S_{x} \) and \( S_{y} \) are illustrated in Fig. 2. When free-form surface is machined, the surface shape can be continuously changed at every tool location. However, some surfaces such as hemisphere surface, hemi cylinder surface and flat surface have constant curvature shape. And hence, they are only required three normal vectors to define the whole surface area. More complex surface needs more number of reference vectors.

Fig. 2
figure 2

Feasible surface combinations, a convex-flat, b convex-convex, c slope-convex, d convex-concave, e concave-flat, f flat-slope

3 Checking the Feasible Engagement Location

The generic flat-end cutter with respect to the tool coordinate system (TCS) can be described as,

$$ S_{C } \left( {\varphi ;l_{k} } \right) = \left[ {\left( {r_{m} + r} \right)\sin \varphi ;\;\left( {r_{m} + r} \right)\cos \varphi ;\;l_{k} } \right] $$
(3)

where \( R \) is the major radius of cutter and \( l_{k} \) is the height of cutter. Due to Cl-data and normal vector information are provided in Workpiece Coordinate System (WCS), then parametric equation of cutting tool in WCS can be expressed as follow,

$$ S_{C}^{\prime } \left( {\varphi ;l_{k} } \right) = \left[ {\text{M}} \right] S_{C } \left( {\varphi ;l_{k} } \right) $$
(4)

where \( [{\text{M}}] \) denotes an operator to map coordinate system from TCS to WCS. It is involving the tool rotation about x-axis (\( \theta_{A} \)) and y-axis (\( \theta_{B} \)), and also translation at T. Where T is cutter location point (Cl-point) which is located at the bottom center of cutting tool. The mapping operator is given by:

$$ \left[ {\text{M}} \right] = \left[ {\begin{array}{*{20}c} {{\text{cos }}\theta_{\text{B}} } & 0 & {{\text{sin }}\theta_{\text{B}} } & {{\text{x}}_{\text{T}} } \\ {{\text{sin }}\theta_{\text{A}} {\text{sin }}\theta_{\text{B}} } & {{ \cos}\,\theta_{\text{A}} } & { - {\text{sin }}\theta_{\text{A}} {\text{cos }}\theta_{\text{B}} } & {{\text{y}}_{\text{T}} } \\ {{\text{cos }}\theta_{\text{A}} {\text{sin }}\theta_{\text{B}} } & {{\text{sin }}\theta_{\text{A}} } & {{\text{cos}}\,\theta_{\text{A}} { \cos}\,\theta_{\text{B}} } & {{\text{z}}_{\text{T}} } \\ 0 & 0 & 0 & 1 \\ \end{array} } \right] $$
(5)

At instantaneous tool position, it need to define whether the tool and workpiece engage or not. It can be defined by calculating the projecting point \( q(x_{q} ,y_{q} ,z_{q} ) \) as shown in Fig. 1a. Due to \( q \) is projected point from \( C(x_{C} ,y_{C} ,z_{C} ) \) in z-axis, then \( \{ x_{q} ,y_{q} \} \) is equal to \( \{ x_{C} ,y_{C} \}. \) While \( z_{q} \) is obtained by calculating z-axis on \( S_{x} \) with respect to \( x_{C} \) \( (\Updelta {\text{Z}}_{\text{x}} ), \) and z-axis on \( S_{y} \) with respect to \( y_{C} \) \( ( \Updelta {\text{Z}}_{\text{y}} ). \) First, by working on \( S_{x} , \) the z-value can be calculated by comparing \( x_{C} \) with the coordinate and orientation of the reference vector \( v_{1} . \) The equations to obtain \( (\Updelta {\text{Z}}_{\text{x}} ) \) and \( (\Updelta {\text{Z}}_{\text{y}} ) \) for curved surface (concave or convex) can be expressed by,

$$\begin{array}{*{20}l} {\delta_{x} = \sin^{ - 1} \left( {\left( {R_{x} \sin \varepsilon_{x1} + \left( {x_{C} - x_{1} } \right)} \right)/R_{x} } \right);} \hfill \\ {\delta_{y} = \sin^{ - 1} \left( {\left( {R_{y} \sin \varepsilon_{y1} + \left( {y_{C} - y_{1} } \right)} \right)/R_{y} } \right)} \hfill \\ \end{array} $$
(6)
$$ \Updelta Z_{x} = R_{x} \left( { \text{cos}\,\delta_{x} - \cos \varepsilon_{x1} } \right);\quad \Updelta Z_{y} = R_{y} \left( {{\cos}\,\delta_{y} - \cos \varepsilon_{y1} } \right) $$
(7)

Meanwhile for flat surface and slope surface can be determined by Eq. 8 and Eq. 9 respectively.

$$ \Updelta {\text{Z}}_{\text{x}} = 0\;{\text{and}}\;\Updelta {\text{Z}}_{\text{y}} = 0. $$
(8)
$$ \Updelta Z_{x} = (x_{C} - x_{1} )\tan \varepsilon_{x1} ; \quad \Updelta Z_{y} = (y_{C} - y_{1} )\tan \varepsilon_{y1} $$
(9)

Finally, \( {\text{z}}_{\text{q}} \) is defined as follow,

$$ z_{q} = z_{1} + \Updelta Z_{x} + \Updelta Z_{y} $$
(10)

Since \( z_{q} \) was obtained, thus the length of projection line from \( C \) to \( q \) can be calculated by \( \overline{{C{\text{q}}}} = z_{q} - z_{C} . \) The projection line \( \overline{{C{\text{q}}}} \) will be used as the initial reference line for further calculation to get upper CWE. The engagement occurred if \( \overline{{C{\text{q}}}} \) is positive. Otherwise, there is no engagement between tool and workpiece.

4 Obtaining CWE and Cut Geometry

There are two types of tool path topologies that are mostly used in sculptured surface machining, parallel pattern and spiral pattern. Normally, parallel pattern is used for milling area of sculptured surface. Cutting tool moves at fixed x-axis or fixed y-axis. Parallel pattern is a simple and the easiest pattern to generate. Therefore, machining direction along x-axis is selected in this study.

After the projection line is obtained, then it will be rotated by the tool rotation about \( \theta_{B} \) and \( \theta_{A} . \) These two rotation procedures must be performed sequent except for certain conditions it can be skipped and then jump to the next procedure. In this section the detail procedure to obtain \( n \) will be derived.

4.1 Rotating the Projection Line by \( \theta_{B} \)

In the first rotation procedure, the perpendicular line is rotated by \( \theta_{B} \) on the first surface \( (S_{x} ) \) as shown in Fig. 3. The projection line is then rotated about point \( C \) to get line \( \overline{{C{\text{s}}}} . \) If \( \theta_{B} \) is equal to zero then line \( \overline{{C {\text{s}}}} \) is equal to line \( \overline{{C{\text{q}}}} . \) Equations to define the rotated line for every surface shape can be expressed below.

Fig. 3
figure 3

Rotation of projection line on S x , a convex surface, b slope surface

The same method can be applied for convex and concave surface. By employing trigonometry equations, the length of the lines and angles in Fig. 3a can be determined.

$$ \overline{C\,O}_{x} = \sqrt {\overline{C\,q}^{2} + R_{x}^{2} - 2\overline{C\,q} R_{x} \cos \delta_{x} } $$
(11)
$$ \begin{array}{l} \phi_{b} = 180 - \left| {\theta_{B} - \delta_{x} } \right| + \phi_{a} ; \;\text{or} \;\phi_{b} = 180 - \left| {\theta_{B} } \right| - \left| {\delta_{x} + \phi_{a} } \right|\\ {\text{if}}\; (\theta_{B} < 0\;{\text{and}}\;\delta_{x} > 0) \end{array}$$
(12)
$$\begin{array}{l} \phi_{a} = \cos^{ - 1} \left( {\frac{{\overline{{C\,O_{x} }}^{2} + R_{x}^{2} - \overline{C\,q}^{2} }}{{2\,\overline{{C\,O_{x} }} \,R_{x} }}} \right);\\\phi_{c} = \sin \left( {\frac{{\overline{{C\,O_{x} }} \text{sin}\,\phi_{b} }}{{R_{x} }}} \right);\\\phi_{d} = 180 - (\phi_{b} + \phi_{c} ) \end{array}$$
(13)
$$ \overline{C\,s} = \sqrt {R_{x}^{2} + \overline{{C\,O_{x} }}^{2} - 2 R_{x} \overline{{C\,O_{x} }} \cos \phi_{d} } \, \to \;(curved\;surface) $$
(14)

Meanwhile \( \overline{C\,s} \) for flat surface or slope surface (Fig. 3b) can be defined by Eq. 15.

$$ \overline{C\,s} = \overline{C\,q} /\cos \theta_{B} \to flat\;surface;\;\text{or}\;\overline{C\,s} = \frac{{\overline{C\,q} \sin \left( {90 + {{\upgamma}}} \right)}}{{\sin \left( {90 - {{\upgamma}} - {{\uptheta}}_{\text{B}} } \right)}} \to slope\;surface $$
(15)

4.2 Inclined Surface

If \( \theta_{B} \) is not equal to zero, it means that the projecting line was rotated in the first procedure. Due to this rotation, the projecting line is not perpendicular to the second surface \( (S_{y} ). \) Consequently, when \( S_{y} \) is curved surface, the line \( \overline{{C {\text{s}}}} \) cannot be mapped to \( S_{y} \) because the line and the surface are not aligned anymore. It can be analogous to Fig. 5 where the inclined curved surface \( (S_{i} ) \) is obtained by sliced the workpiece material with plane B. Plane B is a plane A which is rotated by \( \theta_{B} . \) The radius of \( S_{i} \) \( (R_{i} ) \) is dependent on \( S_{x} . \) When \( S_{x} \) is a curved surface, it can be calculated by referring back to Fig. 3a. Line \( \overline{qv} \) denotes the projected distance in z-axis from projected point q on workpiece surface to baseline of curved surface \( S_{y} . \)

$$ \overline{s\,t} = \left( {\frac{{(R_{y} \cos \delta_{y} - \overline{C\,q} )}}{{\cos \theta_{B} }}} \right) + \overline{C\,s} $$
(16)
$$ R_{i} = \sqrt {\overline{s\,t}^{2} + \left( {R_{y} \,\sin \delta_{y} } \right)^{2} } \, \to \,curved\;surface $$
(17)

Meanwhile \( R_{i} \) when \( S_{x} \) is flat surface or slope surface can be determined by Eq. 18 below.

$$ R_{i} = R_{y} /\cos \theta_{B} \to flat\;surface;\quad R_{i} = \frac{{R_{y} \sin (90 + {{\upgamma}})}}{{\sin (90 - {{\upgamma}} - \theta_{B} )}}\, \to\, slope\;surface $$
(18)

However, when \( \theta_{B} = 0, \) then \( R_{i} = R_{y} . \)

4.3 Rotating the Rotated Line by \( \theta_{A} \)

\( n \) can be defined after the length of \( \overline{C\,n} \) as shown in Fig. 4b was obtained. \( \overline{C\,n} \) is the rotated projecting line after the second rotation. And it represents the length of contact between tool and workpiece or normally called as cut width. For the curved surface it can be expressed as follow,

Fig. 4
figure 4

Rotation of projection line on S i , a inclined surface, b rotation of the rotated projection line on \( S_{i} \)

$$ \overline{C\,O}_{i} = \sqrt {\overline{C\,s}^{2} + R_{i}^{2} - 2 \overline{C\,s } R_{i} {\text{cos}}\,\delta_{y} } $$
(19)
$$ \phi_{e} = \cos^{ - 1} \left( {\frac{{\overline{{C\,O_{3} }}^{2} + R_{i}^{2} - \overline{C\,s}^{2} }}{{2\,\overline{{C\,O_{3} }} \;R_{i} }}} \right);\quad \phi_{f} = 180 - \left| {\theta_{A} } \right| + \left| {\delta_{y} } \right| + \phi_{e} $$
(20)
$$ \phi_{g} = \sin \left( {\frac{{\overline{{C\,O_{i} }} \sin \phi_{f} }}{{R_{i} }}} \right);\quad \phi_{h} = 180 - (\phi_{f} + \phi_{g} ) $$
(21)
$$ \overline{C\,n} = \sqrt {R_{i}^{2} + \overline{{C\,O_{i} }}^{2} - 2 R_{i} \overline{{C\,O_{i} }} \cos \phi_{h} } \to \;(curved\;surface) $$
(22)

Meanwhile for flat surface and slope surface it can be determined by Eq. 22.

$$ \overline{C\,n} \,= \,\overline{C\,s} /\cos \theta_{A} \to flat\;surface;\;\overline{C\,n} \,= \,\frac{{\overline{C\,s} \sin (90 + \gamma )}}{{\sin (90 - \varepsilon_{\text{n}} - \theta_{B} )}} \to slope\;surface $$
(23)

Finally, coordinate of \( n \) can be determined by mapping the parametric equation of cylinder (Eq. 4) with \( l_{k} \) is equal to \( \overline{C\,n} . \) And it yields to,

$$ n\,(x_{n} ,y_{n} ,z_{n} ) = [{\text{M}}].\;S_{C} \left( {\varphi ;l_{k} } \right). $$
(24)

If \( n \) located out of the workpiece block, then it should be cut. And hence the length of CWE fall into,

$$ \overline{C\,n} = \frac{\Updelta s}{\cos \vartheta } \to \vartheta = \cos^{ - 1} \left( {\cos \theta_{A} \cos \theta_{B} } \right) $$
(25)

where \( \Updelta s \) and \( \vartheta \) denote the distance from CC-point to the block limit and the tool orientation angle relative to z-axis in WCS, respectively. Then coordinate of upper CWE can be obtained by using Eq. 24.

5 Simulation and Test Result

Based on the formula derived in the previous sections, a simulation program using MATLAB has been developed, enabling the calculation of CWE at instantaneous tool location. Two free-form workpiece and part surface models as shown in Fig. 5a and b were tested. Machining conditions used in the test were feedrate 2,500 mm/min and cutting speed 5,000 rpm. Two teeth flat-end cutter with diameter 20 mm was employed as cutting tool. By using the simulation developed, the shape of cut geometry can be generated. The graph as depicted in Fig. 5c and d are cut shapes at every Cl-point for one strip tool path. From these graphs can be seen that the shapes of cut resemble the shape of workpiece removed. It is an indication that the proposed method is accurate. The size of cut width at every Cl-point can be seen in Fig. 5e and f. Lower cut width as shown by the initial and final tool path are due to some part of the cutting edge is out of the workpiece block.

Fig. 5
figure 5

Model tests, a, b part and workpiece surface models, c, d cut shape, e, f cut width progression

Even though the shape of cut resemble the shape of material removed, but the accuracy of the proposed method should be examined. Therefore, to verify the accuracy of the proposed method, width of cut obtained from the simulation program was compared to the width of cut measured by using Unigraphic. The width of cut was measured in Unigraphic by putting the cutter model at the Cl-point and adjusts its orientation based on Cl-data. After that, the workpiece model is subtracted by the cutter model. Then the width of cut between cutter can be measured.

Verifications were conducted by calculating the error of the developed method. This error is the difference between the result generated by the program simulation and that is measured by Unigraphic. Verification performed for the width of cut at \( \varphi = 90 \) for every Cl-point. From the results show in Fig. 6 can be seen that both model tests produce relatively small error.

Fig. 6
figure 6

Cut width error for every Cl points at \( \varphi = 90 \)

The shapes and width of cut as a function of engagement angle for four selected Cl-points from Test 1 shown in Fig. 7. When the tool located at Cl-1 (Fig. 7a, b), only some part of the cutting tool engages with workpiece. It is due to Cl-point located out of the workpiece block. CWE start at \( \varphi = 20 \) which is called as entry angle. Complete CWE showed by Cl-8 (Fig. 7c, d). Another case depicted by CWE at Cl-25 (Fig. 7e, f). In this case, inclination angle and small depth of cut make CWE starts at \( \varphi = 20. \) Meanwhile CWE at Cl-45 (Fig. 7g, h) shows a complete engagement. However, some CWE at the front side were cut due to the workpiece block limit.

Fig. 7
figure 7

Cut shape and cut width at \( \varphi \in \left[ {0,180} \right] \) for selected Cl-points from Test 1

6 Conclusion

In this paper, a new analytical method to generate CWE for flat-end cutter was presented. The proposed method is not only applicable for flat workpiece surface, but also for free form workpiece surface. It is an important advantage over the existing analytical method in the literature. The test has been performed to compare the geometry obtained by the proposed method to that measured by Unigraphic. The result shows that it produces relatively small error. It proves the accuracy of the proposed method. Moreover, the method was eliminating the need for large number of vector to define the workpiece surface. It indicates that the method is computationally more efficient as compared to Z-map.