Silicon Chip – April 2019

(Ben Green) #1
80 Silicon chip Australia’s electronics magazine siliconchip.com.au

R


eader Michael, from western NSW, kindly sent us
a model 20DX geophone sensor, suggesting that
this would be a great add-on to our seismograph project
(siliconchip.com.au/Article/11030).
The geophone sensor is based around a sprung mass (a
magnet) moving inside a coil. It generates a voltage propor-
tional to the velocity of the magnet. This is different from
the MEMS type sensors, which produce a value propor-
tional to acceleration. While larger and heavier, the sim-
ple mechanical geophones are also much more sensitive
than their MEMS counterparts.
The geophone sensor is marked with the code “10 395”,
meaning it has a nominal minimum frequency of 10Hz, and
a coil resistance of 395W. Similar units are available from
many online sellers. The unit we are using is designed for
use in a vertical orientation, although units designed for
horizontal use are also available.
Rather than building another seismograph from scratch,
we decided to add the geophone sensor to our seismograph
project. It records seismographic data as WAV files, which
can be either manipulated and viewed with programs such
as Audacity, or simply played back as audio.
The data from the geophone sensor is added as a fifth
channel to the WAV data, complementing the existing Z-
axis (vertical) channel, so all the data can be viewed to-
gether and compared.

Interfacing the geophone
As the output of the geophone sensor is just an analog
voltage, we can read this using the Arduino’s ADC

(analog-to-digital converter). As it is an
AC signal, we need to DC bias the signal
to centre the sensor’s zero-point in the ADC
sample range.
To improve the resolution of the readings, instead of
using the 5V supply rail as the ADC reference, we’re us-
ing the micro’s internal 1.1V reference. Because the po-
tentiometer used to adjust sensitivity also uses the ADC,
you need to add a series resistor to reduce its adjustment
range to 0-1.1V.
16 ADC readings are taken from the geophone and av-
eraged. The result is then fed through the same digital fil-
ter that is applied to the signals from the accelerometer.

Circuit description
The revised circuit is shown in Fig.1. A voltage divider
comprising 51kW and 10kW resistors generates a ~0.55V
rail for biasing the geophone. This is half of the nominally
1.1V ADC reference generated by the Arduino, so it allows
the geophone output to swing over the full ADC range.
This biasing rail is filtered by a 220μF capacitor as the
divider impedance is much higher than the geophone’s,
and otherwise, its frequency response would suffer. This
capacitor also filters out any supply noise on the 3.3V rail.
Any drift due to changes in the 3.3V supply voltage is re-
jected by a 0.5Hz software-defined high-pass filter.
We decided not to generate this reference rail by draw-
ing current from the Arduino’s AREF pin as that pin can
source only a minimal amount of current.
VR2, connected across the geophone, dampens its output

Our Arduino Seismograph
from April 2018 uses
a 3-axis MEMS
accelerometer to
measure the force of
tremors and other
vibrations. Typically
seismographs will
measure displacement,
not force; but the good
news is that you can
measure it electronically
using a “geophone” sensor. by Tim Blythman

Using a Geophone


with our Arduino


Seismograph

Free download pdf