Skip to content

Algorithm to pilot Neato through labyrinth for Quantitative Engineering Analysis class

Notifications You must be signed in to change notification settings

NathanShuster/QEAGauntlet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QEAGauntlet

Gauntlet Challenge

Nathan and Corey

5/6/18

Challenge #1:

Final Video: https://youtu.be/t2qowOb-j0g

Time: 8.61 seconds

Simple challenge, simple strategy. First, turn the neato to face the bucket, then full steam ahead until collision with the bucket. It worked on the first try so we didn’t explore any alternatives.

Challenge #2:

Final Video: https://youtu.be/fIm2P4WUpow

Time: 11.76 seconds

We used a preplanned path composed of two checkpoints and the final BoB. We broke the problem down and solved it with a straightforward pattern: turn to next point, drive forward the euclidean distance to that point, then, after arrival, turn to face the following point. Rinse and repeat. While we preplanned the checkpoints, angles and distances were not hard-coded so our algorithm could’ve been used to navigate between any set of points.

Challenges we encountered were primarily centered around calculating what angle to turn to face the next checkpoint. We needed to take into account current orientation to find the angle to turn to face the second point--this in particular proved more challenging than expected. Our solution was to take the angle between the two points in the xy plane (generated by arc tangent) and then subtract our orientation (in the xy plane, calculated by summing up previous turn angles) to get an angle to feed into the turning function. A bug related to this that we had to fix was using y/x for arctan, when, due to the heading of the neato, x/y was actually correct (see code for more details).

About

Algorithm to pilot Neato through labyrinth for Quantitative Engineering Analysis class

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published