Go Down

Topic: vibration control in piezoelectric element with multiresolution pid (Read 2598 times) previous topic - next topic



I have built a circuit using arduino to suppress vibration in a piezo element.  My inspiration for this was the DIY scanning tunneling microscope design of John Alexander in [2].  Because of the simple analog control and lack of suspension in the mechanics, I had my doubts about the efficacy of his schematic for atom-scale imaging.  Piezoelectric material tends to have some complicated nonlinear vibration noise effects that must be adequately compensated for in any decent scanning probe.

So I decided to put to the test recent developments in multiresolution PID control [1].  Isolating the high-frequency, transient vibration modes with a Daubechies wavelet transform, I was able to separate the error signal from the piezo element into modes that could be adjusted...intuitively speaking, high frequency portions are this way adjusted more rapidly, while low frequency vibrations are suppressed more slowly, since you don't want the latter to overshoot and develop into permanent oscillations.

I used an arduino board to transform the error signal into a control signal, fed the control signal into an analog inverter, and then fed the result back through the piezo buzzer.  The result was near-complete cancellation which was resilient in the face of noise and even cancelled an external time-varying voltage difference applied to the buzzer. 

Attached is a picture of my breadboard with the inverter circuit and piezo buzzer.  Also attached is the code I used for the wavelet PID (PWM port 2 is output to inverter, ADC port 5 is input error)


[1] Parvez, S.; Zhiqiang Gao, "A wavelet-based multiresolution PID controller," Industry Applications, IEEE Transactions on , vol.41, no.2, pp.537,543, March-April 2005.
[2] http://www.geocities.com/spm_stm/Project.html


I am assuming then its like feedback in an audio system ? Your signal fed back cancels the source signal so all that is left is PID
Potential Incendiary Device?

Just kidding
What is a PID when it is at home?

"So I decided to put to the test recent developments in multiresolution PID control [1]. "

Can you visually see on an atomic scale with this? , and where do you look?
Perhaps its just data .
I'm pretty ignorant on this , could you explain a little more please? I would like to consider if I can use this for anything I may want to do.


Oooh nice!

Great work!! My deepest respect!

I'm trying to use DWT as a fast & efficient (time domain) analysis tool on the Arduino, with the purpose to convert transient piezo signals to (musical/MIDI) parameters. Mainly interested in energy distribution over the freq range ('impulse/tone color') and/or pitch detection.

Being educated with Fourier as main DSP tool, Wavelet is a steep learning curve for me, would you mind elaborating on your DWT solution?

I know what Wavelet Transform theoretically and mathmatically so now I'm very eager to learn how to approach its implementation.

Cheers, Joshua

Go Up