Docstoc

tuning

Document Sample
tuning Powered By Docstoc
					   PID Tuning

Sigurd Skogestad
 NTNU, Trondheim, Norway
Tuning of PID controllers
   SIMC tuning rules (“Skogestad IMC”)(*)
   Main message: Can usually do much better by taking a
    systematic approach
   Key: Look at initial part of step response
         Initial slope: k’ = k/1
   One tuning rule! Easily memorized




                   c ¸ 0: desired closed-loop response time (tuning parameter)
                             For robustness select: c ¸ 
Reference: S. Skogestad, “Simple analytic rules for model reduction and PID controller design”, J.Proc.Control,
     Vol. 13, 291-309, 2003
(*) “Probably the best simple PID tuning rules in the world”
Need a model for tuning
   Model: Dynamic effect of change in input u (MV) on
    output y (CV)
   First-order + delay model for PI-control




   Second-order model for PID-control
Step response experiment

   Make step change in one u (MV) at a time
   Record the output (s) y (CV)
First-order plus delay process

                                RESULTING OUTPUT y (CV)
        k’=k/1



                               STEP IN INPUT u (MV)




                                 Step response experiment



      : Delay - Time where output does not change
      1: Time constant - Additional time to reach 63% of final change
      k : steady-state gain =  y(1)/ u
      k’ : slope after response “takes off” = k/1
Model reduction of more
complicated model

   Start with complicated stable model on the form




   Want to get a simplified model on the form



   Most important parameter is usually the “effective” delay
    
Example



          Half rule
half rule
original

1st-order+delay

2nd-order+delay
Approximation of zeros
Derivation of SIMC-PID tuning rules

   PI-controller (based on first-order model)




   For second-order model add D-action.
    For our purposes it becomes simplest with the “series” (cascade)
      PID-form:
Basis: Direct synthesis (IMC)




Closed-loop response to setpoint change




Idea: Specify desired response:

and from this get the controller. Algebra:
IMC Tuning = Direct Synthesis
Integral time
   Found: Integral time = dominant time constant (I = 1)
   Works well for setpoint changes
   Needs to be modified (reduced) for integrating
    disturbances
                              d
                          u                     y
                    c                g



    Example. “Almost-integrating process” with disturbance at input:
       G(s) = e-s/(30s+1)
        Original integral time I = 30 gives poor disturbance response
        Try reducing it!
Integral Time
                I = 1



                Reduce I to this value:
                I = 4 (c+) = 8 
Integral time

   Want to reduce the integral time for “integrating”
    processes, but to avoid “slow oscillations” we must
    require:

   Derivation:
Conclusion: SIMC-PID Tuning Rules




    One tuning parameter: c
Some insights from tuning rules

1.   The effective delay θ (which limits the achievable
     closed-loop time constant τ2/2 ) is independent of
     the dominant process time constant τ1
        It depends on τ2/2 (PI) or τ3/2 (PID)
2.   Use (close to) P-control for integrating process
        Beware of large I-action (small τI) for level control
3.   Use (close to) I-control for time delay process
Some special cases




One tuning parameter: c
Another special case: IPZ process



   IPZ-process may represent response from steam flow to pressure




   Rule T2:
   SIMC-tunings


    These tunings turn out to be almost identical to the tunings given on page 104-106 in the Ph.D.
    thesis by O. Slatteke, Lund Univ., 2006 and K. Forsman, "Reglerteknik for processindustrien",
    Studentlitteratur, 2005.
Note: Derivative action is commonly used for temperature control loops.
Select D equal to 2 = time constant of temperature sensor
Selection of tuning parameter c
Two main cases
   TIGHT CONTROL:
1. TIGHT CONTROL:           Want “fastest possible
   control” subject to having good robustness
       •   Want tight control of active constraints (“squeeze and shift”)
2.   SMOOTH CONTROL:
     SMOOTH CONTROL: Want “slowest possible
     control” subject to acceptable disturbance rejection
       •   Want smooth control if fast setpoint tracking is not required, for
           example, levels and unconstrained (“self-optimizing”) variables


•    THERE ARE ALSO OTHER ISSUES: Input
     saturation etc.
TIGHT CONTROL
TIGHT CONTROL

        Typical closed-loop SIMC responses with the choice c=
TIGHT CONTROL



   Example. Integrating process with delay=1. G(s) = e-s/s.
     Model: k’=1, =1, 1=1
     SIMC-tunings with c with ==1:


                                                                     IMC has I=1




                                      Ziegler-Nichols is usually a
                                      bit aggressive




      Setpoint change at t=0    Input disturbance at t=20
TIGHT CONTROL




     1.   Approximate as first-order model with k=1, 1 = 1+0.1=1.1, =0.1+0.04+0.008 = 0.148
          Get SIMC PI-tunings (c=): Kc = 1 ¢ 1.1/(2¢ 0.148) = 3.71, I=min(1.1,8¢ 0.148) = 1.1

     2.   Approximate as second-order model with k=1, 1 = 1, 2=0.2+0.02=0.22, =0.02+0.008 = 0.028
          Get SIMC PID-tunings (c=): Kc = 1 ¢ 1/(2¢ 0.028) = 17.9, I=min(1,8¢ 0.028) = 0.224, D=0.22
TIGHT CONTROL
SMOOTH CONTROL


  Tuning for smooth control
      Tuning parameter: c = desired closed-loop response time

      Selecting c= (“tight control”) is reasonable for cases with a relatively large
       effective delay 

      Other cases: Select c >  for
           slower control
           smoother input usage
                less disturbing effect on rest of the plant
           less sensitivity to measurement noise
           better robustness

      Question: Given that we require some disturbance rejection.
           What is the largest possible value for c ?
           Or equivalently: The smallest possible value for Kc?

                    Will derive Kc,min. From this we can get c,max using SIMC tuning rule
SMOOTH CONTROL

  Closed-loop disturbance rejection
                      d0


                      -d0


                            ymax

                            -ymax
SMOOTH CONTROL




           Kc
                  u


      Minimum controller gain for PI-and PID-control:
             Kc ¸ Kc,min = |u0|/|ymax|

                |u0|: Input magnitude required for disturbance rejection
                |ymax|: Allowed output deviation
SMOOTH CONTROL

 Minimum controller gain:



 Industrial practice: Variables (instrument ranges) often scaled such that


                                              (span)
 Minimum controller gain is then




            Minimum gain for smooth control )
      Common default factory setting Kc=1 is reasonable !
SMOOTH CONTROL

                     Example



                                                             c is much larger than =0.25




                                          Does not quite reach 1 because d is
                                          step disturbance (not not sinusoid)




       Response to step disturbance = 1 at input
SMOOTH CONTROL LEVEL CONTROL


  Application of smooth control
      Averaging level control
              q           V
                                                                             If you insist on integral action
                                    LC
                                                                             then this value avoids cycling


       Reason for having tank is to smoothen disturbances in concentration and flow.
       Tight level control is not desired: gives no “smoothening” of flow disturbances.

       Let
                   |u0| = | q0| – expected flow change [m3/s] (input disturbance)
                  |ymax| = |Vmax| - largest allowed variation in level [m3]

       Minimum controller gain for acceptable disturbance rejection:
               Kc ¸ Kc,min = |u0|/|ymax|

       From the material balance (dV/dt = q – qout), the model is g(s)=k’/s with k’=1.
       Select Kc=Kc,min. SIMC-Integral time for integrating process:
                 I = 4 / (k’ Kc) = 4 |Vmax| / | q0| = 4 ¢ residence time
       provided tank is nominally half full and q0 is equal to the nominal flow.
LEVEL CONTROL


  More on level control
     Level control often causes problems
     Typical story:
         Level loop starts oscillating
         Operator detunes by decreasing controller gain
         Level loop oscillates even more
         ......
     ???
     Explanation: Level is by itself unstable and
      requires control.
LEVEL CONTROL

  Integrating process: Level control
                                                        q       V
                                                                        LC
    • Level control problem has
        – y = V, u = qout, d=q
    • Model of level: V(s) = (q - qout)/s
        – G(s)=k’/s, Gd(s)= -k’/s (with k’=1)

    • Apply PI-control: u = c(s) (ys-y); c(s) = Kc(1+1/Is)
    • Closed-loop response to input disturbance:
        y/d = gd / (1+gc) = I s / (I/k’ s2 + Kc I s + Kc)
    • The denominator can be rewritten on standard form
                                                                             This is the basis
        – (02 s2 + 2  0 s + 1) with 02 = I/k’¢Kc and 2  0 = I        for the SIMC-rule
        – Algebra gives:                                                     for the minimum
                                                                             integral time
        – To avoid oscillations we must require 1, or Kc¢k’ ¢I > 4
    • The controller gain Kc must be large to avoid oscillations!
LEVEL CONTROL


  How avoid oscillating levels?
    • Simplest: Use P-control only (no integral action)
    • If you insist on integral action, then make sure
      the controller gain is sufficiently large
    • If you have a level loop that is oscillating then
      use Sigurds rule (can be derived):
       To avoid oscillations, increase Kc ¢I by factor
                  f=0.1¢(P0/I0)2
       where
                  P0 = period of oscillations [s]
                  I0 = original integral time [s]
                   0.1 ¼ 1/2
LEVEL CONTROL


  Case study oscillating level

      We were called upon to solve a problem with
      oscillations in a distillation column
     Closer analysis: Problem was oscillating reboiler
      level in upstream column
     Use of Sigurd’s rule solved the problem
LEVEL CONTROL
SMOOTH CONTROL

  Rule: Kc ¸ |u0|/|ymax| =1 (in scaled
  variables)
     Exception to rule: Can have Kc < 1 if disturbances
      are handled by the integral action.
         Disturbances must occur at a frequency lower than 1/I
     Applies to: Process with short time constant (1 is
      small) and no delay ( ¼ 0).
         Then I = 1 is small so integral action is “large”
         For example, flow control

               Kc: Assume variables are scaled with respect to their span
SMOOTH CONTROL


  Summary: Tuning of easy loops
      Easy loops: Small effective delay ( ¼ 0), so closed-
       loop response time c (>> ) is selected for “smooth
       control”
      ASSUME VARIABLES HAVE BEEN SCALED
       WITH RESPECT TO THEIR SPAN SO THAT
       |u0/ymax| = 1 (approx.).
      Flow control: Kc=0.5, I = 1 = time constant valve
       (typically, 10s to 30s)
      Level control: Kc=2 (and no integral action)
      Other easy loops (e.g. pressure control): Kc = 2, I =
       min(4c, 1)
          Note: Often want a tight pressure control loop (so may have
           Kc=10 or larger)
Selection of c: Other issues
   Input saturation.
       Problem. Input may “overshoot” if we “speedup” the
        response too much (here “speedup” = /c).
       Solution: To avoid input saturation, we must obey max
        “speedup”:
A little more on obtaining the model
from step response experiments
                                                                                 1 ¼ 200
                                                                                 (may be neglected for c < 40)
   “Factor 5 rule”: Only dynamics
    within a factor 5 from “control                           0.9954

    time scale” (c) are important                            0.9953

                                                              0.9953

                                                              0.9952
   Integrating process (1 = 1)                              0.9952
     Time constant 1 is not important if it is much larger
        than the desired response time c. More               0.9951
        precisely, may use                                    0.9951

                                                               0.995
                          1 =1 for 1 > 5 c
                                                               0.995

                                                              0.9949
                                                                    0       10      20    30     40     50     60
                                                                                                             time
   Delay-free process (=0)                                            ¼1
     Delay  is not important if it is much smaller than                (may be neglected for c > 5)
         the desired response time c. More precisely,
         may use                                                        c = desired response time
                           ¼ 0 for  < c/5
   “Integrating process” (c < 0.2 1):
       Need only two parameters: k’ and 
       From step response:


    Example.                                          Response on stage 70 to step in L
                                             2.8

    Step change in u:      u = 0.1          2.7
    Initial value for y:   y(0) = 2.19
                                             2.6
    Observed delay:         = 2.5 min
    At T=10 min:           y(T)=2.62         2.5
    Initial slope:                                                     y(t)
                                             2.4
                                                                                  2.62-2.19

                                             2.3
                                                                        7.5 min
                                             2.2
                                                    =2.5
                                                                                   t [min]
                                             2.1
                                                0           2     4        6        8         10
First-order with delay process (c > 0.2 1)
   Need 3 parameters:
      Delay 

      2 of the following: k, k’, 1 (Note relationship k’ = k/1)

   Example:
                               BOTTOM V: -0.5
           0.14

          0.135                                               First-order model:
           0.13                                                 = 0
                                                                k= (0.134-0.1)/(-0.5) = -0.068 (steady-state gain)
    63%   0.125

                                 xB                             1= 16 min (63% of change)
           0.12

          0.115

           0.11
                                                               Gives k’ = 0.068/16 = 0.00425
                                                               (could alternatively find k’ by observing the initial
          0.105
                                                              response)
            0.1

          0.095       16 min
                  0      50     100   150   200   250   300
Step response experiment: How
long do we need to wait?
   RULE: May stop at about 10 times of effective delay

   FAST TUNING DESIRED (“tight control”, c = ):
        NORMALLY NO NEED TO RUN THE STEP EXPERIMENT FOR LONGER THAN ABOUT 10 TIMES THE EFFECTIVE DELAY ()
        EXCEPTION: LET IT RUN A LITTLE LONGER IF YOU SEE THAT IT IS ALMOST SETTLING (TO GET 1 RIGHT)

                SIMC RULE: I = min (1, 4(c+)) with c =  for tight control



   SLOW TUNING DESIRED (“smooth control”, c > ):
       HERE YOU MAY WANT TO WAIT LONGER TO GET 1 RIGHT BECAUSE IT MAY AFFECT THE INTEGRAL TIME
       BUT THEN ON THE OTHER HAND, GETTING THE RIGHT INTEGRAL TIME IS NOT ESSENTIAL FOR SLOW TUNING
       SO ALSO HERE YOU MAY STOP AT 10 TIMES THE EFFECTIVE DELAY ()
Conclusion PID tuning
 SIMC tuning rules




 1. Tight control: Select c= corresponding to




 2. Smooth control. Select Kc ¸

 Note: Having selected Kc (or c), the integral time I should be
   selected as given above
Cascade control
Tuning:
1. First tune TC
(based on response from V to T)
2. Close TC and tune CC
(based on response from Ts to xB)



                           Ts
                                 TC                             Primary controller (CC)
                                                                sets setpoint to secondary
                                                                controller (TC).

                                                          xB
                                               CC


CC: Primary controller (“slow”):     y1 = xB (“original” CV),        u1 = y2s (MV)
TC: Secondary controller (“fast”):   y2 = T (CV),                    u2 = V (“original” MV)
Tuning of cascade controllers
• Want to control y 1 (primary CV), but have “extra” measurement y 2
• Idea: Secondary variable (y 2) may be tightly controlled and this
  helps control of y1.
• Implemented using cascade control: Input (MV) of “primary”
  controller (1) is setpoint (SP) for “secondary” controller (2)
• Tuning simple: Start with inner secondary loops (fast) and move
  upwards
• Must usually identify new model experimentally after closing each
  loop.
• One exception: Serial process with “original” input (u) and outputs
  (y1) at opposite ends of the process, and y 2 in the middle.
    – Inner (secondary-2) loop may be modelled with gain=1 and effective
      delay=(c+2
Cascade control serial process
                                  d=6

   ys        y2s        u2        y2
        K1         K2        G2         G1
                                             y1
Cascade control serial process
                                     d=6

   ys         y2s           u        y2
        K1             K2       G2         G1
                                                y1


          Without cascade



        With cascade
Tuning cascade control: serial process
   Inner fast (secondary) loop:
       P or PI-control
       Local disturbance rejection
       Much smaller effective delay (0.2 s)

   Outer slower primary loop:
       Reduced effective delay (2 s instead of 6 s)

   Time scale separation
       Inner loop can be modelled as gain=1 + 2*effective delay (0.4s)

   Very effective for control of large-scale systems
CONTROLLABILITY

   Controllability
      (Input-Output) “Controllability” is the ability to
       achieve acceptable control performance (with any
       controller)
      “Controllability” is a property of the process itself
      Analyze controllability by looking at model G(s)
      What limits controllability?
CONTROLLABILITY


   Controllability
  Recall SIMC tuning rules
  1. Tight control: Select c= corresponding to

  2. Smooth control. Select Kc ¸

  Must require Kc,max > Kc.min for controllability
  )
                                                  max. output deviation




                  initial effect of “input” disturbance
                                                               y reaches k’ ¢ |d0|¢ t after time t
                                                               y reaches ymax after t= |ymax|/ k’ ¢ |d0|
CONTROLLABILITY


   Controllability
     • More general disturbances. Requirement
       becomes (for c=):
                                               Following step
                                               disturbance d 0:
                                               Time it takes for output y
                                               to reach max. deviation


     • Conclusion: The main factors limiting
       controllability are
       – large effective delay from u to y ( large)
       – large disturbances (k’d |d0| / ymax large)

     • Can generalize using “frequency domain”:
          |Gd(j¢0.5/max)| ¢|d0| = |ymax|
CONTROLLABILITY


  Example: Distillation column
     Response to 20% increase in feed rate (disturbance) with no control
                     -3
                x 10
           16

           14
                                                                     Data for “column A”
           12                                                        Product purities:
                                                                     xD = 0.99 § 0.002, xB =0.01 § 0.005
           10
                                              xB(t)                 (mole fraction light component)
            8                                                        Small reboiler holdup, MB/F = 0.5 min
            6       ymax=0.005
            4

            2
                                                   xD(t)
            0


           -2
                                                                         Max. delay in feedback
                                                                         loop, max = 3/2 = 1.5 min
                0         1   2   3   4   5    6   7   8    9   10

                                                       time [min]
           time to exceed bound = ymax/k’d |d| = 3 min


    Controllability: Must close a loop with time constant (c) faster than 1.5 min to
    avoid that bottom composition xB exceeds max. deviation
    If this is not possible: May add tank (feed tank?, larger reboiler volume?)
    to smooth disturbances
CONTROLLABILITY


  Example: Distillation column
        Increase reboiler holdup to MB/F = 10 min

        x 10
            -3       Original holdup                              x 10
                                                                      -3   Larger holdup
   16                                                        16

   14                                                        14



                                       xB(t)
   12                                                        12

   10                                                        10

    8                                                        8
                                                                                                   xB(t)
    6                                                        6

    4                                                        4

    2                                                        2

    0                                                        0

   -2                                                        -2
        0        1    2   3   4    5    6   7   8   9   10        0        1   2   3   4   5   6   7   8    9   10

                     3 min                                                             5.8 min             time [min]



                                  With increased holdup: Max. delay in feedback loop: = 2.9 min

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:26
posted:12/4/2011
language:English
pages:59