Here is the schematic for the analog, non-microcontroller, ultrasonic distance monitor. It has 1 ft resolution, with a range of 1-10 feet.
U1 is connected as an astable multivibrator, providing a 20Hz trigger pulse to the SRF04. The width of the echo pulse from the SRF04 equals the round trip time for the ultrasonic pulse. Since the nominal speed of sound is 1100 ft/sec, the echo time for an object 1 ft away will be T=1*2/1100, or T=1.82 milliseconds.
Q1 and U6a form a current source which charges C9 with I~45ua, generating a ramp on C9 which rises at a rate of dv/dt=I/C9, or dv/dt=0.17v/millisec, which corresponds to dv/ds=0.17*1.82=303mv/ft.
At the end of the echo, the current to C9 is diverted to ground by analog switch U5a, which causes the voltage ramp on C9 to stop and be held. This voltage is buffered by voltage follower U6b. The trailing (falling) edge of echo is differentiated and inverted by C10-R8-U3d. This generates a positive pulse at the input to analog switch U5c, sampling and holding the stopped ramp voltage on C11. Thus a DC voltage proportional to distance is presented, via voltage follower U6c, to the input of U7, an LM3914, which is an LED bar graph driver. When the sample pulse ends, a logic "1" gets clocked into "D" flip-flop U4a. This turns on analog switch U5b, discharging capacitor C9. The flip-flop is reset by the arrival of the next echo pulse, releasing C9 to begin charging again.
Calibration:
The LM3914 can be used in bar or dot mode depending on the position of S1. If you use bar mode, be aware that the LEDs can draw as much as about 200ma from the 5 volt regulator (hence the heat sink and the 1 watt 10 ohm resistor). Dot mode is much lower power, but is probably more difficult to interpret.
For distance calibration, simply aim the transducer at a target which is 9.5ft away and adjust RV2 to where the 9th LED is turning off and the 10th LED is turning on. The reference voltage should ideally be 3.0v, but this can vary considerably due to component tolerances, altitude, atmospheric pressure, and air temperature.
The LED current, and hence brightness, can be adjusted with RV1 to a maximum of about 20ma for each LED.
I considered using a switching regulator, but decided they are less accessible to the average hobbyist. There are a number of other options available for the 5 volt regulator.
The TLV2404 is a quad op amp with picoamp input current, rail-to-rail input and output capability, and capable of running on a 5 volt supply. You can probably get it as a sample from TI, or you can buy it from Digikey.
I simulated parts of this, but I haven't built it, so there may be errors. If anyone builds it, let us know about your success or failure.
It would obviously be much simpler, hardware-wise, to do this with a microcontroller, but our OP, Steve, specifically requested a non-digital solution.
Edit 1/30/04:
I just noticed that in the schematic, I gave U3 the wrong part number. It has been corrected.
Edit 1/30/04:
In and Out were swapped on LM7805.