Evaluation of px4 Fixed Wing Aircraft Controller

15 views (last 30 days)
This is a PID controller for use with Pixhawk, and I referred to an example in MATLAB. I will only control roll and pitch.
The concept is as follows:
  • The RC signal, except for the throttle, is normalized to a range of -1 to 1.
  • The maximum roll and pitch angles are set to 0.8 rad.
  • The pitch and roll inputs from the sensor are also limited to 0.8 rad using saturation, and the error is calculated.
  • A P controller is applied to this error.
Next, the output of the P controller is used as the angular velocity input, with a maximum limit of 3 rad/s. This process follows the same approach as the angle control.
  • A PID controller is applied for angular velocity control.
  • To normalize the output, it is scaled by 1/3.
  • Finally, this signal is converted into PWM signals for the motors.
Can you evaluate whether this control system is well-designed and provide feedback?

Accepted Answer

영준
영준 on 10 Feb 2025
Given the control system design evaluation, we need to approach this cautiously.
Looking at drone sizes alone, the control parameters vary significantly: Small racing drones: Maximum angle: 1.2-1.5 rad Maximum angular velocity: 8-10 rad/s Medium drones: Maximum angle: 0.8-1.0 rad Maximum angular velocity: 3-5 rad/s Large/camera drones: Maximum angle: 0.6-0.8 rad Maximum angular velocity: 2-3 rad/s
With such significant variations in control parameters based on aircraft size, it's impossible to evaluate system appropriateness solely through control flow analysis. Instead, I suggest establishing a verifiable testing flow for the control system. This could include:
  1. Validation in simulation environments
  2. Progressive responsiveness testing with actual aircraft
  3. Performance measurements under various flight conditions
Without such systematic verification processes, it's difficult to accurately assess the control system's actual performance and limitations. Nevertheless, from a structural perspective, the proposed control architecture shows promise.
Looking at the algorithm structure specifically, I don't see major issues. It follows a typical Cascaded PID Control architecture:
  1. Outer loop (attitude control)
  • Using only P control for angle error
  • This is a common and stable approach
  1. Inner loop (angular rate control)
  • Using PID control
  • Suitable for controlling faster dynamics
This structure itself is very standard and well-proven. However, one point to note:
  • The output normalization by 1/3 seems somewhat arbitrary
  • This value should vary based on actual motor and frame characteristics
In conclusion, while the control structure itself appears sound, successful implementation will heavily depend on proper parameter tuning based on aircraft characteristics. This reinforces the need for comprehensive testing and validation as outlined above.
I cannot definitively answer whether the control system is well-designed, as the angular velocity design based on drone size, weight, and payload equipment must be evaluated through experimental testing.
  1 Comment
abcchoco
abcchoco on 12 Feb 2025
Then, would it be okay if we use the following conditions for a small racing drone?
  • Maximum angle: 1.2-1.5 rad
  • Maximum angular velocity: 8-10 rad/s
Also, the reason for the output normalization is because the PWM signal is normalized to a range of -1 to 1. Is this approach acceptable?

Sign in to comment.

More Answers (0)

Products


Release

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!