Digital implementation of PI Control

H

Thread Starter

hany5757

I tried to calculate manually the O/P of PI controller in our Experion DCS, the equation is:

CV (t) = CV(t- l) + Del_CVt, where

CV (t) is the current CV value

CV(t- l) is the CV at the end of previous execution cycle

Del_CVt is the incremental output in the current cycle.

Del_CVt = Kc(Et-Et-1)+ (Kc*ts)*Et/Ti,
Ti : integer time in seconds as ts ,sampling time of controller (1S) in DCS., En = Pv-Sp at this time t.

But the results not coming as the actual I got from DCS. Is there any expected reason for this different in manual calculations and DCS calculations??
 
What difference between your results and those of the Experion DCS do you get? Are they a small percentage or an order of magnitude different? Can you post an example of a few steps of your results (inputs and outputs) and the DCS ones, with the control parameters (Kc, Ti, ts) you used?

Some causes of differences could be:

- Input (PV and SP) and/or output scaling factors

- Anti-windup in the controller if variables are near a limit

- Is Kc definitely a gain or is it a proportional band?
 
I upload my calculation Excel file in the following link:
http://s000.tinyupload.com/index.php?file_id=02383902758180399919

The Algorithm is Level Controller of surge drum:
LT-6601: Level transmitter reading in Drum
LC-6601.OP: Output of Level Controller calculated by DCS
Et : LT6601- SP(35.43333)

Used Kc : 1 & Ti : 24 minute (That is the used now in DCS and I used same for calculations)

CV(t): Output of Level Controller calculated by me by the equation I mentioned

You can see CV(t) result is not same as LC-6601.OP result ( I&M Columns)..especially if you go down in the cells.

If you click on the cell, you will see the equations/calculations I used.

Sampling rate : 1 Sec,
 
Hello,

Sorry, was offline for a couple of days. Had a look at your code and results now: you forgot to include the error in the integral error component of DCV_t in column H. This should be, for cell H5:

=(F5-G5)+(F5/(24*60))

Apply the same change to the other cells in column H, of course.

You will see that the manual calculation is then very similar to the DCS output.

Regards,
Gerrit.
 
Top