NASA Lunabotics (2024)
During my sophomore year, I competed in NASA's lunar rover competition, "Lunabotics", an annual contest held at the Kennedy Space Center. Our goal was to present a lunar rover capable of autonomous navigation, sediment collection, and precise deposition, built entirely within a single school year.
overview
I worked under both the electrical and programming teams, bridging any gaps in the integration between the two. We used ROS 2 Foxy distribution to set up the logic structure for our robot, where I then oversaw and managed the addition of new electrical sensors into the system. Additionally, I led the development of the wireless localization system for the entire rover, i.e. figuring out where the robot is in space.
The project combined embedded hardware, indoor positioning, mechanical integration, and autonomous navigation into a single rover designed to operate in a lunar simulation environment.
Wireless Localization
In order to properly navigate the arena, we needed to ensure the robot had a positioning system robust enough to not get confused; this means we couldn't depend on either visual cues that could be obstructed by flying debris or odometry, which could be thrown off balance if the wheels were to slip. We also couldn't count on an IMU for orientation since those calibrate to a magnetic pole, something we were told not to depend on because we could not guarantee a strong enough magnetic field on the Moon.
Our solution was to set up a two-point triangulation system using the time of flight data coming off of multiple modified ESP32 modules. With ultra-wideband capabilities, we could use them to perform accurate real-time indoor positioning.
As shown in the diagram above, by setting up two modules serving as beacons on opposite sides of the robot, we could read the amount of time it would take for us to ping back both repeaters set in the deposition zone which would then give us a stable x, y coordinate in relation to them.
One of our biggest challenges with this system was keeping the signal steady, since there was a lot of variability with the data we would collect as well as interference from noise already in the air. We used some simple digital signal processing to clean up the incoming signal and took an averaged set of readings in order to smooth it out even more.
Custom Enclosure
To house the UWB hardware, I designed and 3D printed a custom enclosure that mounted securely onto the rover, protecting the electronics while allowing optimal signal transmission. This involved careful consideration of the mounting points, ensuring the enclosure did not interfere with the robot's movement, as well as dust protection from any sediments left floating in the air during the digging sequence.
[3 hours of sleep and an ungodly amount of Red Bull]
Competition Results
Our rover successfully completed the competition tasks, demonstrating reliable autonomous navigation and sediment handling. We placed in the top 10 out of 43 competing universities and received a 2nd place prize in the autonomy category thanks to our robot’s autonomous implementation.
Final Notes
This experience gave me a clearer understanding of the challenges of robotics engineering, especially in the context of space exploration. It also showed how important interdisciplinary collaboration is, since the rover’s performance depended on clean integration between hardware, software, and mechanical design.
For future improvements, I would focus on making the UWB system more robust against signal interference and exploring additional sensors to improve localization accuracy. Overall, this project deepened my understanding of robotics and gave me the chance to work alongside a team to bring a complex system to life.
credits
team: Vanderbilt Robotics
my role: electrical/software team member, UWB localization system, enclosure design
competition: NASA Lunabotics at Kennedy Space Center