The Geo-Mite
The Geo-Mite is a small microprocessor controlled vibration alarm system. It uses a sensor called a "Geophone" developed by Geosource to perform acoustic surveying for the oil industry. This sensor can detect very small vibrations and generate an output voltage proportional to the vibration. The Geo-Mite converts this output to a binary condition and then counts the number of these vibrations occurring each second. This level of vibration is displayed on an LED bar-graph on the front of the Geo-Mite. If this level exceeds a programmable threshold then the Geo-Mite will sound an alarm and send an X-10 On command to a selected device. It will follow this On command with an Off command at some interval selected by the user. The unit can operate totally standalone without a PC to program it. In this case the alarm threshold is set by a front panel switch and the X-10 commands default to values preset in the software. The unit can also operate without the X-10 interface in which case it becomes a simple audible alarm in response to vibration.
The Geo-Mite uses the Philips 87LPC764 microprocessor in the 20 pin package. Ten of these pins drive the LED display, one drives the alarm, two communicate with the X-10 interface, one listens to the vibration sensor, two talk to the PC interface and one monitors the front panel switch. The only additional IC in the case besides the microprocessor is a Maxim MAX232 level conversion chip to provide proper signal levels on the PC interface lines. If the programmable feature is not desired then this chip and the crystal on the clock inputs to the microprocessor could be eliminated. This would be truly reducing the processor design to a basic single chip solution.
The Geophone sensor output is amplified and converted to a TTL square wave by a dual, single supply Op-Amp. The amplifier first steps the analog signal up by a factor of 100 and then generates the square wave by comparing this signal to a small DC level. This results in a square wave at 0 to about 5 volts following the vibration output of the sensor. This signal is then connected to an input pin on the microprocessor where it is processed to generate the display and alarms.
The Geo-Mite software is based on two basic interrupts, one from a timer set to interrupt at 8mS intervals, the other from the zero crossing input from the X-10 interface. If the X-10 interface is absent the timer interrupt will take over for it. With each interrupt the states of the vibration sensor signal and the switch input are examined. Any changes to these inputs start the processing. A polling loop at the top level of the program checks for inputs from the PC interface and also for timeout of display or X-10 events. Probably 80% of the code space is occupied by the PC interface logic. This logic provides an easy and reliable way to program operating parameters into the Geo-Mite. Once programmed the Geo-Mite can operate without this interface.
The Geo-Mite provides a tremendous amount of functionality from very little hardware. This was only possible because the Philips people managed to pack tremendous power and flexibility into a small, low-cost package. This made development very easy and help produce a very useful tool in a very short time.
