Thursday, July 23, 2015

2015-07-23: Autonomy Incubator Intern Hits Bezier Curve Breakthrough

Lauren hits "take off" on her first AI test flight.

After nine week's worth of rigorous code reviews and teaching herself advanced mathematical concepts from academic papers, Autonomy Incubator (AI) intern Lauren Howell saw her work generating splines and Bezier curves for path-following algorithms take tangible form in the flight range yesterday. Lauren, an Aero Scholar from the University of Alabama's aeronautical engineering program, has shown an incredible dedication to her project throughout the summer—she learned both C++ and much of the high-level math required for her project as she went, and now has a robust program and an encyclopedic knowledge of splines to show for it.

Specifically, Lauren's program generates the control points to make UAVs using waypoint path-following navigation fly in smoothly curving, accurate paths. Joining waypoints by flying in straight lines causes overshooting problems, she said, as most vehicles can't make sharp turns in the air.  Think of it like a racecar skidding sideways out of control after taking a turn too hard; it's neither efficient nor safe. Out UAVs need to find and hold their Formula One line through each change in direction, and that's exactly what Lauren's software empowers them to do.

"You want to be able to connect [the waypoints] in a way that adheres to the dynamics of the vehicle," she explained.  By generating control points in gentle paths to connect the waypoints, the UAV can hit each waypoint while avoiding overshooting.

To generate her control points, Lauren used Bezier curves over each waypoint, joined by splines to create a "smooth, continuous trajectory."  Just look at how silky smooth the path that she generated for yesterday's test flight is:

The UAV takes off, flies a square path, then spirals up.

"The test flight was to show that my code will take in a given set of waypoints that you want the vehicle to fly through, and will use the algorithm in my C++ program to generate the control points that are implemented into the Bezier curve equation such that we get the desired flight path," she further explained.

So, how did her first flight go? Marvelously; just take a look at the video below. Notice how the entire intern population of the AI seems to be gathered around to partake in the glory.

After her initial success, Lauren analyzed the results from the flight and ran two more flight tests under different conditions to gather more data.

The usual suspects gather around: Meghan, Bilal, Lauren, and Javier.

Lauren, pensive, looks over her results.

The second flight test in action.

For her exit presentation next week, Lauren plans to make her demo a showstopper by including other work from around the AI.

"We want to integrate Meghan's gesture recognition software," she said. Lauren plans to use fellow intern Meghan Chandarana's program, which allows users to interact with UAVs through gestures that mean things such as "take off" and "move forward," to feed waypoint data directly into her curve generation program and create a flight path. Although no one in the AI is ready to say goodbye to Lauren, we have to admit that we can't wait to see what kind of engineering magic her demo will bring.

No comments:

Post a Comment