METHOD FOR SIMULATING CHATTER-FREE MILLED SURFACE TOPOGRAPHY

Information

  • Patent Application
  • 20220374563
  • Publication Number
    20220374563
  • Date Filed
    March 06, 2020
    4 years ago
  • Date Published
    November 24, 2022
    2 years ago
  • CPC
    • G06F30/20
    • G06F2111/10
  • International Classifications
    • G06F30/20
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.
Description
FIELD OF THE INVENTION

The invention relates to mechanical machining, and more specifically, to a method for simulating chatter-free milled surface topography.


BACKGROUND

Topography of milled surfaces is generated by complicated interaction between cutting tool and workpiece during machining process. In order to achieve qualified milled surface, it is a prerequisite to avoid regenerative milling chatter, which is a kind of self-excited strong vibrations. Nevertheless, chatter-free milling does not mean high-quality milling. Surface location error and surface roughness are closely related to tool geometry (pitch angles, helix angles, number of teeth etc.), cutting conditions (tool runout) and process parameters (spindle rotation speed, feed per tooth, radial/axial depth of cut etc.).


Currently, initial value based time-domain simulation method is the only way to simultaneously predicting chatter stability, surface location error and surface roughness for milling operations, as reported in REF. 1 (Schmitz, T. L., and Smith, K. S., 2009, Machining Dynamics, Springer US, Boston, Mass.). However, the initial value based time-domain simulation method suffers from low computational efficiency, which prevents its wide application in industry.


REF 2 (Niu, J., Ding, Y, Zhu, L., and Ding, H., 2014, Runge-Kutta Methods for a Semi Analytical Prediction ofMilling Stability, Nonlinear Dynamics, 76(1), pp. 289-304) presented a semi-analytical method (i.e., Generalized Runge-Kutta (GRK) method) for stability analysis of milling operations using tools with constant pitch and constant helix angles, and omitting influences of tool runout, which is of high computational accuracy and efficiency. REF. 3 (Niu, J., Ding, Y, Zhu, L., and Ding, H., 2017, Mechanics and Multi-Regenerative Stability of Variable Pitch and Variable Helix Milling Tools Considering Runout, Int. J. Mach. Tools Manuf., 123, pp. 129-145) extended the GRK method in REF. 2 to predicting stability of milling operations using variable pitch and variable helix tools and considering effect of runout. Nevertheless, both REF. 2 and REF. 3 omitted steady cutting force term that does not affect chip regeneration. As a result, the methods in REF. 2 and REF. 3 cannot be used directly for predicting surface location error and surface roughness of milled surface, and cannot be used for simulating surface topography either.


Chinese patents with publication numbers CN102490081B, CN103713576B and CN108515217B also proposed different methods to simulate milled surface topography. However, only kinematic motions were taken into account in these patents, and influences of cutting vibrations were neglected.


In conclusion, it is necessary to propose a method for simulating chatter-free milled surface topography, which can predict chatter stability, surface location error and surface roughness simultaneously. It is of great significance for avoidance of cutting chatter and improvement of cutting quality.


SUMMARY

This invention discloses a method for simulating chatter-free milled surface topography. Its basic idea is: achieving chatter-free cutting parameters by means of dynamics modeling and stability analysis of milling system; calculating relative vibration displacements between cutting tool and workpiece by extending the GRK method; obtaining motion trajectories of cutting tool edges by means of kinematic synthesis of feed movements along tool path, rotations around spindle axis and dynamic vibrations of milling system; and finally obtaining milled surface topography by means of Boolean operation on envelope of cutting tool edge trajectories and workpiece block.


This invention is implemented by following technical solutions.


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.


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, perform dynamics modeling on milling system and build a delay differential equation with multiple delays to represent the dynamic model in physical space:








M



q
¨

(
t
)


+

C



q
˙

(
t
)


+

K


q

(
t
)



=




k
=
1

N





j
=
1


N
a



{




K
c

(

t
,
j
,
k

)

[


q

(
t
)

-

q

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

+


F
0

(

t
,
j
,
k

)


}







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; Kc(t,j,k) is directional coefficient matrix for Tooth k at j-th axial slice at time t; F0(t,j,k) is cutting force vector for Tooth k at j-th axial slice at time t, which is independent of chip regeneration; Σp=kvk τ(j,p) is time delay with regard to cutting element (j,k), Σ is mathematical summation operator, p is a variable for summation, and kv is tooth serial number to start delay calculation; N is number of teeth; and Na is number of axial discretization of tool;


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)


where P is the mode shape matrix, and Γ(t) is the modal displacement at time t;


dynamics model in modal space which is represented with delay differential equation with multiple delays turns out to be:









M
Γ




Γ
¨

(
t
)


+


C
Γ




Γ
.

(
t
)


+


K
Γ



Γ

(
t
)



=




N


k
=
1






j
=
1


N
a



{



P
T




K
c

(

t
,
j
,
k

)



P
[


Γ

(
t
)

-

Γ

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]


+


P
T




F
0

(

t
,
j
,
k

)



}







where MΓ, CΓ and KΓ are modal mass, modal damping and modal stiffness matrices, respectively; {circumflex 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:









[




M

Γ
;
T













M

Γ
;
W





]



{






Γ
¨

T

(
t
)








Γ
¨

W

(
t
)




}


+


[




C

Γ
;
T













C

Γ
;
W





]



{






Γ
˙

T

(
t
)








Γ
˙

W

(
t
)




}


+



[




K

Γ
;
T













K

Γ
;
W





]



{





Γ
T

(
t
)







Γ
W

(
t
)




}



=





k
=
1

N





j
=
1


N
a



{



[




P
T
T






-

P
W
T





]





K
c

(

t
,
j
,
k

)

[




P
T




-

P
W





]



{






Γ
T

(
t
)

-


Γ
T

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)









Γ
W

(
t
)

-


Γ
W

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)





}


+



[




P
T
T






-

P
W
T





]




F
0

(

t
,
j
,
k

)



}







where mΓ;T, CΓ;T and KΓ;T are modal mass, modal damping and modal stiffness matrices of cutting tool; MΓ;W, CΓ;W and KΓ;W are modal mass, modal damping and modal stiffness matrices of workpiece; {umlaut over (Γ)}T(t), {dot over (Γ)}T (t) and ΓT(t) are modal acceleration, modal velocity and modal displacement vectors of cutting tool; {umlaut over (Γ)}W(t), {dot over (Γ)}W(t) and ΓW(t) are modal acceleration, modal velocity and modal displacement vectors of workpiece; PT and PW are mode shape matrices of cutting tool and workpiece, respectively; PTT and PWT are transposed matrices of PT and PW, respectively;


for milling system with flexible cutting tool and rigid workpiece, the dynamic model becomes:









M

Γ
;
T






Γ
¨

T

(
t
)


+


C

Γ
;
T






Γ
˙

T

(
t
)


+


K

Γ
;
T





Γ
T

(
t
)



=




k
=
1

N





j
=
1


N
a



{



P
T
T




K
c

(

t
,
j
,
k

)



{


P
T

[



Γ
T

(
t
)

-


Γ
T

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

}


+


P
T
T




F
0

(

t
,
j
,
k

)



}







for milling system with rigid cutting tool and flexible workpiece, the dynamic model becomes:









M

Γ
;
W






Γ
¨

W

(
t
)


+


C

Γ
;
W






Γ
˙

W

(
t
)


+


K

Γ
;
W





Γ
W

(
t
)



=




k
=
1

N





j
=
1


N
a




{



P
W
T




K
c

(

t
,
j
,
k

)



{


P
W

[



Γ
W

(
t
)

-


Γ
W

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

}


-


P
W
T




F
0

(

t
,
j
,
k

)



}

.







The step 2 comprises sub-steps of:


step 2.1: perform state space transformation on the dynamic model in modal space by introducing state variable vector x(t)=[(Γ(t))T,({dot over (Γ)}(t))T]T, and delay differential equation with multiple delays in state space becomes:








x
.

(
t
)

=


A


x

(
t
)


+




k
=
1

N





j
=
1


N
a



{



B

(

t
,
j
,
k

)

[


x

(
t
)

-

x

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

+

D

(

t
,
j
,
k

)


}








where x(t) denotes state variable vector, {dot over (x)}(t) denotes first derivative of x(t) with regard to time t,







A
=

[



0


I






-

M
Γ

-
1





K
Γ






-

M
Γ

-
1





C
Γ





]



,








B

(

t
,
j
,
k

)

=

[



0


0






M
Γ

-
1




P
T




K
c

(

t
,
j
,
k

)


P



0



]


,








D

(

t
,
j
,
k

)

=

[



0






M
Γ

-
1




P
T




F
0

(

t
,
j
,
k

)





]


,




and I is unit matrix;


step 2.2: divide one rotation period of cutting tool T into 2im+2 equal intervals with a series of discrete nodes {t0,t1, . . . ,t2im+2}; analytical expression of dynamic responses at interval [ti,t] with regard to the delay differential equation with multiple delays in step 2.1 is:







x

(
t
)

=



e

A

(

t
-

t
i


)




x

(

t
i

)


+





k
=
1

N





j
=
1


N
a






t
i

t



{



e

A

(

t
-
ξ

)





B

(

ξ
,
j
,
k

)

[


x

(
ξ
)

-

x

(

ξ
-




p
=

k
v


k


τ

(

j
,
p

)



)


]


+



e

A

(

t
-
ξ

)




D

(

ξ
,
j
,
k

)



}


d

ξ









where ξ is integration variable.


for brevity, define xi:=x(ti), E(t,ti):=eA(t−ti)x(ti), Hj,k(t,ξ,x(ξ):=eA(t−ξ)B(ξ,j,k)[x(ξ)−x(ξ−τ(j,k,p))] and Jj,k(t,ξ):=eA(t−ξ)D(ξ,j,k); on sub-interval [t2i,t2i+2], x(t) is approximated using Simpson's rule:







x


2

i

+
2


=


E

(


t


2

i

+
2


,

t

2

i



)

+


h
3






k
=
1

N





j
=
1


N
a



{



H

j
,
k


(


t


2

i

+
2


,

t

2

i


,

x

2

i



)

+

4



H

j
,
k


(


t


2

i

+
2


,

t


2

i

+
1


,

x


2

i

+
1



)


+



H

j
,
k


(


t


2

i

+
2


,

t


2

i

+
2


,

x


2

i

+
2



)

+


J

j
,
k


(


t


2

i

+
2


,

t

2

i



)

+

4



J

j
,
k


(


t


2

i

+
2


,

t


2

i

+
1



)


+


J

j
,
k


(


t


2

i

+
2


,

t


2

i

+
2



)


}









on sub-interval [t2i,t2i+1], x(t) is approximated using fourth-order Runge-Kutta algorithm:







x


2

i

+
1


=


E

(


t


2

i

+
1


,

t

2

i



)

+


h
6






k
=
1

N





j
=
1


N
a



{



H

j
,
k


(


t


2

i

+
1


,

t

2

i


,

x

2

i



)

+

2



H

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/
2



,

x


2

i

+

1
/
2




)


+


2



H

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/
2



,

x


2

i

+

1
/
2




)


+


H

j
,
k


(


t


2

i

+
1


,

t


2

i

+
1


,

x


2

i

+
1



)

+


J

j
,
k


(


t


2

i

+
1


,

t

2

i



)

+

2



J

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/2




)


+

2



J

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/
2




)


+


J

j
,
k


(


t


2

i

+
1


,

t


2

i

+
1



)


}









where state variable vector at middle points t2i+1/2 is approximated with Lagrange formula:






x
2i+½=⅜x2ix2i+1x2i+2


the analytical expression of dynamic responses on sub-interval [t2i,t2i+1] is re-organized into:









F

2

i




x

2

i



+


F


2

i

+
1




x


2

i

+
1



+


F


2

i

+
2




x


2

i

+
2




=





k
=
1

N





j
=
1


N
a



(



F


2

i

-

τ

(

j
,
k

)





x


2

i

-

τ

(

j
,
k

)




+


F


2

i

+
1
-

τ

(

j
,
k

)





x


2

i

+

τ

(

j
,
k

)




+


F


2

i

+
2
-

τ

(

j
,
k

)





x


2

i

+
2
-

τ

(

j
,
k

)





)



+




k
=
1

N





j
=
1


N
a



(


S

2

i


+

S


2

i

+

1
/
2



+

S


2

i

+
1



)











where










F

2

i


=


-

e

A

h



-


h
6



e

A

h







k
=
1

N





j
=
1


N
a



B


2

i

,
j
,
k





-



3
8

·


4

h

6




e

Ah
/
2







k
=
1

N





j
=
1


N
a



B



2

i

+

1
/
2


,
j
,
k







,











F


2

i

+
1


=

I
-



3
4

·


4

h

6




e

Ah
/
2







k
=
1

N





j
=
1


N
a



B



2

i

+

1
/
2


,
j
,
k





-


h
6






k
=
1

N





j
=
1


N
a



B



2

i

+
1

,
j
,
k







,











F


2

i

+
2


=



1
8

·


4

h

6




e

Ah
/
2







k
=
1

N





j
=
1


N
a



B



2

i

+

1
/
2


,
j
,
k






,











F


2

i

-

τ

(

j
,
k
,
p

)



=



-

h
6




e

A

h




B


2

i

,
j
,
k



-



3
8

·


4

h

6




e

Ah
/
2




B



2

i

+

1
/
2


,
j
,
k





,











F


2

i

+
1
-

τ

(

j
,
k
,
p

)



=




-

3
4


·


4

h

6




e

Ah
/
2




B



2

i

+

1
/
2


,
j
,
k



-


h
6



B



2

i

+
1

,
j
,
k





,











F


2

i

+
2
-

τ

(

j
,
k
,
p

)



=



1
8

·


4

h

6




e

Ah
/
2




B



2

i

+

1
/
2


,
j
,
k




,











S

2

i


=


h
6



e

A
·
h




D


2

i

,
j
,
k




,











S


2

i

+

1
/
2



=



h
6

·
4



e


A
·
h

/
2




D



2

i

+

1
/
2


,
j
,
k




,











S


2

i

+
1


=


h
6



D



2

i

+
1

,
j
,
k




,





and h is discretization step;


the analytical expression of dynamic responses on sub-interval [t2i,t2i+2] is re-organized into:









G

2

i




x

2

i



+


G


2

i

+
1




x


2

i

+
1



+


G


2

i

+
2




x


2

i

+
2




=





k
=
1

N





j
=
1


N
a



(



G


2

i

-

τ

(

j
,
k

)





x


2

i

-

τ

(

j
,
k

)




+


G


2

i

+
1
-

τ

(

j
,
k

)





x


2

i

+
1
-

τ

(

j
,
k

)




+


G


2

i

+
2
-

τ

(

j
,
k

)





x


2

i

+
2
-

τ

(

j
,
k

)





)



+




k
=
1

N





j
=
1


N
a



(


T

2

i


+

T


2

i

+
1


+

T


2

i

+
2



)











where










G

2

i


=


-

e

2

A

h



-


h
3



e

2

A

h







k
=
1

N





j
=
1


N
a



B


2

i

,
j
,
k







,











G


2

i

+
1


=


-


4

h

3




e

A

h







k
=
1

N





j
=
1


N
a



B



2

i

+
1

,
j
,
k






,











G


2

i

+
2


=

I
-


h
3






k
=
1

N





j
=
1


N
a



B



2

i

+
2

,
j
,
k







,











G


2

i

-

τ

(

j
,
k
,
p

)



=


-

h
3




e

2

A

h




B


2

i

,
j
,
k




,











G


2

i

+
1
-

τ

(

j
,
k
,
p

)



=


-


4

h

3




e

A

h




B



2

i

+
1

,
j
,
k




,











G


2

i

+
2
-

τ

(

j
,
k
,
p

)



=


-

h
3




B



2

i

+
2

,
j
,
k




,











T

2

i


=


h
3



e


A
·
2


h




D


2

i

,
j
,
k




,










T


2

i

+
1


=



h
3

·
4



e

A
·
h




D



2

i

+
1

,
j
,
k











and










T


2

i

+
2


=


h
3



D



2

i

+
2

,
j
,
k




;





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
1



y

[

0
,
T

]



=


Qy

[


-
T

,
0

]


+


P
2



y

[

0
,
T

]



+

z

[

0
,
T

]








where







y

[

0
,
T

]


=

[




x
0






x
1






x
2






x
3






x
4











x


2


i
m


+
1







x


2


i
m


+
2





]


,








y

[


-
T

,
0

]


=

[




x

0
-
T







x

1
-
T







x

2
-
T







x

3
-
T







x

4
-
T












x


2


i
m


+
1
-
T







x


2


i
m


+
2
-
T





]


,








z

[

0
,
T

]


=




k
=
1

N





j
=
1


N
a



[



0






S
0

+

S

1
/
2


+

S
1








T
0

+

T
1

+

T
2








S
2

+

S

2
+

1
/
2



+

S
3








T
2

+

T
3

+

T
4













S

2


i
m



+

S


2


i
m


+

1
/
2



+

S


2


i
m


+
1









T

2


i
m



+

T


2


i
m


+
1


+

T


2


i
m


+
2






]




,








P
1

=

[



I


0


0


0


0





0


0


0





F
0




F
1




F
2



0


0





0


0


0





G
0




G
1




G
2



0


0





0


0


0




0


0



F
2




F
3




F
4






0


0


0




0


0



G
2




G
3




G
4






0


0


0

































0


0


0


0


0






F

2


i
m






F


2


i
m


+
1





F


2


i
m


+
2






0


0


0


0


0






G

2


i
m






G


2


i
m


+
1





G


2


i
m


+
2





]


,






Q
=




k
=
1

N





j
=
1


N
a



[



0





0


0


0





0


0



I
/

NN
a






0






F

-

τ

(

j
,
k
,
p

)






F

1
-

τ

(

j
,
k
,
p

)






F

2
-

τ

(

j
,
k
,
p

)








0


0


0




0






G

-

τ

(

j
,
k
,
p

)






G

1
-

τ

(

j
,
k
,
p

)






G

2
-

τ

(

j
,
k
,
p

)











0


0

































0





0


0


0






F


2

i

-

τ

(

j
,
k
,
p

)






F


2

i

+
1
-

τ

(

j
,
k
,
p

)






F


2

i

+
2
-

τ

(

j
,
k
,
p

)







0





0


0


0






G


2

i

-

τ

(

j
,
k
,
p

)






G


2

i

+
1
-

τ

(

j
,
k
,
p

)






G


2

i

+
2
-

τ

(

j
,
k
,
p

)




































0





0


0


0





0


0


0



]








and






P
2

=




k
=
1

N





j
=
1


N
a




[



0


0


0





0


0


0





0




























0





F


2

i

+
2
-

τ

(

j
,
k
,
p

)






F


2

i

+
3
-

τ

(

j
,
k
,
p

)






F


2

i

+
4
-

τ

(

j
,
k
,
p

)








0


0


0





0





G


2

i

+
2
-

τ

(

j
,
k
,
p

)






G


2

i

+
3
-

τ

(

j
,
k
,
p

)






G


2

i

+
4
-

τ

(

j
,
k
,
p

)








0


0


0





0




0


0








0


0


0





0

































0


0


0






F


2


i
m


-

τ

(

j
,
k
,
p

)






F


2


i
m


+
1
-

τ

(

j
,
k
,
p

)






F


2


i
m


+
2
-

τ

(

j
,
k
,
p

)








0




0


0


0






G


2


i
m


-

τ

(

j
,
k
,
p

)






G


2


i
m


+
1
-

τ

(

j
,
k
,
p

)






G


2


i
m


+
2
-

τ

(

j
,
k
,
p

)








0



]

.







The step 3 is:


construct transition matrix Φ of the milling system:






Φ
=

{







(


P
1

-

P
2


)


-
1



Q

,





if





"\[LeftBracketingBar]"



P
1

-

P
2




"\[RightBracketingBar]"




0









(


P
1

-

P
2


)




Q

,





if





"\[LeftBracketingBar]"



P
1

-

P
2




"\[RightBracketingBar]"



=
0









where |P1−P2| denotes determinant of matrix (P1−P2); † denotes Moore-Penrose pseudoinverse of matrix (P1−P2); 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.


The step 4 is:


based on fixed mapping point theorem, the state variable vector x(t) satisfies x(ti)=x(ti−T) for chatter-free cutting conditions; therefore, it has y[0,T]=y[−T,0]; state variables on all discrete points are calculated by:







y
*

=


y

[

0
,
T

]


=


y

[


-
T

,
0

]


=

{







(


P
1

-

P
2

-
Q

)


-
1




z

[

0
,
T

]



,





if





"\[LeftBracketingBar]"



P
1

-

P
2

-
Q



"\[RightBracketingBar]"




0









(


P
1

-

P
2

-
Q

)





z

[

0
,
T

]



,





if





"\[LeftBracketingBar]"



P
1

-

P
2

-
Q



"\[RightBracketingBar]"



=
0











where y* consists of modal displacement vector Γ(ti) and modal velocity vector {dot over (Γ)}(ti) at all discrete time nodes i=0,1, . . . ,2im+2 during one rotation period of cutting tool.


The step 5 comprises sub-steps of:


step 5.1: transform modal displacements into physical space, and calculate relative vibration displacements q(ti) between cutting tool and workpiece:






q(ti)=qT(ti)−qW(ti)=PTΓT(ti)−PWΓW(ti)


where qT (ti) and qW(ti) are vibration displacements of cutting tool and workpiece, respectively;


step 5.2: extract vibration displacements in direction normal to milled surface of workpiece (defined as {right arrow over (Oy)} direction) from q(ti), which constructs a new vector Qy*:






Q
y*={[qy(t1)]T,[qy(t2)]T, . . . ,[qy(t2im+2)]T}


extract vibration displacements in feed direction (defined as {right arrow over (Ox)} direction), which constructs a new vector Qx*:






Q
x*:={[qx(t1)]T,[qx(t2)]T, . . . ,[qx(t2im+2)]T}


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:








Θ
y


(

i
,
j
,
k

)

=






f
·

t
i



1000
×
60



sin


(

φ
fy

)




feed

-




R

(

j
,
k

)



cos

(


φ
ref

-

ϕ

(

j
,
k

)

-



z
j



tan

(

β
k

)


R

+

2

π



Ω


t
i


60



)




rotation

+




Q
y
*

(

i
,
j

)



vibration










Θ
x


(

j
,
k
,
i

)

=






f
·

t
i



1000
×
60




cos

(

φ
fy

)




feed

+





R

(

j
,
k

)



sin

(


φ
ref

-

ϕ

(

j
,
k

)

-



z
j



tan

(

β
k

)


R

+


60


t
i


Ω


)




rotation

+




Q
x
*

(

j
,
i

)



vibrations






where f is relative feed rate between cutting tool and workpiece in mm/min; φ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); φ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; βk is helix angle with regard to Tooth k; zj is axial height of j-th discrete axial slice; R is geometric radius of cutting tool; Ω is spindle rotation speed; Qy*(j,i) and Qx*(j,i) are vibration displacements of cutting element (j,k) in {right arrow over (Oy)} and {right arrow over (Ox)} directions, respectively.


The step 6 comprises sub-steps of:


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., (Θx_trim*(j,k,i), ιy_trim*(j,k,i)):





Θy*(j,k,i)≥max{Θy*(j,k,i)}−αR, down-milling





Θy*(j,k,i)≤min{Θy*(j,k,i)}+αR,up-milling


where α is a coefficient to adjust selecting range;


step 6.2: determine lower and upper limits of the selected trajectory points in {right arrow over (Ox)} direction, i.e., xmin=min {Θx_trim*(j,k,i)} and xmax=max {Θx_trim*(j,k,i)}; discretize interval [xmin,xmax] equally with a step δx to obtain x coordinate set of interpolation points {xmin, xmin+δx, xmin+2·δx, . . . , xmax}, where number of points is denoted by Ns;


step 6.3: taking the selected points (Θx_trim*(j,k,i),Θ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 {xmin, xmin+δx,xmin+2·δx, . . . ,xmax}, which results in densified motion trajectories of cutting tool edges during one rotation period T of cutting tool, i.e., (xs(l), ys(l)),l=1, 2, . . . Ns;


step 6.4: based on periodicity of chatter-free milling dynamic responses, i.e., xs(l) and xs(l)+nrevT share same y coordinate ys(l), obtain densified motion trajectory points of cutting tool during nrev, rotation periods of cutting tool, i.e., (xs_n(l), ys_n(l)), l=1,2, . . . Ns_n, where Ns_n is number of interpolation points on nrev rotation periods of cutting tool, and nrev≥4;


step 6.5: select densified motion trajectory points of cutting tool edges on middle periods that satisfy xmin+T≤xs_n(l)≤nrev·xmax−T to construct a new densified point set (xs_n_trim(l), ys_n_trim(l)), l=1,2, . . . Ns_n_trim, where Ns_n_trim is number of trimmed interpolation points;


step 6.6: sort the selected set (xs_n_trim(l), ys_n_trim(l)) in order of axial height to construct Na sub-sets of densified points, i.e., (xs_n_trim,(j,l), ys_n_trim(j,l)), j=1, 2, . . . ,Na;


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 (xsurf(j,l), ysurf(j,l)), l=1, 2, . . . Ns_n_trim:












y
surf



(

j
,
l

)


=


max
k


{


y


s

_

n



_

trim





(

j
,
l

)


}



,




down
-
milling















y
surf



(

j
,
l

)


=


min
k


{


y


s

_

n



_

trim





(

j
,
l

)


}



,




up
-
milling







The step 7 is:


calculate surface location error (SLE) based on motion trajectories Θy*(i,j,k) in normal direction of workpiece; surface location error SLE(j,k) with regard to cutting element (j,k) is:







S

L


E

(

j
,
k

)


=

{







max
i


{



Θ
y
*



(

j
,
k
,
i

)




1

i



2


i
m


+
2



}


-

D
/
2


,




down
-
milling









-

min

i
,
k





{



Θ
y
*



(

j
,
k
,
i

)




1

i



2


i
m


+
2



}


-

D
/
2


,




up



milling









surface location error with regard to axial height zj is:







S

L


E

(
j
)


=

{







max

i
,
k



{




Θ
y
*



(

j
,
k
,
i

)




1

i



2


i
m


+
2



,

1

k

N


}


-

D
/
2


,




down
-
milling









-

min

i
,
k





{




Θ
y
*



(

j
,
k
,
i

)




1

i



2


i
m


+
2



,

1

k

N


}


-

D
/
2


,




up



milling









where positive value mean overcut, and negative value mean undercut.


The step 8 is:


based on points (xsurf(j,l), ysurf(j,l)) that participate in generating surface topography of workpiece, surface roughness is calculated by:







R


a

(
j
)


=


1

N


s

_

n



_

trim










i


=
1


N


s

_

n



_

trim







"\[LeftBracketingBar]"




y
surf

(

j
,
l

)

-



y
¯

surf

(

j
,
l

)




"\[RightBracketingBar]"








By comparison with existing techniques, the invention has following advantages:


1. The invention discloses a method for simulating chatter-free milled surface topography. By comparison with initial value based time-domain simulation method, the invented method significantly improves the computational efficiency for simulating chatter-free milled surface topography;


2. The invention can simultaneously predict milling stability, surface location error and surface roughness, which provides theoretical and technical guidance for avoidance of milling chatter, improvement of cutting efficiency and assurance of machining quality.





BRIEF DESCRIPTION OF DRAWINGS

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:



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.



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.



FIG. 3 is comparison between simulated and measured surface location errors along tool axial height.



FIG. 4 is simulated surface roughness value along tool axial height.





EXAMPLES

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.


Refer to FIG. 1(a), FIG. 1(b), FIG. 1(c), FIG. 1(d), FIG. 2(a) and FIG. 2(b).


This example provides a method for simulating chatter-free milled surface topography, comprising steps of:


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, perform dynamics modeling on milling system and build a delay differential equation with multiple delays to represent the dynamic model in physical space:











M



q
¨

(
t
)


+

C



q
˙

(
t
)


+

K


q

(
t
)



=




k
=
1

N





j
=
1


N
a



{




K
c

(

t
,
j
,
k

)

[


q

(
t
)

-

q

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

+


F
0

(

t
,
j
,
k

)


}







(
1
)







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; Kc(t,j,k) is directional coefficient matrix for Tooth k at j-th axial slice at time t; F0(t,j,k) is cutting force vector for Tooth k at j-th axial slice at time t, which is independent of chip regeneration; Σp=kvkτ(j,p) is time delay with regard to cutting element (j,k), Σ is mathematical summation operator, p is a variable for summation, and kv is tooth serial number to start delay calculation; N is number of teeth; and Na is number of axial discretization of tool;


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;


dynamics model in modal space which is represented with delay differential equation with multiple delays turns out to be:












M
Γ




Γ
¨

(
t
)


+


C
Γ




Γ
.

(
t
)


+


K
Γ



Γ

(
t
)



=




k
=
1

N





j
=
1


N
a



{



P
T




K
c

(

t
,
j
,
k

)



P
[


Γ

(
t
)

-

Γ

(

t
-




p
=

k
v


k



τ

(

j
,
p

)



)


]


+


P
T




F
0

(

t
,
j
,
k

)



}







(
3
)







where MΓ, CΓ and KΓ 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:












[




M

Γ
;
T













M

Γ
;
W





]



{






Γ
¨

T

(
t
)








Γ
¨

W

(
t
)




}


+


[




C

Γ
;
T













C

Γ
;
W





]



{






Γ
.

T

(
t
)








Γ
.

W

(
t
)




}


+

[




K

Γ
;
T













K

Γ
;
W





]






{





Γ
T

(
t
)







Γ
W

(
t
)




}

=




k
=
1

N





j
=
1


N
a



{



[




P
T
T






-

P
W
T





]





K
c

(

t
,
j
,
k

)

[




P
T




-

P
W





]




{






Γ
T

(
t
)

-


Γ
T

(




p
=

k
v


k


τ

(

j
,
p

)


)









Γ
W

(
t
)

-


Γ
W

(




p
=

k
v


k


τ

(

j
,
p

)


)





}


+


[




P
T
T






-

P
W
T





]




F
0

(

t
,
j
,
k

)



}








(
4
)







where MΓ,T, CΓ,T and KΓ,T are modal mass, modal damping and modal stiffness matrices of cutting tool; MΓ;W, CΓ;W and KΓ;W are modal mass, modal damping and modal stiffness matrices of workpiece; {umlaut over (Γ)}T(t), {dot over (Γ)}T(t) and ΓT(t) are modal acceleration, modal velocity and modal displacement vectors of cutting tool; {umlaut over (Γ)}W(t), {dot over (Γ)}W(t) and ΓW(t) are modal acceleration, modal velocity and modal displacement vectors of workpiece; PT and PW are mode shape matrices of cutting tool and workpiece, respectively; PTT and PWT are transposed matrices of PT and PW, respectively;


for milling system with flexible cutting tool and rigid workpiece, the dynamic model becomes:












M

Γ
;
T






Γ
¨

T

(
t
)


+


C

Γ
;
T






Γ
˙

T

(
t
)


+


K

Γ
;
T





Γ
T

(
t
)



=




k
=
1

N





j
=
1


N
a



{



P
T
T




K
c

(

t
,
j
,
k

)



{


P
T

[



Γ
T

(
t
)

-


Γ
T

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

}


+


P
T
T




F
0

(

t
,
j
,
k

)



}







(
5
)







for milling system with rigid cutting tool and flexible workpiece, the dynamic model becomes:












M

Γ
;
W






Γ
¨

W

(
t
)


+


C

Γ
;
W






Γ
˙

W

(
t
)


+


K

Γ
;
W





Γ
W

(
t
)



=




k
=
1

N





j
=
1


N
a



{



P
W
T




K
c

(

t
,
j
,
k

)



{


P
W

[



Γ
W

(
t
)

-


Γ
W

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

}


-


P
W
T




F
0

(

t
,
j
,
k

)



}







(
6
)







Step 2 comprises sub-steps of:


step 2.1: perform state space transformation on the dynamic model in modal space by introducing state variable vector x(t)=[(Γ(t))T, ({dot over (Γ)}(t))T]T, and delay differential equation with multiple delays in state space becomes:











x
˙

(
t
)

=


A


x

(
t
)


+




k
=
1

N





j
=
1


N
a



{



B

(

t
,
j
,
k

)

[


x

(
t
)

-

x

(

t
-




p
=

k
v


k


τ

(

j
,
p

)



)


]

+

D

(

t
,
j
,
k

)


}








(
7
)







where x(t) denotes state variable vector, {dot over (x)}(t) denotes first derivative of x(t) with regard to time t,







A
=

[



0


I






-

M
Γ

-
1





K
Γ






-

M
Γ

-
1





C
Γ





]



,








B

(

t
,
j
,
k

)

=

[



0


0






M
Γ

-
1




P
T




K
c

(

t
,
j
,
k

)


P



0



]


,








D

(

t
,
j
,
k

)

=

[



0






M
Γ

-
1




P
T




F
0

(

t
,
j
,
k

)





]


,




and I is unit matrix;


step 2.2: divide one rotation period of cutting tool T into 2im+2 equal intervals with a series of discrete nodes {t0,t1, . . . ,t2im+2}; analytical expression of dynamic responses at interval [ti,t] with regard to the delay differential equation with multiple delays in step 2.1 is:










x

(
t
)

=



e

A

(

t
-

t
i


)




x

(

t
i

)


+





k
=
1

N





j
=
1


N
a






t
i

t



{



e

A

(

t
-
ξ

)





B

(

ξ
,
j
,
k

)

[


x

(
ξ
)

-

x

(

ξ
-




p
=

k
v


k


τ

(

j
,
p

)



)


]


+



e

A

(

t
-
ξ

)




D

(

ξ
,
j
,
k

)



}


d


ξ
.










(
8
)







for brevity, define xi:=x(ti), E(t,ti):=eA(t−ti)x(ti), Hj,k(t,ξ,x(ξ)):=eA(t−ξ)B(ξ, j,k)[x(ξ)−x(ξ−τ(j,k, p))] and Jj,k(t,ξ):=eA(t−ξ)D(ξ,j, j,k);


on sub-interval [t2i,t2i+2], x(t) is approximated using Simpson's rule:










x


2

i

+
2


=


E

(


t


2

i

+
2


,

t

2

i



)

+


h
3






k
=
1

N





j
=
1


N
a



{



H

j
,
k


(


t


2

i

+
2


,

t

2

i


,

x

2

i



)

+


4



H

j
,
k


(


t


2

i

+
2


,

t


2

i

+
1


,

x


2

i

+
1



)


+


H

j
,
k


(


t


2

i

+
2


,

t


2

i

+
2


,

x


2

i

+
2



)

+


J

j
,
k


(


t


2

i

+
2


,

t

2

i



)

+

4



J

j
,
k


(


t


2

i

+
2


,

t


2

i

+
1



)


+


J

j
,
k


(


t


2

i

+
2


,

t


2

i

+
2



)


}









(
9
)







on sub-interval [t2i,t2i+1], x(t) is approximated using fourth-order Runge-Kutta algorithm:










x


2

i

+
1


=


E

(


t


2

i

+
1


,

t

2

i



)

+


h
6






k
=
1

N





j
=
1


N
a



{



H

j
,
k


(


t


2

i

+
1


,

t

2

i


,

x

2

i



)

+

2



H

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/
2



,

x


2

i

+

1
/
2




)


+

2



H

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/
2



,

x


2

i

+

1
/
2




)


+


H

j
,
k


(


t


2

i

+
1


,

t


2

i

+
1


,

x


2

i

+
1



)

+


J

j
,
k


(


t


2

i

+
1


,

t

2

i



)

+

2



J

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/
2




)


+

2



J

j
,
k


(


t


2

i

+
1


,

t


2

i

+

1
/
2




)


+


J

j
,
k


(


t


2

i

+
1


,

t


2

i

+
1



)


}









(
10
)







where state variable vector at middle points t2i+1/2 is approximated with Lagrange formula:






x
2i+1/2=⅜x2i−¾x2i−1+⅛x2i+2  (11)


the analytical expression of dynamic responses on sub-interval [t2i,t2i+1] is re-organized into:















F

2

i




x

2

i



+


F


2

i

+
1




x


2

i

+
1



+


F


2

i

+
2




x


2

i

+
2




=










k
=
1

N






j
=
1


N
a




(



F


2

i

-

τ

(

j
,
k

)





x


2

i

-

τ

(

j
,
k

)




+


F


2

i

+
1
-

τ

(

j
,
k

)





x


2

i

+
1
-

τ

(

j
,
k

)




+


F


2

i

+
2
-

τ

(

j
,
k

)





x


2

i

+
2
-

τ

(

j
,
k

)





)



+




k
=
1

N






j
=
1


N
a




(


S

2

i


+

S


2

i

+

1
/
2



+

S


2

i

+
1



)








where







F

2

i


=


-

e

A

h



-


h
6



e

A

h







k
=
1

N






j
=
1


N
a




B


2

i

,
j
,
k





-



3
8

·


4

h

6




e

A

h
/
2







k
=
1

N






j
=
1


N
a




B



2

i

+

1
/
2


,
j
,
k







,








F


2

i

+
1


=

I
-



3
4

·


4

h

6




e

A

h
/
2







k
=
1

N






j
=
1


N
a




B



2

i

+

1
/
2


,
j
,
k





-


h
6






k
=
1

N






j
=
1


N
a




B



2

i

+
1

,
j
,
k







,


F


2

i

+
2


=



1
8

·


4

h

6




e

A

h
/
2







k
=
1

N






j
=
1


N
a




B



2

i

+

1
/
2


,
j
,
k






,








F


2

i

-

τ

(

j
,
k
,
p

)



=


-

h
6



e

A

h




B


2

i

,
j
,
k



-



3
8

·


4

h

6




e

A

h
/
2




B



2

i

+

1
/
2


,
j
,
k





,


F


2

i

+
1
-

τ

(

j
,
k
,
p

)



=


-


3
4

·


4

h

6




e

A

h
/
2




B



2

i

+

1
/
2


,
j
,
k



-


h
6



B



2

i

+
1

,
j
,
k





,








F


2

i

+
2
-

τ

(

j
,
k
,
p

)



=



1
8

·


4

h

6




e

A

h
/
2




B



2

i

+

1
/
2


,
j
,
k




,


S

2

i


=


h
6



e

A
·
h




D


2

i

,
j
,
k




,


S


2

i

+

1
/
2



=



h
6

·
4



e


A
·
h

/
2




D



2

i

+

1
/
2


,
j
,
k




,


S


2

i

+
1


=


h
6



D



2

i

+
1

,
j
,
k




,







(
12
)







and h is discretization step;


the analytical expression of dynamic responses on sub-interval [t2i,t2i+2] is re-organized into:















G

2

i




x

2

i



+


G


2

i

+
1




x


2

i

+
1



+


G


2

i

+
2




x


2

i

+
2




=










k
=
1

N






j
=
1


N
a




(



G


2

i

-

τ

(

j
,
k

)





x


2

i

-

τ

(

j
,
k

)




+


G


2

i

+
1
-

τ

(

j
,
k

)





x


2

i

+
1
-

τ

(

j
,
k

)




+


G


2

i

+
2
-

τ

(

j
,
k

)





x


2

i

+
2
-

τ

(

j
,
k

)





)



+




k
=
1

N






j
=
1


N
a




(


T

2

i


+

T


2

i

+
1


+

T


2

i

+
2



)








where







G

2

i


=


-

e

2

A

h



-


h
3



e

2

A

h







k
=
1

N






j
=
1


N
a




B


2

i

,
j
,
k







,


G


2

i

+
1


=

-


4

h

3



e

A

h







k
=
1

N






j
=
1


N
a




B



2

i

+
1

,
j
,
k






,








G


2

i

+
2


=

I
-


h
3






k
=
1

N






j
=
1


N
a




B



2

i

+
2

,
j
,
k







,


G


2

i

-

τ

(

j
,
k
,
p

)



=

-

h
3



e

2

A

h




B


2

i

,
j
,
k




,


G


2

i

+
1
-

τ

(

j
,
k
,
p

)



=

-


4

h

3



e
Ah



B



2

i

+
1

,
j
,
k




,








G


2

i

+
2
-

τ

(

j
,
k
,
p

)



=

-

h
3



B



2

i

+
2

,
j
,
k




,


T

2

i


=


h
3



e


A
·
2


h




D


2

i

,
j
,
k




,



T


2

i

+
1


=




h
3

·
4



e

A
·
h




D



2

i

+
1

,
j
,
k




and



T


2

i

+
2



=


h
3



D



2

i

+
2

,
j
,
k





;








(
13
)







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
1
y
[0,T]
=Qy
[−T,0]
+P
2
y
[0,T]
+z
[0,T]  (14)


where











y

[

0
,
T

]


=

[




x
0






x
1






x
2






x
3






x
4











x


2


i
m


+
1







x


2


i
m


+
2





]


,


y


[


-
T

,
0

]

=


[




x

0
-
T







x

1
-
T







x

2
-
T







x

3
-
T







x

4
-
T












x


2


i
m


+
1
-
T







x


2


i
m


+
2
-
T





]

,


z

[

0
,
T

]


=




k
=
1

N






j
=
1


N
a




[



0






S
0

+

S

1
/
2


+

S
1








T
0

+

T
1

+

T
2








S
2

+

S

2
+

1
/
2



+

S
3








T
2

+

T
3

+

T
4













S

2


i
m



+

S


2


i
m


+

1
/
2



+

S


2


i
m


+
1









T

2


i
m



+

T


2


i
m


+
1


+

T


2


i
m


+
2






]




,








P
1

=

[



I


0


0


0


0





0


0


0





F
0




F
1




F
2



0


0





0


0


0





G
0




G
1




G
2



0


0





0


0


0




0


0



F
2




F
3




F
4






0


0


0




0


0



G
2




G
3




G
4






0


0


0

































0


0


0


0


0






F

2


i
m






F


2


i
m


+
1





F


2


i
m


+
2






0


0


0


0


0






G

2


i
m






G


2


i
m


+
1





G


2


i
m


+
2





]


,






Q
=




k
=
1

N






j
=
1


N
a




[



0





0


0


0





0


0



I
/

NN
a






0






F

-

τ

(

j
,
k
,
p

)






F

1
-

τ

(

j
,
k
,
p

)






F

2
-

τ

(

j
,
k
,
p

)








0


0


0




0






G

-

τ

(

j
,
k
,
p

)






G

1
-

τ

(

j
,
k
,
p

)






G

2
-

τ

(

j
,
k
,
p

)











0


0

































0





0


0


0






F


2

i

-

τ

(

j
,
k
,
p

)






F


2

i

+
1
-

τ

(

j
,
k
,
p

)






F


2

i

+
2
-

τ

(

j
,
k
,
p

)







0





0


0


0






G


2

i

-

τ

(

j
,
k
,
p

)






G


2

i

+
1
-

τ

(

j
,
k
,
p

)






G


2

i

+
2
-

τ

(

j
,
k
,
p

)




































0





0


0


0





0


0


0



]








and






P
2

=




k
=
1

N






j
=
1


N
a





[



0


0


0





0


0


0





0




























0





F


2

i

+
2
-

τ

(

j
,
k
,
p

)






F


2

i

+
3
-

τ

(

j
,
k
,
p

)






F


2

i

+
4
-

τ

(

j
,
k
,
p

)








0


0


0





0





G


2

i

+
2
-

τ

(

j
,
k
,
p

)






G


2

i

+
3
-

τ

(

j
,
k
,
p

)






G


2

i

+
4
-

τ

(

j
,
k
,
p

)








0


0


0





0




0


0








0


0


0





0

































0


0


0






F


2


i
m


-

τ

(

j
,
k
,
p

)






F


2


i
m


+
1
-

τ

(

j
,
k
,
p

)






F


2


i
m


+
2
-

τ

(

j
,
k
,
p

)








0




0


0


0






G


2


i
m


-

τ

(

j
,
k
,
p

)






G


2


i
m


+
1
-

τ

(

j
,
k
,
p

)






G


2


i
m


+
2
-

τ

(

j
,
k
,
p

)








0



]

.










Step 3 is:


construct transition matrix Φ of the milling system:









Φ
=

{







(


P
1

-

P
2


)


-
1



Q

,


if





"\[LeftBracketingBar]"



P
1

-

P
2




"\[RightBracketingBar]"




0










(


P
1

-

P
2


)




Q

,


if





"\[LeftBracketingBar]"



P
1

-

P
2




"\[RightBracketingBar]"



=
0










(
15
)







where |P1−P2| denotes determinant of matrix (P1−P2); † denotes Moore-Penrose pseudoinverse of matrix (P1−P2); 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.


Step 4 is:


based on fixed mapping point theorem, the state variable vector x(t) satisfies x(ti)=x(ti−T) for chatter-free cutting conditions; therefore, it has y[0,T]=y[−T,0]; state variables on all discrete points are calculated by:










y
*

=


y

[

0
,
T

]


=


y

[


-
T

,
0

]


=

{







(


P
1

-

P
2

-
Q

)


-
1




z

[

0
,
T

]



,


if





"\[LeftBracketingBar]"



P
1

-

P
2

-
Q



"\[RightBracketingBar]"




0










(


P
1

-

P
2

-
Q

)





z

[

0
,
T

]



,


if





"\[LeftBracketingBar]"



P
1

-

P
2

-
Q



"\[RightBracketingBar]"



=
0












(
16
)







where y* consists of modal displacement vector Γ(ti) and modal velocity vector {dot over (Γ)}(ti) at all discrete time nodes i=0,1, . . . ,2im30 2 during one rotation period of cutting tool.


Step 5 comprises sub-steps of:


step 5.1: transform modal displacements into physical space, and calculate relative vibration displacements q(ti) between cutting tool and workpiece:






q(ti)=qT(ti)−qW(ti)=PTΓT(ti)−PWΓW(ti)  (17)


where qT(ti) and qW(ti) are vibration displacements of cutting tool and workpiece, respectively;


step 5.2: extract vibration displacements in direction normal to milled surface of workpiece (defined as {right arrow over (Oy)} direction) from q(ti), which constructs a new vector Qy*:






Q
y*={[qy(t1)]T,[qy(t2)]T, . . . ,[qy(t2im+2)]T}  (18)


extract vibration displacements in feed direction (defined as {right arrow over (Ox)} direction), which constructs a new vector Qx*:






Q
x*={[qx(t1)]T,[qx(t2)]T, . . . ,[qx(t2im+2)]T}  (19)


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):











Θ
y
*

(

i
,
j
,
k

)

=






f
·

t
i



1000
×
60



sin


(

φ
fy

)




feed

-







R

(

j
,
k

)



cos
(


φ
ref

-

ϕ

(

j
,
k

)

-



z
j



tan

(

β
k

)


R









+
2


π



Ω


t
i


60


)






rotation

+






Q
y
*




(

i
,
j

)






vibration






(
20
)














Θ
x
*

(

j
,
k
,
i

)

=








f
·

t
i



1000
×
60





cos

(

φ
fy

)






feed

+




R

(

j
,
k

)



sin
(


φ
ref

+

ϕ

(

j
,
k

)

-



z
j



tan

(

β
k

)


R

+


60


t
i


Ω


)




rotation

+






Q
x
*




(

j
,
i

)






vibrations






(
21
)







where f is relative feed rate between cutting tool and workpiece in mm/min; φ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); φ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; βk is helix angle with regard to Tooth k; zj is axial height of j-th discrete axial slice; R is geometric radius of cutting tool; Ω is spindle rotation speed; Qy*(j,i) and Qx*(j,i) are vibration displacements of cutting element (j,k) in {right arrow over (Oy)} and {right arrow over (Ox)} directions, respectively.


Step 6 comprises sub-steps of:


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., (Θx_trim*(j,k,i), Θy_trim*(j,k,i)):





Θy*(j,k,i)≥max{Θy*(j,k,i)}−αR, down-milling





Θy*(j,k,i)≤min{Θy*(j,k,i)}+αR, up-milling


where α is a coefficient to adjust selecting range;


step 6.2: determine lower and upper limits of the selected trajectory points in {right arrow over (Ox)} direction, i.e., xmin=min {Θx_trim*(j,k,i)} and xmax=max {Θx_trim*(j,k,i)}; discretize interval [xmin,xmax] equally with a step δx to obtain x coordinate set of interpolation points {xmin,xmin+δx, xmin+2·δx, . . . ,xmax}, where number of points is denoted by Ns;


step 6.3: taking the selected points (Θx_trim*(j,k,i), Θ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 {xmin,xmin+δx,xmin+2·δx, . . . ,xmax}, which results in densified motion trajectories of cutting tool edges during one rotation period T of cutting tool, i.e., (xs(l), ys (l)),l=1, 2, . . . Ns, as shown in FIG. 1 (b);


step 6.4: based on periodicity of chatter-free milling dynamic responses, i.e., xs(l) and xs(l)+nrevT share same y coordinate ys(l), obtain densified motion trajectory points of cutting tool during nrev rotation periods of cutting tool, i.e., (xs_n_trim(l), ys_n_trim(l)), l=1, 2, . . . Ns_n_trim, where Ns_n_trim is number of interpolation points on nrev rotation periods of cutting tool, and nrev≥4, as shown in FIG. 1 (c);


step 6.5: select densified motion trajectory points of cutting tool edges on middle periods that satisfy xmin, +T≤xs_n(l)≤nrev·xmax−T to construct a new densified point set (xs_n_trim(l), ys_n_trim(l)), l=1, 2, Ns_n_trim, where Ns_n_trim is number of trimmed interpolation points;


step 6.6: sort the selected set (xs_n_trim (l), ys_n_trim(l)) in order of axial height to construct Na sub-sets of densified points, i.e., (xs_n_trim(j,l), ys_n_trim(j,l), j=1, 2, . . . ,Na;


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 (xsurf(j,l), ysurf(j,l)), l=1,2, . . . Ns_n_trim, shown in FIG. 1 (d) and FIG. 2 (b):












y
surf

(

j
,
l

)

=


max
k


{


y


s

_

n



_

trim



(

j
,
l

)

}



,

down
-
milling










y
surf

(

j
,
l

)

=


min
k


{


y


s

_

n



_

trim



(

j
,
l

)

}



,

up
-
milling








Step 7 is:


calculate surface location error (SLE) based on motion trajectories Θy*(i,j,k) in normal direction of workpiece; surface location error SLE(j,k) with regard to cutting element (j,k) is:










SLE

(

j
,
k

)

=

{







max
i


{



Θ
y
*

(

j
,
k
,
i

)



1

i



2


i
m


+
2



}


-

D
/
2


,

down
-
milling









-

min
i


{



Θ
y
*

(

j
,
k
,
i

)



1

i



2


i
m


+
2



}


-

D
/
2


,

up
-
milling










(
22
)







surface location error with regard to axial height zj is:










SLE

(
j
)

=

{







max

i
,
k



{




Θ
y
*

(

j
,
k
,
i

)



1

i



2


i
m


+
2



,

1

k

N


}


-

D
/
2


,

down
-
milling









-

min

i
,
k



{




Θ
y
*

(

j
,
k
,
i

)



1

i



2


i
m


+
2



,

1

k

N


}


-

D
/
2


,

up
-
milling










(
23
)







where positive value mean overcut, and negative value mean undercut, as shown in FIG. 3.


Step 8 is:


based on points (xsurf (j,l), ysurf(j,l)) that participate in generating surface topography of workpiece, surface roughness is calculated by:










Ra

(
j
)

=


1

N

s_n

_trim









i


=
1


N


s

_

n



_

trim








"\[LeftBracketingBar]"




y
surf

(

j
,
l

)

-



y
_

surf

(

j
,
l

)




"\[RightBracketingBar]"








(
24
)







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 ar=0.5 mm, axial depth of cut ap=5 mm, and feed per revolution frev=0.2 mm/rev. The system dynamic parameters are: natural frequency fn=189.1 Hz, damping ratio custom-character=0.0047, and stiffness k=3.01×106 N/m. The runout parameters are: offset value ρ=2.5 μm, and orientation angle λ=0.1°.


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 Ra=0.2190 μm, Ra=0.2865 μm, Ra=0.2395 μm and Ra=0.2665 μm, which validate the simulated results.


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.

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:
  • 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))T,({dot over (Γ)}(t))T]T, and delay differential equation with multiple delays in state space becomes:
  • 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:
  • 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(ti)=x(ti−T) for chatter-free cutting conditions; therefore, it has y[0,T]=y−T,0; calculating state variables on all discrete points by:
  • 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(ti) between cutting tool and workpiece: q(ti)=qT(ti)−qW(ti)=PTΓT(ti)−PWΓW(ti)
  • 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., (Θx_trim*(j,k,i), Θy_trim*(j,k,i)): Θy*(j,k,i)≥max{Θy*(j,k,i)}−αR, down-millingΘy*(j,k,i)≤min{(Θy*(j,k,i)}+αR, up-milling
  • 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 Θy*(i,j,k) in normal direction of workpiece; surface location error SLE(j,k) with regard to cutting element (j,k) is:
  • 9. The method for simulating chatter-free milled surface topography of claim 1, wherein the step 8 is: based on points (xsurf(j,l), ysurf(j,l), ysurf(j,l)) that participate in generating surface topography of workpiece, calculating surface roughness:
PCT Information
Filing Document Filing Date Country Kind
PCT/CN2020/078137 3/6/2020 WO