Abstract
Method for simulating chatter-free milled surface topography includes: performing dynamics modeling on milling system and building delay differential equation with multiple delays to represent dynamic model; constructing state transition matrix between two adjacent cutting tool rotation periods by extending GRK method; predicting stable milling parameter zones based on Floquet theory; calculating vibration displacements on discretized time nodes during one cutting tool rotation period by means of fixed mapping point theorem; constructing motion trajectories of cutting tool edges in normal and feed directions with regard to milled surface of workpiece; predicting surface topography of workpiece by using spline interpolation to densify motion trajectories of cutting tool edges that participate in generating final surface of workpiece; calculating surface location error of milled surface based on motion trajectories of cutting tool edges in normal direction with regard to milled surface of workpiece; calculating surface roughness based on the simulated surface topography of workpiece.
Claims
1. A method for simulating chatter-free milled surface topography, comprising steps of: step 1: performing dynamics modeling on milling system and building a delay differential equation with multiple delays to represent dynamic model; step 2: constructing state transition matrix between two adjacent cutting tool rotation periods by extending Generalized Runge-Kutta method; step 3: predicting stable milling parameter zones based on Floquet theory; step 4: calculating vibration displacements on discretized time nodes during one cutting tool rotation period by means of fixed mapping point theorem; step 5: constructing motion trajectories of cutting tool edges in normal and feed directions with regard to milled surface of workpiece; step 6: predicting surface topography of workpiece by using spline interpolation to densify motion trajectories of cutting tool edges that participate in generating final surface of workpiece; step 7: calculating surface location error of milled surface based on motion trajectories of cutting tool edges in normal direction with regard to milled surface of workpiece; step 8: calculating surface roughness based on the simulated surface topography of workpiece.
2. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 1 comprises sub-steps of: step 1.1: considering flexibility of both cutting tool and workpiece, variance of pitch angles and helix angles of cutting tool, and teeth runout, performing dynamics modeling on milling system and building a delay differential equation with multiple delays to represent the dynamic model in physical space: where M C and K are mass, damping and stiffness matrices, respectively; {umlaut over (q)}(t), {dot over (q)}(t) and q(t) are acceleration, velocity and displacement vectors at time t, respectively; K.sub.c(t,j,k) is directional coefficient matrix for Tooth k at j-th axial slice at time t; F.sub.0(t,j,k) is cutting force vector for Tooth k at j-th axial slice at time t, which is independent of chip regeneration; Σ.sub.p=k.sup.kτ(j,p) is time delay with regard to cutting element (j,k) is mathematical summation operator, p is a variable for summation, and is tooth serial number to start delay calculation; N is number of teeth; and N.sub.a is number of axial discretization of tool; step 1.2: performing modal coordinate transformation on the dynamic model in step 1.1, which can be transformed from physical space into modal space; the modal coordinate transformation equation is:
q(t)=PΓ(t) where P is mode shape matrix, and Γ(t) is modal displacement vector at time t; dynamics model in modal space which is represented with delay differential equation with multiple delays turns out to be: where M.sub.Γ, C.sub.Γ and K.sub.Γ are modal mass, modal damping and modal stiffness matrices, respectively; {umlaut over (Γ)}(t), {dot over (Γ)}(t) and Γ(t) are modal acceleration, modal velocity and modal displacement vectors, respectively; for milling system with flexible cutting tool and flexible workpiece, the dynamic model becomes: where M.sub.Γ;T, C.sub.Γ;T and K.sub.Γ;T are modal mass, modal damping and modal stiffness matrices of cutting tool; M.sub.Γ;W, C.sub.Γ;W and K.sub.Γ;W are modal mass; modal damping and modal stiffness matrices of workpiece; {umlaut over (Γ)}.sub.T(t), {dot over (Γ)}.sub.T (t) and Γ.sub.T(t) are modal acceleration, modal velocity and modal displacement vectors of cutting tool; {umlaut over (Γ)}.sub.W(t), Γ.sub.W(t) and Γ.sub.W(t) are modal acceleration, modal velocity and modal displacement vectors of workpiece; P.sub.T, and P.sub.W are mode shape matrices of cutting tool and workpiece, respectively; P.sub.T.sup.T and P.sub.W.sup.T are transposed matrices P.sub.T and P.sub.W, respectively; for milling system with flexible cutting tool and rigid workpiece, the dynamic model becomes: for milling system with rigid cutting tool and flexible workpiece, the dynamic model becomes:
3. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 2 comprises sub-steps of: step 2.1: performing state space transformation on the dynamic model in modal space by introducing state variable vector x(t)=[(Γ(t)).sup.T,({dot over (Γ)}(t)).sup.T].sup.T, and delay differential equation with multiple delays in state space becomes: where x(t) denotes state variable vector, {dot over (x)}(t) denotes first derivative of x(t) with regard to time t, and I is unit matrix; step 2.2: dividing one rotation period of cutting tool T into 2i.sub.m+2 equal intervals with a series of discrete nodes {t.sub.0,t.sub.1, . . . t.sub.2i.sub.m.sub.+2}; analytical expression of dynamic responses at interval [t.sub.i,t] with regard to the delay differential equation with multiple delays in step 2.1 is: where ξ is integration variable; for brevity, define x.sub.i:=x(t.sub.i), E(t,t.sub.i):=e.sup.A(t−t.sup.i.sup.)x(t.sub.i), H.sub.j,k(t,ξ,x(ξ)):=e.sup.A(t−ξ)B(ξ,j,k)[x(ξ)−x(ξ−τ(j,k,p))] and J.sub.j,k(t,ξ):=e.sup.A(t+ξ)D(ξ,j,k); on sub-interval [t.sub.2i,t.sub.2i+2], x(t) is approximated using Simpson's rule: on sub-interval [t.sub.2i,t.sub.2i+1], x(i) is approximated using fourth-order Runge-Kutta algorithm: where state variable vector at middle points t.sub.2i+1/2 is approximated with Lagrange formula:
x.sub.2i+1/2=⅜x.sub.2i+¾x.sub.2i−1−⅛x.sub.2i+2 re-organizing the analytical expression of dynamic responses on sub-interval [t.sub.2i,t.sub.2i+2] into: and h is the discretization step; re-organizing the analytical expression of dynamic responses on sub-interval [t.sub.2i,t.sub.2i+2] into: step 2.3: based on the formulae in step 2.2, establishing discrete mapping relationship between two adjacent rotation periods of cutting tool [−T,0] and [0,T]:
4. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 3 is: constructing transition matrix Φ of the milling system: where |P.sub.1−P.sub.2| denotes determinant of matrix (P.sub.1−P.sub.2); † denotes Moore-Penrose pseudoinverse of matrix (P.sub.1−P.sub.2); based on Floquet theory, stability of milling system depends on eigenvalue of Φ:it is stable if all modules of eigenvalues of Φ are less than 1; it is unstable otherwise.
5. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 4 is: based on fixed mapping point theorem, the state variable vector x(t) satisfies x(t.sub.i)=x(t.sub.i−T) for chatter-free cutting conditions; therefore, it has y.sub.[0,T]=y.sub.−T,0; calculating state variables on all discrete points by: where y* consists of modal displacement vector Γ(t.sub.i) and modal velocity vector {dot over (Γ)}(t.sub.i) at all discrete time nodes i=0,1, . . . ,2i.sub.m+2 during one rotation period of cutting tool.
6. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 5 comprises sub-steps of: step 5.1: transforming modal displacements into physical space, and calculating relative vibration displacements q(t.sub.i) between cutting tool and workpiece:
q(t.sub.i)=q.sub.T(t.sub.i)−q.sub.W(t.sub.i)=P.sub.TΓ.sub.T(t.sub.i)−P.sub.WΓ.sub.W(t.sub.i) where q.sub.T (t.sub.i) and q.sub.W(t.sub.i) are vibration displacements of cutting tool and workpiece, respectively; step 5.2: extracting vibration displacements in direction normal to milled surface of workpiece (defined as {right arrow over (Oy)} direction) from q(t.sub.i), which constructs a new vector Q*.sub.y:
Q.sub.y*={[q.sub.y(t.sub.1)]T,[q.sub.y(t.sub.2)].sup.T, . . . ,[q.sub.x(t.sub.2i.sub.m.sub.+2)]T} extracting vibration displacements in feed direction (defined as {right arrow over (Ox)} direction), which constructs a new vector Q.sub.y*:
Q.sub.x*={[q.sub.x(t.sub.1)].sup.T,[q.sub.x(t.sub.2)].sup.T, . . . ,[q.sub.x(t.sub.2i.sub.m.sub.+2)]T} step 53: based on kinematic synthesis of relative feed movement between cutting tool and workpiece, rotation of cutting tool and relative vibrations between cutting tool and workpiece, calculating motion trajectories in {right arrow over (Oy)} direction and {right arrow over (Ox)} direction for cutting element (j,k), respectively: where f is relative feed rate between cutting tool and workpiece in mm/min; φ.sub.fy is angle between feed direction of cutting tool and normal direction of workpiece; R(j,k) is actual cutting radius of cutting element (j,k); φ.sub.ref is reference angle used in the Generalized Runge-Kutta method; ϕ(j,k) is pitch angle between Tooth k and Tooth 1 for j-th discrete axial slice; β.sub.k is helix angle with regard to Tooth k; z.sub.f is axial height of j-th discrete axial slice; R is geometric radius of cutting tool; Ω is spindle rotation speed; Q.sub.y*(j,i) and Q.sub.x*(j,i) are vibration displacements of cutting element (j,k) in {right arrow over (Oy)} and {right arrow over (Ox)} directions, respectively.
7. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 6 comprises sub-steps of: step 6.1: selecting part of motion trajectories of cutting tool that are near milled surface of workpiece based on following equation, which construct motion trajectory points to be densified with interpolation, i.e., (Θ.sub.x_trim*(j,k,i), Θ.sub.y_trim*(j,k,i)):
Θ.sub.y*(j,k,i)≥max{Θ.sub.y*(j,k,i)}−αR, down-milling
Θ.sub.y*(j,k,i)≤min{(Θ.sub.y*(j,k,i)}+αR, up-milling where α is a coefficient to adjust selecting range; step 6.2: determining lower and upper limits of the selected trajectory points in {right arrow over (Ox)} direction, i.e., x.sub.min=min{Θ.sub.x_trim*(j,k,i)} and x.sub.max=max{Θ.sub.x_trim*(j,k,i)}; discretize interval [x.sub.min,x.sub.max] equally with a step δx to obtain x coordinate set of interpolation points {x.sub.min, x.sub.min+δx,x.sub.min+2.Math.δx, . . . ,x.sub.max}, where number of points is denoted by N.sub.s; step 6.3: taking the selected points (Θ.sub.x_trim*(j,k,i), Θ.sub.y_trim*(j,k,i)) in step 6.1 as known points, using spline interpolation algorithm to determine y coordinates of interpolation points with regard to x coordinates {x.sub.min, x.sub.min+δx,x.sub.min+2.Math.δx, . . . ,x.sub.max}, which results in densified motion trajectories of cutting tool edges during one rotation period T of cutting tool, i.e., (x.sub.s(l), y.sub.s(l)),l=1, 2 . . . N.sub.s; step 6.4: based on periodicity of chatter-free milling dynamic responses, i.e., x.sub.s(l) and x.sub.s(l)+n.sub.revT share same y coordinate y.sub.s(l), obtaining densified motion trajectory points of cutting tool during n.sub.rev rotation periods of cutting tool, i.e., (x.sub.s_n(l), y.sub.s_n(l)), l=1, 2, . . . N.sub.s_n, where N.sub.s_n, is number of interpolation points on n.sub.rev rotation periods of cutting tool, and n.sub.rev≥4; step 6.5: selecting densified motion trajectory points of cutting tool edges on middle periods that satisfy x.sub.min+T≤x.sub.s_n(l)≤n.sub.rev.Math.x.sub.max−T to construct a new densified point set (x.sub.s_n_trim(l), y.sub.s_n_trim(l), l=1, 2, . . . N.sub.s_n_trim, where N.sub.s_n_trim is number of trimmed interpolation points; step 6.6: sorting the selected set (x.sub.s_n_trim(l), y.sub.s_n_trim(l)), in order of axial height to construct N.sub.a sub-sets of densified points, i.e., (x.sub.s_n_trim(j,l), y.sub.s_n_trim(j,l)), j=1,2, . . . ,N.sub.a; step 6.7: at each axial height, comparing values of v coordinates for all teeth that have same x coordinate; based on following equation, selecting densified points that are nearest to milled surface of workpiece to construct final surface topography points of workpiece (x.sub.surf(j,l), y.sub.surf (j,l)), l=1, 2, . . . N.sub.s_n_trim:
8. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 7 is: calculating surface location error (SLE) based on motion trajectories Θ.sub.y*(i,j,k) in normal direction of workpiece; surface location error SLE(j,k) with regard to cutting element (j,k) is: surface location error with regard to axial height z.sub.j is: where positive value mean overcut, and negative value mean undercut.
9. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 8 is: based on points (x.sub.surf(j,l), y.sub.surf(j,l), y.sub.surf(j,l)) that participate in generating surface topography of workpiece, calculating surface roughness:
Description
BRIEF DESCRIPTION OF DRAWINGS
[0058] Other features, objects and advantages of the present invention will become apparent upon reading following detailed description of unrestricted examples, while referring to attached drawings in which:
[0059] FIGS. 1(a) to 1(d) are a flow diagram representing simulation procedure of milled surface topography of workpiece, where FIG. 1(a) represents motion trajectories of cutting tool edges, FIG. 1(b) represents densified motion trajectories of cutting tool using spline interpolation for each tooth during one rotation period of cutting tool, FIG. 1(c) represents densified motion trajectories of cutting tool during several rotation periods of cutting tool, and FIG. 1(d) represents the final surface topography of workpiece, which is determined by comparing motion trajectories of cutting tool edges for different teeth.
[0060] FIGS. 2(a) to 2(b) are comparison between experimental surface topography and simulated results; FIG. 2(a) is microphotograph of milled surface topography, and FIG. 2(b) is simulated milled surface topography.
[0061] FIG. 3 is comparison between simulated and measured surface location errors along tool axial height.
[0062] FIG. 4 is simulated surface roughness value along tool axial height.
EXAMPLES
[0063] The present invention will be described in detail below in conjunction with specific embodiments. The following examples will help those skilled in the art to further understand the present invention, but do not limit the present invention in any way. It should be pointed out that for those of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present invention. These all belong to the protection scope of the present invention.
[0064] Refer to FIG. 1(a), FIG. 1(b), FIG. 1(c), FIG. 1(d), FIG. 2(a) and FIG. 2(b).
[0065] This example provides a method for simulating chatter-free milled surface topography, comprising steps of:
[0066] Step 1 comprises sub-steps of:
[0067] step 1.1: considering flexibility of both cutting tool and workpiece, variance of pitch angles and helix angles of cutting tool, and teeth runout, perform dynamics modeling on milling system and build a delay differential equation with multiple delays to represent the dynamic model in physical space:
[00021]
where M, C and K are mass, damping and stiffness matrices, respectively; {umlaut over (q)}(t) {dot over (q)}(t) and q(t) are acceleration, velocity and displacement vectors at time t, respectively; K.sub.c(t,j,k) is directional coefficient matrix for Tooth k at j-th axial slice at time t; F.sub.0(t,j,k) is cutting force vector for Tooth k at j-th axial slice at time t, which is independent of chip regeneration; Σ.sub.p=k.sub.v.sup.kτ(j,p) is time delay with regard to cutting element (j,k), Σ is mathematical summation operator, p is a variable for summation, and k.sub.v is tooth serial number to start delay calculation; N is number of teeth; and N.sub.a is number of axial discretization of tool;
[0068] step 1.2: perform modal coordinate transformation on the dynamic model in step 1.1, which can be transformed from physical space into modal space; the modal coordinate transformation equation is:
q(t)=PΓ(t) (2)
where P is the mode shape matrix, and Γ(t) is the modal displacement at time t;
[0069] dynamics model in modal space which is represented with delay differential equation with multiple delays turns out to be:
[00022]
[0070] where M.sub.Γ, C.sub.Γ and K.sub.Γ are modal mass, modal damping and modal stiffness matrices, respectively; {umlaut over (Γ)}(t), {dot over (Γ)}(t) and Γ(t) are modal acceleration, modal velocity and modal displacement vectors, respectively;
[0071] for milling system with flexible cutting tool and flexible workpiece, the dynamic model becomes:
[00023]
where M.sub.Γ,T, C.sub.Γ,T and K.sub.Γ,T are modal mass, modal damping and modal stiffness matrices of cutting tool; M.sub.Γ;W, C.sub.Γ;W and K.sub.Γ;W are modal mass, modal damping and modal stiffness matrices of workpiece; {umlaut over (Γ)}.sub.T(t), {dot over (Γ)}.sub.T(t) and Γ.sub.T(t) are modal acceleration, modal velocity and modal displacement vectors of cutting tool; {umlaut over (Γ)}.sub.W(t), {dot over (Γ)}.sub.W(t) and Γ.sub.W(t) are modal acceleration, modal velocity and modal displacement vectors of workpiece; P.sub.T and P.sub.W are mode shape matrices of cutting tool and workpiece, respectively; P.sub.T.sup.T and P.sub.W.sup.T are transposed matrices of P.sub.T and P.sub.W, respectively;
[0072] for milling system with flexible cutting tool and rigid workpiece, the dynamic model becomes:
[00024]
[0073] for milling system with rigid cutting tool and flexible workpiece, the dynamic model becomes:
[00025]
[0074] Step 2 comprises sub-steps of:
[0075] step 2.1: perform state space transformation on the dynamic model in modal space by introducing state variable vector x(t)=[(Γ(t)).sup.T, ({dot over (Γ)}(t)).sup.T].sup.T, and delay differential equation with multiple delays in state space becomes:
[00026]
where x(t) denotes state variable vector, {dot over (x)}(t) denotes first derivative of x(t) with regard to time t,
[00027]
and I is unit matrix;
[0076] step 2.2: divide one rotation period of cutting tool T into 2i.sub.m+2 equal intervals with a series of discrete nodes {t.sub.0,t.sub.1, . . . ,t.sub.2i.sub.m.sub.+2}; analytical expression of dynamic responses at interval [t.sub.i,t] with regard to the delay differential equation with multiple delays in step 2.1 is:
[00028]
[0077] for brevity, define x.sub.i:=x(t.sub.i), E(t,t.sub.i):=e.sup.A(t−t.sup.i.sup.)x(t.sub.i), H.sub.j,k(t,ξ,x(ξ)):=e.sup.A(t−ξ)B(ξ, j,k)[x(ξ)−x(ξ−τ(j,k, p))] and J.sub.j,k(t,ξ):=e.sup.A(t−ξ)D(ξ,j, j,k);
[0078] on sub-interval [t.sub.2i,t.sub.2i+2], x(t) is approximated using Simpson's rule:
[00029]
[0079] on sub-interval [t.sub.2i,t.sub.2i+1], x(t) is approximated using fourth-order Runge-Kutta algorithm:
[00030]
[0080] where state variable vector at middle points t.sub.2i+1/2 is approximated with Lagrange formula:
x.sub.2i+1/2=⅜x.sub.2i−¾x.sub.2i−1+⅛x.sub.2i+2 (11)
[0081] the analytical expression of dynamic responses on sub-interval [t.sub.2i,t.sub.2i+1] is re-organized into:
[00031]
and h is discretization step;
[0082] the analytical expression of dynamic responses on sub-interval [t.sub.2i,t.sub.2i+2] is re-organized into:
[00032]
[0083] step 2.3: based on the formulae in step 2.2, discrete mapping relationship between two adjacent rotation periods of cutting tool [−T,0] and [0,T] is established:
P.sub.1y.sub.[0,T]=Qy.sub.[−T,0]+P.sub.2y.sub.[0,T]+z.sub.[0,T] (14)
where
[00033]
[0084] Step 3 is:
[0085] construct transition matrix Φ of the milling system:
[00034]
where |P.sub.1−P.sub.2| denotes determinant of matrix (P.sub.1−P.sub.2); † denotes Moore-Penrose pseudoinverse of matrix (P.sub.1−P.sub.2); based on Floquet theory, stability of milling system depends on eigenvalue of Φ: it is stable if all modules of eigenvalues of Φ are less than 1; it is unstable otherwise.
[0086] Step 4 is:
[0087] based on fixed mapping point theorem, the state variable vector x(t) satisfies x(t.sub.i)=x(t.sub.i−T) for chatter-free cutting conditions; therefore, it has y.sub.[0,T]=y.sub.[−T,0]; state variables on all discrete points are calculated by:
[00035]
where y* consists of modal displacement vector Γ(t.sub.i) and modal velocity vector {dot over (Γ)}(t.sub.i) at all discrete time nodes i=0,1, . . . ,2i.sub.m30 2 during one rotation period of cutting tool.
[0088] Step 5 comprises sub-steps of:
[0089] step 5.1: transform modal displacements into physical space, and calculate relative vibration displacements q(t.sub.i) between cutting tool and workpiece:
q(t.sub.i)=q.sub.T(t.sub.i)−q.sub.W(t.sub.i)=P.sub.TΓ.sub.T(t.sub.i)−P.sub.WΓ.sub.W(t.sub.i) (17)
where q.sub.T(t.sub.i) and q.sub.W(t.sub.i) are vibration displacements of cutting tool and workpiece, respectively;
[0090] step 5.2: extract vibration displacements in direction normal to milled surface of workpiece (defined as {right arrow over (Oy)} direction) from q(t.sub.i), which constructs a new vector Q.sub.y*:
Q.sub.y*={[q.sub.y(t.sub.1)].sup.T,[q.sub.y(t.sub.2)].sup.T, . . . ,[q.sub.y(t.sub.2i.sub.m.sub.+2)].sup.T} (18)
[0091] extract vibration displacements in feed direction (defined as {right arrow over (Ox)} direction), which constructs a new vector Q.sub.x*:
Q.sub.x*={[q.sub.x(t.sub.1)].sup.T,[q.sub.x(t.sub.2)].sup.T, . . . ,[q.sub.x(t.sub.2i.sub.m.sub.+2)].sup.T} (19)
[0092] step 5.3: based on kinematic synthesis of relative feed movement between cutting tool and workpiece, rotation of cutting tool and relative vibrations between cutting tool and workpiece, calculate motion trajectories in {right arrow over (Oy)} direction and {right arrow over (Ox)} direction for cutting element (j,k), respectively, as shown in FIG. 1 (a):
[00036]
where f is relative feed rate between cutting tool and workpiece in mm/min; φ.sub.fy is angle between feed direction of cutting tool and normal direction of workpiece; R(j,k) is actual cutting radius of cutting element (j,k); q); φ.sub.ref is reference angle used in the Generalized Runge-Kutta method; ϕ(j,k) is pitch angle between Tooth k and Tooth 1 for j-th discrete axial slice; β.sub.k is helix angle with regard to Tooth k; z.sub.j is axial height of j-th discrete axial slice; R is geometric radius of cutting tool; Ω is spindle rotation speed; Q.sub.y*(j,i) and Q.sub.x*(j,i) are vibration displacements of cutting element (j,k) in {right arrow over (Oy)} and {right arrow over (Ox)} directions, respectively.
[0093] Step 6 comprises sub-steps of:
[0094] step 6.1: select part of motion trajectories of cutting tool that are near milled surface of workpiece based on following equation, which construct motion trajectory points to be densified with interpolation, i.e., (Θ.sub.x_trim*(j,k,i), Θ.sub.y_trim*(j,k,i)):
Θ.sub.y*(j,k,i)≥max{Θ.sub.y*(j,k,i)}−αR, down-milling
Θ.sub.y*(j,k,i)≤min{Θ.sub.y*(j,k,i)}+αR, up-milling
where α is a coefficient to adjust selecting range;
[0095] step 6.2: determine lower and upper limits of the selected trajectory points in {right arrow over (Ox)} direction, i.e., x.sub.min=min {Θ.sub.x_trim*(j,k,i)} and x.sub.max=max {Θ.sub.x_trim*(j,k,i)}; discretize interval [x.sub.min,x.sub.max] equally with a step δx to obtain x coordinate set of interpolation points {x.sub.min,x.sub.min+δx, x.sub.min+2.Math.δx, . . . ,x.sub.max}, where number of points is denoted by N.sub.s;
[0096] step 6.3: taking the selected points (Θ.sub.x_trim*(j,k,i), Θ.sub.y_trim*(j,k,i)) in step 6.1 as known points, use spline interpolation algorithm to determine y coordinates of interpolation points with regard to x coordinates {x.sub.min,x.sub.min+δx,x.sub.min+2.Math.δx, . . . ,x.sub.max}, which results in densified motion trajectories of cutting tool edges during one rotation period T of cutting tool, i.e., (x.sub.s(l), y.sub.s (l)),l=1, 2, . . . N.sub.s, as shown in FIG. 1 (b);
[0097] step 6.4: based on periodicity of chatter-free milling dynamic responses, i.e., x.sub.s(l) and x.sub.s(l)+n.sub.revT share same y coordinate y.sub.s(l), obtain densified motion trajectory points of cutting tool during n.sub.rev rotation periods of cutting tool, i.e., (x.sub.s_n_trim(l), y.sub.s_n_trim(l)), l=1, 2, . . . N.sub.s_n_trim, where N.sub.s_n_trim is number of interpolation points on n.sub.rev rotation periods of cutting tool, and n.sub.rev≥4, as shown in FIG. 1 (c);
[0098] step 6.5: select densified motion trajectory points of cutting tool edges on middle periods that satisfy x.sub.min, +T≤x.sub.s_n(l)≤n.sub.rev.Math.x.sub.max−T to construct a new densified point set (x.sub.s_n_trim(l), y.sub.s_n_trim(l)), l=1, 2, N.sub.s_n_trim, where N.sub.s_n_trim is number of trimmed interpolation points;
[0099] step 6.6: sort the selected set (x.sub.s_n_trim (l), y.sub.s_n_trim(l)) in order of axial height to construct N.sub.a sub-sets of densified points, i.e., (x.sub.s_n_trim(j,l), y.sub.s_n_trim(j,l), j=1, 2, . . . ,N.sub.a;
[0100] step 6.7: at each axial height, compare values of y coordinates for all teeth that have same x coordinate; based on following equation, select densified points that are nearest to milled surface of workpiece to construct final surface topography points of workpiece (x.sub.surf(j,l), y.sub.surf(j,l)), l=1,2, . . . N.sub.s_n_trim, shown in FIG. 1 (d) and FIG. 2 (b):
[00037]
[0101] Step 7 is:
[0102] calculate surface location error (SLE) based on motion trajectories Θ.sub.y*(i,j,k) in normal direction of workpiece; surface location error SLE(j,k) with regard to cutting element (j,k) is:
[00038]
[0103] surface location error with regard to axial height z.sub.j is:
[00039]
where positive value mean overcut, and negative value mean undercut, as shown in FIG. 3.
[0104] Step 8 is:
[0105] based on points (x.sub.surf (j,l), y.sub.surf(j,l)) that participate in generating surface topography of workpiece, surface roughness is calculated by:
[00040]
[0106] An experimental example is presented to further illustrate the invented method. The geometric parameters of cutting tool are: diameter D=12 mm, number of teeth N=4, pitch angles 80°-100°-80°-100°, and helix angles 45°-45°-45°-45°. The cutting parameters are: spindle rotation speed Ω=2500 rpm, radial depth of cut a.sub.r=0.5 mm, axial depth of cut a.sub.p=5 mm, and feed per revolution f.sub.rev=0.2 mm/rev. The system dynamic parameters are: natural frequency f.sub.n=189.1 Hz, damping ratio
=0.0047, and stiffness k=3.01×10.sup.6 N/m. The runout parameters are: offset value ρ=2.5 μm, and orientation angle λ=0.1°.
[0107] With the provided parameters, milled surface topography can be simulated by following the procedures in steps 1˜7, as illustrated in FIG. 2. According to microphotography in FIG. 2(b), the simulated surface topography matches milled surface topography well. Simulated and measured surface location errors are illustrated in FIG. 3, where positive value means overcut and negative value means undercut. According to FIG. 3, the simulated surface location errors locate in the range between −43.5 μm and 32.6 μm. Selecting six points along axial height of cutting tool, measured surface location errors using Coordinate Measurement Machine are −41.6 μm, −29.0 μm, −18.7 μm, −11.1 μm, −6.2 μm and 0.3 μm, which validate the simulated results. As shown in FIG. 4, the predicted surface roughness locates in the range between 0.0679 μm and 0.2449 μm. Selecting four points along axial height of cutting tool, measured surface roughness values are R.sub.a=0.2190 μm, R.sub.a=0.2865 μm, R.sub.a=0.2395 μm and R.sub.a=0.2665 μm, which validate the simulated results.
[0108] This invention can be embodied in other forms without departing from the spirit or essential attributes thereof and, accordingly, reference should be had to the claims rather than the foregoing specification as indicating the scope of the invention.