Localize itself in a room.

Say we have a wheeled robot with the following sensors; * Wheel encoders * Two sonar sensor in the front and two at the rear
* Touch sensors (bumbers) on four sides of the robot * Forward looking color camera 320x240 pixel * Optional rotating laser bearing only (no range) sensor returning the bearing of the laser reflector strips fixed to various corners of the indoor environment
How one can use these sensors to accuratelly localize the robot in an indoor environment?
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Michael <MichaelMich> says...

The laser bearing sensor alone is all you need.
On one wall put two reflectors side-by-side so it can tell it apart from the rest, and on the other three walls put single reflectors. Then triangulate. (two reflectors are enough but four lef you get out of sight of one or two of them).
You can preload a map of the room or use the other sensors to build one as the robot moves around.
--
Guy Macon, Electronics Engineer & Project Manager for hire.
Remember Doc Brown from the _Back to the Future_ movies? Do you
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Dear Group

I think you will find that 3 measurements are necessary. For somebody who does this in a professional way: www.ndc.se
Sjur
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

My error. I was thinking "three" and typed "two." Thanks for the correction.
--
Guy Macon, Electronics Engineer & Project Manager for hire.
Remember Doc Brown from the _Back to the Future_ movies? Do you
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
"Indoor environment" doesn't necessarily means a single room but a maze of halls, rooms and corridors. Which means that bearing only solution must be somehow intelligent to figureout which reflectors are detected. I'm not not expert on this topic but I beleive you should also use the other sensory information and fuse them together. But I do not know how..

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Michael <MichaelMich> says...

Excellent point. Here is one way; put up closely spaced rows of reflectors, spaced so that the detector can tell them apart even at an angle. Like so: (R = reflector, - - no reflector)
Location 1: - - - - - R Location 2: - - - - R R Location 3: - - - R R R Location 4: - - R R R R Location 5: - R R R R R Location 7: R R R R R R Location 8: R - R R R R Location 9: R R - R R R Location 10: R R R - R R Location 11: R R R R - R Location 11: R - - R R R Location 11: R R - - R R Location 11: R R R - - R Location 11: R R - - - R Location 11: R - - - R R
Note that the sensor can't tell "- - - - R R" from "- - R R - -" and can't tell "- - R R - -" from "- - R - R -" seen from an angle or a greater distance, so you can't use all possible combinations. You must avoid any that can look like an existing one by shifting to the left or right or by shrinking/expanding.
--
Guy Macon, Electronics Engineer & Project Manager for hire.
Remember Doc Brown from the _Back to the Future_ movies? Do you
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Sun, 23 May 2004 12:43:10 -0700, Guy Macon <http://www.guymacon.com wrote:
None of this reflector stuff is practical
But the excercise reminds me of the old text adventure games where the computer describes a room, and you had to draw a map of it, then the adjacent rooms just so you can remember where you are at.
have the robot do the same thing
the wheel encoders will be immensely helpful for this
either you want to:
a) map and remember a familiar area b) navigate unfamiliar or changing territory c) solve mazes
which is it?

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Evidence, please.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hi Folks,
I've been following this thread/line of thought very closely; correlating available information from multiple sources is definately the best way to go, and I have some ideas . . . ;-)
-KC.
Michael wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hi Folks,
I've been following this thread/line of thought very closely; correlating available information from multiple sources is definately the best way to go, and I have some ideas . . . ;-)
-KC.
Michael wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.