Report

An Overview of Control Theory and Digital Signal Processing Luca Matone Columbia Experimental Gravity group (GECo) LHO Jul 18-22, 2011 LLO Aug 8-12, 2011 LIGO-G1100863 Syllabus (tentative) Day Topic Textbooks 1 Control theory: Physical systems, models, linear systems, block diagrams, differential equations, feedback loops, cruise control example, MATLAB implementation. 2 Control theory: Laplace transform and its inverse , transfer functions, partial fraction expansion, first-order and secondorder systems, dynamic response, bode plots, stability criteria, MATLAB implementation. 3 Control theory: robustness, typical compensators, noise suppression, one arm cavity lock example, MATLAB implementation and time-domain simulations with SIMULINK. 4 DSP: Discrete-time signals and systems, impulse response, system stability, convolution and correlation, differential to difference equations, the Z transform, the Discrete-time Fourier Transform (DTFT), the Discrete Fourier Transform (DFT), MATLAB implementation. 5 DSP: The Fast-Fourier Transform (FFT), power spectral density, sampling theorem, aliasing, analog-to-digital transformations, digital filtering, FIR filters, IIR filters, moving average filter, filter design, ADC and DACs, MATLAB implementation. LIGO-G1100863 Chau, Pao C. Process Control: A First Course with MATLAB®. Cambridge University Press, 2002. ISBN 0-521-00255-9. Ingle, Vinay K. and John G. Proakis. Digital Signal Processing using Matlab®. Brooks/Cole 2000. ISBN 0534-37174-4. Smith, Steven W. The Scientist and Engineer’s Guide to Digital Signal Processing. California Technical Publishing 1999. http://www.dspguide.com/ Matone: An Overview of Control Theory and Digital Signal Processing (1) 2 Objective Control System • Manages and regulates a set of variables in a system – SISO – single-input-singleoutput – MIMO – multiple-inputmultiple-output • A quantity is measured then controlled • Requirements – – – – – LIGO-G1100863 Bandwidth Rise time Overshoot Steady state error … Matone: An Overview of Control Theory and Digital Signal Processing (1) 3 Objective Digital Signal Processing • Measure and filter an analog signal • Digital signal – Created by sampling an analog signal – Can be stored • Analog filters – Cheap, fast and have a large dynamic range in both amplitude and frequency • Digital filters – Can be designed and implemented “onthe-fly” – Superior level of performance. • Example: a low pass digital filter can have a gain of 1 ± 0.0002, a frequency cutoff at 1000 Hz, and a gain of less than 0.0002 for frequencies above 1001 Hz. A transition of 1 Hz! LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 4 Control Theory 1 • Given a physical system – Objective: sense and control a variable in the system • Examples – As basic as • a car’s cruise control (SISO) or – Not so basic as • Locking the full LIGO interferometer (MIMO) LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 5 Example: Cruise Control Direction of motion Normal force (n) Friction force (ffr) • Objective Force from engine (f) – Car needs to maintain a given speed • Physical system includes Weight (mg) – car’s inertia – friction Force or free body diagram: allows to analyze the forces at play LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 6 Physical model Direction of motion Normal force (n) Friction force (ffr) Weight (mg) LIGO-G1100863 • Physical system described by the following equation of motion Force from = − = engine (f) ∥ • Simplifying and assuming friction force is proportional to speed = = = − Matone: An Overview of Control Theory and Digital Signal Processing (1) 7 First-order differential equation Direction of motion • Solving for first-order differential equation (assuming is a constant) Engine Friction force (ffr) force (f) Time constant = / LIGO-G1100863 Speed at regime = / = − yields the solution = 1 − −/ Matone: An Overview of Control Theory and Digital Signal Processing (1) 8 MATLAB implementation Direction of motion Friction force (ffr) The linear differential equation describing the dynamics of the system = − Engine force (f) Using MATLAB’s Symbolic Math Toolbox >> dsolve('m*Dy=f-b*y','y(0)=0') ans = (f - f/exp((b*t)/m))/b LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 9 = 1000 = 50 = 500 Results: = ∙ 1 − −/ τ = 63% ∙ cruise_timedomain.m = = 10 τ = = 20 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 10 Block diagram: representing the physical system • To illustrate a cause-and-effect relationship • A single block represents a physical system • Blocks are connected by lines – Lines represent how signals flow in the system • In general, a physical system G has signal x(t) as input and signal y(t) as output • G is the transfer function of the system x(t) LIGO-G1100863 G y(t) Matone: An Overview of Control Theory and Digital Signal Processing (1) 11 Car’s body Transfer function G represents the car’s body – G converts the force from the engine (input signal, ) to the car’s actual speed (output signal, /) =∙ with G = 1 (1 – Units: LIGO-G1100863 − − ) f(t) G Matone: An Overview of Control Theory and Digital Signal Processing (1) v(t) 12 Setting the desired speed • Second transfer function H (the controller) – Converts the desired speed (or reference) to a required force – Sets the throttle – For simplicity, H is set to a constant = ∙ → = ∙ ∙ =∙ – ∙ must be dimensionless vr f H G LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) v 13 Plotting results Generated force by controller H Resulting speed v cruisefeedback_timedomain.m • With = the actual speed is the reference: = • Simulate: setting desired speed to 25 m/s (55 mph) Desired speed vr LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 14 Introducing a disturbance – a hill • In the presence of a hill the equation of motion needs to be re-visited Force from engine (f) • Assuming a small angle θ = − − ∙ θ Direction of motion Friction force (ffr) LIGO-G1100863 θ Weight (mg) Added term Matone: An Overview of Control Theory and Digital Signal Processing (1) 15 Introducing a disturbance – a hill Assuming and are constants = − − ∙ θ Direction of motion Force from engine (f) = ∙ − ∙ θ Friction force (ffr) LIGO-G1100863 ϑ Weight (mg) Added term Matone: An Overview of Control Theory and Digital Signal Processing (1) 16 Modifying the block diagram =∙ θ =∙ −∙ K vr H f + = G v Summation junction LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 17 Modifying the block diagram =∙ θ =∙ −∙ K vr H f + = G v Summation junction LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 18 Plotting results Setting desired speed to 25 m/s and slope of = 5° Resulting speed v cruisefeedback_timedomain.m Generated force by controller H Desired speed LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 19 Negative Feedback 1. Let’s measure the car’s speed and 2. Correct for it by feeding back into the system a measure of the actual speed θ K Error signal vre + - H f + G v c Correction signal LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 20 Negative Feedback 1. Let’s measure the car’s speed and 2. Correct for it by feeding back into the system a measure of the actual speed θ Error signal e: the difference between the desired speed and K the measured speed. If null, then = f + + e H vr - G v c LIGO-G1100863 Correction signal c: in this case it is just a measure of the actual speed Matone: An Overview of Control Theory and Digital Signal Processing (1) 21 Negative feedback – Faster response with feedback (compare blue against red curves) – Speed at regime: 23 / (error of ~10%) LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) cruisefeedback_timedomain2.m • Plot of force vs. time and speed vs. time with negative feedback • Setting = 103 / • Result: 22 Negative feedback • Increasing the controller’s gain (H) • Setting = 104 / • Result: – Even faster response – Speed at regime: 24.8 / (error of ~1%) LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) cruisefeedback_timedomain3.m – decreases the rise time – while decreasing the steady state error 23 Signal flow and block diagrams = − = ∙ ( − ∙ ) =∙ θ K vr + - e H f + G v c LIGO-G1100863 = Matone: An Overview of Control Theory and Digital Signal Processing (1) 24 = − = − System’s open loop gain (dimensionless) = − ∙ − ∙ = − ∙ ∙ − ∙ θ 1 ∙ = ∙ + ∙ 1+∙ 1+∙ vr + e H - LIGO-G1100863 K f + c - Matone: An Overview of Control Theory and Digital Signal Processing (1) G v 25 1 ∙ = ∙ + ∙ 1+∙ 1+∙ ∙ ≫ 1 (high gain, closed loop, with feedback) ∙ ≈ 0 ∙ + ∙ ≈ ∙ ≪ 1(low ∙ gain, open loop, or no θ Error signal in closed loop: close to feedback) zero, proportional to angle K ≈ 1 ∙ + ∙ ∙ vr + - LIGO-G1100863 e H f + c The higher the controller’s gain, the lower e = - G v Matone: An Overview of Control Theory and Digital Signal Processing (1) 26 =∙∙−∙∙ = ∙ ∙ ( − ) − ∙ G ∙ = ∙ ∙ − ∙ ∙ − ∙ ∙ With no feedback = ∙ ∙ − ∙ ∙ θ ∙ ∙ = ∙ − ( )∙ 1+∙ 1+∙ K vr + - LIGO-G1100863 e H f + c - Matone: An Overview of Control Theory and Digital Signal Processing (1) G v 27 ∙ ∙ = − 1+∙ 1+∙ ∙ ≪ 1 (low gain, ∙ ≫ 1 (high gain, closed loop, with feedback) open loop or no ∙ feedback) ≈ 1 ∙ − ∙ ≈ − ≈ ∙ ∙ − ∙ ∙ ∙ θ Actual speed : close to with an error proportional to when in closed loop. The higher the controller’s gain, the lower the speed error. vr + - LIGO-G1100863 e H K f + c - Matone: An Overview of Control Theory and Digital Signal Processing (1) G v 28 =∙ 1 ∙ =∙( + ) 1+∙ 1+∙ θ ∙∙ = ∙ + ∙ 1+∙ 1+∙ vr + - LIGO-G1100863 e H K f + c - Matone: An Overview of Control Theory and Digital Signal Processing (1) G v 29 ∙∙ = ∙ + ∙ 1+∙ 1+∙ ∙ ≫ 1 (high gain, ∙ ≪ 1 (low gain, closed loop, with feedback) open loop, or no feedback) 1 ≈ ∙ + ∙ ∙ ∙ ≈ + ∙ θ Force : at regime, it does not depend on the gain in while proportional to angle vr + - LIGO-G1100863 e K H f + c - Matone: An Overview of Control Theory and Digital Signal Processing (1) G v 30 Plotting and 1 + LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) cruisefeedback_timedomain2.m • Open loop = ∙ ∙ • Closed loop ∙ = ∙ 1+∙ • Setting = 103 / • Plotting the open loop transfer function vs. time and the closed loop transfer function vs. time • Notice the rapid rise time for the closed loop case 31 The error signal e LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) cruisefeedback_timedomain2.m • Plot of error signal e vs time • Error signal decreases to 3 m/s. • Notice a ~10% steady state error 32 Open and closed loop TF with = 104 / LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 33 Error signal e with = 104 / LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 34 Cruise control example • First-order differential equation • Simplest controller: simply a gain with no time constants involved • How to handle more complicated problems? LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 35 Block diagram reduction x x y P2 P1 P1 + ± x P1P2 y x P1 ±P2 y x 1 1 ± 1 2 y P2 x + ∓ P1 y y P2 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 36 Practice Determine the output C in terms of inputs U and R. U R + - LIGO-G1100863 1 + + 2 Matone: An Overview of Control Theory and Digital Signal Processing (1) C 37 Practice Determine the output in terms of inputs 1 , 2 and . U1 R + + 1 1 + + + + 2 C 2 U2 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 38 More practice Determine C/R for the following systems. (c) 1 1 LIGO-G1100863 R+ + +C + 2 1 + + C 1 (b) 2 + R + (a) R+ + 2 1 + + C 1 Matone: An Overview of Control Theory and Digital Signal Processing (1) 39 How do we MEASURE the OL TF of a system when the loop is closed? 1. Add an injection point in a closed loop system 2. Inject signal and read signal 1 (just before the injection) and 2 (right after the injection) 1 3. Solve for the ratio 2 + + 1 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 2 40 So far… • Control theory builds on differential equations • Block diagrams help visualize the signal flow in a physical system • The cause-and-effect relationship between variables is referred to as a transfer function (TF) • The system’s open-loop TF is the product of transfer functions – cruise control example: ∙ – Two cases: ∙ ≪ 1 and ∙ ≫ 1 • MATLAB implementation – Functions used: dsolve LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 41 Laplace Transforms • The technique of Laplace transform (and its inverse) facilitates the solution of ordinary differential equations (ODE). • Transformation from the time-domain to the frequency-domain. • Functions are complex, often described in terms of magnitude and phase LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 42 Linear systems • To map a model to frequency space – System must be linear – Output proportional to input • Given system P x – Input signals: 1 and 2 – Output signals (response): 1 and 2 P y • System P is linear – If input signal: 1 + 2 – Then output signal: 1 + 2 – Superposition principle LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 43 Example • Is = a linear system? Knowing that 1 = 1 and 2 = 2 If input is 1 1 + 2 2 , output is 1 1 + 2 2 = 1 1 + 2 2 = 1 1 + 2 2 System is linear LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 44 Example • Is = 2 a linear system? Knowing that 1 = 1 2 and2 = 2 If input is 1 1 + 2 2 , output is 1 1 + 2 2 2 2 ≠ 1 1 + 2 2 System is not linear LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 45 In general Output −1 + −1 −1 + ⋯ + 0 −1 = + −1 −1 + ⋯ + 0 Input = =0 LIGO-G1100863 =0 Matone: An Overview of Control Theory and Digital Signal Processing (1) ≥ For a stable system 46 Laplace Transform L • Transforms a linear differential equation into an algebraic equation • Tool in solving differential equations • Laplace transform of function f = L () • Laplace inverse transform of function F −1 () = L () where = is the transform variable Imaginary unit LIGO-G1100863 2 Matone: An Overview of Control Theory and Digital Signal Processing (1) 47 Time domain ↔ Laplace domain = f() Input Output y() () LIGO-G1100863 () F() Matone: An Overview of Control Theory and Digital Signal Processing (1) 48 Laplace Transform L ∞ () − = L () = 0 =L LIGO-G1100863 −1 1 () = 2 + () − Matone: An Overview of Control Theory and Digital Signal Processing (1) 49 (Some) Laplace transform pairs () () Unit step () 1 Unit ramp 1 sin(0 ) Sinusoid 1/ 1 − − SHO 0 −0 × 1 − 2 × sin( 1 − 2 0 ) LIGO-G1100863 1 Exponential 1 2 − 2 + 0 2 + 0 2 2 + 20 + 0 2 Matone: An Overview of Control Theory and Digital Signal Processing (1) 50 Laplace transform properties • Linearity L 1 1 + 2 2 • Derivatives – First-order: L () – Second-order: L • Integral = 1 1 + 2 2 = () 2 () 2 = 2 () 1 L = () 0 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 51 Solution to ODEs 1. Laplace transform the system’s ODE 2. Solve the algebraic equation in s 3. Inverse transform back to the time domain LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 52 Transfer Function = =0 =0 = =0 () = = () Using derivative property =0 Algebraic equation in s, the ratio of 2 =0 polynomials in s =0 Transfer function relates input to output .53 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) Transfer Function The roots of the numerator are referred to as zeros. Transfer function can () be defined by = = • The coefficients of s or () • Its poles and zeros =0 =0 The roots of the denominator are referred to as poles. 54 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) Let’s apply it to the cruise control example: transfer function (the car’s body) Direction of motion Engine force (f) Friction force (ffr) f(t) F(s) LIGO-G1100863 G(t) v(t) () = () − () = − () V(s) = where G(s) 1 = at − Pole +Signal / Matone: An Overview of Control Theory and Digital Processing (1) 55 Dynamic response: using lookup tables to inverse transform Laplace inverse transform using lookup tables 1 + 1 1 − − LIGO-G1100863 Input: step function, amplitude 0 = 0 () = L () = 0 The response (in frequency space) is 1/ 0 = ∙ = ∙ + / The time-domain response is = L−1 () = 1 −1 0 =L ∙ ( + ) Matone: An Overview of Control Theory and Digital Signal Processing (1) 56 Dynamic response: using lookup tables to inverse transform Laplace inverse transform using lookup tables 1 + 1 1 − − LIGO-G1100863 0 1 =L ∙ ( + ) 0 −1 1 = ∙L ( + ) −1 0 − = 1− 1 Pole = Matone: An Overview of Control Theory and Digital Signal Processing (1) 57 First-order system step response 63 % = + firstorder.m = 5 /, = 0.2 LIGO-G1100863 Pole p Matone: An Overview of Control Theory and Digital Signal Processing (1) 58 MATLAB implementation The step response of transfer function 5 = +5 >> G=tf(5, [1 5]); >> step(G); LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 59 Partial fraction expansion 1. Reduce a complex function to a collection of simpler ones 2. Then use lookup table Order m () ≤ = = () + Order n 1 −1 =L + ⋯+ L + 1 + = 1 −1 + ⋯ + − = − =0 −1 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 60 Comments = + − = =0 1. Poles of F(s) determine the time evolution of f(t) 2. Zeros of F(s) affect coefficients 3. Poles closer to origin → larger time constants LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 61 Example Find () of the Laplace transform 6 2 − 12 = 3 + 2 − 4 − 4 Sol: Using MATLAB >> [R,P,K]=residue([6 0 -12],[1 1 -4 -4]) R = 3.0000 3 1 2 1.0000 = + + +2 −2 +1 2.0000 P = -2.0000 2.0000 -1.0000 K = = 3 −2 + 2 + 2 − [] LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 62 Example: LRC circuit () = + + () 1 = () + () + 0 11 = + + () LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 63 Example: LRC circuit () () 11 () = + + () = = = 2 + + 1 () LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 64 Example: LRC circuit () () = 2 + + 1 () L = 2 + + 1 () LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 65 LRC circuit: transfer function 1 = ∙ 2 ++1 Setting L = 1 H, C = 1 F and R = 1 Ω LIGO-G1100863 1 = 2 ∙ + +1 Matone: An Overview of Control Theory and Digital Signal Processing (1) 66 LRC circuit: dynamic response to step Setting the input to a step of amplitude 1 V 1 = The unit step response is 1 1 1 = 2 ∙ = 3 + + 1 + 2 + LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 67 LRC circuit: dynamic response to step 1 () = 3 = 2 + + + Using MATLAB for the solution Coefficient vector for polynomial at numerator Coefficient vector for >> n = [1]; polynomial at denominator >> d = [1 1 1 0]; >> [α, a, k] = residue(n, d); = 1 1 + 2 2 + 3 3 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 68 Plotting results of two methods >> y=α.'*exp(a*t); >> plot(t, y, 'bo'); >> y2=step(1,[1 1 1],t); >> plot(t, y2, ‘r.’); LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 69 Second-order system step response secondorder.m Overshoot LIGO-G1100863 Period of oscillation Settling time: time to settle to ±5% of final value (determined by the − term) Note: often the response of a highorder system is similar to the second-order one Matone: An Overview of Control Theory and Digital Signal Processing (1) 70 Verify the following 6 2 − 12 = 3 + 2 − 4 − 4 = 2 − + 3 −2 + 2 6 = 3 + 2 − 4 − 4 = 3 − − 6 −2 + 3 −3 +5 = 2 + 4 + 13 = 2 − − 3 −2 + 2 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 71 Back to cruise control: system’s step response ∙ () = ∙ () 1+∙ 1 where = and = + / θ K e + vr - H f + - G v c LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 72 Step response ∙ 1 = ∙ = 1+∙ ( + ) 2 + −/ = 1− with τ = + + LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 73 Back to cruise control >> >> >> >> >> LIGO-G1100863 n = [k/m]; d = [1 (b+k)/m 0]; [α, a, k] = residue(n, d); y=α.'*exp(a*t); plot(t, y, 'bo'); Matone: An Overview of Control Theory and Digital Signal Processing (1) 74 Back to cruise control >> >> >> >> >> LIGO-G1100863 G = tf([1/m],[1 b/m]); H = k; CL = G * H / (1 + G * H); [y, t] = step(CL); plot(t, y, 'b.'); Matone: An Overview of Control Theory and Digital Signal Processing (1) 75 Transfer function, poles and zeros • It is convenient to express a transfer function G(s) in terms of its poles and zeros: () = () − 1 ∙ − 2 … − =∙ − 1 ∙ − 2 … − • k is the gain of the transfer function LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 76 Summary of pole characteristics • Real distinct poles (often negative) ↔ − • Real poles, repeated m times (often negative) ,1 ,2 + − ,1 − ,2 2 + ⋯+ ,3 − ,3 3 + , − , ↕ 1 , 2 ,1 + ,2 + ,3 + ⋯ + −1 ∙ 2! −1 ! LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 77 Summary of pole characteristics • Complex-conjugate poles ∗ ∗ + ↔ + ∗ − − often re-written as a second-order term 2 ↔ ~ ∙ sin + 2 2 + 2 + • Poles on imaginary axis ∗ – Sinusoid – Pole at zero: step function • Poles with a positive real part – Unstable time-domain solution LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 78 Summary • The Laplace transform is a tool to facilitate solving for ODEs. • Systems need to be linear • No need to do the transform (integral) – Use transform pairs, transform tables – Laplace transform properties: linearity, derivatives and integrals. • Once in the Laplace domain, a TF is simply the ratio of two polynomials in s. Carry out algebra to solve the problem. • No need to do the inverse transform – Use transform pairs, transform tables – For high-order TFs, use the partial-fraction expansion to reduce the problem to simpler parts • IMPORTANT: – Poles of a transfer function determine the time evolution of the system – Poles with a real positive part correspond to unstable and unphysical systems – The system TF needs to have poles with a negative real part • MATLAB implementation – Functions used: step, residue, tf LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 79 Solutions LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 80 Practice Determine the output C in terms of inputs U and R. Sol: 2 = ∙ 1 + 1 + 1 2 U R + - LIGO-G1100863 1 + + 2 Matone: An Overview of Control Theory and Digital Signal Processing (1) C 81 Practice Determine the output in terms of inputs 1 , 2 and . Sol: 1 = ∙ 1 2 + 2 1 + 1 2 1 2 1 − 1 2 1 2 U 1 R + + 1 1 LIGO-G1100863 + + + + U2 2 C 2 Matone: An Overview of Control Theory and Digital Signal Processing (1) 82 More practice Determine C/R for the following systems. Sol: a) = 1 +2 1−1 1 −2 2 b) = 1 +2 1−1 1 c) = 1 +2 1−1 1 1−1 1 1 (b) 2 1 1 LIGO-G1100863 R+ + 2 + + C 1 (c) + R + (a) +C + R+ + 2 1 + + C 1 Matone: An Overview of Control Theory and Digital Signal Processing (1) 83 How do we MEASURE the OL TF of a system when the loop is closed? 1. Add an injection point in a closed loop system 2. Inject signal and read signal 1 (just before the injection) and 2 (right after the injection) 1 3. Solve for the ratio 2 Sol: LIGO-G1100863 1 2 = − + + 1 Matone: An Overview of Control Theory and Digital Signal Processing (1) 2 84 Partial-fraction examples • Denominator: has distinct, real roots – Example 2.4, 2.5, 2.6 • Denominator: complex roots – Example 2.7, 2.8 • Denominator: repeated roots – Example 2.9 LIGO-G1100863 Matone: An Overview of Control Theory and Digital Signal Processing (1) 85 Practice: verify the following 6 = ( + 1)( + 2)( + 3) = 3 − − 6 −2 + 3 −3 +5 = 2 + 4 + 13 −2 = 2 sin(3 + ) 4 = =2 LIGO-G1100863 2 +1 3 +2 2 − 1−+ − −2 2 Matone: An Overview of Control Theory and Digital Signal Processing (1) 86