Skip to content
RYLAND / WITTMAN

002Independent Researcher / Engineer

RAMDRONE

Model-Based Design (MBD) toolchain for a small expendable solid-boosted, liquid-fueled ramjet UAV — spanning a Python library, mirrored MATLAB/Simulink, parametric CAD, and 32 tiered Jupyter notebooks.

Drag breakdown vs. Mach sweep for the RAMDRONE airframe.

Why I Built It

I wanted a single, end-to-end model-based-design environment for a small ramjet UAV — one where every numerical constant has a provenance, every design lock-in is captured as a numbered tier, and every Python module has a one-to-one MATLAB counterpart so cross-platform regression is actually possible. The codebase is organised as a research repository rather than a product: each notebook captures a design tier; each change to the physical parameters propagates from one canonical source.

Abstract

RAMDRONE is a complete MBD toolchain for an expendable, solid-fuel-boosted, liquid-fueled ramjet-powered UAV. The repository spans the full analysis stack — from a single CSV registry of physical inputs, through a layered Python library and a parallel MATLAB / Simulink implementation, to parametric CAD and a hierarchy of 32 Jupyter notebooks that progressively close the design from cruise sizing to full 6-DOF, actuated, sensor-in-the-loop trajectory simulation.

Design targets (Tier 29 trim cache)

  • Cruise Mach 1.2 (legacy spec); envelope explored to 2.7
  • Cruise altitude 8 000 m
  • Burn time 300 s
  • Total mass (4-fin, fueled) 27.97 kg
  • Body length 2.340 m, max diameter 0.1995 m
  • Trim thrust @ M = 2.0 — 1 566 N

Architecture

A layered, dataclass-based MBD package. Each module owns one physical sub-discipline and is consumed by both the notebooks and the MATLAB-side regression harnesses.

  • Inputs / units, atmosphere, geometry, aerodynamics, inlet / capture, propulsion internals, thrust, mass & mission, closure & matching, stability & dynamics, envelope / design space, and whole-vehicle assembly.
  • The notebooks (00–31) form a directed chain — each tier consumes artefacts and calibration constants produced by the previous one (registry → design point → Mach sweep → dynamics → physics audit → envelope → matching → unified forward model → inverse design → optimisation → Pareto sampling → closure → geometry basis → state solver → vehicle system → tier freezes → translating cowl → three-zone thermal → 4-surface stability → dynamic envelope → booster sizing → trajectory sweep → analytic range-interval optimum).
  • A mirror MATLAB / Simulink chain extends to a Tier-29 actuated 6-DOF model with mission management, autopilot, actuators with rate-limit and first-order lag, fuel-CG migration, sensor models, failure monitor, and scenario-matrix execution.
  • Parametric CAD via FreeCAD macros driven by the same mould-line CSVs — conformal segmented fuel tanks, bleed slots, translating cowl rails, injector ring datums.

Key results to date

  • Cruise sustainable at M ≈ 2.3 with Tier-31 fuel sizing and corrected aerodynamic coefficients (Cd0 = 0.06, k_wave = 0.022).
  • Endurance peaks at m_fuel ≈ 12.0 kg (t_end ≈ 324 s); heavier fuel loads trigger γ-runaway with current autopilot gains.
  • Passive short-period damping is insufficient (ζ_sp ∈ [0.07, 0.22]); a q → δe flight-control loop is the documented closure path (Tier 28 verdict).
  • Inlet–shock coupling is low across the envelope (f_shock ∈ [116, 716] Hz vs. f_sp ∈ [0.6, 4.4] Hz).
  • Control authority (δe = ±15°, η_c = 0.6) clears the 1.5× inlet-upset moment criterion across the envelope (Tier 27).

Conventions

SI throughout (m, kg, s, N, Pa, K). Body-axis FRD (x-forward, y-right, z-down). Numerical constants live only in python/ramdrone/params.py and the mirrored matlab/ramdrone_params.m; all other modules are derivations. Notebook outputs are regression-checked against python/notebook_regression_results.json.

002Gallery

Drag breakdown across the Mach envelope.
Drag breakdown across the Mach envelope.
Intake capture-area optimization surface.
Intake capture-area optimization surface.
Frozen Tier-25 body radius profile.
Frozen Tier-25 body radius profile.
Maximum-power operating-point optimization.
Maximum-power operating-point optimization.