FlightCloud · early access
Your aircraft, identified.
Upload flight logs. Get a flight-dynamics model of your aircraft, validated against flight data it never saw, with uncertainty you can trust — and the gains to fly it.
PX4 and ArduPilot logs · Python, MATLAB and Julia clients · built on peer-reviewed system identification
How it works
From a log file to a model you can fly.
- 01
Check your data
Upload a log. FlightCloud tells you, axis by axis, whether it can identify your aircraft — and if not, gives you the excitation to fly next.
- 02
Identify
Frequency- and time-domain identification of a physical model of your airframe, with Cramér–Rao uncertainty on every parameter.
- 03
Validate
Every model is checked against flight data held out of the fit. If it fails, FlightCloud says so instead of handing you numbers.
- 04
Fly it next in early access
Exports for your simulator and autopilot, and inner-loop gains with handling-qualities metrics — gated by the validation result.
Why trust it
Numbers that say how sure they are.
- Honest uncertainty. Every estimate comes with its confidence interval — and when the data cannot support a parameter, FlightCloud withholds it and tells you why.
- Validated, not just fitted. A held-out part of every flight is predicted by the model, never used to build it.
- Reproducible. Every result is stamped with the exact engine and solver versions: same log, same version, same numbers.
- Flight-proven methods. Built on the identification methods behind a 600 kg unmanned helicopter's flight control system and our peer-reviewed publications.
from barzin import Client
fc = Client(api_key=KEY)
run = fc.identify("flight.bin", model="quadrotor-x")
print(run.parameters["Ixx"]) # estimate ± std, 95 % CI
print(run.validation.theil_u) # on held-out data
sys = run.state_space()
fc = barzin.client(key);
run = fc.identify("flight.bin", "quadrotor-x");
run.parameters.Ixx % estimate, std, ci95
run.validation.theilU % held-out data
sys = barzin.toSs(run); % Control System Toolbox
bode(sys)
using BarzinCloud
run = identify("flight.bin"; model = :quadrotor_x)
run.parameters[:Ixx] # estimate ± std
run.validation.theil_u # held-out data
sys = statespace(run)
Illustrative, from the early-access clients. Interfaces may change.
Demo
See a full identification, start to finish.
A quadrotor flown in ArduPilot's simulator, identified by FlightCloud exactly as it would identify yours. Register to open it; it takes a minute.