Wall Following Algorithm for Sonars

Hi, I've been looking around for some algorithms for sonar wall following, although I've not really found anything useful....yet. I've see a few basic ones which go something like:

IF (LEFT_SONAR_DISTANCE < MIN_WALL_DISTANCE) THEN WHILE(LEFT_SONAR_DISTANCE < MIN_WALL_DISTANCE) MOVE AWAY FROM WALL

IF (LEFT_SONAR_DISTANCE > MIN_WALL_DISTANCE) THEN WHILE(LEFT_SONAR_DISTANCE > MIN_WALL_DISTANCE) MOVE TOWARDS WALL

IF (LEFT_SONAR_DISTANCE == MIN_WALL_DISTANCE) THEN MOVE FORWARDS.

My Robot's is a standard 1/2 sonar ring arrangement at the front. With

3 Sonar's on the left side, 1 at the front and 3 moving round the right side.

I'm aware that there can be problems with angular reflections, but I would like to try and utilise as many of these sonar's as possible to achieve this task. Does anyone have any suggestions on either successful methods or where to look.

Thanks in advance.

Regards

Mark

Reply to
Mark
Loading thread data ...

Joe Jones has a nice algorythm in his new book "Robot Programming, A Practical Guide to Behavior-Based Robotics. Ch 5 pg 126.

And you can play with it in simulation on Daniel Roth's site:

formatting link
One very interesting thing Joe mentions is, "A somewhat subtle detail ... is that the measurement point must lead (or follow) the robot's center of rotation by some amount. Were the range sensor mounted on the same axis as the wheels, we would find that the measured distance offers no hint as to which way to turn to achieve alignment."

You may need a couple of your ring sensors to get a "projected" image of the wall orientation.

Randy

formatting link
Objects in Mirror are more confused than they appear

Reply to
RMDumse

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.