Problem with automatic tuning for PIDs in a Linear Parameter Varying System
5 views (last 30 days)
Show older comments
I am currently doing a project comparing different ways of tuning PIDs for an LPV system which represents the longitudinal axis of an aircraft. I have manually tuned the PIDs and got very high gains for each PID (one for velocity one for flight path angle, alpha). I have then used the autotune function in SIMULINK which uses the sliders and got equally high gains for the velocity PID. I am now trying to find an automated way of tuning PIDs. I have attatched a photo of the setup i currently have and am currently using the check step responses block to tune the alpha PID however when I currently run this there is no optimisation. Plots get slightly (ever so slightly) better however no iterations come up on optimization progress report.
There may be a more sensible way of tuning the PIDs automatically and am willing to change the current method however would appreciate help in understanding what I am doing wrong currently and how to change it.
Many thanks.
0 Comments
Answers (1)
Sam Chak
on 31 Jan 2023
Try applying the decoupling mechanism to uncouple the dynamics so that the states behave like SISO systems.
With the SISO math models, you can apply the PID tuner algorithm to automatically tune for you with closed eyes, provided the SISO models are stabilizable.
Back to the original coupled MIMO system in Simulink, design the control blocks that connect the decouplers and the tuned PID Controllers.
3 Comments
Sam Chak
on 6 Feb 2023
The decoupling part is actually the design by hand. The PIF Autotuner only works in Single Input, Single Output (SISO) systems. You cannot tune two PID blocks at the same time using conventional means.
I have seen your flight dynamics. Based on your descriptions, I think gamma affects the flight path direction. If you want control the direction, then you can fix a constant value for the Velocity, and tune gamma. If the flight path direction is already steadily under controlled, then you can tune the Velocity at a fixed gamma value.
If you are using the stock PID Controller block, there is a button to click and autotune the PID gains.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!