Subject:
|
Re: ANN: Article on dead-reckoning with a Mindstorms robot
|
Newsgroups:
|
lugnet.robotics.rcx
|
Date:
|
Fri, 31 Aug 2001 20:44:38 GMT
|
Viewed:
|
1878 times
|
| |
| |
In lugnet.robotics.rcx, Jerry Kalpin writes:
> In lugnet.robotics.rcx, Gary Lucas writes:
> >
> > This month's issue of the Seattle Robotics Society's
> > "Encoder" includes an article I wrote about my
> > RCX-based dead-reckoning robot. Last June, the robot
> > did pretty well in a odometry contest held by the
> > Connecticut Robotics Society ( http://www.ctrobots.org ).
> > The article discusses software issues related to
> > its operation.
> >
> > You may find the article at
> >
> > http://www.seattlerobotics.org/encoder/200108/using_a_pid.html
> >
> >
>
> Gary, I enjoyed reading about the project. I liked the article with all of
> the links to interesting backup material. The results are ...impressive!
>
> I have two questions: The subject model does not have a long fore & aft
> axis. Staying in the corridor depends a lot upon 'aiming' at startup. How
> did you do that? Also, how did the program 'know' where to begin a turn?
>
> Again, congratulations for your good results.
>
> Jerry
Jerry,
Thanks. I'm glad you liked the article. When I wrote it,
I was hoping that other robotics enthusiasts would be able
to adapt some of my techniques to their own dead-reckoning
problems. It's good to see folks taking an interest
in the material.
If you look closely at the pictures of the robot which accompany
the article, you notice that the axles extend beyond the
wheels. This was an accident (due to availability of Lego parts),
but a fortunate one. The axle "spurs" provide a perfect visual reference
for positioning the robot on the starting line. Furthermore,
a small error in orientation doesn't matter because the
since the Connecticut Robotics Society Odometry Course is a
closed loop and the goal is for the robot to end up where
it started. If not perfectly aligned, the robot may drift
near the walls, but there should be enough clearance that
it doesn't touch them. It doesn't matter that it follows
exactly the center path through the course, as long as it follows
SOME closed path that doesn't deviate enough to hit the walls.
Thus, there is a motivation for keeping the robot smaller
(so there's more clearance). Of course, at the
same time, a wider track (distance between wheels) helps reduce
the influence that errors due to sensor measurement and timing
will have on the orientation calculations.
The robot knows "where" to turn based on its measurements of
the distance that it has traveled. It has an estimate of
how wide a turn it will make ("expected turn radius" in the
code that accompanies the article), so it simply adjusts for
that and enters the turn accordingly. There's a diagram (figure 6)
near the bottom of the article that shows the geometry.
gary
|
|
Message is in Reply To:
5 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|