
Autonomous Car
Designing and building an autonomous mobile robot with real-time control, localization, and sensing, from system architecture to competition-ready deployment.
Role
Product Engineer
Industry
Robotics
Duration
2 months

Overview
This project challenged our team to design and build a fully autonomous mobile robot for a ROBA-style head-to-head game, capable of navigating a structured competition field, interacting with physical game elements, and operating reliably across multiple match scenarios. The system needed to support both autonomous behaviors and real-time manual intervention, while integrating sensing, control, actuation, and embedded software into a single cohesive platform.
We ultimately designed and built a two-wheel differential-drive autonomous robot powered by an ESP32, integrating Time-of-Flight sensors for wall following, Vive-based localization for absolute position awareness, PID-controlled motor actuation, and a Wi-Fi–based control framework to support seamless switching between autonomous and manual modes. The robot was engineered as a complete mechatronic system, with mechanical design, embedded software architecture, sensing, and control developed in parallel to meet competition constraints.
Our robot competed in a class-wide robotics tournament involving 27 teams, where it successfully system advanced to the quarterfinals!
Code Architecture
At a high level, the system consisted of a centralized state machine, non-blocking control loops, and dedicated sensing and control modules for wall following, absolute-position navigation, and Wi-Fi–based manual control.
Wall-Following Behavior
Implemented in C++ using three Time-of-Flight sensors (1 front-mounted VL53L0X, 2 right-mounted VL53L4CD) to maintain a consistent lateral offset from field boundaries.
The two side-mounted sensors were compared differentially to estimate angular misalignment relative to the wall, while the front sensor provided forward distance awareness.
Distance error relative to a 100 mm target offset was converted into heading corrections applied through PID-controlled differential wheel speeds.
This approach enabled sustained wall tracking without oscillatory drift, allowing the robot to follow long boundary segments as part of autonomous navigation routines.
Vive-Based Autonomous Navigation
Used two Vive photodiode trackers to provide absolute position and orientation estimates within the competition field.
Raw position data was filtered using a median filter to reduce jitter before being passed into the control loop.
Autonomous navigation was executed as a sequence of orientation alignment followed by translational motion toward predefined coordinate targets.
This structure allowed the robot to navigate to three distinct field objectives (low towers, high towers, Nexus) using closed-loop feedback rather than open-loop timing.
Wi-Fi–Based Manual Control
Implemented a Wi-Fi control interface by hosting an HTTP server directly on the ESP32.
Browser-issued commands were mapped to motor speed, turning, and mode-switching inputs in real time.
Manual control operated as a first-class state within the system’s state machine, allowing instant transitions between teleoperation and autonomous behaviors without restarting control loops.
This enabled live operator intervention during competition matches while preserving system stability and responsiveness.
Electrical Design
Power Architecture: Implemented a multi-rail power design separating logic and sensing electronics from high-current actuation, using dedicated battery packs and onboard regulation to power the ESP32-S2, DC motors, and MG90S servos independently, preventing voltage sag and electrical noise during aggressive maneuvers.
Actuation & Motor Control: Controlled the drive motors through an L298N H-bridge motor driver using PWM signals generated by the ESP32, while driving multiple servo actuators through dedicated PWM outputs to enable synchronized wiper motion and coordinated drivetrain control.
Sensor & Signal Integration: Integrated VL53L0X and VL53L4CD Time-of-Flight sensors over a shared I2C bus with unique addressing, alongside Vive photodiode trackers interfaced directly to the ESP32, providing clean distance and localization data for closed-loop navigation.


Mechanical Design
Chassis Architecture: Designed a modular, stacked chassis using laser-cut 1/8” MDF plates and custom 3D-printed mounts, providing structural rigidity, a low center of gravity, and organized placement of the ESP32, batteries, motor driver, and sensors.
Locomotion & Stability: Implemented a two-wheel differential-drive configuration with DC gear motors and rear support caster, enabling predictable turning behavior, smooth arc trajectories, and controlled in-place rotations during autonomous and manual operation.
Mechanisms & Packaging: Integrated a quad-servo wiper mechanism using four MG90S metal-gear servos and front-mounted Time-of-Flight sensors within the allowed footprint, ensuring synchronized actuation and unobstructed sensor fields of view during gameplay.

Head-to-Head Competition
Qualifying Match 1:
Quarterfinal Match:
Project Contributors:

Other projects

Arco: Transformable Desk for Small-Space Living
Arco is a configurable desk system designed for students living in small spaces, created to help people physically and mentally transition between modes throughout the day.

Biofluid Analyzer
Developing a compact bedside urine output monitoring system for critical care, from clinician pain point to deployed prototype and formal pilot study.

Orthopedic Product Development at Exactech
Led surgeon-driven instrument and implant development across CAD, DFM, testing, manufacturing, and 510(k) support through 7 concurrent projects.

Product Growth at PrimeEventZ
Leading product definition and real-world deployment of PrimeEventZ, an AI-powered platform unifying event operations from planning through execution at any scale.




