**An Accurate and E**ffi**cient Approach to Calculating the Wheel Location and Orientation for CNC Flute-Grinding**

#### **Yang Fang 1,2,3, Liming Wang 1,2,3,\*, Jianping Yang 1,2,3 and Jianfeng Li 1,2,3**


Received: 27 May 2020; Accepted: 16 June 2020; Published: 19 June 2020

**Abstract:** The profile of flutes has a great influence on the stiffness and chip-removal capacity of end-mills. Generally, the accuracy of flute parameters is determined by the computer numerical control (CNC) grinding machine through setting the wheel's location and orientation. In this work, a novel algorithm was proposed to optimize the wheel's location and orientation for the flute-grinding to achieve higher accuracy and efficiency. Based on the geometrical constraint that the grinding wheel should always intersect with the bar-stock while grinding the flutes, the grinding wheel and bar-stock were simplified as an ellipse and circle via projecting in the cross-section. In light of this, we re-formulated the wheel's determination model and analyzed the geometrical constraints for interference, over-cut and undercut in a unified framework. Then, the projection model and geometrical constraints were integrated with the evolution algorithm (i.e., particle swarm optimization (PSO), genetic algorithm (GA) for the population initialization and local search operator so as to optimize the wheel's location and orientation. Numerical examples were given to confirm the validity and efficiency of the proposed approach. Compared with the existing approaches, the present approach improves the flute-grinding accuracy and robustness with a wide range of applications for various flute sizes. The proposed algorithm could be used to facilitate the general flute-grinding operations. In the future, this method could be extended to more complex grinding operations with the requirement of high accuracy, such as various-section cutting-edge resharpening.

**Keywords:** flute-grinding; evolution algorithms; wheel location and orientation

#### **1. Introduction**

Flutes, as the major structure of end-mills, play an important role in the cutting performance [1–4]. A flute can be defined by the following three parameters: core radius, flute angle and rake angle [5–7]. The rake angle influences the cutting force, while the core radius and the helix angle determine the stiffness and chip-removal capacity of the cutters. The performance of those flute parameters quietly depends on the manufacturing accuracy. Generally, the flute is manufactured by the CNC grinding machine through the determination of location and orientation for the grinding wheel path [8–10]. In the flute-grinding operations, the grinding wheel will move with a helix path to generate the grooves. In recent years, much attention has been paid to developing an advanced wheel path determination model and optimized algorithms for the CNC flute grinding to minimize the manufacture errors and improve calculation efficiency.

The kinematics of flute-grinding operations for CNC grinders has been developed by many researchers. For instance, Kim et al. [11] developed a simulation method with Boolean operations to construct the helix motion and developed an iterative process to compute the wheel geometry and location data. Although this method could be used for virtual cutting tests in the CAM system, it is time-consuming to achieve a high machining accuracy. To improve the precision of generated flutes, Li [12] established a novel algorithm to calculate the numerical data of flutes based on the enveloping theory, in which the flute profile was interpolated with appropriate discrete points using the cubic polynomial expression. However, this method might be invalid for grinding with a bevel-type wheel. In order to calculate the location and orientation of wheels with complex shapes (e.g., 1B1, 1E1, 1F1, and 4Y1 wheels), Habibi et al. [13] used virtual grinding curves to formulate the grinding processes. Based on the virtual curves, they calculated the grinding error with the worn wheels and compensated the wheel path. Generally, the kinematic of flute-grinding was represented by several transcendental equations, which were supposed to be solved to get the generated helical flute. However, it is very complicated to give the analytical solution, and thus numerical analysis was generally used to describe the flute profile in current studies, which suffer from long computation time. For free-form grinding wheels, Wasif et al. [14] presented a novel method for five-axis CNC grinding through the optimization of the grinding wheel geometry, which was constructed with line segments and circular arcs. Although this method could economically produce or dress the grinding wheel for accurately grinding the end-mill cutters, it ignored the optimization of the wheels' path. On the basis of the flute-grinding model, the following problem is how to achieve the desired flute parameters by setting the trajectory of the grinding wheel. In industry, the conventional way is to grind end-mill flutes by trial and error, which is costly and time-consuming [15]. Mathematically, the desired flute profile can be viewed as an optimization problem with regards to the wheel's shape and configuration. To solve this problem, Chen et al. [16] proposed an iteration algorithm to determine the wheel location and orientation. For each loop, the generated flute parameters were compared with the desired values until they converged within the target range. The iteration method has a high calculating speed and precision, but it required a proper initial value, which cannot be easily determined without experience. In Karpuschewski's research [17], particle swarm optimization (PSO) was investigated to search the wheel location for a given helical flute and grinding wheel profile. Recently, Li et al. [18] extended this work with a novel graphic analysis method and niche particle swarm optimization (NPSO) algorithm to solve the problem for multi-objective of machining accuracy. Although the evolution algorithms (EA, i.e., PSO, GA) could be used in the wheel path optimization process with a global search strategy for such a complex nonlinear problem, they are not stable in convergence, especially for some small flutes (flute diameter < 1 mm).

In view of the above survey, it can be seen that the current study has addressed the modeling of flute-grinding well, but fast and stable algorithms are still required for further study. Currently, extreme-size cutters are widely used in industry, such as the micro-milling cutter or turbine blade root milling cutter. The flute parameters for those cutters will greatly affect their cutting performance, which requires higher accuracy. However, the current algorithms lack the definition of various constraint conditions in machining, which cannot guarantee the machining accuracy and calculation stability. In this work, a new method is presented to calculate the flute parameters and determine its CNC grinding operations. Compared to the above studies, we projected the grinding wheel in the cross-section and used a two-parameter operator to control the grinding operations. Regarding the wheel path optimization algorithm, the projection model was integrated with the evolution algorithm (i.e., PSO, GA) for the population initialization and local search operator. Compared to the current EA method, the improved method showed better stability and short computation time. In addition, it could achieve higher accuracy for a wide range of flute sizes with various profiles, especially for the above-mentioned small flutes.

The outline of the paper is described as follows. In Section 2, the kinematic of flute-grinding is a model with an explicit expression, and the generated flute parameters are formulated. In Section 3, a projection model is proposed for the grinding processes and a two-parameter operator to control the wheel location and orientation is introduced. Additionally, the constraints for undercut, over-cut and extreme-cut of flutes are investigated. This projection model will integrate with the subsequent evolution algorithm. Section 4 presents a wide range of flute-grinding problems to test the accuracy, efficiency, and robustness of the proposed method. Finally, Section 5 summarizes the whole article and points out the contribution of our work.

#### **2. Modeling of Flute-grinding Processes**

#### *2.1. Grinding Wheel Modeling*

In this work, a standard conical grinding wheel was applied to implement the flute-grinding. Figure 1 illustrates this type of standard grinding wheel. To describe the wheel's geometry, a frame **OG**, denoted as a wheel coordinate system, is developed and shown in Figure 1. Then, the parametric representation of the wheel *GW*(*h*, θ) in the wheel coordinate system can be derived as

$$\prescript{G}{}{W}(h,\theta) = \begin{bmatrix} f \cdot \cos\theta \\ f \cdot \sin\theta \\ h \end{bmatrix} \tag{1}$$

where *h* ∈ [0, H], θ ∈ [0, 2π] and *f* = R − *h* cot α.

**Figure 1.** Modeling of conical grinding wheel.

Except for the wheel surface, the lateral face will also be involved in the grinding processes. Geometrically, the front lateral face *GW*(0, θ) and the back lateral face *GW*(H, θ) can be obtained by setting *h* = 0 and *h* = H. Additionally, the wheel surface normal is deduced from Equation (1) as follows:

$$\begin{aligned} \,^G N = \begin{bmatrix} \cos \theta \\ \sin \theta \\ \cot \alpha \end{bmatrix} \end{aligned} \tag{2}$$

#### *2.2. Kinematic of CNC Flute-Grinding*

To demonstrate the flute-grinding operations, another framework **OT** is established in Figure 2, which is denoted as a tool coordinate system. In the modeling, **OT** is static while **OG** is moving with the grinding wheel. The flute-grinding operations consist of two steps: (1) wheel set-up and (2) wheel moving with a helix trajectory.

**Figure 2.** Flute-grinding processes: (**a**) XTYT view; (**b**) XGYG view.

In the wheel set-up operation, the wheel is configured in **OT** with a specified location and orientation shown in Figure 2. The wheel location is defined by the wheel center **OG**, which is denoted by the coordinate value [*dx dy dz*]. The wheel orientation is defined as an angle, which can be viewed as rotating the grinding wheel about the **YT** axis in a counter clockwise direction through the angle β. To this end, the set-up operation in the tool coordinate system can be expressed using the homogeneous transformation matrix in Equation (3).

$$\mathbf{^T M\_1} = \begin{bmatrix} \cos \beta & 0 & \sin \beta & dx \\ 0 & 1 & 0 & dy \\ -\sin \beta & 0 & \cos \beta & dz \\ 0 & 0 & 0 & 1 \end{bmatrix} \tag{3}$$

In the wheel helix motion, the wheel moves along the **ZT** axis with a translation velocity ν while the cutter rotates about the **ZT** axis with a velocity ω. In the tool coordinate system, the kinematics matrix of the helix motion is represented as follows:

$$\begin{aligned} \,^\text{T} \mathbf{M}\_1 = \begin{bmatrix} \cos(\boldsymbol{\omega} \cdot \boldsymbol{t}) & 0 & -\sin(\boldsymbol{\omega} \cdot \boldsymbol{t}) & 0\\ \sin(\boldsymbol{\omega} \cdot \boldsymbol{t}) & 1 & \cos(\boldsymbol{\omega} \cdot \boldsymbol{t}) & 0\\ 0 & 0 & 1 & \boldsymbol{\upsilon} \cdot \boldsymbol{t} \\\ 0 & 0 & 0 & 1 \end{bmatrix} \end{aligned} \tag{4}$$

where *t* represents the grinding time.

To guarantee the helix angle λ, the translation *v* and the rotation ω is supposed to satisfy the following condition:

$$
\cot \lambda = \frac{v}{r\_T \cdot \omega}.\tag{5}
$$

Based on the above operations, the kinematic of grinding wheels can be obtained with regarding machining time *t* in the tool coordinate system by integrating Equations (1)–(5), listed in Equation (6). In addition, to simplify the calculation, the rotation speed ω is generally set as 1 in the following equations.

$$\begin{aligned} ^T\mathcal{W}(h,\theta,t) &= ^TM\_2 \cdot ^TM\_1 \cdot ^GW(h,\theta) = \\ \begin{bmatrix} dx\cdot\cos t - dy\cdot\sin t + h\cdot\sin\theta\cdot\cos t - f\cdot\sin\theta\cdot\sin t + f\cdot\cos\theta\cdot\cos\theta\cdot\cos t\\ dy\cdot\cos t + dx\cdot\sin t + h\cdot\sin\theta\cdot\sin t + f\cdot\sin\theta\cdot\cos t + f\cdot\cos\theta\cdot\cos\theta\cdot\sin t\\ h\cdot\cos\theta + v\cdot t - f\cdot\sin\theta\cdot\cos\theta + dz \end{bmatrix} .\end{aligned} \tag{6}$$

Geometrically, the flutes are generated by the envelope of grinding wheels. The envelope surface consists of a group of curves, which are called the contact curve [19]. As shown in Figure 3, the contact curve is composed of two parts. One is generated by the wheel surface, which can be deduced using envelope theory. The other is formed by part of the wheel edges.

**Figure 3.** Illustration of the flute generation and the contact curve.

For the first part of the contact curve, it can be obtained using the conjugate theory as shown in Equation (7):

$$\prescript{T}{}{N} \cdot \prescript{T}{}{V} = 0,\tag{7}$$

where *TN* <sup>=</sup> *TM*<sup>2</sup> · *TM*<sup>1</sup> · *GN* and *TV*(*h*, <sup>θ</sup>, *<sup>t</sup>*) <sup>=</sup> *<sup>d</sup>*(*TW*(*h*,θ,*t*)) *dt* .

By solving Equation (7), the equation of this contact curve can be deduced as Equation (8).

$$\begin{array}{l} \upsilon \cdot (d\boldsymbol{z} - \sin\theta \cdot \cos\theta + \cot\alpha \cdot \cos\beta) - (d\boldsymbol{y} + \sin\theta \cdot \boldsymbol{f}) \cdot (d\boldsymbol{x} + \cot\alpha \cdot \sin\beta + \cos\theta \cdot \cos\theta) \\ + (d\boldsymbol{y} + \sin\theta) \cdot (d\boldsymbol{x} + h \cdot \sin\theta + \cos\theta \cdot \cos\theta \cdot \boldsymbol{f}) = 0. \end{array} \tag{8}$$

By solving this triangular equation, the explicit expression of the contact curve can be obtained in Equation (9):

$$\Theta^\* = \operatorname{atan2}(B, A) + \operatorname{atan2}\left(\sqrt{A^2 + B^2 - C^2}, \mathbb{C}\right) \tag{9}$$

where ⎧ ⎪⎪⎪⎨

*B* = *dx* + *f* · sinβ · cotα

⎪⎪⎪⎩ *C* = *dy* · cotα · sinβ − *dz* · *v* − *v* · cotα · cosβ

*A* = −*dy* · cosβ − *v* · sinβ

Substituting Equation (9) into Equation (6), the first part of the flute surface can be obtained, which is formed by the envelope of the wheel surface in a general form in Equation (10).

.

$$\prescript{T}{}{W}(h,t) = \begin{bmatrix} d\mathbf{x}\cdot\cos t - dy\cdot\sin t + h\cdot\sin\beta\cdot\cos t - f\cdot\sin\theta^\*\cdot\sin t + f\cdot\cos\beta\cdot\cos\theta^\*\cdot\cos t\\ dy\cdot\cos t + d\mathbf{x}\cdot\sin t + h\cdot\sin\beta\cdot\sin t + f\cdot\sin\theta^\*\cdot\cos t + f\cdot\cos\beta\cdot\cos\theta^\*\cdot\sin t\\ h\cdot\cos\beta + v\cdot t - f\cdot\sin\beta\cdot\cos\theta^\* + dz \end{bmatrix} \tag{10}$$

The other part of the contact curve generated by wheel edge can be obtained by setting *h* = 0 or *h* = H for Equation (6) denoted as *TW*(0, θ, *t*) and *TW*(H, θ, *t*).

Generally, the flute parameters are presented in the cross-section with the definition of core radius, flute angle and rake angle [20,21]. The flute profile could be easily obtained by setting Z = 0 for Equation (10), as shown in Equation (11):

$$\begin{aligned} ^T W(h) &= \begin{bmatrix} x\_c \\ y\_c \end{bmatrix} = \\ \begin{bmatrix} d\mathbf{x} \cdot \cos t^\* - dy \cdot \sin t^\* + h \cdot \sin \theta \cdot \cos t^\* - f \cdot \sin \theta \cdot \sin t^\* + f \cdot \cos \theta \cdot \cos \theta^\* \cdot \cos t^\* \\ dy \cdot \cos t^\* + dx \cdot \sin t^\* + h \cdot \sin \theta \cdot \sin t^\* + f \cdot \sin \theta \cdot \cos t^\* + f \cdot \cos \theta \cdot \cos \theta^\* \cdot \sin t^\* \end{bmatrix} \end{aligned} \tag{11}$$

where *t* <sup>∗</sup> = *<sup>R</sup>*·sinβ·cosθ∗−*h*·cosβ−*dz <sup>v</sup>* .

As shown in Figure 4a, the flute parameters are defined as follows:

**Figure 4.** The flute parameters: (**a**) flute angle and core radius; (**b**) rake angle.

The flute angle is established as the opening angle between the vector **OTP**<sup>1</sup> and another vector **OTP**2, which can be calculated using: φ = acos(**OTP**<sup>1</sup> · **OTP**2).

The core radius is the minimum distance from a point **OT** to the flute profile, which can be calculated as: *rc* <sup>=</sup> min- *xc* <sup>2</sup> + *yc* 2 .

The rake angle is illustrated in Figure 4b, which is a close-up of Figure 4a at point **P**1. In practice, the rake angle is measured at the start point **P**<sup>3</sup> with a measure distance **PD** (**PD** is set as 5% of tool radius in this work). Geometrically, the rake angle is the included angle of the two vectors **P**2**OT** and **P**2**P**3, which can be expressed as: γ = acos(**P**2**OT** · **P**2**P**3)

In addition, the points **P**1, **P**<sup>2</sup> and **P**<sup>3</sup> can be obtained by the following conditions:


#### **3. Determination of Wheel Location and Orientations with a 2D Projection**

Mathematically, the flute-grinding operations can be simplified with three equations shown in Equation (12). For these equations, the wheel location [*dx dy*] and orientation β are supposed to be calculated to configure the wheel path and generate the designed flute profile. Generally, the intelligent evolution algorithms, i.e., GA or PSO, were used to solve the above equations. However, it was reported that the selection of initial points would greatly affect the accuracy and efficiency of the optimization. In practice, we found that the initial wheel's location and orientation were confined by several geometrical conditions, such as inference avoidance, contact constraints, etc., which can be used to define the feasible space for the initial points. To this end, an optimization method was introduced to build the feasible space and constraints by mapping the grinding operations into a two-dimensional projection.

$$\begin{cases} f\_{\text{rake}}\left(d\mathbf{x},d\boldsymbol{y},\boldsymbol{\beta}\right) = \boldsymbol{\gamma}\_0\\ f\_{\text{filter}}\left(d\mathbf{x},d\boldsymbol{y},\boldsymbol{\beta}\right) = \boldsymbol{\phi}\_0\\ f\_{\text{core}}\left(d\mathbf{x},d\boldsymbol{y},\boldsymbol{\beta}\right) = \boldsymbol{r}\_0 \end{cases} \tag{12}$$

#### *3.1. Grinding Operation Projection*

Geometrically, the flutes are formed by the intersection between the wheel and the bar-stock. To represent the intersection, the grinding wheel and the bar-stock were projected in the cross-section, which is shown in Figure 5. The bar-stock is simplified as a circle area and the wheel edge can be expressed with an ellipse area. The ellipse could be represented with regard to the wheel's location and orientation denoted as *re*| (*dx*,*dy*,β). In order to assure the accuracy of the core radius, the ellipse will intersect with the circle *rT* and tangent with the circle *rc* at a tangent point. The tangent point is defined by the parameter θ*c*, denoted by Pc| (θ*c*). It can be seen that the point Pc| (θ*c*) can be used to locate the ellipse. The algebra relation between Pc| (θ*c*) and *re*| (*dx*,*dy*,β) is deduced in Appendix A. In light of the above geometrical relation, the wheel path determination equation can be re-organized concerning the parameters θ*<sup>c</sup>* and β, shown in Equation (13).

$$\begin{cases} \begin{aligned} \, \, \, \_{\text{rule}} \, (\theta\_{\text{C}} \, \, \beta) &= \gamma\_0 \\ \, \, \, \, \_{\text{finite}} \, (\theta\_{\text{C}} \, \, \beta) &= \phi\_0 \\ \, \, \, \, \_{\text{core}} \, (\theta\_{\text{C}} \, \, \beta) &= r\_{\text{c0}} \end{aligned} \end{cases} \tag{13}$$

**Figure 5.** Illustration of the projection of the wheel edge and cutter profile within the cross-section.

To solve this equation, an optimization model is defined as following:

$$\min \xi(\boldsymbol{\theta}\_{\mathcal{L}}, \boldsymbol{\beta}) = \text{s.t.} \xi = \max \left\{ \left| \frac{f\_{\text{nkx}}(\boldsymbol{\theta}\_{\mathcal{L}}, \boldsymbol{\beta}) - \gamma\_{0}}{\gamma\_{0}} \right|, \left| \frac{f\_{\text{flnte}}(\boldsymbol{\theta}\_{\mathcal{L}}, \boldsymbol{\beta}) - \phi\_{0}}{\phi\_{0}} \right|, \left| \frac{f\_{\text{cne}}(\boldsymbol{\theta}\_{\mathcal{L}}, \boldsymbol{\beta}) - r\_{0}}{r\_{c0}} \right| \right\},\tag{14}$$

where ξ is the grinding error in the following description.

In addition, several constraints were defined as follows:

• **Constraint 1:** the tangent point Pc| (θ*c*) should always locate in the first or the second quadrant,

$$
\partial\_{\mathbb{C}} \in [0, \pi]. \tag{15}
$$

*Appl. Sci.* **2020**, *10*, 4223

• **Constraint 2:** the wheel edge cannot be separated with the bar-stock and overcut the core radius,

$$r\_{\mathcal{C}}(\theta\_{\mathcal{C}}, \beta) = |\mathcal{O}\_{\mathcal{T}} \mathcal{P}\_{\mathcal{C}}| \in [r\_{\mathcal{C}0}, r\_{\mathcal{T}}]\_{\prime} \tag{16}$$

• **Constraint 3:** to avoid interference, the open-angle θ*<sup>S</sup>* should satisfy the following condition (see Appendix B),

$$
\theta\_{\mathbb{S}} \ge \Omega,\tag{17}
$$

To sum up, the flute-grinding operations can be re-formulated by the following optimization problem:

$$\min \xi(\theta\_{C'} \text{ } \beta)\_\*$$

subjected to: Equations (15)–(17).

Compared with current flute-grinding optimization models, this project method has two advantages: (1) instead of three decision parameters (*dx*, *dy*, β), only two parameters (θ*C*, β) were required to be considered, which will simplify the calculation during the iterations; (2) three constraints could be used to confine the feasible area and generate the proper initial points, which would improve the robustness and efficiency of the optimization.

#### *3.2. Calculation Procedure with the Improved GA and PSO*

To solve the above-constrained optimization problem, the projection model with the GA and PSO was integrated to calculate the wheel's location and orientation for flute-grinding operation. As mentioned, the initial points would greatly affect the optimization results. In this work, an initial points generation algorithm was proposed in Algorithm 1, which could be used for the population initialization for GA or PSO. It is noted that all the initial points would be checked by the over-cut and interference constraints in the projection model. Furthermore, the flowchart of improved GA and PSO (IGA, IPSO) integrated with the projection model is shown in Figure 6. First, a set of initial points were generated with the algorithm in, which is used to calculate the following wheel's location and the generated flute parameters. In light of this, the grinding errors were evaluated and set as the fitness function for the GA and PSO. For the IGA and IPSO, the off springs or particles generated by the iteration operators, e.g., mutation or crossover, will be checked by the proposed over-cut and interference constraints. The iteration will stop while satisfying either of the following conditions: (1) iterations n > 100 (2) there is no obvious improvement in the grinding errors within n = 10 succeeding iterations. With this procedure, the optimized wheel's location and orientation, the generated flute parameters and grinding errors could be obtained.


Input: Desired flute *rT*, λ,*rc*0, γ0, φ<sup>0</sup> and wheel parameters {*R*, *H*, α} Output: initial points (pop) for β & θ*<sup>C</sup>* 1. *pop* = . ϕ / . 2. **while** n < N **do** 3. β = random(0, π/2) and θ*<sup>C</sup>* = random(0, π). 4. Calculate *rc*(θ*C*, β) and θ*<sup>s</sup>* in the projection model (see Appendix A) 5. **If** satisfy the constraints for Equation (16) and Equation (17). 6. *pop* = *pop* <sup>∪</sup> . β, θ*<sup>C</sup>* / 7. else 8. go to line 3 9. **end if** 10. **return** pop

**Figure 6.** Flow chart of the improved genetic algorithm (IGA) and improved particle swarm optimization (IPSO) with the projection model.

#### **4. Numerical Simulation**

To test the accuracy and efficiency of the presented model, the numerical simulation was conducted with various sizes of flutes. Three types of grinding wheels were provided in Table 1. The designed flutes were divided into three groups according to their size: small (*rT* ≤ 1 mm), medium (1 mm ≤ *rT* ≤ 20 mm), large (*rT* ≥ 20 mm). To grind those flutes, the wheel's location and orientation

in CNC operations were determined with the proposed improved GA and PSO (IGA, IPSO), and also compared with the traditional GA and PSO. For each instance, the optimization was run 10 times and the average results and deviation were recorded. The optimization program was implemented in MATLAB 2010 on a computer with Intel Core i5, 2.39 GHz, 4 GB RAM. The parameters of the GA and PSO were set in Table 2. The desired flutes parameters are listed in Table 3. The helix angle for those flutes was set as 30 degrees.


**Table 1.** Specification of grinding wheel.


**Table 2.** Parameters of optimization algorithms.

The simulation results with various algorithms are given in Table 3. It can be concluded that the integrated method, i.e., IGA and IPSO, had wider applicability and higher accuracy than the traditional GA and PSO. Especially for IGA, it could be used to solve the very small size flute-grinding problem. For further study, the grinding errors ξ (calculated by Equation (14)) between the grinding flute parameters and the designed flute parameters were calculated as shown in Figure 7a. It can be seen that the integrated method superior to the traditional in accuracy and stability. The accuracy of flute parameters with IGA and IPSO could achieve 1 <sup>×</sup> <sup>10</sup><sup>−</sup>4. It was also noted that the grinding errors with IGA and IPSO were less for the medium size flutes, while larger for the small and large size flutes. What is more, to further test the efficiency of the proposed method, the computing time was recorded as shown in Figure 7b. The integrated method also showed better efficiency in convergence, which could save about 15%–40% computing time. In addition, the initial setting parameters of the grinding wheel solved by IGA are provided in Table 4. In light of the IGA solution, three instances were selected and simulated in the software CATIA. The simulated results were obtained and measured, as shown in Figure 8, which also shows that they are highly consistent with the designed flute parameters. In summary, according to the simulation tests for various optimization methods, it is demonstrated that the proposed IGA and IPSO based on the projection model is effective, efficient, and robust solving the flute-grinding problem.


JULQGLQJHUURU

**Figure 7.**

Comparisons

 with various algorithms:

 (**a**) the grinding errors; (**b**) the computing time.


**Table 4.** Initial setting parameters of grinding wheels calculated by IGA.

**Figure 8.** Simulated cutting tool flutes by CATIA.

#### **5. Conclusions**

In the CNC flute-grinding processes, the accuracy of generated flute parameters is determined by setting the wheel's location and orientation. The existing methods for the solution of wheel path optimization were time-consuming and cannot handle grinding the extreme-size cutters. In addition, the current model ignored the definition of various constraints in machining, which would strongly affect the machining accuracy and calculation stability.

In the present work, a novel projection model for flute-grinding operations was developed to generate the grinding wheels' configuration. Based on the projection model, the wheel's location was re-formulated with the projection parameters, which simplified the following calculation of machined flute parameters. To minimize the flute-grinding errors regarding the wheel configuration, the projection model was used to generate the proper initial points and was integrated with the GA and PSO as a heuristic regulation. In the numerical simulation, the improved GA and PSO are more accurate, efficient, and robust, with a wide range of applications for various flute sizes. It is noted that the proposed flute-grinding algorithm was verified with a simulation-based method. For the actual grinding, a great deal of topics, such as the dynamics of the grinding machine, the material of the grinding wheel and work-piece, the post-processing, the grinding speed, etc., should be considered in the future experiments.

**Author Contributions:** Conceptualization, Y.F., L.W. and J.Y.; formal analysis, Y.F., L.W. and J.Y.; funding acquisition, L.W.; Methodology, Y.F., and L.W.; supervision, L.W. and J.L.; Validation, Y.F. and L.W.; writing—original draft, Y.F., L.W. and J.Y.; writing—review and editing, Y.F., L.W. and J.Y. All authors have read and agreed to the published version of the manuscript.

**Funding:** This work was partially supported by the Funds of the Key Research and Development Plan of Shandong Province (2019GSF108005), the Shandong Provincial Natural Science Foundation, China (ZR2017BEE018) and China Postdoctoral Science Foundation (2016M592182).

**Acknowledgments:** Our deepest gratitude goes to the editors and the anonymous reviewers for their careful work and thoughtful suggestions that have helped improve this paper substantially.

**Conflicts of Interest:** The authors declare no conflict of interest.

#### **Nomenclature**


#### **Appendix A. Representation of the Wheel's Location in the Projection Model**

**Figure A1.** Flute-grinding projected in the cross-section: (**a**) the projection model; (**b**) normal flute; (**c**) interference flute.

In the projection model, the wheel edge can be represented as:

$$r\_{\ell} = \left[ \begin{array}{c} d\mathbf{x} + \boldsymbol{R} \cdot \cos\theta \cdot \cos\theta\\ d\boldsymbol{y} + \boldsymbol{R} \cdot \sin\theta \end{array} \right] \tag{A1}$$

The wheel edge is tangent with the core at the point Pc, which satisfies the following condition:

$$\begin{cases} \begin{array}{c} r\_{\mathcal{E}} = r\_{\mathcal{E}} \\ r\_{\mathcal{E}} \cdot r'\_{\mathcal{E}} = 0 \end{array} \end{cases} \tag{A2}$$

where *rc* = 0 *rc*<sup>0</sup> · cosθ*<sup>c</sup> rc*<sup>0</sup> · sinθ*<sup>c</sup>* 1 and *r*- *e* is the derivative of *re*.

Solving Equation (A2), we get:

$$
\begin{bmatrix}
\begin{bmatrix}
d\mathbf{x} \\
dy
\end{bmatrix} = \begin{bmatrix}
r\_{c0} \cdot \cos\theta\_{\ell} - \mathbf{R} \cdot \cos\theta \cdot \cos\theta\_{\ell} \\
r\_{c0} \cdot \sin\theta\_{\ell} - \mathbf{R} \cdot \sin\theta\_{\ell}
\end{bmatrix}'
\end{bmatrix} \tag{A3}
$$

where <sup>θ</sup>*<sup>e</sup>* <sup>=</sup> arctantanθ*<sup>c</sup>* cosβ .

In summary, the wheel's location [*dx dy*] can be expressed regarding the parameter θc. In addition, two key points in PS and P- <sup>S</sup> in the projection mode were deduced in the following:

$$\mathbf{P\_S} = \begin{bmatrix} d\mathbf{x} + \mathbf{R} \cdot \cos \theta \cdot \cos \theta\_2 \\ dy + \mathbf{R} \cdot \sin \theta\_2 \end{bmatrix} \tag{A4}$$

$$\mathbf{P'}\_S = \begin{bmatrix} d\mathbf{x} + \mathbf{R} \cdot \cos\theta \cdot \cos\theta\_2 \\ dy + \mathbf{R} \cdot \sin\theta\_2 \end{bmatrix} \tag{A5}$$

The open angle between PS and P- <sup>S</sup> can be represented as: <sup>|</sup>OTPS<sup>|</sup> <sup>=</sup> OTP- S <sup>=</sup> *rT*.

#### **Appendix B. The Geometrical Condition for Interference-Free**

Improper wheel setting would result in the interference in the flute-grinding operations. As shown in Figure A, the interference is generally caused by the wheel edge grinding in the rake face. Geometrically, the interference would happen while the point P- <sup>S</sup> crosses PS in the counterclockwise direction. To simplify this problem, the angle θ*ss* is introduced in Figure Ab and c, which is defined as follows:

$$
\Theta\_{ss} \begin{cases}
> 0 & \text{No interference} \\
= 0 & \text{Critical} \\
< 0 & \text{Interference}
\end{cases}
\tag{A6}
$$

In the flute-grinding operations, the angle θ*ss* can be obtained by mapping the angle θ*s* with a phase difference in the projection model: θss = θ*<sup>s</sup>* − ΔΩ.

As mentioned, in the flute-grinding process, the tool-stock rotates with speed ω, while the wheel translates in speed *v* along the **ZT** direction. Therefore, the points PS and P- <sup>S</sup> would be located in the cross-section with a phase difference, which can be calculated by the following equation:

$$
\Delta\Omega = \frac{f \cdot \sin\theta \cdot (\cos\theta\_2 - \cos\theta\_1)}{\upsilon} \cdot \omega. \tag{A7}
$$

Therefore, to avoid interference, the following constraint can be got for the open-angle θ*s* in the projection mode:

$$\theta\_k \ge \frac{f \cdot \sin \theta \cdot (\cos \theta\_2 - \cos \theta\_1)}{\upsilon} \cdot \omega. \tag{A8}$$

#### **References**


© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
