Maker Pro
Maker Pro

Question for Tim Wescott

Yes, but try saying "good lock acquisition time" and see what he says.



That would be well understood. Aka, "fast acquisition time",
or
"fast settling time."

Yes and no. It's what the response _would_ be if you could trust the
plant in open loop. Some fortunate designers actually get to test their
plants in open loop, most don't.



Yeah, too bad we can't trust our VCO to stay in one
place for very long (locked to the reference), otherwise we
could REALLY open the loop and take a measurement.



- Hide quoted text -
- Show quoted text -
* Precision mechanical loops that need to hold a target and reject
disturbances.
* Fast mechanical loops that need to accelerate as fast as possible,
decelerate as fast as possible, and come to a stop without bashing
the end of mechanical travel.
* Temperature loops (at 77 Kelvin, no less)
* Video PLLs. This includes one that spans three microprocessors,
three FPGAs, and two communications links -- yet still makes sense
given the system it's embedded in.
* Motor PLLs.
* You name it.



Interesting. Are you using root locus techniques for
positioning poles and zeros in the s-plane?

I never got too deep into that stuff, but if i'm not
mistaken, the unity gain frequency of the open loop @
-180 degrees will be a pole in the right hand plane.


S
 
T

Tim Wescott

That would be well understood. Aka, "fast acquisition time",
or
"fast settling time."







Yeah, too bad we can't trust our VCO to stay in one
place for very long (locked to the reference), otherwise we
could REALLY open the loop and take a measurement.



- Hide quoted text -
- Show quoted text -






Interesting. Are you using root locus techniques for
positioning poles and zeros in the s-plane?
I use root-locus for initial design, when the plant doesn't exist yet
and I'm trying to figure out if I need a PID controller, some subset, or
something else entirely.

If I'm building a system that needs to have good regulation and
disturbance rejection then once I've gotten a chance to get my hands on
a built system I generally do a frequency sweep and do design by Bode
plot analysis.

The reason I don't use root-locus once I have measured data is that
root-locus design requires that you have a transfer function that
accurately models the plant, and root-locus design gets difficult when
the transfer function order gets high. I find that Bode plot analysis
cuts out a number of approximating steps, which is a nice thing.
I never got too deep into that stuff, but if i'm not
mistaken, the unity gain frequency of the open loop @
-180 degrees will be a pole in the right hand plane.
Actually a unity gain with an open-loop gain of 180 degrees (0 degrees
if you include the implied subtraction at the summing junction) means
you have a pole on the stability boundary*. The assumption with Bode
plot design is that you are starting with a stable system, so your gain
and phase margins tell you how much things must change before your poles
cross out of the stable region.

* I'd say "unit circle" because I generally do all my design in the same
sampled-time domain as my controllers, but the effect is the same in the
Laplace domain.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google? See http://cfaj.freeshell.org/google/

"Applied Control Theory for Embedded Systems" came out in April.
See details at http://www.wescottdesign.com/actfes/actfes.html
 
Tim said:
I use root-locus for initial design, when the plant doesn't exist yet
and I'm trying to figure out if I need a PID controller, some subset, or
something else entirely.

If I'm building a system that needs to have good regulation and
disturbance rejection then once I've gotten a chance to get my hands on
a built system I generally do a frequency sweep and do design by Bode
plot analysis.

By frequency sweep, i assume you mean like the
open loop phase margin measurement that i posted.

Actually a unity gain with an open-loop gain of 180 degrees (0 degrees
if you include the implied subtraction at the summing junction) means
you have a pole on the stability boundary*. The assumption with Bode
plot design is that you are starting with a stable system, so your gain
and phase margins tell you how much things must change before your poles
cross out of the stable region.

* I'd say "unit circle" because I generally do all my design in the same
sampled-time domain as my controllers, but the effect is the same in the
Laplace domain.

This is an interesting site:

http://www.geocities.com/CapeCanaveral/Lab/9643/samp-ef.htm



S
 
T

Tim Wescott

By frequency sweep, i assume you mean like the
open loop phase margin measurement that i posted.
Yes. I generally do it for just the plant first, then I design my
controller and check its predicted response against a full open loop
measurement. I don't think I posted this link before, but here's a
description of how I usually do it:
http://www.wescottdesign.com/articles/FreqMeas/freq_meas.html
It looks like it. He's incorrect in calling it "sampling" -- it's a
cyclically time-varying system for which using the z transform can yield
more exact results, but it's not a "sampled" system.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google? See http://cfaj.freeshell.org/google/

"Applied Control Theory for Embedded Systems" came out in April.
See details at http://www.wescottdesign.com/actfes/actfes.html
 
Ok, from Wiki:

"A system is stable if all of its poles are in the
left-hand side of the s-plane or inside the unit circle of the
z-plane."

http://en.wikipedia.org/wiki/Root_locus


So it seems most of my former professors were using
the s-plane or Laplace domain, whereas others prefer the
z-plane or time-domain.

My control systems class was a long time ago,
and my field is mainly RF electronics, so a lot of this
pure control theory goes over my head, but i'll ask a simple
question anyways:

How would you transform from the s-plane
to the z-plane?


S
 
J

Jim Thompson

Ok, from Wiki:

"A system is stable if all of its poles are in the
left-hand side of the s-plane or inside the unit circle of the
z-plane."

http://en.wikipedia.org/wiki/Root_locus


So it seems most of my former professors were using
the s-plane or Laplace domain, whereas others prefer the
z-plane or time-domain.

My control systems class was a long time ago,
and my field is mainly RF electronics, so a lot of this
pure control theory goes over my head, but i'll ask a simple
question anyways:

How would you transform from the s-plane
to the z-plane?


S

My favorite book on the technique...

"Synthesis of Filters"
Herrero & Willoner
© Prentice-Hall 1966
Library of Congress Catalog Number: 66-27547

...Jim Thompson
 
T

Tim Wescott

Ok, from Wiki:

"A system is stable if all of its poles are in the
left-hand side of the s-plane or inside the unit circle of the
z-plane."

http://en.wikipedia.org/wiki/Root_locus


So it seems most of my former professors were using
the s-plane or Laplace domain, whereas others prefer the
z-plane or time-domain.

My control systems class was a long time ago,
and my field is mainly RF electronics, so a lot of this
pure control theory goes over my head, but i'll ask a simple
question anyways:

How would you transform from the s-plane
to the z-plane?


S
There are a variety of methods, each with it's own advantage.

In a closed-loop system I prefer to get an exact transform of a plant's
transfer function from the s domain into the z domain by finding it's
response to a unit pulse from the controller's DAC and seeing what that
looks like at the controller's ADC. This is only exact from the
perspective of the controller, however.

For many other systems you can use various approximations. The most
popular one is the Tustin, where you use

1 + sT/2
z ~ -------- .
1 - sT/2

This works pretty well, and has the advantage that a stable system in
the s domain translates into a stable system in the z domain. It has a
disadvantage that the locations of the poles crawl around, but they do
so in a predictable way that you can overcome by 'prewarping' the poles
and zeros. This is pretty good going both ways, so it is a way to take
a continuous-time analog filter and translate it into a discrete-time
filter.

You can also do the whole thing by frequency-domain analysis, where you
calculate the attenuation through the entire channel, taking your
anti-alias filter, any DSP filtering, and the DAC zero-order-hold effect
into account. Those few times when I need to do this task, this is how
I accomplish it.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google? See http://cfaj.freeshell.org/google/

"Applied Control Theory for Embedded Systems" came out in April.
See details at http://www.wescottdesign.com/actfes/actfes.html
 
Tim said:
There are a variety of methods, each with it's own advantage.

In a closed-loop system I prefer to get an exact transform of a plant's
transfer function from the s domain into the z domain by finding it's
response to a unit pulse from the controller's DAC and seeing what that
looks like at the controller's ADC. This is only exact from the
perspective of the controller, however.

For many other systems you can use various approximations. The most
popular one is the Tustin, where you use

1 + sT/2
z ~ -------- .
1 - sT/2

This works pretty well, and has the advantage that a stable system in
the s domain translates into a stable system in the z domain. It has a
disadvantage that the locations of the poles crawl around, but they do
so in a predictable way that you can overcome by 'prewarping' the poles
and zeros. This is pretty good going both ways, so it is a way to take
a continuous-time analog filter and translate it into a discrete-time
filter.

You can also do the whole thing by frequency-domain analysis, where you
calculate the attenuation through the entire channel, taking your
anti-alias filter, any DSP filtering, and the DAC zero-order-hold effect
into account. Those few times when I need to do this task, this is how
I accomplish it.

Ah yes, another wiki page that soars over my
head:

http://en.wikipedia.org/wiki/Bilinear_transform


But it's interesting when you wrote:

1 + sT/2
z ~ -------- .
1 - sT/2


I immediately recognized the bilinear transformation for the Smith
Chart,
which transforms from complex impedance (or admittance) to a unity
circle reflection coefficient (Gamma), which includes magnitude and
angle:


http://cnx.org/content/m1058/latest/


http://math.fullerton.edu/mathews/c2003/MobiusTranformationMod.html



S
 
Top