Open Collections

UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Design and analysis of a CNC system for machining and monitoring Peng, Jie 1989

You don't seem to have a PDF reader installed, try download the pdf

Item Metadata

Download

Media
UBC_1990_A7 P46.pdf [ 5.11MB ]
Metadata
JSON: 1.0098515.json
JSON-LD: 1.0098515+ld.json
RDF/XML (Pretty): 1.0098515.xml
RDF/JSON: 1.0098515+rdf.json
Turtle: 1.0098515+rdf-turtle.txt
N-Triples: 1.0098515+rdf-ntriples.txt
Original Record: 1.0098515 +original-record.json
Full Text
1.0098515.txt
Citation
1.0098515.ris

Full Text

DESIGN A N D ANALYSIS OF A C N C S Y S T E M FOR MACHINING MONITORING By Jie Peng B.S. (Electrical Engineering) Shanghai Jiao Tong University  A THESIS SUBMITTED  IN PARTIAL F U L F I L L M E N T OF  T H E REQUIREMENTS FOR T H E D E G R E E OF M A S T E R OF A P P L I E D SCIENCE  in T H E FACULTY OF G R A D U A T E STUDIES MECHANICAL  ENGINEERING  We accept this thesis as conforming to the required standard  T H E UNIVERSITY OF BRITISH COLUMBIA  August 1989  © Jie Peng, 1989  AND  In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission.  Mechanical Engineering The University of British Columbia 2075 Wesbrook Place Vancouver, Canada V6T 1W5  Date:  Abstract  The development of unmanned machining systems has been a recent focus of manufacturing research. Computer Numerical Control (CNC) units, which monitor and control many tightly coupled machining tasks, are inseparable parts of the unmanned manufacturing system. This thesis addresses the detailed design and analysis of a modular CNC system for a miLling machine. The feed drive control system of the machine tool is thoroughly studied. The mathematical model for the feed drive control system, which consists of a motion controller, power amplifiers and DC-servo motors, is developed and experimentally verified. A method of estimating cutting forces from current drawn by feed drive motors is developed. The viability of the current sensor as a feeding-force sensing component is illustrated and experimentally tested on the milhng machine. Successful application of the current sensor to tool breakage detection in milling operation is presented. The performance of the multi-axis contouring system in precision machining is discussed. The contouring errors induced by feed drive positioning systems in CNC machine tools is investigated using the state space model of the CNC system. The influence of the cutting force on the accuracy of machining is shown to be negligible for feed drives driven by ball leadscrews. Various control strategies for the improvement of machining accuracy are tested in the simulation studies.  ii  Table of Contents  Abstract  ii  List of Tables  vi  List of Figures  vii  Nomenclature  x  Acknowledgement  xiv  1 Introduction  1  2 Feed Drive Modelling of a C N C Milling Machine  3  2.1  Introduction  3  2.2  Physical Architecture of the CNC Milling Machine  4  2.3  Modelling of Feed Drive Control System  6  2.3.1  Velocity Loop Modelling of the Feed Drive  6  2.3.2  Position Loop Modelling of the Feed Drive  10  2.3.3  State Space Modelling of the Feed Drive Position Control System  13  2.4  2.5  Experimental Verification of the Feed Drive Servo Model  17  2.4.1  Velocity Loop  17  2.4.2  Position Loop  18  Conclusion  19  3 Current Sensor Design and Its Application in Tool Breakage Detection 30 iii  3.1  Introduction  30  3.2  Design of A Cutting Force Estimator and Its Application  31  3.3  Model Development of A Remote Cutting Force Sensor  35  3.4  The Current Sensor Characteristics Analysis  38  3.4.1  Dynamic Analysis of Current Sensor  38  3.4.2  Steady State Analysis of Current sensor  39  3.4.3  Sensitivity Analysis of Current Sensor  42  3.4.4  Bandwidth Analysis of Current Sensor  43  3.5  Application of Current Sensor in Tool Breakage Detection  44  3.6  Some Future Work  47  4 Analysis of Contouring Errors Induced By Servo Dynamics  56  4.1  Introduction  56  4.2  Investigation of Contouring Errors Caused by Feed Drive Servo Dynamics  58  4.2.1  Steady State Contouring Error Analysis  59  4.2.2  The Influence of Cutting Forces on Contouring Accuracy  64  4.3  4.4  Simulation of Contouring Errors In Multi-axis Machining  65  4.3.1  Contouring With Perfectly Matched Axial Dynamics  66  4.3.2  Contouring With Mismatched Axial Dynamics  67  Strategies for Improvement of Contouring Accuracy 4.4.1  4.5  69  Simulation of Contouring by Including Acceleration and Deceleration Periods  69  4.4.2  The Use of Integral Action in the Feed Drive Control Loops . . .  70  4.4.3  Application of Cubic Curve-fitting Method  72  Conclusions  82  5 Concluding Remarks  101 iv  Bibliography  1 0 3  Appendices  1 0 7  A Parameters of the Feed Drive  1 0 7  B Parameters of G (z)  1 0 8  C  1 0 9  c  Parameters of G (z) d  D Listing of Programs  1 1 0  v  List of Tables  Contour Error at Diamond Cornering  vi  List of Figures  2.1  Architecture of the UBC CNC Milling Machine  21  2.2  Schematic Diagram of the Feed Drive and Control System of the CNC Milhng Machine  22  2.3  Operational Block Diagram of the Feed Drive Velocity Control Loop . . .  23  2.4  Equivalent Electromechanical Diagram of Armature-controlled DC Servo Motor  24  2.5  Nonlinear Dependence of the Friction on Feeding Velocity  25  2.6  Operational Block Diagram of Position Loop  26  2.7  Step Response of the Velocity Loop: with table-assembly connected . . .  27  2.8  Step Response of the Velocity Loop: with table-assembly disconnected . .  27  2.9  Frequency Response of the Velocity Loop: with table-assembly disconnected 28  2.10 Frequency Response of the Velocity Loop: with table-assembly connected  28  2.11 Velocity Step Response in Position Loop  29  3.12 Experimentally Measured Cutting Force in Feeding Direction  48  3.13 Feeding Force Estimation  48  3.14 Operational Block Diagram of I -T Loop a  3.15 I -X a  r  49  c  Loop Step Input Response, Input X = 1000 x kt (count)  50  T  3.16 I -T Loop Step Input Response, Input T = 1 (Nm) a  c  50  c  3.17 Steady State Armature Current J Investigation for Different Feedrates f a  3.18 Experimental Verification of Friction Coefficient B-modeUing, B = K = 450.0  c  51  K /f , c  c  52  c  vii  3.19 Frequency Response of the Current Sensor : Magnitude  53  3.20 Frequency Response of the Current Sensor : Phase  53  3.21 Instantaneous Armature Current & Feeding Force  54  3.22 Average Resultant Current I (t) History Per Tooth Period  55  3.23 Differenced Average Resultant Current AJ (i)  55  4.24 Structure of the Cross-coupling Controller  83  4.25 Block Diagram of a Two-axis Contouring System  84  4.26 Contour Error Calculation From Axial Following Errors  85  4.27 Velocity Command Profile  86  4.28 Standard Test Workpiece Profile  86  4.29 Illustration of Contour Error and Dimensional Error on Workpiece . . . .  87  4.30 Velocity Command Profile for A Square Configuration Machining . . . .  88  4.31 Velocity Command Profile for A Diamond Configuration Machining . . .  88  4.32 Square Cornering With Perfectly Matched Axial Dynamics  89  4.33 Square Cornering With Mismatched Axial Dynamics  89  4.34 Diamond Cornering With Perfectly Matched Axial Dynamics  90  4.35 Diamond Cornering With Mismatched Axial Dynamics  90  4.36 Circular Contouring With Perfectly Matched Axial Dynamics  91  4.37 Circular Contouring With Mismatched Axial Dynamics  91  4.38 Velocity Command Profile for A Square Configuration Machining . . . .  92  4.39 Velocity Command Profile for A Diamond Configuration Machining . . .  92  4.40 Square Cornering With Matched Axial Dynamics  93  4.41 Square Cornering With Mismatched Axial Dynamics  93  4.42 Diamond Cornering With Matched Axial Dynamics  94  4.43 Diamond Cornering With Mismatched Axial Dynamics  94  a  a  viii  4.44 Diamond Cornering With Integration Compensation Included (1)  . . . .  95  4.45 Diamond Cornering With Integration Compensation Included (2)  . . . .  95  4.46 Illustration of N-segment Spline Function  96  4.47 A One-segment Spline Function Approximation of A Diamond Corner . .  97  4.48 A Two-segment Spline Function Approximation of A Diamond Corner . .  97  4.49 Position Profiles of the One-segment Spline Fit for A Diamond Corner . .  98  4.50 Position Profiles of the Two-segment Spline Fit for A Diamond Corner  98  4.51 Individual Axis Velocity Profiles in Diamond Cornering, One-segment Spline Fit  99  4.52 Individual Axis Velocity Profiles in Diamond Cornering, Two-segment Spline Fit  100  ix  Nomenclature  A : state transition matrix for the velocity loop v  A , A : axial accelerations x  y  A : state transition matrix for the continuous block of the feed drive c  A J : the zth spline coefficient matrix a, b: digitalfilterparameters b(t): time vector B : input transition matrix for the velocity loop v  B : input transition matrix for the continuous block of the feed drive c  B: friction coefficient C: output matrix of the position loop D(s): Laplace transform of the digital compensator d : screw shaft diameter p  F: resultant force e , e : axial position error x  y  e : contouring error ac  F : average force in longitudinal direction ax  F : average force in transverse direction ay  F : Feeding force c  F : radial force r  F : tangential force t  F : force in longitudinal direction x  F : force in transverse direction y  x  f : feeding velocity command c  G: discrete time state transition matrix of the position loop G : transfer function for the continuous part of feed drive c  Gci: closed loop transfer function for the feed drive G : open loop transfer function of the feed drive 0  H : tachometer constant g  H : input transition matrix for the velocity loop v  I : Armature current a  I : average amature current av  AI : the first order differencing of the average amature current av  J : equivalent inertia reflected onto the motor shaft e  K : motor armature current feedback gain. a  Kb', voltage constant of the motor (back EMF) Kd: closed loop gain for the feed drive Kd- D/A converter gain K : encoder gain e  K\\ velocity error preamplifer gain K : digitalfiltergain p  K : specific cutting presure s  K : motor torque constant t  K: v  PWM voltage gain  k: time index L : motor armature inductance a  M(UJ):  magnitude response of the velocity loop  7Y: spindle speed  xi  p : pitch of the leadscrew shaft : state transition matrix for the velocity loop Ra\ motor armature resistance Ri: boundary condition vector r: position command vector i: velocity command vector S : velocity command signal gain of the amplifier g  s: Laplace transform variable T: sampling period of control loop T : cutting torque applied on motor shaft c  T : tachometer feedback signal gain g  T  m  : useful motor torque  T : motor electrical time constant c  T : motor mechanical time constant m  u„ : velocity loop input vector u : input vector of the position loop v : ball screw nut efficiency V : armature voltage a  V : velocity command c  W : angular velocity of the motor shaft. z: state vector of the position loop x : velocity loop state vector v  x : continuous block state vector c  X : position reference input r  X : actual position of the table a  xii  y: output vector of the position loop u>„: natural frequency of velocity control z: Z transform variable (: damping ratio  xiii  Acknowledgement  I am grateful to a number of people for their assistance during the whole period of the research and the writing of this thesis. First and foremost I must thank my supervisor Dr. Altintas for his continuous support and advice during my graduate studies at UBC. I would also like to thank research engineer G. Wright for helping to set up the experimental facilities for the research. Finally, I would like to thank my wife Wei for her unreserved support, understanding and encouragement throughout these two years. Without it, it is impossible to finish this work. This work was supported by NSERC of Canada under Grant Number 86164.  xiv  Chapter 1  Introduction  The present trend of manufacturing research is to developflexible,self adjusting and unattended intelligent machining systems. The limited presence of operators at unmanned machine tools leaves the supervision, monitoring and control tasks to computer controllers. Some of the important machining process monitoring and control tasks are: in-process detection of tool wear and breakage, chatter detection and avoidance, adaptive control of chip load for maximum metal removal, geometric adaptive control for precision machining and in-process gauging [32]. These tasks must be executed in parallel since they have a coupled effect on the cutting process. In order to implement the unmanned machining tasks, the machine tool must be equipped with sensors and a multi-processor based Computer Numerical Controller where the computation-demanding tasks are assigned to dedicated processors. Communication between tasks, must be carried out in short intervals. For example; the Adaptive Control task must be able to send feeding velocity updates at control intervals of 10 to 20 ms to the amplifiers. Although some commercial CNC systems are multi-processor based, they do not provide the flexibility to add sensing, monitoring and control modules. This thesis describes the design of a very modular research CNC system which allows integration of additional monitoring and control modules. The proposed system enables simultaneous machining process control, tool condition monitoring and cutting force  sensing, which are coupled in practical machining operations. The modular C N C system consists of off the shelf units, and can be easily realized at other research laboratories. 1  Chapter 1. Introduction  2  The thesis is organized as follows. Chapter 2 illustrates the architecture and physical components of the developed modular CNC system for a milling machine, which is converted from a three-axis vertical milling machine. An accurate, discrete-time state space model for the feed drive control servo of the CNC system is developed which can be employed in the numerical simulation. The model allows simulation study of all state variables (i.e., actual table position, velocity and motor current) for a given reference position and cutting force disturbance. This is particularly important for the analysis of multi-axis contouring accuracy under cutting force disturbances. Transfer functions of the analog and digital components of the feed drive control system are also given for the purpose of analysis of the steady state error and frequency characteristics. The experiments are carried out to verify the developed models. Chapter 3 presents a design method of estimating cutting forces from the motor armature current measurements. The characteristics of the cutting force estimation from the current sensor are investigated. As an application of the current sensor, the previously developed on-line tool breakage detection algorithm is illustrated by using the force estimated from the current sensor. Multi-axis precision machining is the main topic of the Chapter 5. The analysis of multi-axis contouring errors in CNC machine tools which are due to the performance of the feed drive position control servos is addressed. A completely modelled feed drive position control system, which is developed in preceding chapter, is employed. Several control strategies are tried to minimize the contouring error in milling operation. The thesis is concluded with a short summary of the main results.  Chapter  2  F e e d D r i v e M o d e l l i n g of a C N C M i l l i n g  2.1  Machine  Introduction  A servo is a closed-loop system used to control the position, velocity or acceleration of a mechanical load. Although a great deal of work has been done in servomechanism theory [13], [14], a sufficiently detailed analysis of feed drive servo for precision multiaxis contouring, adaptive control and monitoring of the machining process has not been accomplished. Significant early work in the area was carried out primarily by Bollinger [5,12], Stute [30,31] and Koren [15,17]. They concentrated on engineering design methods for C N C systems where approximate models of the feed drive servo were sufficient. Unmanned machining tasks, however, and in particular precision contouring and adaptive control, require more complete modelling and analysis of the feed drive control system so that drive control dynamics can be decoupled accurately from the machining process dynamics. Several researchers have investigated control strategies to minimize the machining errors produced by cutting torque disturbances and axis gain mismatch during multi-axis contouring operations [11],[16],[18],[27]. They approximated the velocity servo as a first order system by neglecting the dynamics of the motor's winding. Researchers who have contributed to the adaptive control of machining forces, treated the feed drive system as a gain [20],[33], first order [7] or second order [22],[34] system. In the following analysis, a DC motor and power amplifier based velocity servo is treated as a second order dynamic system. With the digital compensation filter, the complete feed drive system  3  4  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  will be modelled as a fourth order discrete-time system. Analysis and control algorithms, which involve high frequency sampling and high feeding velocities, are sensitive to the unmodelled dynamics. In precision machining small oscillations in the feed drive servo, due to the second order dynamics, will be felt on the contoured surfaces. Unmodelled dynamics of the feed drive system may cause instabilities in adaptive control of the machining process. Recent adaptive control experiments carried out in our laboratory [21] has been successful mainly due to the precision modelling of the time invariant feed drive control system. In this chapter, detailed design and analysis of a modular CNC milling machine is presented. Analysis of a machine tool feed drive control system is discussed in detail. The feed drive servo system is divided into continuous and digital blocks, which represent the primary structure of current CNC feed drive systems. The model of the feed drive control system is derived first and then experimentally verified. An accurate, discretetime state space model of the feed drive servo system for monitoring and control of CNC system is developed. The model allows simulation of all state variables (i.e., machine table position, motor shaft velocity and motor armature current) for a given reference position, feeding velocity and cutting force disturbance. Particularly, this model can be used to analyze interaction between machining process and feed drive control system. 2.2  Physical Architecture of the C N C Milling Machine  The research CNC milling machine typically consists of three major parts. They are machine tool, feed drive units and the control s y s t e m , In our CNC laboratory, retrofitted machine a  5  as s h o w n i n F i g u r e 2.1.  t o o l is  a vertical  milling machine with  kW AC motor connected to a spindle drive gear b o x . T h e t h r e e f e e d i n g axes ( x , y  and z) of the machine have recirculating ball screw drives with 600, 400 and 120 mm  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  5  travel limits respectively. All three linear axes are driven by permanent magnet DC servo motors which are separately powered by three pulse width modulated (PWM) amplifiers. The motor armature shafts are directly connected to the lead screw shafts. The motors are capable of delivering sufficient continuous torque (4Nm) during machining at desired feeding velocities. A Motorola M68008 processor based motion control board [10] is used to control feeding velocity and positions of the three linear axes of the machine. The motion control card has 16 input/output (I/O) lines for logic control functions. Coolant, spindle, travel limit, feed-hold, amplifier shut-down and other auxiliary logic control signals are wired to the I/O lines. Contouring (i.e., linear and circular interpolation), acceleration, deceleration and digital compensation functions can also be carried out by the motion control board. The board resides in a MULTIBUS card cage which can take several motion control cards (i.e., for an additional rotary axis control), data acquisition board and process control board (i.e., tool condition monitoring, process identification and adaptive control) for modular unmanned machining research. In order to use the existing peripheral devices efficiently, the Multibus is connected to the personal computer (PC) bus through a bus interface adaptor. An Intel 80286 CPU with an 80287 mathematics co-processor based PC is used as a master computer to distribute monitoring and control tasks to other peripheral modules on the Multibus, see Figure 2.2. The machine tool can be used as a standard CNC machine by loading an in-house developed NC language emulator in PC. Feeding velocity, acceleration, deceleration and digital filter parameters can be changed in real time by sending the desired values from the PC to the motion control unit via the bus adaptor. This feature is particularly important and essential for adaptive control and machine tool monitoring research.  6  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  2.3  Modelling of Feed Drive Control System  The feed drive control system of CNC milling machine is composed of the following components: a Galil DMC-230 motion controller [10], three UM3015 UNIDRIVE PWM power amplifiers and three Baldor DC servo motors [4]. Each motor contains a tachometer and an encoder for velocity and position feedback respectively. The feed drive control system accepts the motion command either from the host computer (IBM-PC/XT), or from a monitor terminal (digital-VT100). A schematic diagram of the feed drive and control system is given in Figure 2.2. 2.3.1  Velocity Loop Modelling of the Feed Drive  The feed drive control system consists of two basic loops. One is velocity loop, and the other is position loop. The velocity control loop of a feed drive is composed of a PWM power amplifier, a DC servo motor and a velocity feedback unit tachogenerator. The operational block diagram of the velocity control system, shown in Figure 2.3, is derived from detailed analysis of the UM3015 amplifier circuit diagram. The power amplifier accepts velocity command signals from the DMC-230 digital motion control unit [10]. The signal is preamplified by gain S and compared to an actual g  velocity signal measured by the tachogenerator feedback unit. The resulting velocity error signal is converted to a current by the current amplifier which has a gain of Ki. The amplifier output current is compared with the armature feedback current signal pulled from a current sense coupler. The PWM circuit, which is modelled as a gain of K , v  accepts the current error and outputs a mean voltage of V  a  to  the  armature terminal of  the DC motor. An armature-cont rolled DC servo motor has an equivalent electro-mechanical relation as is shown in Figure 2.4. The performance of the DC servo motor may be analyzed using  Chapter 2. Feed Drive Modelling of a CNC Milling  Machine  7  this equivalent diagram. For a voltage V applied to the motor armature, the armature a  current I can be determined by a  V = RI a  a  +L  a  ^ - + KW at  a  (2.1)  b  The armature current produces a magneticfieldbetween the armature and constant field stator, which gives a torque proportional to the rotation of the motor. T  m  =K I t  (2.2)  a  The motor torque T is used to accelerate the inertia J , which is the combined motor m  e  and load moment of inertia, and to overcome the friction and cutting torque reflected on to the motor shaft, T  m  dW = J— + BW + T e  (2.3)  c  Algebraic manipulation of the amplifier part in block diagram (Figure 2.3 ) gives the applied motor armature V in terms of the velocity command V , which is the actual a  e  input applied to the power amplifier [26] V = K [Kj (S V - T H W) - K /„] a  v  g  c  g  g  (2.4)  a  Substituting Equation (2.4) into (2.1) yields K [Kj {S V - T Hg W) - K /„] = R I v  g  c  g  a  a  +L  a  a  ^ + KW dt b  i.e., dl l t a  KK — L v  =  +R  a  a  a  K + K KiT H L b  h  v  g  g  a  Also, substituting Equation (2.2) into (2.3)  e  a  yields  dW J — + BW =  K KiS L v  +  K I -T t  a  c  g V c  (  2  5  )  Chapter 2. Feed Drive Modelling of a CNC Milling  Machine  i.e.,  dW  K  dt  J  t  B  r  L  J  e  1  W  ~ T J  e  r  e  Rewriting Equation (2.5) and (2.6) in vector matrix form gives x —A x v  v  -j-  v  B  u  v  v  wnere  V  la  c  W  La  La  B Je  Je  La  U  B = v  0  Je  Hence, the corresponding discrete state space description can be derived, x (k + 1) = $ v ( T ) x (k) + H {T) v  v  V  u (k) v  where T: the sampling period used in system discretization. $„(T): the system state transit matrix. x (k):the system state vector measured at the kth. v  sampling period. H (T): the input transit matrix. V  u (k): the input vector applied to the servo system v  at the kth sampling period.  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  9  and  $ {T) = e^  (2.9)  1  V  H (T)=  [ e ' dt-B T  V  The matrices A  v  and B  trices 4?„(T) and H (T) V  v  (2.10)  A T  v  Jo  can be formed if the system parameters are known. The ma-  can then be evaluated by Equations (2.9) and (2.10). Therefore,  the recursive solution for the discrete state space Equation (2.8) can be found. In addition, the transfer function between the armature current and the applied armature voltage can be derived by taking the Laplace transform of Equation (2.1). = JZ*L_  W  where r  = L /R  e  a  a  ,  2  1  1  )  is the electrical time constant of the motor. The transfer function  between the armature current and the motor angular velocity is obtained from Equations (2.2) and (2.3) by dropping T : e  m^jwL where r  m  = J /B e  (212)  is the mechanical time constant of the feed drive system. Substituting  Equation (2.11) into (2.12), we have  1/R  Kt/B  _  V (s)  a  r * + l'r.«+ 1  a  1  l  6  )  m  Considering relationship between V and V in Equation (2.4), we can therefore obtain a  c  the transfer function for the feed drive velocity control loop,  W{s)  K  V (s)  s* + K s + K  where the parameters Ki, K  2  x  c  2  and K3 are defined :  Kt S Ki K LJ g  a  v  e  3  (2.14)  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  B K  R  a  + K  a  =  2  La  Je  K  K  v  10  B  =  3  (R  a  + K  v  K)  + K  a  J  (K  t  e  b  L  + H  g  T  g  K  v  K ) t  a  In Equation (2.14) the velocity loop of the feed drive is modelled as a second order dynamic system, in which the velocity command V sent to the amplifier port is the c  input and the motor shaft velocity W is the output. The parameters K , R , L , K and H are provided by the manufacturers of the amt  a  a  b  g  plifier and the DC servo motor. The remaining power amplifier parameters (K , Kj, K , a  v  S and T ) are determined by measurements on the amplifier board. The details of the g  g  parameter measurement can be found in [26]. It must be noted that for the type of guideways with which our machine is equipped, the friction coefficient B is not constant. The CNC milling machine has manually lubricated guideways without any roller bearing contact. Thus, the resulting friction coefficient between the table and guideway is very much velocity dependent, see Figure 2.5. The friction coefficient is identified from the armature current and steady state velocity measurements, by using Equations (2.2) and (2.3). The constants and measured parameters of the feed drive servo are listed in Appendix. As can be seen from Figure 2.5, the friction coefficient B is inversely proportional to the speed, and independent of the position of the table on the guideway. The characteristics of the curve indicates that both Coulomb friction (i.e., constant static friction torque) and viscous friction are present in the system. In order to linearize the system, an average viscous damping coefficient of B = 0.09 (Nm/(rad/sec)) 2.3.2  is used in the following chapters unless indicated otherwise.  Position Loop Modelling of the Feed Drive  The position control system of the feed drive is composed of a digital motion controller, a position feedback unit (encoder), as well as the basic velocity control system. The  Chapter 2. Feed Drive Modelling o f a CNC Milling Machine  operational block diagram is given in Figure 2.6.  11  It can be seen that the feed drive  control system is actually a multivariable system. Two inputs are position reference X  r  and cutting torque T , and the output is the machine table actual position. The influence c  of cutting torque T on the table position will be left to the third chapter. c  The actual table position,which is measured by the shaft encoder, is fed into an up-down counter in the form of pulse trains whose frequency is equal to the actual feeding velocity. The up-down counter receives a reference position command from the host computer and subtracts the actual position to give a position error. This position error is then processed by a digital lead-lag compensating algorithm. Furthermore, the compensated signal is sent out to power amplifier as a velocity command to drive the motor and move the table. Each position pulse will be called a count. A two channel encoder with one thousand slots and a quadrature decoding circuit is used to obtain a corresponding count length of : 1 count =  V 4000  mm  where p is the pitch of the feed screw. Our research C N C machine's feed screw has a pitch of p — 5.08 mm, thus 1 count = 0.00127 mm. The gain of the encoder is given as, v  4000 2  'counts' L rad .  7r  (2.15)  The up-down counter acts like an integrator which contains the instantaneous position error. Since the input to the motion controller is either parabolic (i.e., acceleration and deceleration period) or ramp type (i.e., steady state velocity), the up down counter and encoder with a gain K  e  can be cascaded to the end of the velocity loop as :  w(s)  =  T  ( 2 1 6 )  Combining Equation (2.16) with the velocity loop transfer function of the velocity loop (Eqn. 2.14) yields the transfer function of the continuous part of the feed drive control  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  12  system :  The velocity control signal V of the digital motion control unit is applied to the power c  amplifier at T = 1 ms intervals via a D/A converter which has a gain of Kj. The zero order hold equivalent of the G (s) for given one millisecond sampling interval is: c  G (z) = K (l - z- ) Z[$i&] 1  e  d  3  or which, after taking the z transform, becomes  KDKXKE  bz +b + b 2  2  ~ ~K7~  GC[Z)  (Z -  lZ  0  l)(z» + a  + a)  lZ  (  2  1  8  )  0  The derived expressions for the parameters of G (z) are given in the Appendix B. c  Discrete position error E(z) is the difference between the reference and actual position of the table: E(z) = X (z) - X (z) r  (2.19)  a  The position error is passed through a digital compensation filter whose parameters are tuned to provide a smooth position transient response without any overshoot. The mathematical model of the digital filter D(z) is: D(z) = KP i ± |  (2.20)  The closed loop transfer function of the complete feed drive control system is derived as follows: <A -  r  X  A  [  Z  -  )  X (z)  D  {  Z  )  r??n  G C { Z )  1 + D(z)G (z)  r  c  or c t v  '  z  c  i  + az + az +az + a 3  3  2  2  1  K Q  '  The parameters of the closed loop transfer function G i(z) are given in the Appendix C. c  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  13  From Equation (2.22), we can see that the feed drive position control system is a fourth order dynamic system, in which the position reference command X is the input r  and table position X is the output. The tuning of the digital compensator parameters a  is based upon two critical performance requirements : the first is the smooth transient response in order to avoid oscillatory cutting during velocity changes; and the second is the minimization of the steady state position error (i.e., following error) in order to achieve high precision multi-axis contouring. 2.3.3  State Space Modelling of the Feed Drive Position Control System  A state space model of the feed drive control system is developed for the analysis and simulation purposes. The servo is again divided into continuous and discrete sections. The continuous part of the system consists of the velocity control loop (Eqn.2.8) and the up-down counter (Eqn.2.16). Three system variables : the armature current I , the a  motor shaft velocity W and the actual position X , which are interested to us, are chosen a  as states.  Applying the inverse Laplace transform to the transfer function of the up-down counter and encoder (Eqn. 2.16) gives : dX {t) a  = K • W(t)  (2.23)  e  dt  Adding Equation (2.23) into (2.8) yields x (t) = A x (t) + B e  where state vector x [t) c  a n d input  c  c  e  c  vector u (t) are d e f i n e d as c  /.(*)  x (t) = c  W(t) Xa(t)  (2.24)  u (t)  u,:(0  Vc(t) Tc(t)  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  14  A,, and B are constant matrices: c  La  A =  La B  c  J.  0  0  0 K,KjS  0  a  L  B =  a  0  c  0  0  The state Equation (2.24) represents the continuous part of the feed drive control system, which has the following discrete equivalent solution for an observation interval of T — 1ms [25] : x (k + 1) = $(T) x (k) + H{T) u (k) c  e  (2.25)  c  where state and input vectors at sampling instant kT are defined as : w  x (k) = c  V (k) c  u (k)  W{k)  c  T (k) c  . X (k) a  <f>ll 012 0 = e  H(T) =  r  .Art  021  022  0  031  032  0  dt • B = c  hu  h  hi  h  ^31  ^32  2  X2  22  Jo  The matrix $(T) is computed from the eigenvalues of the A matrix for the discrete-time c  equivalent of the continuous-time system.  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  15  The discrete-time block of the position control loop consists of digitalfilterD(z) and D/A converter with gain K . The velocity command signal can be expressed in z-domain d  as: V (Z) = i f p ^ T *  z+ b  C  K  * • IM*)  -  (2.26)  *.(*)]  The equation can be rearranged as : V (z) = K K [X (z) - X (z)] + V (z) d  (2.27)  V (z) = K K  X (z)}  (2.28)  c  p  d  r  a  where d  p  d  [X (z) r  z+ b  a  The new variables V and V can be treated as the fourth output and the fourth state e  d  respectively. After rearranging Equations (2.28) and (2.26) and taking their inverse ztransforms, the following discrete-time state equations are obtained: V (k + l) = -b V {k) + K K (a - b) [X (k) - X (k)] d  d  p  d  r  a  V (k) = K K [X {k) - X (k)} + V (k) c  p  d  r  a  (2.29) (2.30)  d  The discrete-time state Equation (2.29) can be combined with the state Equation (2.25) which represents the discrete-time equivalent of the continuous part of the feed drive servo system. An algebraic rearrangement of Equation (2.29), (2.30) and (2.25) yields the following complete state equations for the feed drive servo [26] : *(Jfe + l) = G(T) • x(k) + T(T) • u(k) y(k)  (2.31)  = C • x(k) + D • u(k)  where state, input and output vectors are defined respectively as: V {k) d  x(k) =  W  W(k) X (k) a  u(k) =  X (k) r  y(k)  '.(*) W(k) X (k) a  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  16  The state transition matrix G(T), input matrix T(T), output matrix C(T) and D(T) are defined in order as follows: -6 G(T) =  0  0  p  d  hu  0 n 0 n 013 -  hKK  h\  021 022 023 ~  h \K K  d  hl  031 032 033 —  h iK K  d  2  3  K K (a p  n  p  p  1 0 0  -K K  0 10  0  0 0 1 0 0 0  p  p  3  d  p  p  0  h2  d  h KK 3X  2  p  d  h KK 2x  n  - b)  d  hKK  r(r) =  c=  -K K (a-b)  2  h  d  32  KK p  d  d  0  0  0  0  0  0  1  0  0  D =  One of advantages of this state space model is that the output vector y(k) gives access to four useful system variables in the feed drive servo system, namely: the velocity command V , the armature current I , the motor shaft velocity W and the machining c  a  table position X for a given position command X and applied cutting torque T . Other a  r  e  variables in the control system can be easily found by multiplying them with the appropriate gains according to the block diagram shown in Figure 2.6. Based on this state space model, a simulation program is developed, which allows us to study the feed drive system performance under different milling operation conditions.  17  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  2.4  Experimental Verification of the Feed Drive Servo Model  The model of the feed drive servo is experimentally verified in both frequency and time domains. The verification is carried out separately for the velocity and position loops. 2.4.1  Velocity Loop  Experimental step response of the velocity loop is obtained with and without the tableassembly by applying V = 1.0 Volt to the terminal of the power amplifier and measuring c  the velocity from the tachometer simultaneously. Analytical (Eqn.2.8) and measured step responses of the velocity feed drive control are shown in Figure 2.7. The step response results measured without the table indicate that the theoretical and experimental results are in agreement, see Figure 2.8. There is a high frequency component of the step response when the motor is attached to the leadscrew, which is due to the mechanical dynamics of the leadscrew and table assembly. Overall, the tuned dynamics of the velocity loop are sufficiently fast for controlled milling machine. The transfer function of the velocity control loop, as derived in Equation (2.14) can be rewritten as: Y!M  =  £  ( 2  32)  Here the natural frequency w and damping ratio £ of the velocity loop are defined as : n  w„ - \JK~3  2y/K*  where K\,K2  > 0. The frequency response of the velocity loop is analyzed in order to  determine the bandwidth of the controller. The magnitude ratio A/(w) and the phase  18  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  angle <p(u>) of the closed velocity loop controller can be derived from Equation (2.32) as: M(w)  =  20 logi^/K ) 3  - 2Qlog [(1 - u /u>l) + 2  2  (2fr/u ) ]i 2  n  ' >  (2.33)  The frequency response measurements are carried out with a Bruel & Kjaer Fourier analyzer. The analyzer's random signal generator output is fed into the input terminal of the amplifier, and the velocity is measured from the tachogenerator output. The simulated and measured frequency response results are shown in Figure 2.10. Although the simulated and experimental responses agree fairly well, there are some deviations. A separate frequency response measurement is carried out by removing the motor from the table. When the model is modified to include only the motor shaft inertia and friction, the measured and simulated frequency response results are in perfect agreement (see Figure 2.9). Hence, it is concluded that the small deviations in the frequency response test with the table-assembly are due to the Coulomb friction and mechanical dynamics of the feed drive assembly. The results also indicate that the servo is able to follow feeding velocity changes up to 65 Hz which is the bandwidth of the velocity loop, see Figure 2.10. 2.4.2  Position Loop  In addition to the velocity loop, the position loop consists of an encoder, a digital filter and an integrator (i.e., up-down counter) which are mostly digital and their transfer functions are precisely known, see Figure 2.6. Digital filter parameters are tuned in such a way that the position loop is well damped (i.e., without any overshoot in the step response) and the rise time is reasonably short. The following and found to be satisfactory : D{z) = 2.5 •  z - 0.8825 z  digital filter is selected  Chapter 2. Feed Drive Modelling of a CNC Milling  19  Machine  The remaining parameters of the position loop are listed in the Appendix. The calculated values of the state space Equation (2.31) are given as: 0 G(T) =  0  0  0.1724  13.5962 0.5085 -2.4203 -2.6555 0.6231  0.0617  0.8638  -0.1217  0.1392  0.0219  0.6028  0.9728  T(T) =  -0.1724  0  2.6555  0.3749  0.1217  -0.2634  0.0272  -0.0859  1 0 0 -0.195 C =  0 10  0  0 0 1 0 0 0  0.195 0 0  0  0  0  0  1  0  0  D =  The position loop is experimentally validated by sending a feedhold command to the motion controller during steady state feeding of the table. The feedhold command sets the feeding velocity command to zero and bypasses the deceleration velocity shaper. The resulting feeding velocities are shown in Figure 2.11, where it is apparent that the analytical and experimental values are in good agreement. 2.5  Conclusion  In this chapter, the architecture of the UBC CNC milling machine has been presented. A mathematical representation for the feed drive control system of the UBC CNC milling machine has been developed and validated. The model presented describes the dynamic  Chapter 2. Feed Drive Modelling of a CNC Milling Machine  20  behavior of the feed drive control system. The state space model not only explicates the external behavior, but also reveals the internal characteristics of the feed drive control system. The model developed here has been experimentally validated. The results show that the given model is a satisfactory idealization of the feed drive system of the CNC machine, which includes crucial feed drive parameters and interactionship.  Chapter 2. Feed Drive Modelling of A CNC Milling  Machine  Figure 2.1: Architecture of the UBC CNC Milling Machine  Chapter 2. Feed Drive Modelling of A CNC Milling Machine  22  POSITION F E E D B A C K  IBM  DC SERVD MDTDR AMPLIFIER  P C  T VELOCITY  FEEDBACK  DC S E R V D MOTOR (X-AXIS)  P C BUS TD MULTIBUS ADAPTOR  r-  MULTIBUS QR RS 232  DMC-230 MDTIDN CONTROLLER  I T  POSITION F E E D B A C K DC SERVO MDTDR AMPLIFIER VELOCITY  MULTIBUS CARD CAGE  V T  100  FEEDBACK  DC S E R V O MOTOR <Y-AXIS>  POSITION F E E D B A C K  DC SERVO MDTOR AMPLIFIER VELOCITY  \\/////////,  FEEDBACK  DC S E R V O MOTOR CZ-AXIS)  Figure 2.2: Schematic Diagram of the Feed Drive and Control System of the CNC Milling Machine  Figure 2.3: Operational Block Diagram of the Feed Drive Velocity Control Loop  Chapter 2. Feed Drive Modelling of A CNC Milling  Ia +a  WvW  Machine  24  MECHANICAL  La O -  ELECTRICAL  W  J ,B e  Figure 2.4: Equivalent Electromechanical Diagram of Armature-controlled DC Servo Motor  Chapter 2. Feed Drive Modelling of A CNC Milling  Machine  Figure 2.5: Nonlinear Dependence of the Friction on Feeding Velocity  9 to Torque Zero Order  Feed BrMt Input  I/A Gall  Hold  OLID  -J3LU1  ic  Z + a  T  Amplifier Signal Gain  Torque Constant  Encoder Got) Up-Down Counter  l c  aw  4  nptat to Analog Converter  tvi  Taohogea G«» -  rt  cu 1  1-e s  CD  Tdphogen. Constant U J avafT  Js+B  VELOCITY FEEDBACK  RK1I1UN FEEDBACK  X.  b a.  I  S3 CK!  O »•+>  9 S3  6 ta ro  Figure 2.6: Operational Block Diagram of Position Loop  to  Chapter 2. Feed Drive Modelling of A CNC Milling Machine  27  Experimental o w B  Theoretical V  o  40 TIME  [SECOND]  Figure 2.7: Step Response of the Velocity Loop: with table-assembly connected  Theoretical  o w  Experimental  ID  \  * s u o  40 TIME  [SECOND]  Figure 2.8: Step Response of the Velocity Loop: with table-assembly disconnected  Chapter 2. Feed Drive Modelling of A CNC Milling Machine  28  w K  « w 0 A  OHUUTIOX  X  npsJUMKirrii  TTfTT  TTJTT  20  40  80  FRIQUENCT [Hi]  FUQUIXCT [Hx]  Figure 2.9: Frequency Response of the Velocity Loop: with table-assembly disconnected  -20-  w H K  0  -40-  W Q W m  „  -00 -  -eo  -ISO 40  FREQUENCY [HZ]  80  80  0  A  sarouTiox  X  nranmrm  »20  40  80 80  , FRBQUBNCY [HZ]  Figure 2.10: Frequency Response of the Velocity Loop: with table-assembly connected  80  Chapter 2. Feed Drive Modelling of A CNC Milling  Machine  29  28-  84" 2220 18"  0.00  20.00  40.00  60.00  80.00  100.00  120.00  140.00  160.00  TIME (ms)  Figure 2.11: Velocity Step Response in Position Loop  Chapter 3 Current Sensor Design and Its Application in Tool Breakage Detection  3.1  Introduction  A sensor is a device that is able to output a signal for purposes of detective or measurement of a physical property. Developments in new technologies, especially in electronics have led to the availability of a variety of types of sensors that can be readily interfaced to a computer for machine control and process monitoring. A sensor is also referred to as a transducer because it converts one physical quantity into another, such as the tachometer used in our feed drive system, which converts rotational velocity into voltage. For highly-automated machining process monitoring and control, the supervising computer of the machine tool requires accurate and reliable information about the state of the machine and the quality of operations it performs. The sensors and associated signal processing techniques are designed to provide those information. The choice of sensors to be used in a given control application depends on the nature of the variables to be measured, the cost of the sensor, and the level of precision and the performance required. A good, practical machine tool sensor should be accurate, durable, sensitive, and affordable as well. Cutting force is a very important variable to the machining process monitoring. With the development of sensing technology, many new force sensors have being reported [8], [23]. Sensor design for the machine tools, however, is a complicated multi-faced problem. Even when limiting the area of sensor development to metal cutting machine tools, very  30  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  31  few practical designs have been developed [29]. Industrial acceptable cutting force sensor design still attracts many researchers. Some research has been reported recently. Stein et al [29] proposed the DC servo feed drive of a CNC lathe used as a force sensor. They investigated how the components of a feed drive on a CNC lathe affect the feed force component of the cutting force, as measured by the current consumed by the feed motor, during a single-point turning operation. They proved that the current consumed by the motor was related to the tool force. The machine tool feed drive can be used to detect process conditions in a manner similar to a tool force dynamometer. In this chapter, the cutting force estimation from the measurable feed drive states (motor armature current /„ and the shaft velocity W) is attempted at first. The feasibility of a feed drive of a CNC milling machine as a remote cutting force sensor in milling operation is investigated. In the single-point turning operation, the cutting force is constant. In milling operation, however, the cutting force is normally periodic, in which case, the cutting force measurement would be more difficult. After developing the model for the current-cutting torque loop, the overall sensing qualities of a feed drive system as a cutting force sensor will be evaluated. Finally, an application of the current sensor is presented. The current sensor is used in tool breakage detection, which is one of most important monitoring tasks in machining process. In the conclusion section, some future work is presented. 3.2  Design of A Cutting Force Estimator and Its Application  The estimation of cutting force from other easily measured system variables has been attempted by using the previously developed state space model. During milling operation, the feeding force F (cutting force in feeding direction), c  which is applied at the tool-workpiece contact area, is reflected onto the DC motor shaft  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  32  as [13]: < =< •  T  « ' ' 3  F  3 4  where v is the ball screw nut efficiency, p is the length of pitch. The ball screw nut efficiency v can also be expressed as [13]: 1  v =  1 + 0.02 [d /p) p  For the feed drive system of our CNC milling machine, which has a screw shaft diameter of dp = 28.6 mm and a pitch of p = 5.08 mm, the nut efficiency is calculated to be v = 0.89, which gives the reflected cutting torque on the motor shaft as approximately 9.0 x 10 of the feed force F . -4  c  The force transmission gain was also experimentally measured on the CNC milling machine by measuring the feeding force and calculating the corresponding reflected torque on the motor shaft. The Kistler-9257A force dynamometer is mounted on the machining table, from which the actual feeding force can be measured. Remembering that T T  m  m  = Kt  I  dW = J --+BW ~dt e  a  +T  C  we can have KI  t a  = J ^e  + BW + T  c  at  (3.35)  In steady state cutting, dW -df = °  Hence, T can be calculated from servo motor armature current /„ and shaft velocity c  measurements, T - K I - BW c  t  a  (3.36)  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  33  The force transmission gain is experimentally found to be: T = 9.45 x IO" • F  (3.37)  4  c  c  or F = 0.1058 x 10 • T  (3.38)  4  c  c  The feeding force F is proportional to the cutting torque T . As long as the cutting torque c  e  can be estimated, the feeding force applied on the contact edge of tool and workpiece can be calculated by Equation (3.38), which is an important system state for machining operations. From the preceding analysis, the discrete state space description for the velocity loop of the feed drive is known x {k + 1) = *„(T) x (k) + H (T) u {k) v  v  V  v  This equation can be rewritten as x (k) = * {T) x (k - 1) + H (T) u {k - 1) v  V  v  V  (3.39)  v  where *„(* - 1) = [/„(* - 1) W(k - l)]  r  u (k - 1) = [V (k - 1) T (k - l)]  r  v  e  c  In order to estimate the reflected cutting torque, Equation (3.39) is rearranged as : u (k - 1) = H-\T) [x (k) - *„(T) x (k - 1)] v  v  v  (3.40)  Equation (3.40) shows that both velocity command signal input V and reflected cutting c  torque T can be estimated from motor current and velocity measurements with one c  sampling period delay. Solving the Equation (3.40) for the CNC machine feed drive,  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  34  meanwhile considering the Equation (3.38), we are able to estimate the feeding force F (Jfe - 1) at time kT. e  F [(fc-l)/fc] = [0.1643/«(fc)- 3.6405W(ifc) 4-0.1357/ (fc-l) e  a  +3.4026W(fc - l)]/0.00094 This equation provides the estimation of feeding force using the other system variables which are easily measurable for machining process monitoring. Feeding force estimation has been experimentally tested by using cutting experiments. A full immersionflycutting test is done on an Aluminum 7075 alloy workpiece. Machining is carried out by feeding the longitudinal axis at f — 2500 counts/sec (3.175 mm/sec). e  The spindle speed is set at 470 rev/min. The cutting conditions and measured feeding forces are given in Figure 3.12. The estimator parameters has been calculated from feed drive system parameters. The friction coefficient B — 0.196 Nm/(rad/sec), which corresponds to f = 2500 counts/sec, was used. The current and force signals were passed e  through 50Hz low pass filter in order to eliminate high frequency electrical noise. Since the velocity loop has a bandwidth of about 65 Hz, it may be possible to estimate the cutting forces from the measured current in low tooth frequency milling and in turning operations. The effect of nonlinearity in the friction coefficient can be overcome by calculating the estimator parameters for progressive speeds off-line, and storing them as a look up table in CNC's memory. Those data would, of course, take up some computer memory. Fortunately, the estimator is a simple equation. Not many coefficients have to be stored (four coefficients in our case). The cutting forces are reconstructed using the current and velocity measurements taken in the same cutting experiment shown in Figure 3.13. The estimated cutting forces are noisy due to sensitivity of the force computation to small but sharp deviations (i.e., noise) in the measurements. It is noted that all the analytical derivations used in the  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  35  force estimation are purely deterministic, and the noise in the system is not considered. Although the force estimation is noisy and dependent on the friction coefficient, it does follow the cutting force within the bandwidth of the servo. Also it is known that clean motor armature current and motor shaft velocity signals are the key to the cutting force estimation. 3.3  Model Development of A Remote Cutting Force Sensor  The structure of a typical feed drive on a CNC machine tool was presented in Chapter 2 (see Figure 2.2). When the feed drive system is viewed as a cutting force sensing device, the operational block diagram can be modified as illustrated in Figure 3.14. The cutting torque T (or the feeding force F ) can be considered as an input, which is to be detected, c  c  to the feed drive system, or sensing unit. The output will be the motor armature current I . The position reference input X is such a signal that it affects only the system output a  r  level when the input signal T is zero. For the purpose of analysis of cutting force sensing c  system, a mathematical model, or transfer function relating to the feeding force and the feed drive motor current is first derived. Referring to the Figure 3.14, we can see W [ s )=  W ~ U') * W - W J s+B  =  .  (3  J s+B  e  41)  e  The position output can be obtained from velocity Equation (3.41)  3  S  \J  E  3  T"  £j )  The position error signal will then be E{s) = X (s) - X (s) = X (s) - *± • W(s) = s r  a  r  ^i^^^JM  s [J s + a) e  (3.43)  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection 36  This error signal go through the digital compensator and D / A converter, which has the continuous equivalent  D(s) = K K p  -±£  (3.44)  a d  where 1— a  21 + (i a  Tl-a 2 1+ 6 Tl - b  =  V =  From Equation (3.43) and (3.44), we can have the velocity command which is sent to the power amplifier port,  V {s) = D(s) • E(s)  (3.45)  e  Adjusted by gain S , the velocity command is compared with the velocity feedback. The g  error is given  (3.46)  V (s) = V (3)S -H T,W{s) l  e  g  a  Vi(s) represents the desired current corresponding to the velocity command V (s). Comc  paring with the current feedback signal, we can obtain the current error signal  V (s) = K Vi(a) - K I (s) 2  t  a  (3.47)  a  The current error signal is converted to a high voltage by K and applied to the motor v  armature terminal, V (s) = K V (s) - K W(s) a  v  2  b  This voltage excites the current in the servo motor armature  (3.48)  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection 37  By substitutions, we can obtain /o(s)  ITsTK  =  ( 3 5 0 )  i.e., (1 + T ^ V ) • /.W = ^ 4 L  a  S+ K  V  S+ K  L  a  • <M - " j\ i  a  K  K  T  S+ K  L  a  • W(s)  +Kt  a  (3.51)  a  Substituting Equation (3.45) and (3.41) into Equation (3.51) and rearranging it, we are able to obtain the transfer function relating to the armature current I and the cutting a  torque T , as well as position reference input X . 3 s* + 3 s* + fas c  r  3  la[S)  =  7  4  a s + 4  K  e  S  d  fa  =  (J  as +as +a +  fa  =  a' B K  a  4  =  L J  a  3  =  J {Ra +  a  2  a  x  7  0 2  K '  v  K  S  d  i3  T  a  (3.52)  M  0  p  K i K  g  KjK  g  K  e  K  v  K'  v  p  p  + B L + b' L J  K)  v  a  a  a  c  = b' [J {R + K K ) + B L ] e  -  =  =  (R  a  v  + K  a  +K (K  T  K K  d  b  Kj  b  a  + K (K  a  K  a  a  K)  v  b' [B (R + t  a  S  d  2  0  e  +B  a  K j K  g  l  3  a' + B)-  e  x  J  where J  2  +»  4  =  2  3  4  3  R  as + as + as+a 3  a s +  +  A (S)  ~  ~  4  3  2  v  g  t  t  V  g  T  Hg)  g  K) a  H )} g  + K  K K S Kj KV K' + K Kj Tg Hg e  Kj  b  p  d  a'  K  e  K'  p  K  t  K  v  Kj  S  g  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  7i  =  7o =  b' • (K + K K T H ) + K K S K K K' b  v  K K S KK d  e  g  t  t  a  g  d  e  g  r  v  38  p  K' a'  v  v  The Equation (3.3) gives the current output for a given position reference X and a r  cutting torque T . c  3.4  The Current Sensor Characteristics Analysis  By using the model derived in the previous section, we are able to analyze and test the performance of current sensor. 3.4.1  Dynamic Analysis of Current Sensor  Because the main task of the feed drive system is moving the machine table precisely, all parameters are tuned for that purpose. The performance index selected are those which give a fast, smooth velocity and position responses. Therefore, the other system state, such as motor armature current I , may not be well controlled. Unavoidably oscillations a  occur in transient response period. Although the current response can be mathematically related to the system inputs, (position reference X and cutting torque T ), it is hardly r  c  possible to measure a system state and calculate its corresponding system inputs applied at that particular instant in real time. Hence, the transient period is neglected and the steady state response is used in the input function estimation. In Figure 3.15 and 3.16, the step responses of armature current I are demonstrated. a  The inputs are position reference A' and cutting torque T respectively. It can be seen r  c  that the /„ settling time with input A' is about 100 milliseconds, which is about the r  same as that of position response (see Fig. 2.11). This implies that the current response can be treated as a constant after 100 milliseconds. If this constant could be identified, the offset, which is certainly caused by another input T , can be used to estimate the c  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection 39  input function  T. c  T h e settling of armature current / „ with the cutting torque input T as fast as that with input X , r  c  is about twice  which can be observed from Figure 3.16. T h i s tells us that  the motor armature current can track the external disturbance torque, which in our case, is the cutting torque, very quickly. T h e dominant time delay comes from the position response.  3.4.2  Steady State Analysis of Current sensor  In general, the milhng operations are carried out at a constant feeding velocity f  c  one N C block, which corresponds to a ramp type position input,  X (t) =  within  X (t), r  ft  r  e  with a Laplace transform of  A-,W = £ W h e n the metal cutting is not present, ( T  c  = 0), we can get the steady state motor  current response to the position reference input  X, r  IaAoo) = h m s • I {s) - h m s • — •  -  a  where I  ar  (3.53)  stands for the motor current required only for moving the machine table.  Substituting all parameters into Equation (3.53) gives  J„(oo) = U •  a  = ^ 0  A  ( ) 354  e  K  t  It can be seen that the steady state current required to maintain the table moving at constant speed f  e  is determined by the friction on the guideway, the motor stiffness  Kt, encoder resolution K  e  and feedrate f . e  coder gain and motor stiffness are constant.  For a practical C N C machine tool, the enHowever, the friction on the guideway is  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  40  generally feedrate-dependent (see Fig. 2.5), and in some machine tools it is even positiondependent. This obviously makes it more difficult to predict the motor current consumed by just moving the machine table in real-time. It was observed in experiment that the friction coefficient B decreases as the feedrate increases (see Fig. 2.5). Meanwhile, we also find that the current required to move the machine table keeps almost constant, which is shown in Figure 3.17. Using a function to model the nonlinear dependence of friction coefficient B on the feeding velocity, it is found that this function has the form B =^  (3.55)  where K is a constant. The comparison of experimental and model (Eqn. 3.55) results c  given in Figure 3.18 shows that the Equation (3.55) adequately models the nonlinear dependence of friction coefficient B on the feeding velocity. This model certainly explains the experimental result shown in Figure 3.17 why the motor armature current remains constant in machining at different feedrates. It is concluded from the analysis that although the friction on the machine guideway is table speed dependent, the motor armature current required to move the machine table is approximately constant (If = 2.5 A) no matter how much the speed is. Thus, the dominent friction in the guideways is the Coulomb friction which produces Tf = Kflf  — 0.75 Nm constant friction torque. This feature allows us to be able to identify the  current to move the table for the particular machine only once. The identification is not required to do repeatedly for different cutting speeds so that the cutting torque estimation algorithm from motor armature current measurement would be easier to implement. For analysis of relationship between cutting torque T and motor armature current c  I , we set a  X (t) = 0 r  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  and the cutting torque changes stepwise, T (t) = T (Nm) c  c  or T (s) = c  T tl  s  The steady state motor current response to this input T can then be derived as, c  lac(oo) = Mm s • Iac(s) = lim 5 • — •  -  -  (3.56)  i.e., 7 (oo) = T • 1± oc  where I  ac  (3.57)  c  stands for the motor current required only for overcoming the cutting torque.  Substituting all parameters into Equation (3.57) gives = fr  (3.58)  In steady state cutting, a constant motor current I  ar  is required for moving the machine  table at a constant feedrate. The resultant motor current can therefore be obtained /-(oo) = J (oo) + J (oo)  (3.59)  T = K x [/ (oo) - /„,(oo)]  (3.60)  or  ac  Rewriting Equation (3.59) c  t  O  i.e.;  T = K x [J (co) - 4^] c  t  a  K,  (3-61)  Considering Equation (3.55), we can obtain T = K x [7 (oo) - ^] c  t  a  (3.62)  41  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  For a particular machine, K /K c  e  42  is constant. So the cutting torque T can be considered e  proportional to the motor armature current I . a  The Equation (3.62) gives the estimation of cutting torque in steady state machining through the motor armature current measurement. The magnitude of the motor armature current is determined by motor stiffness and the magnitude of cutting torque. After 50 milliseconds, which is the transient period of I response to T , the cutting torque T can a  c  c  be calculated from the motor armature current measurement by Equation (3.62). 3.4.3  S e n s i t i v i t y A n a l y s i s of C u r r e n t Sensor  If we do not consider the influence of position reference input on the motor armature current, we can have motor armature current I in steady state a  T  I = — ° K  t  In our CNC system, K = 0.3 Nm/A. So t  I = 3.33 x T a  (3.63)  e  A unit change in cutting torque will be reflected about 3.33 times change in the motor armature current. If we want to increase the sensitivity of current sensor, we have to choose a motor which has a smaller motor constant K . Then, 1/K could be larger. t  t  Therefore, even a small change in cutting T would be clearly reflected in motor armature c  current. As a cutting torque sensor, it is more desirable for a DC servo motor to have a smaller motor constant K , which means softer motor serves better as a torque sensor. t  However, this is not useful in practice. As a feed drive unit we require DC servo having a stiff, or in other word, hard torque performance, which means a small current could offer a large torque, i.e., large K . Those two requirements obviously are contradictory. If we t  need a DC servo drive system serving as both a feed drive and a cutting torque sensor,  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  43  we must consider both sides and find a balanced tradeoff, which not only gives a highly stiff motor, but also gives a motor which is sensitive enough to the external disturbance torque.  3.4.4  Bandwidth Analysis of Current Sensor  A sensor must have a wide enough bandwidth so that the detected signal is able to pass through it. The bandwidth of current sensor developed previously can be analyzed by using Equation (3.3). Because what we are interested is the current (/„) frequency response in terms of cutting torque (T ), the position reference input X c  r  is not to be  considered in our bandwidth analysis, i.e., X {s) = 0 r  Setting s = jui, we can get 72 (ju>) + 7 i (JUJ) + 70  Io.(ju)  T (juj) c  2  a (ju;) + a (ju;) + ct (ju;) + a (ju;) -+ a 4  4  3  (3.64)  2  3  x  2  0  Multiplying them out and rearranging them yields (7o - 72^ ) + 2  T (ju) c  (ct - ot u)  2  0  2  +  a u; ) + 4  4  j Ii" j  (aiu> -  (3.65)  a ui ) 3  3  Based on Equation (3.65), the frequency response characteristics (both magnitude and phase) can be determined i -"-(jf) i _ r  T (ju}) c  (T°  _  72f ) 2  + (7i^)  2  2  (a - a cu + a a; ) + (a a; - a a; ) 2  0  2  4  4  2  3  x  2  ]»"  (3.66)  3  and L-^r-r.—x = tan  — tan  I  (3.6/)  Figure 3.19 and 3.20 illustrate the frequency response of the current sensor. At the 3db drop point, we can observe that the frequency is about 120 Hz, which is the bandwidth  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  44  of our current sensor. This bandwidth is not only affected by the DC servo velocity loop, but also influenced by the digital filter parameters, i.e., K , digital filter zero a and pole p  b. The frequency response drops very sharply beyond the 3-db drop point, which is desirable. This quality allows the current sensor to eliminate the high frequency noise efficiently. Phase lag will unavoidably introduce some delay in the response. However, in real time application of current sensor, this delay is not critical for the machining process monitoring. But if the cutting force information is going to feed in a real time control algorithm, for example, cutting force adaptive control algorithm, the phase shift caused by the current sensor may not be negligible. 3.5  Application of Current Sensor in Tool Breakage Detection  For safe and high-quality metal removal, the CNC system should be capable of monitoring machining process efficiently. Especially in the event of machine tool failures, corrective actions must be taken. One of the most important monitoring requirements is on-line tool breakage detection. Unless immediately recognized and corrected, the tool breakage may lead to irrepairable damage to the workpiece and possibly to the machine tool as well. Recent attempt to detect the tool breakage have been concentrated on development of sensors which monitor the cutting process indirectly (i.e., acoustic emission, vibration, sound intensity ), or the cutting force sensors (i.e., dynamometers, spindle current/torque sensors) [2],[32]. Most recently, Altintas and Yellowley [2] proposed thatfirstand second differencing of a time-averaged resultant force was extremely effective in recognition of tool breakage in milling. This method required real-time force measurements. In this section, a tool breakage detection algorithm will be realized by using the servo motor  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection 45  armature current (J ) measurement instead of measuring the cutting force directly. 0  The cutting forces are periodic with a fundamental frequency equal to the tooth passing frequency, therefore the average forces per tooth period remain constant during steady state milling. The motor armature current I has been proven to be able to track a  the feeding force accurately within the servo bandwidth. Hence, it can be expected that the average armature currents per tooth period remain constant during the steady state milling. If one of the inserts on the milling cutting cutter is broken, the amplitude balance of the forces is upset, so is the motor current. The insert which follows the damaged one will have a large load since it has to remove extra material left by the broken insert. This will be immediately reflected on armature current because more current is required during the next tooth period. The simulated instantaneous armature current and the feeding force are shown in Figure 3.21 for the case one insert is broken. In steady state milling, it is obvious that first order differencing of the average motor armature currents compares the cutting performances of the adjacent inserts, A / a v ( 0 = Iav(t) ~ Iav(t ~  1)  (3.68)  Theoretically, if no insert is broken, the adjacent inserts should remove the same amout of material, and the average cutting forces remains constant. However, if one insert is completely broken, the next insert has to cut twice as much material as the previous ones. This will increase the average armature current, hence, the difference of the current per tooth period (i.e.; AI (t)) will be doubled. av  Normalizing the differences leads to the threshold value which can be used in tool breakage detection, A  '  U  t  )  =  J "(/- 1)" ^ (  (  3  6  9  )  BW  In practical applications, the normalized first order differences A'I (t) are compared av  with predicted run-out threshold in each tooth period. When a normalized difference  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  46  is below preset threshold, it is assumed that the milling state is normal. If measured difference is larger than the currently set threshold, the tool breakage alarm should be activated. The tool breakage detection is well explained by Altintas et al [1], [2] in details. In practice, the current measurement may be noisy and feedrate-dependent. However, they do not affect the use of the algorithm because of averaging and differencing of the current signals at each tooth period. For application of the tool breakage detection algorithm, two milling tests have been carried out. In the first test, all four inserts were present on the cutter and in good condition. The second milling test was carried by removing one of the four teeth in order to simulate a total insert fracture. The two test data, which had identical cutting conditions, were assembled in the computer to illustrate the influence of tool fracture during cutting. (Note: Real, in-process tool fracture and chipping will have a similar pattern as shown in Reference [1]). The results of average resultant current and its differencing are illustrated in Figure 3.22 and 3.23 respectively. As we predicted before, in normal cutting (up to 200th tooth period), the average resultant current remains almost constant, which can be observed in Figure 3.22. During this period of machining, the differenced averaged resultant current is around zero, see Figure 3.23. A small offsets are due to the run-out of the tool inserts as well as the noise in the current measurement. When one insert is totally broken (starting at 201th tooth period), the average resultant current startsfluctuatingwith very large amplitudes immediately due to the presence of the missing insert. This is also reflected in the differenced averaged resultant current, see Figure 3.23. Tool breakage detection algorithm is continuously triggered at each tooth period. When the differenced current is below a predetermined run-out threshold limit, it is assumed that the milling state is normal. However, if the measured difference exceeds the predetermined run-out threshold limit, as is observed in Figure 3.23 starting from 201 th tooth period, it is presumed that the tool is broken. Since every CNC machine has  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  47  feed drive motors, the motor current can be successfully used detecting tool breakages in milling. This may eliminate the necessity of using cutting forces which are not easy to measure in practice.  3.6  Some F u t u r e W o r k  The force sensor design for machining operation is a inseparable part for the realization of an unmanned machine tool. A direct tool force dynamometer, which can instantly measure the cutting force, is desirable.  However, an indirect measurement of cutting  force may be an another promising alternative for real-time cutting force measurement. Current sensor discussed in this chapter is proven to be a satisfactory option in realtime cutting force measurement for the cutting process monitoring. In addition, utilizing other system measurable variables beside the motor armature current to estimate the cutting force in real time could come up with very satisfactory results if a stochastic input observer could be developed. This work will involve stability analysis of the input observer, dynamically fast and smooth tracking and the measurement noise minimization in some stochastically-optimum sense. For practical applications, this input observer should be able to deal with the variance of system parameters, such as equivalent inertia on motor shaft or friction on the guideway, and even be able to absorb some nonlinearity caused by the mechanical transmission elements. Its structure must be recursive and real-time computable. It is evident that a software-based observer will be less costly and affordable, and therefore commercially desirable, which is surely, an important power to push the wide application of an indirect cutting force sensor.  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detect!on  0.4 THE [SECOND]  Figure 3.12: Experimentally Measured Cutting Force in Feeding Direction  2! a. at  -0.5-  TDOI [81C0ID]  Figure 3.13: Feeding Force Estimation  48  er 3. Current Sensor Design and Its Application in Tool Breakage Detects  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  Figure 3.15: I -X a  r  Loop Step Input Response, Input X  T  — 1000 x kt (count)  TIME[MS]  Figure 3.16: I -T Loop Step Input Response, Input T = 1 (Nm) a  c  c  50  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  2  •  *  SIMTUTION  +' EXPERIMENTAL  H  b Z 8 ft ft  51  5H  a  o H  ft a  H T  B  8  i  10  1  1 12  (Thoustnda) SPEED COKMAHD [COOITTS/SECORD]  r  i — r 14  18  18  Figure 3.17: Steady State Armature Current I Investigation for Different Feedrates f a  c  Figure 3.18: Experimental Verification of Friction Coefficient B-modelling, B = K~ /f , K = 450.0 e  c  c  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  1  I  20  I  I  40  I  I  00  I  I  80  I  I  I  100  I  120  I  I  140  I  I  160  I  I  180  T  ~  200  FREQUENCY [HZ]  Figure 3.19: Frequency Response of the Current Sensor : Magnitude  FREQUENCY [HZ]  Figure 3.20: Frequency Response of the Current Sensor : Phase  53  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  Figure 3.21: Instantaneous Armature Current &; Feeding Force  54  Chapter 3. Current Sensor Design and Its Application in Tool Breakage Detection  H  H  « K  0  h  t> 09 H Pi  H  I  5  0 -  800  400  TOOTH PERIOD  Figure 3.22: Average Resultant Current I (t) History Per Tooth Period a  JJLUJL  e -s o  800  400  TOOTH PERIOD  Figure 3.23: Differenced Average Resultant Current AI (t) a  The influence of tool fracture on the average current signal. Cutting conditions: Workpiece A17075 alloy, axial depth of cut=3.81 mm, width of cut=25.4 mm, spindle speed= 714 rev/min, feedrate=0.4mm/tooth, Cutter: Double positive, 50.8mm diameter face milling cutter with 4 teeth.  Chapter 4 Analysis of Contouring Errors Induced By Servo Dynamics  4.1  Introduction  Computer Numerical Controlled (CNC) machines are widely used in industry, especially for the precision machining of mechanical components.  Aircraft components,  stamping and injection moulding dies require precision machining with small tolerances (i.e.< 0.01mm). Precision instrumentation components, such as an aircraft laser based gyro housing, require machining accuracy in the order of microns. In this chapter the contouring errors induced by the dynamics of servo drives are analyzed. A machine tool is a complicated electromechanical system. Its accuracy is determined by many components which construct the system. The feed drive servo system is one of these components which plays an important role in machining accuracy. The first comprehensive analysis of machining errors caused by feed drive servo systems was presented by Poo, Bollinger and Younkin [27]. Poo et al assumed second order dynamics for the feed drive servo which was considered as a Type-1 system. They analyzed the steady state contour machining errors and showed the significance of the gain mismatching of two feed drive servos. Later, Koren proposed a cross-coupled biaxial controller to compensate the steady state contouring errors in machining [16]. The structure of the cross-coupled feed drive controller is illustrated in Figure 4.24. Though the coupled controllers have been designed and shown to be practical by means of experiment, the design of the controller has involved considerable trial-and-error. Stability of the system  56  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  57  is its main problem. This nature is actually the major limitation of cross-coupled controllers. Furthermore, improvements in the performance of cross-coupled controllers, as compared to uncoupled controllers, have been demonstrated largely by simulation. The unifying framework for the analysis and design of a coupled controller for multi-axis feed drive control was completed by Srinivasan [18,28] by using multivariable modern control theory. Recently Kulkarni and Srinivasan proposed optimal contouring control for dual axis feed drive systems [19]. They applied modern optimal control theory in the crosscoupled controller design. However, a complicated algorithm and the requirement of a large amount of on-line computation makes it very difficult to implement. Another disadvantage is that the optimal controller is not able to accommodate parameter variances (even slightly) in the feed drive system, which always exist in practice. Most of the preceding researchers have treated the velocity servo as a first order system except Doraiswami et al [11] who included the electrical dynamics of the servo motor in the controller. Instead of designing a cross-coupled controller for better contouring performance, Doraiswami et al tried to minimize the steady state errors in each axis in order to improve contouring accuracy. It can be seen that many strategies have been proposed and considerable research has been done by previous researchers to improve the contouring accuracy. There are two fundamental sources in the feed drive control system which influence the contouring accuracy. In order to contour a desired tool path trajectory, the dynamics of each positioning axis must be matched. However, due to variances in the feed drive parameters, such as the equivalent inertias reflected onto motor shafts and friction in the guideways, each drive system may have different dynamics. Even if the axes are matched perfectly, contouring errors will still exist during the machining of sharp geometric profiles due to the velocity lag produced by the fourth order dynamics of the feed drive controller. The second source of contouring error is caused by the cutting forces which  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  58  are transmitted to the feed drive controller as a disturbance torque, which takes away some of the useful torque provided by the DC servo motor, thus affecting the positioning accuracy of contouring. In this chapter, the analysis of multi-axis contouring errors in CNC machine tools which are due to the performance of the feed drive positioning control servos is addressed. A completely modelled feed drive position control system (Eqn.2.22), which consists of a continuous block (i.e., feed drive assembly, dc servo motor, amplifier, velocity feedback sensor and an up-down counter) and a discrete block (a lead-lag digital compensator), will be used in contouring error analysis. A simulation program, which is based upon the fourth order model presented in the second chapter, is developed. Each axis on the machine tool is assumed to have identical feed drive configurations, see Figure 4.25. (But the parameters of different feed drives are not necessarily the same.) The contouring errors are analyzed and simulated for practical ranges of operating conditions of a machine tool. The steady state contouring errors are determined analytically from the transfer function of the feed drive controller. Contouring of three transient workpiece profiles, a square corner, a diamond and an arc, are presented. The analysis and simulation tests have been carried out using the parameters of a vertical milling machine whose controller was designed at in house. Some practical strategies for the improvement of machining accuracy are studied. 4.2 Investigation of Contouring Errors Caused by Feed Drive Servo Dynamics It is known that machining errors mainly originate from variations in the dynamics of individual axes [35]. The cutting forces also affect machining precision, especially if a machine has a low gear reduction, or high feedrate and large depth of cut are used in  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  59  machining. In such cases, the influence of cutting forces will substantially increase so that it can not be neglected in contour error analysis. 4.2.1  Steady State Contouring Error Analysis  Based on the transfer function derived in Chapter two, (Eqn. (2.17)) the open-loop Laplace transfer functions of the x-axis and y-axis feed drives can be written as,  where K{ , Ki are determined by the x-axis and y-axis feed drive dynamics respectively. x  y  (For clarity, the subscript x and y are used to distinguish x-axis and y-axis parameters). Here, we assume that both axes have the same encoder gains and two digital compensation filters have the same parameters. The digital compensators have been replaced by their analogue equivalents. The position error is defined as the difference between the position reference and the actual table position which is measured by the encoder, e (s) = X (s)  -  X (s)  e (s) = X (s)  -  X (s)  x  TX  y  ry  ax  ay  i.e.,  «•<*> = r f ^ w  (4  '  73)  S u b s t i t u t i n g E q u a t i o n s (4.70) a n d (4.71) i n t o E q u a t i o n s (4.72) a n d (4.73) r e s p e c t i v e l y ,  - < • > = ^  +  K  K  Z  +  K  3  ,  •  T • *>  <  K  J T £  +  1  1  -  1  •* » < • > <  4 7  4  »  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  <^) = i n r F ^ n r • -* ' ' S + K S + ft 3 *  e  K  K  d  £  2y  3y  T T £ S+ U  +  • *-  60  ( 5 )  ( 4 J 5 )  Applying thefinal-valuetheorem to Equation (4.74) and (4.75), wefindthe steady state errors (i.e. following errors) of two axes,  »<°°> = £3' W  e  +  •T • > < 7 T * K  K  +  1  ]  "•* • «  <  4J6  >  As we can see, the steady state following errors e, and e, are functions of position x  reference inputs X  and X  rx  y  and the servo parameters.  ry  After the following errors of both axes are determined, we are able to calculate the steady state contouring error of tow-axis machining. Figure 4.26 illustrates the following errors of two axes (e and e, ) and the contour error e, . From the geometric calculation, 4X  y  e  the deviation from the desired tool path, which is defined as the contouring error, is given by e, (oo) = e, (oo) • cos(d) - e, (oo) • sin($) c  y  x  i.e.,  e, (oc) = ™ ' " f  c  e  ( 0 0 )  "^ ' " e  (4.78)  ( 0 0 )  where f is the feeding velocity, and c  fcx = fc cos(B) fey = fc sin(6)  8 is the angle between the desired contour and the x-axis. f  cx  and f  cy  are the x-axis  and y-axis components of feedrate f . From Equation (4.78), the steady state contouring c  Chapter 4.  Analysis of Contouring Errors Induced By Servo Dynamics  61  error for constant feedrate machining can be evaluated. Case 1) Ramp Type Position Command  Most machining operations are carried out at a constant feedrate f . The position c  commands for two axes are, X {t)  = f -t  (4.79)  Xry{t)  = fcy-t  (4.80)  TX  where f , f cx  xy  cx  are the x-axis and y-axis feedrates respectively. The Laplace transforms  of the reference position commands are X (s)  =  rx  f  -f  (4.81)  3 A  ' - » = 7T  (  4 8 2  )  Substituting Equations (4.81) and (4.82) into (4.76) and (4.77) yields,  •-<»> = £5'  + KZ * - • T • * *' £ p ^ +  +  <> 483  i.e.,  \ <  •-<»> =  <- > 4 86  Knowing the steady state position error of the individual axes, we can calculate the steady state contouring error of two-axis machining for Equation (4.78), / E  \  fcx fey  " ^K.KLK.O'-IKZ-KJ M=  b  t^3y  ^ 3 i i  Q  _ s  ( 48 7 )  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  Referring back to the Chapter two, we canfindthe expressions of K , K Xx  62  Xy  and K , 3x  K. 3y  They are determined by the parameters of each feed drive. If the two axes dynamics are perfectly matched, we have K K K  KK K = 0  3y  3x  ly  (4.88)  u  Therefore e, (oo) = 0  (4.89)  c  If the two axes dynamics are not perfectly matched, K K  K ^ 0 K  3y  (4.90)  3x  Xy  u  thus, the contouring error is unavoidable. Considering the relation between f , cx  and  f , we can obtain the contouring error by Equation 4.87 c  e«(») = —  ^  K  , ^ , • [— - —] a  (4.91)  It is evident that the contouring error mainly comes from the mismatching of two axes. Cutting speed f and the angle between the desired contour and the x-axis also have c  substantial influence on contouring accuracy if dynamics of the two axes are mismatched. If 6 = 90 deg or 9 — Odeg, which means that the machining contour is parallel to one of the axes, then, there is no contouring error in constant feedrate cutting even if the dynamics of two axes are mismatched. This is because only one feed drive is active during the cutting. Otherwise, contouring error will always occur. Case 2) Parabolic Position Command  A typical velocity command to a position control system is shown in Figure 4.27. In the startup period of the feed drive an acceleration command is given to the servos until the velocity reaches its steady state feedrate, since the desired speed can not be  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  63  achieved instantly. Practically, acceleration and deceleration periods are determined by the settling time of the servos, and are typically w i t h i n 100 ms for m e d i u m size machines. Thus during acceleration and deceleration periods, the position commands are parabolic w i t h time,  X {t)  =\A t  Xry{t)  =\ A t  rx  (4.92)  2  x  2  y  (4.93)  Accelerations (A , A ) i n the x and y axes are obtained from the acceleration command x  y  ( A ) along the linear path  A = A cos(6) x  A = A sin(8) y  where 0 is the angle between the desired contour and x axis. T h e Laplace domain transfer functions of the position commands are  X (s) rx  =^  (4.94)  £  (4.95)  3  Xr (3) y  =  Using the final value theorem, the steady state position following errors can be found  It can be seen that the steady state error of an i n d i v i d u a l axis goes to infinity with time at a position ramp input unless the digital filter parameter b' is forced to be zero (i.e.: b equal to -1). In that case, the digital compensator actually includes an integrator which makes the feed drive a Type-2 system, so that it can follow ramp velocity changes. In practice, the ramp velocity command is employed only i n a very short period of time  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  64  during machining. Thus it has negligible effect on the overall contouring accuracy. When the desired feedrate is reached, the velocity commands are kept constant, or the position commands become ramp type signals as explained in Case 1. 4.2.2  The Influence of Cutting Forces on Contouring Accuracy  The feeding forces are transmitted to the DC motor shaft via leadscrew and torque reduction gear pairs as disturbance torques, which affect the machining precision. The reflected disturbance cutting torque T on the motor shaft can be calculated by Equac  tion 3.34. For a practical maximum feeding force of F = 2000 N for the size of the e  research milling machine, the maximum disturbance torque reflected on the motor will be T = 1.8 Nm. From the block diagram shown in Figure 2.6, one can find the transfer c  function which relates the cutting torque T to the machine table position X . c  W + ms + no  *.(-) = K  a  '  a a + as 4  4  + as  3  3  + a  2  2  l S  + ct  cV 0  '  v  where 7/2  V l  n  0  OL4  -  K  e  =  K  e  L  a  (R + K K a  v  e  -  L  a  K)  v  a  J  a  e  3  =  J (Ra  a  2  =  V [J {R  + KK)  e  v  e  + K  a  a  t  b  K  T  K ) + K (K a  v  t  e  t  e  g  r  T  g  H) g  K) a  T H )} + K g  a  K  b  g  d  — K K K S Ki K K' a' d  b'L J  a  v  = b' [B (R + K  +  a  Ka) + B L ]  v  a  +K {K  + BL  a  +B (R + K  cto  a  = b' K (R + K  a  at  + L b')  a  V  p  K  e  K' K K p  t  v  K  t  S  g  ;  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  65  If a step cutting torque is applied to the motor shaft, T (s) = ^ c  (4.99)  s  The steady state position error caused by the cutting torque can be calculated using final value theorem, = lima X {s)  e.(oo)  (4.100)  a  Substituting Equation 4.98 and 4.99 into Equation 4.100 yields ,  \  V29 + ^3 + ?7o  ,.  T  2  T T]  c  C  eJoo) = lim —s •— = «—0 a a + as +as +as +a s 3  4  2  3  4  2  1  0  a  0  0  Using the parametric expressions of 770 and a in the above equation, the magnitude of 0  e (oo) can be derived, 4  T V (R. + K K«) c  e  '  ( 0 0 )  =  v  K K, S. K, K. Kl a'  ( 4 1 0 1  d  »  Substitution of the research machine servo parameters (see Appendix) into Equation (4.101) yields e, - 7.2516 T counts/Nm (0.0092 mm/Nm T ) e  e  (4.102)  Considering the relationship between the cutting force and the cutting torque, we have e, = 0.0092 x 0.945 x 10 • F mm/N = 0.869 x 10 • F mm/N -3  -5  c  c  (4.103)  It can be seen that the influence of cutting force on the position accuracy is not substantial for normal machining precision. In the following precision machining analysis, it will be neglected. 4.3  Simulation of Contouring Errors In Multi-axis Machining  A standard test workpiece geometry is generally used for the evaluation of machining accuracy of CNC milling machines in industry. The workpiece contains profiles of a  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  66  square, a diamond and a circle [35], as are shown in Figure 4.28. The dimensional errors on the workpiece in the x, y, and z directions are determined by comparing the actual and machined workpiece dimensions. It must be pointed out that in this study, only the contouring errors produced by the dynamics of the servo feed drives are considered (i.e., the position difference between the commanded table position and actual table position, see Figure 4.29). The geometric inaccuracies caused by the static and dynamic deformations of machine tools are not considered here, although they are present during machining. The following simulations have been carried out using the state space model developed in Chapter 2 (see Eqn. 2.31). 4.3.1  Contouring With Perfectly Matched Axial Dynamics  Dynamics of two feed drive servos are tuned to be identical or matched. The velocity profiles for a square and diamond configuration machining are given in Figure 4.30 and 4.31. The square cornering error produced due to stoppage of one axis and start-up of the other is shown in Figure 4.32. Due to the feed drive response delay, the table is unable to reach the desired position in x-axis direction. It keeps moving in this direction until the position error decreases to zero. However, the y-axis is commanded to move before the x-axis completely stops. Therefore, contouring error is produced at the corner. For a constant feeding velocity of / = 20 mm/sec, a maximum contouring error observed c  is approximately 0.245 mm at the corner. Obviously, this contouring error is dependent on the axial following error of each feed drive. If the feeding velocity is increased, the contouring error will also increase. Similar contouring error occurs in the diamond profile machining, which is shown in Figure 4.34. The contouring error observed is about 0.234 mm. Here, the table movement in y-axis direction is reversed at the corner, however the feedrate in x-axis is kept unchanged. It was proposed in Reference [19] that the sharp corners could be contoured  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  67  at a constant feedrate for high productivity machining. This is difficult to achieve at a high feeding velocity since the axial following error will be directly proportional to the feed value. The large following error and the contouring error result in for a high feeding velocity. A circular path is produced by superimposing sinusoidal and cosinusoidal motions along two perpendicular axes. The position commands sent to x-axis and y-axis feed drives are x(kT)  = Rsin(u-kT)  (4.104)  y(kT)  = Rcos(u-kT)  (4.105)  where R is the radius of the circle to be contoured, T = 0.001 sec is the sampling period, and k is the sampling counter. The angular velocity of contouring is calculated from the feeding velocity command and the radius of the circle (i.e., ui — f /R). c  A contouring error  simulation is shown in Figure 4.36. It is known that in circular contouring the feeding velocity changes continuously Therefore there is no steady state contouring error. The contouring error at different points of the circle is different. In Figure 4.36, only one arc of the circle is plotted. During contouring, the y-axis velocity increases to its maximum value and then decreases. The x-axis velocity drops to zero and then changes its direction. Because the contour is relatively smooth and velocities of both axes change continuously, the contouring error, which is about 0.044 mm, is much smaller than those in the square and diamond contouring. 4.3.2  Contouring With Mismatched Axial Dynamics  In a practical CNC machine, each feed drive  m a y h a v e s l i g h t l y different p a r a m e t e r s .  The amplifier gains and tachogenerator gain can be adjusted to achieve a satisfactory transient response. It is reasonable to assume that the settings of the amplifiers and  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  68  motor constants remain unchanged during operation. However, friction coefficients on the guideways of machine tools are feedrate dependent, and in some guideways, they are even position dependent. For the simulation analysis of mismatched dynamics, friction coefficients B = 0.09 Nm/(rad/sec) and B = 0.3 Nm/(rad/sec) are assumed for the x  y  x and y feed drives respectively. The values of the friction coefficients were obtained from experimental measurements carried out on the research milling machine in UBC CNC Laboratory, see Figure 2.5. The use of different friction coefficients on both drives represents axial mismatch in contouring operations. For a feeding velocity of f = f x  = y  20  mm/sec (approximately 15748 counts/sec) the steady state following errors of both axes can be found from Equation (4.85) and (4.86). e, = 0.2789 mm x  e, = 0.3267 mm y  The contouring errors, resulting from mismatched friction coefficients, are illustrated in Figures 4.33, 4.35 and 4.37 for square, diamond and circular profile machining. The contouring error in square cornering increases to 0.271 mm which is about 11% percent larger than that of contouring with the matched dynamics. In diamond contouring, the cornering error increases to 0.294 mm, which is about 26% larger. For a diamond profile machining, the velocity profile requires the coordination of both axes, as shown in Figure 4.31. If two axes have mismatched dynamics, the contouring error will occur not only in cornering, but also in linear contouring. There is a contouring error of 0.034 mm observed along the linear profile due to different following error amplitudes in each axis, see Figure 4.35. It is rather difficult to compensate contouring errors produced by the mismatched dynamics with the current structure of a controller. One proposal would be to add an integral action in the digital filter. The integrator will push the axial steady state  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  69  following error to zero, therefore, eliminating the contouring error along the linear profile. The viability of employing an integrator in the control of feed drive servos is given in section 4.4.2. 4.4  Strategies for Improvement of Contouring Accuracy  4.4.1  Simulation of Contouring by Including Acceleration and Deceleration Periods  In previous sections a ramp type position command was employed in contour machining analysis. This ramp type position command requires a step velocity change in the feed drive control system, which is, practically unrealizable. Although the velocity command can change instantly, the table can not reach at a desired velocity instantly. It needs time for the machine table to accelerate. This time period depends on the kind of feed drive used and the table-assembly. The velocity commands have parabolic profiles during transient acceleration and deceleration periods, as shown in Figure 4.38 and 4.39, for the cases of contouring square and diamond profiles. In this section, the parabolic feedrate profile is used in the contour machining analysis. The other conditions remain unchanged from the previous work. Because the step change in the velocity command is replaced by a ramp-constant-ramp velocity change, the position reference command becomes an acceleration-ramp-deceleration type input. The simulation results are given in Figures 4.40 through 4.43. From the simulations it can be seen that the contouring errors at the sharp geometric corners have been greatly reduced. The cost is that more machining time is spent. The contouring error during linear contour machining still exists.  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  4.4.2  70  The Use of Integral Action in the Feed Drive Control Loops  Contour machining errors caused by feed drive control system can be divided into two types. One is caused by mismatched dynamics of different axes and the other is caused by response delay of individual axes. Since 1972 some research has already been done in controller design in order to decrease the steady state contouring errors caused by axial dynamical mismatching in multi-axis machining. Most of this work was based on the Type-1 contouring system, which assumes the feed drive control system has the following transfer function, * M -  *  (4.106)  s (r s + 1)  V (s) c  where A' (-): position output. 0  V (s): velocity command input. c  K: open loop gain, r: time constant. Conventional control theory tells us that the Type-1 system has a non-zero steady state following error for a ramp type input. However if we employ a Type-2 system as the feed drive control system, there will not be a steady state following error. Therefore, the mismatching of individual dynamics will not produce a contouring error in linear contouring. However, the modified dynamics may cause additional contouring errors in sharp geometry machining. When the integrator, which is provided in the DMC-230 motion controller, is implemented in the feed drive controller, the mathematical expression for the compensator can be rewritten as D(s) = K .[K' ±^ 9  d  ^-}  C  p  +  3 + 0  3  (4.107)  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  71  where C/ is the integration gain. Definitions of the other parameters can be found in Chapter 3. Based on the step response analysis of the total position loop, the gain Cj is chosen to be 0.5, which gives a satisfactory position step response with 5.6% overshoot and 260 ms settling time. The diamond contouring is simulated again by implementing the integration actions in both the x-axis and y-axis feed drive controllers. Two different friction coefficients B = 0.09 Nm/(rad/sec) and B — 0.3 Nm/(rad/sec) are assumed for x  y  the x-axis and y-axis feed drives. Simulation results are illustrated in Figure 4.44. It can be observed that the contouring error is eliminated during steady state linear contouring. However, the overshoots cause about 0.430 mm cornering error in the transient after the machining command changes, which is not desired. Obviously the feed drive control system becomes more sluggish due to the implementation of the integration action. To avoid using the sluggish controller in sharp geometry machining, a new strategy is employed. The integrator is connected to the feed drive controller only during linear contouring. In sharp geometry machining, the integration is switched off. Based on this strategy, diamond cornering is simulated. Results are shown in Figure 4.45. The integrator is active in the digital compensator until the cutting tool arrives at point P . x  Before that point, there is no contouring error although the two axial dynamics are not perfectly matched. If there is no integration action, the error in linear contouring is unavoidable (see Figure 4.35). However, when the integrator is switched back in the compensator after cornering, a contouring error appears, which is 0.544 mm. This error is dependent on the integration gain C[. The larger C\ produces a larger contouring error, which is not desired. However, smaller C/ makes the feed drive control system more sluggish, which is not desired either. Hence, care must be taken in controller design for satisfactory system performance.  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  72  As shown before, the integration compensation will generally slow down system response and cause oscillations in the transient period. Hence, when machining a sharp geometric configuration, the contouring error may increase. Not only affecting the cornering precision, the oscillations also cause contour errors in the subsequent linear contouring. This is an undesired feature which is associated with integration compensation. One possible solution to this problem may be to redesign the digital compensator. Although the cornering precision may possibly be improved, the cornering error is not capable of being eliminated completely. 4.4.3  Application of Cubic Curve-fitting Method  Hardware design is one way to improve contour machining accuracy. Software may be another effective alternative. In this section, cubic curve-fitting is employed in the machining command generation. Cubic curve-fitting is a method of approximation, which gives a group of spline functions to approximate a curve smoothly. Here, the smoothness means the spline functions may be continuous with adjacent segments at segment boundaries up to the 3rd order derivative. Each spline can be expressed by a third-order polynomial. Because third order polynomials can be used to generate complex command sequences in real-time and are easily stored in computer memory, they may become an applicable method of command generation for machining process control. For details of a cubic curve-fitting algorithm, one is referred to Bollinger and Duffle [6]. Consider the profile, shown in Figure 4.46. The profile is divided into n segments. The position command for the ith. segment machining can be r(t) = Ai b(t)  expressed  (4.108)  In two dimensional machining, r(t) is a 2-vector and is a function of time t. The vector  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  73  represents the x-axis and y-axis position commands, X„(t)  r(f) =  (4.109)  X (t) ry  b(t) is the time vector, b(t) =  t  3  i  e t  and A,- is the ith spline coefficient matrix which is valid for  (4.110) < t < U. It can be  determined by the desired position and velocity conditions at the end points of the tth segment. The 1st and 2nd order derivatives of r(t) along the tth segment are  where  i(t) = Ai b(t)  (4.111)  f(t) = Ai b(t)  (4.112)  ' X (t) ' rx  (4.113)  r(t) =  . X (t) .  . fcy{t) .  ' X„(t) '  ' A (t) '  ry  x  r(0 =  (4.114)  and b(*) = b(0 =  U  2  2t 1 0  6t 2 0 0  (4.115) (4.116)  r(t) and r(t) are the velocity and acceleration vectors respectively. According to the desired end point position r(t) and the velocity r(t) at time ti_j and ti, Equations 4.108 and 4.111 can be combined as follows Ri{t) = Ai Bi(t)  (4.117)  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  74  where -(*<_!)  *(«,-_!) r(ti)  i(ti)  (4.118)  and b(<i_i)  biti.r)  b{t )  b(ti)  {  (4.119)  R j is defined as a boundary condition vector of the ith segment of the contour and B ; is defined as a time vector. Solving Equation (4.117) for the coefficient matrix Ai yields A;  = Rj B r  (4.120)  1  The position command for the ith segment can then be generated by Equation 4.108 by varying the time from  to  To facilitate computer implementation of the cubic spline method, a normalized time variable 3i is introduced to simplify calculation of the coefficient matrices and generation of the commands. Si varies from 0 to 1 as t varies from  to ti on the ith segment of  the contour. For £j_i < t < ti, t is related to Si by t = U-x + (U -  or Si =  Si  ti_i)  t ~ k-x ti - ti_x  (4.121)  (4.122)  Equation (4.108) and (4.111) can now be rewritten as v*{si) = A ; b*( )  (4.123)  r'(si) = A - b"(si)  (4.124)  3i  where A* is the new coefficient matrix and b'(Si) =  st  *? st  1  (4.125)  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  b*(«) =  3s? 2  (4.126)  1 0  3i  75  Boundary conditions at the end points of the ith segment of the contour can then be rewritten as follows, r*(0) = r ^ ) r*(0) = r(^_ ) 1  (4.127)  dt dsi  (4.128) (4.129)  r-(l) = r(«0  (4.130) dt/dsi can be calculated by differentiating Equation (4.121), dt = U- U-x = AU ds{  (4.131)  which is the time interval required for machining the ith segment of the contour. The coefficient matrix A.* can now be calculated as follows:  A: = R* B*  (4.132)  1  where (4.133)  '(-0 '(-Oft anc  B*- = 1  b-(0) b*(0)^ b-(l)  It is important to note that B*  1  b"*(l)^  (4.134)  is a constant matrix, -l  B*-  1  0 0  13  2 - 3 0 1  0 0  12  1  -2  1 0  111  -2  3  0 0  0 10  10  1-10  0  (4.135)  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  76  Actually is an advantage to introduce in the normalized time variable s<. The position command on the ith segment at time t can then be calculated by using Equations (4.122), and (4.123) and (4.125). Considering the feed drive control system for our CNC machine which has a sampling period T of 0.001 sec, it is desirable to issue a new command every 0.001 sec. Using Equation (4.131), we canfindthe increment Asi that corresponds to the sampling period  It can be seen that the increment Asi is determined by the sampling period T and the time interval Ati for machining the tth segment of the contour. Ati can be calculated from the desired machining speed for the tth segment, AU = - p - i  4.137  If the x-axis feed drive moves at 20.0 (mm/sec) in diamond cornering, the machining time for the segment would be At = ^ - = 0.1 (sec) Ix  (4.138)  where Ax is the x-axis component for which the spline function is applied. During this period of time, the y-axis feed drive decelerates to stop and afterwards accelerates in the opposite direction to 20 mm/sec. Besides that, the feed drive control system has velocity and acceleration limits, i.e., the Ati must satisfy x(t) < f  max  y(t) < f  max  (4.139) (4.140)  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  77  and x{t) < A,•max  (4.141)  A•max  (4.142)  m  <  where fmax'-  maximum machine table velocity.  Amax : maximum machine table acceleration. During linear contouring, linear interpolation is obviously the most efficient way of machining. At corners of a diamond profile, to avoid sharp geometric transients, cubic spline functions are employed. The spline fit for a corner gives a smooth connection between the two lines which construct the corner. The smooth connection is referred to the continuous change of the contour and to the continuous change of the velocity. The remaining part of this section is dedicated to the simulation study of cubic spline in command generation for diamond cornering. Case 1: Application of One-segment Spline in Diamond Cornering  Figure 4.47 illustrates the one-segment spline function approximation of a diamond corner. P and P/ are the start point and end point respectively, t  P,\ (x - Ax,y - Ay) 0  0  Pf. (x„ + A x , y - A y ) 0  In our case, Ax and Ay are 1.0 mm, and A' = 150.0 mm, and Y = 150.0 mm. During 0  0  the linear contouring of the diamond, the x-axis velocity is 20.0 mm/sec on both sides of the corner, and the y-axis velocity is 20.0 mm/sec on one side and -20.0 mm/sec on the other side. So, the velocities at end points of the segment are  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  f (t )  = 20.0 (mm/sec),  f (t )  = 20.0 (mm/sec)  fz{h)  = 20.0 (mm/sec),  f (t )  =  x  0  y  y  0  x  78  -20.0 (mm/sec)  Based on end point position coordinates and the velocities, the boundary condition can be determined f  149.0 2.0 151.0  2.0  149.0 2.0 149.0  -2.0  (4.143)  The coefficient matrix AJ can then be calculated through RJ  AJ = RJ B*  1  =  0.0  0.0  2.0 149.0  0.0 -2.0  2.0 149.0  (4.144)  Therefore, the polynomials used for generating the position command in the normalized variable Si can be obtained 2s  t  r-(*i)  -2s\  + 149  + 2^ + 149  (4.145)  Sending the position command into the feed drive control system, we are able to find the the position profiles of diamond cornering, see Figure 4.49. It can be seen that the generated position command is not able to duplicate the ideal position path and the responded position can only follow the commanded position with some tracking error. Therefore the contouring error still exists in diamond cornering (about 0.585 mm) although the sharp geometry has been smoothed out. The velocity profiles are shown in Figure 4.51. The x-axis cutting speed along the corner contour is 20 mm/sec. It is known that in cornering, the x-axis feed drive actually does not decelerate. It moves at the linear contouring speed. The y-axis cutting speed decreases linearly from 20 mm/sec to stop, and then accelerates again to 20 mm/sec in the opposite direction, which is quite smooth. Smooth velocity change would give a better surface quality.  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  79  Feeding velocity is another important variable in machining process monitoring beside the contour precision. Feeding velocity is expected to be constant, even in cornering, because this gives a smoother and more polished workpiece surface. Oscillations of the feeding velocity may have some undesired effects on the surface of the workpiece whose accuracy is our ultimate goal. This is a difficult task which needs implementation of more complicated interpolation algorithm in cornering. Case 2: Application of Two-segment Spline in Diamond Cornering Figure 4.48 shows a two-segment spline fit for the diamond corner. The boundary conditions at the end points of two segments are selected as follows, P.: (x - Ax,y - Ay) 0  0  f (tx) = 20.0 (mm/sec), /„ = 20.0 (mm/sec) x  P :(x ,y -0.01 x Ay) m  o  o  f = 20.0 (mm/sec), /„ = 0.0 (mm/sec) x  P : (x + Ax,y - Ay) {  0  f  x  0  - 20.0 (mm/sec), f = -20.0 (mm/sec) y  where P and Pj are the start point and end point, and P is the midpoint. Ax and Ay t  m  are again 1.0 mm. At\ — At = 0.05 sec are used. 2  Based on end point position coordinates and the velocities given above, the boundary conditions for two-segment spline can be determined 149.0 1.0 150.0 1.0 149.0  (4.146)  1.0 149.0 0.0  and 150.0 1.0 151.0  1.0  149.0 0.0 149.0  -1.0  (4.147)  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  80  The coefficient matrix AJ and Aj can then be calculated AJ = RJ  B*  0.0  =  1  0.0  1.0  149.0  0.98 0.97 1.0  149.0  (4.148)  and R; B*  0.0  0.0  1.0  150.0  0.98  -1.97  0.0  149.0  =  1  (4.149)  The polynomials used for generating the position command in the normalized variable S{ are Xrx(si)  =  Xryisx)  r*(s ) = 2  '  5  X (s ) ry  2  + 149  (4.150)  -0.98s + 0.97s + -! + 149 3  2  s + 150  X {s ) rx  X  2  2  0.98s - 1.97s + 149.99 3  (4.151)  2  Position profiles given in Figure 4.50 show that the contouring error at the corner becomes smaller than that of the one-segment spline approximation. However, the actual cutting path goes beyond the desired path, which leaves some material uncut on the workpiece. This is because the y-axis cutting speed is larger than the x-axis cutting speed during the starting and end periods of spline function interpolations, which can be seen in Figure 4.52. If the y-axis cutting speed is smaller than the x-axis cutting speed, as in the one-segment spline function approximation in Figure 4.51, the actual cutting path stays within the desired path in cornering. In this case, overcut will always occur. As long as the cutting speeds of the two axes are not the same, contouring errors at the corner are unavoidable. Generally speaking, more segment splines offer higher precision for the command generation. However, more segments take up more computer memory and require more real-time computation, which would slow down the machining process. In selection of the  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  81  segment number, all factors, such as machining speed and precision, should be considered comprehensively. For comparison, the contour errors in diamond cornering are listed in table 4.1 for different strategies, Table 4.1: Contour Error at Diamond Cornering Names of Strategy  Contour Errors (mm)  Linear contouring (matched axial dynamics) Linear contouring (mismatched axial dynamics) Accel &: Decel periods Included (matched axial dynamics) Accel & Decel periods Included (mismatched axial dynamics) Integral Action Included (mismatched axial dynamics) One-segment Spline (matched axial dynamics) Two-segment Spline (matched axial dynamics)  0.234 0.294 0.028 0.043 0.430 0.585 0.159  The diamond profile machining needs coordination of two axial dynamics. If two axial dynamics are mismatched, the linear contouring error is unavoidable unless integral action is employed in both axes. All other methods are used to minimize the contouring error at the diamond corner. They are not effective in removing the contouring error caused by mismatched axial dynamics. The results in Table 4.1 indicate that including the acceleration and deceleration periods in sharp corner machining is the best way to minimize the cornering error at the cost of increased machining time. It can be argued that it is infeasible to stop and start axes during machining where the profile contains many linear segments. In such cases, such as sculptured surface machining of aircraft parts, the path and velocities can be smoothed to avoid interrupted tool motion and to increase the productivity as shown in this chapter.  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  4.5  82  Conclusions  Through the contouring error study in this chapter, it can be concluded that mismatched axial dynamics and the response lag induced by the feed drive control system are the main sources of contouring error. Although some strategies are available for minimization of the contouring error, none of them is effective in both linear contouring and corner contouring. Contour error in linear contouring is induced by mismatched axial dynamics. However, the contour error in cornering is mainly due to the response lag of the feed drive control system. If a new interpolation algorithm could be developed for the sharp geometry contouring, and a controller which could accommodate parameter variances in the servo system could be designed, higher machining precision could be achieved.  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  83  8  Tcx<t>  Xrx(t) c O  J  +>  Xr(-t)  d  CO  Dx(z)  Gxv(s)  G'xCs)  Xa  O  9  -p  o a a.  o  o-  JC  L CD •P  s_  C  I-  e  O  a  a  a  O)  £  i—i  o  u  Ya  z: o  H  Co  CL  a  o n> Q.  td CO  n  < o  «3  Figure 4.25: Block Diagram of a Two-axis Contouring System  "g  a h«. n  CO  rf-  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  Figure 4.26: Contour Error Calculation From Axial Following Errors  85  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  VELOCITY PROFILE  fc CONSTANT FEED  u  m  n \ * S  ACCELERATION  u  DECELERATION  0  TIME [SECOND]  Figure 4.27: Velocity Command Profile.(Note:Acceleration period 0 < t < 0.1«ec —» / = a • i ; Constant feeding velocity O.laec < 1 < tf — OAsec —» / = / ; Deceleration period < — O.laec < < < < / — • / = / — o • i . / : Constant feed value, a = / c / 0 . 1 Telocity dependent acceleration. c  c  e  ao -j uo • in • m in -  4030 • JOIO-  «T—I—T-T—I—I—I—I—I—I—I—I—I—I—I—I—I—I—I—I— o a 40 a n too iso 1 4 0 in uo too X-AXIS [Mil]  Figure 4.28: Standard Test Workpiece Profile  86  Analysis of Contouring Errors Induced By Servo Dyn  : Illustration of Contour Error and Dimensional Error on Workpiece  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  20 mm/sec  0 —20 mm/sec 20 mm/sec  0 —20 mm/sec TIME [SECOND] Figure 4.30: Velocity Command Profile for A Square Configuration Machining  20 mm/sec  0 -20 mm/sec 20 mm/sec  0 -20 mm/sec TIME [SECOND] Figure 4.31: Velocity Command Profile for A Diamond Configuration Machining  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  X-AXIS [HU]  Figure 4.32: Square Cornering With Perfectly Matched Axial Dynamics  Figure 4.33: Square Cornering With Mismatched Axial Dynamics  89  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  i  U  i  I  99.6  i  i  99.6  i  i i i i i i i ; i 100 100.2 100.4 100.6 100.8  r 101  X-AXIS [101]  Figure 4.34: Diamond Cornering With Perfectly Matched Axial Dynamics 150.2 •  99.8  \—i i r 100 100.2  100.4  100.6  100.8  101  I-AI1S [MM]  Figure 4.35: Diamond Cornering With Mismatched Axial Dynamics  90  ipter 4. Analysis of Contouring Errors Induced By Servo Dynami S3  52  2  51  I  50H  s  49 DESIRED 48  i  i  i  B9.92  i  i  89.84  i  r—i 89.96  1  89.98  1  1  100  1  1—  100.02  100.04  X-AXIS [UM]  Figure 4.36: Circular Contouring With Perfectly Matched Axial Dyrs i a m i c s 53  52  DESIRED ACTUAL  2  I  51  50  48  46 P9.9  ~1  I  89.92  I  I  69.94  I  f  1  99.98  1  99.98  1  1  100  1  1  100.02  1—  100.04  X-AXIS [101]  Figure 4.37: Circular Contouring With Mismatched Axial Dynamics  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  Figure 4.38: Velocity Command Profile for A Square Configuration Machining  Figure 4.39: Velocity Command Profile for A Diamond Configuration Machining  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics 150.6 150.5 190.4  im mz  /  190.1  150-1  DESIRED  148.8  1«.B  ACTUAL  148.7 148.8148J9148.4148.3148.2148.1148 148.8 148.8 148.7148.8  T  14U  1 148J4  1  1 14BJ8  —I 1 1—T 146.82 14848  T 150  1  150JH  1  1—  190.08  I-AH8 [MM]  Figure 4.40: Square Cornering With Matched Axial Dynamics 1908' 1905 190.4190.3  I  150 £ 190.1 150-  DESIRED  1*8.9148.8-  ACTUAL  148.7148.6148 J 148.4148.3 148£ 148.1 148 H 148.8 148.8 148.7148.8 1418  T  1 148.84  —I 14188  i—i—r ISO  OHM  1904)8  Z-iXD [MM]  Figure 4.41: Square Cornering With Mismatched Axial Dynamics  93  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics 150.2  DESIRED ISO  140.8 5 I  148.6-  148.4  148.2-  1+8  H—i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—r m 08.4 018 00.8 100 1KU 100.4 10DJ 100J  80  101  I - i X B [MM]  Figure 4.42: Diamond Cornering With Matched Axial Dynamics 150.2  DESIRED 130-  148.8-  s s  Ul  I  148.8  148.4  148^-  ACTUAL  148  i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—i—r ao  au  00.4  n.6  OOJ  loo  100.2  iau  u&e  IOOJ  101  I-iUS [KM]  Figure 4.43: Diamond Cornering With Mismatched Axial Dynamics  94  Figure 4.45: Diamond Cornering With Integration Compensation Included (2)  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  Figure 4.46: Illustration of N-segment Spline Function  96  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  97  Figure 4.47: A One-segment Spline Function Approximation of A Diamond Corner  0.25 x Ay Ay  Figure 4.48: A Two-segment Spline Function Approximation of A Diamond Corner  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  98  150.6 150.4 150.2 150 148.8 -  COMMANDED POSITION  149.6 149.4 -  s  149.2 -  UJ  fi  149 -  H  n  148.8-  1  148.6 148.4148.2 148 147.8 147.6 147.4 147  —T— 151  149  153  I-AHS [Mil]  Figure 4.49: Position Profiles of the One-segment Spline Fit for A Diamond Corner 150.6 • 150.4 • 150.2-  COMMANDED POSITION  150 • 149.B -  RESPONSED POSITION  149.6 s  1  4  9  4  •  I  U9-2-  B  149 -  H  !j  I  148.8 148.6 148.4 148.2 148147.8 147.6 147.4  -1— 147  151  149  153  X-ASS [MU]  Figure 4.50: Position Profiles of the Two-segment Spline Fit for A Diamond Corner  TIME [MS]  Figure 4.51: Individual Axis Velocity Profiles in Diamond Cornering, One-segment Spline Fit  Chapter 4. Analysis of Contouring Errors Induced By Servo Dynamics  100  30 - i X-AXIS RESPONSED V E L O C I T Y 20 X-AXIS COMMANDED V E L O C I T Y fl  0 0 w  10 -  \ s u 0  -10 -  A  K  Y-AXIS C O M M A N D E D V E L O C I T Y -20 Y-AXIS RESPONSED V E L O C I T Y  -30  ~i 0  i 20  i  i 40  i  i 60  i  i 80  i  i i i i i i i i i r~ 100 120 140 - 160 180 200  TIME [MS]  Figure 4.52: Individual Axis Velocity Profiles in Diamond Cornering, Two-segment Spline Fit  Chapter 5 Concluding Remarks  In this thesis, a practical and analytical guide for the design principles of a modular CNC system and its applications to monitoring and control of unmanned machining operations are presented. The main results are summarized as follows. • The architecture of the CNC system is demonstrated. A complete dynamic model for the feed drive servo of the CNC system is developed. Transfer functions of the individual model components are identified. A state space model of the system, which has position command and cutting force disturbance as inputs, and the actual position as an output, is developed. The models are experimentally verified. The developed state space model allows the investigation of the influence of operating conditions on the actual position, velocity and the current drawn from the motors. • A current sensor for the real-time cutting force measurement is designed. Estimation of cutting forces from the feed drive motor current measurements is investigated. It is shown that the estimation algorithms are sensitive to the noise in the measurements. • Although the friction on the guideway is dependent on the velocity of the machine table, it does not prevent the use of motor armature current in cutting force sensing. The tare current (which indicates the current required to overcome the friction and move the machine table.) is constant at different table speed.  101  Chapter 5. Concluding Remarks  102  • Since the state variables (i.e., measured velocity and current signals) are always contaminated in a practical feed drive servo system, specific filtering algorithms are required to be developed for accurate estimation of cutting forces. For the future work, the use of stochastic input observer method may be investigated to extract force information from the noisy state measurements. • It is the dynamical mismatching of individual axis that results in the main contour errors in multi-axis machining. The response delay induced by feed drive system is another factor which causes the contour errors in sharp geometric profile machining. • A number of control strategies can be applied to improve the machining accuracy. Nevertheless, a control strategy which allows the tool path to follow a given contour with precision and rapidity, and is capable of accommodating the parametric variations of individual axis is still to be investigated for precision machining.  Bibliography  [1] Y. Altintas, I. Yellowley and J. Tlusty. The Detection of Tool Breakage in Milling Operations. ASME Journal of Engineering for Industry, Vol.110, pp.271-277, 1988.  [2] Altintas, Y., and Yellowley, I.,"In-Process Detection of Tool Failure in Milling Using Cutting Force Models," Trans, of ASME, Jour, of Engineering for Industry, vol.Ill,  p. 149, May 1989. [3] Altintas, Y. and Peng, J.,"Design and Analysis of a Modular CNC System for Machining Control and Monitoring," Submitted for Publication to ASME , Journal of Engineering for Industry, (1988).  [4] Baldor DC Servo Motor and UMI Amplifier Manual. Baldor Servo Products, Fremont, CA, 1987. [5] Bollinger,J.G., Stute G.and Brussel H.Van. Digital Controls and Feed Drives: State of the Art and New Developments. Annals of CIRP, Vol.29/2, pp. 497-506 1982. [6] Bollinger.J.G.,  Duffie, Neil A. Computer Control of Machines and Processes.  Addison-Wesley Publishing Company, 1988. [7] Daneshmend, L. K.,Pak, H. A. Model Reference Adaptive Control of Feed Force in Turning. Transactions of ASME, J. of Dynamical Systems, Measurement and  Control, Vol.108, pp.215-222, September 1986. [8] Diei, E.N., Dornfeld, D.A., "Acoustic Emissiom From the Face Milling Process - the Effects of Process Variables," Transactions of ASME, J. of Engn for Industry, May,  103  Bibliography  104  1987. [9] N.A. Duffie, J.G.Bollinger. Distributed Computing Systems for Multiple Processor Industrial Control. Annals of CIRP, Vol.29/1, pp.357-362, 1979. [10] DMC-230 Motion Control Unit Manual. Galil Motion Control Inc., Palo Alto, CA, 1987. [11] Doraiswami,R., Gulliver,A. A Control Strategy for Computer Numerical Control Machine Exhibiting Precision and Rapidity. Transactions of ASME, J. of Dynamical Systems, Measurement and Control, Vol.106 pp.56-62, March 1984. [12] Duffie,N.A., Bollinger,J.G. Distributed Computing Systems for Multiple Processor Industrial Control. Annals of CIRP, Vol.29/1, pp.357-362, 1979. [13] Gross, Hans, Edited Electrical Feed Drives for Machine Tools, John Willy & Sons Limited, (1983). [14] Humphrey, William M., Introduction to Servomechanism System Design, Prentice-  Hall., Englewood Cliffs, New Jersey, (1973). [15] Koren, Y., Design of Computer Control for Manufacturing Systems. Trans, of ASME, J.Eng.Ind., vol.101, no.3, pp.326-332, August, 1979. [16] Koren, Y., Cross-coupled Computer Control for Manufacturing Systems. Trans, of ASME, J.Meas. Dyn. Contr., vol.102, no.4, pp265-272, December, 1980. [17] Koren, Y., Computer Control of Manufacturing Systems. McGraw Hill, 1983. [18] Kulkarni, P.K., Srinivasan, K., Cross Coupled Compensators for Contouring Control of Multi-Axial Machine Tools. Proceedings of 13th. North American Metalworking  Research Con., pp.558-566,May 1985.  Bibliography  105  [19] Kulkarni, P.K., Srinivasan, K., Optimal Contouring Control of Multi-Axial Feed Drive Servomechanisms. Transactions of ASME, Journal of Engineering for Industry, May 1989.  [20] Lauderbaugh, L.K., Ulsoy, A.G., Dynamic Modeling for Control of the Milhng Process. Winter Annual Meeting of ASME, PED-Vol.18, ppl49-158,1985.  [21] Ma, C.C.H., Altintas, Y., Direct Adaptive Cutting-Force Control of Milling Processes. Submitted for Publication to AUTOMATICA,  September 1988.  [22] Masory, 0., Koren, Y., Stability Analysis of a Constant Force Adaptive Control System for Turning. Trans, of ASME, J.Eng.Ind., Vol.107, pp.295-299, 1985. [23] Martin, K.F, Lockman, H., "Force Sensing in Magnitude, Derection, and Position" Trans, of ASME,  J. of Dynamic system, measurement, and control, September,  1987. [24] McGeough, J.A., Advanced Methods of Machining, Chapman and Hall Ltd, 1988. [25] Ogata, K., Discrete Time Control Systems, Prentice Hall, 1987. [26] Peng, J., CNC Machine Feeding System Analysis, Technical report, CNC Laboratory, U.B.C., October 1988. [27] Poo, A.N., Younkin, C. and Bollinger, J.G./'Dynamic Errors in Type I Contouring Errors," IEEE Transactions on Industry Applications, Vol.IA-8, No.4, July 1972.  [28] Srinivasan, K., A General Multivariable Structure for Coordinated Control Applications. Proceeding of American Control Conference, June 1987.  Bibliography  106  [29] Stein,J.L., Colvin.C., Clever, G., Wang, C.H., "Evaluation of DC Servo Machine Tool Feed Drives as Force Sensors" Trans, of ASME, J. of Dynamic Systems, measurement and Control, December 1986.  [30] Stute, G., Worn, H., A Modular Function Oriented Multiprocessor NC System. Annals of CIRP, Vol.27/1, pp. 261-264, 1978. [31] Stute, G., Klemm, P., The Application of a Modular Multiprocessor NC System. Int.I. of Machine Tool Design and Research, Vol.22, pp. 215-222, 1981.  [32] Tlusty, J., and Andrews, G. C , "A Critical Review of Sensors for Unmanned Machining," Annals of the CIRP, Vol.32,No.2,1983, p.563-572. [33] Tomizuka, M., Zhang,S. J., Oh, J. H., and Chen, M. S., Model Reference Adaptive Control of the Milling Process. Control of Manufacturing Processes and Robotic  Systems, ASME, New York, pp.55-63, 1983. [34] Ulsoy, A.G., Koren, Y. and Rasmussen, F., Principal Developments in Adaptive Control of Machine Tools. Transactions of ASME, J. of Dynamical Systems, Mea-  surement and Control, Vol.105, No.2, pp.107-112, 1985. [35] Week, Manfred, Handbook of Machine Tools, John Wiley & Sons Ltd., (1984).  Appendix A Parameters of the Feed Drive  B  0.09  Nm/(rad/sec)  0.08872 V/(rad/sec) 0.0036 kgm K  a  K K  d  K K  h  e  t  K  p  K  v  K L  t  2  0.0643 A/A 0.3  V/(rad/sec)  0.0781 V/count 636.62  counts/(rad/sec) 25.5 A/V 2.5  21.934 V/V 0.3  Nm/A  2 mH  a  Ra  s  g  0.4 n 0.0648 V/V  T  0.13183 V/V  a  -0.8825  b  0  P  5.08 mm  g  Continuous current supply= 15 A Peak current supply= 30 A  107  Appendix B  Coefficients of G {z) c  T - — e- " sin{u> T) iu  b  =  T  d  6, = 2e-^ [^ ^-rco (o; r)] T  n(  5  6  = T-  - — e~*"' «n(w,|T)  a(UnT  m T  e  , # 1 / - ^ - r , -*-«r e  e  a,  = -2 e-*"- cos(u; T)  a  = e  0  (1  T  d  108  r ^ .  ,t ( r) - coa{uj T)] n  W(|  d  Appendix C  Coefficients of G i(z) c  b  1  P  ab  +  b b -\- a  2  2  A  =  0  fcj  6  2  6  a  A = IT "3  =  0  Ol +  if 1 i f K<{ K Ki* e  K  p  02-1  3  a  =  i  —  2  a  a  0  —  Q  Ki K K e  K\K  7}  K  d  p  0  p  e  d  K b  K  3  109  p  p  (6i — a o )  [b — a t>i) — a  ^3  =  —  Ks  Kd K — • a • bo  e  x  d  e  a  K K K K  Kx K h Kd K  a - a H  2  2  0  Appendix D Listing of Programs  • The cubic spline function interpolation algorithm for the cornering of a diamond profile. • Two-axis contouring error analysis program for a diamond profile machining. • Two-axis contouring error analysis program for a square profile machining. • Two-axis contouring error analysis program for a circular profile machining. • Velocity loop of the feed drive analysis program. • Position loop of the feed drive analysis program. • Bandwidth analysis program for the torque-current loop. The programs listed above can be found in Report 89-8 October 1989 in CAMROL.  110  

Cite

Citation Scheme:

    

Usage Statistics

Country Views Downloads
United States 37 2
India 21 5
Philippines 14 0
Egypt 11 0
Canada 8 0
China 8 16
Hungary 8 0
Taiwan 8 0
Vietnam 8 0
Malaysia 6 7
Italy 5 0
Bosnia and Herzegovina 4 0
Peru 4 0
City Views Downloads
Unknown 83 7
Érd 8 0
Mountain View 8 0
Hanoi 8 0
Los Angeles 6 0
Ashburn 6 0
San Mateo 4 0
Pune 4 0
Bihać 4 0
Beijing 3 0
Islamabad 3 0
Delhi 3 1
Cairo 3 0

{[{ mDataHeader[type] }]} {[{ month[type] }]} {[{ tData[type] }]}
Download Stats

Share

Embed

Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                        
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            src="{[{embed.src}]}"
                            data-item="{[{embed.item}]}"
                            data-collection="{[{embed.collection}]}"
                            data-metadata="{[{embed.showMetadata}]}"
                            data-width="{[{embed.width}]}"
                            async >
                            </script>
                            </div>
                        
                    
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0098515/manifest

Comment

Related Items