Control of Process with dominant deadtime ---> Step response test parameter estimation
Control of Process with dominant deadtime ---> Step response test parameter estimation
(OP)
Hi,
I'm a newbie using matlab and to deal with system identification. But as it happend I have to tune a PI Controller for a process. So I thought a open loop test like a step response test is sufficient. I carried out the following test:
set the control signal to a fixed value and see what happen: control signal is set to 6 A at t=0 and the output value is measured. I got the follwoing data for Y: 0.03, 0.04, 0.04, 0.11, 0.11, 0.7, 0.7, 1.06, 1.06, 1.22, 1.22, 1.29, 1.29, 1.34, 1.39, 1.39, 1.42, 1.42, 1.42, 1.42, 1.43, 1.43, 1.42, 1.42, 1.4, 1.4, 1.4, 1.4, 1.4, 1.4, 1.43, 1.43, 1.42, 1.42, 1.39, 1.39, 1.4, 1.4, 1.4 --> unit kW
the time is t=0:0.5:39;
Then according to Hägglund one calculate the paramaeters of first-order plus deadtime model G(s)=Ks/(1+sT)*e^(-sL):
Ks=Y(end); %not quite right but close
A0=trapz(T,(Ks-Y));
t0=A0/Ks;
t0=A0/(Ks);
idx=find(T<t0);
t1=T(idx);y1=Y(idx);
A1=trapz(t1,y1);
tau=exp(1)*A1/(Ks);
L=max(0,(A0-exp(1)*A1)/(Ks));
GM=tf(Ks,[tau 1],'iodelay',L);
Well, I got something for the parameters: L=1.7 K=1.4/6 T=1.325 but what tunig rule (practical) is suitable for this problem? The deadtime is twice as the time constant. So it's hard to control. Does somebody has a suggestion?
cheers,
I'm a newbie using matlab and to deal with system identification. But as it happend I have to tune a PI Controller for a process. So I thought a open loop test like a step response test is sufficient. I carried out the following test:
set the control signal to a fixed value and see what happen: control signal is set to 6 A at t=0 and the output value is measured. I got the follwoing data for Y: 0.03, 0.04, 0.04, 0.11, 0.11, 0.7, 0.7, 1.06, 1.06, 1.22, 1.22, 1.29, 1.29, 1.34, 1.39, 1.39, 1.42, 1.42, 1.42, 1.42, 1.43, 1.43, 1.42, 1.42, 1.4, 1.4, 1.4, 1.4, 1.4, 1.4, 1.43, 1.43, 1.42, 1.42, 1.39, 1.39, 1.4, 1.4, 1.4 --> unit kW
the time is t=0:0.5:39;
Then according to Hägglund one calculate the paramaeters of first-order plus deadtime model G(s)=Ks/(1+sT)*e^(-sL):
Ks=Y(end); %not quite right but close
A0=trapz(T,(Ks-Y));
t0=A0/Ks;
t0=A0/(Ks);
idx=find(T<t0);
t1=T(idx);y1=Y(idx);
A1=trapz(t1,y1);
tau=exp(1)*A1/(Ks);
L=max(0,(A0-exp(1)*A1)/(Ks));
GM=tf(Ks,[tau 1],'iodelay',L);
Well, I got something for the parameters: L=1.7 K=1.4/6 T=1.325 but what tunig rule (practical) is suitable for this problem? The deadtime is twice as the time constant. So it's hard to control. Does somebody has a suggestion?
cheers,





RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
Finally, there are plenty of PI and PID tuning rules given for dead-time dominant processes. Check out this link, and look for rules where the τm / Tm is greater than your calculated ratio of L/τ.
xnuke
"Live and act within the limit of your knowledge and keep expanding it to the limit of your life." Ayn Rand, Atlas Shrugged.
Please see FAQ731-376: Eng-Tips.com Forum Policies for tips on how to make the best use of Eng-Tips.
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
Thanks for the link I will check it...
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
As far as using the link I provided: for PI tuning, I'd be looking at Table 1; for PID tuning, I'd be looking at Table 25, or if I have a noisy process and needed to filter the derivative, I'd look at Table 36.
xnuke
"Live and act within the limit of your knowledge and keep expanding it to the limit of your life." Ayn Rand, Atlas Shrugged.
Please see FAQ731-376: Eng-Tips.com Forum Policies for tips on how to make the best use of Eng-Tips.
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
I made the dead time 3 minutes and the plant time constant 1 minute just for you. You can see the response as a little over shoot but it isn't bad.
There are actually two simulations. One with my gain calculations and the other using the IMC model gains. I would use the IMC model gains to start because they are simple to calculate.
http://deltamotion.com/peter/Mathcad/FOPDT/Mathcad...
I would move your control signal more. The more changes you make in the excitation the better your system identification will be.
Peter Nachtwey
Delta Computer Systems
http://www.deltamotion.com
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
many thanks for your reply. I haven't worked with internal model control so far. But I would like to learn more about it.
Do you have a simple example how to enhance a PI controller to IMC?
What do you mean by "move your control signal more", to use a higher step?
Regards,
Ossi
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
http://lorien.ncl.ac.uk/ming/robust/imc.pdf
Scan down to "Implementing IMC within a Conventional PID frame work. You will see the same formula for calculating the gain and time constant their. My pdf goes into detail as to how it is derived. You should be able to control your FOPDT easily even if the dead time is longer than the plant dead time.
The second half the the pdf in the link of my previous post should be all you need.
There is another good site about basic PID and FOPDT control. It is:
www.controlguru.com
I don't have Matlab. I do grudgingly use Scilab. I have a FOPDT and SOPDT auto tuner here:
http://deltamotion.com/peter/Scilab/AutoTune/
In the end it all comes down to knowing your plant. Having a good transfer function for it is essential.
You should be able to convert this to Matlab.
Have, fun.
Peter Nachtwey
Delta Computer Systems
http://www.deltamotion.com
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
thanks for the information especially about Scilab. I haven't heard about it but I discussed it with a colleague and we agreed on to check this open source tool.
However, I am going to estimate the parameter to get an IMC based PID. But I have one question about how to calculate the time constant of the low-pass filter. The reference says that a good value would be twice as fast as the open loop response. Is there a better way? Another question is how to estimate a “good” transfer function of the process? As I have written I am using the method of areas to get the approximation of my process.
Regards,
Lars
RE: Control of Process with dominant deadtime ---> Step response test parameter estimation
Did you look at the text files or input data in my Scilab directory? If you can export your data in the same format it will be easy to read up into the auto tuning program.
Peter Nachtwey
Delta Computer Systems
http://www.deltamotion.com