Optimal grids for five-axis machining

https://doi.org/10.1016/j.matcom.2010.05.004Get rights and content

Abstract

This paper presents a new grid generation method for tool path planning for five-axis machining based on minimization of the kinematics error. First, the procedure constructs a space-filling curve so that the scallops between the resulting tracks of the tool do not exceed a prescribed tolerance. At the second stage (which is the subject of this paper) a one-dimensional grid along the space-filling curve is generated using direct minimization of the kinematics error. A closed form representation of the kinematics error as a function of locations cutter contact points is derived from the inverse kinematics transformations associated with a particular five-axis machine and obtained through automatic symbolic calculations. The grid of cutter location points is generated so that it minimizes the kinematics error. Numerical and cutting experiments demonstrate that the proposed procedure outperforms distribution of points based on the equi-arc-length principle. Finally, we show that our optimization routine requires less points than that based on sequential point insertion and numerical evaluation of the cost function, such as bisection.

Introduction

Milling machines (Fig. 1, Fig. 2) are programmable mechanisms for cutting complex industrial parts. The machines are designed in such a way that the cutting tool (cutter) is capable of approaching the desired surface at a given point with a required orientation.

The machine consists of several moving parts designed to establish the required coordinates and orientations of the tool during the cutting process. The movements of the machine parts are guided by a controller which is fed with the so-called NC program or G-code comprising commands carrying three spatial coordinates of the tool tip and a pair of rotation angles needed to rotate the machine parts to establish the orientation of the tool. The tool path Π={Π0,Π1,...,Πm} is a sequence of positions Πp={Mp,Ip}, where Mp={xp,yp,zp} are the Cartesian coordinates of the tip of the tool in the machine coordinate system (cutter location points) and Ip={Ix,p,Iy,p,Iz,p} the orientation vector.

The rotation angles p={ap,bp} are represented in terms of the components of Ip given a configuration of the machine. Such machining is called Computer Numerically Controlled (CNC) machining. The configuration of the five-axis machine is characterized by (see Fig. 3)

  • two rotation matrices A,B corresponding to the two rotary axes;

  • two translations associated with the position of the workpiece and the design of the five-axis machine T23,T24;

  • the length of the tool L. Since we consider the tool aligned with the Z4-axis (Fig. 3), L is treated as an additional translation T4 (T4 is either (0,0,L) or (0,0,L) depending on the direction of the tool tip in the spindle coordinate system).

Furthermore, let S(u,v)=(x(u,v),y(u,v),z(u,v)) be the required surface. The tool path optimization problem is formulated as follows [25]:minimize(C)Π,where the criterion vector C includes one or several estimates of the difference between the required and the actual surface and minimization applies to each component of C independently.

The vector may also include the length of the path, the negative of the machining strip (strip maximization), the machining time, etc., see, for instance, [19], [21], [28]. Besides, the optimization is often subjected to constraints, the most important of which are the scallop height constraints, the local and the global accessibility constraints [5], [13], [20], [31]. A popular tool path minimization is performed with regard to the length of the tool path L as follows:minimize(L)Π,subject toh<hmax,ε<εmax,where h is the scallop height, measured between each pair of the adjusted tracks, and hmax is the maximum allowed scallop height, ɛ is a difference between the actual and the prescribed trajectory and ɛmax the prescribed tolerance.

The two constraints are important. As a matter of fact they are nothing else than a numerical approximation of a general constraint that the machined surface does not deviate from the actual surface by more than Tmax=max(hmax,εmax). Although, Tmax characterizes only an approximation to the actual cut. Suffice to say that hmax,εmax are measured at different points. Still the actual milling error might exceed Tmax, however, hmax and ɛmax are the error estimates which should be considered first. Note that, in five-axis machining the shortest spatial length L does not necessarily mean the shortest time when the tool path has many turns. In this case the definition of the distance should include the angular path as well (see a relevant discussion in [6]). In the meantime, this paper is focused on the second constrain whereas the scallop optimization is performed by an adaptive space-filling curve technology proposed in [3], [4]. However, the space-filling curve part of the algorithm is replaceable. As a matter of fact, the proposed minimization applies to an arbitrary set of (possibly disjointed) curves representing the tool path.

This paper presents new techniques to minimize ɛ by employing a one-dimensional adaptive grid. A one-dimensional grid is a structured set of points distributed along the desired curve in such a way that a certain optimization criterion is minimized or at least reduced. The grid can be treated as a discrete analogy of a coordinate transformation from the physical coordinate (for instance, the curve length) into so-called computational coordinates, where the grid points are equally spaced (see a variety definitions in [30]). In this sense the proposed method is similar to conventional grid generation. However, as opposed to the majority of grid generation problems occurring in mechanical engineering when only a numerical evaluation of the error is possible, our technique is based on a closed form representation of the kinematics error.

It should be noted that the preceding papers on grid generation for five-axis machining use either a numerically evaluated error or an assumption that the error is a monotone decreasing function of a certain parameter, such as the surface curvature [9], [24], [26]. A more general approach originally proposed in [7], [23] includes the kinematics error as a weighting function for grid generation whereas excessive scallops are treated by a penalty function. However, these techniques have several major drawbacks. Chief among them is slow convergence for complex constraints and possible divergence when the kinematics error is evaluated using iterations “grid–error–grid” (a process when, first, a grid adapted to the error is constructed, then a new error is evaluated on that grid and a new grid is generated again). Besides, the approach requires an equal number of the cutter contact points along each track of the tool which is often impractical for the CNC machining.

Adaptive space-filling curves composed of zigzag patches based on [12] have been proposed by Anotaipaiboon and Makhanov [4]. A rectangular grid in the parametric space created by overlaying two zigzag tool paths is constructed so that the step between two adjusted machining strips overlap and the scallops are within the allowable margins. The evaluation step requires the surface curvature, the cutter shape and size, and the maximum allowable scallop height. The output of the procedure is a minimal tool inclination angle and a size of the maximum possible machining strip which defines offsets between parallel lines of the zigzag. As opposed to the tool paths based on the classic Hilbert curves [11], [14], [15], [18] the adaptive space-filling curve multiplies only where necessary and does not involve many sharp turns.

However, the grid is not designed to minimize or to reduce the kinematics error along the tracks as in [24]. The error is ignored and the grid is generated with regard to the scallop height constraints. Furthermore, space-filling curve generation step treats the cells of the grid as nodes and connects them by arcs. Finally, the kinematics error is reduced in a post-processing step by bisection or a Newton–Raphson technique, inserting additional points along the resulting space-filling curve.

Curvilinear space-filling curves have been proposed in [6]. A curvilinear grid is adapted with the use of the harmonic functional [8], [10], [16], [17] using the scallop height as the control function. If the scallop is large the grid moves into this area decreasing the scallops, so that the resulting tool path satisfies the scallop height constraints. The algorithm automatically evaluates the number of the required grid lines and the resulting grid is converted into a curvilinear space-filling curve. However, [6] does not present a method to place additional cutter location (CL) points along the resulting space-filling curves.

This paper presents and analyzes a grid generation method to assign the CL points along the resulting space-filling or zigzag curve. The method provides a considerably better rate of the decrease of the kinematics error with the increase of the number of the CL points as compared with the equi-parametric or equi-arc-length distribution of the points along the desired curve. The comparison is performed in terms of the L2 and the Hausdorff distance.

In CNC programming it is often necessary to differentiate between the cutter location points (the tip of the tool) and the cutter contact points (CC points), which define a point of the actual contact between the tool and the desired surface. This is in particular important for the case of the so-called flat-end cutter. In this case, in order to ensure against the curvature interference, cutting is performed by the edge of the tool, whereas the CL point is often in the air. Our proposed procedure applies to the case of CC points as well. A closed form representation of the error is obtained from the inverse kinematics transformations corresponding to a particular five-axis machine. A code for automatic symbolic calculation to evaluate the error and its derivatives explicitly, given arbitrary machine kinematics is presented.

The advantage of the proposed techniques comes from representing the error as a function of coordinates of the inserted points along a desired curve on the surface. Theoretically the procedure applies to the entire surface, however, this could be computationally intractable task since the tool path may require tens or even hundreds of thousands of points.

Therefore, we define “control points” on the tool path and generate sub grids using a direct evaluation of the kinematics error along each segment. The control points can be constructed by a simple approach, for instance, by using turning points.

Unfortunately, the resulting equations are long and inconvenient to deal with. For example, the first derivative of the kinematics error may occupy about 100 text pages. Therefore, the proposed symbolic evaluation of the error followed by generation of the corresponding C or MATLAB functions using Maple-12 is indispensable.

The procedures for symbolic evaluation are general and apply to any configuration of the five-axis machine and to an arbitrary surface. The codes generated by the symbolic engine of Maple 10 are used for direct constraint minimization of the error, thus, generating an optimal or at least suboptimal grid.

Our numerical and cutting experiments performed on a virtual and on a real machine demonstrate that the proposed procedure outperforms equi-parametric and equi-arc-length methods.

Section snippets

Kinematics errors of the five-axis milling machine

Let KK{parameters}[arguments]=K{}[M] be a kinematics transformation from the machine coordinates to the workpiece coordinates. For simplicity we denote the transformations by K[M] (when possible) keeping in mind the dependence on .

Let K1[W] be an inverse transformation such that W,M,, K1[K[M]]=M and K[K1[W]]=W. Let Πp(Wp,p),Πp+1(Wp+1,p+1) be two successive coordinates of the tool path in 5. Wp and Wp+1 denote two successive spatial positions of the tool path, p and p+1 the

Kinematics errors and measures

The tool path is defined by a sequence of cutter contact points and orientation vectors. The positions of translation and rotary axes are linearly interpolated. Due to the prescribed transformations, the machine tool tip follows curves which represent a continuous piecewise-smooth non-linear 3D interpolation of the desired trajectories. The measure of a deviation of the interpolating function from the actual trajectory is called the kinematics error. A number of additional interpolation points

Optimization

Consider minimization of kinematics error (7):minimize(ε)Π,subject toΠΠ,where Π is a set of curves belonging to the surface and Π is a set of CC points. The curves pass through a certain number of fixed points such as the turning points at the boundary of the zigzag pattern.

The optimization procedure inserts a certain number of CC points between each pair of the fixed points in such a way that the kinematics error is minimized. Let (up,vp) and (up+1,vp+1) be parametric coordinates

Numerical examples and cutting experiments

In this section the proposed optimization techniques are compared with equi-parametric and equi-arc-length grids for two convex–concave surfaces. The ball-nose and the flat-end tool have been examined for the zigzag and the space-filling tool paths. The numerical experiments verified by virtual and real cutting demonstrate that the proposed procedure consistently outperforms the equi-parametric and equi-arc-length techniques. In order to show the advantage of our approach we also compare our

Conclusions

A new method for generation of optimal grids of cutter location points for five-axis machining has been presented and verified. The method is based on a direct evaluation of the kinematics error by the symbolic engine of Maple-12 and build-in minimization procedures of MATLAB. The symbolic calculations generate an explicit formula for the error and its derivatives (if necessary). The evaluations are performed automatically and only once for a particular five-axis machine. The results are

Acknowledgement

We acknowledge a sponsorship of Thailand Research Fund, grant number MRG5380227.

References (31)

Cited by (1)

View full text