group shot of nine interns and Garry (one intern, Leo, is not pictured) in front of blimps, holding quadcopters and shiny cars

In the summer of 2010, I interned at NASA Langley Research Center in the Langley Aerospace Research Summer Scholars Program.

My lab established an Autonomous Vehicle Lab for testing unmanned aerial vehicles, both indoors and outdoors.

Overview

I worked in the Laser Remote Sensing Branch of the Engineering Directorate under mentor Garry D. Qualls. There were nine interns besides me - here's the full list, alphabetically:

  • Brianna Conrad, Massachusetts Institute of Technology
  • Avik Dayal, University of Virginia
  • Michael Donnelly, Christopher Newport University
  • Jake Forsberg, Boise State University
  • Amanda Huff, Western Kentucky University
  • Jacqueline Kory, Vassar College
  • Leonardo Le, University of Minnesota
  • Duncan Miller, University of Michigan
  • Stephen Pace, Virginia Tech
  • Elizabeth Semelsberger, Christopher Newport University

several quadcopters stacked up in a pile

Our project's abstract

Autonomous Vehicle Laboratory for "Sense and Avoid" Research

As autonomous, unmanned aerial vehicles begin to operate regularly in the National Airspace System, the ability to safely test the coordination and control of multiple vehicles will be an important capability. This team has been working to establish a autonomous vehicle testing facility that will allow complex, multi-vehicle tests to be run both indoors and outdoors. Indoors, a commercial motion capture system is used to track vehicles in a 20'x20'x8' volume with sub-millimeter accuracy. This tracking information is transmitted to navigation controllers, a flight management system, and real-time visual displays. All data packets sent over the network are recorded and the system has the ability to play back any test for further analysis. Outdoors, a differential GPS system replaces the functionality of the motion capture system, allowing the same tests to be conducted as indoors, but on a much larger scale.

Presently, two quadrotor helicopters and one wheeled ground vehicle operate routinely in the volume. The navigation controllers implement Proportional-Integral-Derivative (PID) control algorithms and collision avoidance capabilities for each vehicle. Virtual, moving points in the volume are generated by the flight management system for the vehicles to track and follow. This allows the creation of specific flight paths, allowing the efficient evaluation of navigation control algorithms. Data from actual vehicles, virtual vehicles, and vehicles that are part of hardware in the loop simulations are merged into a common simulation environment using FlightGear, an open source flight simulator. Evaluating the reactions of both air and ground vehicles in a simulated environment reduces time and cost, while allowing the user to log, replay and explore critical events with greater precision. This testing facility will allow NASA researchers and aerospace contractors to address sense and avoid problems associated with autonomous multi-vehicle flight control in a safe and flexible manner.

Articles and other media

In the media

On my blog

Videos

Most of the summer was spent developing all the pieces of software and hardware needed to get our autonomous vehicle facility up and running, but by the end, we were flying quadcopters! (Captions are below their corresponding videos.)

Credit for these videos goes to one of my labmates, Jake Forsberg.

Object tracking for human interaction with autonomous quadcopter

Object tracking for human interaction with autonomous quadcopter: Here, the flying quadcopter is changing its yaw and altitude to match the other object in the flight volume (at first, another copter's protective foam frame; later, the entertaining hat we constructed). The cameras you see in the background track the little retro-reflective markers that we place on objects we want to track -- this kind of motion capture systems is often used to acquire human movement for animation in movies and video games. In the camera software, groups of markers can be selected as representing an object so that the object is recognized any time that specific arrangement of markers is seen. Our control software uses the position and orientation data from the camera software and sends commands to the copter via wifi.

Autonomous sense and avoid with AR.Drone quadcopter

Autonomous sense and avoid with AR.Drone quadcopter: The flying copter is attempting to maintain a certain position in the flight volume. When another tracked object gets too close, the copter avoids. We improved our algorithm between the first and second halves of this video. Presently, only objects tracked by the cameras are avoided, since we have yet to put local sensors on the copters (the obstacle avoidance is done using global information from the camera system about all the objects' locations).

Autonomous quadcopter tracking and following a ground vehicle

Autonomous quadcopter tracking and following a ground vehicle: The flying copter is attempting to maintain a position above the truck. The truck was driven manually by one of my labmates, though eventually, it'll be autonomous, too.

Virtual flight boundaries with the AR.Drone and the Vicon motion capture system

Virtual flight boundaries with the AR.Drone and the Vicon motion capture system: As a safety precaution, we implemented virtual boundaries in our flight volume. Even if the copter is commanded to fly to a point beyond one of the virtual walls, it won't fly past the walls.

Hardware-in-the-loop simulation

Hardware-in-the-loop simulation: Some of my labmates built a hardware-in-the-loop simulation with a truck, and also with a plane. Essentially, a simulated environment emulates sensor and state data for the real vehicle, which responds as if it is in the simulated world.


0 comments

_My labmates, our mentor, our vehicles, and I_

On the last day of my LARSS internship, NASA EDGE filmed my lab for their Future of Aeronautics episode! It's currently up on NASA's main page in the "Podcasts and Vodcasts" section, and it's available both online and through iTunes. The opening montage has clips of my labmates and I, and the segment about our work starts at 19:18 and lasts three minutes.

I encourage you to take a look!


0 comments

Aeronautics Student Forum

Wednesday, August 4th. 10AM. The Aeronautics Student Forum.

My lab is lined up in the front row, fidgeting, exchanging nervous glances. We trade seats between the other students' presentations, taking turns with the laptop to read over the half-done powerpoint.

_four computers in a row on a table_

The motion tracking camera system is set up (we were in the building until 10pm the previous night, testing our hardware and software, ensuring it'd all be ready to demo). One of the cameras lurks beside the white screen, ominous, a constant reminder that it's our turn in an hour, and like or not, we don't have our finalized slides and some of us don't even know for sure whether we'll be speaking.

It was nerve-wracking.

It was also remarkably exciting.

Presentations, preparation, control

I usually plan presentations out to the last sentence. I know I'm not an improv whiz, so I practice my talk out loud over and over. Any slides I have, they're done at least two nights ahead of time. Practice, preparation, organization. No need to worry because I have everything under control.

This presentation at the aero forum was the opposite.

The previous week, to the relief of my labmates, I'd tried to organize everything (the slides, the talks, the demo). But our mentor, Garry, told us not to worry about any of it. He kept repeating that: don't worry. It's just a presentation.

_a white board covered in colorful diagrams_

None of us were convinced.

It wasn't until Garry sat down with me and explained what he had in mind--how he was going to help compile photos and diagrams into a logical order--that I trusted he was right. No need to worry. He had given scores of presentations. He had good ideas. He frequently pulled things together last-minute. It'd be okay.

In short, when he explained that, I consciously relinquished control. I mentioned control (and the lack thereof) in the context of volleyball games with my lab. The same idea comes into play here: Setting perfectionism aside, trusting that someone else is competent enough to get the job done. Teamwork. All that good stuff.

Coming together last-minute

Garry showed up not long after 10AM, printed copies of the finalized powerpoint in hand. As our time slot approached, my labmates and I shuffled discretely through the slides, still worried, still anxious.

Our turn came. We trooped up to the podium, all nine of us. We spoke. Twenty minutes, all told (not too long, really), plus the demo. We explained our newly established Autonomous Vehicle Lab, its capabilities, and what the audience would see in the demo. We flew our quadcopter. We demonstrated object tracking and obstacle avoidance.

It went well. It went better than well: our presentation was splendid.

Everyone knew what to say. Everyone was clear, concise, and comprehensible. Perhaps it was because we were not prepared that we were prepared: rehearsing, in our minds, coherent sentences about our parts of the project. Recapitulating our work with the quadcopters, the DGPS system, the Vicon cameras, the many vehicles and pieces of software. Unsure of what we would need to say, and thus, preparing for the worst.

If not for Garry's persistent "don't worry about it"s, I would never have experienced a presentation this way. I'd have planned out that talk and every one after, never daring take a chance on not preparing enough and not practicing enough. Now I know. Our aero forum talk was proof: Things can come together last-minute.

That said, I think I still like having my slides done more than an hour before the presentation. As engrossing an adventure as it was, last-minute isn't going to become my style.


0 comments

An awesome NASA summer internship

me standing in front of the NASA meatball logo

Summarizing 10 weeks is difficult in any circumstances, but when those weeks are spent as an intern in the Langley Aerospace Research Summer Scholars program, working at a NASA center with a ton of awesome people, it's even more difficult.

But I'll try.

I worked with a systems engineering team to develop and integrate the software and hardware needed for comparable indoor and outdoor tests of autonomous, unmanned multi-vehicle flight control.

In plain English, that means we were developing ways of testing flying robots both inside and outside.

Ten interns, including me, were in the lab on workdays. That was not counting our mentor, Garry D. Qualls, or the slew of friends and colleagues who drop by on a frequent—if irregular—basis. Most are engineers of some variety; the others are pursuing degrees with the word "computer" in the title.

Me, I'm a cognitive scientist.

I hail from Northern California and attend Vassar College in Poughkeepsie, N.Y.

Although my academic focus has been on embodied agents and robotics applications of cognitive science, I've studied with Vassar's multidisciplinary stew of psychologists, biologists, philosophers, anthropologists, and computer scientists.

During my first week at Langley, it quickly became clear to me that my coursework had not prepared me to do all the things my lab's engineers could do. I had not studied mechanics, controls or circuits. I was not a whiz at soldering, nor did I understand the intricacies of aeronautics.

What I could do, however, was be versatile.

I programmed microcontrollers in C and C++, then switched to Java to write code to parse and display real-time data. I evaluated possible ground control station software options, dug through an open source flight simulator and covered the lab's white boards with organizational diagrams. When it was time to develop communication links between more than six different programs, I eagerly helped decipher network protocols and data packets.

I even chased our miniature Parking Lot Exploration Rover across the pavement in 105-degree weather while testing a navigation algorithm.

Most of my time at Langley, no matter what the activity, was spent learning. My lab mates have remarkable skill-sets, and we're all willing to share our expertise.

Our electrical engineers taught me not to fear wires and breadboards. I began to understand the theory behind PID (proportional-integral-derivative) controls with the help of our aerospace engineers, drawing on distant memories of calculus and knowledge of behavior-based robotics algorithms.

In return, I helped lab mates sort through debugging messages and null pointer exceptions, while occasionally spouting interesting facts about brains. I spent some quality time with software. I'm graduating from Vassar in the spring with a minor in computer science in addition to my cognitive science major. This summer's work has solidly demonstrated that knowing the syntax isn't the same as using it in meaningful ways.

But working in Garry Qualls' lab is not just about acquiring technical skills and applying knowledge learned in classrooms.

With so many interns tackling parts of the same project, communication is crucial. We've all had to learn to deal with each other. Our respective idiosyncrasies and backgrounds sometimes make that difficult. More than once, I found that a lab mate was simply looking at a problem from a different point of view than I was—a view that, prior to our disagreement, I hadn't thought to question.

I enjoyed having the opportunity to re-examine my perspective and those previously unrecognized assumptions.

This summer has been fantastic. I got to see my lab transition from conducting chaos to smoothly functioning as a team as we worked together to establish an autonomous vehicle testing facility.

Inside, an infrared camera system tracked the vehicles. Data from this system and from the vehicles was fed to navigation controllers, a flight management system and real-time visual displays. Outside, after we swapped the camera system for a differential GPS system, we could run the exact same tests with the vehicles.

My experience as a LARSS intern has been inspiring. I'm not entirely sure where I'm headed next—graduate school, that enigmatic first job after college, writing the next great sci-fi novel—but it'll have to be fantastic to beat this summer.

This article originally appeared on NASA Langley Research Center Researcher News, August 18, 2010


0 comments

_me, in the lab, in front of a computer_

In late July, a solicitation went out to all the Langley summer interns requesting that ten or so people write articles about their summer experiences. It arrived in my inbox alongside the usual selection of notifications, casual correspondence, and informative messages about upcoming activities. I almost passed it by, thinking someone else will respond. It occurred to me, however, that I know how to write. I could thread a story of my summer experiences into an entertaining and cohesive narrative of 500-750 words. So I did.

The article I wrote about my LARSS internship for the Langley Researcher News is up at An Intern's Story: A Time to Test Flying Robots.

I encourage you to take a look!


0 comments