Yes, I call it a "tail". I got burnt on that early in my career and
have avoided pole cancellation ever since; unless I had an outside
loop to kill the tail. It's best not to take it too casually even
then. Sometimes you have to make sure _that_ zero moves to _that_
pole when the loop gain is changed; and doesn't wander off.
Ray

[/quote]
I don't understand this statement. I would like to see an example.
If you place the closed loop poles on the negative real axis away from
0 the system will be safe. The response will be like a multi-pole low
pass filter. Yes, a lot depends on where you place the poles.
Peter Nachtwey

On Mon, 01 Feb 2010 09:38:18 -0800, pnachtwey wrote:

In general terms, however, the faster the poles that you're placing -- no
matter how well damped they are -- the more gain you need and the more
predictability that you're demanding from the plant at high frequencies.
Since most plants tend to get unpredictable at high frequencies, this
isn't necessarily a safe thing to do blind.
In your case, IIRC, you usually close hydraulic systems at around 10Hz.
As an extreme example, what happens when you place your poles at 100Hz
instead? 1000?
Without getting too close to reality, consider a system with a real
transfer function
1 1
H(s) = - ---------------
s (s/1000 + 1)^4
Say that your best model gives you a transfer function H(s) = 1/s.
Now do a simple proportional-only controller with a pole placed at 10Hz
-- all is well. But try to push that pole placement out to 50Hz and
you're down to less than a 30 degree phase margin, with over 6dB of
peaking, bad behavior, and who knows what will happen on a really cold
day. Push the placed pole out to 80Hz and you're at almost 20dB of
peaking, on the ragged edge of stability.
You could use the 'five pole' model to push the pole placement out much
further -- but if you aimed for that 80Hz loop closure you'd have a
system that's exquisitely sensitive to relatively small changes in the
pole location.
(note that to do pole placement with five poles you need at least a four-
pole controller; if you've got that many poles in your controller then
you're probably leading yourself down the garden path unless you have a
_really_ good idea of what your plant is going to do over environmental,
aging, and possibly per-part variation).

Don't confuse the technique with the execution. Obviously the poles
can't be placed too far to the left. There are practical limitations
such as sample rate, sample resolution, output limitations and other
un-modeled features.
A system like your H(s) requires 5 gains if the integrator is not used
and the sample rate needs to be 10K. Your example has another
practical limitation that JCH often ignores. How does one measure
second, third, forth and fifth derivative?
Peter Nachtwey

On Mon, 01 Feb 2010 22:16:20 -0800, pnachtwey wrote:

20+
Well, that's my point exactly -- as a technique, pole placement works
great _if_ you already have a good idea of where the poles can be
placed. I contend, however, that it gives you no means of determining
where those poles _should_ be placed without using other techniques (such
as robust design techniques or Monte-Carlo design tries).

Obvious from the _outside_ of the pole placement algorithm, yes -- that's
what I was trying to point out. From _inside_ the algorithm there's no
guidance whatsoever, as contrasted to robust design techniques which
demand that you start with an awareness of the parameter variation of
your plant and go from there.

One could write a book on them.

A 5th-order system would need five gains _for pole placement_, yes. But
many robust control design techniques (not excluding Bode plot design,
although it is arguably not 100% robust) work very well to find reduced-
order compensators. Given a 5th-order system definition would you insist
on making a 4th-order controller each and every time? Does this mean
that if you had a 10th-order system definition you'd insist on a 9th-
order controller? What about H(s) = (e^(0.001s))/s? Where do you find
the infinity of poles for your controller, to place the infinity of poles
in your plant? Bode plot design (and other robust techniques) take care
of this with little problem.

No, I couldn't accurately identify that many poles. I would model
the dominate poles and compute the gains for that. Then I would use a
smooth target generator so I wouldn't excite the other poles.

You approximate that with a Taylor's approximation.

I don't see how you can tell were one pole begins simply by looking at
the Bode plot. Finding real poles is hard enough. It is harder yet to
pick imaginary poles. It is too hard to pick the pole locations
accurately from a plot.
Peter Nachtwey

On Tue, 02 Feb 2010 22:09:14 -0800, pnachtwey wrote:

You make my point, then. With an approximate model you cannot do pole
positioning with arbitrarily fast poles. From past discussions in this
forum I have no doubt that you can figure out how far you can push things
using your calibrated eyeball to tell you where the danger zone is -- I
just think that there are better and more easily taught ways of getting
to the same end.

When I do Bode plot design I discard any pretense of knowing where the
poles are -- I just design the system in the frequency domain, then (if
necessary) double-check the results in the time domain to find out if
there are any interesting behaviors like the long tail previously
mentioned.

One should know their system well enough to know what poles exist.
The higher poles are not a problem if you don't excite them. This is
why target generators are so important.

I don't see most systems. We sell a motion controller and the
customer installs it. We provided tuning wizard that helps. Our
customers are usually able to tune the systems by themselves if their
hydraulic systems doesn't have too many flows. Since we control
hydraulic systems that are moving TONS instead of pounds it is not
wise to do a frequency sweeps. Also the gains change as a function of
direction.
Motors are easy to tune. Here is an example of auto tuning a motor in
torque mode.
http://www.deltamotion.com/peter/Videos/AutoTuneMotor.mp4
You can see when I move the cursor across the plot the target and
actual position are almost the same.

OK, so I ignored the RL time constant. The tuning is still almost
perfect. This is because the RL time constant is much shorter than
the time constant due to inertia.

I would like to see how you do this. I have motors and data that I
can send or post. I would be interested in seeing if you can get the
same results for tuning this motor.
I haven't seen the long tail behavior.
Tuning this motor is easy. Underdamped second order systems are much
harder. I would like to see how you handle that. Like I said, I have
real systems with real data. I have customer with data for all sorts
of systems.
Peter Nachtwey

9th-order is feasable. But order reduction may be better. I haven't
implemented 9th-order and tried reducing 6th-order to 3rd-order.
It works:
* http://home.arcor.de/janch/janch/_control/20100203-model-reduction /

Nothing is ignored.
First I find directly 'all' derivatives using process identification
techniques via least-square approximation methods. Basic for that is a
measured process transfer function data set for e.g.
A6*v1^(6) + ... + A2*v1'' + A1*v1' + A0*v1 = v2
See Example yellow line:
* http://home.arcor.de/janch/janch/_control/20100202-process-identification /
Any Ai is known and used for
- feedforward
- disturbance compensations
As far as controlling is concerned I use 'State Observation Control'.
That means using all coefficient Ai found per program that I have written
for that purpose.

You ignore feedback resolution for starters. Try computing the 6th
derivative in your example below when the feed back isn't a 17 digit
floating point number.

You are estimating the coefficients for the plant but you are not
calculating the derivatives of the process variable.
Peter Nachtwey

Just use 'appropriate' equipment. It depends on the task. (Note: Another one
of my
programs use 49 digits.)

Read again:

In other words: 100% mathematics! No further improvements are possible!
* http://home.arcor.de/janch/janch/_control/20100202-process-identification /
The dotted black line is the solution of the measured 'real' points (blue
dots). The differential equation is shown in the yellow bar. That is the
mathematically found process transfer function.
The data used you find on the mentioned page below. (Note: The mentioned
techniques can also be applied to non-linear differential equations changing
them to linear differential equations.)

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.