# Measuring Amplitude of sound wave FFT

Please, pardon my ignorance. This may be a simple question, but I am still unable to explain what is happening.

I am using a turtlebot to listen to sound emitted from a stationary sound source.

My experiment setup is this:

1. One stationary sound source emits tone of 500Hz.
2. A turtlebot robot located about 3.5m away listens and measures the amplitude of the sound source (used FFT and filtered out 500Hz) at a rate of 100Hz while moving linearly toward the sound source at a velocity of 0.1m/s.

The result of the measurements is shown below. NB: X axis is distance in metres, Y axis is amplitude measured by the turtlebot.

My question is this: 1. Why is there a noticeable dip in the amplitude as the robot moves closer to the sound source? 2. Please can you help me with links to resources that can help me explain this behaviour?

• Just to clarify, you specify that "X Axis is distance in meters" and we see that at 3.0 meters the amplitude is much lower than what it is at zero meters. Which is reasonable. Was this your intention or did you just plot the vector of captured values, in which case we should assume that "0" refers to the first measurement at 3.5 meters rather than meters (?). Also, what else is there on the turtlebt in terms of capturing sound? What else is there between the mic and sound capture? The rest of the diagram seems reasonable.... – A_A Jun 4 '18 at 12:07
• @A_A: The turtlebot was set to move a distance of 3m toward the sound source. The X axis represents the distance travelled in metres (from 3.5m away to 0.5m away from the sound source). With this explanation, "0" represents 0.5m from sound source, while "3.0" represents 3.5m from sound source. On the turtlebot, I use a laptop microphone (facing sound source) to capture the sound. I make use of modified version of this python code to log the sound measurements. – elcymon Jun 4 '18 at 12:21
• @A_A, when you say the rest of the diagram seems reasonable, do you mean that is the behaviour you will expect when you do same experiment? If so, how do I explain the result. Thanks. – elcymon Jun 4 '18 at 14:52
• Look at @CedronDawg's answer. The room supports waves which you can imagine like a "grid" of sound pressure. The grid is formed because of constructive / destructive interference. Your measurements are reasonable from that point of view. I wonder if your recording progressively clips so much as it gets near the source that no signal appears to be recorded. Is it possible to also save small clips of the recorded sound along with the 500Hz measurement? We could see if this progressive reduction is because of heavy clipping. – A_A Jun 4 '18 at 15:21

These are interesting results. Your comment "The X axis represents the distance travelled in metres (from 3.5m away to 0.5m away from the sound source). " seems to contradict "With this explanation, '0' represents 0.5m from sound source, while '3.0' represents 3.5m from sound source." The latter seems to be the one that fits your data better.

What is more pronounced is the fluctuations you are getting. Taking the speed of sound at 343 meters per second:

$$\frac{343~\text{meters}/\text{second}}{500~\text{cycles}/\text{second}} = 0.686~\text{meters/cycle}$$

With standing waves, the nodes are at half the wavelength, which corresponds closely to the size of your fluctuations in the graph. So as your robot is moving through the room, it looks like you are measuring the standing wave nodes.