My team and I are working on an automation project to stabilize the altitude of an airplane. However, we've encountered an issue that seems unsolvable for us, at least for the moment, in the final phase of this project. After identifying the transfer function G shown below,

G(s) =

1.5284e-05 (s+4.288) (s-4.286)

--------------------------------

s (s+4.142) (s-4.14) (s+0.00053)

which has a positive pole, we attempted to create a feedback loop to achieve stability. We used the Sisotool's auto-tuning method LGQ and obtained a controller C_i to multiply with G, resulting in the function G_i.

C_i =

-9.4134e08 (s+4.142) (s+0.02969) (s^2 - 0.02844s + 0.001059)

------------------------------------------------------------

s (s+28.99) (s+4.288) (s^2 - 14.21s + 513.2)

Gc =

-14387 (s-4.286) (s+4.288) (s+4.142) (s+0.02969) (s^2 - 0.02844s + 0.001059)

-------------------------------------------------------------------------------------------

(s+0.7861) (s+4.088) (s+4.193) (s^2 + 8.283s + 17.15) (s^2 + 0.5465s + 0.1494) (s^2 + 1.171s + 0.9972)

Now, our current challenge is to find a controller C to apply within our closed-loop system, ensuring that we meet the project's requirements without compromising the stability achieved in the previous steps. Below are the requirements.

Requirements: Perfect tracking of constant references for output variation, with a response time not exceeding 15 seconds and any oscillations within 10% of the steady-state value.

After several attempts, we are almost ready to give up. It seems that there isn't any value capable of keeping the system stable while having a pole at zero. Is there any suggestion to overcome this problem? We can send the MATLAB code or the PDF with all the steps taken until the derivation of the G(s) function.

Thanks for your attention and assistance

More Davide Calabrese's questions See All
Similar questions and discussions