Int. J. Mach. Tools Manufact. Vol. 34. No. 7, pp. 1005-1018, 1994 Copyright ~) 1994 Elsevier Science Ltd Printed in Great Britain. All rights reserved 0890--6955/9457.00 + .00
Pergamon
PRECISION TRAJECTORY GENERATION FOR CNC MILLING OF ARBITRARY CONTOURS AND SURFACESS" DANIEL C .
H. YANG:~ a n d ALEX D. GOLUB§[[
(Received 10 August 1992; in final form 25 July 1993) Abstract--In an effort to improve cutter path tracking for high precision milling of spatial contours and sculptured surfaces, a new CNC trajectory generation approach is presented. Linking the CAD part design with control motion execution, command generation has traditionally been limited to the issues of coordinated motion kinematics and interpolation function design. Unlike simple interpolators commonly used in practice today, the proposed trajectory generator accounts for the nonlinear effects of the machine dynamics and tool cutting forces. The new trajectory commands are obtained by solving the inverse dynamics problem enhanced with a cutting load predictor. Also, the algorithm utilizes efficient machine dynamics formulation in a parameterized space. Using three- and five-axis CNC machines as demonstration examples, the coordinated trajectories generated by the new algorithm were fed into the machine nonlinear closed loop simulator and the response was compared with that based on conventional interpolators. The results demonstrate superior tracking performance over a wide range of operational speeds--low, medium, and high--when new coordinated trajectories are employed.
1. INTRODUCTION
CAD/CAM INTE6RATEOpart machining involves three main phases: (i) part model to cutter path conversion; (ii)cutter path to coordinated motion transformation; and (iii) commanded motion realization by the machine closed loop controllers. Phase (i) primarily deals with issues of the part primitive geometry modeling, path offsetting, and part feature recognition. Phase (ii) concerns the issues of coordinated motion kinematics and interpolation function design for best fit of the given part points while satisfying various geometric constraints (tangent, curvature). Phase (iii) mainly deals with closed loop control issues, sensing, and adaptive techniques for motion realization. Present work deals mainly with phase (ii), i.e. coordinated trajectory planning which links part computer aided design (CAD) to the tool cutter motion realization. Conventionally, this phase has been limited to interpolators that do not reflect dynamic characteristics of the machine and primarily deal with the path geometry. Furthermore, existing command generation algorithms ignore loads due to cutting and inertia forces and let the hardware controllers compensate for these nonlinear effects in a closed loop fashion. However, this is not sufficient for very high-precision or high-speed machining of complex contours and sculptured surfaces. The main reason is that the feedback controllers alone, with their inherent delays, are not fast enough to compensate for the machine transient dynamics during these operations. Ignoring the above effects in the motion planning phase introduces significant transient errors into the commanded trajectories. As a result, tool trailing can occur that deteriorates the cut accuracy, particularly, where the path has sharp curvatures. The proposed trajectory generation approach is based on a more accurate dynamic model that incorporates a cutting force predictor and full nonlinear machine dynamics. It is a common belief that considering the nonlinear dynamics and cutting forces is only
tThis paper is based in part on the Ph.D dissertation of A. Golub, UCLA, 1992. :~Department of Mechanical, Aerospace and Nuclear Engineering, University of California, Los Angeles, CA 90024, U.S.A. §TRW, Spacecraft Technology Division, One Space Park R4-2142, Redondo Beach, CA 90278, U.S.A. [[Author to whom correspondence should be addressed. 1005
1006
D.C.H.
YANG and A. D. GoLun
important during high-speed machining. However, based on this study, improvement in machining accuracy can also be achieved at low and medium speeds. Compared with the conventional command interpolators, which mainly compute the kinematic trajectories--coordinated positions and velocities--the new method also generates the actuator effort trajectories that are dynamically consistent with the machine anticipated kinematic states. These new trajectories provide a considerably higher transient response of the machine actuators during the path execution. The improvement is mainly attributed to the cutting load predictions which are shown to significantly affect tracking performance. To date, cutting force effects on commanded trajectories have not been considered in the available literature. Maintaining a maximum permissible cutting tool force is often found to be a solution of the adaptive control with constraints (ACC) or geometric adaptive control (GAC) techniques for metal cutting processes [1-3]. Tool force feed feedback controllers with fixed and adaptive gains were studied in Refs [3-5]. The main objective of these controllers was to manipulate the feedrate so as to maintain the constant cutting force while compensating for varying cutting conditions such as depth or width of cut. Model reference adaptive controllers (MRAC) for force control were shown to offer improvement over the fixed and adaptive gain techniques [6]. MRAC approaches utilize discretized cutting force to feedrate input/output transfer functions derived from empirical expressions. Both the adaptive ACC and the MRAC are based on force feedback and, under nominal conditions of simple path and low speed cutting, showed promising results. With respect to the model reference adaptive controllers, the only similarity of the present work is that force relationships are considered. The difference is that the MRAC is a feedback based controller required to maintain the specified steady state contact tool force in the direction of cut. In contrast, the proposed work concentrates on improving the coordinated commands transient characteristics by incorporating the cutting force predictor (for both feed and transverse force components) into the trajectory planning phase. The MRAC controllers utilize empirical relations to compute feedrate corrections proportional to the cutting force errors. These secondary order corrections are fed back into the controllers (phase iii) and summed with the first order open loop commands from the command generator. The proposed trajectory generator employs predicted cutting forces, expressed as functions of the feedrate and other cutting process parameters, to generate primary reference commands for the actuator positions, velocities and torques/forces in the trajectory planning phase (ii). The MRAC based force controllers, used alone, can not provide the transient performance required in a highly dynamic environment of complex contours and sculptured surfaces because any feedback control inherently possesses delays. The new trajectory planner improves the path tracking transient performance while the MRAC, used in parallel with the proposed method, provides a good steady state performance for local control of the tool cutting force. This paper is organized as follows. The theory of kinematics for coordinated trajectory generators is provided in Section 2. The machine dynamics, cutting load and surface contact force are prevented for consideration in Section 3. A force model, which is used to predict a first order accuracy cutting load, is developed in detail in Section 4. The problem of parametrized inverse dynamics solution for generating actuator commands is presented in Section 5. Section 6 provides details of the algorithm implementation. Sections 7 and 8 include, respectively, performance demonstration examples and concluding remarks. 2.
KINEMATICS OF C O O R D I N A T E D TRAJECTORY GENERATION
Let the position and orientation vector for each point on the specified path be defined in work space coordinates as p = [XW] r =
[xyzO~OyO~]~,
(1)
Precision Trajectory Generation
1007
where the three components of X are three displacements along the three fixed workspace axes and the components of • are the rotations about the fixed axes of the workspace coordinate frame. Both the translational and rotational path components can be expressed in terms of parametric polynomials in single variable u [7]. Let P(u) : u --~ ~6 be the parametric vector function that specifies rotational and translational degrees of freedom of the desired tool path. At each path point on a given surface, the tool position components, X, can be evaluated from the given path interpolation function. The corresponding orientation component, ~ , can be evaluated from the surface normal vector at that point. The surface is specified by a mesh of assumed interpolation functions. The tool velocity vector fa can be expressed in terms of the desired feedrate and specified path polynomial as: (2)
= PsV,
with Ps defined by: P.(u)
Ps-
OP(u)/Ou
IX (u)l- I o X ( u ) / o u l '
(3)
where V is the feedrate, or speed along the path S with S denoting the path arc-length. The tool acceleration vector can be obtained by differentiating equation (2): 1~= d (PsV) = P s s V 2 + PsA,
(4)
where A = S is the desired feed acceleration (arc-length parameter second derivative) and Pss can be evaluated numerically or by [8]: Pss =
Pu(u) x P.u(U) x P.(u) iX~(u)14
(5)
Note that the translational component of Ps, namely Xs, represents the path normalized (unit) tangent, while Xss, the translational component of Pss, represents the path curvature. To arrive at the actuator commanded velocity and acceleration, the inverse kinematic relations for a particular machine must be formulated. Let q, n × 1, define the actuator displacement vector for a given machine. The tool position/orientation vector can be then expressed in terms of the forward kinematic transformation, R, typically available from a library of common configurations: p = R(q).
(6)
Taking first and second derivatives of equation (6) yields expressions for the tool velocity and acceleration vectors, respectively [9]: [~ = RqC1
(7)
[~ =- cITRqqCl -k Rqq,
(8)
where Rq = 0R/0q, n x n, is the Jacobian matrix (for path specified at the tool masscenter); Rqq = ORq/Oq, n x n × n, is the vector of the Hessians of the R vector elements. Equations (7) and (8) together with (3) and (4) can be solved for commanded actuator velocity and acceleration vectors:
1008
D . C . H . YANG and A. D. GOLUB
(9)
ii = R ~ I P s V
t] = Rq'{PsA + P s s V 2 - (Rq~Ps)~Rqq(Rq~Ps)V2}.
(10)
The derived expressions provide a systematic relation between the specified path geometry, feedrate, and feed acceleration and the actuator velocity and acceleration states via the machine kinematic Jacobian transformation and its partial derivatives. 3.
MACHINE DYNAMICS MODEL
Lagrangian formulation of the equations of motion for a machine with n axes provides the nonlinear dynamic model in the form [10]: M(q)~l + ¢lT{C(q)} ¢! + G(q) = Q,
(11)
where M(q) is an n x n mass/inertia matrix; G(q) is an n-array of gravity forces; Q is the generalized n × 1 force vector; and {C} is the generalized coriolis/centrifugal tensor (n × n x n) that can be thought of as an n-vector of Ci matrices, n x n each (Christoffel's symbol [11]): OM i Ci nXn
aq
10M 2 8qi
(12)
where Mi is the i-th row of M. In order to control the tool motion while maintaining continuous contact with the surface with a specified contact force, the Lagrangian formulation requires that the generalized states satisfy the following constraint:
[Vfs O] Rq/! = O.
(13)
Equation (13) represents the non-holonomic constraints on the generalized coordinates stating that the generalized velocity functions must produce tip motion only in the plane tangent to the specified surface. The generalized force Q (n × 1) can be written as a vector sum of the actuator efforts, cutting forces applied at the tool, and normal to surface constraint force. Defining D as the Jacobian transformation between the machine workspace and generalized actuator coordinates (D = Rq for a path specified at the tool mass-center), the generalized force vector can be written as
Ma
(14)
where Ta is the actuator effort vector (n × 1); Fa is the applied force at the tool (3 x 1) in workspace coordinates; and M. is the applied moment at the tool (3 × 1) in workspace coordinates. The rightmost term of equation (14) represents the surface contact force expressed in terms of the Lagrange multiplier, h, which is related to the normal to surface force; and Vfs is the row-vector (1 × 3) gradient of the constraint (machined) surface. 4.
CUTTING LOAD PREDICTOR FOR COMMAND GENERATION
In this section a first order accuracy cutting load predictor is developed. Accurate cutting force models for milling have been studied extensively [12-14]. Generally, in face milling, the total cutting force acting on the machine structure is periodic with frequency dependent on the spindle rate, number of teeth, and geometry of the cut conditions (e.g. fully or partially emerged tool). Generating commanded trajectories including the consideration of this periodic function is not desirable since the resultant
Precision Trajectory Generation
1009
frequency of the commands would fall into the range of machine structural frequencies or outside of the control system closed loop bandwidth (e.g. frequency of four-flute cutter rotating at 1000-20,000 rpm is 67-1333 Hz; structural modes can range from fifty to thousands of Hz; closed loop system bandwidth for a commercial medium size machine is under 20 Hz). Furthermore, compensating for the accurate cyclic force would require phase control which is not an easy task. At the same time, accounting for the average force component would be sufficient for improving the reference trajectories since the cyclic component amplitude of the total force on the tool axis does not exceed 20% of its averaged value for the same example of the four-flute cutter [9]. Hence, we seek a model that can approximate the cutting forces accurately enough while retaining their dominant low frequency components only. In this paper, such a model is derived by considering force impulses of the cutter teeth impacts on the workpiece.
4.1. Firstorder estimation of cutting force The basic equations for the instantaneous force at a straight tooth (Fig. 1) can be written as:
FT=Kt~dasin~ FR=KrFT,
(15) (16)
where FT is the tooth tangential force, FR is the tooth radial force, Kt is the specific cutting pressure, ft is the feedrate per tooth, da is the axial depth of cut, and g r is a dimensionless constant relating radial and tangential forces. The force impulse supplied via a single tooth over one spindle rotation with a period of 'r is Impu,se =f~F(t)dt
(17)
where F(t) can be either of Fx or FR for a single tooth. The average force due to the supplied impulse over a single rotation can then be calculated as:
IF'7 Fth
Y
J FIG. 1. End/face milling cutter geometry.
1010
D.C.H.
YANG and A. D. GOLUB
F~v = T F(t)dt
(18)
Performing change of the integration variable and evaluating the integral only on the non-zero interval [~1,~o] of the cutting force (i.e. when the tooth is engaged with the workpiece) yields:
2~rJ~, F( + )d+ '
(19)
F.v = Z
where ~1 and ~o are the tooth entry and exit angles, respectively. Since the tool motion is directed along the specified path, the cutting force components tangent and normal to the tool path are of interest. These components are referred to as the feed (thrust) and transverse (lateral) forces. With the above assumptions of the straight cutter geometry and zero axial cutting force, the two force components lie in the plane normal to the tool vertical axis. The average values of the feed and transverse force components due to the tangential force of a single tooth, FT, can be derived by substituting equation (15) into (19):
1 f~o
Fthr/r = ~ J~,
(Ktftda sin ~b) cos + dqb
Kt4~da(sin2~o -
sine~l)
(20)
Fl~t/r = 1__ leo (K,ftd~ sin d~) sin qb dd~ -Kt4~da[(l~o-,,)-~(sinZl~o-sin2~,)],
(21)
where ~'thr/r and F~t/r denote the averaged thrust (feed) and lateral (transverse) components for a single tooth tangential force. Similarly_ the averaged feed and transverse components of each tooth radial force, Fthr/R and Flat/R can be derived to yield:
~thr/R KrKtftda 4"tr [ (~o -
- ~1) - ~1 (sin z ~o - sin2 ~,) ]
Flat/R -- KrKtftda (sin 2 ~o 4"rr
sin e ~,).
(22) (23)
Adding respective components of the tooth tangential and radial forces yields expressions for the averaged feed and transverse forces acting on a single tooth: (24)
Flati= ft da
Kt[(lo-ft)+(Kr-)(sinelo-sin2,)].
(25)
For the purpose of command generation, we need to express these two forces in terms of the feed rate, depth of cut and rpm. To do so, we define the thrust and lateral pressures for a single tooth as:
Precision Trajectory Generation
1011
] Kt[(~o-~l)+(Kr-12)(sin2~o-sin2~l)] I'~a~,----U~
,:6, (27)
The feed rate along the path is defined as:
V = ftNv =ftN rpm/60
(28)
where v is the spindle rate in rev/s and rpm is the number of revolutions per minute. Combining equations (24), (25) and (28), for N evenly spaced teeth, yields the approximate expressions for the machine forcing functions due to the feed and transverse cutting force components: (29)
Fthr : V r p m da/ 6 0 Fthri da
(30)
In addition to the tool cutting forces, included in the machine dynamics model of equations (11) and (14), the tool axial moment of the cutting is needed. To obtain this moment, the individual teeth moments due to the tangential forces can be computed and combined to yield the following expression: da rad'gt [COS~ -- COS ~ o ] , M~x = V rpm/6--O z--W-
--
(31)
where tad is the cutter radius.
4.2. Total tool load predictions Once the averaged tool cutting forces, Fthr and Flat, and moment, Max, have been derived, we can determine the total tool load. Combining the applied cutting and surface contact forces of equation (14) yields the following generalized force expression that can be readily evaluated at each path point:
(32) where the total tool force, Ftoot , is now defined as: Ftool
=
Vd,, (FthriUrt~l rpm/60
+ FlatiUtran) + Fn°rmUn°rm
(33)
and utica and Utran are the feed and transverse unit vectors in workspace coordinates and u . . . . completes the orthogonal triad. The vector triad defines the local cutting reference frame and can be evaluated at each path point either analytically or numerically as a function of the specified path and surface (Fig. 2): ut~,.a = Xs, u . . . . = Vf~r, and Utran = U n o r r a X Ufeed. The magnitude of the normal to surface contact force, or the Lagrange multiplier k in equation (14), is a specified function F~orm, while its direction is along the gradient (normal) of the machined surface at the point of tool contact.
1012
D.C.H.
YANG and A. D. GOLUB W Workspace Coordinate Frame
Jnorm ~
:
~
Path
Local C u t t i n g C o o r d i n a t e Frame FIG. 2. Tool/path geometry.
The tool torque vector acts along the tool axis in the direction opposite to the spindle rotation and can be calculated from: d~ rad Kt [cos ~I - cos ~o]U**rm. M. = - V rpm/----~ 2~r 5.
(34)
DYNAMICS OF TRAJECTORY GENERATION
Based on the nonlinear dynamics model, which includes the cutting load predictions and nonlinear inertia effects, we now can incorporate the inverse dynamics into the process of trajectory generation. The Lagrangian dynamics equations derived in Section 3 are highly coupled in terms of the actuator rotational and translational degrees of freedom. To facilitate efficient computer implementation, the original n × n matrix equations are decoupled and transformed into simpler, n scalar equations in terms of the tool coordinates (feed rate and acceleration). The simplified formulation will not only facilitate a more efficient algorithm implementation for CNC controllers, but will also allow a systematic incorporation of additional cutting process constraints and actuator limitations into the motion planning problem (determination of feasible feed rate trajectories) [9]. Scalar parametrization is achieved by substitution of the inverse kinematic relations for the actuator velocities, q, and accelerations, q, from the equations derived in Section 2, (9) and (10), respectively, into the system dynamics equation (11). The result in the following parametrized vector equation of motion in terms of scalar variables V and A: r [Ft.,,,(V,d~,v,Vf,,Xs,h)] m ( q ) a + h(q)V 2 + G(q) = T. + D [ M.(V,da,v,Vf~) J'
(35)
where n x 1 vectors m and h represent the pseudo-mass and nonlinear inertia/coriolis, respectively, and are defined as m(q) = MIR~-RPs
h(q) = MRS-1{Pss - (R~ IPs)rRqq(R ~-IPs) } + (Rq IPs)rC(R~ 1Ps).
(36)
(37)
The new system consists of n scalar equations with independent variables V and A, tool velocity and acceleration along the path, respectively. All other parameters of equation (35) can be evaluated at each path point as explicit or implicit functions of the specified path vector polynomial in u.
Precision Trajectory Generation
1013
The coordinated actuator effort trajectory can now be obtained by solving the inverse dynamics problem, that is by solving equation (35) for Ta at each point on the specified path: T. = m(q(u))A + h(q(u))V 2 + G(q(u)) - Dr f/FtookV,da,e,V-s,Xs, [ ( F. . . . 1/ [ M.(V,da,v,Vf,) j. 6.
(38)
ALGORITHM IMPLEMENTATION
The coordinated trajectory generation algorithm was implemented in computer software and is presently run in Unix environment on a Sun-Sparc IPC work station. Written as a modular and expandable package, the code can be easily reused for different machine configurations by utilizing appropriate mass/inertia matrices from a subroutine library. This structure is particularly useful for implementing the algorithm in the next generation of the open architecture CNC controllers. The algorithm accepts information on the machined surface and tool path from a standard CAD system and generates coordinated position, velocity and torque/force time histories that can be fed directly into the machine actuator controllers for execution. A continuous representation of the surface and path is essential since the tool position, velocity, and acceleration must be evaluated on a fine mesh of path points. The present work utilizes cubic B-spline surfaces and curves, although any other representation can be used that provides continuous surface tangent and curvature. A standard CAD program can be used to generate the surface and path control points for the given part. Continuous parametric path is then defined using techniques discussed in Ref. [81. In addition to the path position vector, the tool approach vector is evaluated at each interpolated path point as a negative of the surface normal vector at that point. The corresponding fixed frame rotation angles (*xOyOz) for the tool orientation vector p are obtained by applying an appropriate kinematic coordinate transformation. Figure 3 provides the coordinated trajectory generation algorithm functional descrip-
~ PATH/SURFACE"~ DATA J
1 PATHKINEMATICS, MACHINEFORWARD
I
O : ,cATCSA.O
P(u), Ps(u), Pss(u) CU'I-nNGFORCE PREDICTION i
-
-
II
Ft!ol Ma
_.- ...... 1............
i FEEDRATEAND | l I ACCELERATIONI
u (t k )
INVERSEKJNEMATICSi
V(u), A(u)
1
PARAMETRIZED i INVERSEDYNAMICS SOLUTION (P|DS)
1 FIG. 3. Motion generation based on parametrized inverse dynamics solution (PIDS).
1014
D.C.H. YANGand A. D. GOLUB
tion. The problem of motion planning, though not discussed in this paper, is required to generate the feasible feedrate and feed acceleration profiles with their corresponding time history, u(t). Feasible motion planning subject to cutting process constraints is discussed in Ref. [9]. The following is a summary of the command generation algorithm steps: (1) Given the path and surface control points define the path interpolation vector function P(u), representing the tool position and orientation and its partials Ps(u) and Pss(U) using equations (3) and (5). (2) Output of the motion planning problem: desired feed rate and acceleration as functions of the parametric variable u for which time dependency is also provided. Given the controller fixed sampling rate, Atk, the discrete parametric values U(tk) are evaluated at times tk = tk-i + Atk (see Ref. [9] for automatic feed rate profile generation). (3) Evaluate P(U(tk)), Ps(U(tk)), Pss(U(tk)) and V(U(tk)), A(U(tk)) at times tk using functions defined in the previous steps. (4) Using the inverse of the kinematic transformation (equations (6)), evaluate actuator displacements q(P(U(tk))). (5) Evaluate the given machine kinematic properties--the inverse Jacobian and its Hessian matrix defined in equations (7) and (8)--as functions of the actuator displacements q(P(U(tk) ) ). (6) Evaluate terms of the parametrized dynamics equation, re(q), h(q) from equations (36) and (37), respectively, at discrete times tk(7) Evaluate cutting and contact force loads, Ft~ I and Ma, from equations (33) and (34). (8) Compute actuator velocity commands q using equation (9) and the feedforward effort commands T, using equation (38) at each tk. The above arrays of actuator displacement, velocity, and effort commands, q(tk), ~l(/k), and T,(tk) are preloaded for execution by the on-line controller. 7. PERFORMANCEEVALUATIONAND EXAMPLES To demonstrate the new algorithm performance, a detailed nonlinear time simulation has been developed for three- and five-axis milling machines. The simulator incorporates accurate models of standard sensors, controllers, plant dynamics, and external loads and disturbances (i.e. environment model) including the dynamic cutting force model with accurate representation of the high frequency components based on the work of Fu et al. [13]. Computed by the trajectory generator algorithm and fed into the machine simulator, the actuator commanded trajectories can be analyzed for their performance. Figure 4 provides a functional description of the command generator and the machine simulator. The machine parameters used for the simulation are as follows. Translational link/ actuator mass: X, 80 kg; Y, 80 kg; Z, 50 kg. Rotational link/actuator mass and diagonal elements of the moment of inertia tensor are (for five-axis machine only): roll, 40 kg; [0.7, 0.7, 0.25] kg.m2; pitch, 29 kg, [0.195, 0.18, 0.18] kg.m 2. Current controlled actuators with high bandwidth and negligible back-EMF are utilized. Actuators are assumed to provide sufficient efforts to accommodate motion for the high feed rate operation. Spindle power: 22.4 kW. Cutter: 6 flute, 19 mm diameter. Workpiece: aluminum casting with 250 kJ/m 3 specific cutting energy. Depth of cut: 2.54 mm. Assumed cutting pressures K r and Kt are in accordance with values used in Ref. [13] for conventional low speed machining and Refs [15] and [16] for high speed machining. In the first example of the five-axis machine, the task was to cut a corner profile on a cylindrical surface as shown in Fig. 5. Three selected feed rates, 0.3, 0.036, and 0.012 m/s represent a full spectrum of speeds--from high to low. The commanded trajectories for this task were computed using both the proposed and conventional
Precision Trajectory Generation
SUPERVISORY CONTROL
1.--
1015
ACTUATOR m-~:,:I
o n e MACHINE
NONLINEAR~
NONUNEJ~t
Commanded Trajectories
2. Motion Planning
3.--
I HIGH FIDELITY CU'I'rlNG FORCE MODEL
q(k) q(k)
SENSOR
DATA PROCESSING
F(k)
STATE ESTIMKnON
HAROWAnE i ~ ." :~L-, i "~
ON-BOARD
COMPUTER
(OBC)
'~':~:
'!! ~
' .: ~:l l f l R D W A R E
'' . , :
:
.
:
i
"
FI~. 4. Nonlinear simulation functional block diagram.
Y Z
z -C-
J
llllll?
-
7
F[6.5. Sample cutter path for five-axis machine: corner on cylindrical surface.
algorithms and were fed into the standard proportional-integral-derivative controller with actuator position and rate feedback. The results (Fig. 6, solid lines) show tracking error of the tool position and orientation for the above three-speed cases using the new trajectory generation method with inverse dynamic trajectories and cutting load predictor. For comparison, error traces obtained by utilizing conventional interpolators without cutting load predictions and without the inverse dynamics solutions are plotted in dashed lines. Also, a case of the conventional interpolator appended with the inverse dynamics trajectories but without the cutting load predictions is shown in the same figure in dotted lines. In all cases, the same control law is utilized to generate the closed loop results. At all speeds, superior performance of the new algorithm, clearly seen on the plots, owes much to dynamically accurate coordinated commands that improve the system transient response. The effect of adding the inverse dynamics is more visible at higher speeds when inertial loads become more pronounced. Yet, the error of ignoring the cutting loads in the dynamics model impacts the resultant tracking accuracy the most. It is seen from the figures that higher performance can be achieved at all speeds by accounting for the cutting loads in the trajectory generation phase. The improvement is mainly attributed to the cutting force predictions which alert
1016
D . C . H . YANG and A. D. GOLUB
~
Low Speed - 1.2 c m / s
~i
Medium Speed - 3.6 c m / s
~
'~
\,/
-]l
(2)
High Speed - 30.0 cm/s
i
/
(3) 1
",'~::. ~,
u
(2) (3)
Time [see]
Time [see]
Time [see/
(1) - New A p p r o a c h (2) - C o n v e n t i o n M Interpolator w i t h I n v e r s e D y n a m i c s (3) - Conventional Interpolator without Inverse Dynamics
Fro. 6. Five-axis machine: tool tracking error for high, medium and low speeds: (a) position error (RSS); (b) approach vector angular error. the actuators to generate more accurate effort profiles required to m o v e the machine coordinates while providing the desired cutting force at the tool. Figure 7 demonstrates a drastic difference in the computed actuator effort c o m m a n d s for a particular case of medium speed, with and without the cutting force predictions included in the inverse dynamics expression. In the case of trajectory generation with the cutting load predictor 60"
400 -
300 250
Z v
o
40.
X
200-
u
o
-
o >,
30-
200"
150"
.9,o e$
<:
20"
o
100-
0o
0' I
2 3 4 T i m e (scc)
5
... l
~
...
0
"rrrr
6
2 3 4 T i m c (scc)
...... I
'~'" 3 4 T i m e (see)
5
6
3O
40-
[-
,
50"
10'
z
,
100"
Computed Actuator Efforts:
30-
v
20
With Cutting Load Predictions
20-
<:
• .. I0-
s 1
2 3 4 Time (sec)
6
0
.... i 1
.... i 2 3 4 Time (sex)
5
FIG. 7. Computed actuator force/torque commands.
Without Cutting Load Predictions
Precision Trajectory Generation
1017
0.34
032 -
0200.28-
026"
.....
-: . . . . . . . . . . . . . .
~ ..............
, .......
.. . . . . . .
~......
~ .......
.'. . . . . .
024"
0 0
022"
C) 0.20 -
0.18" 0.16
.... 0.2QO
I .... 0210
I .... 0.220
I .... 0.230
I .... 0.240
I . . . . . . . . 0.250 0.260
t .... 0.270
i .... 0.280
I .... 0290
0.3C0
Coordinate Y [m] FIG. 8. Sample cutter path for three-axis machine: ellipse on flat surface.
(solid lines), the computed actuator trajectories are up to 30-fold higher than those computed without considering the cutting loads (dotted lines). Clearly, when cutting load predictions are included, more accurate actuator effort trajectories provide considerably better transient performance. In the second example of the three-axis machine, the task was to cut an elliptical profile on a flat surface (Fig. 8). Similar to the above five-axis machine, the threeaxis machine demonstrates superior tracking performance when the new command generator is employed as seen in Fig. 9. The high frequency small amplitude vibration component shown in plots is mainly caused by the periodic force load of the cutting process. The phenomenon of tool dynamic vibration has been addressed in the literature [17, 18]. This sustained nonlinear vibration can be seen particularly well at higher rpm (20,000) in the above examples. (Please note the difference in time and error scales between different plots of Figs 6 and 9). Vibration suppression and control is beyond the scope of this paper. 8. CONCLUSIONS
In the present work, a new CNC command generation approach for high performance milling of arbitrary contours and sculptured surfaces was presented. Compared with conventional interpolators, the new algorithm systematically accounts for the machine dynamic effects and cutting loads. By solving the inverse dynamics problem for a ,~
Low Speed - 1.2 cm/s
Time [sec]
Medium Speed - 3.6 cm/s
Time [sec]
High Speed - 30.0 cm/s
~ime [sec]
(1) - New Approach (2) - Conventional Interpolator with Inverse Dynamics (3) - Conventional Interpolator without Inverse Dynamics FIG. 9. Three-axis machine: tool tracking error for high, medium and low speeds: (a) position error (RSS); (b) approach vector angular error.
1018
D . C . H . YANGand A. D. GOLUB
system that i n c o r p o r a t e s the cutting load p r e d i c t o r a n d full n o n l i n e a r d y n a m i c s m o d e l , the p r o p o s e d m e t h o d g e n e r a t e s r e f e r e n c e c o m m a n d s that b e t t e r a n t i c i p a t e the system transient r e s p o n s e a n d t h e r e b y r e d u c e the t r a c k i n g error. T h e i m p r o v e d c o m m a n d e d t r a j e c t o r i e s w e r e t e s t e d for a wide range of o p e r a t i n g speeds. T h e results i n d i c a t e d that a first o r d e r a p p r o x i m a t i o n of the cutting forces i n c l u d e d in the inverse d y n a m i c s p r o b l e m p r o v i d e s significant p e r f o r m a n c e i m p r o v e m e n t for a b r o a d range o f f e e d r a t e s - - l o w , m e d i u m and high. T h e main r e a s o n is that the d o m i n a n t i m p a c t of the cutting loads on the a c t u a t o r s is no l o n g e r i g n o r e d during c o m p u t a t i o n o f c o m m a n d e d t r a j e c t o r i e s . F u r t h e r m o r e , the results indicate t h a t accounting for the inertial effects in the c o m m a n d g e n e r a t i o n p h a s e p r o v i d e s p e r f o r m a n c e i m p r o v e m e n t o v e r c o n v e n t i o n a l " k i n e m a t i c " i n t e r p o l a t o r s m a i n l y at h i g h e r f e e d r a t e s , when inertial effects b e c o m e c o m p a r a b l e with o r d o m i n a t e the effects o f the cutting force loads. T h e p r e s e n t w o r k is by no m e a n s a final s o l u t i o n to the c o m p l e x p r o b l e m o f highs p e e d and high-precision machining. F u r t h e r r e s e a r c h is r e q u i r e d in the a r e a s of o p t i m a l f e e d r a t e selection u n d e r v a r i o u s cutting process constraints, c h a t t e r r e d u c t i o n , and o t h e r effects. Acknowledgements--Alex Golub wishes to thank the educational fellowship program of TRW for its financial support.
REFERENCES [1] A. G. ULSOY, Y. KOREN and F. RASMUSSEN,Principal developments in the adaptive control tools, ASME J. Dynamic Systems, Measurements, Control, 105, 107-112 (1983). [2] Y. KOREN, Computer Control of Manufacturing Systems. McGraw-Hill, New York (1983). [3] Y. KORENand O. MASORY,Adaptive control with process estimation, Ann. CIRP 30, 373-376 (1981). [4] G. STUTE, Adaptive control, in: Proc. Machine Tool Task Force Conf. 4, Section 7.14 (1980). [5] O. MASORY,Real-time estimation of cutting process parameters in turning, Trans. ASME J. Engng Ind. 106, 218-221 (1984). [6] M. TOmZtJKA,J. H. On, and D. A. DORNFELD,Model reference adaptive control of the milling process, in: Control for Manufacturing Processors and Robotic Systems (edited by D. E. HARDTand W. J. Boor). ASME, New York (1983). [7] J. J. CHotJ and D. C. H. YAblG,Command generation for five-axis CNC machining, Trans. ASME J. Engng Ind. 114, 15-22 (1992). [8] M. E. MORTENSON,Geometric Modeling, Wiley, New York (1985). [9] A. O. GOLUB, Unified process planning and coordinated motion optimization for multi-axis machines in high-speed milling, Ph.D Thesis, Dept. of Mech., Aero. and Nucl. Eng., University of California, Los Angeles (1992). [10] M. VUKOBRATOV1Cand V. POTKONJAK,Dynamics of Manipulation Robots, Springer, New York (1982). [11] J. N. REDDY, M. L. RASI~tUSSEN,Advanced Engineering Analysis, Wiley, New York (1982). [12] S. JAIN and D. C. H. YANG, A systematic force analysis of the milling operation, Proc. Computer Aided Design and Manufacturing of Cutting and Forming Tools, ASME WAM, San Francisco, California, December 10-15 (1989). [13] H. J. Fu, R. E. DEVoR, S. G. KAPOOR,A mechanistic model for the prediction of the force system in face milling operations, Trans. SME J. Engng Ind. 106, 81-85 (1984). [14] F. M. KOLAR1TS,W. R. DEVRIES, A mechanistic dynamic model of end milling for process controller simulation, Trans. ASME J. Engng Ind. 113, 176-183 (1991). [15] R. KOMANDURi,J. MCGEE, R. A. TnOMI'SON,J. P. COVEY,F. J. TRUNCALE,V. A. TIPNIS, R. M. STACrt and R. I. KING, A methodology for establishing the machine tool system requirements for high-speed machining, presented at WAM, ASME, New Orleans, Louisiana, 9-14 December (1984). [16] F. J. MCGEE, High-speed machining of aluminum alloys, presented at WAM, ASME, New Orleans, Louisiana, 9-14 December (1984). [17] S. C. LIN, R. E. DEVOR and S. G. KAPooR,The effects of variable speed cutting on vibration control in face milling, Trans. ASMEJ. Engng Ind. 112, 1-11 (1990). [18] S. SMITh and T. DELIO, Sensor-based control for chatter-free milling by spindle speed selection, in: Proc. Advances in Manuf. System Engng, ASME WAM, San Francisco, California, December (1989). [19] D. C. H. YANGand F. C. WANG,A Quintic Spline Interpolator for Motion Command Generation of Computer-Controlled Machines, accepted for publication in Trans. ASME J. Mech. Design (1994).