Sonar Positioning (SRF04)

Hi, I'm trying to put on my robot some sonar

formatting link
to cover the entire 360=B0 range around the robot avoiding interference ?? Is this enough to put this 8 SRF04 angled about 45=B0 degrees ?? It seems too simple...

Reply to
rasega
Loading thread data ...

Hi, I'm trying to put on my robot some sonar

formatting link
to cover the entire 360=B0 range around the robot avoiding interference ?? Is this enough to put this 8 SRF04 angled about 45=B0 degrees ?? It seems too simple...

Reply to
rasega

Not directly in response to your query, but I am wondering about the status of synthetic aperture sonar. [Where multiple microphones are used, with one sound source. By "listening" to each microphone in the right sequence, you can select only sounds from one direction] With digital signal processor chips getting so cheap, and no moving parts required, I am surprised I am not seeing it implemented in robotics more often.

I am just getting started into learning PIC programming, so only have a general idea of what is possible. But, it would seem to be reasonable for a manufacturer to put out a "plug-n-play synthetic aperture sonar" in a comparable package to the "CMU Cam". Such a system might even incorporate the possibility to add sonar beacons for landmark navigation.

Of course, ideas are always trouble free, and work perfectly. Are there problems I am not seeing with such a system that prevent it from being available to the robotics hobiest?

Joe Dunfee

Reply to
cadcoke3

Hi The UK magazine EPE recently published an article called PIC = ultrasonic radar (June 2005) It used an ultrasonic transmitter / receiver pair which are rotated by = a stepper motor. The display (on a PC) shows a circular map with detected ultrasonic = detail. It looks good and the system is intended for robot use - I haven't got = around to building it yet - but will do soon.

Reply to
Z80

Hrm... its not hard but I wouldn't say its "too simple" either. Writing the code to control them isn't hard, but you'll need to stagger them so that one doesn't give a false echo to another, and they consume significant current so firing multiple at once can distort your power supply.

Also, you're limited to only 45 degree resolution, obviously. I like the idea of putting a sonar or two on top of a servo and rotating them. Its something I played with last summer but haven't gotten a chance to get back to.

Reply to
Mark Haase

I used 12 sonars (SRF08's). I fire 2 on opposite sides simultaniously, then go on to the next pair. If I thought I could get away with firing four off at a time without interference I might.

Hmmm. I should try it.

-- D. Jay Newman

formatting link

Reply to
D. Jay Newman

Can you explain me something more about your project please ? I can't find answer looking at your site. What's the MCU that you use on your robot ? I got the same idea, but until now I wasn't sure it could work : I've not to create some map of the enviroment around the robot, but just keep safe the robot avoiding collision, than I suppose it is enough switching the sonars, not firing all at the same time.

Thank You,

Richi

D. Jay Newman ha scritto:

Reply to
rasega

Some time ago, we did this with a test robot, but using SRF08's rather than SRF04's.

formatting link
Fired them all at the same time, too.

Gerry.

formatting link

------

Reply to
Gerald Coe

: I used 12 sonars (SRF08's). I fire 2 on opposite sides : simultaniously, then go on to the next pair. If I thought I : could get away with firing four off at a time without : interference I might.

There is a paper out there on rapid-fire tecniques for sonar, basicly it interleaves the delays between fireings. Google should find it.

Reply to
Christopher X. Candreva

: There is a paper out there on rapid-fire tecniques for sonar, basicly it : interleaves the delays between fireings. Google should find it.

formatting link

Reply to
Christopher X. Candreva

And your battery melted!

-- Gordon

Reply to
Gordon McComb

Sorry. I'm trying to finish up a book where Groucho is the main example so I haven't had time to update the site much.

I run Linux on a Mini-ITX board with a Pentium M 20 GHz.

The processor that actually runs the sonars is a MAVRIC-IIB from BDMicro

formatting link
This is Brian Dean's site and he puts out good products.

Groucho isn't a fast robot. This seems to work well for normal obstical avoidance. I also have a Sharp IR Ranger near the bottom front pointed down to detect dog toys that might get in the way of the casters.

One thing: the SRFO8 is read via I2C rather than directly. This makes the programming *much* easier.

I can release the code within a month or so.

I did try firing them simultaniously in ANN mode, but my house is too crowdwd for this to work.

The reason I fire two simultaniously is that by firing the ones in opposite directions I *probably* don't have to worry much about getting the wrong reflections.

You're welcome.

-- D. Jay Newman

formatting link

Reply to
D. Jay Newman

The article sounds interesting, but I am using sonars that have predefined firmware that can't be changed by myself at the present time.

Maybe later.

Thanks. It is an interesting paper.

-- D. Jay Nwwmna

formatting link

Reply to
D. Jay Newman

Well, thank U everybody, the question now is : I'm using a 68HC11 MCU, how can I get the sonars output using the ICx input ?? Do I need to use one "pin-per-sonar" or there's a way to get the data without losing the direction (that is, the sonar !!) ??

Reply to
rasega

: The article sounds interesting, but I am using sonars that have : predefined firmware that can't be changed by myself at the : present time.

All this method does it determine the order and timing of when a range is started, which would be when you send the i2c range command to the SRF08. It shouldn't require any firmware changes. You'll know when it started, and you'll know when it ended by the value returned.

-Chris

Reply to
Christopher X. Candreva

You are using SRF04's, which don't have I2C output. This makes them more difficult to use, but you can use them with the techniques presented earlier in the thread.

-- D. Jay Newman

formatting link

Reply to
D. Jay Newman

The trouble is that the timing is fairly touchy. I would have to set parameters on the SRF08s that aren't normal for them.

I may try anyway when I have the time.

-- D. Jay Newman

formatting link

Reply to
D. Jay Newman

: The trouble is that the timing is fairly touchy. I would have to : set parameters on the SRF08s that aren't normal for them.

Then you obviously understand the paper better than I do. :-)

: I may try anyway when I have the time.

If you do, perhaps you could write up how you do it. A more concrete, implementation document.

Reply to
Christopher X. Candreva

The first part has been answered: use multiple, or mount them on a servo. The 2nd part is hard, as ultrasound is inherently tricky, the way it bounces around the room. But I'm not going to offer advice on that...

I mounted a transmitter and *two* receivers on a 10cm arm atop a servo, transmitter in the middle and receivers at the ends. I built a circuit like the SRF04 but with two receive channels, and programmed it from a 68HC11. It's possible to resolve an echo down to about 2 degrees with this system - that's well under one wavelength. I thought it was cool, but I haven't taken it further. I did think that with a third reciever mounted above you could get elevation info also. My system was limited to processing the first echo, but with more dedicated CPU grunt you could detect subsequent echos.

Clifford Heath.

Reply to
Clifford Heath

I *like* it. I'm going to have to experiment with some of these different sonar techniques.

-- D. Jay Newman

formatting link

Reply to
D. Jay Newman

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.