m

Over ride Control Stragety

Hi ,
Myself working with DCS configuration for a  Petro Chemical Project.
I have one requirement with respect to the Over ride Control Strategy.
We have a Base PID Controller and the Constrain PID Controller.
Then the Control Selector and then connected to the AO Function block as per the Snapshot in the attachment.
 
Now the control selector is Low selected and is Kept in AUTO Mode. Consider both the Base and Constrain PID controller is in AUTO Mode.
The main control is from the Base PID Controller and the Constrain controller Output follows the Base PID Controller’s Output
with the concept of the Output of Constrain controller is = (Output of Base controller +(PV-SP) of the Constrain PID Controller).
 
My problem is when the output of the Base controller is ramping upwards due to the change in its SP ,the constrain controller is also ramping upwards but slower than the Base controllers output,
because of which the control selector changes its selection (which is not as per the requirement)
Now as there is a constant error(PV-SP) in the Constrain PID controller so the output of the Constrain controller will be more than the Base controller as per the above stated concept.
So till the time the output of the base controller reached to its steady state position ,the control is from the constrain controller output, after the base controller reaches its steady point then the constrain comes slowly and then goes higher to the Base controller output ,then the control selector changes its selection again back to the Base PID Controller.
The Specification requirement states that when the constrain PID controller violates then the constrain controller PID should take the control of the final element.
 
Till that time the constrain controller output should follow the Base controller output like a shadow.
That means as soon as the output of the Base controller is changed the Output of the Constrain controller also should change immediately so that the control is with the Base controller.
 
Pls suggest the Best possible way to obtain the functionality.
 
Thanks & regards,
 
Amit Kr Dey
 
 
 

.Amit Kumar Dey

6 Replies

  • The attachment doesn't appear.  

    The first thing I would ask is are you taking advantage of the BKCAL_SEL# parameters in the control selector? (i.e. wiring them into the BKCAL_IN of the respective PID blocks)?

    I haven't completely processed your requirements, but I would also want to understand the physical process you are trying to control, and how you have your constraint controller set up.  

  • In reply to Youssef.El-Bahtimy:

    Hi Youssef,

    Yes The BKCAL_OUT1 and  BKCAL_OUT2 from Control Selector is connected to BKCAL_IN of Base & Constrain PID Controller respectively.

    The BKCAL_IN of Control Selector is the BKCAL_OUT from the Control Valve.

    The control scheme is the same as is shown in the below link.

    http://www.controlloopfoundation.com/override-control-workspace.aspx

    This stragety is used in order to avoid the saturation of the controllers whose control action is not selected(due to the windup of the integral action),the Base controller and Constrain Controller shall be configured with External Feedback enabled.

    The source of the External Feedback is the output of the last selection i.e, control valve.

     

    .Amit Kumar Dey

  • In reply to amitdey_23:

    HI,

    I tried to understand your control scheme..but hmm Confused didn´t quite get it (propably me)

    Need a control diagram of the process..Big Smile

    If you use two separate PID controllers they will not have the same output value.

    You could always use the "TRK_IN_D initiates the external tracking function." when you are not using the controller ?

    See the PID function block in BOLS to get more information.

    Application Example: Dynamic Reset Limiting In Primary of A Cascade

    Two PID blocks are configured in a cascade control configuration. The MASTER PID is tuned for load response to approximately the best IAE (Integrated Absolute Error), without FRSIPID_OPTS option Dynamic Reset Limit (DRL) selected. The MASTER PID is then tuned to give the identical IAE with option Dynamic Reset Limit selected. The response for SP and load responses are compared: Note that in this example the MASTER is using identical RESET and RATE, but in the case where the Dynamic Reset Limit option is selected the GAIN parameter is adjusted to about 1.6 the value applied in the case when option is not selected.

    Application Example: Cascade Control with Master and Slave Loops

    The feedforward scheme in the above example requires that some correlation be predetermined between steam flow changes and the steam valve opening adjustments they make. Another way to deal with the time delay problem is to use cascaded controllers. This approach does not require finding a correlation between steam flow changes and their steam valve opening adjustments. In the cascade loop in the following figure, the output from the master temperature loop is used as the setpoint for the slave steam flow loop. The following diagram shows the process instrumentation for this example:

    Niklas Flykt 

    Klinkmann Oy

    Key Account Manager safety products

    [email protected]

  • In reply to Niklas Flykt:

    So the override control example (which is also depicted in books on line using a classic flow with pressure override example) assumes that the process variables on each controller are acted on independantly of each other.  If you are trying to calculate the override output  on the control action output of the main loop as you describe, you need to disable the PID algorithm in the override (using the bypass option).  Alternatively, you could make use of the bias input or the hi output limit of the main controller to attenuate the output based on your override calculation.

    The control selector does not cause tracking of the unselected controller (else how would the outputs differ?)   As Niklas said, you can use the tracking bit of the override PID when the calculated override does not violate your control constraints.  

    I think description of the real world case (what are you PV's and SP's) would also help us understand what your specification is really trying to achieve.

  • In reply to Youssef.El-Bahtimy:

    Hi Niklas and Youssef,

    Thanks for your reply.

    but the requirement is that when the value in the BKCAL_IN of the constrain controller changes but the change in PID output happens after some time.like now both the Base and Constraint Controller is in AUTO mode and the control valve is controlled by the Base controller (low output).

    Now if the output of the Base is increasing then the Control valve tends to open accordingly,then the BKCAL_IN of the constrain also starts to increase but slower than the Base controller's output because of which the control selector is shifted to constrain controller output and then again when the Output of Constrain is going more than the Base ,the control is shifted to the Base Controller.

    I am searching for the possible way by which if the value of the BKCAL_IN of the PID changes ,the Output of  the PID controller should takes action faster so that its output changes  as soon as there is a change in the BKCAL_IN of the Constraint Controller,This faster action is required when the PID is in Auto mode only.

    Actually what is happening is that the value in BKCAL_IN changes but the Output from the PID come after 10-15 secs,which is not required for this case.

    Pls find the Example below:

    If the Base controller Output is changed from 70% to 20% & constraint Controller changes accordingly. In this condition there is no problem as the Base changed quickly to the Low Output and the Control is with the Base Controller.

    Now when the Output of the Base Controller is changed from 20% to 50%, the Selector changes its selection and the control goes to the Constraint Controller and as the Constrain controller is having an error of 5 % (suppose) so the Output of the Constrain controller will be 55%, So when the Constraint Controller Output Cross the 50% then again the Selection is changed and again back to Base Controller for Controlling the Control Valve.

    Now as per the EPC requirement, the change over between the Base & Constraint Controller should not happen until and unless the Constraint violates its SP Variable.

    Here in the below scheme 20LC290007 is the constraint Controller and 20FC290014 is a Base Controller.

    20FY290014 is a Control Selector(LOW) module.

     

     

     

    .Amit Kumar Dey

  • In reply to amitdey_23:

    hi,

    I found some intresting material on this subject:

    http://www.controlguru.com/2008/030908.html

    Is your process a simple filling of the tank?

    Just use a cascade controller, and Rate limits and all the other things that are available on the output in Inputs ?

    Why do you need the constraint PID cuircuit?

    (The PID have built in anti-windup and enhanced saturation recovery ,

    if you want faster action you could change the P-I-D control values online according to process values (poor man´s Fuzzy logic) )

    Where is the constrait PID getting it´s setpoint? Is it a static value you use or is it changing?

    Still havingproblems figuring out the process, are you controlling the level?

    Is the PV:s the filling level of the tank or/and the flowrate?

    Niklas Flykt 

    Klinkmann Oy

    Key Account Manager safety products

    [email protected]

Related