Rick Dickinson wrote: > > I've seen quite a large number of postings by people looking for sonar devices > for robotics use. The commonly suggested solution (the Polaroid sonar module) > has several drawbacks, however: 1) it's expensive ($50 each or so), 2) it needs > modifications to measure short distances, 3) the transducer used is fairly > large (1.25" or so diameter), and 4) your processor gets tied up calulating the > range by timing the reflected chirp. > > Owing to the success of the various serial LCD "backpack"-type devices, I > thought it would be useful to develop a low-cost kit for an ultrasonic ranging > unit, that could be accessed using some simple serial protocol. I envision > this "Serial Sonar Unit" (SSU) being a small PIC-based PC board, with > connections to a pair of Murata 40 KHz transducers like the ones sold by All > Electronics for $2.50 a pair. > > The SSU would have two modes: continuous reading, and on-command. If set to > continuous mode, the SSU would continually send out, and time the echos of, > tone bursts, storing the most recent result internally. When polled, it would > return the most recent reading. In on-command mode, the SSU would wait for a > "go" command of some sort, then send a pulse and time its return. If polled > before the measurement was complete, it would return some sort of "busy" > indication. If polled after the measurement was complete, it would return the > measurement. > > My intent is to come up with a design that will save my fellow hobbyists some > time and money, and will make it easy to incorporate sonar ranging into PIC and > other small microcontroller-based projects. Offloading the timing, transducer > drive, and calculation tasks to a dedicated SSU will allow the programmer to > concentrate on the tasks to be done, not the ranging implementation. Allowing > single-shot or continuous ranging will allow simpler implementations to use the > continuous mode, and multiple-unit configurations to use single-shot mode to > avoid interference between transducer pairs. > > Details to be ironed out include: > - Protocol for commands, including mode changes > - Data format for measurement data returned > Inches? > Milli/microseconds? > Binary or BCD? > - I2C, SPI, or none of the above > - Baud rate/clocking (async 9600/4800/2400/1200? Autobaud? Sync?) > - Distribution mechanism > PIC code/Schematics/PCB layout on web for download? > Preprogrammed PICs and etched PCBs for purchase? > Both? > > I am just at the "fleshing out the idea" stage, and I would appreciate any > feedback as to whether or not anyone would be interested in such a device. > Also, I want the SSU to be as useful as possible, so I would love to hear > everyone's input on the implementation details I outlined above. I figure that > the discussion would be most valuable if everyone could participate, so please > send replies to the PICLIST instead of directly to me. > > Thanks in advance, > > - Rick Dickinson Such a product already exist, and the cherry on top of the cake is that it's pic based! (a basic stamp chip) It's called RadStamp, has a range of 0.5 to 12m with a resolution of +/-10mm. The US sensor is mounted on a stepper motor to make measures on 360 degrees. The device has a RS232 output. It costs around 60$ but you need to add a Basic Stamp2 to make it work. I guess it should be possible to replace the BS2 with a "Pure" PIC chip. It's distributed in UK by Milford Instruments. Anyway, it will be fun to develop such a device by ourselves! Cheers Gael