LIFT Hybrid Flying-Driving Robot

LIFT: Hybrid Flying-Driving Robot for Hazardous Environments

MPC Lab | 2024-2025 | Berkeley, CA

Team: Eric Pham Felix Hu Jeremy Chen Junyu Lu Max Freeman Show all

Advised by: Professor Francesco Borrelli and Fionna Kopp

Robotics Engineer / Team Lead

Delivered bidirectional ground-flight transformation, closed-loop MPC ground autonomy, and stable hover after post-report tuning.

  • SolidWorks
  • Ansys
  • ROS2
  • MPC
  • OptiTrack
Case Type Hybrid robotics case study
Technical Center Mechanical-control co-design, ROS2 MPC, OptiTrack validation
Outcome Delivered bidirectional ground-flight transformation, closed-loop MPC ground autonomy, and stable hover after post-report tuning.
Ownership Led mechanical design and team planning; co-developed the MPC controller with two teammates.

Hardest engineering problem: The controller could not be tuned independently because center of gravity, stiffness, joint alignment, vibration, and tether drag all changed the real hardware response.

Overview

LIFT is a hybrid robotic platform for hazardous-environment exploration, where a pure drone has limited endurance and a pure ground robot cannot cross gaps, rubble, or stairs. The project targeted a simpler single-drivetrain architecture instead of separate ground and flight drivetrains, trading some mode-specific optimization for lower complexity, lower weight, and easier field repair.

My Role

I led the 5-person cross-functional team and owned the mechanical side end-to-end: concept selection, frame design, FEA, 3D-printed fabrication, component selection, packaging, and test arrangement. I also co-developed the MPC controller with two teammates and coordinated milestones, decision matrices, and weekly reviews.

Key Results

  • Built a functional hybrid prototype in a 10-week sprint inside a 9-month capstone timeline.
  • Delivered bidirectional UAV-to-GAV and GAV-to-UAV transformation, with ground and flight modes independently functional.
  • Reduced frame mass by 17% while maintaining factor of safety above 2.0 in high-stress regions.
  • Integrated OptiTrack pose feedback into the ROS pipeline for closed-loop ground-mode MPC testing on hardware.
  • Continued flight tuning after report submission until the platform reached stable hover with joystick forward/backward control.

3D Model Overview

System Architecture

LIFT hybrid mechanical-control boundary with single drivetrain, ground mode, flight mode, mechanical disturbance inputs, and co-developed MPC slice
The hybrid boundary view keeps the platform story visible: Felix owned the changing physical system, while the ground-mode MPC slice was co-developed and depended on hardware factors such as center of gravity, stiffness, alignment, tether drag, and vibration.
LIFT ROS2 and MPC control architecture diagram
Public architecture view of the ground-autonomy loop: motion-capture pose became a ROS2 state estimate, the MPC node predicted a wheel command sequence, and hardware testing closed the sim-to-real loop.

Mechanical Platform

Single-drivetrain hybrid frame, 3D-printed packaging, foldable transformation arms, and thrust-tested motor/propeller selection.

State Feedback

OptiTrack rigid-body pose fed the ROS2 state layer for hardware MPC testing and trajectory logging.

Actuation

Ground-mode commands were reduced to left/right wheel velocities, while flight tuning stayed as a separate post-report push.

Software / Firmware Architecture

LayerPublic-safe roleEngineering reason
ROS2 launch/configStarted camera/IMU/GPS/state-estimation components for experiment runs.Kept sensor bring-up and controller experiments repeatable.
MPC nodeSubscribed to vehicle state and published scaled wheel-velocity actuation.Separated high-level planning from drive-by-wire actuation.
LoggingCaptured predicted trajectory, measured state, and control input traces.Made sim-to-real drift inspectable instead of anecdotal.

Control / Simulation Methodology

The control stack started ambitious: a higher-fidelity dynamic model with wheel torques and Pacejka tire contact forces. That model was sensitive to uncertain friction parameters and numerically fragile, so the team pivoted to a kinematic differential-drive model with planar-motion, no-slip, and rigid-body assumptions. It was less physically complete, but it was stable enough to run in real time and became the hardware validation model.

LIFT MPC model pivot from dynamic tire model to kinematic differential-drive model
The model pivot is the control-method story: the team traded theoretical tire fidelity for a model that could be tuned, logged, and trusted on changing hardware.
Model choiceWhy it was attractiveWhy it changed
Dynamic tire modelRepresented wheel torque, angular velocity, and tire-ground contact forces more directly.Friction and Pacejka parameters were uncertain, making the controller fragile for real-time testing.
Kinematic differential-drive modelUsed simpler planar, no-slip, rigid-body assumptions that could run predictably.Less physically complete, but easier to validate and tune on the changing prototype.
LIFT MPC validation loop with OptiTrack, ROS2, MPC, wheel commands, hardware tests, and logs
Ground-mode MPC testing became credible when the loop included measurement and logs: OptiTrack pose, ROS2 state, MPC prediction, wheel commands, hardware runs, and model updates.

This was not just a software decision. Center of gravity, joint stiffness, frame alignment, and tether drag changed controller behavior, so mechanical and control work had to move together rather than as a handoff.

Ownership boundary: I led mechanical design and team planning, while the MPC implementation was co-developed with two teammates.

Validation & Debugging

The main failure pattern was a sim-to-real gap: the controller reached goals in simulation but ran slower and less cleanly on hardware. We debugged it through repeated hardware-in-the-loop obstacle-course tests, then adjusted the prediction latency, mass/inertia assumptions, and tether-drag model together.

The engineering lesson was that no single parameter explained the failure. Latency, inertia, tether drag, and mechanical vibration were all moderate contributors.

What I Would Improve

For a v2, I would freeze the mechanical platform earlier: center of gravity, stiffness, joint alignment, and wiring layout should be stable before serious MPC tuning begins. I would also separate the ground-autonomy and flight-control validation gates more clearly, so each mode can mature without one unfinished subsystem obscuring the other.