Cascaded PID loop question

M

Thread Starter

Monah Fakhoury

Hi, We build a cascaded loop involving three input variables, and used simulators to input signal to the three channels. With the simulated inputs constant we, the output of the second PID is oscillating, between three points, and not full scale. The loop that we are having a problem with is a three term control loop, looks like this : 1. The input from a flow transmitter, call it FT1 goes into the first PID block, call it PID1. 2. The output from PID1 goes into exp block as a_in_0 3. Another input from another transmitter, call it FT2 goes into exp block as a_in_1. 4. The exp block executes the following a_out_0 = a_in_1 - a_in_0 + 50 5. The output a_out_0 on the exp block goes into the second PID2 CAS_IN. 6. A third flow transmitter FT3 also feeds PID2 as IN. 7. The BKCAL_OUT on PID2 is wired to BKCAL_IN on PID1. 8. The output OUT on PID2 is outputed to a control valve, 4 -20 mA. PID2 is in cascaded mode, and PID1 is in auto mode. We are using simulators for FT1, FT2, and FT3. All are set at about %50. We have a current meter to measure the output. The output oscillates, and is not stable, although all three FT are constant. When we change the value of any of the FT, the output behaves correctly, but the oscillation is still there. To test this we also changed the expression in the exp block, so as not to include the minus sign between a_in_1 - a_in_0, i.e. we changed the minus sign to a plus sign, and the output was stable. We have done multiple tests and it seems that the only case where the oscillation goes away is when we write an expression without a minus sign. Does anybody know of reason or reasons for the oscillation on the output. Thank you.............Monah
 
H

Hakan Ozevin

Although you did not intend to do so, you made a "positive feedback oscillator". The output which is fed back to the input is so high that it makes the system oscillate with the natural frequency of the whole system. Just decrease Kp1 and Kp2. System should come to stability. Hakan Ozevin
 
Hi We do a lot of control loops for BMS and industry applications. Cascaded PID loop controls are used to do fine adjustments to the response, when a direct response is too sluggish or too fast. This is essentiually dictated by the system resposne time (That is not the measured elements to the controlled element, which is the control system response, but actually the change that would result in the measured element as an external response to the controlled element). Having said that, and observing you are having an oscillation, it seems to indicate that you have positive feedback. But this is not indicated in you expression calculation. One simple query I would have is - When you have a properly parametered (assumption) PID controller(s) , why have you done a feedback of the BKCAL_OUT of PID2 to BKCAL_IN of PID1 ? This would effectively feedback your flow value of FT1 to PID1. Your expression appears to show a cancellation of this flow, but I believe the parametering of PID1 may result in a value that does not cancel out entirely - this results in a positive feedback. In a cascade loop, normally there is no need to feedback. Just tweak the Integral and Differential parameters to achieve the result. In fact, cascading is needed only in the event of influence of non-system parameters on the inputs (eg. external air condition in an HVAC loop) and not really needed in closed loop systems. the PID parametering itself would be adequate normally to meet the needs. Clearly your expression is system related. So it is not a simple answer of changing the minus to a plus. This is clearly not what you want! Letting PID1 be a fast response and PID2 to be a sluggish response may stabilize, if you still need the feedback loop itself. Or am I misreading the "feedback" part of your mail ?! Suresh ICON Technologies , Chennai, India
 
H

Hakan Ozevin

I had a look at expertune when I was making my doctorate thesis on digital control, but it was too simple and now I advise it to my students. Already you did not mention what is the problem, I agree with you; after I looked at what I written once more, I saw that I had used too less words to explain what I meant. Thus I have combined two cases as one, by mistake: 1. Either there is a positive feedback, then the sign of the transmitter(s) is wrong and thus even a small signal (even a disturbance) will cause an oscillation 2. There is no positive feedback, but the gain of the system is too high and thus it behaves like a simple on/off control and will again oscillate. But the solution is the same as I have written: In the first case the author should check about the error signals sign (I think they are sure that the sign is correct) and in the second case he should decrease the Kp's. Thank you for your warning. By the way, I couldn't see your comment for this problem. What do you advise? Best regards, Hakan Ozevin
 
Top