DSPRelated.com
Forums

Finding acoustic resonance of a wine glass (using snack ?)

Started by john cohn September 2, 2003
Folks...
   I'm a mad scientist trying to build a demo of sound breaking a wine
glass. My hope is to do this all in software. My thinking at this
point would be to use a microphone and the TCL Snack extension to help
find the resonances of a wine glass, then select the fundamental,
generate this frequency and feed it into a monster amp. In theory it
should work.
   My question is.. how do I use Snack to find the resonance frequency
exactly ?  I've been messing around with the power spectra calls but
no luck yet. I can use the Snack 'section.tcl' demo program with an
LPC filter to see a beautiful resonance curve when I thwack the glass.
But.. I can't seem to figure out how to write the simple script that
will find the exact freqency that correspnds to those peaks. I need to
find it within a few 10ths of a Hz.
Is that possible ? The resonance appears to be a few hundred Hz. 
   Alternately... I guess I could sweep the frequency of my speaker
and look for peaks in the microphone response. Any ideas on how to
test for the amplitude from the mic ?
   Any and all help would be much appreciated ! Thanks...

-jc
john cohn wrote:
> Folks... > I'm a mad scientist trying to build a demo of sound breaking a wine > glass.
> ...
> My question is.. how do I use Snack to find the resonance frequency > exactly ?
What you need to do is solve the polynomial defined by the LPC filter to find the pole frequencies (or is it the zeros, I can never remember). Luckily this is a common thing to want to do and snack has code to do it for speech in the formant subcommand. So, package require snack 2.2 sound s -load /usr/share/xemacs21/packages/etc/sounds/ding.wav set ff [s formant] foreach s $ff { puts [lrange $s 0 2] } will print out a list of resonant frequencies which should closely match the peaks you see in the LPC spectrum. BTW, another way to do this would be to play a frequency sweep and record the response close to the wine glass (eg. a mic inside the glass) then look at the frequency with the largest amplitude. Good luck. Steve
johncohn@us.ibm.com (john cohn) wrote in message news:<7bc239da.0309021833.38ba7b4@posting.google.com>...
> Folks... > I'm a mad scientist trying to build a demo of sound breaking a wine > glass.
A bit off topic, this, but I did something similar a few years ago. My "practical engineering" assignment when at College was to build and test a prototype for what we termed a "wine glass gyro". The ide was to use the acoustic resonance in a "wine glass shaped" brass body to detect whether the body rotated around its axis of symmetry, and if so, how fast. We did this by gluing piezoelectric transducers at every 45 degrees around the rim of the glass. If two opposite (180 degrees apart) transducers exitated the rim in phase, the two transducers at 90 degrees from this "driving axis" measured the response, feeding a tuning circuit that kept the acoustic standing wave pattern at the desired resonant mode. The remaining four sensors sat in nodes in the standing waves, and thus didn't measure any vibration. Now, if this thing started rotating around the axis of symmetry, "we were told" that there would be some sort of "lag" in the acoustic standing wave. So the sensors in the nodes would start measuring some non-zero vibration. The amplitude would increase the faster the thing rotated. Measuring the amplitude of those vibrations would give an indication on how fast the thing was rotating. We did get the driving circuit to work. Opinions are divided upon whether we got the amplitude detector to work, or not. It still was a fun project. Rune
johncohn@us.ibm.com (john cohn) wrote in message news:<7bc239da.0309021833.38ba7b4@posting.google.com>...
> Folks... > I'm a mad scientist trying to build a demo of sound breaking a wine > glass. My hope is to do this all in software. My thinking at this > point would be to use a microphone and the TCL Snack extension to help > find the resonances of a wine glass, then select the fundamental, > generate this frequency and feed it into a monster amp. In theory it > should work. > My question is.. how do I use Snack to find the resonance frequency > exactly ? I've been messing around with the power spectra calls but > no luck yet. I can use the Snack 'section.tcl' demo program with an > LPC filter to see a beautiful resonance curve when I thwack the glass. > But.. I can't seem to figure out how to write the simple script that > will find the exact freqency that correspnds to those peaks. I need to > find it within a few 10ths of a Hz. > Is that possible ? The resonance appears to be a few hundred Hz. > Alternately... I guess I could sweep the frequency of my speaker > and look for peaks in the microphone response. Any ideas on how to > test for the amplitude from the mic ? > Any and all help would be much appreciated ! Thanks... > > -jc
Cool. Good luck. I've heard (a myth, perhaps?) that the singers who shattered glass with their voice would first weaken the glass by surreptitiously scoring it with a diamond ring. You may need to apply a glass cutter to the thing before it will shatter. Just a tiny flaw ought to be enough... Let us know how you fare. Glenn Dixon
"Rune Allnor" <allnor@tele.ntnu.no> wrote in message
news:f56893ae.0309030134.30157006@posting.google.com...

(snip)

> My "practical engineering" assignment when at College was to build and
test
> a prototype for what we termed a "wine glass gyro". The ide was to use > the acoustic resonance in a "wine glass shaped" brass body to detect > whether the body rotated around its axis of symmetry, and if so, how fast. > > We did this by gluing piezoelectric transducers at every 45 degrees around > the rim of the glass. If two opposite (180 degrees apart) transducers > exitated the rim in phase, the two transducers at 90 degrees from this > "driving axis" measured the response, feeding a tuning circuit that kept > the acoustic standing wave pattern at the desired resonant mode. The > remaining four sensors sat in nodes in the standing waves, and thus didn't > measure any vibration. Now, if this thing started rotating around the axis > of symmetry, "we were told" that there would be some sort of "lag" in the > acoustic standing wave. So the sensors in the nodes would start measuring > some non-zero vibration. The amplitude would increase the faster the thing > rotated. Measuring the amplitude of those vibrations would give an > indication on how fast the thing was rotating.
The piezo gyros that I have heard about, now used in navigation systems in cars, have two piezo transducers that produce a bending mode, turned 90 degrees apart, with a small weight one has a sine applied that vibrates it in, say, the X direction. No signal will appear in the Y direction. If the device is rotated, the (virtual) coriolis force will cause a vibration in the Y direction. -- glen
"Glen Herrmannsfeldt" <gah@ugcs.caltech.edu> wrote in message news:<WGw5b.262733$Oz4.68675@rwcrnsc54>...
> "Rune Allnor" <allnor@tele.ntnu.no> wrote in message > news:f56893ae.0309030134.30157006@posting.google.com... > > (snip) > > > My "practical engineering" assignment when at College was to build and > test > > a prototype for what we termed a "wine glass gyro". The ide was to use > > the acoustic resonance in a "wine glass shaped" brass body to detect > > whether the body rotated around its axis of symmetry, and if so, how fast. > > > > We did this by gluing piezoelectric transducers at every 45 degrees around > > the rim of the glass. If two opposite (180 degrees apart) transducers > > exitated the rim in phase, the two transducers at 90 degrees from this > > "driving axis" measured the response, feeding a tuning circuit that kept > > the acoustic standing wave pattern at the desired resonant mode. The > > remaining four sensors sat in nodes in the standing waves, and thus didn't > > measure any vibration. Now, if this thing started rotating around the axis > > of symmetry, "we were told" that there would be some sort of "lag" in the > > acoustic standing wave. So the sensors in the nodes would start measuring > > some non-zero vibration. The amplitude would increase the faster the thing > > rotated. Measuring the amplitude of those vibrations would give an > > indication on how fast the thing was rotating. > > The piezo gyros that I have heard about, now used in navigation systems in > cars, have two piezo transducers that produce a bending mode, turned 90 > degrees apart, with a small weight one has a sine applied that vibrates it > in, say, the X direction. No signal will appear in the Y direction. If the > device is rotated, the (virtual) coriolis force will cause a vibration in > the Y direction.
Right. We did read a lot about that Coriolis thing. At the time, I didn't quite understand what sort of force that was. The examples I found discussed an artillery piece at the north pole, firing along some meridian. The point was that the shell (in the absence of a couple of other effects) would not land on that meridian, it would land to the west of it. This was explained by the so-called "Coriolis force". I never saw a force in that example. I saw the earth rotating under the trajectory of the shell. Quite confusing. Rune
allnor@tele.ntnu.no (Rune Allnor) wrote:

> Right. We did read a lot about that Coriolis thing. At the time, I didn't > quite understand what sort of force that was. The examples I found discussed > an artillery piece at the north pole, firing along some meridian. The point > was that the shell (in the absence of a couple of other effects) would not > land on that meridian, it would land to the west of it. This was explained > by the so-called "Coriolis force". I never saw a force in that example. > I saw the earth rotating under the trajectory of the shell. Quite confusing.
The "Coriolis force", like "centrifugal force", does not physically exist. It is an artifact of a rotating frame of reference. Within such a frame of reference, objects move as if there were a force pushing them. From outside that frame of reference, things look fine without needing to invent the virtual forces. So if you look at the artillery shell from the frame of reference of the rotating Earth, you see an apparent deviation from a parabolic path which can be explained by an extra force. The force is not "real", but it can be measured by an observer moving with the Earth.
Alan Anderson wrote:
> > > The "Coriolis force", like "centrifugal force", does not physically > exist. It is an artifact of a rotating frame of reference. Within such a > frame of reference, objects move as if there were a force pushing them. > From outside that frame of reference, things look fine without needing to > invent the virtual forces. >
Rahter than virtual forces they are better called "inertial forces"
> So if you look at the artillery shell from the frame of reference of the > rotating Earth, you see an apparent deviation from a parabolic path which > can be explained by an extra force. The force is not "real", but it can > be measured by an observer moving with the Earth.
The best known effects of the Coriolis force are the spiralling motions of depressions on weather maps. Regards, Arjen
According to john cohn <johncohn@us.ibm.com>:
:find the resonances of a wine glass, then select the fundamental,
:generate this frequency and feed it into a monster amp. 

Is the intended result that all your applications will break all wine glasses
in the vicinity of being executed?

Seems rather anti-social...


-- 
<URL: http://wiki.tcl.tk/ > <URL: http://www.tcl.tk/ >
Even if explicitly stated to the contrary, nothing in this posting
should be construed as representing my employer's opinions.
<URL: mailto:lvirden@yahoo.com > <URL: http://www.purl.org/NET/lvirden/ >
In article <7bc239da.0309021833.38ba7b4@posting.google.com>, 
johncohn@us.ibm.com says...

> My question is.. how do I use Snack to find the resonance frequency > exactly ? I've been messing around with the power spectra calls but
I don't really know anything about Snack, but IMHO this sounds like a job for fourier transforms. After performing the FT you should see a prominent spike at the resonant frequency and diminishing spikes at increasing harmonics. You'll probably want to average all of the frequencies, cut out spikes below the average, leaving a fairly nice set of blips at each harmonic. -- Michael Kirkham Muonics http://www.muonics.com/