To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.roboticsOpen lugnet.robotics in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / 12013
12012  |  12014
Subject: 
Re: Autonomous Robot
Newsgroups: 
lugnet.robotics
Date: 
Tue, 8 Aug 2000 00:22:07 GMT
Viewed: 
807 times
  
in article 398D9DA5.300D416C@airmail.net, Steve Baker at
lego-robotics@crynwr.com wrote on 8/6/00 10:17 AM:

Mario Ferrari wrote:

"Mauro Vianna" <mauro_vianna@hotmail.com> wrote:

Although the idea of  vertical and horizontal lines seens good, I still
didn't figure out a good algoritm to deal with that. The light sensor
measures a mean light reflection. That means that if it over the edge of a
black light and a white paper, the reading could be the same as the one
from
a gray line. I confess I still didn't try that. Sometimes you must see the
robot working to figure out a solution...

You could measure transitions instead of single values. Sampling some reads
at a specified time interval should help you to recognize the situation.

It's true that when you're on the border of the tape your light sensor reads
an average value, but if you continue in the same direction you will finally
get into the middle of the tape and supposing the tape is large enough you
will read the pure tape color (reflection intensity). So what you have to do
is keep reading until you pass the maximum (minimum) value and store the
latter to decode the tape.


<regretfully snipped excellent discussion of using line following to find
bar codes for landmark recognition>

It would be nifty if you could detect bar codes without needing to follow a
line.  My initial thought was to make "bull's-eye barcodes" that put the
codes in concentric rings.  No matter which direction you approach one of
these targets you get the same code - as long as you pass straight through
the center.

The problem then becomes: suppose you don't go straight through the center
of the target? You'll get strange results as you pass through part of the
bar code.

So my next idea is to put down an array of spots, perhaps in a hex pattern,
that will give a fairly constant pattern of light/dark no matter which angle
you travel through it.  The surface of the Logitech TrackMan Marble has such
a pattern on it.  You'd watch the sensor for a bunch of light/dark
transitions in a short period of time.  If you got them you'd know you are
on the target.  You could use different reflective values (colors) of the
spots to tell different landmarks apart.  You don't know what direction
you're facing, though.

So my next next idea is to have a spot of the floor "feel" different from
the rest.  You could trail two wire feelers until they both touch a piece of
tinfoil and complete a circuit, triggering a touch sensor port.  If this
sensor is at the center of rotation of your robot, you could then spin in
place until you detect a mark or a bar code.  Now you know your location AND
your orientation.  If you don't want to use non-Lego feelers, you could
always drill a hole in the floor :) and have a fifth wheel sense when it
drops into the depression.  Alternatively you could use a second light
sensor looking down for the shiny tinfoil.  But that's too many sensors.

OK, let's look at the robot.

Differential drive, wheels not tracks (more precise turns)
Two angle sensors, for odometry
One light sensor, for looking for landmarks on the floor (out in front of
the robot)
One touch sensor, for impact detection (multiplexed with the light sensor)

Having a single light sensor makes landmark detection fairly tricky.  If we
can free up a sensor port for a second light sensor you can do some more
intelligent things, like the tinfoil sensor above.

It may be possible to do good odometry with only a single angle sensor.  Set
up a Dorst adder/subtracter and hook the angle sensor to it.  Normally this
would be used to correct the robot's course while it's travelling in a
straight line, but this loses information about how far it's traveled.
However, you could adopt a policy of only running one motor at a time if you
need to know how far you've moved - if you can live with your robot lurching
along left/right/left/right.  Of course if you don't care how far you're
going you can run both motors and go straight, such as when you're following
a line or headed for a landmark.

Assuming this works, you get another light sensor (and another touch sensor
too if you multiplex it).  You can use the second light sensor to look for
light sources, like laser pointers or strobe lights or bright windows or
bicycle reflectors.  Combined with landmark detection from the sensor
looking down at the floor, you should be able to set up a fairly robust
navigation system.

Big Huge Disclaimer: I haven't tried ANY of this stuff out yet.  It's much
faster to think up ideas than it is to test them.  Besides I'm currently
working on a legged robot, and it's hard enough without worrying about
navigation!

Hope this has been useful anyway.

Doug


--
Doug Weathers, http://www.rdrop.com/~dougw
Portland, Oregon, USA
Don't spam me - I know how to use http://www.spamcop.net
"On a clear disk you can seek forever"



Message has 2 Replies:
  Re: Autonomous Robot
 
I thought of another possibility for robot coordinate recognition. It's rather unorthodox, however, and requires some special equipment and setup to make it work. Still, in the interest of creative discussion... Building off the base station idea (...) (24 years ago, 8-Aug-00, to lugnet.robotics)
  Re: Autonomous Robot
 
(...) Yes - that's where I started thinking. It seemed to me that if the circle was large enough, odometry would put you inside the circle - then driving out of the circle in any direction would get you to cross all the bar codes. Presuming you use (...) (24 years ago, 8-Aug-00, to lugnet.robotics)

Message is in Reply To:
  Re: Autonomous Robot
 
(...) a (...) the (...) reads (...) Sorry, Mario, I still didn't figure out your proposal. Could you explain that better? Did you (or anybody else?) already did that? Maybe if I can understand better looking at the code, if available... (...) that. (...) (24 years ago, 6-Aug-00, to lugnet.robotics)

37 Messages in This Thread:

















Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR