Subject:
|
RE: Advice on Rotation sensors and steering please.
|
Newsgroups:
|
lugnet.robotics
|
Date:
|
Thu, 21 Sep 2000 15:17:48 GMT
|
Original-From:
|
James Laing <laing@unext.comSPAMCAKE>
|
Viewed:
|
603 times
|
| |
| |
Steve:
Check this page on Lego Dacta. It says 500 rpm Max.
http://www.lego.com/dacta/robolab/sensorspecs.htm
Jamie
-----Original Message-----
From: steve [mailto:steve]On Behalf Of Steve Baker
Sent: Thursday, September 21, 2000 8:41 AM
To: Lego Robotics
Subject: Re: Advice on Rotation sensors and steering please.
Andy Gombos wrote:
>
> In my experience setting the motor to off has worked best. Constantly check
> for differences in the counts. I was only using 2 sensors, and after 500 or
> so steps(about 15 ft), there was only a 1 count differenece.
So you tell your system to drive both motors forward and if you do nothing
else then you are only on count off! You must have better matched motors
than
mine! I see a 10 or 20% difference in their speeds that needs to be
corrected
to get the robot to go reasonably straight for even one foot!
If I unplug the RCX and connect both motors directly to the same battery
box,
the robot drives in a circle with about a 3 meter diameter. This is on a
very smooth, polished wood floor using the largest wheels+tyres that come
with the RIS and about a 2:1 step-down gearing from the motor to the wheels.
So, I certainly need to correct for this in software by monitoring the
rotation sensors.
Also, if 500 steps is 15 feet then you have about 1cm positional accuracy.
I must have very different gearing than you on the rotation sensors because
I'll want more accuracy than that for turning the robot. If my wheels are
10cm apart and I have a +/-1cm error in the position of each wheel then my
heading after a turn will be out by as much as +/- 10 degrees - even
assuming
there is no wheel slip or anything.
By making the rotation sensor turn at higher RPM than the wheel, I can
boost that accuracy. I was planning to gear the rotation sensors up so that
I'd get one count for every millimeter or so of forward motion. That's why
I'm concerned at the maximum rotation rate that can be managed without
the software 'missing' counts - because that sets the ratio of positional
accuracy versus top speed for the robot. I don't want to have to drive it
really slowly just to get the precision I need - but it may come to that
if the RCX software can't keep up with the speed of the rotation sensor.
I guess I could set up an experiment to work that out - but if someone
already knows - it would save time. (I was going to set up a rotation
sensor driven by a motor with a light sensor set up to check for when
the axle has gone through one exact 360 degree turn. Then I can spin
the axle at differing speeds for long periods and then stop, and rotate
the axle slowly forwards until the light sensor trips. Thus I can tell
when the rotation angle reported by the rotation sensor isn't an exact
multiple of 16 for an exact number of revolutions. That'll give me a way
to directly measure the error at various rotation speeds.
Of course that'll only work if the software counts individual 22.5 degree
steps...does it actually work that way - or are we talking about it missing
whole 360 degree rotations or something?
> The main factor
> in determining what happens is if the robot is perfectly straight or not. 1
> mm of non-straightness can lead to almost 1 foot of deviation at the end,
> relative to your reference line.
Hmmm - it's Lego - it's as accurate as the parts it's made of! Should I be
using more cross-bracing to ensure it's more rigid or something?
If the wheels are parallel, then I don't need to worry about a small
positional
error since (at least when driving in a straight line), that won't affect
the
final position or the rotation sensor counts.
If the wheels aren't parallel then they'll be slipping against the ground...
which will certainly introduce some positional error. I guess that some
basic construction tricks would help that. Things like mounting the wheel
axles to blocks which are in turn mounted onto one large plate - reducing
the number of lego-to-lego joints between one axle and the other.
I find it hard to believe that this is a big effect compared to the other
errors in the system.
--
Steve Baker HomeEmail: <sjbaker1@airmail.net>
WorkEmail: <sjbaker@link.com>
HomePage : http://web2.airmail.net/sjbaker1
Projects : http://plib.sourceforge.net
http://tuxaqfh.sourceforge.net
http://tuxkart.sourceforge.net
http://prettypoly.sourceforge.net
|
|
Message is in Reply To:
| | Re: Advice on Rotation sensors and steering please.
|
| (...) So you tell your system to drive both motors forward and if you do nothing else then you are only on count off! You must have better matched motors than mine! I see a 10 or 20% difference in their speeds that needs to be corrected to get the (...) (24 years ago, 21-Sep-00, to lugnet.robotics)
|
8 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
Active threads in Robotics
|
|
|
|