October 14, 2006, 9:48 pm
Here's the normalized polynomials up to 8th order for ITAE
Order Denominator
1 s + 1
2 s^2 + 1.4s + 1
3 s^3 + 1.75s^2 + 2.15s + 1
4 s^4 + 2.1s^3 + 3.4s^2 + 2.7s + 1
5 s^5 + 2.8s^4 + 5.0s^3 + 5.5s^2 + 3.4s + 1
6 s^6 + 3.25s^5 + 6.60s^4 + 8.60s^3 + 7.45s^2 + 3.95s + 1
7 s^7 + 4.475s^6 + 10.42s^5 + 15.08s^4 + 15.54s^3 + 10.64s^2
+ 4.58s + 1
8 s^8 + 5.20s^7 + 12.80s^6 + 21.60s^5 + 25.75s^4 + 22.20s^3
+ 13.30s^2 + 5.15s + 1
dave y.
Re: ITAE poly/roots reference?
Interesting. What about the zeros?
Peter Nachtwey
Re: ITAE poly/roots reference?
We have to remember that these are poles
of desired (criteria -minimize ITAE) transfer function.
Let say, I demand this P plant to be 1/(s+1) when closed loop :).
Zeros? Do we really need zeros after all? Never!
They are always quite problematic (funny nonminimumphase responses,
disturbance passing etc.).
--
Mikolaj
Re: ITAE poly/roots reference?
If these the polynomials do minimize the ITAE then these coefficients
can be calculated using a minimization program. What else? If have
calculated the PID gains that result in the minimum ITAE using Mathcad
but I found the answers always change depending on how the SP was
changed, the initial size of the error and whether the controller
output goes into saturation. I never considered that tabulating the
coefficients would be of any value because these values changes as the
conditions mentioned above change. I did my experiments because some
one had suggested that minimizing the ITAE is the way to tune PIDs. I
am not convinced.
Peter Nachtwey
Re: ITAE poly/roots reference?
no zeros. just poles.
not offlhand. just stick the coefficients into matlab.
don't know myself, but here's a paper where the coefficients are
shown:
http://mechatronics.ece.usu.edu/ece7360/references/dmcs123.pdf
below's the reference the above paper cites. i haven't seen it,
maybe someone here can get it and post?
Graham, D. and R. C. Lathrop (1953). The synthesis of optimum
transient response: Criteria and standard forms. Trans. AIEE Part II
(Applications and Industry) 72, 273-288.
Re: ITAE poly/roots reference?
I think this data is bogus. It is probably correct if you don't take into
account that factors that I mentioned above however reallity is much
different. One can calculate the combined transfer function of both the
plant and the controller. The ITAE can be mathematically determined
differentiating that then finding the minimum. The problem with combining
the controller and plant is that the limits of the controller can not be
taken into account. This includes saturation limits and sample rates. Even
the time over which the ITAE is minimized will affect the optimal PID gains.
Peter Nachtwey
Re: ITAE poly/roots reference?
If you mean are the cofficients listed bogus, I don't think so. A
couple of them I've seen in other sources. But why not try a
few step responses and see if they look pretty good or not.
For example, they should be better than Butterworth poles.
Regarding your other comments, guess I don't see the point.
The polynomials are supposed to have roots which give an
optimal response in the ITAE sense. Gives the RL junkies
or the pole placement gurus something to shoot for. What's
that got to do with whether your controller is saturating or not?
Re: ITAE poly/roots reference?
OK, they are probably fine an ideal world.
These characteristic equations you provided are for closed loop
transfer functions that assumes all the PID gains are in the feedback
path except for the integrator gain. I have run four simulations
using a second order underdamped position system as my model. This
model has a damping factor of .1 which usually makes tuning
'interesting'. I used the minimizing routine in Mathcad to find the
gains that minimize the ITAE.
ITAE0 T=0.001 Step=0.1 Simulation Time = 0.1
ITAE1 T=0.0001 Step=0.1 Simulation Time = 0.1
ITAE2 T=0.001 Step=0.2 Simulation Time= 0.1
ITAE3 T=0.001 Step=0.2 Simulation Time=0.2
ftp://ftp.deltacompsys.com/public/PDF/ITAE0.pdf
ftp://ftp.deltacompsys.com/public/PDF/ITAE1.pdf
ftp://ftp.deltacompsys.com/public/PDF/ITAE2.pdf
ftp://ftp.deltacompsys.com/public/PDF/ITAE3.pdf
These things that I changed should not change where the optimal poles
are placed for minimum ITAE but in reality they do.
The optimal poles are on page 3/7.
The optional gains and paramters are on page 5/7.
.
In an ideal world under ideal conditions maybe.
In reality the controller is one transfer function and the plant is
another. In between there is a D to A converter that is limited to +
or - 10 volts. When that limit is reached your equations don't
represent the real system anymore. Even the sample time affects the
ITAE as you can see. Another item I missed is that the feed back
resolution also affects the minimum ITAE. How do your perfect transfer
functions take that into account?
If tuning PID by minimizing ITAE really worked there would be many more
people using it.
BTW, I don't really recommend doing motion control like this because it
would be hard on equipment, but if a customer really wants to get into
position quickly I can make it happen no problem.
Peter Nachtwey
Re: ITAE poly/roots reference?
Tell you what--I've put together a little Matlab script that
plots an ITAE step response along with a Butterworth for
comparison. It's listed below.
How about you coming up with your systems closed loop
transfer function, normalizing it to 1 rad/sec to
allow comparing, and sticking it in the routine below
to see if you can beat ITAE.
I'm thinking that maybe to get a fair evaluation of the
response vs. pole placement issue that using derivative
action to jazz up the response is not allowed. If this
is not right then someone can correct me.
The script is below for a 4th order system, you can
easily change the order as long as you have the
ITAE cofficients handy for your particular order.
Matlab Script:
%... create prototype 4th order butterworth system
disp('Butterworth Prototype')
sys_BW=tf(1,[1.0000 2.6131 3.4142 2.6131 1.0000])
%... create prototype 4th order ITAE system
disp('ITAE Prototype')
sys_ITAE=tf(1,[1 2.1 3.4 2.7 1]);
%... step response
dt=.01;t=[0:dt:20]';u=ones(size(t));
y1=step(sys_BW,t);
y2=step(sys_ITAE,t);
plot(t,y1,'B',t,y2,'R');legend('BW','ITAE');grid;shg
%... compute ITAE errors
BW_Error=dt*trapz(t.*abs(y1-u))
ITAE_Error=dt*trapz(t.*abs(y2-u))
Re: ITAE poly/roots reference?
dave y. wrote:
You can see the ITAE for my transfer functions is given in the .pdf
files. See the variable ERR.
I spent my time doing the same thing you are doing.
ftp://ftp.deltacompsys.com/public/PDF/Mathcad%20-%20ITAE%203%20Pole.mdi
Excuse the .mdi Microsoft Document Interface.
This verifies the 3 pole tranfer function you presented. The
coefficents that I calculated by minimizing the ITAE are very close to
yours. However, what do you do with your transfer functions? Your
transfer function is for an open loop system. Mine are for a closed
loop systems.
The main difference between your transfer function's response and mine
is that yours is that the coefficient for s^0 is 1 and and mine is
not.
I have Scilab and will adapt your script.
Peter
Re: ITAE poly/roots reference?
Dave Y, I read the link you provided. I can see what these equations
are used for now. I was computing PID gains to minimize the ITAE. We
are trying to do two separate things. Your equations are just ideal
characteristic equations that give a desired response and provide pole
locations. For instance I often use (s+lambda)^4 so I get four poles
at -lambda and therefore have no overshoot. I can make my response
faster or slower by changing the values of lamda. Likewise your
equations can be used the same way but each term of s must be divide by
omega before being raised to a power. In both cases these coefficients
are used to determine the PID gains.
But you should realize that if you want to minimize the ITAE on a real
system the control output will be driven to saturation as in my earlier
examples and changing the value of omega in your ITAE characteristic
equations will not make the system move any faster.
BTW, I tried to determine the coefficients for a 4 poles systems. My
coefficents came close but not close enough. These people that
determined these coefficients must have used a more mathematical way
than my brute force minimizing technique. The 4 pole solution in the
link took serveral minutes using Mathcad.
ftp://ftp.deltacompsys.com/public/PDF/Mathcad%20-%20ITAE%204%20Pole.pdf
Dave Y, you don't know how they computed these values back in 1953
without a computer do you?
Peter Nachtwey
Re: ITAE poly/roots reference?
Yes that's right. The ITAE poles are just a goal for your system
design. If you can move your closed loop poles there, then great.
But it's impossible to get your system to move faster than it's
slowest open loop poles allow. When you put a large command into
your system, saturating the control driver, that's it, you can't
go any faster no matter what kind of loop you wrap around it.
Sorry, don't know. If you're a student then maybe you have access
to that 1953 paper and could post it here?
Re: ITAE poly/roots reference?
I am not a student. I make motion controllers. If you google groups
you can find all the posts made by a person. I always use this tool to
find out who I am talking to.
I searched the internet for Graham, D. and R. C. Lathrop (1953) and
found several references at sites that make you pay. Other than that
the link you posted was the only useful info. I just want to know why
there is a difference between my coefficients and Graham and Lathrop
coefficients for the 3 pole and 4 pole solutions. They are close but
not that close. I wonder if Graham and Lathrop were able to find
formulas to calculate the poles exactly or did they have to use an
iterative technique that is less accurate than mine. I want to know
who is right.
I tried initializing the coefficents to the values for the 4 pole
solution and then minimizing. If these coefficients are right then
they should not move but they did. They moved to the 4-pole solution I
posted a link to.
What are the minimum ITAEs you got? They should be similar.
Peter Nachtwey
Re: ITAE poly/roots reference?
Sorry about that. I rarely access these groups via the goodle
website, I use the Agent. But that was hardly a slam. I wouldn't
mind being back in school. :-)
I searched google books and found a reference that talked
about using optimization code to find the coefficients, so that's
probably an indication there is no direct solution. I only looked
at a couple, maybe there's some better ones.
"Computer Simulation Analysis of Biological and Agricultural Systems"
By Huang K. Huang, Barney K. Huang
Search Link I used. See pages 217, 218, 219.
http://books.google.com/books?vid=ISBN0849348692&id=HGlArqiaTT4C&pg=PA217&lpg=PA217&dq=itae+integral+absolute+error+Graham&sig=HA6MEZP7ZQ43QntIrhjsOglVQg4
I haven't been working that problem. Guess I willing to accept that
the published coefficients are the right ones. If I was to pursue it
further, I would probably start looking at text books (not the ones I
have at home). That's why access to a university library would
be handy.
dave y.
Re: ITAE poly/roots reference?
On 22 Oct 2006 10:19:53 -0700, "Peter Nachtwey"
I'm cool with that. I don't have any current need fo rITAE anyway, so
give it a shot and be sure and publish here what you come up with.
Still, I would be suprised if those coefficients are wrong. I tried a
couple and their step response looks pretty good, certainly good
enough for pole placement purposes.
Re: ITAE poly/roots reference?
I take it back. I was plotting the higher order coefficients for the
first time and now I have become skeptical about the published
coefficients above 4th order. Up to forth I think they still seem ok.
I've seem these values published a lot of places though, and its
hard to believe no one ever checked them before.
dave y.
Re: ITAE poly/roots reference?
dave y. wrote:
...
I can cite many examples of errors that were copied from one text to
another, sometimes spanning a generation.
Jerry
--
"The rights of the best of men are secured only as the
rights of the vilest and most abhorrent are protected."
- Chief Justice Charles Evans Hughes, 1927
ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ
Site Timeline
- » Re: Siemens Step 5 Help
- — Next thread in » Industrial Control Group
-

- » continuous data logging using in GE Cimplicity software
- — Previous thread in » Industrial Control Group
-

- » Measurement validation for process signals
- — Newest thread in » Industrial Control Group
-

- » What is it? Set 442
- — The site's Newest Thread. Posted in » General Metalworking
-


Subject







