Implementation Issues for the Virtual Spring

Similar documents
Positioning Servo Design Example

Control of Electromechanical Systems

Transient Response of a Second-Order System

Control Systems I Lecture 10: System Specifications

1 x(k +1)=(Φ LH) x(k) = T 1 x 2 (k) x1 (0) 1 T x 2(0) T x 1 (0) x 2 (0) x(1) = x(2) = x(3) =

100 (s + 10) (s + 100) e 0.5s. s 100 (s + 10) (s + 100). G(s) =

AMME3500: System Dynamics & Control

Laboratory notes. Torsional Vibration Absorber

6.1 Sketch the z-domain root locus and find the critical gain for the following systems K., the closed-loop characteristic equation is K + z 0.

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Mechanical Engineering Dynamics and Control II Fall 2007

ME 375 Final Examination Thursday, May 7, 2015 SOLUTION

FEEDBACK CONTROL SYSTEMS

The Torsion Pendulum (One or two weights)

Control of Manufacturing Processes

Laboratory 11 Control Systems Laboratory ECE3557. State Feedback Controller for Position Control of a Flexible Joint

Inverted Pendulum. Objectives

Quanser NI-ELVIS Trainer (QNET) Series: QNET Experiment #02: DC Motor Position Control. DC Motor Control Trainer (DCMCT) Student Manual

Control of Manufacturing Processes

Outline. Classical Control. Lecture 1

Compensator Design to Improve Transient Performance Using Root Locus

Lab 6a: Pole Placement for the Inverted Pendulum

State Feedback Controller for Position Control of a Flexible Link

Methods for analysis and control of. Lecture 6: Introduction to digital control

Modeling and Experimentation: Mass-Spring-Damper System Dynamics

Introduction to Feedback Control

Systems Analysis and Control

2.004 Dynamics and Control II Spring 2008

a) Find the equation of motion of the system and write it in matrix form.

Laboratory handouts, ME 340

Introduction to Control (034040) lecture no. 2

Nonlinear Oscillators: Free Response

Transient Stability Analysis with PowerWorld Simulator

Mechatronics Assignment # 1

Lab #2: Digital Simulation of Torsional Disk Systems in LabVIEW

Rotary Motion Servo Plant: SRV02. Rotary Experiment #11: 1-DOF Torsion. 1-DOF Torsion Position Control using QuaRC. Student Manual

Chapter 14 Oscillations. Copyright 2009 Pearson Education, Inc.

ME scope Application Note 28

Position Control Experiment MAE171a

Classify a transfer function to see which order or ramp it can follow and with which expected error.

A FEEDBACK STRUCTURE WITH HIGHER ORDER DERIVATIVES IN REGULATOR. Ryszard Gessing

Lab 3: Model based Position Control of a Cart

Homework 7 - Solutions

ECE-320: Linear Control Systems Homework 8. 1) For one of the rectilinear systems in lab, I found the following state variable representations:

Lecture 1 Notes: 06 / 27. The first part of this class will primarily cover oscillating systems (harmonic oscillators and waves).

Introduction to Vibration. Mike Brennan UNESP, Ilha Solteira São Paulo Brazil

11/17/10. Chapter 14. Oscillations. Chapter 14. Oscillations Topics: Simple Harmonic Motion. Simple Harmonic Motion

Introduction to Controls

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING

ECSE 4962 Control Systems Design. A Brief Tutorial on Control Design

Dr Ian R. Manchester

Systems Analysis and Control

Systems Analysis and Control

Chapter 2 SDOF Vibration Control 2.1 Transfer Function

EE C128 / ME C134 Fall 2014 HW 6.2 Solutions. HW 6.2 Solutions

Mechanical Systems Part A: State-Space Systems Lecture AL12

Chapter 5 HW Solution

Linear Control Systems Solution to Assignment #1

Course roadmap. Step response for 2nd-order system. Step response for 2nd-order system

Video 5.1 Vijay Kumar and Ani Hsieh

Oscillations. Simple Harmonic Motion (SHM) Position, Velocity, Acceleration SHM Forces SHM Energy Period of oscillation Damping and Resonance

Chapter 7: Time Domain Analysis

Chapter 15. Oscillations

EXPERIMENTALLY DETERMINING THE TRANSFER FUNCTION OF A SPRING- MASS SYSTEM

Mechanical Resonance and Chaos

Digital Control Systems

Example: Modeling DC Motor Position Physical Setup System Equations Design Requirements MATLAB Representation and Open-Loop Response

Example: DC Motor Speed Modeling

6.003 Homework #6 Solutions

سایت آموزش مهندسی مکانیک

Module 3F2: Systems and Control EXAMPLES PAPER 2 ROOT-LOCUS. Solutions

Digital Control: Part 2. ENGI 7825: Control Systems II Andrew Vardy

A Light Weight Rotary Double Pendulum: Maximizing the Domain of Attraction

Index. Index. More information. in this web service Cambridge University Press

Chapter 9 Robust Stability in SISO Systems 9. Introduction There are many reasons to use feedback control. As we have seen earlier, with the help of a

INC 341 Feedback Control Systems: Lecture 3 Transfer Function of Dynamic Systems II

2.004 Dynamics and Control II Spring 2008

SRV02-Series Rotary Experiment # 1. Position Control. Student Handout

Second Order Transfer Function Discrete Equations

MAE143A Signals & Systems, Final Exam - Wednesday March 16, 2005

Dr Ian R. Manchester Dr Ian R. Manchester AMME 3500 : Root Locus

Controller Design using Root Locus

Discrete Systems. Step response and pole locations. Mark Cannon. Hilary Term Lecture

Torsion Spring Oscillator with Dry Friction

University of Alberta ENGM 541: Modeling and Simulation of Engineering Systems Laboratory #7. M.G. Lipsett & M. Mashkournia 2011

e jωt = cos(ωt) + jsin(ωt),

C(s) R(s) 1 C(s) C(s) C(s) = s - T. Ts + 1 = 1 s - 1. s + (1 T) Taking the inverse Laplace transform of Equation (5 2), we obtain

IfA Fachpraktikum - Experiment 3.7A : Flexible Shaft A

MAE143 B - Linear Control - Spring 2018 Midterm, May 3rd

MATHEMATICS FOR ENGINEERING TRIGONOMETRY TUTORIAL 3 PERIODIC FUNCTIONS

Stabilizing the dual inverted pendulum

SAMPLE EXAMINATION PAPER (with numerical answers)

Control of Single-Input Single-Output Systems

Example on Root Locus Sketching and Control Design

Mechatronics Engineering. Li Wen

Analyzing the Stability Robustness of Interval Polynomials

Chapter 5 Design. D. J. Inman 1/51 Mechanical Engineering at Virginia Tech

Lab 11 - Free, Damped, and Forced Oscillations

Modeling and System Identification for a DC Servo

Lab 3: Quanser Hardware and Proportional Control

Mathematical Modeling and response analysis of mechanical systems are the subjects of this chapter.

Transcription:

Implementation Issues for the Virtual Spring J. S. Freudenberg EECS 461 Embedded Control Systems 1 Introduction One of the tasks in Lab 4 is to attach the haptic wheel to a virtual reference position with a virtual spring, as depicted in Figure 1, where denotes the angle of the haptic wheel, θ z the angle of the reference position, k the torsional spring constant, and J the inertia of the combined haptic wheel/dc motor system. Students are asked to turn the wheel away from its reference position to an initial angle (), release it, and then observe the resulting behavior. Ideally, the released wheel should exhibit sustained oscillations of amplitude equal to () and natural frequency determined by the values of k and J. In fact, the oscillations may die out or increase with time, and the observed frequency and amplitude may differ from their ideal values. In Lab 6 a virtual damper is added to the virtual spring, with the intention of making the system critically damped. Once again, the computed value of damping needed to achieve a monotonic response may differ from that found in the lab. It is the purpose of this set of notes to explore the difference between predicted and observed behavior by adopting more accurate models of the haptic wheel/virtual spring system than that depicted in Figure 1. θ z k J Figure 1: Haptic wheel with inertia J attached to reference position with virtual spring k. We shall use both common engineering units as well as SI units in these notes. For example, the spring constant k will be specified in units of N-mm/degree. However, the inertia of the wheel/motor will be given in terms of N-m/(radians/sec 2 ) = kg-m 2 /radian. 1 The units of these variables must be converted into consistent values before using them in mathematical formulas. Revised September 2, 217. 1 Because a radian is a dimensionless quantity, documentation sometimes refers to the units of inertia simply as kg-m 2. An excellent description of a radian is found in https://en.wikipedia.org/wiki/radian. 1

2 Models of the Haptic Wheel We now study three models of the haptic wheel/dc motor system. Each of these will be useful to our analysis: the simpler models more readily lend themselves to analysis, and the more complex models better capture system behavior. Which model we use in a given situation will depend on the phenomenon we are trying to describe. 2.1 Double Integrator Model In principle, attaching the wheel to a reference using a spring will result in a harmonic oscillator having both a physical component (the haptic wheel), and a virtual component (the spring). Indeed, Newton s laws for rotary motion imply that the haptic wheel will accelerate in response to applied torque τ J = τ, (1) and thus the transfer function from torque τ to wheel angle is a double integrator: Hooke s law for an ideal spring states that the reaction torque is given by Together (1) and (3) imply that G(s) = 1/Js 2. (2) τ = k( θ z). (3) J + k = kθ z. (4) Students will recognize (4) as the differential equation of an undamped harmonic oscillator. Hence the combination of the haptic wheel and virtual spring is a harmonic oscillator with natural frequency ω n = k/j radians/second, or f n = ω n /2π Hz 2. According to this model, if we turn the haptic wheel to an initial angle, and then release it, it will oscillate indefinitely. The differential equation (4) can be expressed as the block diagram in Figure 2, showing that the haptic wheel/virtual spring may be viewed as a feedback system with input equal to the reference position θz. The transfer function from θz(s) to (s) is given by (s) = G CL (s)θz(s), where G CL (s) = kg(s) 1 + kg(s) k = Js 2 + k. (5) G(s) * τ Σ k 1/J - 1/s. 1/s Figure 2: Block diagram showing haptic wheel/virtual spring as a feedback system. Example 1 (ETH Zurich) The value of inertia for the haptic wheel has two contributions, one from the wheel itself, given by J z = 2.8 1 4 N-m/(rad/sec 2 ), and one from the motor driving the wheel, given by J m = 1.7 1 4 N-m/(rad/sec 2 ), for a total inertia of J = 4.5 1 4 N-m/(rad/sec 2 ). In Lab 4 you are asked to implement a virtual spring with a spring constant of k = 5 N-mm/degree, and compute the natural frequency, f n Hz, of the resulting harmonic oscillator. 2 For an excellent discussion of the difference between radians/second and Hz, see https://en.wikipedia.org/wiki/radian per second 2

2.2 Second Order Model with Damping In reality, the model of the haptic wheel/virtual spring described in Section 2.1 is too simplistic because the motor has a significant amount of inherent damping that will cause the oscillations to decay to zero. A more realistic model that includes the damping is depicted in Figure 3, and described by the differential equation J + b m θz = τ, (6) where b m denotes damping inherent in the DC motor. The transfer function from torque to wheel angle corresponding to (6) is given by 1 G 2 (s) = s(js + b m ). (7) * τ Σ k Σ 1/J - -. 1/s 1/s b m Figure 3: Haptic wheel with inertia J attached to reference position with virtual spring k and damping b m. With reaction torque given by (3), the closed loop response in Figure 3 has transfer function G CL 2 (s) = kg 2(s) 1 + kg 2 (s) k/j = s 2 + b m s/j + k/j. (8) If the damping term in Figure 3 is sufficiently small, then one would expect the resulting closed loop system (8) to possess a pair of lightly damped poles near the frequency of the resonant poles whose locations were computed in Section 2.1. Denote these poles by The time responses associated with the poles p ± are given by p ± = ζω n ± ω n j 1 ζ 2. (9) e ζωnt e ±jωn 1 ζ 2t, (1) and with thus decay with time constant 1/ζω n, and oscillate with damped natural frequency given by (in Hz) f d = f n 1 ζ2. (11) Note that, for ζ sufficiently small, the closed loop system will exhibit lightly damped oscillations with frequency f d f n. Example 2 (ETH Zurich) The value of motor damping is b m =.13 N-m/(radians/sec). The value of damping coefficient may be determined from the equation 2ζω n = b m /J, where ω n = k/j radians/second, yielding ζ =.181. It follows that the the damped natural frequency is only slightly less than that for the undamped system. 3

2.3 Fourth Order Model with Shaft Compliance The model of the haptic wheel discussed in Section 2.2 is overly simplistic because it ignores the fact that the shaft to which the wheel is mounted is compliant and has a resonance, or lightly damped pair of complex poles. To explain, denote the angle measured by the encoder by θ e, and note that θ e will generally differ from due to shaft compliance with spring constant k c and damping b c. Then the wheel/motor system is fourth order, and satisfies the differential equations J m θe + b m θe + k c (θ e ) + b c ( θ e ) = τ (12) with transfer function from torque τ to encoder angle θ e given by G 4 (s) = J z θz + k c ( θ e ) + b c ( θ e ) =, (13) J z s 2 + b c s + k c (J m s 2 + (b m + b c )s + k c ) (J z s 2 + b c s + k c ) (b c s + k c ) 2. (14) Consider the feedback system obtained by replacing G(s) in Figure 2 by G 4 (s), and applying the reaction torque τ = k(θ e θ z). (15) Denote the resulting closed loop transfer function form θ z to θ e by G CL 4 (s) = kg 4(s) 1 + kg 4 (s). (16) Example 3 (ETH Zurich) The damping and spring constant for the shaft compliance are given by b c =.1 N-m/(radian/sec) and k c = 5 N-m/sec, respectively. Bode plots of the three open loop models (2), (7), and (14) are found in Figure 4. Note that the effect of the neglected damping on the Bode plot occurs at low frequencies, while that of the neglected resonance is at a much higher frequency, approximately 35 Hz. Hence if the target frequency of oscillation is at a frequency well below 35 Hz, the 4th order model should exhibit decaying oscillations with approximately the same frequency as that predicted by the 2nd order model. The corresponding closed loop Bode plots for the three models, (5), (8), and (16), are found in Figure 5. As we expect, the two system models that include damping have lightly damped poles with approximately the same natural frequency as that of the double integrator system, for which the poles are on the imaginary axis. Finally, the closed loop responses of both the three systems (5), (8), and (16) to an initial haptic wheel displacement () = 2 are shown in Figure 6. 3 Digital Implementation Effects The preceding analysis has completely neglected the effects of the digital implementation of the virtual spring. For example, we have ignored the effects of time sampling and encoder quantization, the fact that we use PWM rather than a linear input, and the fact that the applied torque must satisfy saturation limits. We now study the effect of one of these implementation effects, specifically that of time sampling. In Lab 4 we update the encoder angle and the reaction torque in an untimed loop. However, we can measure an average value of the sample time in the lab, and use this value to determine the effects of sampling. In Lab 6 we use an interrupt routine to read the encoder and provide a specified time step with which to perform these tasks. 3.1 Sampling and the Double Integrator Model We shall first analyze this effect for the second order model that neglects damping, as shown in Figure 7. 4

3 open loop models for haptic wheel/motor 2 15 Magnitude (db) 1 5 5 Phase (deg) 1 9 18 27 G G 2 G 4 36 1 2 1 1 1 1 1 1 2 1 3 Frequency (Hz) Figure 4: Bode plots of the double integrator, 2nd order damped, and 4th order plant models, ETH Zurich data. 15 3 closed loop models for haptic wheel/motor 1 Magnitude (db) 5 5 Phase (deg) 1 9 18 27 G C L G C L 2 G C L 4 36 1 2 1 1 1 1 1 1 2 1 3 Frequency (Hz) Figure 5: Closed loop Bode plots for the double integrator, 2nd order damped, and 4th order plant models, ETH Zurich data. 5

response to initial displacement = 2 Amplitude 2 G C L (s) 2.2.4.6.8 1 1.2 1.4 1.6 1.8 2 Time (seconds) Amplitude 2 G C L 2 (s) 2.2.4.6.8 1 1.2 1.4 1.6 1.8 2 Time (seconds) Amplitude 2 G C L 4 (s) 2.2.4.6.8 1 1.2 1.4 1.6 1.8 2 Time (seconds) Figure 6: Closed loop response to initial displacement () = 2 for the double integrator, 2nd order damped, and 4th order plant models, ETH Zurich data. G d (z) *(kt) Σ - k τ ZOH G(s) (t) T (kt) Figure 7: Sampled-data system. 6

Consider an analog plant with transfer function G(s) followed by a sampler with period T and preceded by a Zero Order Hold (ZOH). It is a standard result in control textbooks 3 that the transfer function of the resulting discrete time system is given by { { }}} G(s) G d (z) = (1 z 1 )Z {S T L 1, (17) s where Z, L, and S T denote the z transform, Laplace transform, and sampling operators, respectively 4. Applying (17) to (2) yields G d (z) = 1 T 2 z + 1 J 2 (z 1) 2 (18) The closed loop transfer function from reference position to wheel angle in Figure 7 is thus given by G CL d (z) = kg d(z) 1 + kg d (z) Define α (k/j)(t 2 /2) and note that α = ω 2 nt 2 /2. Then (19) reduces to = kt 2 (z + 1) 2Jz 2 + (kt 2 4J)z + (2J + kt 2 ). (19) G CL α(z + 1) d (z) = z 2 + (α 2)z + (1 + α). (2) One may show that the closed loop system will be unstable for any value of sample time T. Indeed, let p 1 and p 2 denote the closed loop poles. Then (z p 1 )(z p 2 ) = z 2 (p 1 +p 2 )z +p 1 p 2, and thus p 1 p 2 = 1+α > 1. It follows that at least one of p 1 and p 2 must lie outside the closed unit circle. Solving for the pole locations yields p 1,2 = 1 ω2 nt 2 ± jω n T 1 ω 4 nt 2 2 /16. (21) Suppose that T is sufficiently small that ω 2 nt 2 /16 1. Then it may be verified that p 1,2 2 = 1 + ω2 nt 2, (22) 2 and thus that the system is unstable even for small values of sample time, such as those observed in Lab 4. 3.2 Sampling and the 2nd Order Model with Damping In fact, instability may not be observed when implementing a virtual spring in Lab 4. The reason is the damping in the motor that we discussed in Section 2.2. Rewrite the damped second order model (7) as and define the parameters G 2 (s) = 1 b m b m /J s(s + b m /J), (23) a b m /J k 1/b m c 1 e at at e at at 1 + e at (at 1 + e at ) k 1 k. a 3 For example, see Chapter 8 of G. F. Franklin, J. D. Powell, A. Emami-Naeini, Feedback Control of Dynamic Systems, 5th ed., Pearson Prentice Hall, 26. 4 This expression is often abbreviated G d (z) = (1 z 1 )Z {G(s)/s}. 7

Then applying (17) yields the discrete model The feedback system in Figure 3 becomes G 2d (z) = k 1 (z + c) (z 1)(z e at ). (24) G CL 2d (z) = kg 2d(z) 1 + kg 2d (z) kk 1 (z + c) = z 2 + z(kk 1 1 e at ) + (kk 1 c + e at ). (25) Examples show that the system (25) may be stable for sufficiently small values of sample time. Example 4 (ETH Zurich) For a sample time T = 1 msec, it may be verified numerically that the poles of (25) lie outside the unit circle in the z-plane, and thus the discretized system is unstable. For a sample time T =.1 msec, on the other hand, the poles lie strictly inside the unit circle, and thus the system will display decaying oscillations. To illustrate, the response to an initial condition () = 2 is plotted in Figure 8, and we see that the inherent damping is sufficient to overcome the destabilizing effects of the sampled-data controller implementation. Response to Initial Conditions 2 G C L 2d (z) haptic wheel angle, degrees 15 1 5 5 1 15 2.2.4.6.8 1 1.2 1.4 1.6 1.8 2 Time (seconds) Figure 8: Response to initial displacement () = 2 for the system (25) with T =.1 second. 3.3 Damping to Exactly Offset the Sampled-Data Instability It is interesting to compute the amount of motor damping that would exactly offset the destabilizing effects of the sampled-data implementation for a given value of sample time T. (Of course, we cannot in practice vary the motor damping.) As we shall see, the equations involved are too complicated to exactly compute this value; however, for small values of T we can make a reasonable approximation. The closed loop poles are the roots of the denominator polynomial in (25). To have complex poles lying on the stability boundary it is necessary that the constant coefficient of this polynomial, which is equal to 8

the product of the poles, be equal to one: kk 1 c + e at = 1. Substituting the definitions of the parameters k 1 and c yields kk ( 1 e at at e at ) + e at = 1. (26) a For small values of T, the equation (26) may be approximated using e at 1 at + a 2 T 2 /2, yielding kk a ( 1 (1 at + a 2 T 2 /2) at (1 at + a 2 T 2 /2) ) + (1 at + a 2 T 2 /2) = kk a ( a 2 T 2 /2 a 3 T 3 /2 ) + (1 at + a 2 T 2 /2) 1 (27) Subtracting 1 from both sides of (27), dividing through by T, and keeping only first order terms yields kk T 2 1. (28) Finally, substituting k = 1/b m shows that the necessary condition (26) for the discrete system to be a stable oscillator is (approximately) that the motor damping satisfies b m = kt 2. (29) Of course we cannot vary the motor damping; however, we could think of adding additional virtual damping to that the sum of motor damping b m and virtual damping b satisfies (29). In the next section, we add virtual damping for a different purpose. 4 Critical Damping We have seen previously that the effect of the damping b m present in the wheel/motor model causes the predicted oscillations to decay with time. Using a simple model of the motor, we can compute the amount of additional virtual damping that must be added to the system in order to make the response to an initial displacement critically damped. As you recall, critical damping is the smallest value of damping for which the response of a system converges monotonically to its final position, exhibiting no oscillations or overshoot. To make the computations tractable, we will work with G 2 (s), the 2nd order model of the wheel/motor system that includes the motor damping that is described in (6). Next, we add a damping term to our torque computation, yielding τ = k( θ z) b (3) Applying (3) to (6) yields J + (b m + b) + k = kθ z, and the closed loop transfer function from θ z to is given by G CL k/j 2 = s 2 + ((b m + b)/j)s + k/j. (31) Comparing the denominator of (31) to the standard parameterization s 2 +2ζω n s+ωn, 2 we see that ω n = k/j and ζ = b m + b 1. (32) 2 kj For critical damping we must set (32) equal to one; doing so and solving for b yields b = 2 kj b m. (33) Example 5 Figure 9 shows the response of the haptic wheel to an initial angle displacement () = 2 with critical damping (33). As predicted, the wheel angle returns monotonically to zero. 9

Response to Initial Conditions 2 18 16 14 Amplitude 12 1 8 6 4 2.2.4.6.8 1 1.2 1.4 1.6 1.8 2 Time (seconds) Figure 9: Response of the haptic wheel to initial angle displacement with critical damping: b = 2 kj b m. 5 Torque Saturation Recall that we impose a limit on the duty cycle of the PWM signal in order to avoid excessively large torque inputs. Hence if you test the virtual spring by turning the haptic wheel too far before releasing it, the desired torque value may not be achievable. As a result, you may not see the expected oscillation frequency until the amplitude of the oscillations have decayed sufficiently. Consider the feedback system in Figure 1, where the limit on the commanded torque value is modeled as a saturation nonlinearity with limit δ: δ, τ > δ τ sat = τ, τ δ (34) δ, τ < δ * τ τ sat Σ k 1/J -. 1/s 1/s Figure 1: Haptic wheel with inertia J attached to reference position with virtual spring k and torque saturation. To understand the effect of the saturation, suppose we turn the wheel to an initial angle () and release it. With no loss of generality, we assume that the reference positions is θz =, and thus that the initial reaction torque is given by τ = k (). If () is sufficiently small that τ δ, then the wheel will oscillate with frequency f n = k/j/2π Hz and amplitude (). Otherwise, if τ > δ, the magnitude of the 1

torque applied to the wheel will be equal to the saturation limit, and it is difficult to determine what effect this will have on the motion of the wheel. To analyze the effect of torque saturation, we will use a technique from nonlinear control termed describing function analysis 5. This technique is based on several assumptions, and at most will yield only approximate results. We shall gloss over these assumptions, and merely discuss the steps required to perform the analysis, which as it happens works fairly well in this application. To apply describing function analysis, we suppose that the haptic wheel is oscillating periodically with period f n Hz and amplitude θz max. Then it follows that torque is also oscillating with period f n Hz and amplitude A = kθ max z. (35) The describing function associated with the torque nonlinearity (34) is a function of both the saturation limit δ and the amplitude A given by (35) { 1, A/δ 1 N(A) = (2/π) (arcsin(δ/a) + (δ/a) ) 1 (δ/a) 2 (36), A/δ > 1. and is plotted as a function of A/δ in Figure 11. 1.8 N(A/δ).6.4.2 1 2 3 4 5 6 7 8 9 1 A/δ Figure 11: Normalized describing function (36) of saturation nonlinearity (34). Suppose that the torque applied to the wheel is oscillating with amplitude A. Then, using describing function analysis, the frequency of oscillations may be estimated by replacing the saturation in Figure 1 by a constant gain with value N(A). The closed loop transfer function corresponding to (5) is now given by G CL kn(a) sat(s) = Js 2 + kn(a). (37) The poles of the transfer function lie at s = j kn(a)/j, corresponding to a natural frequency f n = kn(a)/j/2π Hz. (38) 5 A good introduction is found in Chapter 7 of H. K. Khalil, Nonlinear Systems, 3rd ed., Prentice Hall, 22. 11

Clearly, if A δ then N(A) = 1, and the frequency of oscillations is identical to that without the saturation. Otherwise, if A > δ, then it follows from Figure 11 that N(A) < 1, and thus (38) predicts that the effect of the saturation will be a lower oscillation frequency. Example 6 (ETH Zurich) For the ETH Zurich haptic wheel, torque saturates at δ =.835 Nm. The associated non-normalized describing function is plotted in Figure 12. Suppose we turn the wheel to an initial angle () and release it. With no saturation present, the wheel will oscillate with a frequency f n = 12.7 Hz that is independent of the initial angle displacement, and torque will oscillate with the same frequency, achieving a maximum amplitude A = k () Nm, where k =.5 Nm/degree. If the saturation nonlinearity is present, the applied torque will saturate unless k () <.835, or () < 16.7. For three different values of () that result in saturation, Table 1 collects the values of torque amplitude A (34), the resulting value of the describing function N(A) (36), and the frequency of oscillation predicted by (38). Note that a 9 initial displacement results in oscillations withfrequency approximately half that observed when no saturation is present. 1 δ =.835 N(A) 4 6 9.8 N(A).6.4.2 1 2 3 4 5 6 Figure 12: Describing function (36) of saturation nonlinearity of ETH wheel, with δ =.835 Nm. A () A Nm N(A) f n Hz 4 2.52 9.1 6 3.35 7.5 9 4.5.24 6.2 Table 1: Initial wheel displacement (), maximum torque A (34), describing function N(A) (36), and predicted frequency of oscillation f n (38). We now simulate the effect of the saturation nonlinearity using the 2nd order model with damping described in Section 2.2. Because of the damping, the oscillations that result from an initial displacement 12

that causes torque saturation will eventually decay, and torque will come off saturation. The initial oscillation frequency should thus be smaller than if the saturation were not present; the frequency should increase to the theoretical value without saturation as the amplitude of the oscillations decays. Example 7 (ETH Zurich) For an initial angle displacement () = 9 plots commanded and actual torque are plotted in Figure 13. 5 4 () =9 commanded torque saturated torque 3 2 torque, N-m 1 1 2 3 4 5.5 1 1.5 2 2.5 3 3.5 4 time, seconds Figure 13: Commanded vs saturated torque, () = 9. The resulting wheel angle (t) is plotted in Figure 14. Figure 15 shows in detail the initial and final portion of the wheel oscillations. Note that, as predicted, the initial oscillations have frequency 7 Hz, and increase to 12 Hz as they decay in amplitude. 13

1 () =9 8 haptic wheel angle, degrees 6 4 2 2 4 6 8 1.5 1 1.5 2 2.5 3 3.5 4 time, seconds Figure 14: Haptic wheel angle, () = 9. 1 () =9 5 5,saturated 1.1.2.3.4.5.6.7.8.9 1 time, seconds 3 2 1 1 2, unsaturated () =9 3 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 time, seconds Figure 15: Detail of haptic wheel angle, () = 9. 14