I have been following the discussion here (passively) for quite some time
and register you coming up with various new theoretical ideas that you
claim are superior to the existing control design schemes. And yet you have
troubles to gain recognition of a single person participating in this
May I have one suggestion? Why don't you follow a more standard route to the
professional recognition that you struggle for? Put your ideas down to a
paper, describing the notations properly, formulating the problem clearly
and unambiguosly, explaining every detail of your proposed solution, not
hiding anything, and submit it to some leading journal on control theory.
As you appear to offer fundamentally new concepts, I can recommend one of
the following leading journals on control theory:
IEEE Transactions on Automatic Control
SIAM Journal on Control and Optimization
Systems and Control Letters
International Journal of Robust and Nonlinear Control
International Journal of Adaptive Control and Signal Processing
Optimal Control Applications and Methods
European Journal of Control
International Journal of Control
I can assure you that your paper will receive proper and unbiased attention
by people who are experts in the field and whose books you studied
(hopefully) from. Alternatively, you can consider either of the two
IEEE Transactions on Control Systems Technology
IFAC Control Engineering Practice
which are a bit more practically oriented, and yet quite mathematically
I believe that it is the only right way. I dont find the discussion group
here the best place for a just evaluation of your results (of course, you
can do whatever you like, we are free people, but the question of your
motivation then arises). The reason is that the forum is attended by
diverse audience, including beginers. I don't find it quite fair obviate
the standard fields for competition with best in the field and to offer the
results to newbies. On the other hand, it is well possible that your
results deserve this appreciation by the community. But you will never ever
receive it here, on anonymous internet discussion forum, in contrast with
having your paper published and ARCHIVED by some leading journal. That is
the only way to get these fancy labels of yours like PD2, PD3 into the
Finally, let me explain the reason for my passivity in the discussion so
far. Just imagine that a newcomer to the discussion here goes to the above
link without spending several hours by reading your previous inputs here to
learn your terminology and notation. Even though my full-time profession is
reading and writing control theoretic texts, I have big troubles to find a
formulation of the problem, to identify assumptions, to learn how you
computed the particular values. I confess that this gives me an impression
that you are not really interested in feedback and therefore I am not much
motivated to work hard to understand what you are actually trying to do.
All the best,
Department of Control Engineering
Faculty of Electrical Engineering
Czech Technical University in Prague
PS: Please note that most probably I will not have access to internet till
the next Thursday and therefore excuse my lack of responsiveness (should
there be anything to respond to).
I second Zdenek Hurak's above mentioned recommendations based on what i
have seen of JCH's (in Germany) comments. I have offered the odd advice
when a "Question about PI control integration time" arose on 2 June. It
is very important to ensure that the problems are described clearly and
completely, and that the solutions are fully documented.
In my professional opinion JCH might consider taking a position in an
industrial setting and work on some real live process plants. There are
plenty of real problems to solve; often very simple ones. There is no
shortage of control algorithms in the literature, and some of the recent
ones (like BrainWave from Vancouver, BC, Canada [now owned by an
Austrian company]) and the multi-variable interacting control packages
show a great deal of promise, and have been accepted by many plants.
These newer approaches are now possible due to the vast processing power
we have access to. Simulation has its place, but must be supported by a
thorough understanding of the physical limits of process plants.
In my own control engineering career (with a very large multi-national
oil/chemical company) i had the opportunity to develop computer control
applications that ranged from simple furnace excess O2 control to
multi-variable distillation and reactor controls. To learn the control
discipline properly there is nothing like designing a control
application, developing the economics, getting approval from the
Superintendent of Operations, training the operators in the control
room, and tuning the loops properly during the commissioning phase.
There is clearly room for academic work, and i fully endorse that as
well. However, we must always keep sight of the ultimate goal of the
discipline; improve the performance of processes (batch and continuous)
via process control that is stable, rugges, reliable, and cost effective.
The technology employed must also be matched to the region of the world
in which it is utilised. It may be inadvisable to use a sophisticated
gas chromatograph based control scheme in a distillation train on a
Venezuelan gas processing platform. The same scheme would be fine in
Canada or the USA in a similar plant. The reasons have to do with
availability of qualified technical personnel and the ability of local
knowledge workers to maintain complex control systems.
I'm just a bit stunned that so much analysis would be carried out on such
simple systems. Where I come from the control engineer wouldn't even get to
hear about these sorts of things. Any competent instrument tech would have
it tuned and working fine by morning tea time. Use it as an exercise for one
of the apprentices.
Thanks for responding. See basics of this topic in:
Otto Föllinger, Regelungstechnik, Hüthig, ISBN 3-7785-1137-8 (He gave
lectures at the University of Karlsruhe, Germany)
Otto Föllinger tried synthesis of control on an ovehead crane model. The
physics and mathematics (white box) is shown on page 357 to 373. In the end
he wrote that 'observers' should be avoided for practical use.
THAT MOTIVATED ME.
My approach solved this. It is just solving a set of 3 linear differential
equations of 2nd order:
Though I was sure that it must work but was surprised it did without further
THE WHOLE STORY:
What I have not discussed so far is how I can get a proper process transfer
function if physics is difficult or nonlinear? This problem I solved with
process identification methods. If few discrete measured points are known
from a step function I use least-square approximation methods (black box)
using a program I have written for that purpose.
See example: Page 1
This program makes 'any nonlinear physics' linear for control synthesis and
practical use! This I have tested: See page 2.
For a crane all can be derived physically. It is almost a mathematical
pendulum with very low damping. For thermodynamical systems like power
stations it is almost impossible to derive the differential equation
15 years ago I transfered an another topic to a university nearby and a
student wrote his master thesis with the given topic. It was a success for
the student (he got A) and the company I worked for at that time. The
student was paid for that work by the company.
Unfortunately I haven't this opportunity any more.
It could be a topic for a master thesis. A motor driven cart, PC and any
math program (e.g. MATLAB) that can solve linear differential equations
would be necessary:
See necessary equipment
The topic is not new but the way for finding a calculated solution may be
new. It is control synthesis of feedforward (PD2), feedback (PID) control,
and dynamical disturbance (Z) compensation.
Jan C. Hoffmann eMail aktuell: firstname.lastname@example.org
Thank you very much, Jan. Expressing the opition, that your examples are
difficult to follow for a fresh newcomer to the discussion was not a
request for a recommended literature..:-)
But with all modesty, I think that I have mastered the basics of control to
an acceptable level...:-)
For instance, if I just have a look at the web page
http://home.arcor.de/janch/janch/_control/20070613-pd2 (pid)z1z2/ , I can
see some block diagram. OK. But what is the goal of the control design
here? Fastest response? Is the reference signal only considered to be a
unit step? Is overshoot allowed? What are the assumptions about the
disturbances? What are the limitations on control variable? What can I
assume about the uncertainty in modelling? For instance, will not be the
assumption of at least 10% relative error in gain at low frequencies be
safer then just assuming totally accurate model?
I am interested in participating in discussion, but I have no time to dig up
this information somewhere in one of your numerous previous posts.
Different people write different things...:-) Reading that observers should
be avoided in engineering applications is surely an interesting information
for researchers in Honeywell Prague Lab, who use Kalman filters frequently
in their applications. No, just kidding, I am pretty confident that this
information will not be very interesting for them.
I am not quite sure if I understand. What motivates you? Reading a book? By
expressing that I am not understanding your motivation I meant that I dont
understand why you are performing this public exhibition here while not
showing us how you compute the controller parameters? This is what I meant
by the claim that I dont believe that you are interested in feedback.
Without further tuning for the purpose of simulations? Well..:-) Thousands
of papers have been written that feature the same exellency...:-) What you
can perhaps try is to analyze robustness of your controller by perturbing
the nominal model a bit (10% at low frequency, some phase shift, ...)
On Thu, 14 Jun 2007 19:57:42 +0200, Zdenek Hurak wrote:
-- snip --
-- snip --
I'm just finishing up teaching a class in basic control theory for software
engineers. Whenever we manage to get beyond the mechanics of squeezing
polynomials until they drip out some useful information about system
behavior, I'm trying to instill the notions that systems change, systems
aren't linear, their models don't match your reality, and 'good'
performance depends heavily on what you're designing for.
Control systems and communications consulting
I prefer to get a hold of the machinery build and point out the same
things and convince them good mechanical engineers can reduce the
variances and make life much easier for the control guy and more
importantly the people that must keep the machine running after those
that commissioned the machine have left.
How close must their models be to 'match' reality? I get a little
tired of hearing about this or that system is non-linear. Nothing is
perfect so why bother? When does one give up on calculating the gains
and resort to tweaking gains and drinking coffee? I haven't seen
anybody work out how non-linear must a system be to just ignore a
linear model and use this lame excuse. Has anybody around done any
analysis of where the poles and zeros move if the system parameters
vary with a standard deviation of 5% or 10%? It is easy enough to do.
So what if the model doesn't match reality? One can get close
enough. If not then there may be something flawed in the design and
the mechanical guys should fix it. One can run many simulations where
gains are calculated for the model and then test the gains against
plants where the model parameters are varied as described above. So
what if the system isn't linear? Linearize it! The gains may need to
change as a function of the PV but that is easy enough to handle.
Take a look at the heat exchanger example on www.controlguru.com. It
isn't linear yet one can calculate suitable gains almost by
inspection. The model doesn't need to be that close. A second order
model would be better. Better yet one could calculate how the heat
exchanger gain changes as a function of temperature due to the log
mean temperature difference.
BTW, if you model the system, you can figure out what parameter
variations affect the model the most so you spend more effort
estimating this parameter. Go back to the iterative tuning thread and
the pdf file I posted a link to that showed how one uses the gradient
of the evaluation routine as a function of the plant parameters.
Anything one can do to estimate the system better makes the control
I know this is too much for basic control students but they should at
least know that people solve these problems all the time. Learning
the next steps will bring them back for the intermediate course.
Finally, a model or simulation can't really tell one if the system
will work. It can definitely show that it will not work. Often this
alone can save lots of money and at least point out where the weak
spots are. I have saved people a lot of money by just proving a
system will not work.
Before you can sensibly ask a mechanical engineer to reduce a variance,
you (a) have to know that the variance is likely and will take effort to
reduce, and (b) understand that it can be reduced, but probably not
One should always be aware that one is trading off the closeness to
perfection of one's physical plant with it's expense; sensible tradeoffs
don't include doubling the price of the whole effort with the mechanical
engineering budget because the control guy is too lazy to do his job,
any more than they include the control guy spending that same amount to
save 10 cents of mechanical engineering.
Responsible engineering means that you look at the whole life cycle cost
and minimize it -- and not spending too long doing so, because that
costs money and time-to-market.
You know as well as I do -- just enough. And just how close "enough" is
depends on the problem at hand.
You obviously haven't coached enough beginners. Look at the author of
this whole thread. Nothing is perfect, and when we assume it is we dig
big holes to fall into. You have shown in your posts that you have a
deep-down appreciation for nonlinearites like actuator saturation, so
don't go downplaying it now! Nothing is perfect, so you should be aware
of this and take it into account!
If you're going to refer to ancient threads, resurrect the damn thing so
that folks can see how you're mangling the context, please.
Perhaps because the question hasn't come up? I address this in my book,
and it's a lengthly subject.
_Sometimes_ one can get close enough, but if you aren't aware that it's
an issue you may never check. If you _have_ checked and you _can't_ get
close enough with a linear model then you have to decide if you're going
to try to compensate for the nonlinearities in your controller or if
you're going to hit on the mechanical folks to change their design.
Perhaps. But if you're naively unaware that a system may possibly not
be linear, or you haven't been trained to consider component variations,
will you know what to ask the mechanical folks?
You contradict yourself. You've just been insisting that nonlinearities
must be dealt with by banging on the mechanical engineering team.
Or are you just agreeing with me that one should do that which meets the
needs and minimizes cost?
Yea, so that was my point, too -- why the vehemence?
That's a good point, although I would argue that modeling and simulation
can give you a pretty darn good idea of how _likely_ it is that a system
will work, or at least tell you what sub-systems need to be investigated
more before you build the whole thing.
We teach about 300 people a year on how to tune motion controllers.
We try to teach them to know the difference between those systems
that can be tuned and those that will be difficult or impossible.
There are too many threads that stated that PID gains are tuned and
not calculated. I am hoping you don't agree. Even if the system is
not perfect you can adjust the gains on-the-fly to match the current
conditions. For instance, a hydraulic actuator can be moving a swing
arm or charger for a veneer lathe. This kind of system will not be
linear but gains can be calculated as a function of the angle.
That bothers me. I have seen many posts on this news group say PID
gains are tuned not caclulated. Long ago wondered what would happen
if the system wasn't linear or the plant gains did change. I found
that response changed but not that much. Certainly not enough to
dismiss calculating gains.
I am not contradicting myself. Sometimes the non-linear swing arm
can't be avoided. However, the non-linear valves can be.
It costs a little more for a linear valve but it reduces the time to
startup the system and to keep it working. That saves money.
One can compensate for many things but then only few well trained
engineers can maintain the system because the auto tuning systems will
not do the job.
Good. I try to do the same thing. Often just leaving people with the
knowledge that there _are_ untunable loops is better than nothing at all
-- that's generally where I start.
I've said this before, I guess I have to say it again: for a system
that clearly doesn't need to be pushed anywhere near the limits of
stability, a 'casual' tuning approach where you tune by experiment
should work just fine. Furthermore, if someone knows _nothing_ about
control systems then a casual tuning approach is the only one available
-- and often _any_ closed loop is better than none. For a system that's
not safety critical (and I suspect I run into many more of these than
you do) I don't think it's a bad thing for people to get their feet wet
in control with a casual approach.
Me? With a few exceptions I calculate gains, often from measured
frequency response data. The only times I _don't_ calculate gains are
when I have a plant that's not at all challenging and goals that are
known to be extremely modest in comparison to the plant capabilities, or
when I have a plant that I'm planning on measuring, and which needs to
be in closed loop for the measurement to be good -- then I'll tune it
enough to get it to behave, and take my measurements.
A motor with friction sees an effective gain change of (finite number)/0
if you don't drive it right -- that's more than 10%. Ditto for a motor
that's driven right but run through a gear train with significant
backlash. These are things that are often not practical to correct by
whipping the mechanical designers, so you must deal with them at the
control systems level.
Even when one does deal with the issues (and they are well-known and
solvable issues) one still has to accept that when the design work is
done there will be some residual errors and sometimes significant
changes in apparent loop bandwidth as targets are approached.
In the world that I work one cannot lean on auto tuning controllers --
if the tuning that it has coming out of the design phase isn't right
then it's broken.
I think we agree on when to ask for mechanical changes.
This info may be also quite interesting for people working in hard disk
drive control. Look at your computer disk drive. If it was produced
during last 5-7 years, probably it is based on observers one way or
another. Many, many observers... for states and for disturbances... :-)
Sure, it can be represented in other forms for different purposes, but
internally... it is in state space...
Sorry for misunderstanding. The literature I recommended describes
the problem in detail we dicuss. I meant the basics for topic, not theory.
The goal is designing the best possible controller that fits to the
BENCHMARK SCHEME. The controller has all features that can be used. The
response can be designed. If using feedforward compensation techniques you
can adjust acceleration of the process value by using a filter. I defined
the limits for the control variable in a range of 0.2...1. This can be
bar, 4...20mA, 2...10V, 0...100% etc. Simulation is done in this range. So
you can set K1=K2=1, having in mind that e.g. 0.2...1 is equivalent to
pressure range 0...100bar. The uncertainty in modelling is dependent from
the accuracy of the process transfer function. That is generally the weak
point. I have written therefore a program for finding an appropriate
differential equation. That is the step to reality. The question is how
accurate can I identify the process? The model is an ideal assumption that
should be aimed to a certain degree if necessary and paid for.
I state: If I have an 99% accurate process transfer function then my
calculation is about 99% accurate.
No, solve the task described in the book I mentioned.
Controller parameters: Make a reload and see page 2. See PID in action on
page 5. Disturbance compensation (Z1Z2) is switched off. PID makes the work
instead. The optimum criterion is not time dependent:
Integral[0...t] abs(e) dt => MIN
As I stated before the process transfer function is the basis. The best
approach is ignore physics if too complicated and use least-square methods.
Measure some points on site and find a differential equation. Nonlinearities
are approximated to linear differential equations.
I have defined A1 and A2 for a 2nd order system. Use these parameters and
set B1¡ and B2¢ (PD2). For disturbance (Z1) time compensation you can
use F_open and for controller variable distubance (Z2) you must compensate
the time behavior of the process using A1 and A2 parameters. For details see
formulae on page 1.
So far all is feedforward controlled [PD2(xxx)Z1Z2]. What is necessary in
addition is I, PI or PID (xxx) for doing the 'fine work', i.e. make steady
state error e=0. PID parameters can be found automatically or manually using
ITAE criterion or any other wished criterion. I used modified ITAE.
Yes, just one expert of the thousands:
He is the most famos and respected expert in Germany. He was tackling this
problem and couldn't find a sufficient solution as he wrote in his book.
I found the solution and show it in
I repeat: If A1 and A2 is 99% accurate then all you see is about 99%
accurate. Anyone who can solve the 3 differential equations (page 1) can
prove that. Anything you need can be found on the mentioned website. There
is nothing left.
Any better alternative concept is welcome based on the BENCHMARK TEST and
disturbances already defined.
If leaving the plant I turned the parameters to a more secure adjustment.
Jan C. Hoffmann eMail aktuell: email@example.com
Thank you for this and a previous post. I would like to some day
discuss aspects of PID and mathematical/computer models without having
to deal with the history that this subject seems to carry around here.
I see other member's comments and it strikes me how different their
experience is and the tools they use to do their trade. For instance,
Tim W deals with solid state embedded systems that control very
responsive elements compared to the tank levels and boiler controls
which I learned the basics of PID on. For me models have been of
limited use, but this is not true for other people. My intuitive
understanding offer little to someone trying to grapple with PID. I
think that models are a great teaching tool.
Sometime, I would like to discuss some of this without the thread
being hijacked to serve the continuation of the debate that has been
Thanks again for your concise thoughts. They express much of what I
have been feeling.
On Jun 15, 8:00 am, Paul M <PaulMatWiredogdotcom> wrote:
The www.controlguru.com site has plenty of information for process
control. You can find the formulas for calculating the PI or PID
gains there if you can determine the plant gain, time constant(s) and
dead time. There is instruction there on how to determine the plant
parameters too. You should be able to get close with little trial and
error very quickly. After reading all the material there you should
be able to see things in a different way. There are equations that
directly relate the PID gains to the plant parameters. This makes one
think, should I be tweaking gains or tweaking the plant model when a
gain needs to be changed?
What you should realize is that given one knows tha plant parameters
the gains can be calculated. The examples on www.conttrolguru.com use
direct synthesis which I can explain or you might try asking the
control guru guys on how the gain equations are derived. It isn't
I use pole and zero placement to provide the desired response I
want. For motion control applications I think this more robust than
Tim has expressed his opinion about pole placement. I think 'yuk'
described it. I haven't figured out how Tim computes his PID gains
except that he uses a swept sinewave to generate a Bode plot. You see
even those of us that do very fast embedded control have different
Both direct synthesis and pole placement require that the parameters
of the plant be identified. It is this identification that is the
real challenge. This is what the Bestune, Expertunes and Control
Stations are really offering is the system identification. This also
the heart of the auto tuning for motion controllers.
Yes, but math is the same. Boiler controllers are a different issue
and are much more complicated than a simple PID. I am a motion
control person now but once an engineer in a power plant and the steam
generator control was more than just a PID because there are multiple
Yes, once a few years ago I caught a person telling another how to
tweak a PID knowing nothing about the system. I made a series of Excel
work sheets of different types of plants and I challenged the people
on the forum to tune them. The point was to show how each system is
different. One size does not fit all.
The newsgroup has history. There seems to be two camps. There are
those that think gains are calculated and
Poor Tom got no help. He didn't even post a follow up. There was no
intelligent life here. Shame. Pole placement and direct synthesis
have been around for a long time.
What is your definition of damping = 0? I don't see how you figure
the damping factor is zero given A1 is not 0.
That works on paper but what do you do when the model isn't exact?
So what is the relationship between K1 and K2?
I have said before you should need a target generator and feed
forwards for something so simple.
Ship it! Just kidding. Seriously, it only works on your website.
Again, there is no educational value to your website because you don't
show how you calculate your solutions.
I think you should play a little game. I think you should vary the
model using a standard deviation of 10% after you have calculated the
gains and feed forwards. I do. This test lets you know how robust
your solutions really are. Feed forwards are great but if they are
off by 10% the PID must correct the control output by 10% to get the
output to the true value.
Another test. Quantize your double precision floating point numbers
to 3 decimal places to represent the the fact that AtoD converters
quantize the feed back values.
It works on my computer, not paper.
Show your alternative! The same conditions, please.
Process tranfer function: v1 + A1*v1' + A2*v1'' = v2
A1 = 6.324E-05
A2 = 0.001
w scheme as shown in
Jan C. Hoffmann eMail aktuell: firstname.lastname@example.org
Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here.
All logos and trade names are the property of their respective owners.