Pokročilé řízení multirotorů: LQR/MPC versus PID v praxi

Přehled: proč porovnávat PID, LQR a MPC u multirotorů

Řízení multirotorových letadel (kvadrokoptéry, hexa-, oktokoptéry) musí zajistit rychlou stabilizaci, přesné sledování trajektorie a odolnost vůči poruchám (vítr, změny hmotnosti, saturace tahu). Tradiční PID regulátory dominují v průmyslu díky jednoduchosti a vysoké spolehlivosti. LQR (Lineární Kvadratický Regulátor) nabízí systematické nastavení zesílení pro lineární modely a MPC (Model Predictive Control) navíc dokáže pracovat s omezeními (tah, rychlosti, náklony) a optimalizovat budoucí průběh. V praxi se často používá hybridní architektura: PID/LQR na vnitřních smyčkách (attituda, rychlosti úhlů) a MPC/LQR/PID na vnějších smyčkách (pozice, rychlost, výška) podle výpočetních možností a požadavků mise.

Dynamika multirotoru a vrstvy řízení

  • Vnitřní smyčka (Body rates, attituda): Řídí úhly a úhlové rychlosti (p, q, r; roll φ, pitch θ, yaw ψ). Má nejvyšší šířku pásma (typicky 200–1000 Hz).
  • Střední smyčka (výška / vertikální tah): Regulace tahu a vztlaku; 100–400 Hz.
  • Vnější smyčka (rychlost/pozice): Navigační řízení v inerciálním rámci; 50–200 Hz.
  • Plánování trajektorie: Generování referencí (omezených jerkem, optimalizovaných pro snap), 10–50 Hz.

Lineární modely se obvykle získávají kolem pracovního bodu (hover). Pro malé odchylky platí dot{x} = A x + B u, výstupy y = C x, kde x zahrnuje pozice, rychlosti, attitudu a úhlové rychlosti, u jsou přírůstky tahů rotorů.

PID: síla v jednoduchosti a kvalitní implementaci

Výhody: minimální nároky na procesor, jednoduché ladění (Ziegler–Nichols, relay autotune, frekvenční metody), robustnost vůči mírným nejistotám modelu. Nevýhody: obtížnější řešení saturací a multivariantních vazeb (roll–pitch–z–yaw jsou spojeny přes omezené tahy), žádná predikce budoucích omezení.

  • Anti-windup: zpětné výpočty (back-calculation) nebo clamping při saturaci motorů.
  • Feedforward: odlehčení PI větve znalostí modelu (např. gravitační kompenzace a křížové vazby mezi osami).
  • Gain scheduling: přepínání KP, KI, KD podle režimu (payload, rychlost, úhel náklonu).
  • Frekvenční robustnost: filtry (notch, low-pass) pro potlačení vibrací od vrtulí; důsledné nastavení D-členu s derivative-on-measurement.

LQR: optimální lineární řízení pro decouplované i MIMO osy

LQR minimalizuje kvadratické kritérium J = ∫ (xᵀQx + uᵀRu) dt a poskytuje zpětnovazební zákon u = −Kx. V praxi:

  • Výběr Q a R: Q penalizuje odchylky stavů (úhly, rychlosti), R penalizuje práci motorů a povely. Doporučení: škálovat stavy na stejné řády a volit R tak, aby se předešlo saturaci tahů.
  • Decentralizace: LQR pro (φ, p), (θ, q), (ψ, r) samostatně nebo plný MIMO design pro křížové vazby (užitečné při vysokých úhlech či asymetrické geometrii).
  • Reference: přidat integrátory (LQI) pro nulovou ustálenou odchylku rychlostí/úhlů nebo použít state augmentation.
  • Robustnost: LQR implicitně poskytuje určitou odolnost (loop shaping v kvadratické normě), ale při velkých nejistotách je vhodné doplnit gain scheduling nebo μ-syntézu.

Vnitřní smyčky LQR dosahují vyšší šířku pásma při stejném nebo menším šumu na výstupu než PID a lépe zvládají křížové vazby bez heuristik.

MPC: prediktivní řízení s omezeními

MPC řeší optimalizační úlohu na horizontu N s modelem (lineárním nebo lineárně parametrickým, LPV) a explicitně bere v úvahu omezení:

  • Kriterium: min ∑ (xᵢ−xref)ᵀQ(xᵢ−xref) + ∑ ΔuᵢᵀRΔuᵢ, s terminální penalizací a/nebo terminální množinou.
  • Omezení: u ∈ [umin, umax] (tahy), |φ|, |θ| ≤ φmax, rychlosti a zrychlení (jerk, snap) podle platformy a gimbalu.
  • Model: diskrétní xk+1 = A xk + B uk (hover) nebo LPV podle náklonu a tahu; případně NMPC s diferenciálními rovnicemi a CasADi/ACADO na generování kódu.
  • Řešič: QP (kvadratický program) pro lineární MPC; SQP/IPM pro nelineární. Klíčový je deterministický výpočetní čas na embedded HW.

Přínosy MPC: jemné řešení saturací a koordinace os, méně „clippingu“ motorů, stabilní RTH při bočním větru, bezpečné držení limitů náklonu pro kvalitu videa/mapování. Nevýhody: vyšší nároky na výpočty, závislost na kvalitě modelu a latenci estimátoru.

Estimece stavů: EKF/UKF vs. komplementární filtry

Bez kvalitní estimece se ani nejlepší regulátor neprosadí. Standardem je EKF nad IMU, magnetometrem, barometrem a GNSS/vision (VIO). Pro vnitřní smyčky často stačí komplementární filtr (gyroskop + akcelerometr) s latencí < 1 ms. V MPC/LQR je důležité mít odhad rychlosti a náklonů s nízkým šumem; u VIO/optického toku je třeba kompenzovat zpoždění (time offset) a použít predictor (zero-order hold nebo modelově založená predikce vpřed).

Implementační architektura: kde který regulátor použít

Vrstva Preferovaný regulátor Důvod Frekvence
Body-rate PID nebo LQR Nejvyšší nároky na rychlost, stabilizace šumu; LQR zvládá vazby 250–1 000 Hz
Attitude PID/LQR Rychlé sledování referenčních úhlů 200–500 Hz
Rychlost/pozice MPC nebo PID+feedforward/LQR Omezení náklonu, tahu, jerku; trajektorie 50–200 Hz
Výška PID s feedforward (T≈mg) nebo MPC (při omezeních) Přesné stoupání/klesání v rámci limitů 100–400 Hz

Robustnost a saturace: klíčové rozdíly v praxi

  • PID: vyžaduje anti-windup; při hraničních náklonech a silných poryvech může dojít k delším saturacím motorů a zhoršení ovladatelnosti (yaw drift).
  • LQR: lepší loop-shaping, ale bez explicitních omezení. Při saturaci ztrácí optimálnost – vhodné doplnit reference governor nebo command limiting.
  • MPC: explicitně pracuje s limity, minimalizuje chattering a clipping; dokáže „odmítnout“ nereálné reference (safe infeasibility handling).

Ladění a postup zavedení

  1. Model a identifikace: získat matice A, B z linearizace (hover) nebo subspace ID; určit zpoždění a frekvenční charakteristiky rámu.
  2. Vnitřní smyčky: začít PID (rate) → ověřit stabilitu a šířku pásma; pro LQR navrhnout Q/R tak, aby výstupy kopírovaly PID výkon, následně výkon zvýšit dle potřeby.
  3. Vnější smyčky: zavést MPC nejprve v simulaci (SIL/HIL), nastavit horizont N (8–20 kroků) a čas kroku podle senzoru; přidat limity náklonu, rychlosti, tahu.
  4. Bezpečnostní obaly: saturace povelů, rate limiter, jerk limiter, geofence, failsafe při ztrátě GNSS/VIO; watchdog pro MPC solver (time-out → fallback).
  5. Validace: step testy (5–10° attituda, 1–2 m/s rychlost), nárazové poryvy (ventilátor), klasická sada testů (hover, kružnice, osmičky, RTH proti větru) a metriky (ISE, ITAE, % saturace, spotřeba Wh/km).

Výpočetní nároky a hardwarové možnosti

  • PID/LQR běží pohodlně na MCU třídy STM32F4/F7/H7 (100–400 MHz) při 1 kHz smyčkách.
  • Lineární MPC (QP): s N≈10, stavy < 12 a vstupy < 4 lze dosáhnout 100–200 Hz na H7 při využití real-time QP (osqp, qpOASES s partial condensing). Pro složitější úlohy je vhodný companion computer (Raspberry Pi 4/5, NVIDIA Jetson) a smyčka 50–100 Hz.
  • NMPC vyžaduje generování kódu a pečlivé stanovení výpočetního času; na embedded je praktický pouze s krátkým horizontem a dobrým teplým startem.

Vliv modelových chyb a adaptivita

Mění se hmotnost, těžiště a aerodynamické ztráty (např. gimbal, payload). Strategie:

  • Gain scheduling: tabulka zisků podle hmotnosti/polohy CG a napětí baterie.
  • Online identifikace: odhad kT a kQ (tah/krouticí moment) z telemetrie proudů a úhlových odezev.
  • Disturbance observer (DOB) nebo integrátor poruchy v MPC jako rozšířený stav pro vítr/slabé nepřesnosti.

Trajektorie, komfort kamery a kvalita dat

Pro filmové/inspekční mise jsou kritická omezení jerku/snapu kvůli gimbalu a kvalitě obrazu. MPC přirozeně respektuje tyto limity a minimalizuje náklonová přetížení, zatímco PID/LQR vyžadují dodatečné profily referencí (S-křivky, minimum jerk) a command filtry.

Hluk, energetika a teplota

Měkké řídicí profily (MPC s penalizací Δu, LQR s vyšším R) redukují proudové špičky → menší hluk a zahřívání ESC/motorů, lepší energetickou bilanci. PID s příliš agresivním D může zvyšovat šum a tonální píky. V praxi sledujte % času v saturaci a RMS proud jako proxy pro tepelný stres.

Integrace s autopiloty a softwarový stack

  • PX4/ArduPilot: PID uvnitř; LQR lze vložit jako alternativní regulátory rate/attitude; MPC pro pozici na companion počítači přes offboard rozhraní (uPX4/MAVSDK, ROS 2).
  • ROS 2 pipeline: Estimace (VIO/EKF), MPC uzel (qp solver), generátor trajektorií (polynomy 7. řádu / minimum snap), synchronizace časů přes time synchronization.
  • Bezpečnostní vrstvy: health monitor (IMU saturace, GPS kvalita), fallback strom (MPC→LQR→PID→land), logging (uLog/ROSbag) pro analýzu.

Benchmark: jak spravedlivě porovnat PID, LQR a MPC

  1. Scénáře: step v pozici (1 m), kružnice (r = 5 m, v = 2 m/s), náraz větru (simulátor/ventilátor), limit tahu (zátěž).
  2. Metriky: ITAE/ISE, overshoot, doba ustálení, průměrná/špičková spotřeba, % saturace motorů, RMS proud, maximum náklonu, kvalita videa (std. dev. gyra na gimbalu), porušení limitů.
  3. Latence: end-to-end (senzor→řadič→motor) a jitter; pro MPC změřit čas řešení a výpadky > 1 % cyklů.
  4. Robustnost: variace hmotnosti (±20 %), posun CG (±1–2 cm), degradované senzory (mag dropout, GNSS multipath).

Doporučená vzorová nastavení