mcmaster - intro to linear control systems

437
EE 3CL4, L 1 1 / 21 Tim Davidson Why are you here? What is a control system? What tools will we use? Administrative details Parting shot EE3CL4: Introduction to Linear Control Systems Lecture 1 Tim Davidson McMaster University Winter 2011

Upload: andre-gomes

Post on 25-Nov-2015

48 views

Category:

Documents


4 download

TRANSCRIPT

  • EE 3CL4, L 11 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    EE3CL4:Introduction to Linear Control Systems

    Lecture 1

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 12 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Outline

    1 Why are you here?

    2 What is a control system?

    3 What tools will we use?

    4 Administrative details

    5 Parting shot

  • EE 3CL4, L 14 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Why are you here?

    You might be interested in:

    Designing guidance systems for: the next Mars Rover, a space craft or a UAV

  • EE 3CL4, L 15 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Why are you here?

    You might be interested in:

    Designing industrial or biomedical robots

  • EE 3CL4, L 16 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Why are you here?You might be interested in:

    Designing humanoid robots

  • EE 3CL4, L 17 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Why are you here?You might be interested in: Designing control systems for hybrid or electric cars

    Designing disk drives

    Developing technologies for enhanced powerdistribution (Smart Grid)

  • EE 3CL4, L 18 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Why are you here?

    You might be interested in:

    Designing an automated insulin delivery system

  • EE 3CL4, L 19 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Why are you here?

    You might be interested in:

    Designing and analyzing financial systems

  • EE 3CL4, L 111 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    What is a feedback controlsystem?

  • EE 3CL4, L 112 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    What is a feedback controlsystem?

    Example: You driving a car

  • EE 3CL4, L 114 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    What tools will we use?

    Newtonian mechanics, linear and rotational(Phys 1D03)

    Basic electromagnetism (Phys 1E03, EE 2CJ4) Electric circuit analysis (EE 2CI5, EE 2CJ4, EE 2EI5) Step response of first and second order systems

    (Math 2P04/2Z03, EE 2CI5, EE 2CJ4) Laplace transforms

    (Math 2P04/2Z03, EE 2CJ4, EE 3TP4) Transfer functions (EE 2CJ4, EE 3TP4) Bode diagrams (EE 2CJ4) Structured problem solving methods

    (EE 2CI5, EE 2CJ4, EE 3TP4, . . . )

  • EE 3CL4, L 116 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Contact details

    Tim DavidsonITBA310Ext. [email protected], EE3CL4 in subject line

    Course web site (soon to be fully updated for 2011)http://www.ece.mcmaster.ca/davidson/EE3CL4

    A formal course outline appears on the web site.Here we will focus on some key points

  • EE 3CL4, L 117 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Class details

    Lectures Tuesday, Thursday, Friday, 12:30pm, TSH/B128 Tentative topic schedule will appear on web site

    Tutorials (starting next week) T01: Tuesday, 8:30am, T13/125 T02: Monday, 11:30am, BSB/106

    Labs (tentatively starting 24 January) Four labs One every other week, ITB/154 Significant pre-lab work will be required

  • EE 3CL4, L 118 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Marking scheme

    Laboratory reports: 20% Midterm test: 25%

    Tentatively scheduled for week starting Monday 28 Feb(first week after midterm break), 7:00pm 8:30pm

    Final examination: 55%

    Students must personally complete all laboratories andall laboratory reports in order to be eligible for a finalgrade

    Formally deferred tests & exams may be conductedorally

    Remarking requests will require documentation

    On tests & exams, expect to see problems that youhave not seen before

  • EE 3CL4, L 119 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Some suggestions

    Be active in lectures Participate in tutorials Take advantage of the labs Do half of the assigned problems under examination

    conditions In exams, explain your methodology

  • EE 3CL4, L 121 / 21

    Tim Davidson

    Why are youhere?

    What is acontrolsystem?

    What tools willwe use?

    Administrativedetails

    Parting shot

    Parting shot

  • EE 3CL4, L 21 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    EE3CL4:Introduction to Linear Control Systems

    Lecture 2

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 22 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Outline

    1 What is control engineering

    2 Examples

    3 Design process

    4 Disk drive example

  • EE 3CL4, L 24 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    What is control engineering

    First we have a system that we want to understand Typically, that means a mathematical model

    Then we use that understanding to design a secondarysystem that controls the behaviour of the first

    Must obtain appropriate control, even if modelinaccurate, or subject to noise/disturbances

    Mathematical model Must balance accuracy against insight generated This course: models will be linear Hence, tools available for insight: superposition,

    transfer function, Laplace

  • EE 3CL4, L 25 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Model, open-loop, closed-loop

  • EE 3CL4, L 26 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Model, open-loop, closed-loop

    What about disturbances? Mismatch (temperature, age)

  • EE 3CL4, L 27 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Model, open-loop, closed-loop

  • EE 3CL4, L 28 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Multivariable control

    Something for fourth year!

  • EE 3CL4, L 210 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Watts flyball governor

  • EE 3CL4, L 211 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    CD player speed control:Open-Loop

  • EE 3CL4, L 212 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    CD player speed control:Closed-Loop

  • EE 3CL4, L 213 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Doritos

    John MacGregor (Chem Eng): Visual feedback control of flavours

  • EE 3CL4, L 215 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Structured approach to design

  • EE 3CL4, L 217 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Disk drive: Intro

    Spins at between 1800 and 7200 rpm,perhaps even 10,000

    Head height: 100nm A key issue: Seek time

  • EE 3CL4, L 218 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Disk drive: Establish goals

    Move from track a to track b with accuracy of at least1m within 50ms

  • EE 3CL4, L 219 / 19

    Tim Davidson

    What iscontrolengineering

    Examples

    Designprocess

    Disk driveexample

    Disk drive: Control architecture

  • EE 3CL4, L 31 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    EE3CL4:Introduction to Linear Control Systems

    Lecture 3

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 32 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Outline

    1 Modelling physical systemsTranslational Newtonian MechanicsRotational Newtonian Mechanics

    2 Linearization

    3 Laplace transforms

  • EE 3CL4, L 34 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Differential equation models

    Most of the systems that we will deal with are dynamic Differential equations provide a powerful way to

    describe dynamic systems Will form the basis of our models

    We saw differential equations for inductors andcapacitors in 2CI, 2CJ

    What about mechanical systems?both translational and rotational

  • EE 3CL4, L 35 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Translational Spring

    F (t): resultant force in direction xRecall free body diagrams and action and reaction

    Spring. k : spring constant, xr : relaxed length of spring

    F (t) = k([x2(t) x1(t)] xr

    )

  • EE 3CL4, L 36 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Translational Damper

    F (t): resultant force in direction x

    Viscous damper. b: viscous friction coefficient

    F (t) = b(dx2(t)

    dt dx1(t)

    dt

    )= b

    (v2(t) v1(t)

    )

  • EE 3CL4, L 37 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Mass

    F (t): resultant force in direction x

    Mass: M

    F (t) = Md2xm(t)dt2

    = Mdvm(t)dt

    = Mam(t)

  • EE 3CL4, L 38 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Rotational spring

    T (t): resultant torque in direction

    Rotational spring. k : rotational spring constant,r : rotation of relaxed spring

    T (t) = k([2(t) 1(t)] r

    )

  • EE 3CL4, L 39 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Rotational damper

    T (t): resultant torque in direction

    Rotational viscous damper.b: rotational viscous friction coefficient

    T (t) = b(d2(t)

    dt d1(t)

    dt

    )= b

    (2(t) 1(t)

    )

  • EE 3CL4, L 310 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Rotational inertia

    T (t): resultant torque in direction

    Rotational inertia: J

    T (t) = Jd2m(t)dt2

    = Jdm(t)dt

    = Jm(t)

  • EE 3CL4, L 311 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Example system (translational)Horizontal. Origin for y : y = 0 when spring relaxed

    F = M dv(t)dt v(t) = dy(t)dt F (t) = r(t) b dy(t)dt ky(t)

    Md2y(t)dt

    + bdy(t)dt

    + ky(t) = r(t)

  • EE 3CL4, L 312 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Example, continued

    Md2y(t)dt

    + bdy(t)dt

    + ky(t) = r(t)

    Resembles equation for parallel RLC circuit.

  • EE 3CL4, L 313 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Example, continued

    Stretch the spring a little and hold. Assume an under-damped system. What happens when we let it go?

  • EE 3CL4, L 315 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Taylors series

    Nature does not have many linear systems However, many systems behave approximately linearly

    in the neighbourhood of a given point Apply first-order Taylors Series at a given point Obtain a locally linear model

  • EE 3CL4, L 316 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Pendulum example

    Torque due to gravity: T = MgL sin Linearize around = 0. At that point, T = 0 Linearized model

    T MgL d sin d

    =0

    = MgL

  • EE 3CL4, L 318 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Laplace transform Once we have a linearized differential equation we can

    take Laplace Transforms to obtain the transfer function

    We will consider the one-sided Laplace transform, forsignals that are zero to the left of the origin.

    F (s) =

    0f (t)est dt

    What does mean? limT T .

    Does this limit exist? If |f (t)| < Met , then exists for all Re(s) > .

    Includes all physically realizable signals

    Note: When multiplying transfer function by Laplace of input, outputis only valid for values of s in intersection of regions of convergence

  • EE 3CL4, L 319 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Laplace transform pairs

    can be tabulated

  • EE 3CL4, L 320 / 20

    Tim Davidson

    ModellingphysicalsystemsTranslationalNewtonianMechanics

    Rotational NewtonianMechanics

    Linearization

    Laplacetransforms

    Laplace transform pairs

    Recall that complex poles come in conjugate pairs.

  • EE 3CL4, L 41 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    EE3CL4:Introduction to Linear Control Systems

    Lecture 4

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 42 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Outline

    1 Laplace transforms

    2 Laplace transforms in action

  • EE 3CL4, L 44 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Laplace transform

    We will consider the one-sided Laplace transform, forsignals that are zero to the left of the origin.

    F (s) =

    0f (t)est dt

    Key properties

    df (t)dt

    sF (s) f (0)

    t

    f (x)dx F (s)s

    +1s

    0

    f (x)dx

  • EE 3CL4, L 45 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Final value theorem

    If F (s) has all its poles in the left half plane, except,perhaps, for a single pole at the origin,

    then we can compute the final value of f (t), namelylimt f (t) without inverting the Laplace Transform.

    In particular,limt

    f (t) = lims0

    sF (s)

    Common application: Steady state value of stepresponse

  • EE 3CL4, L 47 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Mass-spring-damper system

    Horizontal (no gravity) Set origin of y where spring is relaxed F = M dv(t)dt v(t) = dy(t)dt F (t) = r(t) b dy(t)dt ky(t)

    Md2y(t)dt

    + bdy(t)dt

    + ky(t) = r(t)

  • EE 3CL4, L 48 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    MSD system

    Md2y(t)dt

    + bdy(t)dt

    + ky(t) = r(t)

    Consider t 0 and take Laplace transform

    M(s2Y (s)sy(0) dy(t)

    dt

    t=0

    )+b(sY (s)y(0))+kY (s) = R(s)

    Hence

    Y (s) =1/M

    s2 + (b/M)s + k/MR(s)

    +(s + b/M)

    s2 + (b/M)s + k/My(0)

    +1

    s2 + (b/M)s + k/Mdy(t)dt

    t=0

  • EE 3CL4, L 49 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Response to static init. cond.

    Spring stretched to a point y0, held, then let go at time t = 0

    Hence, r(t) = 0 and dy(t)dtt=0

    = 0

    Hence,

    Y (s) =(s + b/M)

    s2 + (b/M)s + k/My0

    What can we learn about this response without having toinvert Y (s)

  • EE 3CL4, L 410 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Standard form

    Y (s) =(s + b/M)

    s2 + (b/M)s + k/My0

    =(s + 2n)

    s2 + 2ns + 2ny0

    where n =k/M and = b

    2kM

    Poles: s1, s2 = n n2 1

    > 1 (equiv. b > 2kM): distinct real roots, overdamped = 1 (equiv. b = 2kM): equal real roots, critically damped < 1 (equiv. b < 2kM): complex conj. roots, underdamped

  • EE 3CL4, L 411 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Overdamped case

    s1, s2 = n n2 1

    Overdamped response: > 1 (equiv. b > 2kM)

    y(t) = c1es1t + c2es2t y(0) = y0 = c1 + c2 = y0 dy(t)dt

    t=0

    = 0 = s1c1 + s2c2 = 0

    What does this look like when strongly overdamped s2 is large and negative, s1 is small and negative Hence es2t decays much faster than es1t Also, c2 = c1s1/s2. Hence, small Hence y(t) c1es1t Looks like a first order system!

  • EE 3CL4, L 412 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Critically damped case

    s1 = s2 = n y(t) = c1ent + c2tent

    y(0) = y0 = c1 = y0 dy(t)dt

    t=0

    = 0 = c1n + c2 = 0

  • EE 3CL4, L 413 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Underdamped case

    s1, s2 = n jn

    1 2 Therefore, |si | = n: poles lies on a circle Angle to negative real axis is cos1().

  • EE 3CL4, L 414 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Underdamped case

    Define = n, d = n

    1 2. Response is:y(t) = c1et cos(d t) + c2et sin(d t)

    = Aet cos(d t + )

    Homework: Relate A and to c1 and c2. Homework: Write the initial conditions y(0) = y0 and

    dy(t)dt

    t=0

    = 0 in terms of c1 and c2, and in terms of A and

  • EE 3CL4, L 415 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Numerical examples

    Y (s) = (s+2n)s2+2ns+2n y0, where n =k/M, = b

    2kM

    Poles: s1, s2 = n n2 1

    > 1: overdamped; < 1: underdamped

    Consider the case of M = 1, k = 1. Hence, n = 1, b = 3 0. Hence, = 1.5 0 Initial conds: y0 = 1, dy(t)dt

    t=0

    = 0

  • EE 3CL4, L 416 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 3

  • EE 3CL4, L 417 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 2.75

  • EE 3CL4, L 418 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 2.5

  • EE 3CL4, L 419 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 2.25

  • EE 3CL4, L 420 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 2

  • EE 3CL4, L 421 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 1.95

  • EE 3CL4, L 422 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 1.75

  • EE 3CL4, L 423 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 1.5

  • EE 3CL4, L 424 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 1.25

  • EE 3CL4, L 425 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 1

  • EE 3CL4, L 426 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 0.75

  • EE 3CL4, L 427 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 0.5

  • EE 3CL4, L 428 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 0.25

  • EE 3CL4, L 429 / 29

    Tim Davidson

    Laplacetransforms

    Laplacetransforms inaction

    Poles and transient response,b = 0

  • EE 3CL4, L 51 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    EE3CL4:Introduction to Linear Control Systems

    Lecture 5

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 52 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Outline

    1 Transfer function

    2 Step response

    3 Transfer function of DC motor

  • EE 3CL4, L 54 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Transfer function

    Definition: Laplace transform of output over Laplacetransform of input when initial conditions are zero

    Recall the mass-spring-damper system,

  • EE 3CL4, L 55 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Transfer function, MSD system

    For the mass-spring-damper system,

    Y (s) =1/M

    s2 + (b/M)s + k/MR(s)

    +(s + b/M)

    s2 + (b/M)s + k/My(0)

    +1

    s2 + (b/M)s + k/Mdy(t)dt

    t=0

    Therefore, transfer function is:

    1/Ms2 + (b/M)s + k/M

    =1

    Ms2 + bs + k

  • EE 3CL4, L 57 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Step response

    Recall that u(t) 1s Therefore, for transfer function G(s), the step response

    is:L 1

    {G(s)s

    } For the mass-spring-damper system, step response is

    L 1{ 1s(Ms2 + bs + k)

    }

    What is the final position for a step input?Recall final value theorem. Final position is 1/k .

    Consider again the case of M = k = 1, b = 3 0.n = 1, = 1.5 0.

  • EE 3CL4, L 58 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step response, b = 3

  • EE 3CL4, L 59 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 2.75

  • EE 3CL4, L 510 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 2.5

  • EE 3CL4, L 511 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 2.25

  • EE 3CL4, L 512 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 2

  • EE 3CL4, L 513 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 1.95

  • EE 3CL4, L 514 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 1.75

  • EE 3CL4, L 515 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 1.5

  • EE 3CL4, L 516 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 1.25

  • EE 3CL4, L 517 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 1

  • EE 3CL4, L 518 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 0.75

  • EE 3CL4, L 519 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 0.5

  • EE 3CL4, L 520 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 0.25

  • EE 3CL4, L 521 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Poles and step resp., b = 0

  • EE 3CL4, L 523 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    A DC motor

    We will consider linearized model for each component Flux in the air gap: (t) = Kf if (t) (Magnetic cct, 2CJ4) Torque: Tm(t) = K1(t)ia(t) = K1Kf if (t)ia(t). Is that linear? Only if one of if (t) or ia(t) is constant We will consider armature control: if (t) constant

  • EE 3CL4, L 524 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Armature controlled DC motor

    if (t) will be constant (to set up magnetic field), if (t) = If Torque: Tm(t) = K1Kf If ia(t) = Kmia(t) Will control motor using armature voltage Va(t) What is the transfer function from Va(s) to angular

    position (s)? Origin?

  • EE 3CL4, L 525 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Towards transfer function

    Tm(t) = Kmia(t) Tm(s) = KmIa(s) KVL: Va(s) = (Ra + sLa)Ia(s) + Vb(s) Vb(s) is back-emf voltage, due to Faradays Law Vb(s) = Kb(s), where (s) = s(s) is rot. velocity Remember: transfer function implies zero init. conds

  • EE 3CL4, L 526 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Towards transfer function

    Torque on load: TL(s) = Tm(s) Td(s) Td(s): disturbance. Often small, unknown (e.g., wind) Load torque to angle (Newton plus friction):

    TL(s) = Js2(s) + bs(s)

    Now put it all together

  • EE 3CL4, L 527 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Towards transfer function

    Tm(s) = KmIa(s) = Km(Va(s)Vb(s)

    Ra+sLa

    ) Vb(s) = Kb(s) TL(s) = Tm(s) Td(s) TL(s) = Js2(s) + bs(s) = Js(s) + b(s) Hence (s) = TL(s)Js+b (s) = (s)/s

  • EE 3CL4, L 528 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Block diagram

    Tm(s) = KmIa(s) = Km(Va(s)Vb(s)

    Ra+sLa

    ) Vb(s) = Kb(s) TL(s) = Tm(s) Td(s) TL(s) = Js2(s) + bs(s) = Js(s) + b(s) Hence (s) = TL(s)Js+b (s) = (s)/s

  • EE 3CL4, L 529 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Transfer function

    Set Td(s) = 0 and solve (you MUST do this yourself)

    G(s) =(s)Va(s)

    =Km

    s[(Ra + sLa)(Js + b) + KbKm

    ]=

    Kms(s2 + 2ns + 2n)

    Third order :(

  • EE 3CL4, L 530 / 30

    Tim Davidson

    Transferfunction

    Step response

    Transferfunction of DCmotor

    Second-order approximation

    G(s) =(s)Va(s)

    =Km

    s[(Ra + sLa)(Js + b) + KbKm

    ] Often armature time constant, a = La/Ra, is negligible Hence (you MUST derive this yourself)

    G(s) Kms[Ra(Js + b) + KbKm

    ] = Km/(Rab + KbKm)s(1s + 1)

    where 1 = RaJ/(Rab + KbKm) Using a power balance can show that Kb = Km

  • EE 3CL4, L 61 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    EE3CL4:Introduction to Linear Control Systems

    Lecture 6

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 62 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    Outline

    1 Block diagram modelsExample: Loop transfer function

    2 Block diagram transformations

  • EE 3CL4, L 64 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    Bock diagram models

    A convenient way to represent a transfer function is viaa block diagram

    In this case, U(s) = Gc(s)R(s) and Y (s) = G(s)U(s) Hence, Y (s) = G(s)Gc(s)R(s) Consistent with the engineering procedure of breakingthings up into little bits, studying the little bits, and thenput them together

  • EE 3CL4, L 65 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    Simple example

    Y1(s) = G11(s)R1(s) +G12(s)R2(s) Y2(s) = G21(s)R1(s) +G22(s)R2(s)

  • EE 3CL4, L 66 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    Example: Loop transfer function

    Ea(s) = R(s) B(s) = R(s) H(s)Y (s) Y (s) = G(s)U(s) = G(s)Ga(s)Z (s) Y (s) = G(s)Ga(s)Gc(s)Ea(s) Y (s) = G(s)Ga(s)Gc(s)

    (R(s) H(s)Y (s)

    )Y (s)R(s)

    =G(s)Ga(s)Gc(s)

    1+G(s)Ga(s)Gc(s)H(s)

    Each transfer function is a ratio of polynomials in s What is Ea(s)/R(s)?

  • EE 3CL4, L 68 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    Block diagram transformations

  • EE 3CL4, L 69 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    Using block diagramtransformations

  • EE 3CL4, L 610 / 10

    Tim Davidson

    Block diagrammodelsExample: Looptransfer function

    Block diagramtransforma-tions

    Using block diagramtransformations

  • EE 3CL4, L 71 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    EE3CL4:Introduction to Linear Control Systems

    Lecture 7

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 72 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Outline

    1 Transfer function of armature controlled DC motor

    2 Application to disk drive read system

    3 Our first control system design

    4 Characteristics of feedback control systems, Ch 4

  • EE 3CL4, L 74 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Last week

    We constructed a block diagram for armature-controlledDC motor

    if (t) constant; motor controlled using va(t) Determined the transfer function (s)Va(s)

  • EE 3CL4, L 75 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Transfer function

    G(s) =(s)Va(s)

    =Km

    s[(Ra + sLa)(Js + b) + KbKm

    ]=

    Kms(s2 + 2ns + 2n)

  • EE 3CL4, L 77 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Model for a disk drive readsystem

    Uses a permanent magnet DC motor Can be modelled using arm. contr. model with Kb = 0 Hence, motor transfer function:

    G(s) =(s)Va(s)

    =Km

    s(Ra + sLa)(Js + b)

    Assume for now that the arm is stiff

  • EE 3CL4, L 78 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Typical values

    G(s) =(s)Va(s)

    =Km

    s(Ra + sLa)(Js + b)

    G(s) =5000

    s(s + 20)(s + 1000)

  • EE 3CL4, L 79 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Time constants

    Initial model

    G(s) =5000

    s(s + 20)(s + 1000)

    Motor time constant = 1/20 = 50ms Armature time constant = 1/1000 = 1ms Hence

    G(s) 5s(s + 20)

  • EE 3CL4, L 711 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    A simple feedback controller

    Now that we have a model, how to control?

    Here, Y (s) = (s).

  • EE 3CL4, L 712 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Simplified block diagram

    What is the transfer function from command toposition? Derive this yourself

    Y (s)R(s)

    =KaG(s)

    1 + KaG(s)

    For second-order G(s), and a gain of Ka = 40,

    Y (s) =200

    s2 + 20s + 200R(s)

    What is the response for R(s) = 0.1/s? Does it meet our design criteria?

    Within 1m within 50ms?

  • EE 3CL4, L 713 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Step responseResponse to r(t) = 0.1u(t)

  • EE 3CL4, L 715 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Closed and open loop

  • EE 3CL4, L 716 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    The error signal

    Error signal E(s) = R(s) Y (s)For the case where H(s) = 1 (derive this for yourself):

    E(s) =1

    1 +Gc(s)G(s)R(s)

    G(s)1 +Gc(s)G(s)

    Td(s)

    +Gc(s)G(s)

    1 +Gc(s)G(s)N(s)

  • EE 3CL4, L 717 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Loop gain

    Again, set H(s) = 1

    Define loop gain: L(s) = Gc(s)G(s)

    E(s) =1

    1 + L(s)R(s) G(s)

    1 + L(s)Td(s) +

    L(s)1 + L(s)

    N(s)

  • EE 3CL4, L 718 / 18

    Tim Davidson

    Transferfunction ofarmaturecontrolled DCmotor

    Application todisk drive readsystem

    Our firstcontrol systemdesign

    Characteristicsof feedback

    Sensitivities

    Again, set H(s) = 1

    Define sensitivity: S(s) =L(s)

    1 + L(s)

    Define complementary sensitivity: C(s) =1

    1 + L(s)

    E(s) = S(s)R(s) S(s)G(s)Td(s) + C(s)N(s)Note that S(s) + C(s) = 1.

    Trading S(s) against C(s): a key to the art of control design

  • EE 3CL4, L 81 / 11

    Tim Davidson

    Characteristicsof feedback

    EE3CL4:Introduction to Linear Control Systems

    Lecture 8

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 82 / 11

    Tim Davidson

    Characteristicsof feedback

    Outline

    1 Characteristics of feedback control systems

  • EE 3CL4, L 84 / 11

    Tim Davidson

    Characteristicsof feedback

    The closed loop

    For the whole of this lecture we will consider unity feedback:

    H(s) = 1

  • EE 3CL4, L 85 / 11

    Tim Davidson

    Characteristicsof feedback

    The output signal

    Under standing assumption of H(s) = 1, what is Y (s)?

    Y (s) =Gc(s)G(s)

    1 + Gc(s)G(s)R(s)

    +G(s)

    1 + Gc(s)G(s)Td(s)

    Gc(s)G(s)1 + Gc(s)G(s)

    N(s)

  • EE 3CL4, L 86 / 11

    Tim Davidson

    Characteristicsof feedback

    The error signal

    Define the error signal: E(s) = R(s) Y (s)For H(s) = 1, what is E(s)?

    E(s) =1

    1 + Gc(s)G(s)R(s)

    G(s)1 + Gc(s)G(s)

    Td (s)

    +Gc(s)G(s)

    1 + Gc(s)G(s)N(s)

    Note: For H(s) = 1, contr. input Ea(s) = R(s)(Y (s) + N(s)

    )

  • EE 3CL4, L 87 / 11

    Tim Davidson

    Characteristicsof feedback

    Loop gain

    Define loop gain: L(s) = Gc(s)G(s)

    E(s) =1

    1 + L(s)R(s) G(s)

    1 + L(s)Td(s) +

    L(s)1 + L(s)

    N(s)

    What do we want?

  • EE 3CL4, L 88 / 11

    Tim Davidson

    Characteristicsof feedback

    A taste of loop shaping

    E(s) =1

    1 + L(s)R(s) G(s)

    1 + L(s)Td(s) +

    L(s)1 + L(s)

    N(s)

    What do we want? Good tracking: E(s) does depend only weakly on R(s)

    = L(s) large where R(s) large Good disturbance rejection:

    = L(s) large where Td(s) large Good noise suppression:

    = L(s) small where N(s) large

  • EE 3CL4, L 89 / 11

    Tim Davidson

    Characteristicsof feedback

    A taste of loop shapingPossibly easier to understand in pure freq. domain, s = j

    Recall that L(s) = Gc(s)G(s),G(s): fixed; Gc(s): controller to be designed

    Good tracking: = L(s) large where R(s) large|L(j)| large in the important frequency bands of r(t)

    Good dist. rejection: = L(s) large where Td (s) large|L(j)| large in the important frequency bands of td (t)

    Good noise suppr.: = L(s) small where N(s) large|L(j)| small in the important frequency bands of n(t)

    Typically, L(j) is a low-pass function

    How big should |L(j)| be? Any other constraints? Stability!

  • EE 3CL4, L 810 / 11

    Tim Davidson

    Characteristicsof feedback

    Sensitivities

    Define sensitivity: S(s) =1

    1 + L(s)

    Define complementary sensitivity: C(s) =L(s)

    1 + L(s)

    E(s) = S(s)R(s) S(s)G(s)Td(s) + C(s)N(s)

    Note that S(s) + C(s) = 1.Trading S(s) against C(s), with stability

    is the essence of the art of control design

  • EE 3CL4, L 811 / 11

    Tim Davidson

    Characteristicsof feedback

    Model sensitivities

    In practice we rarely model G(s) exactly, and it may age How does T (s) = Y (s)R(s) change as G(s) changes? G(s) + G(s). limG(s)0 T (s)/T (s)G(s)/G(s) =

    lnT (s) lnG(s)

    For an open loop system this sensitivity =1 For the closed loop system, with H(s) = 1,S(s) = 11+Gc(s)G(s) , as earlier

  • EE 3CL4, L 91 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    EE3CL4:Introduction to Linear Control Systems

    Lecture 9(Given as the 10th lecture in Winter 2011)

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 92 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Outline

    1 More advantages of feedback

    2 Price of feedback

    3 Example: English Channel boring machines

    4 Example: Disk drive read system

  • EE 3CL4, L 94 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Advantages of feedback so far

    reduced sensitivity to disturbances reduced sensitivity to model variation

    can also manipulate the transient response,to some degree (next week)

    can also control steady-state response to certaininputs, without tight calibration

  • EE 3CL4, L 95 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Steady-state error

    Recall standing assumption of H(s) = 1

    Consider R(s) only; set Td(s) and N(s) to zero

    E(s) = R(s) Y (s) = 11 +Gc(s)G(s)

    R(s)

    So what is the steady state error?

    If E(s) = 11+Gc(s)G(s) R(s) has no poles in the close right halfplane, except, perhaps for a simple pole at the origin,

    limt

    e(t) = lims0

    sE(s)

  • EE 3CL4, L 96 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Steady-state error for step

    Consider the case where r(t) = u(t). = R(s) = 1/s. E(s) = 1

    1 +Gc(s)G(s)1s

    lims0 sE(s) = lims01

    1 +Gc(s)G(s)

    Hence, steady-state error is 11 +Gc(0)G(0)

    How to make this small? Large loop gain at DC

  • EE 3CL4, L 97 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Steady-state error for ramp

    Consider r(t) = tu(t). = R(s) = 1/s2. E(s) = 11+Gc(s)G(s)

    1s2

    lims0 sE(s) = lims0 11+Gc(s)G(s)1s

    How to make this finite? Let Gc(s) = nc(s)dc(s) , G(s) =

    n(s)d(s)

    sE(s) = dc(s)d(s)dc(s)d(s)+nc(s)n(s)1s

    For finite SS error, dc(s)d(s) must contain a factor s i.e., either Gc(s) or G(s) must have pole at origin

    integration

  • EE 3CL4, L 99 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Price of feedback

    more components than open loop

    less gain than open loopGc(s)G(s)

    1+Gc(s)G(s) instead of Gc(s)G(s)

    potential for instability

  • EE 3CL4, L 911 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    English Channel boringmachines

    Y (s) =K + 11s

    s2 + 12s + KR(s) +

    1s2 + 12s + K

    Td(s)

    Lets consider step and step disturbance responses for twovalues of K , 100 and 20.

  • EE 3CL4, L 912 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    English Channel boringmachine

    K = 100

  • EE 3CL4, L 913 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    English Channel boringmachine

    K = 20

  • EE 3CL4, L 914 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    English Channel boringmachine

  • EE 3CL4, L 916 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Disk drive read system

    Y (s) =5000Ka

    s3 + 1020s2 + 20000s + 5000KaR(s)

    +s + 1000

    s3 + 1020s2 + 20000s + 5000KaTd(s)

    with Td(s) = 0, compare step resps with Ka = 10 and 80.

  • EE 3CL4, L 917 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Step responses for Ka = 10, 80

  • EE 3CL4, L 918 / 18

    Tim Davidson

    Moreadvantages offeedback

    Price offeedback

    Example:EnglishChannelboringmachines

    Example: Diskdrive readsystem

    Disturb. step resp. for Ka = 80

    To reduce this response need larger Ka

    but larger Ka will result in more oscilliatory response

  • EE 3CL4, L 101 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    EE3CL4:Introduction to Linear Control Systems

    Lecture 10(Given as the 9th lecture in Winter 2011)

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 102 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Outline

    1 Performance of feedback control systems

    2 Performance of second-order systems

  • EE 3CL4, L 104 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Basic performance criteria

    Stability (next week) Steady-state response to chosen inputs Transient response to chosen inputs Compromises: the art of design

  • EE 3CL4, L 105 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Typical test signals

    Step, ramp, parabolic

  • EE 3CL4, L 107 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    A second-order systemNow examine, in detail, a particular class of second ordersystems

    Y (s) =G(s)

    1 +G(s)R(s) =

    2ns2 + 2ns + 2n

    R(s)

  • EE 3CL4, L 108 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Step response What is the step response? Set R(s) = 1/s; take inverse Laplace transform of Y (s) Y (s) = 2n

    s(s2+2ns+2n

    ) For the case of 0 < < 1,

    y(t) = 1 1ent sin(nt + )

    where =

    1 2 and = cos1 . Recall pole positions of G(s)1+G(s) (ignore the zero):

  • EE 3CL4, L 109 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Typical step responses, fixed n

  • EE 3CL4, L 1010 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Typical step responses, fixed

  • EE 3CL4, L 1011 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Key parameters of(under-damped) step response

    With =

    1 2 and = cos1 ,

    y(t) = 1 1ent sin(nt + )

  • EE 3CL4, L 1012 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Peak time and peak value

    y(t) = 1 1ent sin(nt + )

    Peak time: first time dy(t)/dt = 0 Can show that this corresponds to nTp = pi Hence, Tp =

    pi

    n

    1 2 Hence, peak value, Mpt = 1 + e

    (pi/

    12)

  • EE 3CL4, L 1013 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Percentage overshoot

    Let fv denote the final value of the step response.

    Percentage overshoot defined as:

    P.O. = 100Mpt fv

    fv

    In our example, fv = 1, and hence

    P.O. = 100e(pi/

    12)

  • EE 3CL4, L 1014 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Overshoot vs Peak TimeThis is one of the classic trade-offs in control

  • EE 3CL4, L 1015 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Steady-state error, ess

    In general this is not zero.

    However, for our second-order system,

    y(t) = 1 1ent sin(nt + )

    Hence ess = 0

  • EE 3CL4, L 1016 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Settling time

    y(t) = 1 1ent sin(nt + )

    How long does it take to get within x% of final value? Approx. when ent < x/100 When x = 2, that corresponds to nTs 4;

    that is, 4 time constants

    In that case, Ts =4n

  • EE 3CL4, L 1017 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    Rise time (under-damped)

    y(t) = 1 1ent sin(nt + )

    How long to get to the target (for first time)? Tr , the smallest t such that y(t) = 1

  • EE 3CL4, L 1018 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    10%90% Rise time

    What is Tr in over-damped case? Hence, typically use Tr1, the 10%90% rise time

  • EE 3CL4, L 1019 / 19

    Tim Davidson

    Performanceof feedbackcontrolsystems

    Performanceofsecond-ordersystems

    10%90% Rise time

    Difficult to get an accurate formula Linear approx. for 0.3 0.8 (under-damped),

  • EE 3CL4, L 111 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    EE3CL4:Introduction to Linear Control Systems

    Lecture 11(Given as the 12th lecture in 2011)

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 112 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Outline

    1 Step response of a class of second-order systems(review)

    2 A taste of pole-placement design

    3 Transient performance, poles and zeros

    4 Summary and plan

  • EE 3CL4, L 114 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Class of systems

    We considered the step response of an (under-damped)second order system

    Y (s) = T (s)R(s) =2n

    s2 + 2ns + 2nR(s)

  • EE 3CL4, L 115 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Poles of T (s)T (s) =

    2ns2 + 2ns + 2n

    Where are the poles?

    s1, s2 = n jn

    1 2= n cos() jn sin()

  • EE 3CL4, L 116 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Step response

    Y (s) = T (s)1s

    =2n

    s2 + 2ns + 2n

    1s

    = y(t) = 1 1ent sin(nt + )

    where =

    1 2 and = cos1 .

  • EE 3CL4, L 117 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Properties of step response

    Settling time, Ts,: 2% settling time 4n

    Percentage overshoot: P.O. = 100e(pi/

    12)

  • EE 3CL4, L 119 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Design problem

    For what values of K and p is the settling time 4 secs, and the percentage overshoot 4.3%?

    T (s) =G(s)

    1 +G(s)=

    Ks2 + ps + K

    =2n

    s2 + 2ns + 2n,

    where n =K and = p/(2

    K )

  • EE 3CL4, L 1110 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Pole positions

    Ts 4n

    P.O. = 100e(pi/

    12)

    For Ts 4, n 1 For P.O. 4.3%, 1/2

    Where should we put the poles of T (s)?

  • EE 3CL4, L 1111 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Pole positions

    n 1 1/

    2

    s1, s2 = n jn

    1 2 = n cos() jn sin()where = cos1().

  • EE 3CL4, L 1112 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Final design constraints

    n 1 1/

    2

    p 2 p

    2K

  • EE 3CL4, L 1113 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Caveat

    Our work on transient response has been for systemswith

    T (s) =2n

    s2 + 2ns + 2n

    What about other systems?

  • EE 3CL4, L 1115 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Poles, zeros and transientresponse

    Consider a general transfer function T (s) = Y (s)R(s) Step response: Y (s) = T (s)1s Consider case with DC gain = 1; no repeated poles Partial fraction expansion

    Y (s) =1s+i

    Ais + i

    +k

    Bks + Cks2 + 2ks + (2k +

    2k )

    Step response

    y(t) = 1 +i

    Aiei t +k

    Dkek t sin(k t + k )

  • EE 3CL4, L 1116 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

  • EE 3CL4, L 1118 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Summary: Desirable properties

    With H(s) = 1, E(s) = R(s) Y (s), L(s) = Gc(s)G(s),

    E(s) =1

    1 + L(s)R(s) G(s)

    1 + L(s)Td (s) +

    L(s)1 + L(s)

    N(s)

    Stability Good tracking in the steady state Good tracking in the transient Good disturbance rejection (good regulation) Good noise suppression Robustness to model mismatch

  • EE 3CL4, L 1119 / 19

    Tim Davidson

    Step responseof a class ofsecond-ordersystems(review)

    A taste ofpole-placementdesign

    Transientperformance,poles andzeros

    Summary andplan

    Plan: Analysis and designtechniques

    Rest of course: about developing analysis and designtechniques to address these goals

    Routh-Hurwitz: Enables us to determine stability without having to find

    the poles of the denominator of a transfer function

    Root locus Enables us to show how the poles move as a single

    design parameter (such as an amplifier gain) changes

    Bode diagrams There is often enough information in the Bode diagram

    of the plant/process to construct a highly effectivedesign technique

    Nyquist diagram More advanced analysis of the frequency response that

    enables stability to be assessed even for complicatedsystems

  • EE 3CL4, L 121 / 15

    Tim Davidson

    Steady-stateerror

    EE3CL4:Introduction to Linear Control Systems

    Lecture 12(Given as the 11th lecture in 2011)

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 122 / 15

    Tim Davidson

    Steady-stateerror

    Outline

    1 Steady-state error

  • EE 3CL4, L 124 / 15

    Tim Davidson

    Steady-stateerror

    Steady-state error

    E(s) = R(s) Y (s) = 11 +Gc(s)G(s)

    R(s)

    If the the conditions are satisfied, the final value theoremgives steady-state tracking error:

    ess = limt

    e(t) = lims0

    s1

    1 +Gc(s)G(s)R(s)

    One of the fundamental reasons for using feedback, despitethe cost of the extra components, is to reduce this error.

    We will examine this error for the step, ramp and parabolicinputs

  • EE 3CL4, L 125 / 15

    Tim Davidson

    Steady-stateerror

    Step input

    ess = limt

    e(t) = lims0

    s1

    1 +Gc(s)G(s)R(s)

    Step input: R(s) = As ess = lims0 sA/s1+Gc(s)G(s) =

    A1+lims0 Gc(s)G(s)

    Now lets examine Gc(s)G(s). Factorize num., den.

    Gc(s)G(s) =KM

    i=1(s + zi)

    sNQ

    k=1(s + pk )

    where zi 6= 0 and pk 6= 0. Limit as s 0 depends strongly on N. If N > 0, lims0 Gc(s)G(s) and ess = 0 If N = 0,

    ess =A

    1 +Gc(0)G(0)

  • EE 3CL4, L 126 / 15

    Tim Davidson

    Steady-stateerror

    System types

    Since N plays such a key role,it has been given a name

    It is called the type number

    Hence, for systems of type N > 1,ess for a step input is zero

    For systems of type 0, ess = A1+Gc(0)G(0)

  • EE 3CL4, L 127 / 15

    Tim Davidson

    Steady-stateerror

    Position error constant

    For type-0 systems, ess = A1+Gc(0)G(0) Sometimes written as ess = A1+Kp

    where Kp is the position error constant

    Recall Gc(s)G(s) = KQM

    i=1(s+zi )sNQQ

    k=1(s+pk )

    Therefore, for a type-0 system

    Kp = lims0

    Gc(s)G(s) =KM

    i=1(zi)Qk=1(pk )

    Note that this can be computed from positions of thenon-zero poles and zeros

  • EE 3CL4, L 128 / 15

    Tim Davidson

    Steady-stateerror

    Ramp input

    The ramp input, which represents a step change invelocity is r(t) = At .

    Therefore R(s) = As2 Assuming conditions of final value theorem are

    satisfied,

    ess = lims0

    s(A/s2)1 +Gc(s)G(s)

    = lims0

    As + sGc(s)G(s)

    = lims0

    AsGc(s)G(s)

    Again, type number will play a key role.

  • EE 3CL4, L 129 / 15

    Tim Davidson

    Steady-stateerror

    Velocity error constant

    For a ramp input ess = lims0 AsGc(s)G(s) Recall Gc(s)G(s) = K

    QMi=1(s+zi )

    sNQQ

    k=1(s+pk )

    For type-0 systems, Gc(s)G(s) has no poles at origin.Hence, ess

    For type-1 systems, Gc(s)G(s) has one pole at the origin.Hence, ess = AKv , where Kv =

    KQ

    i ziQk pk

    Note Kv can be computed from non-zero poles and zeros Suggests formal definition of velocity error constant

    Kv = lims0

    sGc(s)G(s)

    For type-N systems with N 2, for a ramp input ess = 0

  • EE 3CL4, L 1210 / 15

    Tim Davidson

    Steady-stateerror

    Parabolic input

    The parabolic input, which represents a step change inacceleration is r(t) = At2/2.

    Therefore R(s) = As3 Assuming conditions of final value theorem are

    satisfied,

    ess = lims0

    s(A/s3)1 +Gc(s)G(s)

    = lims0

    As2Gc(s)G(s)

    Again, type number will play a key role.

  • EE 3CL4, L 1211 / 15

    Tim Davidson

    Steady-stateerror

    Acceleration error constant

    For a parabolic input ess = lims0 As2Gc(s)G(s) Recall Gc(s)G(s) = K

    QMi=1(s+zi )

    sNQQ

    k=1(s+pk )

    For type-0 and type-1 systems, Gc(s)G(s) has at most onepole at origin. Hence, ess

    For type-2 systems, Gc(s)G(s) has two poles at the origin.Hence, ess = AKa , where Ka =

    KQ

    i ziQk pk

    Again, Ka can be computed from non-zero poles and zeros Suggests formal definition of acceleration error constant

    Ka = lims0

    s2Gc(s)G(s)

    For type-N systems with N 3, for a parabolic input ess = 0

  • EE 3CL4, L 1212 / 15

    Tim Davidson

    Steady-stateerror

    Summary of steady-state errors

  • EE 3CL4, L 1213 / 15

    Tim Davidson

    Steady-stateerror

    Robot steering system

    Lets examine a proportional controller:

    Gc(s) = K1

    Gc(s)G(s) = K1K/(s + 1) Hence, type-0 system. Hence, for a step input,

    ess =A

    1 + Kp

    where Kp = K1K .

  • EE 3CL4, L 1214 / 15

    Tim Davidson

    Steady-stateerror

    Robot steering system

    Lets examine a proportional-plus-integral controller:

    Gc(s) = K1 +K2s

    =K1s + K2

    s

    When K2 6= 0, Gs(s)G(s) = K (K1s+K2)s(s+1) Hence, type-1 system. Hence, for a step input, ess = 0 For ramp input,

    ess =AKv,

    where Kv = lims0 sGc(s)G(s) = KK2

  • EE 3CL4, L 1215 / 15

    Tim Davidson

    Steady-stateerror

    Typical response

    to a sawtooth input

  • EE 3CL4, L 131 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients EE3CL4:

    Introduction to Linear Control SystemsLecture 13

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 132 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Outline

    1 StabilityCondition in terms of polesCondition in terms of denominator coefficients

  • EE 3CL4, L 134 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Stability

    A systems is said to be stable if all bounded inputs r(t) giverise to bounded outputs y(t)

    Counterexamples Albert Collins, Jeff Beck (Yardbirds),

    Pete Townshend (The Who), Jimi Hendrix,Tom Morello (Rage Against the Machine),Kurt Cobain (Nirvana)

    Tacoma Narrows

  • EE 3CL4, L 135 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Conditions for stability

    y(t) =

    g()r(t )d

    Let r(t) be such that |r(t)| r

    |y(t)| =

    g()r(t )d

    g()r(t )d r

    g()dUsing this: system G(s) is stable iff

    g()d is finite

  • EE 3CL4, L 136 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Condition in terms of poles?We want

    g()d to be finite

    Can we determine this from G(s)?

    We can write a general rational transfer function in the form

    G(s) =K

    i(s + zi)sN

    k (s + k )

    m(s2 + 2ms + (2m + 2m))

    Poles: 0, k , m jmAssuming N = 0 and no repeated roots, the impulse response is

    g(t) =k

    Akek t +m

    Bmem t sin(mt + m)

    Stability requires |g(t)|dt to be bounded;

    that requires k > 0, m > 0In fact, system is stable iff poles have negative real parts

  • EE 3CL4, L 137 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Marginal stability

    Consider G(s) = 1/s, simple pole at origin y(t) =

    r(t)dt

    if r(t) = cos(t), which is bounded,then y(t) = sin(t). Bounded

    If r(t) = u(t), which is bounded,then y(t) = t . Not bounded

    Consider G(s) = 1/(s2 + 1), simple poles at s = j1 Unit step response: u(t) cos(t). Bounded What if r(t) is a sinusoid of frequency 1/(2pi) rad/sec?

    Not bounded

    If G(s) has a pole with positive real part,or a repeated pole on j-axisoutput is always unbounded

  • EE 3CL4, L 138 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Routh-Hurwitz condition

    We have seen how to determine stability from the poles.

    Much easier than having to determine impulse response

    Can we determine stability without having to determine thepoles?

    Yes! Routh-Hurwitz condition

  • EE 3CL4, L 139 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Routh-Hurwitz condition

    Let G(s) = p(s)q(s) , where

    q(s) = ansn + an1sn1 + . . . a1s + a0= an(s r1)(s r2) . . . (s rn)

    where ri are the roots of q(s) = 0.

    By multiplying out, q(s) = 0 can be written as

    q(s) = ansn an(r1 + r2 + + rn)sn1+ an(r1r2 + r2r3 + . . . )sn2

    an(r1r2r3 + r1r2r4 + . . . )sn3+ + (1)nan(r1r2r3 . . . rn) = 0

    If all ri are real and in left half plane, what is sign of coeffs of sk?the same!

  • EE 3CL4, L 1310 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    Routh-Hurwitz condition

    That observation leads to a necessary condition.

    Hence, not that useful for design

    A more sophisticated analysis leads to the Routh-Hurwitzcondition, which is necessary and sufficient

    Hence, can be quite useful for design

  • EE 3CL4, L 1311 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    R-H cond: A first lookConsider

    ansn + an1sn1 + an2sn1 + + a1s + a0 = 0

    Construct a table of the form

    sn an an2 an4 . . .sn1 an1 an3 an5 . . .sn2 bn1 bn3 bn5 . . .sn3 cn1 cn3 cn5 . . .

    ......

    ...... . . .

    s0 hn1

    where

    bn1 =an1an2 anan3

    an1=1an1

    an an2an1 an3

    bn3 =1an1

    an an4an1 an5 cn1 = 1bn1

    an1 an3bn1 bn3

  • EE 3CL4, L 1312 / 12

    Tim Davidson

    StabilityCondition in terms ofpoles

    Condition in terms ofdenominatorcoefficients

    R-H cond: A first lookConsider

    ansn + an1sn1 + an2sn1 + + a1s + a0 = 0Construct a table of the form

    sn an an2 an4 . . .sn1 an1 an3 an5 . . .sn2 bn1 bn3 bn5 . . .sn3 cn1 cn3 cn5 . . .

    ......

    ...... . . .

    s0 hn1

    Loosely speaking:

    Number of roots in the right half plane is equal to the numberof sign changes in the first column of the table

    Stability iff no sign changes in the first columnMore sophisticated statement in next lecture

  • EE 3CL4, L 141 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    EE3CL4:Introduction to Linear Control Systems

    Lecture 14

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 142 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Outline

    1 Routh Hurwitz conditionDisk drive read control

  • EE 3CL4, L 144 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Stability

    Let G(s) = p(s)q(s) , where

    q(s) = ansn + an1sn1 + . . . a1s + a0

    System is stable iff all poles of G(s) have negative real parts

    Recall, poles are solutions to q(s) = 0

    Can we find a necessary and sufficient condition that dependsonly on ak so that we dont have to solve q(s) = 0?

  • EE 3CL4, L 145 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Routh-Hurwitz condition1 Consider, with an > 0

    ansn + an1sn1 + an2sn2 + . . . a1s + a0 = 0

    2 Construct a table of the form

    Row n an an2 an4 . . .Row n 1 an1 an3 an5 . . .Row n 2 bn1 bn3 bn5 . . .Row n 3 cn1 cn3 cn5 . . ....

    ......

    ... . . .Row 0 hn1

    Procedure provided on the following slides

    3 Count the sign changes in the first column

    4 That is the number of roots in the right half plane

    Stability (poles in LHP) iff ak > 0 and all terms in first col. > 0

  • EE 3CL4, L 146 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Constructing RH table

    ansn + an1sn1 + an2sn2 + . . . a1s + a0 = 0

    Step 2.1: Arrange coefficients of q(s) in first two rows

    Row n an an2 an4 . . .Row n 1 an1 an3 an5 . . .

  • EE 3CL4, L 147 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Interlude

    Determinant of a 2 2 matrix: a bc d = ad cb

  • EE 3CL4, L 148 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Constructing RH table

    Step 2.2: Construct 3rd row using determinants of 2 2matrices constructed from rows above

    Row n an an2 an4 . . .Row n 1 an1 an3 an5 . . .Row n 2 bn1

    bn1 =1an1

    an an2an1 an3

  • EE 3CL4, L 149 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Constructing RH table

    Step 2.2, cont: Construct 3rd row using determinants of2 2 matrices constructed from rows above

    Row n an an2 an4 . . .Row n 1 an1 an3 an5 . . .Row n 2 bn1 bn3 . . .

    bn3 =1an1

    an an4an1 an5

  • EE 3CL4, L 1410 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Constructing RH table

    Step 2.3: Construct 4th row using determinants of 2 2matrices constructed from rows above

    Row n an an2 an4 . . .Row n 1 an1 an3 an5 . . .Row n 2 bn1 bn3 . . .Row n 3 cn1 . . .

    cn1 =1bn1

    an1 an3bn1 bn3

    Step 2.4: Continue in this pattern.

    Caveat: If all elements of first column are non-zeroWill come back to that. Lets see some examples, first

  • EE 3CL4, L 1411 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    RH table, second-order system

    q(s) = a2s2 + a1s + a0

    Row 2 a2 a0Row 1 a1 0Row 0 b1

    b1 =1a1

    a2 a0a1 0 = a0

    Therefore, second order system is stable iff all three denominatorcoefficients have the same sign

  • EE 3CL4, L 1412 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    RH table, third order system

    q(s) = a3s3 + a2s2 + a1s + a0

    Row 3 a3 a1Row 2 a2 a0Row 1 b1 0Row 0 c1 0

    b1 =1a2

    a3 a1a2 a0 c1 = 1b1

    a2 a0b1 0 = a0

    Therefore, if a3 > 0, necessary and sufficient condition forthird-order system to be stable is that a2 > 0, b1 > 0 and a0 > 0.

    b1 > 0 is equiv. to a2a1 > a0a3, and this implies a1 > 0.

  • EE 3CL4, L 1413 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    RH table, higher order systemsConsider a general case:

    sn + an1sn1 + an2sn2 + + a1s + nn = 0

    Normalize to natural frequency by defining s = s/n

    sn+(an1/n)sn1+(an2/2n)sn2+ +(a1/n1n )s+1 = 0

  • EE 3CL4, L 1414 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    RH table, dealing with zeros

    The Routh-Hurwitz table encounters trouble when thereis a zero in the first column

    The next row involves (1/0) times a determinant When some other elements in that row are not zero, we

    can proceed by replacing the zero by a small positivenumber , and then taking the limit as 0 after thetable has been constructed.

    When a whole row is zero, we need to be a bit moresophisticated (see next lecture)

  • EE 3CL4, L 1415 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    RH table, zero first element innon-zero row

    As an example, consider

    q(s) = s5 + 2s4 + 2s3 + 4s2 + 11s + 10

    Routh table

    Row 5 1 2 11Row 4 2 4 10Row 3 0 6 0Row 2 c1 10 0Row 1 d1 0 0Row 0 10 0 0

    c1 =4 12

    =12

    d1 =6c1 10

    c1 6

    Two sign changes, hence unstable with two RHP poles

  • EE 3CL4, L 1416 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Disk drive read controlAdd velocity feedback (switch closed)

    Using block diagram manipulation

    G1(s) =5000

    s + 1000Gs(s) =

    1s(s + 20)

  • EE 3CL4, L 1417 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Closed loop

    T (s) =Y (s)R(s)

    =KaG1(s)G2(s)

    1 + KaG1(s)G2(s)(1 + K1s)

    Hence, char. eqn:s3 + 1020s2 + (20000 + 5000KaK1)s + 5000Ka = 0

  • EE 3CL4, L 1418 / 19

    Tim Davidson

    Routh HurwitzconditionDisk drive readcontrol

    Stabilizing values of K1 and Ka

    s3 + 1020s2 + (20000 + 5000KaK1)s + 5000Ka = 0

    Routh table

    Row 3 1 20000 + 5000KaK1Row 2 1020 5000KaRow 1 b1Row 0 5000Ka

    b1 =1020(20000 + 5000KaK1) 5000Ka

    1020

    For stability we require b1 > 0 and Ka > 0

    For example, Ka = 100 and K1 = 0.05.That pair gives a 2% settling time of 260ms

  • EE 3CL4, L 151 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    EE3CL4:Introduction to Linear Control Systems

    Lecture 15

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 152 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Outline

    1 Routh Hurwitz revisionDealing with zero rows

    2 Applications of Routh Hurwitz conditionTurning control of a tracked vehicle

  • EE 3CL4, L 154 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Recall Routh Hurwitz condition

    1 Determine the characteristic polynomial(denominator of transfer function), with an > 0

    q(s) = ansn + an1sn1 + an2sn2 + . . . a1s + a0

    2 Construct the Routh Table

    Row n an an2 an4 . . .Row n 1 an1 an3 an5 . . .Row n 2 bn1 bn3 bn5 . . .Row n 3 cn1 cn3 cn5 . . ....

    ......

    ... . . .Row 0 hn1

    Construction procedure reviewed on next slide

    3 System is stable iff ak > 0 and all terms in first col. > 0

  • EE 3CL4, L 155 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Construction procedure

    Row k + 2 p1 a3 p5 . . .Row k + 1 q1 q3 q5 . . .Row k r1 r3 r5 . . .

    To compute r3, multiply 1first element of previous row = 1q1 by determinant of 22 matrix formed in the following way:

    The first column contains the first elements of the tworows above the element to be calculated

    The second column contains the elements of the tworows above that lie one column to the right of theelement to be calculated

    Therefore

    r3 =1q1

    p1 p5q1 q5 = 1q1 (p1q5 q1p5)

  • EE 3CL4, L 156 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Zero in the first column

    When there is a zero in the first column, but otherelements in the row are not zero

    Replace the zero by a small positive number, say , andonce the table has been constructed, take the limit as 0. (See previous lecture)

  • EE 3CL4, L 157 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Zero row It is possible that the Routh Hurwitz procedure can

    produce a zero row

    While this complicates the procedure, it yields usefulinformation for design

    Zero rows occur when polynomial has either equal andopposite roots on the real axis, or a pair of complexconjugate roots on the imaginary axis.The latter is more common, and more useful in design

    So how can we deal with this? Routh Hurwitz procedure provides an auxiliary

    polynomial that contains the roots of interest as factors The coefficients of this polynomial appear in the row

    above the zero row We replace the zero row by the coefficients of the

    derivative of the auxiliary polynomial

  • EE 3CL4, L 158 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Zero row example q(s) = s5 + 2s4 + 24s3 + 48s2 25s 50 = 0 Construct table

    Row 5 1 24 25Row 4 2 48 50Row 3 0 0

    Auxiliary polynomial: q(s) = 2s4 + 48s2 50This is actually a factor of q(s).Using quadratic formula, roots of q(s) are s2 = 1,25Hence roots of q(s) are s = 1,j5

    dq(s)ds = 8s3 + 96s.Replace zero row by these coefficients

    Row 5 1 24 25Row 4 2 48 50Row 3 8 96

  • EE 3CL4, L 159 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Zero row example, cont Now complete the table in the usual way

    Row 5 1 24 25Row 4 2 48 50Row 3 8 96Row 2 24 50Row 1 112.7 0Row 0 50

    One sign change in first column.Indicates one root in right half plane.

    Recall q(s) is a factor of q(s).Indeed, by polyn division q(s) = (s + 2)q(s)We have seen that roots of q(s) are 1 and j5.

    Hence q(s) does indeed have one root with a positivereal part.

  • EE 3CL4, L 1511 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Turning control of a trackedvehicle

    Select K and a so that the closed-loop is stable, and the steady-state error due to a ramp is at most 24% of

    the magnitude of the command

  • EE 3CL4, L 1512 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Deal with stability first

    Transfer function: T (s) = Gc(s)G(s)1+Gc(s)G(s)

    Char. equation: s4 + 8s3 + 17s2 + (K + 10)s + Ka = 0

    Routh table

    Row 4 1 17 KaRow 3 8 K+10Row 2 b3 KaRow 1 c3Row 0 Ka

    b3 =126 K

    8c3 =

    b3(K + 10) 8Kab3

    For stability we require b3 > 0, c3 > 0 and Ka > 0

  • EE 3CL4, L 1513 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Stability regionThese constraints can be rewritten as

    K < 126Ka > 0

    (K + 10)(126 K ) 64Ka > 0For positive K , last constraint becomes a < (K+10)(126K )64K Region of stable parameters

  • EE 3CL4, L 1514 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Steady-state error to ramp

    For a ramp input r(t) = At , we have ess = A/Kv , where

    Kv = lims0

    sGc(s)G(s) = Ka/10

    Therefore, ess = 10A/(Ka)

    To obtain ess < 0.24A, we need Ka > 10/0.24 41.67,

    Any (K ,a) pair in stable region with Ka > 41.67 willsatisfy design constraints

  • EE 3CL4, L 1515 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Set of parameters with desiredperformance

    For positive K , stability region is below the blue solid curve desired steady-state error region is above the red

    dashed curve and below the blue solid curve Design example: (70,0.6)

  • EE 3CL4, L 1516 / 16

    Tim Davidson

    Routh HurwitzrevisionDealing with zerorows

    Applicationsof RouthHurwitzconditionTurning control of atracked vehicle

    Ramp responseRamp response for case of K = 70 and a = 0.6

  • EE 3CL4, L 161 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal ProcedureEE3CL4:

    Introduction to Linear Control SystemsLecture 16

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 162 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Outline

    1 The Root Locus ProcedurePreliminary examplesFormal Procedure

  • EE 3CL4, L 164 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Simple example

    Transfer function T (s) = KG(s)1+KG(s)

    Char. eqn: s2 + 2s + K = 0

    Closed-loop poles: s1, s2 = 1

    1 KWhat does this look like as K goes from 0 to +?

  • EE 3CL4, L 165 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Simple example

  • EE 3CL4, L 166 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Another example

    Transfer function T (s) = KG(s)1+KG(s)

    Consider K to be fixed

    Char. eqn: s2 + as + K = 0

    Closed-loop poles: s1, s2 = (aa2 4K )/2

    What does this look like as a goes from 0 to +?

  • EE 3CL4, L 167 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Another example

  • EE 3CL4, L 168 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    What to do in the general case?

    In the previous examples we exploited the simplefactorization of second order polynomials

    To be truly useful, we need a more general procedure

  • EE 3CL4, L 169 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Principles of general procedure

    Transfer function T (s) = KG(s)1+KG(s) =p(s)q(s)

    Closed loop poles are solutions to q(s) = 0

    These are also solutions to 1 + KG(s) = 0

    In polar form, |KG(s)|KG(s) = 1 + j0 = 1(180 + k360)

    Therefore, for s0 to be a closed-loop pole, we must have

    |KG(s0)| = 1 and KG(s0) = (180 + k360)where k is any integer

    We will also keep in mind that R(s) and Y (s) correspond to realsignals. Hence, closed-loop poles are either real or occur incomplex-conjugate pairs

  • EE 3CL4, L 1610 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    In terms of poles and zerosFor s0 to be a closed-loop pole, we must have

    |KG(s0)| = 1 and KG(s0) = (180 + k360)

    Write G(s) = KGQM

    i=1(s+zi )Qnj=1(s+pj )

    , which means that the

    open loop zeros are zi s; open loop poles are pi sFor s0 to be a closed-loop pole

    |KKG|M

    i=1 |s0 + zi |nj=1 |s0 + pj |

    = 1

    K + KG +Mi=1

    (s0 + zi)n

    j=1

    (s0 + pi) = 180 + k360

    Can we interpret these expressions in a geometric way?

  • EE 3CL4, L 1611 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Vector difference Let u and v be complex numbers. Can you describe v u in geometric terms? Use the fact that v = u + (v u). That means that v u is the vector from u to v

    v u = `ej. That is, |v u| is the length of the vector from u to v . (v u) is the angle of the vector from u to v

    In our expressions we have terms of the forms0 + zi = s0 (zi) and s0 + pj = s0 (pj)

  • EE 3CL4, L 1612 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Geometric interpretationMagnitude criterion:

    |KKG|M

    i=1 |s0 + zi |nj=1 |s0 + pj |

    = 1

    |KKG|M

    i=1 distances from zeros of G(s) to s0nj=1 distances from poles of G(s) to s0

    = 1

    Phase criterion:

    K + KG +Mi=1

    (s0 + zi)n

    j=1

    (s0 + pi) = 180 + k360

    K + KG +Mi=1

    angles from zeros of G(s) to s0

    n

    j=1

    angles from poles of G(s) to s0 = 180 + k360

  • EE 3CL4, L 1613 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Formal ProcedureWe will first consider the case of K going from 0 to +

  • EE 3CL4, L 1614 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Step 1 Write the characteristic equation as 1 + F (s) = 0 Rearrange so that the parameter of interest is

    contained in the multiplier K in an exprn of the form

    1 + KP(s) = 0,

    where the numerator and denominator of P(s) aremonic polynomials (the coefficient of the highest powerof s is 1).

    Factorize P(s) into poles and zeros, P(s) =QM

    i=1(s+zi )Qnj=1(s+pj )

    Hence characteristic equation is equiv. tonj=1(s + pj) + K

    Mi=1(s + zi) = 0

    Where does the locus start? Where are poles for K = 0? They are the poles of P(s). Mark each with an

  • EE 3CL4, L 1615 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Step 1

    nj=1

    (s + pj) + KMi=1

    (s + zi) = 0

    Where do the poles end up? Where are poles for K ? Rewrite as (1/K )nj=1(s + pj) +Mi=1(s + zi) = 0 The zeros of P(s). Mark each with a Since M n there will often be zeros at, too

    Summary: Root locus starts at poles of P(s) and ends atzeros of P(s)

    Note: Often P(s) = Gc(s)G(s) and K is an amplifier gain.In that case, root locus (of the closed loop) starts at theopen loop poles and ends at the open loop zeros.

  • EE 3CL4, L 1616 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Step 2Phase condition:

    K +Mi=1

    (s0 + zi)n

    j=1

    (s0 + pj) = 180 + k360

    Recall that for K > 0, K = 0.What does this tell us when s0 is on the real axis?

    Any complex conjugate pairs have no impact

  • EE 3CL4, L 1617 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    Step 2, cont.Phase condition for K > 0:M

    i=1 (s0 + zi)n

    j=1 (s0 + pj) = 180 + k360

    Lets examine effects of poles on the real axis

    For s0,1, all angles from poles to s0,1 are zero For s0,2, right pole generates an angle of 180, others zero For s0,3,

    nj=1 (s0 + pj) = 360

    For s0,4, n

    j=1 (s0 + pj) = 540

    Something similar for zeros.

    Therefore: sections of real axis on the locus must lie to left of oddnumber of (real-valued) poles and (real-valued) zeros of P(s)

  • EE 3CL4, L 1618 / 18

    Tim Davidson

    The RootLocusProcedurePreliminaryexamples

    Formal Procedure

    ExampleP(s) = 2(s+2)s(s+4)

    Step 1: Poles s = 0,4; Zeros s = 2

    Step 2: Determine segments on real axis

    In this case, this is enough to generate the complete rootlocus

  • EE 3CL4, L 171 / 15

    Tim Davidson

    Sketching theRoot LocusReview of Principles

    Outline of steps

    Review of Steps 1and 2

    Step 3

    Step 4

    EE3CL4:Introduction to Linear Control Systems

    Lecture 17

    Tim Davidson

    McMaster University

    Winter 2011

  • EE 3CL4, L 172 / 15

    Tim Davidson

    Sketching theRoot LocusReview of Principles

    Outline of steps

    Review of Steps 1and 2

    Step 3

    Step 4

    Outline

    1 Sketching the Root LocusReview of PrinciplesOutline of stepsReview of Steps 1 and 2Step 3Step 4

  • EE 3CL4, L 174 / 15

    Tim Davidson

    Sketching theRoot LocusReview of Principles

    Outline of steps

    Review of Steps 1and 2

    Step 3

    Step 4

    Principles

    We would like to know where the closed-loop poles goas a parameter of the loop (typically a controller designparameter)