[mowbot] Ultrasonic hardness measurement

Dave Everett (Deverett nospam at vir.idx.com.au)
Wed, 25 Sep 1996 20:54:09 +1000

I set up an experimental breadboard to test the possibility of
differentiating between grass and concrete.

The circuit consists of 2 ultrasonic transducers, one is fed a 40khz
signal via a 1k resistor from the PWM output of an ST6 microcontroller.

The other transducer receives the return signal. It is divided by 2 470k
resistors and then AC-coupled with a 0.1uf monolithic capacitor to an
inverting amplifier made from a TL_072. The AC-coupling practically all
the noise in the circuit. The TL-072 is set up for a gain of 1,000,000.
I haven't implemented any bandpass filtering on the opamp, but if motor
noise became a problem that could be implemented with one extra resistor
and a capacitor.

The resultant pulse-train is integrated over a 0.1uf monolithic that is
bled via a 1m resistor. A half-bridge clips the signal into DC.

The varying DC voltage (representing the return strength of the
ultrasonic pulse-train) is fed into one of the AD pins on the ST6
microcontroller. The ST6 can read the AD pin and output the digital
value via a 9600 baud asynchronous port, which will communicate with a
laptop computer for realtime data-logging out in the field (my lawn

I will examine the signals with a CRO tomorrow before setting up a
wheelable jig for logging response over time.

I'm hoping that the responses from hard surfaces like concrete will be
markedly different to the response from grass/soil.

The circuit I have implemented could receive signals from 8 transducers
and provide 8 outputs, each giving a simple digital response,

Dave Everett.