1. Budapesti Mőszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar
Irányítástechnika és Informatika Tanszék
BSc szakdolgozat
Repülıgép bólintási szögsebesség szabályozása
prediktív és robusztus irányítási technikák
bevonásával
Készítette: Vízer Dániel
Konzulens: Dr. Lantos Béla, BME-IIT
2009. december
2. - 1 -
Nyilatkozat
Alulírott Vízer Dániel, a Budapesti Mőszaki és Gazdaságtudományi Egyetem hallgatója
kijelentem, hogy ezt a szakdolgozatot meg nem engedett segítség nélkül, saját magam
készítettem, és a szakdolgozatban csak a megadott forrásokat használtam fel. Minden
olyan részt, melyet szó szerint, vagy azonos értelemben, de átfogalmazva más forrásból
átvettem, egyértelmően a forrás megadásával megjelöltem.
2009. december 11.
Vízer Dániel
....................................
3. - 2 -
Kivonat
A modern harci repülıgépek irányításának elmélete és gyakorlata napjaink egyik
leggyorsabban fejlıdı és legdinamikusabb szabályozástechnikai ágazata. A
szakdolgozatom elsı részében a bólintási szögsebesség szabályozására állítottam össze
robusztus szabályozót, irodalmi adatok felhasználásával, egy F-16 VISTA (Variable
Stability In-flight Simulator Test Aircraft) tesztrepülıgép dinamikus LPV modelljét
alkalmazva. A robusztusság biztosítására a zavaró jel becslésen alapuló technikát
alkalmaztam. Ezen módszer legnagyobb elınye, hogy széles repülési tartományon belül
biztosítani tudja a stabilitási követelményeket. A megtervezett szabályozót széles
tartományon változó magasság és Mach-szám paraméterek mellett szimuláció
segítségével vizsgáltam. A második részben terveztem egy mozgó horizontú prediktív
irányítást (RHC) a longitudinális mozgás számára, mely a robusztus irányítás
fölérendelt irányításaként mőködik. Végezetül az összekapcsolt szabályozási kör
tulajdonságait is szimuláció segítségével vizsgáltam, szintén széles tartományon változó
magasság és Mach-szám paraméterek mellett. A prediktív irányítás tervezése és
megvalósítása során a MATLAB Optimization toolboxát használtam, a szimulációkat
pedig a MATLAB/Simulink környezetben végeztem.
4. - 3 -
Abstract
Control theory and applications of the modern warplanes are parts of the most
progressive and most dynamic sections of the modern control techniques. In the first
part of my thesis I elaborated a robust controller for pitch rate control applying the
dynamic model of an F-16 VISTA (Variable Stability In-flight Simulator Test Aircraft).
Robustness is ensured by using disturbance observer technique. The primal advanatage
of this method is that it can ensure the stability requirements in the case of large
envelope flying. The properties of the designed controller are examined by using
altitude and Mach number varying in wide range. In the second section I designed a
supervisory receding horizon control (RHC) in case of longitudinal motion which
performs higher control objectives. The properties of the inner closed loop are examined
by using altitude and Mach number varying in wide range. During designing and
building the RHC method I applied the MATLAB Optimization Tollbox. All of the
simulations are achieved by using MATLAB/Simulink.
5. - 4 -
Tartalomjegyzék
1. BEVEZETÉS...........................................................................................................- 5 -
2. AZ F-16 VISTA LPV DINAMIKUS MODELLJE ÉS BÓLINTÁSI
SZÖGSEBESSÉG SZABÁLYOZÁSA .....................................................................- 7 -
2. 1 AZ F-16 VISTA LPV DINAMIKUS MODELLJE A BÓLINTÁSI SZÖGSEBESSÉG
SZABÁLYOZÁSHOZ .....................................................................................................- 9 -
2. 2 A ZAVARÓJEL BECSLÉSEN ALAPULÓ SZABÁLYOZÁSI TECHNIKA...................- 11 -
2. 3 Q MEGHATÁROZÁSA ...................................................................................- 15 -
2. 4 A ROBUSZTUS SZABÁLYOZÓ STABILIZÁLÓ TULAJDONSÁGAINAK VIZSGÁLATA
SZIMULÁCIÓ SEGÍTSÉGÉVEL .....................................................................................- 16 -
3. MOZGÓ HORIZONTÚ PREDIKTÍV (RHC) REPÜLİGÉP IRÁNYÍTÁS
TERVEZÉSE ............................................................................................................- 24 -
3.1 A PREDIKTÍV IRÁNYÍTÁS ELMÉLETI ÁTTEKINTÉSE .......................................- 25 -
3.2 A BELSİ SZABÁLYOZÁSI KÖR ÖSSZEVONT ÁLLAPOTVÁLTOZÓS LEÍRÁSÁNAK
ELİÁLLÍTÁSA...........................................................................................................- 27 -
3.3 A PREDIKTÍV IRÁNYÍTÁS SORÁN ALKALMAZOTT TELJES MODELL
ÖSSZEÁLLÍTÁSA .......................................................................................................- 31 -
3.4 A LINEÁRIS PREDIKTÍV IRÁNYÍTÁSI FELADAT VISSZAVEZETÉSE KVADRATIKUS
PROGRAMOZÁSI FELADATRA....................................................................................- 32 -
4. SZIMULÁCIÓS EREDMÉNYEK..................................................................- 37 -
5. KONKLÚZIÓ ...................................................................................................- 46 -
6. KITEKINTÉS ...................................................................................................- 47 -
8. FÜGGELÉK......................................................................................................- 48 -
7. FELHASZNÁLT IRODALOM.......................................................................- 50 -
6. - 5 -
1. Bevezetés
A modern harci repülıgépek irányításának elmélete és gyakorlata napjaink egyik
leggyorsabban fejlıdı és legdinamikusabb szabályozástechnikai ágazata. A gyors és
fordulékony katonai repülıgépek esetében egyetlen szabályozó nem is elégíti ki a széles
tartományban történı repülés során a stabilitási kritériumokat, mivel azok dinamikája a
repülési paraméterek és nemlinearitások miatt folyamatosan változik. Ez a jelenség a
hangsebesség alatti repülésekre is igaz, a hangsebességet átlépve viszont már az
aerodinamikai tulajdonságok is megváltoznak. Ilyen esetekben a repülıgép dinamikus
modelljét szétcsatolják az egyes repülési síkoknak megfelelıen, és az ily módon
egyszerősített dinamikus modellekre terveznek a kritériumokat kielégítı szabályozó
rendszereket. Ezek a szabályozó rendszerek minden esetben alsóbbrendő
szabályozásaként mőködnek egy olyan komplex, szabályozást vezérlı és a szabályozók
között kapcsolgató rendszernek, mely a repülési paraméterek alapján képes eldönteni,
hogy melyik szabályozót szükséges bekapcsolni az adott manıversorozat közben. Ezen
alsóbbrendő szabályozók elsıdleges követelménye, hogy széles tartományban
megfelelı stabilitást biztosítsanak. A gyakorlatban elterjedt eljárás, hogy egy széles
tartományban robusztus szabályozási tulajdonságokkal rendelkezı szabályozó „fölé”
egy prediktív irányítást helyeznek. Ez a magasabbrendő szabályozás képes minden
mintavételi idıpontban, a rendszer modelljének ismeretében megjósolni a rendszer
jövıbeli viselkedését. Ezáltal a referenciapályához viszonyított hiba minimalizálását
végzi el egy adott irányítási horizonton belül, optimális jelsorozatot számolva, a
robusztus szabályozót és a dinamikus modellt tartalmazó alárendelt zárt kör számára.
A prediktív irányítás legelterjedtebb felhasználási területe a folyamatirányítás,
ahol az irányítándó rendszerek lassú dinamikájuk miatt kellıen nagy idıállandókkal
rendelkeznek, a nagy számításigényő ciklikus optimalizáció elvégzéséhez. Az egyre
jobban fejlıdı számítástechnika azonban lehetıvé teszi, hogy a prediktív irányítás már
az olyan gyors rendszerek esetén is valós alternatívaként szolgálhat, mint egy nagy
teljesítményő harci repülıgép. Ezek a szabályozási rendszerek minden esetben igénylik
egy stabil alsóbbrendő szabályozás meglétét.
Szakdolgozatomban egy F-16 VISTA (Variable Stability In-fligth Simulator
Test Aircraft) tesztrepülıgépen hangsebesség alatti repüléskor végzett mérések alapján
7. - 6 -
más szerzık által [1] felállított nemlineáris dinamikus modell linearizálását követıen
keletkezı LPV (lineáris paraméter függı) modell számára állítottam össze a robusztus
szabályozót a bólintási szögsebesség szabályozására. Az elıállított LPV modell a
magasságtól (h) és a Mach-számtól (M) függ. A szabályozó az ún. zavaró jel becslésen
(disturbance observer) alapuló irányítási technika segítségével valósítja meg a robusztus
stabilizáló követelményeket. Az LPV modell irodalmi adatok alapján [1]
rendelkezésemre állt, a robusztus szabályozó összeállításánál, pedig egy korábbi
szakdolgozat [3] végeredményeit is figyelembe vettem. Az így összeállított belsı zárt
kör „fölé” egy prediktív irányítási technikán alapuló magasabbrendő szabályozást
terveztem. A megtervezett adaptív, mozgó horizontú prediktív irányítás (RHC) minden
egyes idıpillanatban a referencia pályából és a predikciós horizontnak (Hp) megfelelı
számú jövıbeli jósolt kimenetbıl számítja az irányítási horizontnak (Hc) megfelelı
számú jövıbeli optimális vezérlı jel sorozatot. Zárt körben az optimális sorozat elsı
elemét kell kiadnunk. Ezután a horizont továbbhalad, és az optimalizációs ciklus
ismétlıdik. A megtervezett szabályozási kör tulajdonságait és hatékonyságát szimuláció
segítségével vizsgáltam, széles tartományon változó magasság és Mach-szám
paraméterek mellett.
8. - 7 -
2. Az F-16 VISTA LPV dinamikus modellje és bólintási
szögsebesség szabályozása
A kellı robusztusságú és pontosságú szabályozás megvalósításához
elengedhetetlenül szükséges a szabályozandó szakasz beható ismerete. A dolgozatom
elején bemutatom a repülıgép felépítését annak beavatkozó szerveit és a bólintási
szögsebesség szabályozás során használt állapotegyenletét. A repülıgép irányítása a
csőrıkormányokkal, magassági kormánnyal és az oldalkormánnyal illetve a hajtómő
teljesítményének szabályozásával lehetséges.
2.1. ábra. A repülıgép tengelyei és beavatkozó szervei
A csőrıkormánnyal a repülıgépet a hossztengelye (x) mentén forgathatjuk el
(orsózás), a magassági kormány segítségével az (y) tengely mentén forgathatjuk a
géptestet. Ezzel bólintó momentumot létrehozva. Az oldalkormánnyal pedig a
függıleges (z) tengely körül végezhetünk forgatást (legyezés).
A szabályozó tervezés és a megtervezett szabályozó mőködésének bemutatása során az
F-16 VISTA modellt alkalmaztam. A General Dynamics (ma Locheed Martin) VISTA
program közel kilenc éven keresztül tartott az Egyesült Államokban, melynek keretén
belül F-16-os harci repülıgépet alakítottak át kutatási és tesztelési célokra.
9. - 8 -
2.2. ábra. F-16 VISTA
Az átalakított repülıgép farokrészébe három számítógép került elhelyezésre, melyek
segítségével akár repülés közben is változtatni lehetett a repülıgép stabilitási
tulajdonságait. Ezen tulajdonságok nyomán lehetıség nyílt valóban repülésre képes
szimulátorral tesztelni az egyes szabályozó rendszereket. A tesztrepülıgép irányításában
a hagyományos beavatkozó szervek mellett részt vett a tolóerı vektorálás elvén mőködı
hajtómő is. A tolóerı vektorálás segítségével a hajtómő gázsugara nem csak a
hossztengellyel párhuzamos irányban tud kiáramlani. Ennek segítségével lehetıvé vált
a nagyon magas állásszögek esetén történı repülés is.
10. - 9 -
2. 1 Az F-16 VISTA LPV dinamikus modellje a bólintási
szögsebesség szabályozáshoz
A bólintási szögsebesség szabályozásához a repülıgép longitudinális
dinamikájának ismerete szükséges. Ebben az esetben bemenetként csupán a magassági
kormányt alkalmazzuk. A tervezéshez az F-16 VISTA LPV (Linear Parameter-Varying)
lineáris paraméter függı modelljét alkalmaztam[1]. A nemlineáris modellt P(h,M)-el
fogom jelölni. A modell két részre bontható, az egyik a repülıgépek modellezése esetén
gyakran alkalmazott rövid periódusú egyenletek (2.1), amelyek a repülıgép mozgását
adják meg, a másik a magassági kormány beavatkozóját megadó egytárolós tag (2.2).
(2.1)
α : állásszög (fok), q: bólintási szögsebesség (fok/sec), edδ : magassági kormány
kitérése (fok).
2.20
2.20
+
−=
=
s
P
P
act
ecacted δδ
(2.2)
ecδ : a magassági kormányra adott kitérítési utasítás Megjegyezzük, hogy a negatív
elıjel csupán megegyezés eredménye.
A (2.1)-bıl látható, hogy a modell állapotváltozói az α és q. Kimenetként a q állapotot
vezetjük ki. Az állapotteres leírás:
=
qMM
Z
LPVA
α
α 1
=
e
e
LPV
M
Z
B
δ
δ
(2.3)
[ ]10=LPVC 0=LPVD
ed
q e
e
M
Z
qMM
Z
qdt
d
δ
αα
δ
δ
α
α
+
=
1
11. - 10 -
A modellben szereplı dimenzionális együtthatók e
MMMZ q δαα ,,, és e
Zδ vízszintes,
állandó sebességő repülés esetén fıleg csak a magasságtól (h) és a Mach számtól (M)
függenek. Ezt felhasználva a (2.1) LPV verziója is elkészült az Air Force Research
Laboratory nagy pontosságú nemlineáris F-16 VISTA modelljének a következı
munkapontokon történı linearizálásával:
[ ]85.075.065.055.045.035.0=M (2.4)
[ ]250001500050001000=h
A szimuláció befejezése után a kapott adatokra polinomot illesztve meghatározták a
dimenzionális együtthatókat, melyek a következıképpen néznek ki:
hMMMhMh
e
M
MhMh
e
Z
MhMhqM
hMMMhMhM
MhMhZ
23
42.2
2
3.99
4
1096.86.40
4
1073.116.8
6
1098.734.0
8
1075.8
3
1038.1
5
1086.412.2
6
1006.7228.0
23
1092.2
2
2.56
3
1031.34.68
4
1007.81.17
5
1015.56.2
7
101.422.0
−
+−
−
⋅−+
−
⋅+−=
−
⋅+−
−
⋅+
−
⋅−=
−
⋅+−
−
⋅+−=
−
⋅−+
−
⋅+−
−
⋅−=
−
⋅+−
−
⋅−=
δ
δ
α
α
(2.5)
A (2.5) polinomokat a (2.1)-be helyettesítve kapjuk a PLPV(h,M)-el jelölt modellt. Ez
még nem tartalmazza a beavatkozó szervek dinamikáját. P(h,M)-et PLPV(h,M) és Pact
felhasználásával kapjuk:
actLPV PMhPMhP ⋅= ),(),( (2.6)
Az így kapott modell már jól reprezentálja az F-16 VISTA rövid periódusidejő
dinamikáját a [ ]ftfth 250005000∈ és [ ]8.04.0=M repülési tartomány esetén. A
magasság mértékegysége az amerikai mérési eredmények könnyebb felhasználása
céljából „láb” (ft), mely SI mértékrendszerben 31,26 cm-nek felel meg. Annak ellenére,
hogy PLPV(h,M) jól modellezi P(h,M)-et, természetesen nem tartalmazza a modellezési
hibákat, melyeket modellbizonytalanságnak tekintünk és m∆ -el jelölünk. m∆ jelenti az
eltérést (több értelemben) a modell és a valós repülıgép dinamikája között.
Így:
P(h,M)=P(h,M)(1+ m∆ ) (2.7)
12. - 11 -
2. 2 A zavarójel becslésen alapuló szabályozási technika
A szabályozó tervezésének fı célja egy olyan robusztus szabályozó tervezése az
F-16 VISTA-hoz, amely az egész repülés tartományon ( [ ]ftfth 250005000∈ és
[ ]8,04,0=M ) biztosítja az 1. szintő irányíthatósági tulajdonságokat [1]. Az 1.
szinthez tartozó idıtartománybeli specifikációk a bólintási szögsebesség ugrásválaszára
a 2.3. ábrán, illetve a 2.1 táblázatban láthatók.
2.3. ábra. A bólintási szögsebességre vonatkozó specifikációk értelmezése
2.1. táblázat. Az 1. szinthez tartozó idıtartománybeli specifikációk
Bólintási szögsebesség ugrásválaszára vonatkozó specifikációk
Paraméter 1. szint 2.szint
t1max 0,12 sec 0,17 sec
∆q2/∆q1 0,30 0,60
∆t max 500/VT sec 1600/ VT sec
∆t max 9/ VT sec 3,2/ VT sec
VT jelöli a valódi sebességet (ft/sec)
13. - 12 -
A fent bemutatott irányíthatósági specifikációkat szem elıtt tartva egy korábbi munka
[11] eredményeit figyelembe véve választottam egy referencia modellt vagy elérni
kívánt dinamikát, mely eleget tesz az 1.szintő követelményeknek a teljes repülési
tartományban, a továbbiakban ezt a modellt Pd-vel fogjuk jelölni.
22
2
445,02
4
+⋅⋅⋅+
=
ss
Pd
(2.8.)
A robusztus szabályozó tervezése az ún. zavarójel becslın alapul, amely érzéketlenné
teszi a szabályozást a zavarójelekkel és a modellbizonytalanságokkal szemben. Az
általunk felhasznált szabályozási struktúrát korábban több mozgásszabályozási eljárás
során sikerrel alkalmazták (2.2.2). (Ohinsi, 1987 [4]; Umeno & Hori, 1991 [5]; Güvenc
és Sirinsivan, 1994 [6]; Bünte et al.,2001 [7]; Aksun-Güvenc et al., 2001[8]). A VISTA
bólintási szögsebesség szabályozásának esetében alkalmazott irányítási struktúra:
2.4. ábra. A bólintási szögsebesség szabályozás blokkvázlata
Ahol P(h,M) jelöli a felnyitott kör átviteli függvényét, melynek bemenete a magassági
kormányra adott parancs ( cδ ) kimenete pedig a bólintási szögsebesség (q). Pd jelöli az
elérni kívánt dinamikát. Q és Pd szőrık valósítják meg a tényleges bólintási
szögsebesség szabályozást. Feltételezzük, hogy a zavarások (d) közvetlenül a modell
kimenetére hatnak, így a modellben a d –t a q-val összegezve csatoljuk vissza. A
bólintási szögsebességet mérı szenzorok zaja (n) a visszacsatolt jellel összegzıdik a
Q/Pd szőrı elıtt. Ez egyszerően abból ered, hogy itt helyezkednek el a gyorsulásmérık.
A zavarójelek a szabályozó felépítésébıl adódóan nem okoznak problémát, mivel a
ecMhP δ),( taghoz kapcsolódnak, így a különbségképzés során a szabályozó ezeket is
figyelembe veszi. Általában egy, a 2.4. ábrán látható két szabadságfokú szabályozó
14. - 13 -
megtervezése maga után vonná mind a Q, mind pedig a Pd együttes tervezését. Azonban
esetünkben a Pd a Q-tól függetlenül kerül megválasztásra. Ezután a feladat a Q szőrı
megtervezése azzal a céllal, hogy a magassági kormányra adott parancs ( cδ ) egy
megfelelı választ idézzen elı a repülési körülmények nagy tartományon való változása
(h-M), a zavarójel (d), az érzékelık zaja (n) illetve a modell bizonytalanságok ellenére
is. Másképp megfogalmazva olyen Q-t kell választani, melyre a teljes repülési
tartományon teljesül, hogy jó közelítéssel:
cdPq δ⋅= (2.9.)
A Q szőrı relatív fokszámát úgy kell megválasztani, hogy legalább akkorra
legyen, mint a Pd fokszáma. Ez a megkötés a Q/Pd tag kauzalitása miatt szükséges.
Q kívánt formájának és a zárt kör elvárt karakterisztikájának eléréséhez segítséget nyújt
a 2.4.ábrán bemutatott irányítási architektúra átviteli függvényeinek vizsgálata.
A felnyitott kör átviteli függvénye:
)1(
),(
),(
QP
QMhP
MhL
d −⋅
⋅
= (2.10.)
A rendszer eredı átvitele:
ecMhPq δ),(=
)1( Q
q
P
Q
q
P
Q
Q d
c
d
eccec
−
−
=−+=
δ
δδδ
q
Q
MhP
P
Q
Q
MhP
q
d
c
)1(
),(
)1(
),(
−
⋅−
−
= δ
QMhPQP
MhP
QMhPPQ
PQ
Q
MhP
P
Q
Q
MhP
Q
MhP
q
P
Q
Q
MhP
Q
MhPq
d
d
d
d
cdc
),()1(
),(
),()1(
)1(
)1(
),(
)1(
),(
1
)1(
),(
)1(
),(
)1(
),(
+−
=
+⋅−
⋅−⋅
−
=
⋅
−
+
−
=
−
−
−
=
δδ
15. - 14 -
A fenti levezetésbıl:
QMhPQP
MhPP
MhH
d
d
),()1(
),(
),(
+−
⋅
= (2.11.)
A következıkben a zavarjel elnyomás (érzékenység) S, a szenzorzaj elnyomása
(kiegészítı érzékenység) T és a performanacia Hp. A szuperpozíció elve és, hogy a
visszacsatolt rendszer eredı átviteli függvénye egyenlı az „elıre ág” erısítése osztva
„egy +hurokátviteli függvény” az irányítandó rendszer további átviteli függvényei:
QMhPQP
QP
MhLd
q
MhS
d
d
),()1(
)1(
),(1
1
),(
+−
−
=
+
== (2.12.)
QMhPQP
QMhP
MhL
MhL
n
q
MhT
d ),()1(
),(
),(1
),(
),(
+−
=
+
=
−
= (2.13.)
),(),( MhHPMhH dp −= (2.14.)
2.11 – 13.-ból egyértelmően látszik, hogy Q-nak aluláteresztı szőrınek kell lennie
egységnyi erısítéssel. Alacsony frekvenciákon, amikor 1→Q azt szeretnénk elérni,
hogy dc Pq →δ/ és 0/ →dq . Magas frekvenciákon, amikor 0→Q , akkor
0/ →nq .
A mőködés pontos bemutatása érdekében legyen 1=Q , ezen feltétel mellett vizsgáljuk
2.11.-et és 2.12.-t:
d
d
Q P
MhP
MhPP
MhH =
⋅
==
),(
),(
),(1 (2.15.)
0
),(
0
),(1 ===
MhP
MhSQ (2.16.)
Jól látható, hogy megfelelı modell beállítás és zavarójel elnyomás érhetı el Q
sávszélességén belül ( P(h,M) változásának ellenére ). Természetesen a beavatkozószerv
sávszélességénél nem érdemes Q sávszélességét nagyobbra választani, mert ezzel nem
érhetı el jobb eredı átvitel és zavarójel elnyomás.
16. - 15 -
2. 3 Q meghatározása
Q meghatározása paramétertér technikával történik (Ackermann et al., 1993 [9];
Odhental & Blue, 2000 [10]), azt szem elıtt tartva, hogy olyan bólintási szögsebesség
szabályozót tervezzünk, mely eleget tesz a 2.1 táblázatban található szigorú 1. szintő
irányíthatósági specifikációknak a teljes paramétertartományban. A tervezést úgy
végezzük, hogy a tervezési specifikációkat leképezzük Q szabad paraméter terére. Az
elvárt dinamika relatív fokszámának legalább kettınek kell lennie a Q/Pd kauzalitása
miatt.
Q-t az alábbi általános formában keressük:
QQQ
Q
ss
Q 22
2
2 ωωζ
ω
++
= (2.17.)
A tervezendı szabad paraméterek Qζ (csillapítás) és Qω (csillapítatlan sajátfrekvencia)
lesznek. Ezek után paraméter teres módszerek alkalmazásával térképezzük fel a Qζ - Qω
paraméter teret a tervezési specifikációkat kielégítı megoldáshalmazt keresve. Az egyes
specifikációk a 2.18-19. egyenletekkel adottak. Azt a tartományt, ahol mind a három
követelmény teljesül ún. alkalmas tartománynak nevezzük.
CMhproots QQce ⊂)},,,({ ζω (Hurwitz stabilitás) (2.18.)
1),,,( ≤⋅ ∞QQu MhTW ζω (Robusztus stabilitás) (2.19.)
1),,,( ≤⋅ ∞QQpp MhHW ζω (Nominális performancia) (2.20.)
A 2.21. egyenlet biztosítja, hogy a zárt kör összes gyöke a negatív félsíkon legyen.
)},,,(1{),,,( QQQQce MhLNumeratorMhp ζωζω +≡ (2.21.)
A 2.19. és 2.20. egyenletekben a T és Hp a 2.13. és a 2.14. egyenletekbıl származik. A
súlyozótényezık Wu és Wp [11]-ban kerültek meghatározásra (Spillman et al.1996).
Qζ - Qω paraméter térben egy korábbi szakdolgozat [3] keretén belül meghatározásra
került az alkalmas tartomány az említett paraméterteres technika alkalmazásával. A
17. - 16 -
robusztus szabályozónkhoz ebbıl az alkalmas tartományból választottam egy Qζ - Qω
párost.
A következı választással éltem:
Qω = 37
Qζ = 0,7
A továbbiakban ezzel a paraméter párossal végeztem a szimulációkat a következı
alfejezetben, és ez a robusztus szabályozó szerepel a prediktív irányítás alsóbbrendő
szabályozójaként a dolgozat második felében.
2. 4 A robusztus szabályozó stabilizáló tulajdonságainak vizsgálata
szimuláció segítségével
A szimulációkat MATLAB/Simulink környezetben végeztem. A 2.4. ábrán
látható irányítási architektúrát MATLAB S-függvény segítségével valósítottam meg,
mely magában foglalja a beavatkozó szerv dinamikáját is. A megvalósított szimulációs
összeállítás a 2.5. ábrán látható. A repülıgép nemlineáris paraméter függı modellje,
illetve a korábban megválasztott csillapítású ( Qζ ) és csillapítatlan sajátfrekvenciájú
( Qω ) lineáris szabályozóval együtt az A/Candcontroller blokkban került elhelyezésre. A
blokkon belüli elhelyezés a 2.6. ábrán figyelhetı meg. A blokk delta_ec nevő bemenete
tarozik a modell ecδ bemenetéhez, mely a magassági kormányra adott parancsot jelenti.
A szimuláció során erre a bemenetre egy egységnyi magas négyszögjel került, mely a
botkormány felfelé történı kitérítését jelenti egy bizonyos ideig, majd visszatérítését a
kiindulási helyzetbe. A bemenı jel a 2.8. ábrán látható. A modell számára szükséges
paraméterek a magasság (h) és a Mach szám (M) a MATLAB munkatérben kerültek
meghatározásra, majd ezután importálással kerültek át a Simulink felületre. Az
alkalmazott magasság és Mach szám tartomány a 2.9.-10. ábrákon látható.
18. - 17 -
2.5. ábra. A szabályozási kör szimulációs összeállítása
A 2.5.ábrán látható A/Candcontroller blokkon belül az LPV modell a beavatkozó szerv
(magassági kormány) dinamikájával együtt került megvalósításra egy MATLAB S-
függvényben, melynek neve: nonlinf16lpcwad_sfcn. Itt került megvalósításra a bólintási
szögsebesség (q) visszacsatolása is a lineáris szabályozóhoz (a blokkban Controller
néven).
2.6. ábra. Az A/Candcontrol blokk belsı elrendezése
19. - 18 -
A szabályozó belsı felépítése a 2.7. ábrán tekinthetı meg. A szabályozó struktúráján
felismerhetı a 2.4. ábrán fentebb bemutatott szabályozási elrendezés.
A szimuláció futtatását követıen a kimenetként az állásszöget (α ) és a bólintási
szögsebességet (q) figyeltük meg szkópok segítségével. Utóbbit a 2.11. ábrán
szemléltetésként együtt ábrázoltuk a magassági kormányra adott paranccsal.
Megfigyelhetı, hogy a szabályozó tökéletesen mőködött . A végértékhez képest egy
nagyjából 18%-os túllövés figyelhetı meg. Az α kimenet a 2.12. ábrán látható.
2.7. ábra. A lineáris szabályozó megvalósítása
2.8. ábra. A beavatkozójel
20. - 19 -
2.9. ábra. A szimuláció során alkalmazott magasság tartomány
2.10. ábra. A szimuláció során alkalmazott Mach-szám tartomány
21. - 20 -
2.11. ábra. A magassági kormányra adott parancs (piros) a bólintási szögsebességgel
(fekete) együtt
2.12. ábra. Az állásszög változása a manıver közben
22. - 21 -
Ezek után a rendszer zavarójel kiküszöbölı hatását is ellenıriztem szimuláció
segítségével. A magasság (h), Mach-szám (M) tartománya és a beavatkozó jel a korábbi
szimulációéval megegyezik. A szimulációs elrendezés a 2.13. ábrán látható. A korábbi
esethez képest gyakorlatilag annyit módosítottam a szimulációs elrendezésen, hogy a
2.4. ábrán látható blokkvázlat alapján a bólintási szögsebesség (q) visszacsatolását
kiegészítettem a zavarójel (d) hozzáadásával.
2.13. ábra. A szabályozási kör szimulációs összeállítása zavarójel beiktatás esetén
A zavarójelet egy egyszerő jelgenerátor segítségével állítottam elı, mely fizikailag lehet
akár egy kisebb széllökés, vagy turbulencia okozta lökéshullám. A zavarójel a 2.14.
ábrán, a szimuláció eredménye, pedig a 2.15 , 2.16. és 2.17. ábrákon figyelhetı meg. Jól
látható, hogy a zavarójel nem okozott komolyabb problémát a válaszban. Néhány
kisebb lengés megfigyelhetı a kimeneten, de ezek mértéke nem befolyásolja a
repülıgép irányíthatóságát.
23. - 22 -
2.14. ábra. A zavarójel
2.15. ábra. A magassági kormányra adott parancs (piros) a bólintási szögsebességgel
(fekete) együtt a zavarójel figyelembevételével
24. - 23 -
2.16. ábra. Az állásszög változása a manıver közben a zavarójel figyelembevételével
2.17. ábra. A beavatkozójel a zavarójel figyelembevételével
25. - 24 -
3. Mozgó horizontú prediktív (RHC) repülıgép irányítás
tervezése
A szakdolgozatom ezen részében egy mozgó horizontú prediktív repülıgép
irányítás tervezését mutatom be a longitudinális mozgás esetén, amely a korábban
megtervezett robusztus irányítás fölérendelt irányításaként mőködik. Az elızı
fejezetben részletesen bemutattam az alkalmazott repülıgép modellt és a bólintási
szögsebesség szabályozásához használt robusztus szabályozó tervezését is.
A mozgó horizontú prediktív irányítási technika, más néven modell alapú
prediktív irányítás fejlesztése kiemelt fontosságú feladat, köszönhetıen több sikeres
ipari alkalmazásnak, melyek ezt a módszert alkalmazzák. A folyamatirányítás kiváló
alkalmazási területet kínál ezen algoritmusok számára, melyek kritikus kényszereket is
figyelembe véve érnek el biztonságosabb és hatékonyabb mőködést. Az említett ipari
folyamatok a lassú dinamikájuk és a nagy idıállandójuk miatt különösen jó alapot
nyújtanak az iteratív optimalizációnak, mely az RHC (Receding Horizon Control)
módszerek alapja.
Az elmúlt pár évtizedben vált világossá, hogy a prediktív irányítási módszerek
rendelkeznek olyan tulajdonságokkal, melyek lehetıvé teszik az alkalmazását gyorsabb
dinamikájú, bonyolultabb nemlineáris rendszerek irányításának esetében is. Az RHC
módszerek legfıbb szempontja a valós idejő megvalósítás, amennyiben megfelelı
számítási erıforrások állnak rendelkezésre az optimalizációs probléma minden
mintavételi intervallumban történı megoldásához. Ebben az irányban korábban már az
Egyesült Államokban a DARPA (Defense Advanced Research Projects Agency a
Fejlett Kutatási Védelmi Projektek Ügynöksége) végzett kutatásokat a SEC (Software
Enabled Control) keretén belül, melyben egy Boeing T-33/UCAV tesztrepülıgépen
vizsgálták, hogy alkalmazhatók-e ilyen jellegő, bonyolult, nemlineáris rendszerek
esetében is a nagy számításigényő prediktív irányítási algoritmusok. A vizsgált mozgó
horizontú prediktív irányítási eljárások jó lehetıségeket kínálnak a nagyobb
teljesítmény elérésére, azonban jelenleg a repülıgépeken elérhetı korlátozott számítási
kapacitás gátolja ezen algoritmusok valós idejő alkalmazását. A teljesítmény és a
számítási idı közötti kompromisszumot is behatóan tanulmányozták [16] egy F-16-os
26. - 25 -
repülı dinamikus modelljén folytatva a szimulációkat, melyben az általam is használt
adaptív RHC módszert és költségfüggvényt alkalmazták.
3.1 A prediktív irányítás elméleti áttekintése
Az optimalizációs probléma néhány módosítással a [15] hivatkozás lineáris
MPC (Model Predictive Control) megfogalmazásán alapszik. A legtöbb lineáris
prediktív szabályozás esetében a minimalizálandó kvadratikus költségfüggvény a
következıféleképpen néz ki:
ρε
δ
++∆++−+= ∑∑
−
==
1
)(0
2
1
2
)|()|()|(ˆ)(
c
c
e
p
e
H
Hi
R
H
i
Qref kikrkikykikykJ (3.1)
ahol )|(ˆ kiky + jelenti a k-ik idıpillanatban az addig rendelkezésre álló adatok
alapján a ik + -ik pillanatban a becsült kimenet értékét. A referenciapálya predikció
során figyelembe vett jövıbeli mintáinak számát pH jelöli. A vezérlı jelet minden
mintavételi idıpontban a következı cH darab idıpillanatra számoljuk, és ezekbıl adjuk
ki a soron következı elsıt. A vezérlı jel csupán a cHδ idıpont egészszámú
többszöröseiben változhat, ahol Z∈δ . A vezérlı jelet a cHik ≥+ idıpillanat után
konstansnak tekintjük. Ez azt jelenti, hogy a jövıbeli beavatkozó jel egy lépcsıs
függvény, melyben csupán cHδ intervallumonként történhet ugrás. A referenciapálya
refy jelenti az elıírt kimenetet, Q és R megfelelı dimenziójú pozitív definit
súlyozómátrixok. Az ε segédváltozó és a súlyozása ρ csupán finomításra használatos,
jelentıségükre késıbb térek ki a korlátozások kapcsán. A mozgó horizont elve a fentiek
alapján a következı (3.1. ábra): A költségfüggvény minden idıpillanatban a következı
pH darab mintavételi idıpontban a kimeneti vektor és a referenciapálya £2 norma-beli
különbsége, mely közben a beavatkozó jel változásának ( r∆ ) a mértékét korlátozzuk.
27. - 26 -
3.1. ábra. A mozgó horizont elve
Az irányításhoz szükséges beavatkozó jelek számításához ismernünk kell a rendszer
pontos modelljét. Lineáris modell alkalmazása esetében a )(kJ minimalizására irányuló
optimalizációs feladat az ún. kvadratikus programozási feladatra vezethetı vissza,
melynek megoldására gyors és megbízható numerikus algoritmusok állnak
rendelkezésre.
28. - 27 -
3.2 A belsı szabályozási kör összevont állapotváltozós leírásának
elıállítása
A prediktív irányításhoz elı kell állítanunk az elızı fejezetben alkalmazott
irányítási elrendezésnek az állapotváltozós leírását. A teljes szabályozási kör a 3.2.
ábrán látható, a Szabályozó blokk belsı felépítése pedig a 3.3. ábrán figyelhetı meg. Jól
látható, hogy a q visszacsatolásából és a szabályozó felépítésébıl adódóan vannak
algebrai hurkok a szabályozási körben. Mivel ezek jelenléte nem kívánt jelenségeket
idézhet elı a MATLAB/Simulink alatti vizsgálatoknál, a modell prediktív irányítása
során, ezért eliminálnunk kell ıket a szabályozási architektúrából. Bemenetnek csupán a
cδ -t tekintjük, a kimenet pedig a q lesz.
3.2. ábra. Az alsóbbrendő szabályozási kör sematikus felépítése
3.3. ábra. A szabályozó belsı felépítése
29. - 28 -
Elsı lépésként tekintsük a rendszer egyes komponenseihez tartozó jelöléseket:
A szabályozóra vonatkozó állapotváltozós leírás (3.2), (3.3) és a hozzá tartozó ki és
bemenetek (3.4):
ccccc uBxAx +=& (3.2)
ccccc uDxCy += (3.3)
ecc
c
c
y
q
u
δ
δ
=
=
(3.4)
A szabályozóhoz tartozó állapotváltozós mátrixokat, úgy állítjuk elı, hogy a 3.3 ábrán
látható elrendezés alapján felírjuk az eredı átviteli függvényt (3.5):
qPQQI
qPQQ
dcec
deccec
/)(
/
−=−
−+=
δδ
δδδ
(3.5)
qPQQIQI dcec /)()( 11 −−
−−−= δδ
A Q alakja (2.17):
QQQ
Q
ss
Q 22
2
2 ωωζ
ω
++
=
Ebben a 7.0=Qζ , 37=Qω választással éltem. dP alakja (2.8):
22
2
445,02
4
+⋅⋅⋅+
=
ss
Pd
Számítsuk ki az eredı átviteli függvény két komponensének átviteli függvényeit külön-
külön.
QQQ
QQ
QQQ
QQ
QQQ
Q
ss
ss
ss
ss
ss
QI 2222
2
22
2
2
)2(
2
2
2
1)(
ωωζ
ωζ
ωωζ
ωζ
ωωζ
ω
++
+
=
++
+
=
++
−=−
30. - 29 -
)2(
2
)(
22
1
QQ
QQQ
ss
ss
QI
ωζ
ωωζ
+
++
=− −
)2(
)164(
16
4
445,02
2)2(
2
/)(
2
2
2
22
22
222
1
QQ
Q
QQQ
Q
QQ
QQQ
d
ss
ss
sss
ssss
ss
PQQI
ωζ
ω
ωωζ
ω
ωζ
ωωζ
+
++
=
⋅+⋅⋅⋅+
+++
++
=− −
A kapott eredményeket helyettesítsük be a (3.5) -ben elıállított alakra:
q
ss
ss
ss
ss
QQ
Q
c
QQ
QQQ
ec
)2(
)164(
16
)2(
2
2
2
22
ωζ
ω
δ
ωζ
ωωζ
δ
+
++
−
+
++
= (3.6)
Az így kapott átviteli függvényekbıl MATLAB segítségével állítottam elı az
ccc CBA ,, és cD mátrixokat.
A bólintási szögsebesség szabályozáshoz használt LPV modell állapotváltozós leírása
(3.7),(3.8), a modell bemenete és a kimenete (3.9), melyben az egyes mátrixok
felépítése megtekinthetı az elızı fejezetben(2.3).
LPVLPVLPVLPVLPV uBxAx +=& (3.7)
LPVLPVLPVLPVLPV uDxCy += (3.8)
qy
u
LPV
edLPV
=
= δ
(3.9)
A beavatkozó szerv dinamikáját jelképezı egytárolós lengıtag átviteli függvénye
(3.10), melybıl az állapotváltozós leírása könnyedén elıállítható:
2.20
2.20
+
−
=
s
Pact (3.10)
31. - 30 -
Ezt a dinamikát egyszerően felvesszük az LPV modell állapotai közé. Az átalakítás után
kapott állapotegyenletek T
edp qx ),,( δα= állapotválasztással
ppppp uBxAx +=& (3.11)
pp xCq =
ecpu δ=
melyben az egyes mátrixok:
ecpxLPVBLPVA
px δ
−
+
−
=
2.20
0
2.200
&&
(3.12)
[ ] pxq 010=
A következı lépésként az így kapott rendszerhez kell hozzáfőznünk a szabályozó
állapotait. A (3.4-5.) felírható a következıképpen:
qBBxAx cccccc 21 ++= δ& (3.13)
qDDxC cccccec 21 ++= δδ
ahol (3.11) alapján pp xCq = . Ezután helyettesítsük be (3.12)-et (3.10)-be:
)( 21 qDDxCBxAx cccccpppp +++= δ& (3.14)
majd után (3.13) és (3.12) alapján az eredı rendszer állapotegyenlete:
c
c
cp
c
p
cpc
cppcpp
c
p
B
DB
x
x
ACB
CBCDBA
x
x
δ
+
+
=
1
1
2
2
&
&
&
&
(3.15)
=
c
p
p
x
x
Cq ]00[
32. - 31 -
3.3 A prediktív irányítás során alkalmazott teljes modell
összeállítása
Mivel a prediktív irányítás egy mintavételes szabályozási módszer, ezért a
predikcióhoz elı kell állítanunk a rendszer diszkrét idejő leírását minden egyes
idıpillanatban.
)()()1( krBkxAkx kk +=+ (3.16)
)()()( krDkxCkq kk +=
ahol k jelenti az idıpillanatot. Az LPV modell számára minden idıpillanatban
rendelkezésre kell álljon a megfelelı magasság (h) és Mach-szám (M) páros. Ezen
párok vektorba rendezve: T
kMkhk )]()([)( =ρ .
)),(()),((
)),(()),((
kBDkAC
kBBkAA
kk
kk
ρρ
ρρ
==
==
(3.17)
Elsı lépésként állítsuk össze a teljes prediktív irányításhoz használandó modellt.
Ehhez a (3.15) belsı szabályozott kört, kibıvítjük egy újabb állapottal annak érdekében,
hogy illeszkedjen az RHC irányítási sémába (3.4. ábra). Egy integrátort helyezünk a
beavatkozó szerv bemenetéhez, hogy az RHC kimenete után a rr →∆ átalakítást
elvégezze. A kibıvített belsı szabályozott kör állapotváltozós leírása:
}
)(
)1(
)(ˆ
0)(
)1(ˆ
)(ˆ)1(ˆ
kr
I
B
kr
kx
I
BA
kr
kx
kk B
k
kA
kk
k
∆
+
−
=
+
+
484764847648476 ξξ
(3.18)
[ ] [ ] {
)(
)1(
)(ˆ
)(ˆ
)(ˆ
)(ˆ
krD
kr
kx
DCky
kk
D
k
k
C
kk
k
∆+
−
=
43421
43421321
ξ
ω
33. - 32 -
3.4. ábra. Az alkalmazott RHC irányítási elrendezés
3.4 A lineáris prediktív irányítási feladat visszavezetése kvadratikus
programozási feladatra
Az optimalizálási feladatot a bemeneti jel )(kr∆ megválasztásának minimalizálására
írjuk fel. Elsı lépésben a (3.1) költségfüggvényt fogalmazzuk meg. Tekintsük a
költségfüggvényt mátrixos alakban:
22
)()()(ˆ)(
ee
RQ
kRkYrefkYkY ∆+−= (3.19)
amelyben az )(ˆ kY és )(kYref egy Hp elembıl álló oszlopvektor, amelyek a számított
kimenetet illetve a referenciapálya mintáit tartalmazzák a következı Hp idıpillanatra, a
)(kR∆ pedig egy Hc dimenziós oszlopvektor, mely a bemenet következı Hc darab
értékét foglalja magában.
34. - 33 -
+
+
=
)|(ˆ
)|(ˆ
)(ˆ
kHky
kiky
kY
p
M
+
+
=
)|(
)|(
)(
kHky
kiky
kY
pref
ref
ref M
−+∆
∆
=∆
)|1(
)|(
)(
kHkr
kkr
kR
c
M
továbbá a súlyozómátrixok:
=
][00
0]2[0
00]1[
p
e
HQ
Q
Q
Q
L
MOMM
L
L
(3.20)
−
=
]1[00
0]1[0
00]0[
cHR
R
R
eR
L
MOMM
L
L
(3.21)
Ezen alakból ki kell fejeznünk )(ˆ kY -t )(kR∆ segítségével, ehhez elıször fejezzük ki
)(ˆ kX -t )(kr∆ segítségével. A (3.18)-ban felírt modell iteratív felhasználásával
elıállíthatjuk a rendszer jósolt állapotait. Ez gyakorlatilag a )|(ˆ kik +ξ ,ξˆ i lépéssel
elıretartó predikciója ( i =1… Hp).
),|()(ˆ)|1(ˆ kkrBkAkk kk ∆+=+ ξξ
M
),|()|1()|1(ˆ)|2(ˆ 2
kkrBkkrBAkkAkk kkkk ∆++∆++=+ ξξ
),|1(...)|()(ˆ)|(ˆ 1
kHkrBAkkrBAkAkHk ck
HH
kk
H
k
H
kp
cppp
−+∆++∆+=+
−−
ξξ
35. - 34 -
Ebbıl a kimenet predikciója:
),|()|()(ˆ)|1(ˆ kkrDkkrBCkACkk kkkkk ∆+∆+=+ ξω
M
),|2()|()|1()|1(ˆ)|2(ˆ 2
kkrDkkrBCkkrBACkkACkk kkkkkkkk +∆+∆++∆++=+ ξω
),|1(...)|()(ˆ)|(ˆ 1
kHkrBACkkrBACkACkHk ck
HH
kkk
H
kk
H
kkp
cppp
−+∆++∆+=+
−−
ξω
A levezetett egyenleteket mátrixos alakba rendezve:
+
=
+
++
+
+
+
Ψ
+
Ω
)(ˆ
)|(ˆ
)|1(ˆ
)|(ˆ
)|2(ˆ
)|1(ˆ
)(
1
2
)(
k
AC
AC
AC
AC
AC
kHk
kHk
kHk
kk
kk
k
H
kk
H
kk
H
kk
kk
kk
k
p
c
c
p
c
c
ξ
ω
ω
ω
ω
ω
43421
M
M
444 3444 21
M
M
(3.22)
444 3444 21
M
444444444 3444444444 21
L
MOMM
L
L
OOMM
M
L
)(
21
1
21
)|1(
)|(
0
kR
c
k
HH
kkk
H
kkk
H
kk
kkkk
H
kkk
H
kk
kkk
H
kkk
H
kk
kkkkkk
kkk
kHkr
kkr
BACBACBAC
BACBACBAC
BCBACBAC
DBCBAC
DBC
k
cppp
cc
cc
∆
Θ
−−−
−
−−
−+∆
∆
+
Ebbıl felírható a kimenet predikciója:
)()(ˆ)( kRkkY kk ∆Θ+Ψ= ξ (3.23)
Behelyettesítve a becsült kimenetet (3.23) a költségfüggvénybe (3.1), egy kvadratikus
programozási feladatot kapunk )(kR∆ -ra, a bemeneti jel megváltozására megadva:
36. - 35 -
=+∆+Ψ+−∆Θ+Ψ= ρεξεξ
22
)())(ˆ)(()()(ˆ)(
e
e
RQ
kkk kRkkkRkkJ
ρεεεε +∆∆++Θ∆−∆Θ∆Θ= )()()()()(2)()()( kRRkRkQkkQkRkRQkR e
T
e
T
ek
T
ke
TT
k
ρε++∆−∆∆= constGkRkRHkRkJ k
T
k
T
)()()()( (3.24)
ahol
,eke
T
kk RQH +ΘΘ= ),(2 kQG e
T
kk εΘ=
)()( kQkconst e
T
εε=
és )(kε a pályamenti hibát fejezi ki a jövıbeli referencia pálya és a rendszer kimenete
között:
)(ˆ)()()( kkkYk ref ξε Ψ−= . Itt eQ és eR megfelelı dimenziójú súlyozómátrixok, lásd
(3.20-21). (Ezen mátrixokban szereplı súlyozótényezık megválasztása történhet
paraméter függıen is).
Ahogy a legtöbb alkalmazás során, a mi esetünkben is vannak fizikai korlátai az egyes
beavatkozó szerveknek. Ezeket az ún. „kemény” kényszerekként definiáljuk a prediktív
irányítás tervezése során. Az általam vizsgált esetben az egyetlen beavatkozó szerv a
magassági kormány, mely kitérülésének a sebességére (a kitérülés megváltozására),
továbbá magára a kitérülésre kell felírni az optimalizáció során határértékeket.
ukHkukku p ≤++≤ )|(ˆ),...|1(ˆu (3.25)
Az egyes beavatkozó szerveknek a fizikai korlátait maguk a dinamikus modellek is
tartalmazhatják, ezzel is csökkentve annak a lehetıségét, hogy az optimalizáció
folyamán rossz eredményre jussunk. Emellett létezik egy másik fajta kényszer is,
melynek célja a repülıgép egyes manıverezési korlátainak reprezentációja, mint például
az z tengely irányú gyorsulás (nz) korlátozása. Ezen gyorsulás korlátozására mind a
pilóta, mind a repülıgép tőrıképességének határai miatt van szükség. Az alkalmazott
37. - 36 -
szabályozásnak kellıen sokoldalúnak kell lennie, hogy ezeket a fajta kényszereket
kezelni tudja a rendszer állapotától vagy a megvalósított repülési feladat egyes fázisaitól
függıen. Lényeges tudnivaló, hogy ezeket a kényszereket ún. „puha” kényszerekként
kezeljük a prediktív irányítás tervezése során. Amennyiben a modell ilyen jellegő
kimeneteire „kemény” kényszereket definiálunk, a modell pontatlanságok és zavarások
könnyen megoldhatatlan optimalizációs problémához vezethetnek. A kényszerek
„puhítására” bevezetünk egy segédváltozót, melyrıl a költségfüggvény felírásakor már
tettem említést, lásd (3.1). Amennyiben az optimalizáció során nem találunk megfelelı
megoldást, akkor ezen változó segítségével tudjuk kis mértékben „megsérteni” az adott
kényszert:
εε +≤++≤− zkHkzkkz p )|(ˆ),...|1(ˆz (3.26)
A kényszer megsértése csupán abban az esetben következik be, ha nem létezik
megfelelı megoldás az optimalizációs problémára, egyébként ugyanaz a megoldása,
mint a „kemény” kényszerek esetében.
A (3.22)-ben megfogalmazott lineáris predikciót alkalmazva a (3.25)-ben felírt
kényszerek alkalmazásával a R∆ és az ε optimalizációs változókra a minden egyes
idıpillanatban megoldandó kvadratikus programozási feladat a következıképpen néz ki:
ρε
ε
++∆−∆∆
∆
constGRRHR k
T
k
T
R,
min
(3.27)
[ ] [ ]keményRkemény kk ,, ω≤∆Ω
Az tervezés során megvalósított elrendezést a (3.4) –es ábrán figyelhetjük meg.
38. - 37 -
4. Szimulációs eredmények
A cél egy olyan szabályozás tervezése és implementálása volt, mely az elızı
fejezetben bemutatott robusztus szabályozás felsıbbrendő szabályozásaként mőködik.
A szimulációkat ebben az esetben is a MATLAB/Simulink környezetben végeztem. A
vizsgálatok során a korábbi szimulációknál alkalmazott magasság (h) és Mach-szám
(M) tartományt használtam. Ezen értékpárok ütemezése kiemelten fontos feladat, mivel
a prediktív irányítás számára minden idıpillanatban rendelkezésére kell álljon egy (h,M)
páros, mely az aktuális horizontban nem változik. Ezek a korábbiakhoz hasonlóan a
MATLAB munkatérben kerültek meghatározásra, ezután importálással kerültek a
Simulink felületre. A teljes szimulációs összeállítás a 4.1.ábrán figyelhetı meg. A 3.2
részben összeállított modell, mely tartalmazza a robusztus szabályozót és az F-16
VISTA LPV modelljét a beavatkozó szerv dinamikájával együtt, az A/Candcontroller
blokkban került elhelyezésre. A korábbiakhoz képest különbség, hogy a teljes modell
MATLAB S-függvényben került megvalósításra. Az így kapott modellnek összesen öt
állapota van. Kettı származik az eredeti LPV modellbıl, egy állapot felel meg a
beavatkozó szerv dinamikájának, és további két állapot felel meg a robusztus
szabályozónak. A mozgó horizontú prediktív irányítást az RHC blokk valósítja meg. A
3.1-ben bemutatott költségfüggvény minimalizálását a MATLAB quadprog
függvényének segítségével végeztem el. A referencia pálya jövıbeli Hp darab mintáját
minden egyes idıpillanatban a Reference blokk állítja elı.
Az alkalmazott irányítási algoritmus elsı lépéseként frissítjük a referenciapályát.
Ezután meghívjuk a prediktív irányítás függvényt, mely 50ms-os mintavételi idıvel
elıállítja a teljes modell 3.16.-ban bemutatott diszkrétidejő állapotváltozós leírását,
majd összeállítja a quadprog bemenetéül szolgáló mátrixokat (3.18) és (3.22) alapján.
Ehhez szükség van a folytonos modell aktuális mintavételi pontban vett állapotaira is,
ez az S-függvénybıl szintén elıállítható. Következı lépésként meghívjuk a quadprog
függvényt az elıállított mátrixokkal és a megfelelı korlátozásokkal. A függvény
visszatér a következı Hc darab mintavételi idıpontra számított beavatkozó jellel,
melyek közül kiadjuk a soron következı elsıt. Az alsóbbrendő szabályozási kör
bemenetén egy nulladrendő tartószerv végzi el a diszkrét/folytonos átalakítást, mely
után a vezérlı egy integrátoron keresztül kerül a delta_c bemenetre (ez fizikailag a
botkormány kitérítésekor keletkezı bólintási szögsebességet megváltoztató parancsnak
feleltethetı meg). Ezután a horizont továbbhalad.
39. - 38 -
4.1. ábra. A mozgó horizontú prediktív irányítás vizsgálata során alkalmazott szimulációs elrendezés
40. - 39 -
A következı részben három, különbözı paraméterekkel futtatott szimuláció eredményeit
mutatom be. A szimulációk minden esetben „hibridek”, mivel a prediktív irányítás egy
mintavételes szabályozás, ezzel szemben a szabályozott belsı kör, pedig folytonos idıben
mőködik. A Simulink konfigurációs paraméterei lehetıvé teszik, hogy az alkalmazott lépésközt
mi állíthassuk be, ezért a szimulációkat minden esetben változó lépésközzel futtattam, mivel az
egyes idıpillanatokban különbözhet az iterációs probléma megoldásához szükséges idıtartam.
Abban az esetben, ha ezt fixnek választjuk, akkor a szimuláció anélkül lép a következı
idıpillanatra, hogy megfelelı megoldást talált volna az optimalizációs problémára. Ilyen esetben
a kimenet a végtelenbe tart. A súlyozómátrixok (lásd 3.20-21.) számára a következı értékeket
választottam: IQe = és IRe 8.0= , ahol I az egységmátrix.
Az elsı esetben alapjelnek, hasonlóan a belsı robusztus szabályozó vizsgálata esetében
egy négyszögjelet választottam. Az alkalmazott predikciós horizont 0.5s (Hp=10), az irányítási
horizont pedig 0.25s (Hc=5). A beavatkozó jel minden egyes ütemben frissítésre kerül ( 1=cHδ ).
4.2. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott parancs
predikciója (piros) a bólintási szögsebességgel (fekete) együtt
41. - 40 -
A szimulációs elrendezés fıbb blokkjainak kimenetén megjelenı jelek a 4.2. ábrán figyelhetık
meg. A magassági kormányra adott parancs, mely az RHC blokknak szolgál referenciapályaként,
kék színnel van megjelölve. A referenciapálya és a rendszer minden idıpillanatbeli állapota
alapján prediktíven számolt beavatkozó jel, mely egy integrátoron keresztül került a belsı zárt
kör bemenetére, piros színnel látható. Jól megfigyelhetı továbbá, hogy a bólintási szögsebesség
(fekete), a referenciapályát túllövés nélkül követi, szemben a felsıbbrendő szabályozás nélkül
vizsgált esethez, ahol közel 19%-os túllövést produkált a rendszer (lásd 2.11.ábra). A prediktíven
számított beavatkozó jel, az integrátor bemenete elıtt a 4.3. ábrán figyelhetı meg. Az állásszög
(α ) változása manıver közben a 4.4.ábrán látható. A magassági kormány kitérülése a manıver
közben (4.5.ábra) sokkal simább, mint a prediktív irányítás nélkül vizsgált esetben (lásd 2.8.
ábra). Ennek az oka az, hogy a prediktíven számított bemeneti jelben már nincsen ugrásszerő
változás.
4.3. ábra. A predikció során elıállított beavatkozó jel (∆r)
A vizsgált esetekben a prediktív irányítás csupán abban az esetben léphet mőködésbe, amikor a
tényleges alapjel váltás megtörtént. A felsıbbrendő szabályozó a predikció miatt gyakorlatilag 1
másodperccel hamarabb érzékeli az alapjel megváltozását, ezért hamarabb is kezdi
megváltoztatni a beavatkozó jel értéket. Ezen mőködés matematikailag helyes, de
rendszertechnikailag már nehezen képzelhetı el (pl.: a repülıgép hamarabb kezdi a bólintó
manıvert, mielıtt a pilóta megmozdította volna a botkormányt). Ez egyszerően megoldható
42. - 41 -
olymódon, hogy figyeljük a referenciapálya k-ik és a k-1-ik mintájának értékét. Amennyiben
megegyeznek, akkor az optimalizációhoz használt referenciapálya minden egyes mintájának
értéke a tényleges referenciapálya k-ik mintájának értékével egyezik meg a horizonton belül.
4.4. ábra. Az állásszög változása a manıver közben
4.5. ábra. A magassági kormány kitérülése a manıver közben
43. - 42 -
4.6. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott parancs
predikciója (piros) a bólintási szögsebességgel (fekete) együtt, folyamatos predikció esetében
Alapjelváltás esetén pedig a tényleges referenciapályát használjuk az optimalizáció során a
horizonton belül. Amennyiben hagyjuk, hogy a predikció már a szimuláció elejétıl kezdve
mőködjön az egyes blokkok kimenetén megjelenı jelek a 4.2. ábrának megfelelı jelölésekkel a
4.6. ábrán figyelhetık meg. Az ábrán jól látható, hogy nagyjából egy másodperccel az alapjel
váltás elıtt már változik a kimenet értéke, továbbá a jövıbeni felfelé ugrásra kezdetben lefelé
változik, a jövıbeni lefelé változás miatt pedig jelentıs túllövés keletkezik.
44. - 43 -
A második esetben a beavatkozó szervekre elıírt korlátozások hatását vizsgáltam. A
bólintási szögsebesség (q) esetén az egyetlen beavatkozó szerv a magassági kormány, melynek
határértékei pontosan rendelkezésre állnak, ezt ún. „kemény” kényszerként juttattam érvényre
(lásd 3.25). A magassági kormányra elıírt kitérülési határértékek, [2] alapján a 4.1 táblázatban
figyelhetık meg.
4.1. táblázat. A magassági kormányra elıírt határértékek
Magassági kormány
Felsı korlát +60 fok/s
Alsó korlát -60 fok/s
Ezen kényszereket már az elsı szimuláció alkalmával is definiáltam, de az alapjel amplitúdója
nem volt elég nagy, hogy aktiválódjanak a korlátozások. Ezért megnöveltem az alapjel
amplitúdóját. A kapott eredmény a 4.7. ábrán figyelhetı meg. A prediktíven elıállított vezérlı jel
a 4.8. ábrán látható. Jól megfigyelhetı, hogy rögtön a predikció elindulása után maximális lesz a
vezérlı jel értéke 30ms-ig nem is változik, ezután csökkenni kezd, de nem lépi át az elıírt
határértékeket.
4.7. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott parancs
predikciója (piros) a bólintási szögsebességgel (fekete) együtt, a korlátozások vizsgálatánál
45. - 44 -
4.8. ábra. A predikció során elıállított beavatkozó jel (∆r), a korlátozások érvényre jutásával
A harmadik vizsgálat során megnöveltem a predikciós (Hp) és az irányítási (Hc) horizont
méretét. A kapott eredmények a 4.9-4.10 ábrákon láthatók. Az elsı esetben a predikciós horizont
2s (Hp = 40), az irányítási horizont, pedig 1s (Hc = 10) volt. A következı módosítás során a
predikciós horizontnak 4s-ot (Hp = 80) állítottam be, az irányítási horizont értéke pedig 1.25s (Hc
= 25), volt.
4.9. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott parancs
predikciója (piros) a bólintási szögsebességgel (fekete) együtt, Hp = 40 és Hc = 10 esetén
46. - 45 -
4.10. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott parancs
predikciója (piros) a bólintási szögsebességgel (fekete) együtt, Hp = 80 és Hc = 25 esetén
Megállapítható, hogy a bólintási szögsebességet érdemben nem befolyásolta a végrehajtott
horizont változtatás.
A szimulációk során kapott eredményeket összevetve a korábbi fejezet eredményeivel
megállapíthatjuk, hogy a megépített összevont szabályozási rendszer a második fejezetben
lefektetett szigorú 1.szintő irányíthatósági specifikációkat kielégíti (lásd 2.3. ábra, 2.1. táblázat).
A kapott referenciapályát megfelelıen követi, igaz kisebb késéssel, aminek oka az
optimalizációs feladat minden idıpillanatban történı megoldása. Megfigyelhetı továbbá, hogy
az összevont szabályozási rendszer esetében a bólintási szögsebesség (q) túllövés nélkül éri el az
alapjelet (lásd 4.2.ábra) és ugyanannyi idı alatt állandósul az állapota, mint a korábbi esetben
(lásd 2.11.ábra). A szimulációk során „kemény” kényszerek hatását is vizsgáltam. A kényszerek
érvényre juttatása után a számított beavatkozó jel egyetlen esetben sem lépte át a meghatározott
korlátot.
47. - 46 -
5. Konklúzió
A szakdolgozatom keretében egy összetett bólintási szögsebesség szabályozó
tervezésének lépéseit hajtottam végre. A megvalósított szabályozók alá-fölé rendelt viszonyban
állnak egymással. Elsıként az alsóbbrendő robusztus szabályozó vizsgálatával és összeállításával
foglalkoztam. A repülıgép longitudinális mozgását leíró LPV modell egy F-16 VISTA
tesztrepülıgépen végrehajtott méréssorozat eredménye, melyet irodalmi adatok alapján
használtam fel. Rendelkezésemre állt továbbá egy korábbi szakdolgozatból a robusztus
szabályzóra vonatkozó néhány végeredmény. A robusztus szabályzó összeállítását
MATLAB/Simulink környezetben hajtottam végre, MATLAB S-függvény alkalmazásával. Az
összeállítást követıen külön teszteltem a belsı zárt kör zavarjel kiküszöbölı és stabilitási
tulajdonságait. Ezek után a fölérendelt mozgó horizontú prediktív irányítás (RHC) megtervezése
következett. Lineáris modellt alkalmazva a prediktív irányítás során létrejövı optimalizációs
feladat kvadratikus optimalizálási feladatra vezet, melynek megoldására gyors és hatékony
algoritmusok léteznek, ezért a szabályozó megvalósítása során már a MATLAB Optimization
Toolbox egyes függvényeit is igénybe vettem. A megvalósítás során megoldottam, hogy mind az
LPV modell, mind a prediktív irányítást végzı blokk folyamatosan megkapja a magasság (h) és
Mach-szám (M) párost. A prediktív irányítás a diszkrét idejő mőködése folytán minden
horizontban csupán egyetlen h-M párt használ fel az optimális beavatkozó jelsorozat
számításakor. Az összeállítás során ebben az esetben is MATLAB S-függvényeket használtam,
melyek segítségével könnyedén leírhatjuk az egyes rendszerek dinamikáját a Simulink
környezeten belül. További nagy elınye az S-függvényeknek, hogy belılük az állapot
visszacsatoláshoz szükséges állapotvektor minden idıpillanatban könnyedén kinyerhetı. A
megtervezett fölérendelt, mozgó horizontú prediktív irányítással ellátott szabályozási kör
szimulációs eredményeit összevetve a prediktív irányítással nem rendelkezı robusztus
szabályozó szimulációs eredményeivel megállapítható, hogy az összevont szabályozási rendszer
megfelelıen követi a kapott referenciapályát az idıtartománybeli specifikációk megtartása
mellett. A szimulációk során a beavatkozó szerv fizikai határértékei miatti kényszereket is
definiáltam. A bólintási szögsebesség (q) a folyamatosan megoldandó optimalizálási feladat
miatt az eredeti referenciapályát némi késéssel követi, de ez nem befolyásolja a repülıgép
irányíthatóságát.
48. - 47 -
6. Kitekintés
A mozgó horizontú prediktív irányítás legfıbb alkalmazási módja a valós idejő
megvalósítás. Esetemben ehhez elsı lépésként el kellene hagynunk a MATLAB Optimization
Toolboxát, melyet a quadprog függvény kiváltásával lehetne megtenni. A lineáris modell
alkalmazása esetén az optimalizációs probléma megoldása könnyedén kézben tartható. Egy
esetleges nemlineáris modell esetén a linearizálás okozta többlet számítások megjelenését is
számításba kell vennünk. A megtervezett eljárás beágyazott processzorra történı kifordítása
esetén be kell tartanunk a MATLAB/Simulink a Real Time Workshop és a cél processzor áttérés
korlátait. A legjelentısebb korlátozások elsısorban a dinamikus memóriakezelést és a
használható MATLAB függvényeket érintik. Mindazonáltal, bár a kvadratikus programozási
feladat megoldására gyors és hatékony algoritmusok állnak rendelkezésre, a jelenlegi harci
gépeken lévı számítógépek még nincsenek felkészülve egy ilyen optimalizáció elvégzésére, a
fejlesztések kísérleti stádiumban vannak a szakirodalom tükrében.
49. - 48 -
8. Függelék
Ábrajegyzék________________________________________________________
2.1. ábra. A repülıgép tengelyei és beavatkozó szervei…………………………………....8
2.2. ábra. F-16 VISTA……………………………………………………………………...9
2.3. ábra. A bólintási szögsebességre vonatkozó specifikációk értelmezése………………12
2.4. ábra. A bólintási szögsebesség szabályozás blokkvázlata……………………………..13
2.5. ábra. A szabályozási kör szimulációs összeállítása…………………………………....18
2.6. ábra. Az A/Candcontrol blokk belsı elrendezése……………………………………..18
2.7. ábra. A lineáris szabályozó megvalósítása…………………………………………….19
2.8. ábra. A beavatkozójel………………………………………………………………….19
2.9. ábra. A szimuláció során alkalmazott magasság tartomány…………………………...20
2.10. ábra. A szimuláció során alkalmazott Mach-szám tartomány…………………………20
2.11. ábra. A magassági kormányra adott parancs (piros) a bólintási szögsebességgel (fekete)
együtt…………………………………………………………………………….21
2.12. ábra. Az állásszög változása a manıver közben……………………………………….21
2.13. ábra. A szabályozási kör szimulációs összeállítása zavarójel beiktatás esetén………..22
2.14. ábra. A zavarójel……………………………………………………………………….23
2.15. ábra. A magassági kormányra adott parancs (zöld) a bólintási szögsebességgel (kék)
együtt a zavarójel figyelembevételével………………………………………….23
2.16. ábra. Az állásszög változása a manıver közben a zavarójel figyelembevételével…….24
2.17. ábra. A beavatkozójel a zavarójel figyelembevételével……………………………….24
3.1. ábra. A mozgó horizont elve…………………………………………………………..27
3.3. ábra. A szabályozó belsı felépítése…………………………………………………...28
3.4. ábra. Az alkalmazott RHC irányítási elrendezés……………………………………....28
4.1. ábra. A mozgó horizontú prediktív irányítás vizsgálata során alkalmazott szimulációs
elrendezés………………………………………………………………………..39
4.2. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott
parancs predikciója (piros) a bólintási szögsebességgel (fekete) együtt…………40
4.3. ábra. A predikció során elıállított beavatkozó jel (∆r)………………………………...41
4.4. ábra. Az állásszög változása a manıver közben……………………………………….42
4.5. ábra. A magassági kormány kitérülése a manıver közben…………………………….42
50. - 49 -
4.6. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott
parancs predikciója (piros) a bólintási szögsebességgel (fekete) együtt, folyamatos
predikció esetében………………………………………………………………43
4.7. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott
parancs predikciója (piros) a bólintási szögsebességgel (fekete) együtt, a
korlátozások vizsgálatánál………………………………………………………44
4.8. ábra. A predikció során elıállított beavatkozó jel (∆r), a korlátozások érvényre
jutásával…………………………………………………………………………45
4.9. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott
parancs predikciója (piros) a bólintási szögsebességgel (fekete) együtt, Hp = 40 és
Hc = 10 esetén…………………………………………………………………...45
4.10. ábra. A magassági kormányra adott parancs (kék), a magassági kormányra adott
parancs predikciója (piros) a bólintási szögsebességgel (fekete) együtt, Hp = 80 és
Hc = 25 esetén…………………………………………………………………..46
Táblázatok jegyzéke_________________________________________________
2.1. táblázat. Az 1. szinthez tartozó idıtartománybeli specifikációk…………………………..12
4.1. táblázat. A magassági kormányra elıírt határértékek……………………………………..44
51. - 50 -
7. Felhasznált irodalom
[1] P. Blue , L. Güvenc and D. Odenthal – Large envelope flight control satisfying ∞H
robustness and performance specifications, Proceedings of the American
COntrolConference,Arlington, VA June 25-27, 2001
[2] T. Keviczky and G. J. Balas – Software enabled flight controlusing receding horizon
techniques, American Institute os Aeronautics an Astronautics
[3] Nemes Máté – Repülıgép robusztus bólintási szögsebesség szabályozása nagy repülési
tartomány esetén, BSc szakdolgozat 2008. december
[4] K. Ohnishi – Anew servo method in mechatronics, Trans. Japanese Soc. Elect. Eng. Vol.
107 –D, pp. 83-86, 1987
[5] T. Umeno and Y. Hori – Robust speed control of the dc servomotors using modern two
degrees-of-freedom controller design, IEEE Trans. Ind. Electron, vol 38, 1991, no. 5, pp.
363-368
[6] L. Güvenc and K. Srinivasan – Friction compensation evaluation for a force control
application, J. oc Mechanical Systems and Signal Processing, vol. 8, 1994 no. 6 , pp. 623-
638
[7] T. Bünte, D. Odenthal, B. Aksun-Güvenc, and L. Güvenc – Robust vehicle steering
control based on the disturbance observer, Proc. of the 3” IFAC Workshop on Advances
in Automotive Control, Karlsruhe, 2001
[8] B. Aksun-Güvenc, T. Bünte, D. Odenthal, and L. Güvenc – Robust two degrees-of-
freedom vehicle steereing vehicle controller design, Proc. of the American Control
Conference, Arlington, 2001
[9] J. Ackermann, A Barlett, D. Kaesbauer, W. Sienel, and R. Steinhauser – Robust control:
Systems with uncertain physical parameters, Springer, London, 1993
[10] D. Odenthal and P. Blue – Mapping of frequency response magnitude performance
specifications into parameter space, Proc. of the 3rd IFAC Symposium on Robust Control
Design, Prague
[11] M.Spillman, P. Blue, L. Lee, and S. Banda – A robust gain scheduling example using
linear parameter varying feedback, Proc. of the 13” IFAC World Congress, San
Francisco, 1996
[12] B. L. Stevens, F. L. Lewis – Aircraft control and simulation
[13] Lantos Béla – Irányítási rendszerek elmélete és tervezése I. , Egyváltozós szabályozások,
Akadémiai Kiadó, Budapest, 2001
52. - 51 -
[14] World Wide Web
[15] J.M. Maciejowski – Predictive Control with Contsraints Prentice Hall 2002
[16] Keviczky, T and Balas, G. J. , Receding Horizon Control of an F-16 Aircraft: a
Comparative Study, European Control Conference 2003
53. - 52 -
Köszönetnyilvánítás
Köszönettel tartozom mindazon embereknek, akik segítettek szakdolgozatom írása során.
Kedvesemnek és családomnak az ösztönzésért. A kedves Kuzinoknak és elsı apródomnak, akik
türelmesen álltak hozzám még a leglehetetlenebb pillanatokban is.
Külön köszönet illeti konzulensemet:
Dr. Lantos Béla Tanár Úrnak a rám fordított idıért, munkám folyamatos felügyeletéért és a
rengeteg hasznos tanácsért.