January
2006, Issue 186
Internet-Connected
Sonic Anemometer
SPEED
OF SOUND IN AIR
The
speed of sound in air depends mostly on the temperature.
It depends slightly on humidity and the air’s actual
mixture of gases. Luckily, you have to worry only about
the temperature. Furthermore, if you’re only interested
in the wind speed, you can just factor out these effects.
The
standard speed of sound is usually determined by one
of the following:

These
are approximations, and they don’t account for humidity.
A more precise instrument would use more elaborate models
for the speed of sound in air.
How
do you go about measuring the speed of sound? The most
reliable methods involve ultrasound range measuring.
Ultrasonic transducers, especially for the 40-kHz band,
are readily available. I’ve seen them used in numerous
robotics projects.
In
an ultrasonic ranger, a short burst of ultrasound (8
to 16 cycles) is transmitted via a transducer. Another
transducer then picks up the reflections of the sound.
The delay between the transmitted burst and the received
burst is called time of flight (TOF), which can be converted
to distance if you know the speed of sound.
Although
ultrasonic transducers are bidirectional devices (i.e.,
they function as transmit and receive transducers),
they usually use a separate transmitter and receiver
transducer. The transmit transducer has a tendency to
ring for some time after the excitation waveform stops.
This limits the short range of such a system.
Transducers
can be optimized for transmitting or receiving. If you
substitute one for the other, you’ll get reduced performance.
Circuitry for rangers using separate transducers is
available in many robotics publications and datasheets
for transducers.
Measuring
the actual speed of sound is easy if you have a calibrated
distance. In sonic anemometers, the transducers are
mounted in a fixture that fixes a direct distance between
transducers. If you measure the direct time of flight
between the transducers, you can compute the perceived
speed.
This
speed is the speed of sound in the air plus the speed
the wind exerts.
If
you determine the air temperature with a thermometer,
you can compute the wind speed simply by applying one
of the earlier expressions:
Now,
here comes the clever part. If you measure the speed
in both directions along the same path, you don’t need
to know the temperature.
By
combining the equations, you get:
You
can also derive the current temperature:
Of
course, the system needs to transmit and receive in
both directions along the path. This requires the transceiving
transducers or a set of transmit/receive transducers.
Ringing
in the transmit transducer isn’t a big problem because
the turnaround time is slow. The system waits for the
burst to travel the distance to the other side before
it switches direction. But the ring has a tendency to
stretch the pulse by adding more cycles to it. This
seems to work. Well, not quite. It only determines the
wind speed along the path. When the wind blows from
an angle, you can see only a portion of the wind speed.
When the wind is orthogonal to the path, you can’t see
any wind speed at all.
To
fix this, you can configure the anemometer to measure
in different paths. The cross (orthogonal) is a typical
configuration. Use the same technique to measure the
wind speed along each of the two paths (x and y). To
compute the absolute wind speed, simply add the squares
of each component and take the square root (magnitude
equation):
You
can also derive the wind direction:
Other
configurations are also possible. I used a triangle
(60°).
You
might have noticed that you aren’t measuring the Doppler
shift of the sound burst. A common misconception about
using a sonic anemometer is that you can measure the
wind speed by measuring the Doppler frequency shift
of the ultrasonic signal.
Recall
the high school physics experiment relating to train
whistles changing pitch as they approach and recede
from a stationary listener. Of course this is true,
but in the sonic anemometer setup, both the listener
and the train whistle appear to be moving at the same
speed. So, it’s more like listening to the train whistle
while you’re on a car in the back of the train (i.e.,
the pitch doesn’t change) even though the train may
be moving at great speed.
The
Doppler signal in a sonic anemometer measures the change
in wind speed, which can give an indication of the wind
speed’s stability at the moment it’s measured. You can
use this to measure turbulence and fluctuations in wind
speed. Of course, this involves being able to measure
the changes in the received signal’s frequency. You
can use a fast Fourier transform (FFT) to look at the
purity of the spectrum. You may also need a transducer
with a wide frequency range. Many ultrasonic transducers
are tuned for a specific frequency and attenuate if
the received sound frequency is out of the pass-band.
Check the transducer’s datasheet.