Studio 5000 - Ziegler Nichols' Closed-loop Tuning method

Chibu

Member
Join Date
Feb 2023
Location
Ontario
Posts
49
Hi Guys,

During PID Tuning by Ziegler Nichols Closed-loop method, In TIA Portal there is a Trend Tool used to determine Ultimate Period; marking time interval between two between successive oscillation peaks after critical Gain /sustained-oscillation has been achieved.

Where is this tool in Studio 5000 runtime PID Trend Properties please?
 
Last edited:
Rockwell has trending capability. It is possible to export this data if the CV and PV is recored as a function of time. I have posted links to python programs that can tune a system much better than Z-N.

Z-N should be abolished. It is only a way of trying to tune a system without understanding the plant. On top of that, Z-N doesn't work for all systems and it works poorly on the systems that it does control.
 
Let me know if this works

@Peter:
I am now retired, and learning python.
Just for the sake of learning can you please provide me your link where PID tuning with python is done.
https://deltamotion.com/peter/py/
The SOPDT file reads Ron Beaufort's hotrod.txt file and find a SOPDT model then calculate the controller gains using the IMC formulas.

I have a git account, but I have never posted anything there yet.
 
In TIA Portal there is a Trend Tool used to determine Ultimate Period


w'en aye w're a lad, we di'n't 'ave no trends, so aye watch'd t' data wi' a watch and estimated t'Z-N input parms in me 'ead.

'at us'ally got me close enough, and fine tuning fin'shed t'chob.
 
Well, if a branch of Vanity Fair opened here...

Important note: the methods below are tailored to compensate for disturbances (i.e., TF zeros are not taken into account)

For hotrod.txt

For open loop:

ktr = (378 – 114) / (80 – 10) = 3.77
T0.63 = 322 – 86 = 236
T0.2 = 181 – 86 = 95

kdyn = 1 (this coefficient sets the required dynamism of the closed loop, the larger the coefficient, the more dynamic the closed loop)

ak = 0.0523 * kdyn ^0.827 = 0,0523
ek = – 0.0916 * ln(kdyn ) – 2.0418 = -2,0418
offset = T0.2 / T0.63 + ln(0.8) = 0,179398822

aT = 9.31 * ln(kdyn ) – 17.73 = -17,73
bT = 6.6704 * kdyn ^-0.3533 = 6,6704

k’ = ak / (T0.63 * ktr ) * offset ^ ek = 0,001962454

T’ = (aT offset ^ 2 + bT offset) * T0.63 = 147,7456036

If
Wc(s) = kp + ki / s
then

kp = k’ * T’ = 0,289943964
Ti = k’ = 0,001962454

For closed loop:

I attached below Closed loop PI-tuning curves

Model:

W(s) = 3,77/ ((170,286*s+1)* (36,0195*s+1)* (14,57*s+1)* (11,515*s+1))

Obviously, the algorithm does not "know" anything about the parameters of the model.
The algorithm "knows": kp, ki, PV, CO.

Initial PI-settings

kp = 1
ki = 0.1

(Obviously, with such settings, the system is not stable.)

Description of the experiment

At time = 0
SP = 0
System stable

At time = 0
SP = 1

At time = 105
Calculate and apply new PI controller settings:
kp = 2.4 (Admittedly, this is not the best solution, but the system needs to be stabilized here and now)
ki = 0.00775

At time = 2000
SP = 0

At time = 4000
SP = 1

At time = 4074
Calculate and apply new PI controller settings:
kp = 0.225
ki = 0.00197

At time = 5000
SP = 0

I consider the system to be satisfactory.
The experiment was carried out without human participation.


This PI-tuning "algorithm" does not approximate the plant model.
We can even play a game:
You apply a step disturbance on the n-order lag (with or without) dead time model (dead time < total lag time constant) (before the perturbation is applied, the system must be stable or close to it) and provide me with the following data:
1. kp and ki
2. Value of the Error or PV at first peak.
3. CO value before the disturbance
4. CO value at the moment of the first peak of the Error or PV
5. CO value in steady state. If the system is not stable, then the CO values are peak-pit-peak or pit-peak-pit

I'll calculate the new kp and ki values and let you know.
Because algorithm is approximate, the experiment will have to be repeated several times.

AutoTune.png
 
Last edited:

Similar Topics

Hi Everyone, I am facing an issue while installing the STUDIO 5000 in my windows 10 PC. During installation I am getting an error that " Error...
Replies
2
Views
58
I am connecting to a remote device. When attempting to upload I receive an error that states: Error: Auto_Functions: The Import was aborted due...
Replies
3
Views
149
I recently did a program conversion from logix 500 to studio 5000 and when machine runs it depends on two ton instructions to keep the machine in...
Replies
17
Views
521
Hi Everyone. Not posted on here for a long time, but I am hoping someone can help me. I am doing a differential pressure calculation in a L27ERM...
Replies
16
Views
403
Back
Top Bottom