Polaris leaving the rail under power
Tristan Yan-Klassen
Photo by Ellena Arthur

Tristan Yan-Klassen

Interests include rocketry and robotics; guidance, navigation, and control; and physics and mathematics.

Resume

About Me

I'm a mechatronics engineering student at the University of Waterloo and the GNC Lead for the Waterloo Rocketry Team.

I developed the navigation and control algorithms for Polaris, which flew to 63,497 ft, setting the amateur record for highest flown active control system.

Building
GNC at Waterloo Rocketry
Studying
Mechatronics Engineering
Based in
Waterloo, Ontario

Experience

  1. GNC Lead

    Waterloo Rocketry

    Sep 2024 – Present

    Waterloo, ON

    Developed supersonic roll control for Waterloo Rocketry's Polaris rocket, setting the amateur record for highest flown control system.

  2. Surgical Robotics Intern

    Revolve Surgical

    May 2026 – Aug 2026

    Toronto, ON

    Developed controls for an autonomous surgical robotics platform to bring affordable robotic surgery to operating rooms everywhere.

  3. Robotics Engineering Intern

    Hacksmith Industries × Waterloo RoboHub

    Sep 2025 – Apr 2026

    Cambridge, ON

    Developed an affordable collaborative robot system in partnership with Waterloo RoboHub for industrial and consumer use.

  4. Engineering Intern

    Oxygen8

    Jan 2025 – Apr 2025

    Vancouver, BC

    Designed wire harnesses and automated wiring verification hardware for energy-recovery HVAC units.

  5. BASc Mechatronics Engineering, Applied Mathematics Minor

    University of Waterloo

    Sep 2024 – Apr 2029

    Waterloo, ON

    First in Class Engineering Scholarship recipient with a cumulative average of 96%.

Portfolio

Polaris on its stands before the flight, canards and fin can at the aft end
Waterloo Rocketry

Supersonic Roll Control

Aerodynamic roll control of a supersonic sounding rocket.

Watch on YouTube

I designed the canard roll control that flew on Polaris to 63,497 ft, setting the records for both the highest flown amateur control system and the highest flown amateur liquid rocket.

For the control law I used an adaptive linear-quadratic regulator (LQR), scheduling its gains on live lift coefficient and dynamic pressure estimates, and it held through canard lift reversal in flight. That lift coefficient came from a Kalman filter I ran on roll dynamics and encoder feedback, so the controller adapted to uncertain transonic and supersonic aerodynamics.

I implemented the navigation extended Kalman filter (EKF) on hardware with multi-rate fusion and sensor failure handling. It held roll rate control through the loss of 3 of 7 sensors in flight, multi-g airframe vibration and transonic barometer corruption.

Polaris lifting off the rail, the plume filling the pad
The hardware-in-the-loop bench: a flight module beside its live controller plots
Waterloo Rocketry

ClosedRocket

6-DoF flight simulation environment for rocket GNC development.

GitHub

I built the plant model across all six degrees of freedom, with aerodynamics, atmosphere, backlash and bench-characterized sensor models, and validated it against past flight data and OpenRocket. I characterized the actuator with step and frequency sweep testing and fit a transfer function to the measured response.

I then extended it for hardware-in-the-loop testing, running autocoded firmware on an STM32-based flight computer over serial, which caught filter initialization and state machine bugs before flight.

Across 2,000 Monte Carlo cases I dispersed airframe asymmetries, canard control authority and the onset of canard lift reversal, holding the 95th-percentile roll rate below the roll–pitch resonance (coning) frequency.

Simulink model: the rocket plant block feeding attitude, rates, velocity and sensor outputs into the processor software-in-the-loop block, whose command comes back round to the plant
The estimator board in hand, running against live attitude and sensor traces
Personal project

Inertial State Estimation

Real-time attitude and altitude EKF on custom STM32 hardware.

GitHub with Video

I derived the extended Kalman filter (EKF) over attitude quaternion, gyro bias and vertical dynamics, leaving out the horizontal states that are not observable from this sensor set. I fused the inertial measurement unit (IMU), magnetometer and barometer at independent rates, and rejected accelerometer orientation updates during motion so linear acceleration could not degrade the attitude estimate.

I took the measurement covariances from bench-measured sensor noise and tuned the process noise on logged runs, then checked covariance consistency both ways: normalized innovation squared (NIS) on telemetry from the autocoded STM32 firmware, and normalized estimation error squared (NEES) against a Simulink truth model. That traced a 2x attitude overconfidence to accelerometer bias.

The estimator board running: the display reads out roll, pitch, heading and altitude beside the IMU and barometer breakouts
The collaborative arm's linkage, guided by hand
Hacksmith Industries × Waterloo RoboHub

Collaborative Robot Arm

Haptic teleoperation, target tracking, and teach-and-repeat modes.

I wrote the inverse kinematics solver for the arm's six degrees of freedom, biased toward a consistent solution branch, so the arm never flipped configuration mid-motion during teleoperation. Near the wrist singularity I blended the primary Jacobian controller with a secondary one returning the wrist toward neutral, which removed the orientation wobble on paths through it.

For force-feedback teleoperation I integrated a Haply Inverse3 over ROS2, estimating force from motor currents through the Jacobian and scaling position and orientation independently about the axis of rotation.

For tracking I combined ZeroKey ultrasonic positions of the target and the arm base and planned camera motion in task space, so the subject stayed framed while both were moving.

I also built a teach-and-repeat mode that lets operators record, edit and replay motion sequences.

The arm on the bench, reaching out over the work surface with a cinema camera mounted at the wrist
Fallout Pip-Boy replica
Hacksmith Industries

Fallout Pip-Boy

Co-hosted a Hacksmith YouTube episode with over a million views.

The CanSat lander open on the bench beside the finished lander standing in the field
Team Aphelion CanSat

CanSat Lander

Won national competition and represented Canada at the European Space Agency.

Physics Team Canada with their medals at the European Physics Olympiad

Awards

  1. European Physics Olympiad Bronze Medal · Physics Team Canada
  2. Canadian CanSat Design Challenge Represented Canada at the European Space Agency
  3. Canadian Physics Olympiad 2× Invitee
  4. Canadian Mathematical Olympiad 2× Invitee