Skip to content

MatteoSoldini/awning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awning

Awning is a self-contained quadrotor simulator and flight controller written in C, with a real-time 3D viewer built on raylib. It’s designed as an end-to-end sandbox for exploring flight dynamics, sensor modeling, state estimation, and control.

What it does

  • Simulates a quadrotor as a rigid body with motor dynamics and basic aerodynamic effects
  • Generates realistic onboard sensor data (IMU, barometer, GNSS, magnetometer) with noise, bias drift, and independent update rates
  • Estimates full state (position, velocity, orientation) using an Extended Kalman Filter
  • Stabilizes and tracks motion via a cascaded PID control stack (position → velocity → attitude → rate → motors)
  • Provides real-time visualization with a 3D view and live telemetry/debug graphs

Architecture

  • A background simulation loop advances physics, sensors, and controller at fixed rates
  • A separate rendering loop handles visualization, UI, and interaction
  • A lightweight debug channel system streams internal signals to the UI for inspection

About

Quadrotor simulator + Controller

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors