Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lead–Lag Compensation of an Aircraft Pitch Control System

Continues from → Project 06: Lead Compensator Design

Classical Control Systems | Lead–Lag Compensator | Steady-State Error | Control System Designer | MATLAB | Aerospace Engineering

This repository contains my seventh independent control systems project — a systematic investigation into whether a Lead–Lead–Lag cascade compensator can succeed where a single lead compensator (Project 06) failed on the aircraft pitch control system.


Engineering Question

"Can a Lead–Lead–Lag cascade satisfy overshoot < 10% and settling time < 10 seconds — with meaningful steady-state tracking — on a non-minimum phase plant?"

Answer: Not simultaneously. Transient specs and steady-state accuracy trade off against each other, and the trade-off is structural, not a tuning problem.


Overview

Project 06 proved that a single lead compensator cannot meet the specifications — the required 86.75° of phase lead exceeds the ~65° practical limit of one stage. Project 07 asks the natural follow-up: does cascading two lead stages with a lag stage close the gap?

Four sequential investigation stages were used:

  1. Lead–Lead cascade — combine two lead stages for more phase authority
  2. Lag compensator study — eight configurations (Tests A–H) to recover DC gain
  3. Gain sweep — test whether raw gain increase can resolve the remaining deficit
  4. Automated optimization — let MATLAB search the full Lead–Lead–Lag space

All four stages point to the same root cause.


Plant

G(s) = (−1.282s + 1.282) / (s³ + 1.935s² + 0.987s + 0.179)
Property Value
RHP Zero s = +1 (non-minimum phase)
Phugoid Poles −0.3336 ± 0.1730j (dominant, lightly damped)
Short Period Pole −1.2679 (fast, heavily damped)
Gain Margin (from P05) K = 0.46

Performance Specifications:

  • Overshoot < 10% → damping ratio ζ ≥ 0.59
  • Settling time < 10 s → real part σ ≥ 0.4
  • Desired dominant pole: s_d = −0.5 + 0.6j

Stage 1 — Lead–Lead Investigation

C_LL(s) = K (s + 0.5)(s + 0.8) / [(s + 2)(s + 4)]
Parameter Result Requirement Status
Settling Time 9.51 s < 10 s
Overshoot 0.625% < 10%
Closed-Loop DC Gain 5.26×10⁻⁵ ≈ 1.0
Steady-State Error ≈ 100% 0%

The catch: rlocfind() selected K ≈ 1.47×10⁻⁴ — a gain so small the loop barely closes. The transient specs pass on paper, but the closed-loop poles are nearly identical to the open-loop poles. The system is operating near open-loop conditions with negligible control authority.


Stage 2 — Lag Compensator Study (Tests A–H)

Eight lag zero/pole pairs were swept, holding the Lead–Lead base fixed, to boost low-frequency gain.

Test z_lag p_lag Settling Time Overshoot DC Gain Verdict
A −0.1 −0.01 122.63 s 0% 0.714 ❌ too slow
D −0.8 −0.20 15.18 s 4.18% 0.464 ❌ ts high
E −1.0 −0.25 14.46 s 7.41% 0.489 🏆 best balance
F −1.2 −0.30 12.81 s 13.13% 0.596 ❌ OS too high
H −2.0 −0.50 10.66 s 1.40% 0.189 ❌ tracking collapse

Trend: moving the lag closer to the lead frequencies speeds up the response but reintroduces overshoot. Test E is the best compromise — and it still misses the settling-time spec while only tracking 48.9% of the commanded pitch angle.


Stage 3 — Gain Sweep on Test E

K DC Gain Settling Time Overshoot
0.279 0.500 201.2 s 0%
1.500 0.843 75.6 s 0%
4.000 0.935 41.3 s 2.08%

Pushing gain improves tracking but the settling time never approaches spec, and overshoot begins creeping in at the high end. Gain is not a free parameter on this plant.


Stage 4 — Automated Optimization

MATLAB's Response Optimizer searched the full Lead–Lead–Lag parameter space:

C_Optimizer(s) = 1.2599 · (s+0.6056)(s+0.5187)(s+0.4230) / [(s+2.166)(s+4.045)(s+0.4004)]
Parameter Result Requirement Status
Settling Time 5.71 s < 10 s
Overshoot 1.66% < 10%
Closed-Loop DC Gain 0.2547 ≈ 1.0
Steady-State Error 74.5% ≈ 0%

The optimizer proved the transient specs are achievable with Lead–Lead–Lag — but only by placing the lag pole almost on top of the lag zero, effectively cancelling the lag stage and sacrificing steady-state tracking to get there.


Complete Controller Comparison — Projects 04–07

Controller Settling Time Overshoot DC Gain SS Error Both Specs?
P only 13.23 s 18.15% Low 58%
PID 19.49 s 3.39% High 0% ❌ (ts)
Best Lead (P06) 13.31 s 28.61% Low Large
Lead–Lead 9.51 s 0.625% 5.26×10⁻⁵ ≈100% ❌ (tracking)
Lead–Lead–Lag (Test E) 14.46 s 7.41% 0.489 51% ❌ (ts)
Optimizer (Best) 5.71 s 1.66% 0.255 74.5% ❌ (SSE)

No classical controller across four projects has met OS < 10%, ts < 10s, and meaningful steady-state tracking at the same time.


Key Engineering Conclusions

1. Lead–Lead transient compliance is a mathematical artifact of a near-zero loop gain, not genuine control performance.

2. The lag stage successfully recovers DC gain (5.26×10⁻⁵ → 0.489) but reintroduces overshoot as it approaches the lead frequency range — a direct speed-stability trade-off.

3. Gain adjustment cannot resolve the trade-off: settling time stays roughly 4× over spec at every tested gain, while overshoot grows at high gain.

4. The automated optimizer confirms Lead–Lead–Lag can meet both transient specs — at the cost of 74.5% steady-state error.

5. The RHP zero at s = +1 is the common root cause across all seven projects: it caps achievable bandwidth, produces the characteristic undershoot in every step response, and prevents simultaneous optimization of transient speed and DC tracking.

6. The trade-off is structural, not a tuning failure. State-space methods (Projects 09–11) are needed to place all closed-loop poles simultaneously and break this limitation.


Aerospace Applications

  • Commercial autopilots (777/A350-class): use inner pitch-rate + outer pitch-angle loops specifically to separate non-minimum phase dynamics from the tracking integrator.
  • Military fighters (F-16/F-22-class): deliberately statically unstable, relying on state-space control with Kalman filtering rather than classical cascades.
  • UAV pitch control: gain scheduling is used in practice to work around the same speed-stability trade-off found here.
  • Teknofest VLR Rocket: the plant's non-minimum phase behavior worsens as thrust and center of mass shift during burn — motivating the LQR/Kalman filter work in Projects 10–11 for the VLR attitude controller.

Project Roadmap

✅ Project 01 — Mass-Spring-Damper Analysis
✅ Project 02 — DC Motor Modeling
✅ Project 03 — PID Speed Control
✅ Project 04 — Aircraft Pitch Control
✅ Project 05 — Root Locus Design
✅ Project 06 — Lead Compensator Investigation
✅ Project 07 — Lead–Lag Compensator Design ← YOU ARE HERE

→ Project 08 — Frequency Response Analysis
→ Project 09 — State-Space Modeling
→ Project 10 — Pole Placement Control
→ Project 11 — LQR Optimal Control
→ Project 12 — Kalman Filter Design
→ Project 13 — UAV Attitude Control
→ Project 14 — Rocket Attitude Control
→ Project 15 — Satellite Attitude Control
→ Project 16 — Missile Guidance and Control
→ Project 17 — Integrated Flight Control System

Software Used

  • MATLAB R2024b
  • Control System Toolbox
  • Control System Designer (SISO Tool)

Author

Zohaib Imtiaz Aerospace Engineering Student | Teknofest VLR Team — Flight Control


License

This project is released under the MIT License.

Project Cover

Project Cover


Optimizer Working

Optimizer.2.mp4