What I set out to build
Autonomous-vehicle software is difficult to develop if every test requires the physical vehicle. The team needs a simulation environment where software can interact with a useful model of Tethys before it is trusted on hardware.
My contribution
- Worked with the ROS 2 development environment.
- Contributed to Gazebo simulation work for Tethys.
- Worked inside a multi-person robotics software team.
- Helped with tooling and software needed for simulation-driven development.
Problem & approach
My work has mainly been around the software and simulation environment. I have been getting comfortable with ROS 2, Gazebo, Linux, team workflows, and the tooling needed to connect simulated components in a way that supports development and testing.
How it works
- 01
Model Tethys
Represent the vehicle and environment inside Gazebo.
- 02
Connect ROS 2
Expose simulated components through ROS 2 interfaces.
- 03
Run software
Run software against those interfaces instead of requiring the physical AUV.
- 04
Test in simulation
Use the simulation to develop and debug autonomy/perception-related software as the project evolves.
Data & evaluation
How it was evaluated
The current work supports development and testing in simulation. Physical-vehicle and competition performance are not reported here.
Progress so far
- Ongoing
- Team development
- Simulation
- Validation environment
- Ongoing RoboSub 2027 engineering work; progress is best shown through simulation artifacts and implemented components rather than a single metric.
Limits & lessons
Limitations
- This is ongoing software and simulation work within a multi-person robotics team. It does not establish physical-vehicle or autonomous competition performance.
What I learned
- This project has forced me outside normal application development. Timing, sensors, physical assumptions, and message interfaces matter much more when software represents a real vehicle.
Next steps
- Keep expanding the simulation environment as the real vehicle develops.
- Improve repeatable testing around ROS 2 nodes.
- Contribute to more perception/autonomy work as the software stack matures.
