About self-regulating and integrating questions

  

How are you?

I just read 2 articles by you  about Self-Regulating and Integrating.  These articles are very nice and interesting.

Today I test a Classical PID loops using Self-Regulating method according to your articles, the result was satisfied. In addition, I try to use "Ziegler and Nichols" method today, but result was not satisfied.

I used a Simulate Blocks generated a first order plus dead time (FOPDT) dynamic model as my Classical PID PV Value and calculate the required PID tuning constants according to your method in our office. 

Now I still have some confusions about Self-Regulating, I am not sure if you can draw some time to give me a help. .

1. How to accurately identify the Times Constants(Tau), I mean If I give a 10% Step out to PID controller, If PID Output from 0 to 10%, the time required for the process to reach 98 percent of its final value maybe take 120 seconds, then I step out PID output from 10% to 20%, the time  Constants(Tau) maybe difference, How to identify this time Constants(Tau)?  test some times then average all these test values? I ever met a actual case, I give a step output to PID output from 0% to 10%, but no any feedback from Valve, but when I step out PID Output from 10% to 20%, the PV feedback very fast. so to this case, how to calculate time Constant(Tau)?

2. KP=Δ%PV/Δ%OUT, How to calculate the Δ%PV? In my test, I assuming the Δ%PV=1% PV final Value when I give Step output to PID output, but in your article, there is a  chart display  Δ%PV=2.8%, I have a little confusion, the PV has reached 98% PV final value, the left PV should not exceed 2%, why the  Δ%PV=2.8%?

3. When using the integrating tune method? In Your article, you mentioned "Level processes typically have an integrating response" , So I want to know if Level tuning need to use Integrating, the other types loops suit for using self-Regulating?

4. I used Simulate using reached 0.632 final PV value take times as time constants,  why using a 0.632 ? I am a little curious for this parameter.

Sorry to ask so many questions, I will appreciate to get your help.

Jimmy

  • Good questions Jimmy!  I am glad you enjoyed the articles!  I assume these were the articles that I wrote for the ISA Intech magazine, found at the following links.

    Keep in mind that "all process models are wrong, but some are useful"!  What I mean by this is that that the process model is never a perfect fit to the model that we choose to approximate it with, we choose a model that is a "good enough" fit to the process response.  Secondly, the process model, which really includes all the components in the loop such as the valve, transmitter, I/O filters, etc., varies over the range of operation (even at a single operating point!).  It is common to see +-20% variation in the model parameters over a small operating range.  If these process model varies too much, linearization techniques are beneficial.  So, you don't have to be super accurate on the model identification because it will vary on its own and you must allow for this in the robustness of your tuning.

    So, I'll answer your questions below!

    1. How to accurately identify the Times Constants(Tau), I mean If I give a 10% Step out to PID controller, If PID Output from 0 to 10%, the time required for the process to reach 98 percent of its final value maybe take 120 seconds, then I step out PID output from 10% to 20%, the time  Constants(Tau) maybe difference, How to identify this time Constants(Tau)?  test some times then average all these test values? I ever met a actual case, I give a step output to PID output from 0% to 10%, but no any feedback from Valve, but when I step out PID Output from 10% to 20%, the PV feedback very fast. so to this case, how to calculate time Constant(Tau)?  James: First, be careful about stepping the out from 0% or 100%, the final control element (FCE), such as a valve, may not be responding from these limits.  Depending on the response of the FCE coming off a limit, it could impact the dead time, time constant and process gain.  Once the FCE is off the limit, the time constant should be consistent for other step sizes and positions (though as noted above, it does vary!).  You must have a data recording system that is fast enough to identify the response dynamics, say 1/3 of Tau or dead time, whichever is smaller. 

    2. KP=Δ%PV/Δ%OUT, How to calculate the Δ%PV? In my test, I assuming the Δ%PV=1% PV final Value when I give Step output to PID output, but in your article, there is a  chart display  Δ%PV=2.8%, I have a little confusion, the PV has reached 98% PV final value, the left PV should not exceed 2%, why the  Δ%PV=2.8%?James: The figure was trying to show the final change was 2.8% and the 98% value of change would be 0.98 (2.8%)= 2.74%.  So, the time, after the dead time, that it takes the PV to change by 2.74% is the T98.  And the Tau is T98/4.

    3. When using the integrating tune method? In Your article, you mentioned "Level processes typically have an integrating response" , So I want to know if Level tuning need to use Integrating, the other types loops suit for using self-Regulating?  James: There are exceptions but typically flow, some temperatures, some pressures, compositions are self-regulating.  Even some levels, like a tank with no discharge pump (like a bathtub) are self-regulating. 

    4. I used Simulate using reached 0.632 final PV value take times as time constants,  why using a 0.632 ? I am a little curious for this parameter.  James: This is because a first order response, without deadtime, has a response equation where ΔPV=ΔOUT*Kp*(1-e**(-t/tau)).  So, at "one time constant" when t=tau, then (1-e**(-t/tau)) = (1-e**(-1)) = (1-0.368) = 0.632, or 63.2%.  And, when time equal "4 time constants, (1-e**(-t/tau)) = (1-e**(-4)) = (1-0.00183) = 0.982, or 98%. 

  • In reply to James Beall:

    Many Thanks for your promptly answer my questions @
    Now I still have some questions.
    1. About Δ%PV, the Δ%PV =【 (Tau98+1seconds)'s value-Tau98's Value)/PV final value as Δ%PV? In other words, When PV reach 98%, how long I will wait for testing Value change from Tau98 value? Because Your Article's chart is a little dim, I cannot see clearly the time gap.
    2. I used My simulate blocks, test my Δ%PV/Δ%OUT=0.02, this is a reasonable value? My Simulate block's Process gain=0.1(Open Loop Gain), Dead time=10 seconds, My test PID tuning result is satisfied. When λ=3Tau, the PV reached setpoint takes about 8 minutes, When I used λ=2Tau, PV reach setpoint takes about 5 minutes. I am not sure if this time is reasonable for a real process tuning, Based on your experience, How long time will be reasonable value that PID reach stabilize?
    3. I will test real process response time after one month to the customer site, now I have to do test by using simulate block in office. I have a pressure loop, setpoints only have 0.3 MPa, so I suspect the Open loop gain should be very small, maybe less 0.01 or 0.02, My suspect is correct?
    4. My classical PID block Integral item is “integral Reset(Repeat/Minutes), so for my PID block, integral factor should be= 60 seconds/Tau, Correct?

    Best Regards

    Jimmy
  • In reply to Jimmy Lee:

    Hi Jimmy!
    1. Theoretically you should wait another couple of Tau, in other words about 1/2 T98 more time. However, the "final" Δ%PV is theoretically 1.02 * Δ%PV at T98. So, there is not much difference between Δ%PV at T98 and Δ%PV final. It only impacts the process gain calculation by 2% and in the field, the BEST consistency of model parameters for multiple steps is +-5%! So, use your eyes to determine the Δ%PV final. There are tuning software packages that determine these parameters.

    2. Normally a self-regulating process gain (really "loop gain") Δ%PV/Δ%OUT should be about 0.5- 2.0. Too small and the full PV range cannot be obtained; too large limits sensitivity and amplifies non-linearity in the transmitter and final control element. Is your Simulate block gain of 0.1 in engineering units? If so, I need to know the PV scale in Engineering Units (EU) of the PID controller to check if Δ%PV/Δ%OUT=0.02. Since this is your simulation, and if PID/OUT has a 0-100% scale, you can calculate the Δ%PV/Δ%OUT= (EU Gain of simulation)*(100% / EU Span/%OUT). In your first set of questions, you say T98~120 seconds. Since T98 = 4*Tau, Tau=30 seconds. Recall for that for a self-regulation loop, the closed loop response of the PV vs. the SP is approximately a first order response with a time constant of Lambda and its T98 time is 4*Lambda. T98 is "nearly to the final value". So, if Lambda=2*30 seconds = 60 seconds, it should take 4*60 seconds, or about 4 minutes, for PV to obtain the new SP after its step to a new value. For Lambda=3*30 seconds = 90 seconds, it should take 4*90 seconds, or about 6 minutes. Note that determining the "time to achieve the new SP after a step of the SP" is a bit subjective because theoretically at 4*Lambda, PV response is 98.2% of SP change, at 5*Lambda, PV response is 99.3% of SP change and at 6*Lambda, PV response is 99.8% of SP change. In the field, noise on the PV makes this more difficult also! So, your results look about correct. A SP step is a good way to check your tuning! Note that a different PID "Structure" such as "Proportional on PV" instead of the common choice of "Proportional on error" will result in a longer response time of the PID.

    3. Note that the open loop gain (also called "process gain" but "loop gain" is more descriptive) is a function of the control valve "gain", the actual process gain, the transmitter "gain", and the PID PV scale. All of these combined are measured from the PID controller's perspective by the Δ%PV/Δ%OUT! Thus, it a very "wide span" PID PV scale is chosen (e.g. 0-100 MPa instead of 0-1 MPa), the Δ%PV/Δ%OUT will be much smaller.

    4. Yes. To a bit more general, Repeats/Minute = 60 seconds / (Reset Time in seconds).

    Hope this helps! Feel free to reach out again or contact me directly!
  • James, Many Thanks for your patient.
     
    1. Please forgive my stupid, I still not understand how to measure Δ%PV  . Based on your Equation 3: Controller gain =Integral time/|Kp| (λ+Td), KP=Δ%PV/Δ%OUT
    If Δ%PV is not correct, it will impact the Controller Gain. Please look at below snapshot with red line mark, this time gap is 1 second? I cannot see the time gap because the chart is dim
     
    1. I have a pressure loop, the PV Engineering Unit from 0 MPa  to 1Mpa, the PID output from 0 to 100%, SetPoint is 0.3MPa, so this Open loop gain must be small, should be around 0.1, correct? For this loop, Do I need to scale  0-1MPa into 0-1000KPa, and setpoint scale 0.3MPa into 300 KPa? Then this open loop gain should be around 10.
    2. I have a simulate block, it can only simulate “response to step setpoint change”, how to simulate a “response to a step load change” need to a special software package?
     
    Best Regards
     
    Jimmu
     
  • James, Many Thanks for your patient.
     
    1. Please forgive my stupid, I still not understand how to measure Δ%PV  . Based on your Equation 3: Controller gain =Integral time/|Kp| (λ+Td), KP=Δ%PV/Δ%OUT
    If Δ%PV is not correct, it will impact the Controller Gain. Please look at below snapshot with red line mark, this time gap is 1 second? I cannot see the time gap because the chart is dim
     
    1. I have a pressure loop, the PV Engineering Unit from 0 MPa  to 1Mpa, the PID output from 0 to 100%, SetPoint is 0.3MPa, so this Open loop gain must be small, should be around 0.1, correct? For this loop, Do I need to scale  0-1MPa into 0-1000KPa, and setpoint scale 0.3MPa into 300 KPa? Then this open loop gain should be around 10.
    2. I have a simulate block, it can only simulate “response to step setpoint change”, how to simulate a “response to a step load change” need to a special software package?
     
    Best Regards
     
    Jimmu
     
  • In reply to Jimmy Lee:

    Jimmy,
    Glad to answer.

    1. You are correct on the impact of Δ%PV on Kp. What I was trying to say in my answer #2 above is that it won't make much difference, max ~2% of value, how long you wait to get Δ%PV. In real life the longer you wait the more chance there will be disturbance that moves the PV. And, to get T98, you have to choose some point when the PV appears to line out in order to get Δ%P and thus 0.98 of Δ%PV to get T98. So, by the process, you have already gotten Δ%PV before you establish the T98 point.

    2. In general, it is desirable to have the normal PV in the range of 30%-70% of scale. However, for pressure loops, the the "unit not running" may be far away from the normal pressure. For this case, some customers have a Pressure Indicator with a wide range and a pressure controller with a narrow range. Some customer put a wide range on the pressure controller so they can see the pressure come from non-running value to the normal range. 0.3 MPa is 30% on a scale of 0-1.0 MPa, 300 KPa is 30% on a 0-1000 KPa scale so there is no difference on the %PV normal nor the open loop gain. Either scale is ok. Am I missing something?

    3. I thought your "simulate" block was a function in configuration that simulated the process. Normally there is an input to any kind of "process simulation configuration" that allows you to add a load disturbance. So, the process simulation would work for either case, load or SP. I would need to know more about your simulation configuration/block to comment.

    James
  • In reply to James Beall:

    Many Many Thanks for your detail explanation, Appreciate it!

    Jimmy