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 / 5789
5788  |  5790
Subject: 
Re: Homing with the IR Tower
Newsgroups: 
lugnet.robotics
Date: 
Fri, 23 Jul 1999 22:35:36 GMT
Viewed: 
1099 times
  
In lugnet.robotics, Hao-yang Wang writes:
A while ago I was intrigued by the soda can retrieval challenge.

I'm glad to hear that I'm not the only person who's still trying to solve
Joel's challenge.  It sounds like you've made some great progress!

Since then, however, the project has essentially stalled, for two reasons: 1)
On March 23 our son, Linus, was born;

Congratulations!  Another Lego Fan is born!

2) I bought Mindstorms for robotics, but
then Mindstorms brought me out of my dark age, and now ironically I find
myself spending most of my precious spare time play Lego, not Mindstorms.

Same here!

<snip!>

The robot is a standard two-track design. It has two motors, each drives a
track with a 1:3 gear reduction. It uses two rotation sensors as tachometers
to maintain its heading. The rotation sensors are not connected to the motors,
but to two unpowered wheels. This way the rotation sensors still detect the
actual movement of the robot even when the tracks are slipping. The wheels are
suspended in a way that maintains their contacts to the ground even on an
uneven terrain.

I had considered switching to a tracked design also, and thought of using this
approach of having non-driven encoder wheels in contact with the ground.  I
had trouble getting the wheels to maintain solid contact so I put it on hold.
I was trying to spring-load my wheels to hold them on the ground, but it
sounds like you're having better luck just using old-fashioned gravity?

Do you find that you are able to get fairly accurate odometry using this
approach?  I think the entire Mindstorms community could benefit from somebody
figuring out how to track linear motion and turns reliably.

My latest design uses a six-wheel drive setup with three wheels on each side
which are direct-geared to spin as one.  I have found this to be much easier
to work with than the tractor treads so far, and it grips so well, I half
expect it to climb up a wall while I'm not looking!  For now, my encoders are
driven directly off the wheels, but I plan to eventually incorporate some kind
of free-floating odometry wheels if I can get them to track properly.

1) Can detection. I have an interesting idea of detecting soda cans using
Dennis Clark's IRPD: The robot wanders around. When it detects something in
the IRPD, it does a bit of wall-following. (See my earlier post
<http://www.lugnet.com/robotics/?n=4527>.) From the readings of its two
tachometers, the robot can deduce the shape of the "wall". If the "wall" is a
cylinder with a diameter in a certain range, then it may be a can.

This is similar to my latest approach.  I'm using an IR-radar "ping" to locate
the can.  When I'm close to (and directly facing) an object, I turn a few
degrees left and right, comparing the ping values to either side of the peak
reading.  I'm still trying to tune the heuristic, but the idea is that if the
ping is much lower on _both_ sides, it's probably a can.  If _either_ reading
is comparable in magnitude to the center peak, it's probably a wall.  (Since
my odometry isn't anywhere near perfect yet, I'm trying to minimize any
movement during this process.)

2) Number of sensors: Now we have two rotation sensors as tachometers, one
light sensor to detect the floor marks, and one IRPD to detect the soda
cans... Oops. None of these sensors can share the input port with each others.
I plan to connect the floor mark detector and the can detector to a 2-way
power splitter (See <http://www.lugnet.com/cad/dat/?n=141>.) Depending on the
claw position, only one of them is active. So IRPD is on when the robot is
seeking for cans with its claw down, and the light sensor is on when the robot
is bringing back the can with its claw up. (We may need additional touch
sensors for the operation of the claw, but these touch sensors can share ports
with the active sensors, in particular the robot does not move when it uses
its claw.)

3) Alternatives to RCX. Maybe we should switch to something with more input
ports. Maybe mini-board. If I use Cyber Master, I can free up the two ports
taken up by the tachometers, but then I cannot use the IR unit, the light
sensor, and IRPD. If I mount RCX on top of Cyber Master, how do I make them
communicate with each others? (See, I am trying to find excuses to justify
buying a set of Cyber Master.)

One theory I've heard on this forum (I never heard how well it worked...
anyone?) is to connect a motor output (from the RCX) up to a sensor input (on
the CyberMaster) and then reading the ON/OFF state of the motor as if it were
a simple touch sensor.  It sounds like you don't have any spare motor outputs
on the RCX, but maybe you will if you can delegate some motor control to the
CyberMaster?  It would still be pretty tough to use this for any real robust
communication between the two devices, but you might be able to get this
working.  Just be careful not to burn up your RCX and/or CyberMaster!

4) Bumper. Currently the robot has no bumpers. It uses the tachometers to
detect obstacles. (If the motors are running, but the tachometers do not
change, then the robots must have bumped into something.) This way an obstacle
is detected only after the robot has crashed into it, which makes me quite
uncomfortable. I may add bumper(s) into the design. It is a bit tricky to have
the bumper coexist with the claw.

I didn't rely on bumpers in my design because I am working with empty soda
cans.  The can would get plowed over long before the sensor got tripped.  So I
use IR-radar for all obstacle detection / avoidance.  This assumes that the IR
transmitter and the light sensor are on the front of the robot as it moves
forward.

2) The claw should not obstruct the IR unit. I may put the claw on the other
end of the robot.

I had this problem as well.  In my design, the arm must be raised out of the
way before the IR has an unobstructed forward view.  For me, this is not a
problem because I only lower the arm when I've found a can, and only for long
enough to pick the can up and out of the way again.  Because of the arm
geometry, this requires a small amount of blind navigation, but it works OK as
long as the distances are fairly short.

Good luck with your project!

- Chris.



Message has 4 Replies:
  Re: Homing with the IR Tower
 
(...) So far I have been using the tachometers mainly to find the mid-point of the signal band, so they don't have to be too accurate. The need of accuracy will arise when I use them for soda can detection. Let's see. I have posted my current design (...) (25 years ago, 24-Jul-99, to lugnet.robotics)
  Re: Homing with the IR Tower
 
(...) All you need is to put a differential between the wheels. If those wheels need to have traction, all you have to do is to apply the force to the differential itself and the differential will distribute the traction for the two wheels like a (...) (25 years ago, 26-Jul-99, to lugnet.robotics)
  Re: Homing with the IR Tower
 
(...) I'm intrigued too by Joel's challenge. This was the reason for I started my experiments with odometry months ago. The problem is always the same: much more projects in mind than time to carry them out :-) <snip!> (...) motors, (...) are (...) (...) (25 years ago, 27-Jul-99, to lugnet.robotics)
  Re: Homing with the IR Tower
 
(...) I've built a PC program for the CyberMaster that pools the integrated tachometers continuously and shows the trajectory of the bot in the PC screen. It uses _tracks_, and I've found out that besides one of the tracks runs a bit better than the (...) (25 years ago, 27-Jul-99, to lugnet.robotics)

Message is in Reply To:
  Homing with the IR Tower
 
A while ago I was intrigued by the soda can retrieval challenge. Particularly because at that time I had built two different designs of grip-and-lift claws: The first is based on the bar-code truck claw. It uses the flex system and lifts things (...) (25 years ago, 23-Jul-99, to lugnet.robotics)

23 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