Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

PID autotune

Status
Not open for further replies.

FrankWz

Computer
Nov 5, 2009
5
0
0
DE
Is there a PID expert here?

I need help on how to implement a PID autotune function for a heating application (small boiler).

My current PID autotune function produces no reliable results. I use the relay feedback method (Åstrom and Hägglund) but it seems that the ultimate period Tu - one of the paramteres determined with the relay feedback test - is directly correlated to the relay output step u. u is an arbitrary value which makes Tu an arbitary value. Since Tu is required to compute Ti and Td (e.g. Ti = 0.5 Tu = Ziegler-Nichols), autotune is not possible.

I believe this is because the machine heats very quickly (1500W boiler) and cools down very slowly, so the process value isn't a sinusoid. An example is attached, green line is setpoint, red plot is process value and the grey vertical bars represent heat output u.

Regardless of u, the temperature always dips the same, small amount below setpoint - because the machine cools slowly, the temperature can not fall far below setpoint before it's reacting to the heat. It then shoots up by an amount that is proportional to u. As a result, the plot resembles mountains above setpoint, not a sinus. If u is large, temperature will shoot high above the setpoint and take very long to cool down. Big mountains, so Tu gets large: Tu ~ u = my problem.

Since all PID temperature congtrollers have Autotune, there must be a solution for this problem. Any ideas?
 
Replies continue below

Recommended for you

I have been doing a lot of reading online on this subject since the pump-boiler tube split in my Gaggia Classic.

There are many coffee-forum postings for adding PID, but have a look at results for preheaters. The steady state control temp is one thing, but once the pump is running, you get a steady decline in water temp; -10degC recorded.

Most people tube the pump to the boiler with 5ft or so in copper tube wrapped around the boiler. Here is a link to one guy who went a bit further and plotted the results.


Also interesting is where he is taking his temp reading.

This doesn't help your autotune question, but it does improve controllability, which I guess is the ultimate goal.
 
FrankWz, based on the simulation result you attached, it seems to be that the PID is not just tuned properly. Simple tuning methods like Ziegler-Nichols and its variants may not be good for your application. There more than 2000 tuning methods available and it's difficult to find one that would best fit your application.

If you're not concerned with settling time, why not use PI instead? The D part could cause instability to your system.

Is your autotuner computer-based? If yes, then it would be very easy to adjust its parameters and make some nondestructive experiments to determine the best combination of P, I, and D.
 
Status
Not open for further replies.
Back
Top