2021 Aeronautics and Astronautics Community Research Experience Showcase
AACREs 2021 Research Showcase
Before AACRE [Stanford Engineering’s Aeronautics and Astronautics Community Research Experience], print(‘hello world’) was most of my Python repertoire, I’d only just finished Calculus, and I’d never heard of UWBs, the Ultra WideBand tracking sensors that have since dominated my waking thoughts. If you hadn’t heard about them either, that’ll change: UWB is in vogue, showing up in the development of new smartphones, cars, medical tech, and other devices, largely as an improvement over GPS, Bluetooth, and Wifi.
I joined the Stanford NAVLab, and one of Professor Grace Gao’s projects at the cutting-edge of sensor fusion, the goal of which is autonomous tandem drifting [with cars—i.e., fast, furious, just what it sounds like!]. Aside from being intrinsically rad, this represents a milestone that has never been reached before—a system fast, accurate, and precise enough that cars skidding around a racetrack can reliably avoid collisions. A highly dynamic edge case like this isn’t just fun, but has wider applicability when it comes to creating autonomous navigation systems that we can trust to function in unexpected scenarios.
During my first week—primarily doing literature review on error characterization—it took ten google searches to even begin to understand one sentence of an abstract. By the end of the first month I had, among other things; written reports on papers I’d worked hard on understanding; made a GitHub repository of unit tests I’d written from scratch to clean and analyze data; done in-person test driving in a Frankensteined vehicle to collect location and motion data; attended technical webinars; built rapport with my advisor and mentors; and profoundly expanded my technical vocabulary. The program rewards, and demands, being self-motivated over having prerequisite knowledge. There is an abundance of both support and freedom, pliable ceilings, and tons of room for customization—I’ve leveled up more this one summer than over last year’s full-time STEM course load. AACRE offers so much more than a looks-good-on-paper opportunity.
Nazih (Ned) Bitar
When I joined the Aeronautics & Astronautics Community Research Experience (AACREs) program, I worked with Professor Mac Schwager in the Multi-robot Systems Lab (MSL). I had plenty of experience building and racing multi-rotor platforms, specifically quad-rotors – but I didn’t know just how many new skills I would learn with MSL to help drones avoid crashing.
As drones fly they need to dodge buildings, trees, and even people to avoid smashing themselves to pieces. Working with Professor Schwager we explored how to help drones ‘see’ and ‘think’ to avoid collisions. I paired up with a graduate student of the MSL Lab, Adam Caccavale, and we worked to develop software that helps drones navigate safely using Visual-Inertial Odometry (VIO). It sounds like a simple task, but the issue is that racing drones design follows a very bare-bones philosophy - they are designed to be ultra light-weight and fast. I had to find a way to extract data from the drone. My day-to-day tasks varied throughout the project, and my first day consisted of just trouble-shooting and diagnosing issues to get the quad-rotor off the ground; installing new rotors that would produce enough thrust to lift the drone and the camera, and designing and 3D printing a custom frame to hold the camera steady. Finding the VIO package was the easy part, but getting it to work was the biggest challenge - it required me to learn many things I was not familiar with before; installed and using Linux, a ROS (Robotic Operating System), and C++, and Python. After two weeks of dead-ends and failures, including a hard-drive failure, I finally succeeded, and was able to compile a ‘ROS Bag’ using a test set of data, to help the drone understand what it was ‘seeing’.
During my time in the AACREs program, I found that research is like a black box – until you explore the data, you don’t know what you are going to learn. By exploring how to help drones ‘see’ with a camera, and ‘think’ to avoid crashing, I also discovered how to code in Python, 3D print parts, and even rebuild a hard drive’s lost data – and that’s just all part of a day’s work to help drones crash less.