FSimZoo.jl

Predefined environments and controllers for FlightSims.jl
Author JinraeKim
Popularity
5 Stars
Updated Last
8 Months Ago
Started In
September 2021

FSimZoo

FSimZoo.jl contains predefined environments and controllers for FlightSims.jl.

Breaking changes in v0.11

See NEWS.md.

Examples

  • Examples include

    basics
    Actuators
    • SecondOrderActuator
    fixed wings
    • (Wing Rock phenomenon) TarnWingRock, ElzebdaWingRock
    multicopters
    • (Hexacopter) LeeHexacopter, LeeQuadcopter, GoodarziAgileQuadcopter (currently maintained)
    • (Quadcopter) IslamQuadcopter, GoodarziQuadcopter
    allocators
    • (Moore-Penrose pseudo inverse control allocation) PseudoInverseAllocator
    controllers
    • (Linear quadratic regulator) LQR
    • (Proportional-Integral-Derivative controller) PID
      • Note that the derivative term is obtained via second-order filter.
    • (Pure proportional navigation guidance) PPNG
    • (For multicopter position tracking)
      • BacksteppingPositionController (control input: T_dot, M)
      • GeometricTrackingController (control input: T, M)
      • InnerLoopGeometricTrackingController and OuterLoopGeometricTrackingController (based on GeometricTrackingController but seperated for a hierarchical structure)
    • (Safety filters via control barrier functions (CBFs))
      • (Position CBF for input-affine systems) InputAffinePositionCBF
    integrated_environments
    • (Backstepping Position Controller + Static Allocator + Multicopter) BacksteppingPositionController_StaticAllocator_Multicopter
      • For example, BacksteppingPositionController (backstepping position controller) + PseudoInverseAllocator (pseudo-inverse allocator, a static allocator) + LeeHexacopter (hexacopter, a multicopter)
    • (Linear system + single integrator) LinearSystem_SingleIntegrator (WIP)
    • See src/environments/integrated_environments.

Utilities

  • ned2enu and enu2ned: coordinate transformation