How to disable integral action (RESET) to get a Proportional-Only Controller

Dear experts here,

Currently I am working on a Closed-Loop Setpoint Response tuning method which need me to switch the PID controller to Proportional-Only. What is the right method to get this type of controller? Set the RESET to 0 in order to disable the integral? Or is it necessary to change the STRUCTURE parameter at the PID block to "P on Error, D on PV"? Currently at DCS, the settings is "PI on Error, D on PV". I tried to change the settings into "P on Error, D on PV" to disable the integral action. But when I turn the controller from manual to Auto, suddenly the controller output goes to zero. It caused an upset to the process. I am not sure what is the problem, because before this no such problem occurred in the plant. Can anyone here provide me the correct procedure to get the P-Only controller? Thank You.

18 Replies

  • Haris,
     
    I can’t quite remember what setting RESET to 0 does – but I think this doesn’t work well...  A couple of ideas:
     
    • try leaving STRUCTURE as it is ("PI on Error, D on PV") and simply set RESET to a very large number (depends on your process dynamics, but say 100 times its ‘normal’ value will render the integral action negligible)
    • sounds like you are aiming to use the Ziegler-Nicholls tuning method (set ‘P’ only, increase gain until you get continuous oscillation etc.); if so – don’t!  the Z-N method was a great achievement in 1943 or so, but processes have changed a lot since then; Z-N in my experience produces over-aggressive tuning, with insufficient ‘reservoir of stability’ for robust, resilient operation of most processes
    • finally, when trying anything new like your attempt to use "P on Error, D on PV", try it out first using a dummy simulation loop with a simple loop-back (typically lead/lag + dead-time) from PID output to PV; best done on an off-line computer using DeltaV Simulate, but you could easily set this up on a real controller if you don’t have this facility; don’t be a test pilot on a real process!
     
    Best regards,
     
    Neil Brown
     
     
  • In reply to neilrbrown:

    Hi Neil,

    Thanks for the information and advice. I am a new process control engineer at the company. Before this I was a DeltaV Control Engineer. So I am quite new in this process control division.

    I thought the changes for the STRUCTURE will not cause the big upset to the process, maybe just affect on how the controller will react. By the way, I am trying to use this type of method, is it different from Ziegler-Nicholls tuning method? Link as per below:

    www.nt.ntnu.no/.../TuAT2-01.pdf

    I want to try this method because the operator doesn't allow me to perform an open loop test, so I think this method (closed-loop) will be more realistic. What is your opinion?

    Okay so, I just leave the STRUCTURE as it is, and put the RESET value to a very high value to transform the controller into P-Only control. Am I right?
  • Haris,
     
    Firstly, you are correct in saying that you just leave STRUCTURE as it is (P & I on error, D on PV is usually the best option).  I’ve never tried to change STRUCTURE on the fly as it were – but don’t fancy this at all.  Setting RESET to a large number renders the ‘I’ action insignificant.  There may be a better way of switching ‘I’ off, but I can’t remember this.
     
    As for tuning methods... I had a very brief look at your referenced paper and I suspect it may not give the results you need.  My view is that ‘resilience’ (ability to perform well enough over a wide range of conditions and events) is much more important than ‘performance’ as narrowly defined by integrated absolute error, or some other mathematical measure.  I believe that the classic ‘quarter-amplitude damping’ is much too aggressive for most processes.  Here is an example.  My son flies a Boeing 737-800 and sometimes has to do what are known as Category 3 landings – fully automatic.  Just imagine the autopilot being tuned for quarter-amplitude damping... the aircraft would land 10 metres under the runway!  Without knowing anything about the process in question, I can’t really give you any more advice – and, with respect, neither can you tune the controller. 
     
    Here is what you need to know:
    • is the process self-regulating (flows, most temperatures, some pressures) or integrating (almost all levels, some pressures, very occasionally temperatures)?
    • if self regulating, what are the dead time and lag time? can you estimate the process gain?
    • if an integrating level (almost all are) what is the vessel’s time constant (volume between 0% and 100% indicated level divided by the typical mid-range volume throughput)?
    • do all the physical components in the loop (transmitter, valve positioner, control valve, air supply etc.) work properly? what are their limitations (e.g., square-root characteristic of orifice meters, control valve 0-100% stroke time etc.)?
    • what P, I and D really do – often badly/wrongly taught
     
    If your operator won’t let you do an open-loop test, you would be better to try the built-in DeltaV auto-tuner facility.  However, don’t take the results at face value.  Especially:
    • if a level or other integrating process, set RESET at least twice the vessel time constant, as defined above
    • if self-regulating. err on the conservative side (less GAIN, longer RESET)
    Disturbance response is almost always more important than setpoint response.  If the process naturally generates disturbances, use these to analyse and improve controller performance.  Setpoint step change tests are really a last resort.
     
    I run a 2-day intensive training course on all this stuff.  I’ve attached some info.  If you are interested, please let me know.
     
    Finally, some words of wisdom from Dr R V (Bob) Bartman ( www.procontrol.net ): “every control engineer has a finite number of plant trials in his or her entire career, so plan them well and use them wisely”.
     
    Best regards,
     
    Neil Brown
     
  • In reply to neilrbrown:

    Neil,

    Great explanation. I will take utmost consideration of your information when perform the PID tuning. By the way, the system has DeltaV Insight. I plan to use the software method for the time being since I am quite a beginner. From there maybe I can learn the characteristics of the process tuning that I have been working right now. Actually I haven't tried Insight before this.
  • Dear, for disable the integral, set I = 99999 . !! that's what I was told

    I tried, and it doesn't work

  • In reply to Jean-Marc Dufert:

    put 0 that works also, eventough 0 means infinite integral, the algorithm disable totally reset action if you put zero
    Can you explain us which kind of process you have to justify disabling reset ? Except Level control , Reset is quite mandatory to get PV=SP
  • In reply to LaurentB:

    !!!!!! very sure 0 does not work on DeltaV to disable the Reset time unless Emerson changed that in recent versions of DeltaV !!!!!

    See Neil Brown comment above.

    My recollection is that RESET of 0 acts like a RESET setting equal to the module scan rate. really fast.

    Also, the reason changing STRUCTURE likely caused issues if you did it from control studio is that it may have caused a total download of the block or a re-initialization of the algorithm. not sure if it is more bumpless if done from OOS mode on the block when online with the module.

    just set the integral very very high.
  • In reply to Brian Hrankowsky:

    Brian is correct, setting the Reset to 0 (0 seconds per repeat) on a DeltaV PID block makes the integral action VERY fast, approximately the execution time of the module as Brian says.  I usually put 999999 to temporarily turn in the integral action off.  To permanently turn it off, change the PID/Structure to one of the PD structures (no I).  I have never seen the PID change its output if the PID is in Manual when the download occurs.  Brian is correct also that you can put the PID/MODE to out of service (OOS) in the on-line and make this change without a download.  This may cause the PID PV, OUT, etc, status to change which could cause some issues if these parameters are monitored by some other code.

    When using the DeltaV InSight Tuning tools (On Demand Tuning or Adaptive Tuning) you MUST set the process type to Integrating if it is an integrating process, otherwise the results will not be appropriate.  As Neil recommended, you need an understanding of the PID action and some understanding of basic tuning to evaluate the results of any automatic loop tuner.  A course on the topic is always helpful.  A simulation in DelaV Simulate or even in the plant DeltaV is invaluable!  Here are a couple of articles that I wrote in the ISA Intech magazine that should be helpful!    

    Good luck!

  • In reply to Brian Hrankowsky:

    It is true that a reset of 0 does not disable integral action. Let's not forget about the IDEADBAND parameter.
  • In reply to Mark Bendele:

    Yes, IDEADBAND will turn off the integral. Note that it is in EU's of the PV_SCALE and I suppose it should be set to 110% of the span of the PV_SCALE to make sure it turns off the integral for all values of SP and PV.
  • In reply to James Beall:

    James, are you sure for turn action integral off is 999999 et not 99999 ? or It is the same in final ?. I received information : it is only combination of 5 time 9 only not 6 time ? Thank you
  • In reply to Jean-Marc Dufert:

    Jean-Marc,
    Either is fine. There is not a specific number for Reset that actually turns it "off". A large number simply slows the integral action down so that it is insignificant.
  • In reply to James Beall:

    I understand, the action will be insignifiant but never canceled, except by a change in structure in P+D. Thank you for your reply. Best regards
  • In reply to Mark Bendele:

    Yes sorry for my mistake, I remember it was written somewhere in the bookonline, but as I never had to remove Reset action , I didn't really test it. I just do it on a simulate, and I agree , put RESET to 0.000000000 doesn't remove the integral action !! just the opposite.
    Anyway the idea to put a very high value will be equivalent to suppress it , for what he wants to do.
    Eventhough I think there many other way to identifies the proces as it was already sggested here
  • In reply to Brian Hrankowsky:

    changing structure online by puting pid block in Out Of Service is not a good idea, it's not bumpless and it's seen by upload processus , and you can have trouble with blue triangle especially with module class