Control System Sensitivity

Embed Size (px)

Citation preview

  • 7/27/2019 Control System Sensitivity

    1/13

    Sensitivity In Control Systems

    Introduction

    Sensitivity

    ProblemsYou are at: Analysis Techniques - Performance Measures - SensitivityClick here to return to the Table of Contents

    Why Sensitivity?

    When you design a control system you need to account for all eventualities. The mostlikely problem you will have is that the system you are controlling - an airplane, a furnace, amotor, etc. - will not stay the same. There are numerous reasons for change.

    A motor will have wear in the bearings, and it might also drive different loads atdifferent times.An airplane will have changed dynamics over a flight as fuel is consumed (and the weightof the aircraft changes) and as altitude and speed change (both of which change the waycontrol surfaces affect the motion of the airplane).A furnace may be full at some times and near empty at others, and the thermaltime-constant will change.

    Every system you ever try to control will have changes. If you design for some nominalcase and don't account for the variability of the system, you could have a system that is

    unstable for some commonly encountered situation. Then your reputation will suffer, but thatwon't be your primary worry because you won't have a job either.

    In this lesson we begin to examine how changes in systems affect your designs and youbegin to learn how to predict some of those effects.

    System Sensitivity

    As a way of beginning to understand the problem, let's examine a simple feedback control

    system. Here is the block diagram for the system we will examine. We will assume thefollowing for the system.

    You know the transfer function G(s). We will assume that G(s) is a typical first ordersystem described by a DC gain and a time constant.

    The transfer function is assumed to be G(s) = GDC/(st + 1)

    For purposes of argument, we will take the following values.GDC = 5

    t = .6You want to use proportional control, so you will choose a value for the gain, K.

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    2/13

    Now, let's assume that you have some performance specifications for the closed loopsystem.

    You need to have less than 2% SSE for a step input.You need to have a closed loop time constant less than .1 sec.

    Given the transfer function, you can compute the closed loop transfer function (so you can dothe design analytically for this case) and you get the following closed loop transfer function.

    GCL(s) = KGDC/(st + 1 + KGDC)

    The requirement on SSE means that the closed loop DC gain has to be .98, so you get:

    KGDC/(1 + KGDC) > 0.98

    KGDC > 49

    K > 9.8

    Then, you check to see if the closed loop time constant meets the spec. The closed loop timeconstant is given by:

    tCL = t/(1 + KGDC)

    tCL = .06

    That meets the specification, so you have a good design choice with K = 0.98, What couldpossibly go wrong?

    Although the design seems simple and straight forward, there are any number of thingsthat could go wrong. Let's look at what we assumed. We started off with the followingassumption.

    You know the transfer function G(s). We will assume that G(s) is a typical first ordersystem described by a DC gain and a time constant.

    The transfer function is assumed to be G(s) = GDC/(st + 1)

    For purposes of argument, we will take the following values.GDC = 5

    t = .6

    We have to question this assumption. How do you know what the transfer function is? Let's

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    3/13

    look at how you might have gotten that information.

    You might have calculated the transfer function by modelling the system, writing basicequations from physics for the system, and solving for the transfer function. Then youwould have had to calculate paramter values or measure part of the system.You might have measured the step response of the system and calculated the transferfunction from step response data.

    You might have measured the frequency response of the system, plotted a Bode' plot forthe system and used the Bode' plot to get a transfer function.

    In all of these approaches you make a lot of assumptions.

    When you model a system you often make simplifying assumptions. With more effort youcould generate a more accurate - and probably more complex - model. If this is thetransfer function for a motor, maybe you neglected the inductance in the windings,throwing out an electrical time constant in the process, for example.When you measure the step response of a system, you assume that you can determine theorder of the system from the response, but there could well be some short timeconstants that get lost in the data.When you measure the frequency response of a system, you assume that you took dataover a large enough range of frequencies. Are you sure that you took enough data?

    When you get a model for a system, you are always sure that the model is not a perfect modelof the system. You hope that your model is good enough, but you do not have a 100%guarantee of that.

    Besides the possibilities mentioned above, there are other possibilities that could affectyour design.

    You had to measure the parameters of your model. In this case the parameters youmeasured were the DC gain and the time constant. How accurately do you know thoseparameters? You surely don't have those parameters nailed down to the 17th decimalplace. If you only know the time constant to within 10% you need to take your limitedknowledge into account.It's been a while (a day, a month, a year ???) since you measured those parameters. Inthat time, things could have changed. How much could they have change?

    When you measured your system parameters you did that for some particular input stepsize and in some particular situation. Are you sure that your parameter values are thesame under different circumstances?

    If there are any nonlinearities - even slight ones - that will affect your DC gain andtime constant.Maybe you measured how a motor changes speed from 1000 to 2000 rpm and usedthat data. Will you get the same parameters going from 3000 to 4000 rpm?

    Now, knowing all this, maybe you want to reconsider your gain value of 9.8 for K. Would you

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    4/13

    like to use a value of 20? How large is enough? Or, should it be smaller? How much do thingschange when K changes? How much do thing change when the time constant is different, orthe DC gain is different.

    You begin to see the problem. We need to build an understanding of how systems changewhen things inside them change. We'll begin that in the next section.

    Sensitivity of Closed Loop Parameters

    In our first order closed loop system, we found that the closed loop DC gain was given by:

    GDC,CL = KGDC/(1 + KGDC)

    Now, the first question is "How much does the closed loop DC gain change when the open loopDC gain changes?" This is really a question about accuracy. then the open loop DC gain islarger, the closed loop DC gain is approximately 1.0, and the steady state error (SSE) is small.You will want the SSE to be small, and you will want the closed loop DC gain close to 1.0 in thissystem configuration.

    Since this is a question about change, we're going to get into taking derivatives. Thefirst thing you are tempted to look at is the derivative of the closed loop DC gain with respectto the open loop DC gain. That's not a bad place to start, but we will use a more sophisticatedmeasure of change later, but we will start by computing this derivative.

    dGDC,CL/ dGDC

    That derivative is given by:

    dGDC,CL/ dGDC = K/[1 + KGDC]2

    Example

    E1 For our example system, GDC is 5. When K = 9.8, the derivative above is given by:

    dGDC,CL/ dGDC = K/[1 + KGDC]2

    dGDC,CL/ dGDC = 9.8/[1 + 49]2

    dGDC,CL/ dGDC = .00392

    That means that if the open loop DC gain, GDC , changes fro 5 to 5.5 (a 10% change), we would

    estimate the change in the closed loop DC gain to be .00392x 0.5 = .00196. However,remember that the closed loop DC gain is:

    GDC,CL = KGDC/(1 + KGDC)

    GDC,CL = 49/(1 + 49)

    GDC,CL = 0.98

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    5/13

    So, we would estimate the closed loop DC gain to change to about 0.984 when the open loop DCgain changes by 10%. We would also estimate the closed loop DC gain to change to about0.976 when the open loop DC gain changes by -10%.

    Considering this example you can see that a relatively substantial change (from 5 to 5.5,i.e. 10%) in the open loop DC gain leads to a relatively small change in the closed loop DC gain(from 0.98 to 0.984, i.e. 0.4%). That says that the gain change is much smaller in the closedloop gain, and also that the percentage gain in the closed loop DC gain is much smaller. In thatsituation, we want to say that the system is not very sensitive to changes, or that the closedloop DC gain is not very sensitive to changes in the open loop DC gain. To make sure that youunderstand what happens, we have a simulator that will show the responses for both cases.

    Simulator

    Here is a simulator that will let you compare the response for two different systems.

    Buttons and labels colored yellow are pre-loaded with values for the original system.Buttons and labels colored green are pre-loaded with values for a system with a 10%higher open loop DC gain.You can input other values for either system.Clicking the yellow labelled "Start" button will permit you to see the step response of theoriginal system.Clicking the green labelled "Start" button will permit you to see the step response systemof the altered system along with the response of the original system.

    Click here to get the simulator in a separate window. Then do the following.

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    6/13

    Check the closed loop DC gain for both cases (original system and 10% increase in openloop DC gain) and verify whether or not the above calculations predict the closed loop DCgain correctly.

    Sensitivity Continued

    In the material above we calculated variations in closed loop DC gain, but thosecalculations did not really give a clear idea of sensitivity because the open loop DC gain wasapproximately 5, and the closed loop DC gain was close to 1. In many cases it may be better tohave the answer to this question.

    If the open loop DC gain changes by some percentage, what is the percentage change inthe closed loop DC gain.

    That kind of information gives you information that most people consider to be moremeaningful and easier to interpret. We're going to examine the answer to that question next.

    First, we have to consider what a percentage change is. If we have some quantity, X, thatchanges by an amount DX, the percentage change in X is given by:

    Percentage change in X = 100[DX/X]

    However, we will be dealing with small changes in most quantities, so we will look atincremental changes (dX). For example, if we want to get the sensitivity of the closed loop DCgain to changes in open loop DC gain, we define that sensitivity as:

    S

    Gdc,cl

    Gdc = Sensitivity of closed loop DC gain to changes in open loop DC gain

    SGdc,clGdc = [dGdc,cl/Gdc,cl]/[dGdc/Gdc]

    SGdc,clGdc = [dGdc,cl/dGdcGdc,cl]/[Gdc,cl/Gdc]

    If we take our example system, we already have the derivative indicated above. Thatderivative is:

    dGDC,CL/ dGDC = K/[1 + KGDC]2

    And, we also have the other terms in the expression for the sensitivity.

    Gdc,cl = KGdc/(1 + KGdc)

    so, the sensitivity becomes:

    SGdc,clGdc = [K/[1 + KGDC]2]/[KGdc/(1 + KGdc)Gdc]

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    7/13

    SGdc,clGdc = 1/[1 + KGDC]

    Example

    E2 In our example system, we can compute the sensitivity as:

    S

    Gdc,cl

    Gdc = 1/[1 + KGdc]

    SGdc,clGdc = 1/[1 + 9.8*5]

    SGdc,clGdc = 1/[1 + 49]

    SGdc,clGdc = 0.02

    So, a 1% change in the open loop DC gain causes a .02% change in the closed loop DC gain. Or,a 5% change in the open loop DC gain would cause a .1% change in the closed loop DC gain.

    Note that the percentage change in the closed loop DC gain is substantially smaller thanthe percentage change in the open loop DC gain. That's one reason feedback control is usedso often.

    Closed loop DC gain is not the only parameter we might consider. Since we have a firstorder system, there aren't going to be a lot of other parameters. Still, there are more than

    you might think. There are two categories of parameters - open loop parameters, which canvary independently, and closed loop parameters, which vary depending upon changes in open

    loop parameters.

    Open loop parameters include the following.

    Open loop DC gainOpen loop time constantProportional gain

    Closed loop parameters include the following.

    Closed loop DC gainClosed loop time constant

    To move this further, consider the closed loop time constant. The closed loop time constant isgiven by:

    tcl = t/[1 + K*Gdc]

    We can get the sensitivity of the closed loop time constant to changes in the open loop DCgain. We define the sensitivity as:

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    8/13

    StclGdc = [dtcl/tcl]/[dGdc/Gdc]

    StclGdc = [dtcl/dGdc]*[Gdc/tcl]

    Take the indicated derivative:

    dtcl/dGdc = -Kt/[1 + KGdc]2

    Insert that result into the expression for the sensitivity and we get:

    StclGdc = [-Kt/[1 + KGdc]2]*[Gdc/tcl]

    Now, use the expression above for the closed loop time constant (in the last term) and we get:

    StclGdc = [-Kt/[1 + KGdc]2]*[Gdc/(t/[1 + K*Gdc])]

    Stcl

    Gdc = [-Kt/[1 + KGdc]]*[Gdc/(t)]

    StclGdc = [-K/[1 + KGdc]]*[Gdc]

    StclGdc = [-KGdc/[1 + KGdc]]

    Example

    E3 For the running example system, we can compute a numerical value for the sensitivity.

    Using our previous values (K = 9.8 and Gdc

    = 5) we get:

    StclGdc = [-KGdc/[1 + KGdc]]

    StclGdc = [-49/50] = -0.98

    What this means is that if the DC gain of the system increases 1%, the time constant willdecrease almost 1%.

    We can use the simulator used earlier to illustrate how the closed loop time constant

    changes.

    Simulator

    Here is a simulator that will let you compare the response for two different systems.

    Buttons and labels colored yellow are pre-loaded with values for the original system.Buttons and labels colored green are pre-loaded with values for a system with a 10%higher open loop DC gain.

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    9/13

    You can input other values for either system.Clicking the yellow labelled "Start" button will permit you to see the step response of theoriginal system.Clicking the green labelled "Start" button will permit you to see the step response systemof the altered system along with the response of the original system.

    Click here to get the simulator in a separate window. Then do the following.

    Check the closed loop time constant for both cases (original system and 10% increase in

    open loop DC gain) and verify whether or not the above calculations predict the closedloop time constant correctly.

    There are other system parameters that we need to consider. Thus far, we haveexamined the effect of changing the open loop DC gain on the closed loop DC gain and theclosed loop time constant. In this section we will examine the effect of changing the openloop time constant. Here is the block diagram for the system we have been - and will be -examining.

    We know the closed loop transfer function is given by:

    Gcl(s) = KGdc/(st + 1 + KGdc)

    Now, examine the sensitivity of the closed loop DC gain to changes in the open loop timeconstant. We know the closed loop DC gain is given by:

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    3 2/7/2013

  • 7/27/2019 Control System Sensitivity

    10/13

    Gdc,cl = KGdc/[1 + KGdc]

    The closed loop DC gain does not depend upon the open loop time constant, so when the openloop time constant changes, the closed loop DC gain does not change. Therefore, we have:

    SGdc,clt = 0

    The sensitivity is zero if the closed loop DC gain does not change when the time constantchanges.

    We don't always get such nice neat results, and we may be tempted to draw someincorrect conclusions from this result.

    Let's represent the original system a different way. Consider this.

    G(s) = GDC/(st + 1) = Ga/(s + a)

    In other words, instead of using the DC gain and the time constant, we rewrite the transferfunction of the controlled system - the plant - to show the open-loop pole explicitly. Nowconsider getting the sensitivity of the closed loop DC gain to changes in the pole location. Wewant to compute:

    SGdc,cla = [dGdc,cl/da]/[Gdc,cl/a]

    And, we know:

    Gdc,cl = KGa/[1 + KGa/a]

    Now, notice that the closed loop DC gain depends upon the pole using this representation andthat clearly implies that the sensitivity will not be zero.

    To compute the sensitivity, we first take the derivative of the closed loop DC gain withrespect to the pole, a. That derivative is given by:

    dGdc,cl/da = -KGa/[(a + KGa)3]

    Example

    E4 Consider a situation with these parameters

    Ga = 10

    a = 2

    These parameters give a DC gain of 5 in the transfer function:

    G(s) = Ga/(s + a)

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    13 2/7/2013

  • 7/27/2019 Control System Sensitivity

    11/13

    If we wanted to design for 2% SSE, we would require a total DC gain of 50, so we need

    K = 10.

    That means that the derivative we calculated above would yield:

    dGdc,cl/da = -KGa/[(a + KGa)2]

    dGdc,cl/da = -10*10/[(2 + 10*10)2]dGdc,cl/da = -0.0096 ~= -0.01

    This expression would allow us to compute the change in closed loop DC gain for a change in a.For example if a change from 2.0 to 2.01, the closed loop DC gain changes from 0.9804 to.9803. We would estimate exactly those changes, i.e.

    Change in CL DC gain ~= -.01*.01 = -.0001

    If we move to examining the sensitivity, we would have:

    SGdc,cla = [dGdc,cl/da]/[Gdc,cl/a]

    SGdc,cla = -KGa*a*[1 + KGa/a]/[(a + KGa)3]*[KGa]

    SGdc,cla = -a/[(a + KGa)2]

    Example

    E5 Continuing the example above, with these parameter values:

    Ga = 10

    a = 2K = 10

    The sensitivity is calculated as:

    SGdc,cla = -a/[(a + KGa)2]

    SGdc,cla = -2/[(2 + 100)2] = -.00019

    or, in other words, a 1% change in a will produce a -0.00019% change in the closed loop DCgain. The actual values - from Example E4 - are:

    a changes from 2 to 2.01 a 0.5% change in the open loop pole.The closed loop DC gain changes from 0.9804 to 0.9803 and change of -0.0001%.The ratio of the percentage changes is:

    -.0001%/.5% = -0.0002 - just about right.

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    13 2/7/2013

  • 7/27/2019 Control System Sensitivity

    12/13

    Summary

    Now, let's summarize what we've learned in this lesson.

    You were introduced to the concept of changes in closed loop system parameter values.Small changes in closed loop system parameter values were related to small changes inopen loop parameters and the relationship was through derivatives.Percentage changes in closed loop system parameter values were related to percentagechanges in open loop parameters and the relationship was through a quantity called thesensitivity.

    Sensitivity of any closed loop parameter to any open loop parameter can be defined, and weinvestigated a few. In the cases we investigated, we can see a common factor:

    [1 + KGa/a]

    or

    1/[1 + KGdc]

    or, in general

    1/[1 + KG(s)]

    The general form is 1 divided by 1 added to the open loop gain (DC or a function of s). Manytexts refer to this as the "Sensitivity Function". It does turn up in many of the sensitivityfunctions you will calculate and has indeed turned up in all of the sensitivity functions we have

    calculated thus far.

    Some Generalizations

    In this lesson we have used a first order system as a working example. However,consider the expression we derived for the sensitivity of the closed loop DC gain to changes inopen loop DC gain. That expression is reproduced below.

    SGdc,clGdc = 1/[1 + KGDC]

    This expression depends only upon the expression for the closed loop DC gain, given below.

    GDC,CL = KGDC/(1 + KGDC)

    Problems

    Perf3SensitivityP01 - Estimating change in closed loop DC gainPerf3SensitivityP02 - Estimating change in closed loop time constant

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe

    13 2/7/2013

  • 7/27/2019 Control System Sensitivity

    13/13

    Perf3SensitivityP03 - Estimating change in closed loop DC gain when the open looppole changes.Perf3SensitivityP04 - Sensitivity of closed loop time constant to changes in openloop time constant.

    Links To Related Lessons

    Perf1SSE - Steady State ErrorPerf3Sensitivity

    Other Design Lessons

    Send us your comments on these lessons.

    ol System Sensitivity http://www.facstaff.bucknell.edu/mastascu/econtrolhtml/Design/Pe