Mechanical resonances in PID l(oops)

The oops is for stepping on Al's PI thread. Here (again) is the response, of my piezo/ aluminum flexure mount/ grating. (I'll post a pic, Thursday)

formatting link

The peak may be a little higher than shown, I cut the input by a factor of 2 for the highest peaks.. and the peak was clipping again. (If I drive the piezo too far the laser mode hops.)

So Phil, If I make a notch filter, (minimum 2-pole) Does the far side of the notch have the needed phase shift to match my drive? (I guess Kramers-Kronig says it has to.)

George H.

Reply to
George Herold
Loading thread data ...

LC filters and other resonances have nonzero time delay, iiuc, so no, you c an't compensate for it closed-loop that way, at least not if you expect the control bandwidth to extend from 0 to someplace above the resonance.

You can go from DC to f_0/3 or something, though. (It's been a long time.)

Cheers

Phil Hobbs

Reply to
Phil Hobbs

can't compensate for it closed-loop that way, at least not if you expect t he control bandwidth to extend from 0 to someplace above the resonance.

)

OK Thanks Phil, no farting around with notch filters then.

George H.

Reply to
George Herold

Depends on the Q. In my case, the loop would oscillate unless it had rolled off by at least 30 dB by the resonant frequency, so a notch was a big win.

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs 
Principal Consultant 
 Click to see the full signature
Reply to
Phil Hobbs

At what frequency are you trying to close the loop? If it's lower than the resonance frequency, then the phase shift beyond is immaterial -- or at least you should design your loop so that it _is_ immaterial, because you can't count on it being what you need.

It looks like your piezo stage acts like a 2nd-order low-pass filter with a very low damping factor (this is typical of the species). In that case, as long as your position loop frequency can be below the resonance then a notch will do very nicely for allowing you to raise the loop closure frequency. If you need a position loop frequency that's around or above the resonance, then you're screwed -- not only because you'll never get something stable, but because even if you could you'd need immense drive above the resonance frequency to get the assembly to do anything.

If you've a desire to close the loop at, say, 50 or 100Hz (or even up to

500Hz if you're feeling frisky), then a notch filter should do some good. At 3kHz an LC filter will be bulky; if I were working with analog electronics I'd use an active filter. Be sure to verify that the resonance frequency doesn't vary from unit to unit -- if it does you either need a broader notch (bad), or you need to hand-tune each unit (also bad). Forewarned is forearmed.

Back when I hung around analog control loops we implemented notches of this sort using a Twin-T filter. I don't know if they're better or not, so I'd check them against other more conventional filters, but I do know that a lot of folks thought they wore the bee's knees.

(A Twin-T filter has the disadvantage of more components, but the advantage that the notch frequency itself is insensitive to variations in amplifier characteristics. I'd have to do a web search or waste a serious amount of scratch paper to recreate exactly what we were doing, so I'll leave you with Google for finding a reference.)

(Oh hell. I looked. Here's a paper. It looks right: .)

With that much of a resonance peak I can't imagine that you're getting the loop closed above 10Hz, if that.

--
Tim Wescott 
Control systems, embedded software and circuit design 
 Click to see the full signature
Reply to
Tim Wescott

An activated twin-T is okay if you can keep the notch deep enough, but the passive variety has an effective Q of 0.3 or so, which is way suboptimal for piezo resonances in air.

Nah, he should be able to get a kilohertz with a nice notch filter.

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs 
Principal Consultant 
 Click to see the full signature
Reply to
Phil Hobbs

I was thinking active. Yes, a passive one would be stupid.

At FLIR we ran the loop bandwidth about 8x below the first mechanical resonance. That's because the resonance varied by a whole bunch of factors: even if we had accounted for the manufacturing variance there was still sensitivity to temperature and the particular position of the unit. Manufacturing and service would view you with a jaundiced eye if you got it all working on a Tuesday and it was loudly singing on Wednesday morning.

--
Tim Wescott 
Control systems, embedded software and circuit design 
 Click to see the full signature
Reply to
Tim Wescott

Well, horses for courses. The force microscope guys got a factor of 10 in measurement throughput, which was worth a lot.

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs 
Principal Consultant 
 Click to see the full signature
Reply to
Phil Hobbs

Wow, Thanks for the nice response Tim*. Loop frequency? Geesh, I have no idea. This is the worlds simplest control loop. I generate an error signal, send it through a low pass filter (single pole, tau = 100 ms), put that into the modulation input for the piezo stack and then crank up the gain till I see that it starts to oscillates and then back it off a bit. There are lots of vibrations (mechanical and airborne) that can disrupt the lock. It would be nice to damp those down more.

So how to measure the loop frequency? I could input a dummy "vibration" signal by wiggling the laser current and then see how well the lock deals with it. Right now I test the lock by thumping on the table with my hand, as you say this may not be more than ~10 Hz.

OK so a notch will help me get closer to the edge... but can't get me over. So the Q looks to be about 20. (amplitude increase is 7000/400 or in frequency space FWHM a little less than 200 Hz.) I've got a little active filter that will do that just fine. State Variable... I think I just need to sum the LP and HP to get a notch. Is it enough to just stick that in series with the rest of my primitive loop? (Well that's the first thing I'll try anyway.)

Thanks again, George H.

*I want some app... (though not an app.. just some way) to buy people a beer online. (Though it doesn't have to be beer, just something to say thanks.)
Reply to
George Herold

I've not measured it but all the lasers seem to "sing" at the same frequency. SRF of the piezo loaded down by the mass of the grating holder.

Oh I promised a pic.

formatting link

George H.

Reply to
George Herold

I was going to say that was limiting your loop bandwidth -- but it isn't, really.

A piezo pretty much acts like a straight gain until you hit the resonance. For such plants, a purely integrating controller is most appropriate unless you run into nonlinearities (like integrator windup). I suspect that you've got enough gain that you're well into the 90 degree phase shift portion of that filter -- if so, you may as well use an integrator.

You have lots of room for improvement, I suspect.

Oooh, I should write a white paper. Or find one. They're out there (Phil, do you have something at your fingertips?)

Come to think of it, I _have_ written a whitepaper, but it's more for digital than for analog. It may be useful anyway: . You'll find it terse and math-dense. If you get a transfer function analyzer or a dynamic system analyzer it'll collect the data automatically, and do the math automatically.

Ideally, you'll have a stage that provides a summation somewhere:

outie = innie + excitation

where "outie" is the output of the summation, "innie" is the input to the summation, and "excitation" is the signal you're injecting. Normally you'd scatter these in various spots in your control loop. On the one analog board I worked on that did this there were a bunch of four-pin headers (ground, innie, outie, excitation) that you could just plug into.

If you measure "innie" vs. the excitation, then you get the closed-loop response of the system (with a 180 degree phase shift). If you inject a signal and measure the "innie" vs. the "outie", you have the open-loop gain of the system. If you have one of these right at the input to the final drive amp, and one right at the feedback from the plant, then measuring the "outie" to the final drive to the "innie" of the plant feedback will give you the frequency-domain behavior of the plant.

You absolutely positively do want to measure the phase shift w.r.t frequency as well as the amplitude change -- they both matter.

Yes, but it sounds like you could get at least a 10x improvement in loop bandwidth if resonance is the only thing holding you back.

Put it in series, and then experiment with gains. This sort of thing works a LOT better if you have measured plant responses and allow yourself to be guided by that.

That Q sounds low for a piezo driving a hunk of aluminum, BTW.

electronicsrelated.com does that, but only through the forum. The nice part is that they do it with their own advertising dollars, so it doesn't cost a user any money to hand out a beer (everyone has a beer-to-give limit, though). If you know someone's email you can gift them with some money through PayPal -- but it's not quite the same.

I don't know that there's an independent, one-button way to give someone a beer.

--
Tim Wescott 
Wescott Design Services 
 Click to see the full signature
Reply to
Tim Wescott

Paypal!

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs 
Principal Consultant 
 Click to see the full signature
Reply to
Phil Hobbs

Well sure, easier would be to stick a $10 bill in the mail, of course with Tim's last answer I now owe him a whole meal.

George H.

Reply to
George Herold

Right an integrator would be fine too, the low pass seemed to me the simplest. I'm glad to hear you think it's probably OK.

That's good, going forward makes sense then.

Right that's easy.. though tedious. If you inject a

Yah, Yah I agree, you see the next corner in phase space before amplitude space.

I read ~50% of your paper, it was nice... One thing I didn't see in the paper, but you did explain above, was the closed loop response. (or I missed it.)

So how about I just look at the step response. I could step the piezo setpoint.. reference change, or I could step the laser current... (which also changes it's wavlength.) as an outside disturbance.

Perhaps not as much info as your technique.

OK the data is for the "maximum displacement" of the piezo... any more and the laser mode hops*... probably about 4-5 GHz... (Short optical lever arm, one mirror bounce ~3' away and back to the split PD.)

There is lotsa hysteresis. I figure that has to be a loss.

When I'm side locking the feature is only ~20 MHz wide, I guess I should measure the small signal response too.

I still see hysteresis at low amplitude.

Hmm, me either, if you're ever in Buffalo or I'm in Oregon City, diners on me.

George H.

Reply to
George Herold

I don't know the right answer for hysteresis: I think it depends on the application. When I was playing with piezo stages it was a servo application, and it was enough to have a feed-forward term with the scaled target displacement, and then a loop to clean up any residual error from hysteresis, vibration, and whatnot.

The company that we bought the stage from had their own controller that was supposed to correct for hysteresis -- we didn't use it for a variety of reasons -- but we found that taking the piezo as linear and then doing the feedforward + feedback thing would meet our goals, and none of us wanted to deal with the hysteresis if we didn't have to.

--
Tim Wescott 
Control systems, embedded software and circuit design 
 Click to see the full signature
Reply to
Tim Wescott

No worries, Hey I did the step response today.

formatting link

So at least it's a little faster than 10 Hz.

I think the data is good, but I'm a bit rushed today and will have to check it next week.

George H.

Reply to
George Herold

With pretty severe ringing at 60Hz, if I'm reading it right. Do you have some other roll-off in the circuit? That may limit you before the resonance causes issues.

--
Tim Wescott 
Wescott Design Services 
 Click to see the full signature
Reply to
Tim Wescott

Well one man's severe, is another's Q of ~3. It looks about like what I'd expect. (Having never seen it before. If I'm just tuned down from oscillating then the step response has got to have some ringing.) The time base is 2.5 ms, the first two peaks of the ringing are about 2 ms apart.. (sorry the graticles are hard to see.) There was a lot of noise (S/N ~1) so it's averaged, 64 times I think.

The signal chain has a DC offset, (to set a reference level) Gain sprinkled here and there, and a 100 ms LPF, single pole RC into an opamp buffer.

I'm sure I put some HF roll-off in the peizo drive electronics, I'll have to check, but I'd guess the 10-100 kHz range... maybe lower.

George H.

Reply to
George Herold

dl=0

MT-225.pdf>

Usually when you're ringing that badly you can actually settle more rapidly to your desired value by backing off the gain a bit. The rise time increases, but the time to last overshoot goes down. I prefer to keep the damping ratio above 0.7.

That's unless you can "settle" to within 20% and call it good, and if you don't mind being extra-sensitive to mechanical excitation at that frequency.

I measured 1.7ms between peaks, but they're rough peaks so it's hard to say exactly what the frequency is.

--
Tim Wescott 
Wescott Design Services 
 Click to see the full signature
Reply to
Tim Wescott

Right, (again thanks for your insight.) I'd sorta forgotten that ringing means I've got more gain at some frequency, and then external excitations at (near) that frequency will cause it to loose lock. (So an observation that I now understand: I sometimes sit right at the edge of oscillation, and then find that the lock is much less stable, any squeak/ping or high frequency stimulus cuases it to loose lock... )

You know I may understand this someday,

George H.

Reply to
George Herold

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.