testing grounds, not the final site yet

Active fin stabilization canard system

Rice Eclipse Rocketry · Avionics-Mechanical subteam · Aug 2025 to present

Four canards near the nose of the rocket, each driven by its own servo, that deflect in flight to correct pitch and roll. The flight computer decides the angles. The mechanical side is mine. I designed the canard actuation mechanism and its housing in Onshape, from the torque path to the module packaging, and I own the CAD on this page.

[placeholder: photo] file: assets/afs/module-photo.jpg
The module as built. Four canards on ball-bearing shafts in the top plate, servos and linkages in the printed cage below.
[placeholder: turnable 3D CAD] file: assets/afs/canard-mechanism.glb
In Onshape: right-click the assembly tab, Export, format glTF, binary (.glb). Keep it under 20 MB. An exploded configuration as a second file (canard-mechanism-exploded.glb) would be a nice bonus.
Current iteration of the canard actuation mechanism. Drag to rotate, scroll to zoom.
[placeholder: turnable CAD, iteration 1] file: assets/afs/canard-mechanism-v1.glb
Iteration 1, for comparison. Drag to rotate.
[placeholder: annotated CAD diagram] file: assets/afs/cad-annotated.png
Cropped from the design review slide: the mechanism with the connecting rod, servo, servo horn, fin horn, ball bearing, heat-set inserts, battery, and PCB compartment called out.
[placeholder: OpenRocket screenshot] file: assets/afs/openrocket.png
OpenRocket model. CG at 26.4 in, CP at 31.0 in, 1.45 cal. The AFS module is the dashed section behind the nose cone.

How it works

  1. The flight computer reads the IMU and commands a deflection angle for each canard.
  2. Each of the four canards has its own servo. The servo horn drives a connecting rod, and the rod drives a fin horn on the canard shaft. The servos are AGF-RC SA18 low-profile programmable digital servos, 250 oz-in.
  3. Each canard shaft rides in a standard ball bearing in the top plate, so the servo only fights aerodynamic load, not friction. Threaded joints use heat-set inserts in the printed parts, and the fasteners are secured with Loctite.
  4. The module stacks top to bottom: canard plate with bearings, servo cage, battery, then the PCB compartment for the flight computer. Composite or metal bulkheads close it off on either side, and the whole module fits inside a 3 in airframe.
  5. The control law that produces those angles is mine. Attitude error to desired rate, PD to desired angular acceleration, Euler's equations with the inertia tensor to the required moment, then M = qSEδ solved for the four canard deflections.
[placeholder: OpenRocket diagram] file: assets/afs/openrocket-annotated.png
Cropped from the design review slide: the rocket layout with the AFS module location and the flight numbers.
Where the module sits in the rocket, with the OpenRocket flight numbers.
[placeholder] file: assets/afs/control-dynamics.png
The control derivation I created for the system, from attitude error to canard deflection, built from research with NASA and consulting NASA GNC alumni.

Design loads

The vehicle design point, from the OpenRocket model. 45 in long, 3.16 in diameter, 63.5 oz on the pad, flown on an I280DM-14 to 3,764 ft, 838 ft/s max velocity (Mach 0.75), 575 ft/s² max acceleration, stability 1.45 cal at Mach 0.3. Three of those numbers drove the mechanism.

Validation

What I could check before the hardware flew, what the numbers said, and what is still unproven.

Validated

Not yet validated

[placeholder] file: assets/afs/rocketpy-sim.png
RocketPy trajectory simulation of the AFS rocket, static wind.
[placeholder: modal result] file: assets/afs/modal-result.png
Mode shape with the frequency callout visible.
First mode of the mechanism housing.
[placeholder: Fluent result] file: assets/afs/fluent-result.png
Pressure or velocity contour at the Mach 0.8 condition with the canard deflected.
Fluent result at Mach 0.8.

Status

The canard system works. The flight computer reads the IMU and drives all four canards on the bench, and the full module has been tested on the car-top rig. Now we are waiting to test it in flight.

[placeholder: video] file: assets/afs/fins-moving.mp4
The flight computer reads the IMU and drives all four canards as the module is tilted by hand.
[placeholder: video] file: assets/afs/car-test.mp4
Car-top test of the AFS module. Onboard cameras and the live pitch and yaw feed from the flight computer.

What went wrong, and what comes next

What went wrong

How I would improve it

Next steps

Tools

Onshape · OpenRocket · RocketPy · ANSYS Mechanical · ANSYS Fluent

Back to projects