68. ITAE parameters for FOPDT system¶
This notebook is a convenient interface to the tbcontrol.fopdtitae
module, which calculates the values of the PI/PID controller settings based on Table 11.3 of Seborg, Edgar, Melichamp and Lewin (itself based on Smith and Corripio, 1997).
[1]:
from tbcontrol import fopdtitae
We can get the parameters using the function fopdtitae.parameters
: The default is disturbance parameters on a PI controller.
[2]:
fopdtitae.parameters(K=1, tau=1, theta=1)
[2]:
[0.859, 1.4836795252225519]
69. Interactive version¶
We’ll build an interactive version by printing the parameters with their names and allowing for easy entry.
[3]:
from ipywidgets import interact, FloatText
[4]:
names = 'Kc', 'τI', 'τD'
This is the function which does the calculations. You can check the values in Example 11.5:
[5]:
def tablefunction(K, tau, theta=1.07, type_of_input='Disturbance', type_of_controller='PI'):
parameters = fopdtitae.parameters(K, tau, theta, type_of_input, type_of_controller)
for name, value in zip(names, parameters):
print(name, "=", value)
[6]:
tablefunction(1.54, 5.93, 1.07, 'Disturbance', 'PI')
Kc = 2.9719324064107253
τI = 2.745987615154182
[7]:
interact(tablefunction,
K=FloatText(value=1.54), tau=FloatText(value=5.93), theta=FloatText(value=1.07),
type_of_input=['Disturbance', 'Set point'], type_of_controller=['PI', 'PID']);
[ ]: