Modified Rodriguez Parameters based Non Linear Disturbance Observer Control of Quadrotor

Code, Detailed Explaination

Abstract

This project discusses the design of both the inner and outer loop controllers, along with their stability proofs. An inner-loop non-linear PID control law has been developed to track the fast time-varying set points generated by the outer loop, based on the errors between the actual and desired 3D trajectories. A Non-linear Disturbance Observer (NDO) is proposed to make the controller robust to exogenous disturbances in the environment. Modified Rodrigues Parameters (MRPs) are used to represent the quadrotor’s orientation, addressing the unwinding and singularity problems using a computationally efficient switching strategy. The ease of handling singularities in MRPs allows for robust global full-degree-of-freedom, discontinuous trajectory tracking control. Additionally, an MRP-based Extended Kalman Filter (EKF) is used to estimate the attitude, compensate for sensor measurement errors, and account for system uncertainty. An algorithm to handle the quadrotor’s upside-down orientation at the start of flight has also been developed. Finally, numerical simulation results demonstrate the effectiveness of the proposed control strategy in achieving aggressive flight maneuvers.

Objective

  1. Modelling quadrotor dynamic system: Euler-Lagrange equation
  2. 6-DOF Kinematics equations:
    • Conversion between :- Euler angles, Quaternions, Modified Rodrigues Parameters(Rotation matrix formation from each kind of representation)
    • The equation governing their rate of change
  3. State estimation of 6-DOF:
    • Implementing Kalman filter(Position and orientation)
  4. Non-linear PID control augmented with NDO (Non-linear Disturbance Observer)
  5. Augmenting the control law to address the initial upside-down orientation of the quadrotor.
  6. Simulating the aforementioned components in MATLAB.

Highlights

  1. A robust global full degree of freedom, MRP(Modified Rodrigues Parameter) based nonlinear control law for the quadrotor’s attitude control is proposed with its stability proof.
  2. A nonlinear disturbance observer is proposed for the quadrotor model.
  3. A new algorithm for handling the upside-down orientation of the quadrotor at the start of the flight is proposed.

Method

Cascaded Control Approach: Inner loop + Outer loop

Outer Loop:

Inner Loop:

Simulation window:

More details on the equations used and methodology can be found here.

Results

Code for the implementation can be found here

Tools Used

  • Matlab