Precision Positioning of Rotary and Linear Systems 13 -19 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 –20 0 20 Sensor Noise at 1000 Hz Bandwidth, 3–sigma = 10.0 nm Position, nm –20 0 20 Sensor Noise at 100 Hz Bandwidth, 3–sigma = 3.2 nm Position, nm –20 0 20 Sensor Noise at 10 Hz Bandwidth, 3–sigma = 1.0 nm Position, nm Time, s FIGURE 13.8 Effect of analog filtering on the resolution of an analog sensor. controller loop bandwidth. If the noise present in the sensor measurement is essentially random, the sensor resolution can be expressed as a spectral density and quoted as nm/ √ Hz. The designer can then match the appropriate filter bandwidth to his resolution requirements. However, a caution here is that many sensors have inherently higher levels of noise at the lower frequencies. The amount of filtering required to achieve a resolution may be higher than expected. Analog sensors are usually supplied with signal conditioning electronics that convert the natural output of the sensor to a standard form (typically ±10 V). These electronics should be placed as close as possible to the sensor because the low-level signals in the raw sensor output are often highly susceptible to electronic noise. The conditioned signal is usually somewhat less sensitive but should still be shielded and routed as far as possible from high-power conductors. Analog sensor accuracy and linearity is entirely distinct from the resolution specification. Sensors may be highly linear about an operating point but often become increasingly nonlinear over their full range of travel. This nonlinearity can be compensated for with a table or curve fit in software. Sensor manufacturers may also provide a linearized output from their electronics package. This is very useful for metrology, but a designer should confirm the update rate of this output before using for feedback. Often this additional output is no longer a native analog signal, but it may have been quantized, corrected, and re-synthesized through a digital-to-analog converter. All of these processes add time and phase lag to the measurement making it less suitable for use as a feedback device. 13.3.6 Control Algorithms The application of control algorithms separates mechatronics systems and mechatronic design from tradi- tional electromechanical systems. Modern controllers do more than simply close a PID loop. They provide additional options on feedback filtering and feedforward control, allow for coordination between multiple axes, and should provide an array of tuning and data collection utilities. An overview of control algorithms used with precision machines is provided here. 13.3.6.1 System Modeling Dynamic models of the system should be developed for creating the controller and verifying its per- formance. Each controller design should begin with a simple rigid-body model of the overall structure. Copyright © 2005 by CRC Press LLC 13 -20 Robotics and Automation Handbook Ka Ke 11 Current, AVolts Control Effort Amplifier Gain (Amps/Volt) Forcer Gain (Newtons/Amp) Damping (N/(m/s)) Km Force, N Accn m/s ^ 2 Mass (kg) Encoder Gain (counts/meter) Int 1 Int 2 Vel. m/s Position, m Position Position, cnts 1/J ± 1 s 1 s B FIGURE 13.9 Simplified plant model used for initial single-axis tuning and motor sizing. This simplified model is justified when, at a typical closed-loop bandwidth for mechanical systems of 10– 100 Hz, friction is low and any structural resonances are located at significantly higher frequencies. While not complete, the simplified model shows the bulk rigid-body motion that can be expected given the mass of the stage, the selection of motors and amplifiers, and the types of commanded moves. It can also be used to generate a more-accurate estimation of motor currents (and power requirements) for typical machine moves. Figure 13.9 shows a block diagram of a simplified linear-motor-driven system. The voltage from the analog output of the controller is converted into current by the amplifiers and into a force by the linear motors. In this first model, we assume no dynamics in the amplifier and that commutation is implemented properly to eliminate force ripple. The motor force accelerates the stage mass, and an encoder measures the resulting stage position. The continuous-time transfer function from control-effort to stage position (in counts) is therefore P ( s ) = k s(ms + b) (13.19) and this transfer function can be used to generate controller gains. Scaling factors will always be specific to the supplier of the control electronics, and it may take some research to find these exactly. The simplified model is adequate for the initial generation of gain parameters, but determining perfor- mance at the nanometer level always involves augmenting the model with additional information. This ad- vanced model should include the discrete-time controller, quantized position feedback and control effort, higher order dynamics in the amplifier, higher-frequency mechanical modes (obtained either from a finite- element study or experimentally through a modal analysis), force ripple in the motors, error in the feedback device, and friction and process-force effects. Some can be predictedanalytically beforebuildingthesystem, but all should be measured analytically as the parts of the system come together to refine the model. 13.3.6.2 Feedback Compensation Commercially available controllers generally use some form of classical proportional-integral-derivative (PID) control as their primary control architecture. This PID controller is usually coupled with one or more second-order digital filters to allow the user to design notch and low-pass filters for loop-shaping requirements. In continuous-time notation, the preferred form of the PID compensator is C ( s ) = K p 1 + T D s + 1 T I s = K p T D T I s 2 + T I s + 1 T I s (13.20) Separating the proportional term by placing it in front of the compensator allows the control engineer to compensate for the most common system changes (payload, actuator, and sensor resolution) by changing a single gain term (K p ). Techniques for designing continuous-time PIDloops are well documented in almost any undergraduate-level feedback controls textbook. The preferred method for designing, analyzing, and characterizing servo system performance is by measuring loop-transmissions, otherwise known as open- loop transfer functions. This measure quantitatively expresses the bandwidth of the system in terms of the crossover frequency and the damping in terms of the phase margin. Copyright © 2005 by CRC Press LLC Precision Positioning of Rotary and Linear Systems 13 -21 13.3.6.3 Feedforward Compensation Feedforward compensation uses a quantitative model of the plant dynamics to prefilter a command to improve tracking of a reference signal. Feedforward control is typically not studied as often as feedback control, but it can cause tremendous differences in the ability of a system to follow a position command. Feedforward control differs from feedback in that feedforward control does not affect system stability. If a perfect model of the plant were available with precisely known initial conditions, then the feedforward filter would conceptually consist of an inverse model of the plant. Preshaping the reference signal with this inverse model before commanding it to the plant will effectively lead to unity gain (prefect tracking) at all frequencies. If properly tuned, the feedback system is required only to compensate for modeling inaccuraciesinthefeedforwardfilter and torespond to externaldisturbances.In practical implementations, the plantcannotbeexactly invertedover all frequencies,butthefeedforward gain will instead boosttracking ability at low frequencies. Formal techniques exist for creating feedforward filters for generalized discrete-time plants. Tomizuka [37] developed the zero phase error tracking controller (ZPETC) that inverts the minimum-phase zeroes of a plant model and cancels the phase shift of the nonminimum phase components. Nonminimum phase zeroes are a common occurrence in discrete-time systems. The ZPETC technique begins with a discrete-time model of the closed-loop system (plant and controller), G p (z −1 ) = z −d B − c (z −1 )B + c (z −1 ) A c (z − 1) (13.21) in which the numerator is factored in minimum-phase zeros B + c and non-minimum-phase zeros B − c .The z −d term is the d-step delay incurred due to computation time or any phase lag. The ZPETC filter for this system becomes G ZPETC (z −1 ) = z d A c (z −1 )B − c (z) B + c (z −1 )B − c (1) 2 (13.22) whichcancelsthepolesandminimum-phase zeros of the system,andcancelsthephaseofthe nonminimum phase zeros. This is a noncausal filter, but it is made causal with a look ahead from the trajectory generator. In multi-axis machine, it is generally allowable to delay the position command by a few servo samples provided the commands to all axes are delayed equally and the motions remain synchronized. Feedforward control techniques are also available that modify the input command to cancel trajectory- induced vibrations. One such technique, trademarked under the name Input Shaping was developed by Singer and Seering [31] at MIT. Input Shaping, TM and related techniques, convolve the input trajectory with a series of carefully timed and scaled impulses. These impulses are timed to be spaced by a half-period of the unwanted oscillation and are scaled so that the oscillation produced by the first impulse is cancelled by the second impulse. Much of the research work in this area has involved making the filter robust to changes in the oscillation frequency. The downside to this technique, in very general terms, is that the time allowed for the rigid-body move must be lengthened by one-half period of the oscillation to be cancelled. Specialized feedforward techniques can be applied when the commanded move is cyclic and repetitive. In this case, the move command can be expressed as a Fourier series and decomposed into a summation of sinusoidal components [19]. The steady-state response of a linear system to a sinusoid is well defined as a magnitude and phase shift of the input signal, and so each sinusoidal component of the command can be pre-shifted by the required amount such that the actual movement matches the required trajectory. 13.4 Conclusions Precision positioning of rotary and linear systems requires a mechatronic approach to the overall system design. The philosophy of determinism in machine design holds that the performance of the system can be predicted using familiar engineering principles. In this chapter, we have presented some of the components that enter into a deterministic precision machine design. Concepts such as alignment errors, Copyright © 2005 by CRC Press LLC 13 -22 Robotics and Automation Handbook forceandmetrology loops, and kinematic constraint guide the design of repeatable and analytic mechanics. Often-neglected elements in the mechanical design are the cable management system, heat transfer and thermal management, environmental protection (protecting system from the environment it operates in and vice-versa), and inevitable serviceability and maintance. Mechatronic systems require precision mechanics; high-quality sensors, actuators, and amplifiers; and a supervisory controller. This controller is usually implemented with a microprocessor, and the discrete-time effects of sampling, aliasing, and quantization must be accounted for by the system design engineer. Finally, the feedback control algorithms must be defined, implemented, and tested. The elements used to create precision mechatronic systems are widely available, and it is left to the designer to choose among them trading complexity and cost between mechanics, electronics, and software. References [1] The American Society for Precision Engineering, P.O. Box 10826, Raleigh, NC 27605-0826 USA. [2] Auslander, D.M. and Kempf, C.J. Mechatronics: Mechanical System Interfacing. Prentice Hall, Upper Saddle River, NJ, 1996. [3] Blanding, D.L. Exact Constraint: Machine Design Using Kinematic Principles. American Society of Mechanical Engineers, New York, NY, 1999. [4] Bryan, J.B. The deterministic approach in metrology and manufacturing. In: Proceedings of the ASME 1993 International Forum on Dimensional Tolerancing and Metrology, Dearborn, MI, Jun 17–19 1993. [5] Carbone, P. and Petri, D. Effect of additive dither on the resolution of ideal quantizers. IEEE Trans. Instrum. Meas., 43(3):389–396, Jun 1994. [6] DeBra, D.D. Vibration isolation of precision machine tools and instruments. Ann. CIRP, 41(2):711– 718, 1992. [7] Donaldson, R.R. and Patterson, S.R. Design and construction of a large, vertical axis diamond turning machine. Proc. SPIE – Int. Soc. Opt. Eng., 433:62–67, 1983. [8] Edlen, B. The dispersion of standard air. J. Opt. Soc. Am., 43(5):339–344, 1953. [9] Evans, C. Precision Engineering: An Evolutionary View. Cranfield Press, Bedford, UK, 1989. [10] Evans, C.J., Hocken, R.J., and Estler, W.T. Self-calibration: reversal, redundancy, error separation, and “absolute testing.” CIRP Ann., 45(2):617–634, 1996. [11] Franklin, G.F., Powell, J.D., and Workman, M.W. Digital Control of Dynamic Systems, 3rd ed., Addison-Wesley, Reading, MA, 1998. [12] Fuller, C.R., Elliot, S.J., and Nelson, P.A. Active Control of Vibration. Academic Press, London, 1996. [13] Gordon, C.G. Generic criteria for vibration-sensitive equipment. In: Vibration Control in Microelec- tronics, Optics, and Metrology. Proc. SPIE, 1619:71–85, 1991. [14] Hale, L.C. Friction-based design of kinematic couplings. In: Proceedings of the 13th Annual Meeting of the American Society for Precision Engineering, St. Louis, MO, 18, 45–48, 1998. [15] Hale, L.C. Principles and TechniquesforDesigning Precision Machines. Ph.D. Thesis, MIT, Cambridge, 1999. [16] Jones, D.I.G. Handbook of Viscoelastic Vibration Damping. John Wiley & Sons, New York, 2001. [17] Kiong, T.K., Heng, L.T., Huifang, D., and Sunan, H. Precision Motion Control: Design and Imple- mentation. Springer-Verlag, Heidelberg, 2001. [18] Kurfess, T.R. and Jenkins, H.E. Ultra-high precision control. In: William S. Levine, editor, The Control Handbook, 1386–1404. CRC Press and IEEE Press, Boca Raton, FL, 1996. [19] Ludwick, S.J. A Rotary Fast Tool Servo for Diamond Turning of Asymmetric Optics. Ph.D. Thesis, MIT, Cambridge, 1999. [20] Marsh, E.R. and Slocum, A.H. An integrated approach to structural damping. Precision Eng., 18(2/3):103–109, 1996. [21] Nayfeh, S.A. Design and Application of Damped Machine Elements. Ph.D. Thesis, MIT, Cambridge, 1998. Copyright © 2005 by CRC Press LLC Precision Positioning of Rotary and Linear Systems 13 -23 [22] Oppenheim, A.V. and Shafer, R.W. Discrete Time Signal Processing. Prentice Hall, Englewood Cliffs, NJ, 1989. [23] Oppenheim, A.V., Willsky, A.S., and Young, I.T. Signals and Systems. Prentice Hall, Englewood Cliffs, NJ, 1983. [24] A ◦ strom K.J. and Wittenmark, B. Computer Controlled Systems: Theory and Design, 3rd ed., Prentice Hall, 1996. [25] Riven, E.I. Vibration isolation of precision equipment. Precision Engineering, 17(1):41–56, 1995. [26] Riven, E.I. Stiffness and Damping in Mechanical Design. Marcel Dekker, New York, 1999. [27] Riven, E.I. Passive Vibration Isolation. ASME Press, New York, 2003. [28] Schmiechen, P. and Slocum, A. Analysis of kinematic systems: a generalized approach. Precision Engineering, 19(1):11–18, 1996. [29] Schouten, C.H., Rosielle, P.C.J.N., and Schellekens, P.H.J. Design of a kinematic coupling for preci- sion applications. Precision Engineering, 20(1):46–52, 1997. [30] Shigley, J.E. and Mischke, C.R. Standard Handbook of Machine Design. McGraw-Hill, New York, 1986. [31] Singer, N.C. and Seering, W.P. Preshaping command inputs to reduce system vibration. J. Dynamic Syst., Meas., Control, 112:76–82, March 1990. [32] Slocum, A.H. Kinematic couplings for precision fixturing — part 1: Formulation of design param- eters. Precision Engineering, 10(2), Apr 1988. [33] Slocum, A.H. Kinematic couplings for precision fixturing — part 2: Experimental determination of repeatability and stiffness. Precision Engineering, 10(3), Jul 1988. [34] Slocum, A.H. Precision Machine Design. Prentice Hall, Englewood Cliffs, NJ, 1992. [35] Smith,S.T.andChetwynd,D.G.Foundationsof Ultraprecision MechanismDesign.Gordon andBreach Science Publishers, Amsterdam, the Netherlands, 1992. [36] Stone, J., Phillips, S.D., and Mandolfo, G.A. Corrections for wavelength variations in precision interferometric displacement measurements. J. Res. Natl. Inst. Stand. Technol., 101(5):671–674, 1996. [37] Tomizuka, M. Zero phase error tracking algorithm for digital control. ASME J. Dynamic Sys., Meas., Control, 109:65–68, 1987. [38] Wirsching, P.H., Paez, T.L., and Ortiz, K. Random Vibrations: Theory and Practice. John Wiley & Sons, New York, 1995. Copyright © 2005 by CRC Press LLC 14 Modeling and Identification for Robot Motion Control Dragan Kosti ´ c Technische Universiteit Eindhoven Bram de Jager Technische Universiteit Eindhoven Maarten Steinbuch Technische Universiteit Eindhoven 14.1 Introduction 14.2 Robot Modeling for Motion Control Kinematic Modeling • Modeling of Rigid-Body Dynamics • Friction Modeling 14.3 Estimation of Model Parameters Estimation of Friction Parameters • Estimation of BPS Elements • Design of Exciting Trajectory • Online Reconstruction of Joint Motions, Speeds, and Accelerations 14.4 Model Validation 14.5 Identification of Dynamics Not Covered with a Rigid-Body Dynamic Model 14.6 Case-Study: Modeling and Identification of a Direct-Drive Robotic Manipulator Experimental Set-Up • Kinematic and Dynamic Models in Closed Form • Establishing Correctness of the Models • Friction Modeling and Estimation • Estimation of the BPS • Dynamics Not Covered with the Rigid-Body Dynamic Model 14.7 Conclusions 14.1 Introduction Accurate and fast motions of robot manipulators can be realized via model-based motion control schemes. These schemes employ models of robot kinematics and dynamics. This chapter discusses all the necessary steps a control engineer must take to enable high-performance model-based motion control. These steps are (i) kinematic and rigid-body dynamic modeling of the robot, (ii) obtaining model parameters via direct measurements and/or identification, (iii) establishing the correctness of the models and validating the estimated parameters, and (iv) deducing to what extent the rigid-body model covers the real robot dynamics and, if needed for high-performance control, the identification of the dynamics not covered by the derived model. Better quality achieved in each of these steps contributes to higher performance of motion control. The robotics literature offers various tutorials on kinematic and dynamic modeling [1–4]. A number of modeling methods are available, meeting various requirements. As for robot kinematics, the model is a mapping between the task space and the joint space. The task spaceis the space of the robot-tip coordinates: Copyright © 2005 by CRC Press LLC 14 -2 Robotics and Automation Handbook end-effector’s Cartesian coordinates and angles defining orientation of the end-effector. The joint space is the space of joint coordinates: angles for revolute joints and linear displacements for prismatic joints. A robot configuration is defined in the joint space. The mapping from the joint to the task space is called the forward kinematics (FK). The opposite mapping is the inverse kinematics (IK). The latter mapping reveals singular configurations that must be avoided during manipulator motions. Both FK and IK can be represented as recursive or closed-form algebraic models. The algebraic closed-form representation facili- tates the manipulation of a model, enabling its straightforward mathematical analysis. As high accuracy of computation can be achieved faster with the closed-form models, they are preferable for real-time control. A dynamic model relates joint motions, speeds, and accelerations with applied control inputs: forces/ torques or currents/voltages. Additionally, it gives insight how particular dynamic effects, e.g., nonlinear inertial and Coriolis/centripetal couplings, as well as gravity and friction effects, contribute to the overall robot dynamic behaviour. A variety of methods are available for derivation of a dynamic model, which ad- mits various forms of representation. Algebraic recursive models require less computational effort than the corresponding algebraic closed-form representations. Recursive models have compact structure, requiring low storage resources. Computational efficiency and low storage requirements are traditional arguments recommending the online use of recursive models [3]. However, the power of modern digital computers makes such arguments less relevant, as online use of models in closed-form is also possible. Furthermore, an algebraic closed-form representation simplifies manipulation of a model, enabling an explicit analysis of each dynamic effect. Direct insight into the model structure leads to more straightforward control design, as compensation for each particular effect is facilitated. For example, a closed-form model of gravity can be used in the compensation of gravitational loads. Unfortunately, the derivation of closed-form models in compact form, in particular IK and dynamic models, is usually not easy, even if software for symbolic computation is used. The derivation demands a series of operations, with permanent combining of intermediate results toenhancecompactness of the final model. To simplify derivation, a control designer sometimes approximates robot kinematic and/or inertial properties. Forexample, by neglecting link offsets according to Denavits-Hartenberg’s(DH)notation[1,3], a designer deliberately disregards dynamic terms related with these offsets, thus creating a less involved but incomplete dynamic model. An approach to model manipulator links as slender beams can approximate robot inertial properties, since some link inertia or products of inertias may not be taken into account. Consequently, the resulting model is just an approximation of the real dynamic behavior. It is well-known that with transmissions between joint actuators and links, nonlinear coupling and gravity effects can become small [1–3]. If reduction ratios are high enough, these effects can become strongly reduced and thus ignored in a dynamic model. If robot joints arenot equipped with gearboxes, which is characteristic for direct-drive robots [5], then the dynamic couplings and the gravity have critical influence on the quality of motion control, and they must be compensated via control action. More accurate models of these effects contribute to more effective compensation. Additional methods to simplify dynamic modeling are neglecting friction effects or using conservative models for friction, e.g., adopting just viscous and ignoring Coulomb effects. The approximate dynamic modeling is not preferable for high-performance motion control, as simplified models can compensate just for a limited number of actual dynamic effects. The noncompensated effects have to be handled by stabilizing feedback control action. The feedback control design is more involved if more dynamic effects are not compensated with the model. Obviously, when a model is derived, it is useful to establish its correctness. Comparing it with some recursive representation of the same kinematics or dynamics is a straightforward procedure with available software packages. For example, software routines specialized for robotic problems are presented in [6,7]. With a model available, the next step is to estimate the model parameters. Kinematic parameters are often known with a sufficient accuracy, as they can be obtained by direct measurements and additional kinematic calibration [8]. Inthis chapter,emphasiswill be on estimating the parameters of a robot dynamic model, i.e., the inertial and friction parameters. The estimation of these parameters is facilitated if a model of robot dynamics is represented in so-called regressor form, i.e., linearly in the parameters to be estimated. The estimation itself is a process that requires identification experiments performed directly on a robot. To establish experimental conditions allowing for the simplest and the most time-efficient least-squares Copyright © 2005 by CRC Press LLC 14 -10 Robotics and Automation Handbook where x i (k) = [e i (k), ˙ e i (k), ν i (k)] T (14.29a) E i = 1 T s 0.5T 2 s 01 T s 00 1 , g i = T 3 s /6 0.5T 2 s T s (14.29b) c i = [100] (14.29c) Here, k abbreviates kT s . A Kalman filter that optimally reconstructs the state x i in the presence of the model uncertainty ν i and measurement noise η i has the form: ˆ x i (k + 1) = E i (T s ) ¯ x i (k) ¯ x i (k) = ˆ x i (k) + k i [ ˜ y i (k) − q r,i (k) − c i ˆ x i (k)] (14.30) where ¯ x i denotes updated state estimate and k i is a n ×1 vector of constant gains. As the filter reconstructs deviations from the reference motions and speeds, together with the model uncertainty, the motion coordinates can be reconstructed as follows: ¯ q i =q r,i + ¯ e i ¯ ˙ q i = ˙ q r,i + ¯ ˙ e i ¯ ¨ q i = ¨ q r,i + ¯ ν i (14.31) To compute the vector k i , one needs covariances of the measurement noise η i and of the process noise ξ i . Assuming white, zero mean quantization noise, uniformly distributed within a resolution increment θ m of the position sensor, the straightforward choice for η i is θ 2 m /12 (see [10] for details). The reference [9] suggests a simple rule to choose ξ i : it should equal max ¨ q 2 r,i (maximum value of the square jerk of the motion reference). In practice, these rules are used as initial choices, while the final tuning is most effectively done online. However, use of Bode plots from the measured e i to the reconstructed ¯ e i — an illustrative example is presented in Figure 14.2 — could be instructive for filter tuning. The Bode plots reveal which harmonics of e i will be amplified after reconstruction, as well as which harmonics will be attenuated. By analyzing the power spectrum of e i , a control engineer may locate spectral components due to noise and other disturbing effects, that need to be filtered out. The gain vector k i can be retuned to reshape the Bode plot according to the needs. −15 0 5 Magnitude (dB) 0.1 1 10 100 −60 −30 0 Frequency (Hz) Phase ( o ) FIGURE 14.2 Bode plots of the Kalman filter, from the measured e i to the reconstructed ¯ e i . Copyright © 2005 by CRC Press LLC Modeling and Identification for Robot Motion Control 14 -13 Elements of q r (t) should satisfy ˙ q r,i (t) = ˙ q r,i and ˙ q r, j (t) ≡ 0ifi = j. The specified set-points can be achieved by applying the control law (14.34) with u =−K p (q − q r ) −K d ( ˙ q − ˙ q r ) +n (14.36) where K p = diag[k p,1 , , k p,n ] and K d = diag[k d,1 , , k d,n ] are matrices of positive position and velocity gains, respectively, and the (n × 1) vector n contains a random excitation (noise) as ith element and zeroselsewhere.Identification is more reliable if the influenceofdisturbances (e.g., quantization noise) affecting the manipulator motion and speed is low. For that purpose, M, c, g, and τ f in Equation (14.34) can be computed along q r (t) and ˙ q r (t). The spectrum analysis technique identifies an FRF of the plant dynamics P i ( j ω ) = q i ( j ω )/u i ( j ω ), where ω denotes angular frequency. A comprehensive description of techniques for FRF identification is available in [24]. If computed directly from the measured u i (t) and q i (t), the obtained FRF may appear unreliable. We characterize an FRF as unreliable if the coherence function = 2 nq qq nn (14.37) is small. nn and qq denote the autopower spectra of the excitation signal and of the joint response, respectively, while nq is the cross power spectrum between the excitation and the response. becomes small if the excitation and response data are correlated, which is usual if these data are measured in closed- loop. If this is the case, one should carry out indirect, instead of the direct identification of the plant’s FRF. In the indirect identification, an FRF of the transfer from n i (t)tou i (t) is estimated first (n i is the ith element of n in (14.36)). This estimation represents the sensitivity function S i ( j ω ) = [1 + ( jωk d,i + k p,i )P i ( j ω )] −1 for the feedback loop in the joint i. The coherence of this approach is normally sufficient for reliable estimation in the frequency range beyond the bandwidth of the closed-loop system in the joint i. Hence, a low bandwidth for the closed-loop in the joint i is preferable. On the other hand, sufficiently high bandwidths of the feedback loops in the remaining joints are needed to prevent any motion in these joints. Therefore, separate sets of controller settings are required. With the identified sensitivity, for a known setting of the PD gains, one may find the plant’s FRF: P i ( j ω ) = 1/S i ( j ω ) − 1 jωk d,i + k p,i (14.38) The obtained FRF represents dynamics of the joint i, which are not compensated with the rigid-body dynamic model, as a set of data. For the control design it is more convenient to represent these dynamics with some parametric model in a transfer function or state-space form. There are a number of solutions to fit a parametric model into FRF data [24]. The least-square fit using an output error model structure model is one possibility [25]. The time-domain technique directly determines a parametric model of the plant dynamics. Here, it is only sketched for the case of direct identification, which is based on the measured excitation u i (t) and response q i (t) data. Extension to indirect identification is straightforward. If collected at discrete time instants t 1 , t 2 , , t ζ , the measurement pairs {u i (t 1 ), q i (t 1 )}, {u i (t 2 ), q i (t 2 )}, , {u i (t ζ ), q i (t ζ )}can be used for identification of the plant dynamics assuming a transfer function model of the form Q i (z) U i (z) = P i (z) = b 1 z −1 + b 2 z −2 +···+b n z −n 1 −a 1 z −1 −···−a n z −n (14.39) This model, defined in Z-domain, is often referred to as the ARMA (autoregressive moving-average) model [26]. Provided n <ζ, the least-squares estimates of the model coefficients ϑ = [a 1 a 2 a n b 1 b 2 b n ] T (14.40) Copyright © 2005 by CRC Press LLC 14 -16 Robotics and Automation Handbook Equation (14.43) and Equation (14.44) define forward kinematics (FK) of the RRR robot. The inverse kinematics (IK) is determined by solving the Equations (14.44) for q 1 , q 2 , and q 3 : q 1 = asin x(d 2 + d 3 ) + y x 2 + y 2 − (d 2 + d 3 ) 2 x 2 + y 2 q 3 = atan ± 1 − p 2 wh + p 2 wv − a 2 2 − a 2 3 2 /(2a 2 a 3 ) 2 p 2 wh + p 2 wv − a 2 2 − a 2 3 /(2a 2 a 3 ) q 2 = atan (a 2 + a 3 cos q 3 )p wv − a 3 sin q 3 p wh (a 2 + a 3 cos q 3 )p wh + a 3 sin q 3 p wv p wh = [x − (d 2 + d 3 ) sin q 1 ] 2 + [y + (d 2 + d 3 )cosq 1 ] 2 , p wv = z − d 1 (14.45) The closed-form representation (14.45) has three advantages: (i) an explicit recognition of kinematic singularities, (ii) a direct selection of the actual robot posture by specifying a sign in the expression for q 3 , as the arm can reach each point in the Cartesian space either with the elbow up (− sign) or with the elbow-down (+ sign), and (iii) a faster computation of a highly accurate IK solution than using any recursive numerical method. A rigid-body dynamic model of the RRR robot was initially derived in the standard form (14.6). After that, for the sake of identification, it was transformed into regressor form (14.10). The number of BPS elements is 15, coinciding with the number obtained using the formula derived in [14]. For a given kinematics, this formula computes the minimum number of inertial parameters whose values can determine the dynamic model uniquely. The elements of p and R are expressed in closed-form: p 1 =a 2 2 m 3 + a 2 m 2 (a 2 + 2x 2 ) − I xx,2 + I yy,2 p 2 =−2(a 2 m 2 y 2 + I xy,2 ) p 3 = m 3 (a 3 + x 3 ) p 4 = m 3 y 3 p 5 =a 3 m 3 (a 3 + 2x 3 ) − I xx,3 + I yy,3 p 6 = 2(a 3 m 3 y 3 + I xy,3 ) p 7 = 2d 2 m 2 z 2 + d 2 2 m 2 + 2(d 2 + d 3 )m 3 z 3 + (d 2 + d 3 ) 2 m 3 + I yy,1 + I xx,2 + I xx,3 p 8 =−(d 2 + d 3 )m 3 y 3 − I yz,3 p 9 =−a 3 m 3 (z 3 + d 2 + d 3 ) −(d 2 + d 3 )m 3 x 3 − I xz,3 p 10 =−d 2 m 2 y 2 − I yz,2 p 11 =−a 2 [m 3 (z 3 + d 2 + d 3 ) +m 2 (d 2 + z 2 )] −d 2 m 2 x 2 − I xz,2 p 12 = a 2 2 + a 2 3 + 2a 3 x 3 m 3 + a 2 m 2 (a 2 + 2x 2 ) + I zz,2 + I zz,3 p 13 =a 3 m 3 (a 3 + 2x 3 ) + I zz,3 p 14 = m 2 (x 2 + a 2 ) +m 3 a 2 p 15 = m 2 y 2 (14.46) r 1,1 = ¨ q 1 cos 2 q 2 − ˙ q 1 ˙ q 2 sin(2q 2 ) r 1,2 = 0.5 ¨ q 1 sin(2q 2 ) + ˙ q 1 ˙ q 2 cos(2q 2 ) r 1,3 = 2a 2 {[ ¨ q 1 cos(q 2 +q 3 ) − ˙ q 1 ˙ q 3 sin(q 2 +q 3 )] cos q 2 − ˙ q 1 ˙ q 2 sin(2q 2 +q 3 )} r 1,4 =−2a 2 [( ¨ q 1 sin(q 2 +q 3 ) + ˙ q 1 ˙ q 3 cos(q 2 +q 3 )) cos q 2 + ˙ q 1 ˙ q 2 cos(2q 2 +q 3 )] r 1,5 = ¨ q 1 cos 2 (q 2 +q 3 ) − ˙ q 1 ( ˙ q 2 + ˙ q 3 )sin(2q 2 + 2q 3 ) r 1,6 =−0.5 ¨ q 1 sin(2q 2 + 2q 3 ) − ˙ q 1 ( ˙ q 2 + ˙ q 3 )cos(2q 2 + 2q 3 ) r 1,7 = ¨ q 1 Copyright © 2005 by CRC Press LLC [...].. .1 4 -1 8 Robotics and Automation Handbook 2.5 q1 Angles (rad) q2 0 q3 1. 6 0 10 Time (s) q1 (rad/s) (a) 1 0 1 0 −2 q3 (rad/s) q2 (rad/s) 2 1 0 1 0 10 Time (s) (b) FIGURE 14 .6 The joint space trajectory for the writing task: (a) motions, (b) speeds e3 (rad) e2 (rad) e1 (rad) To establish the correctness of the rigid-body model (14 .46) and (14 .47), all inertial parameters... 10 11 2 0 −2 0 10 Time (s) FIGURE 14 .7 Differences between the closed-form and the recursive IK solutions Copyright © 2005 by CRC Press LLC 1 4-2 0 Robotics and Automation Handbook Input torque (Nm) 2.5 0 −2.5 0 10 Time (s) Speeds (rad/s) Angles (rad) (a) 0.8 0 1 4 0 −4 0 10 Time (s) (b) FIGURE 14 .9 (a) Torque applied to the third joint for the friction model validation; (b) measured (thick) and simulated... inputs τi (i = 1, 2, 3) presented in Figure 14 .11 a The sampling time was Ts = 1 ms Because the parameters of the friction f models (14 .14 ) in all three joints had been estimated already, the friction torques τi (t) (i = 1, 2, 3) were reconstructed, too These are shown in Figure 14 .11 b After collecting all the data used in Equation (14 .18 ) and Equation (14 .19 ), the batch LS estimation (14 .20) of the... K., Modeling and Identification in Robotics, Springer-Verlag, London, 19 98 [5] Asada, H and Youcef-Toumi, K., Direct-Drive Robots: Theory and Practice, MIT Press, London, 19 87 [6] Nethery, J and Spong, M.W., Robotica: A Mathematica package for robot analysis, IEEE Rob Autom Mag., 1, 13 , 19 94 [7] Corke, P.I., A robotics toolbox for MATLAB, IEEE Rob Autom Mag., 3, 24, 19 96 [8] Bennnett, D.J and Hollerbach,... IEEE Trans on Contr Syst Tech., 10 , 19 1, 20 01 [ 21] Golub, G.H and van Loan, C.F., Matrix computations, John Hopkins University Press, London, 19 96 [22] Slotine, J.J.E and Li, W., Applied Nonlinear Control, Prentice Hall, Upper Saddle River, NJ, 19 91 [23] Nijmeijer, H and Van der Schaft, A., Nonlinear Dynamical Control Systems, Springer-Verlag, Berlin, 19 91 [24] Pintelon, R and Schoukens, J., System Identification:... (14 .25), which used online reconstructed joint motions and speeds as feedback coordinates The reconstruction was done according to the Equation (14 .30) and Equation (14 . 31) The PD gains were tuned with “trial and error” to ensure Angles (rad) 4 0 −5 0 10 Time (s) exc exc exc FIGURE 14 .10 Motions of the exciting trajectory: q 1 —thick solid, q 2 —thin solid, and q 3 —dotted Copyright © 2005 by CRC Press. .. from shaft-encoder measurements, Int J Rob Res., 17 , 12 25, 19 98 [11 ] Swevers, J., Ganseman, C., Tukel, D.B., de Schutter, J., and van Brussel, H., Optimal robot excitation and identification, IEEE Trans Rob Autom., 13 , 730, 19 97 [12 ] Calafiore, G., Indri, M., and Bona, B., Robot dynamic calibration: Optimal excitation trajectories and experimental parameter estimation, J Rob Syst., 18 , 55, 20 01 [13 ] Potkonjak,... masses and principal moments of inertia, without sign constraint for products of inertia and coordinates of centers of masses The model computes torques corresponding to the joint space trajectory shown in Figure 14 .6a and Figure 14 .6b The torques are also calculated using a recursive numerical routine implemented in the Robotics Toolbox The differences between the two 5 10 12 0 −5 10 12 5 0 −5 10 11 ... Motion Control 1 4-2 5 References [1] Sciavicco, L and Siciliano, B., Modeling and Control of Robot Manipulators, McGraw-Hill, London, 19 96 [2] Vukobratovi´ , M and Potkonjak, V., Dynamics of Manipulation Robots: Theory and Application, c Springer-Verlag, Berlin, 19 82 [3] Fu, K.S., Gonzales, R.C., and Lee, C.S.G., Robotics: Control, Sensing, Vision, and Intelligence, McGrawHill, London, 19 87 [4] Kozlowski,... Kostic, D., Djordjevic, G., and Rasic, M., Illustrating man-machine motion analogy in robotics — the handwriting problem, IEEE Rob Autom Mag., 10 , 35, 2003 [14 ] Mayeda, H., Yoshida, K., and Osuka, K., Base parameters of manipulator dynamic models, IEEE Trans Rob Autom., 6, 312 , 19 90 [15 ] Armstrong-H´ louvry, B., Dupont, P., and Canudas de Wit, C., A survey of models, analysis tools e and compensation methods . − ˙ q 1 ( ˙ q 2 + ˙ q 3 )cos(2q 2 + 2q 3 ) r 1, 7 = ¨ q 1 Copyright © 2005 by CRC Press LLC 14 -1 8 Robotics and Automation Handbook 0 10 1. 6 0 2.5 Time (s) Angles (rad) q 1 q 2 q 3 (a) 1 0 1 −2 0 2 0. the least-squares estimates of the model coefficients ϑ = [a 1 a 2 a n b 1 b 2 b n ] T (14 .40) Copyright © 2005 by CRC Press LLC 14 -1 6 Robotics and Automation Handbook Equation (14 .43) and Equation. simplest and the most time-efficient least-squares Copyright © 2005 by CRC Press LLC 14 -1 0 Robotics and Automation Handbook where x i (k) = [e i (k), ˙ e i (k), ν i (k)] T (14 .29a) E i = 1 T s 0.5T 2 s 01