Skip to content

shengwen-tw/quadrotor-h-infty-ctrl-simulator

Repository files navigation

Quadrotor H∞ Control Simulator

H∞ control is a robust control strategy that emerged in the 1970s. It focuses on minimizing the worst-case impact of disturbances on system performance by suppressing the maximum singular value of the transfer function from disturbance to output over all frequencies. This ensures that the system remains stable and performs acceptably even under model uncertainties and external disturbances. The optimal control law is derived by solving an Algebraic Riccati Equation, which is closely linked to the Hamiltonian matrix.

This project provides a design example of using H∞ control to stablize the quadrotor. We also feature that the code is fully standalone without relying on other control toolbox.

Run simulation

execute quadrotor_sim.m

Code overview

quadrotor_sim.m: The main program of the simulation.

dynamics.m: The quadrotor dynamics model.

hinf_norm.m: The function for calculating H∞ norm.

rigidbody_visualize.m: The 3D animation for quadrotor visualization.

se3_math.m: Some math functions for calculating rotation matrix, quaternion and Euler angles.

care_sda.m: Structure-Preserving Doubling Algorithm (SDA), a numerical method for solving Algebraic Riccati Equation.

hinf_syn.m: A H∞ control solver based on the bisection method and SDA.

Publication

This work is published at the 2022 International Automatic Control Conference (CACS) with the title of Robust State-Feedback H∞ Control of Quadrotor, please feel free to cite the paper.

References

  1. Geometric tracking control of a quadrotor UAV on SE(3)
  2. Quadrotor control: modeling, nonlinear control design, and simulation
  3. A Bisection Method for Computing the H∞ Norm of a Transfer Matrix and Related Problems
  4. On the computation of the optimal H∞ norms for two feedback control problems
  5. A structure-preserving doubling algorithm for continuous-time algebraic Riccati equations

About

Simulation of quadrotor H-infinity control

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages