The new arrangementAnother earth-quake detector

complete setup

The alternative arrangement can be studied  on the left. The round grey sphere is a lead weight, which is suspended from the ceiling or any other convenient support. Attached  

to this are two magnets taken from a failed hard drive. One magnets floats over a small coil, taken from a 12V relay, the other over a black aluminium bar. Note that the coil has no metal core.

The aluminium bar is for damping. Without the helpful eddy currents produced in the metal, the mass, once disturbed, would swing for a very long time. The entire set-up can be seen on the right. I have it suspended from a very long shelf support and the length of the pendulum can be adjusted via the mounting bolt and nut.

Any slight vibration of the table surface - from earthquake or tapping - will displace the coil. Due to its large mass the lead sphere tends to be stationary. This induces a small current which is amplified by the two op-amps and presented to one of the analogue inputs of the USB experiment board.

A close-up of the circuit board is shown below.

The circuit board

The circuit diagram

The circuit is built around two 741 operational amplifier. The first amp has a variable gain which can be adjusted by the 470k potentiometer. The actual gain selected depends on local conditions and on the size of vibration you want to detect.

The output of this is fed to the second 741, which is a unity gain level shifter. the 50k pot allows you to shift the output to anywhere between 0 and V+. A signal diode in series with the output makes sure that no negative voltages occur. As stated elsewhere, the A/D circuitry of the K8055 USB board will accept a voltage between 0 and 5V - no more. When driving the above circuit with a power supply of -5V - 0V - +5V no accidents are possible. If you use a power supply with higher voltages, take care to limit the output voltage to 5V.

Notice the two signal diodes connected in parallel with the inductor L1. They make sure that no voltage larger than the forward voltage of the diode is presented to the amplifier. This protection is not aimed at very large earthquake but prevents humorously large voltages due to human clumsiness. Accidentally knocking against the lead mass can induce quite large voltages in the coil! The diodes make sure this can't be larger than 0.7V if you use silicon diodes or 0.2V should you use germanium diodes.

Lastly a few hints gathered from bitter experience. The gain of the system is vital and depends on many things. The number of turns of the induction coil, the strength of the magnet and the distance between magnet and coil all have an effect on the size of the signal produced. You must adjust the gain to suit local conditions.

Bear also in mind that the Velleman board ADC inputs are also amplified. Velleman suggests a factor of times four or times 15 - the details are in the handbook.

I have also found that the potentiometers on the Velleman board act as zero offsets, so some experimentation is need to place the trace on the screen correctly.

Lastly, the system is not calibrated to the Richter or any other scale. It simply displays any lateral vibrations of the ground.

The program

The program is as simple as possible. It continuously displays the reading from the analogue input in graphical form. Once the screen is full, it blanks the screen and starts again. Bear in mind that there are two ADC inputs. The program below reads ADC 1. (Line 360) from Velleman board with the address 0. (Line 140)

Here is the self-extracting .exe file

Here is the BBC Basic program file


  10 REM Quaker
   20 REM Simple earth quake detector demonstration
   30 REM Needs Velleman K8055 USB Experiment Interface board
   40 REM Jochen Lueg
   50 REM Limavady, December 2009
   60
   70 MODE 15
   80
   90 REM Find dll routines addresses
  100 PROCinit
  110
  120 VDU5
  130 REM Turn board 0 on
  140 SYS USB_OpenDevice%,0
  150 CLG
  160
  170 MOUSE ON
  180
  190 COLOUR 5
  200 MOVE 10,1000
  210 PRINT"Press the left mouse button to start"
  220 MOVE 10,960
  230 PRINT "Press the right button to pause"
  240 REPEAT
  250   MOUSE x%,x%,b%
  260 UNTIL b%=4
  270 CLG
  280 GCOL 5
  290 REM Start at the top of the screen and repeat until you reach the bottom - 5 traces
  300

 
 




310 REPEAT
  320   CLG
  330   FOR Y%= 1800 TO 200 STEP -200
  340    
  350     FOR X%= 0 TO 2559 STEP 2
  360       SYS A%,1 TO V%
  370       PLOT 5, X%,Y%+V%*4
  380       MOUSE x%,y%,b%
  390       IF b%=1 THEN
  400         REPEAT
  410           MOUSE x%,y%,b%
  420         UNTIL b%=4
  430       ENDIF
  440     NEXT
  450     MOVE 0,Y%-200
  460   NEXT
  470 UNTIL FALSE
  480 SYS USB_CloseDevice%
  490
  500 *QUIT
  510
  520 END
  530
  540 DEFPROCinit
  550 REM  Typing errors in routine name do not generate an error message - they just hang up the program.
  560 SYS"LoadLibrary","K8055D.dll" TO USB_Board%
  570 SYS"GetProcAddress",USB_Board%,"OpenDevice" TO USB_OpenDevice%
  580 SYS"GetProcAddress",USB_Board%,"ReadAnalogueChannel",1 TO USB_ReadAnalogue%
  590 SYS"GetProcAddress",USB_Board%,"SetAllDigital"  TO USB_SetAllDigital%
  600 SYS"GetProcAddress",USB_Board%,"CloseDevice" TO USB_CloseDevice%
  610 SYS"GetProcAddress",USB_Board%,"ClearAllDigital" TO USB_ClearAllDigital%
  620 SYS"GetProcAddress",USB_Board%,"ClearDigitalChannel" TO USB_ClearDigitalChannel%
  630 SYS"GetProcAddress",USB_Board%,"SetDigitalChannel" TO USB_SetDigitalChannel%
  640 SYS"GetProcAddress",USB_Board%,"ReadAnalogChannel" TO A%
  650 ENDPROC

 



Return to the interfacing index

Back to the Limavady home page

Tudor with sign