• No results found

Missilstyrning med Model Predictive Control

N/A
N/A
Protected

Academic year: 2021

Share "Missilstyrning med Model Predictive Control"

Copied!
85
0
0

Loading.... (view fulltext now)

Full text

(1)

Institutionen f¨or systemteknik

Department of Electrical Engineering

Examensarbete

Missilstyrning med Model Predictive Control

Examensarbete utf¨ort i Reglerteknik vid Tekniska h¨ogskolan i Link¨oping

av David Rosdal LITH-ISY-EX-3608-2005

Link¨oping 2005

Department of Electrical Engineering Link¨opings tekniska h¨ogskola Link¨opings universitet Link¨opings universitet SE-581 83 Link¨oping, Sweden 581 83 Link¨oping

(2)
(3)

Examensarbete utf¨

ort i Reglerteknik

vid Tekniska h¨

ogskolan i Link¨

oping

av

David Rosdal LITH-ISY-EX-3608-2005

Handledare: Dr. Thomas Svantesson

Saab Bofors Dynamics AB

Civ. Ing. Daniel Axehill

isy, Link¨opings universitet

Examinator: Doc. Anders Hansson

isy, Link¨opings universitet

(4)
(5)

Institutionen f¨or systemteknik Department of Electrical Engineering Link¨opings universitet

S-581 83 Link¨oping, Sweden

2005-02-10 Spr˚ak Language ¤ Svenska/Swedish ¤ Engelska/English ¤ ⊠ Rapporttyp Report category ¤ Licentiatavhandling ¤ Examensarbete ¤ C-uppsats ¤ D-uppsats ¤ ¨Ovrig rapport ¤ ⊠

URL f¨or elektronisk version

http://www.ep.liu.se/exjobb/isy/2005/3608/

ISBN — ISRN

LITH-ISY-EX-3608-2005 Serietitel och serienummer Title of series, numbering

ISSN —

Titel Title

Missilstyrning med Model Predictive Control Missile Control using Model Predictive Control

F¨orfattare Author

David Rosdal

Sammanfattning Abstract

This thesis has been conducted at Saab Bofors Dynamics AB. The purpose was to investigate if a non-linear missile model could be stabilized when the optimal control signal is computed considering constraints on the control input. This is particularly interesting because the missile is controlled with rudders that have physical bounds. This strategy is called Model Predictive Control. Simulations are conducted to compare this strategy with others; firstly simulations with step re-sponses and secondly simulations when the missile is supposed to hit a moving target. The latter is performed to show that the missile can be stabilized in its whole area of operation. The simulations show that the controller indeed can sta-bilize the missile for the given scenarios. However, this control strategy does not show any obvious improvements in comparison with alternative ones.

Nyckelord

(6)
(7)

Abstract

This thesis has been conducted at Saab Bofors Dynamics AB. The purpose was to investigate if a non-linear missile model could be stabilized when the optimal control signal is computed considering constraints on the control input. This is particularly interesting because the missile is controlled with rudders that have physical bounds. This strategy is called Model Predictive Control. Simulations are conducted to compare this strategy with others; firstly simulations with step re-sponses and secondly simulations when the missile is supposed to hit a moving target. The latter is performed to show that the missile can be stabilized in its whole area of operation. The simulations show that the controller indeed can sta-bilize the missile for the given scenarios. However, this control strategy does not show any obvious improvements in comparison with alternative ones.

Sammanfattning

Detta examensarbete har utf¨orts p˚a Saab Bofors Dynamics AB. Syftet var att ut-reda om en olinj¨ar missilmodell kan stabiliseras genom att ber¨akna den optimala styrsignalen samtidigt som h¨ansyn till styrsignalsbegr¨ansningar beaktas. Detta ¨ar speciellt intressant eftersom missilen styrs med hj¨alp av roderytor som har fysis-ka begr¨ansningar. Denna reglerstrategi fysis-kallas f¨or Model Predictive Control. F¨or att j¨amf¨ora med andra reglerstrategier g¨ors f¨orst stegsvarsexperiment och sedan simuleras flera riktiga skjutfall d¨ar missilen ska tr¨affa ett r¨orligt m˚al. Detta f¨or att visa att missilen kan stabiliseras i hela sitt arbetsomr˚ade. Simuleringar visar att regulatorn lyckas stabilisera missilen i de skjutfall som gjorts. Vid j¨amf¨orelse med alternativa reglerstrategier s˚a kan ingen tydlig f¨orb¨attring i prestandan p˚avisas.

(8)
(9)

Tack

F¨orst s˚a vill jag tacka mina tv˚a handledare, Thomas Svantesson p˚a Saab Bofors Dynamics och Daniel Axehill p˚a Link¨opings universitet. Speciellt Thomas som alltid har haft tid f¨or alla fr˚agor och problem som jag st¨ott p˚a under arbetets g˚ang. Jag vill ocks˚a tacka Anders Hansson, min examinator. Till sist vill jag tacka Saab Bofors Dynamics och deras anst¨allda som jag kommit i kontakt med. Utan er hade det inte varit m¨ojligt.

Link¨oping, januari 2005 David Rosdal

(10)
(11)

Inneh˚

all

1 Inledning 1

1.1 Bakgrund . . . 1

1.2 Syfte och m˚als¨attning . . . 2

1.3 Begr¨ansningar . . . 2

1.4 Rapportens uppl¨agg . . . 2

2 Systembeskrivning 3 2.1 Missilsystemet . . . 3

2.1.1 Koordinatsystem . . . 3

2.1.2 Schematisk beskrivning av missilsystemet . . . 3

2.2 Framtagning av tillst˚andsbeskrivning . . . 5

2.2.1 Krafter och moment . . . 5

2.2.2 R¨orelseekvationer f¨or en stel kropp . . . 6

2.2.3 R¨orelseekvationer f¨or en missil . . . 7

2.2.4 Missilens dynamik p˚a tillst˚andsform . . . 8

2.2.5 Linj¨arisering av modellen . . . 9

2.2.6 Ut¨okning med roderservodynamik . . . 10

2.3 Simuleringsmilj¨o . . . 12

2.4 Begr¨ansningar och antaganden . . . 12

2.4.1 Antaganden i modelleringen . . . 12

2.4.2 Antaganden och begr¨ansningar f¨or missilen och dess omgivning 13 3 Grundl¨aggande reglerteori 15 3.1 Systemmodeller . . . 15

3.2 Fr˚an tidskontinuerlig till diskret beskrivning . . . 15

3.2.1 Val av samplingstid . . . 16 3.3 Kalmanfilter . . . 16 3.3.1 Tidskontinuerlig tidsuppdatering . . . 17 3.3.2 Tidsdiskret m¨atuppdatering . . . 17 4 MPC 19 4.1 Oversiktlig beskrivning av MPC . . . .¨ 19

4.2 Prediktion av framtida tillst˚andsv¨arden . . . 20

4.3 Prestandam˚att . . . 21

4.4 MPC formulerat som kvadratiskt problem . . . 22 ix

(12)

4.5 MPC med f¨oljning av referenssignal . . . 23

4.6 Styrsignal efter Nusampel . . . 23

4.7 MPC med integralverkan . . . 25 4.8 Bivillkor . . . 26 4.8.1 Bivillkor p˚a amplituden . . . 27 4.8.2 Bivillkor p˚a ¨andringshastigheten . . . 28 4.9 Val av horisonter . . . 29 4.10 Stabilitet . . . 30 4.10.1 O¨andlig prediktionshorisont . . . 30

4.10.2 Bivillkor p˚a sluttillst˚andet . . . 30

4.10.3 Sluttillst˚andet inom ett visst omr˚ade . . . 30

4.10.4 Straff p˚a sluttillst˚andet . . . 31

4.11 L¨osning av optimeringsproblemet . . . 31

5 Robust MPC 33 5.1 Os¨akerhetsmodeller . . . 33

5.1.1 Additiv st¨orning . . . 33

5.1.2 Polytopisk beskrivning . . . 34

5.1.3 Beskrivning med en Linear Fraction Transformation-modell 34 5.2 Ny formulering av optimeringsproblemet . . . 35 6 Resultat 37 6.1 Val av parametrar . . . 37 6.1.1 Samplingstid, Ts . . . 37 6.1.2 Horisonter, Nu och Np . . . 37 6.1.3 Straffmatriser Q1 och Q2 . . . 38

6.2 Simuleringar med stegsvar . . . 38

6.2.1 Utan integralverkan . . . 38

6.2.2 Med integralverkan . . . 41

6.2.3 J¨amf¨orelse med tidigare arbeten . . . 45

6.3 Simuleringar med guidancesystem . . . 45

6.3.1 Skjutfall 1 - Kort avst˚and . . . 47

6.3.2 Skjutfall 2 - L˚angt avst˚and . . . 50

6.3.3 Skjutfall 3 - H¨og h¨ojd . . . 54

6.3.4 Skjutfall 4 - L˚ag h¨ojd . . . 57 6.4 Utv¨ardering av missilprestanda . . . 60 7 Slutsatser 61 8 Framtida arbete 63 Litteraturf¨orteckning 65 A Notation 67

B Systemmatriser f¨or den linj¨ariserade modellen utan

(13)
(14)
(15)

Inledning

Saab Bofors Dynamics AB ¨ar ett dotterbolag till Saab AB och huvudkontoret ligger i Karlskoga. F¨oretaget utvecklar avancerade missilsystem f¨or det svenska f¨orsvaret och ¨aven f¨or andra l¨anders f¨orsvar. De samarbetar ¨aven med utl¨andsk f¨orsvarsindustri f¨or att utveckla gemensamma produkter. Exempel p˚a produkter som i dag finns i funktion i det svenska f¨orsvaret ¨ar Carl Gustaf och RBS 15. Detta examensarbete ¨ar utf¨ort p˚a sektionen f¨or Guidance & Control i Link¨oping.

1.1

Bakgrund

Utvecklingen inom reglerteknik g˚ar snabbt fram˚at och f¨or att kunna leverera mis-siler med effektiva styrsystem vill Saab Bofors Dynamics utforska de senaste r¨onen inom detta omr˚ade. Tidigare har ett flertal examensarbeten inom detta omr˚ade utf¨orts p˚a avdelningen. De tv˚a senaste behandlade styrning av olinj¨ar jaktrobot med Glover MacFarlanes metod samt backstepping, se [8] och [4]. Det har ¨aven under 2004 utf¨orts ett projekt inom kursen Reglerteknisk projektkurs p˚a Link¨o-pings Tekniska H¨ogskola. Detta projekt var ett alternativ till metoden i [8]. Dessa reglerstrategier tar inte h¨ansyn till bivillkor p˚a styrsignalens storlek och ¨andrings-hastighet. Detta ¨ar speciellt intressant d˚a en missil ska styras eftersom detta utf¨ors med hj¨alp av roderytor som har fysiska begr¨ansningar. En metod som tar h¨ansyn till detta ¨ar Model Predictive Control (MPC). Det finns flera andra f¨ordelar med denna metod, t.ex. att parameterstyrningen som metoden i [8] ¨ar beroende av, inte beh¨ovs. Detta beror p˚a att den linj¨ariserade tillst˚andsmodellen av missilens dynamik uppdateras kontinuerligt utifr˚an aktuella m¨atdata. Den aktuella model-len anv¨ands sedan f¨or att ta fram en ny styrsignal i varje sampel. Det finns andra som har f¨ors¨okt anv¨anda MPC och i [11] visas att en missil kan styras med denna reglerstrategi.

(16)

1.2

Syfte och m˚

als¨

attning

Syftet med examensarbetet ¨ar att unders¨oka om missilen kan stabiliseras med hj¨alp av en regulator som anv¨ander MPC, d˚a realistiska bivillkor p˚a styrsignalen anv¨ands.

1.3

Begr¨

ansningar

Missilen antas arbeta i ett avgr¨ansat arbetsomr˚ade. Detta arbetsomr˚ade uppdelas i h¨ojd och hastighet.

• Simulering av missilen sker endast i en ADA-milj¨o utvecklad av Saab Bofors Dynamics AB.

• Ber¨akningar av de optimala styrsignalerna sker i Matlab.

• Alla simuleringar g¨ors med antagandet att det inte finns n˚agot brus eller bias i m¨atningarna.

1.4

Rapportens uppl¨

agg

F¨orst kommer en modell f¨or missilen att tas fram. Detta g¨ors i kapitel 2. I kapitel 3 behandlas flera grundl¨aggande begrepp och metoder inom reglerteori. D¨arefter beskrivs hur ber¨akning av den optimala styrsignalen genomf¨ors med hj¨alp av MPC. Flera utvidgningar av den ursprungliga metoden, se avsnitt 4.4, som beh¨ovs i det speciella fallet med styrning av en missil, presenteras ocks˚a. I kapitel 5 g¨ors en sammanst¨allning av flera artiklar och b¨ocker som behandlar robust MPC. Sedan presenteras resultaten och slutsatser, varefter m¨ojligt framtida arbete f¨oresl˚as.

(17)

Systembeskrivning

F¨or att f˚a en tillfredsst¨allande regulator s˚a kr¨avs en matematisk modell som ¨over-ensst¨ammer tillr¨ackligt v¨al med verkligheten. Systemet som ska regleras ¨ar en luftm˚alsmissil. Den ¨ar framtagen speciellt f¨or detta arbete men har dock m˚anga egenskaper gemensamt med missiler som anv¨ands inom f¨orsvarsv¨asendet idag. Huvudm˚alen med detta kapitel ¨ar dels att beskriva missilen och dess omgivning och ¨aven hur en tillst˚andsbeskrivning av missildynamiken kan tas fram. Denna beskrivning kommer sedan att linj¨ariseras f¨or att kunna anv¨andas i ber¨akningen av styrsignalen med hj¨alp av MPC.

2.1

Missilsystemet

Missilen som ska studeras i detta arbete skjuts fr˚an ett flygplan och ska tr¨affa ett luftburet m˚al, t.ex. ett flygplan eller en helikopter.

2.1.1

Koordinatsystem

F¨or att kunna beskriva missilen korrekt s˚a kr¨avs att det koordinatsystem den arbe-tar i definieras. D˚a missilmodellen tas fram s˚a kommer endast ett kroppsfast koor-dinatsystem att anv¨andas. Det kroppsfasta koorkoor-dinatsystemet har x-koordinaten pekande i missilens l¨angdriktning, y-koordinaten riktad ˚at h¨oger och z-koordinaten riktad ned˚at. Rotationshastigheterna p, q och r ¨ar rotationshastigheterna kring dessa koordinataxlar. Anfallsvinkeln α och sidanbl˚asningsvinkeln β definieras som vinklarna mellan hastighetsvektorn V och det kroppsfasta koordinatsystemet. Al-la dessa definitioner illustreras i Figur 2.1. IbAl-land brukar ¨aven hastighetsvektorn V delas upp i dess x-, y- och z-komposanter. Dessa kallas d˚a f¨or u, v och w. Missilnomenklatur ˚aterfinns ¨aven i bilaga A.

2.1.2

Schematisk beskrivning av missilsystemet

F¨or att missilen ska kunna tr¨affa m˚alet finns ett styrsystem. Detta system best˚ar av flera delsystem vars inb¨ordes relation beskrivs i Figur 2.2.

(18)

x y z p q r α β V

Figur 2.1. Definition av missilens kroppsfasta koordinatsystem och vinklarna α och β.

r u

ys

M˚als¨okare/

M˚alf¨oljning Guidance Autopilot Missil

Sensorer

Figur 2.2. En schematisk beskrivning av systemet.

M˚als¨okare/M˚alf¨oljning: Detta delsystem s¨oker reda p˚a m˚alet med hj¨alp av t.ex. radar eller IR (Infra Red). Det talar sedan om f¨or guidance var m˚alet befinner sig vid den aktuella tidpunkten.

Guidance: Huvuduppgiften f¨or detta delsystem ¨ar att best¨amma hur missilen ska flyga f¨or att den ska tr¨affa m˚alet. Detta ber¨aknas genom f¨ordefinierade lagar, se t.ex. [5], och systemet anv¨ander informationen fr˚an m˚ als¨okaren/-m˚alf¨oljaren och sensorerna f¨or att ber¨akna en referenssignal r till autopiloten. Referenssignalen som skickas vidare definieras i detta arbete enligt

r = pc Acy Acz  

T

. (2.1)

Signalen fr˚an delsystemet guidance g¨or att man automatiskt f˚ar integralver-kan i den yttre loopen och slipper d¨arf¨or t¨anka p˚a att implementera detta vid design av regulatorn.

Autopilot: I detta delsystem s˚a ber¨aknas vilken styrsignal u som ska st¨allas ut f¨or att missilen ska f¨olja de referenssignaler som den f˚ar ifr˚an guidance. Detta system kan ¨aven ses som en regulator. Styrsignalen definieras enligt

u = δa δe δr  

T

(19)

d¨ar δa ¨ar vinkeln f¨or aileron-rodret, δe vinkeln f¨or elevator-rodret och δr

vinkeln f¨or rudder-rodret.

Missil: Detta system ¨ar i detta arbete en olinj¨ar modell av den aktuella missilen. Sensorer: Sensorerna m¨ater missilens nuvarande flygtillst˚and ysoch skickar

vi-dare informationen till ber¨orda delsystem. Det nuvarande flygtillst˚andet definieras enligt ys = p q r Ay Az δa δe δr qd h V   T , (2.3) d¨ar de ing˚aende variablernas inneb¨ord sammanfattas i bilaga A. Den inb¨or-des relationen mellan flera av dem beskrivs ¨aven av Figur 2.1.

2.2

Framtagning av tillst˚

andsbeskrivning

Detta avsnitt ¨ar till stor del h¨amtat fr˚an kapitel 5 i [9].

2.2.1

Krafter och moment

De krafter och moment som verkar i och runt tyngdpunkten p˚a en missil beror bland annat p˚a motordragkraft, tyngdkraft och luftkrafter. Vid design av en regulator f¨or en luftm˚alsrobot kan dock inverkan av de flesta krafter och moment bortses ifr˚an, f¨orutom luftkrafterna. Luftkrafterna ger upphov till f¨oljande krafter och moment: F = −qdS          CT CC CN          (2.4) M = qdSd          Cl Cm Cn          , (2.5)

d¨ar qd ¨ar det dynamiska trycket (N/m2), d och S ¨ar referensl¨angd (m) respektive

referensarea (m2). Det dynamiska trycket beror bland annat p˚a hastigheten V

och ρ som ¨ar luftens densitet. Densiteten beror i sin tur p˚a h¨ojden ¨over havet och temperaturen. F¨or en missil som ¨ar cylindrisk ges referensarean av, S = πd2

4 . CT,

(20)

av CT = 1 CC = CCββ + CCδrδr CN = CN αα + CN δeδe Cl = Clββ + Clp d 2Vp + Clδaδa Cm = Cmαα + Cm|β||β| + Cmq d 2Vq + Cmδeδe Cn = Cnββ + Cnαβαβ + Cnr d 2Vr + Cnδaδa+ Cnδrδr (2.6)

och m˚anga av de ing˚aende koefficienterna (Cij) i ekvation (2.6) ¨ar

machtalsbero-ende.

2.2.2

orelseekvationer f¨

or en stel kropp

Detta avsnitt ger en generell beskrivning av hur r¨orelseekvationerna f¨or en stel kropp kan h¨arledas. Resultatet redovisas i ekvation (2.7) och ekvation (2.9). Sats 1 (Inertiell tidsderivata) F¨or en vektor (A) uttryckt i ett kroppsfast (b) koordinatsystem ges den inertiella (i) tidsderivatan (d

dt i A) av d dt i A = d dt b A+ ωbi × A, d¨ar ωbi

¨ar rotationshastigheten hos det kroppsfasta koordinatsystemet relativt det inertiella koordinatsystemet.

Bevis ges i [21]. ¤

Definition 1 (Newtons andra lag) Den totala kraften (F ) p˚a en stel kropp ¨ar lika med kroppens massa (m) g˚anger dess inertiella acceleration (a),

F = ma.

Om man l˚ater V vara den stela kroppens hastighetsvektor s˚a kan man med hj¨alp av Sats 1 beskriva den stela kroppens translation enligt

F = md dt b

V + mωbi × V . (2.7) Definition 2 (Eulers ekvationer) Det totala momentet (M ) ¨ar lika med den inertiella ¨andringen i r¨orelsem¨angdsmoment ( ˙H) hos en stel kropp,

(21)

Det kommer senare visa sig att det ¨ar vettigt att beskriva r¨orelsem¨angdsmomentet fr˚an Definition 2 som produkten av den stela kroppens masstr¨oghetsmoment och dess rotationshastighetsvektor enligt

H = Iωbi. (2.8)

Om masstr¨oghetsmomentet hos den stela kroppen inte ¨andras med tiden, det vill s¨aga ¨ar tidsinvariant, s˚a kan ekvation (2.8), Definition 2 och Sats 1 kombineras s˚a att den stela kroppens rotation beskrivs av

M = Id dt b

ωbi+ ωbi × Iωbi. (2.9)

2.2.3

orelseekvationer f¨

or en missil

Med utg˚angspunkt fr˚an ekvation (2.7) och beteckningarna enligt Figur 2.1 kan robotskrovets translation beskrivas enligt

˙u = Fx m + rv − qw ˙v = Fy m + pw − ru ˙ w = Fz m + qu − pv. (2.10)

Ur missilteknisk synvinkel ¨ar det naturligt att inf¨ora anfallsvinkel, α, och sidan-bl˚asningsvinkel, β, som tillst˚and ist¨allet f¨or hastigheterna u, v och w. Detta l˚ater sig g¨oras med hj¨alp av f¨oljande samband

sin β = v V tan α = w u,

(2.11)

d¨ar V ¨ar l¨angden p˚a missilens hastighetsvektor V . Om α och β ¨ar sm˚a till belop-pen, det vill s¨aga |α| ≤ 30◦ och |β| ≤ 30, kan ekvation (2.11) f¨orenklas enligt

β ≈ v V α ≈ w u.

(2.12)

I detta sammanhang anses f¨or¨andringen i missilens hastighet vara l˚angsam, d.v.s. ˙

V ≈ 0, och i kombination med sm˚a vinklar s˚a erh˚alls att u ≈ V samt att ˙u ≈ 0. Detta leder till en ny beskrivning av robotskrovets translation,

˙α = Fz mV + q − pβ ˙ β = Fy mV + pα − r. (2.13)

(22)

Under antagandet att masstr¨oghetsmatrisen, I, har ett n˚agorlunda sn¨allt utseende, I =          Ix 0 0 0 Iy 0 0 0 Iz          , (2.14)

s˚a kan robotskrovets rotation fr˚an ekvation (2.9) skrivas om p˚a f¨oljande vis ˙p = Mx Ix +Iy− Iz Ix qr ˙q = My Iy +Iz− Ix Iy pr ˙r = Mz Iz +Ix− Iy Iz pq. (2.15)

Ekvation (2.13) och ekvation (2.15) ¨ar i princip vad som beh¨ovs f¨or att samman-fatta dynamiken hos missilen. Det enda som ytterligare m˚aste genomf¨oras ¨ar att p˚a platserna f¨or Fy, Fz, Mx, My och Mz s¨atta in de krafter och moment som

beskrivs i ekvationerna (2.4), (2.5) och (2.6), vilket resulterar i ˙p = qrIy− Iz Ix +qdSd Ix (Clββ + Clp d 2Vp + Clδaδa) ˙q = prIz− Ix Iy +qdSd Iy (Cmαα + Cm|β||β| + Cmq d 2Vq + Cmδeδe) ˙r = pqIx− Iy Iz +qdSd Iz (Cnββ + Cnαβαβ + Cnr d 2V r + Cnδaδa+ Cnδrδr) ˙α = − pβ + q − qdS mV(CN αα + CN δeδe) ˙ β = pα − r − qdS mV(CCββ + CCδrδr). (2.16)

2.2.4

Missilens dynamik p˚

a tillst˚

andsform

Den modell av missilens dynamik som senare kommer att anv¨andas f¨or design och analys kan uttryckas p˚a tillst˚andsform enligt

˙x = f (x, u, V, h)

y = h(x, u). (2.17)

Den ¨ovre delen av ekvation (2.17) erh˚alls enkelt genom att l˚ata

x=                   p q r α β                   , u =          δa δe δr          (2.18)

(23)

i ekvation (2.16). Den undre delen, det vill s¨aga utsignalen fr˚an systemet i ekva-tion (2.17), behandlas n¨armare i avsnitt 2.2.6. Med hj¨alp av ekvaekva-tion (2.16) kan ekvation (2.17) nu skrivas som

˙x =                       x2x3IyI−Ixz +qdISdx (Clβx5+ Clp2Vd x1+ Clδau1) x1x3IzI−Iyx +qdISdy (Cmαx4+ Cm|β||x5| + Cmq2Vd x2+ Cmδeu2) x1x2IxI−Izy +qdISdz (Cnβx5+ Cnαβx4x5+ Cnr2Vd x3+ Cnδau1+ Cnδru3) −x1x5+ x2−mVqdS(CN αx4+ CN δeu2) x1x4− x3−mVqdS(CCβx5+ CCδru3)                       y= h(x, u), (2.19) vilket ger v˚ar tillst˚andsmodell. I forts¨attningen antas att Cm|β|= 0. Detta f¨or att

undvika “h˚arda” olinj¨ariteter.

2.2.5

Linj¨

arisering av modellen

F¨or att kunna ber¨akna styrsignalen med hj¨alp av MPC s˚a beh¨ovs en linj¨ariserad modell. Avsikten ¨ar allts˚a att hitta en ¨overs¨attning av ekvation (2.19) s˚a att den blir p˚a linj¨ar tillst˚andsform.

Sats 2 (Linj¨arisering av olinj¨art system) Om funktionen ˙x = f (x, u, V, h) ¨ar differentierbar i en omgivning till j¨amviktspunkten x0, u0, V0 och h0 kan

sy-stemet (2.19) skrivas p˚a formen

˙z = Az + Bv + g(z, v),

d¨ar z = x − x0, v = u − u0och |gz(|+|z,vv)|→ 0 n¨ar |z| + |v| → 0. Matriserna A och

B ges av A = ∂f (x, u, V, h) ∂x ¯ ¯ ¯x =x0,u=u0,V=V0,h=h0 och B = ∂f (x, u, V, h) ∂u ¯ ¯ ¯x=x 0,u=u0,V=V0,h=h0 . Bevis se Sats 11.1 i [13]. ¤

Enligt Sats 2 s˚a g¨aller linj¨ariseringen endast i en omgivning av en j¨amviktspunkt x0, u0, V0 och h0. En s˚adan j¨amviktspunkt uppfyller

(24)

Som exempel anv¨ands en godtycklig arbetspunkt enligt x0=                   p0 q0 r0 α0 β0                   , u0=          δa0 δe0 δr0          , V0, h0. (2.21)

Om denna arbetspunkt uppfyller ekvation (2.20) erh˚alls det linj¨ariserade systemet ˙z(t) = Alz(t) + Blv(t), (2.22)

d¨ar matriserna Al och Bl definieras enligt bilaga B. I detta arbete har

linj¨ar-iseringen gjorts kring j¨amviktspunkten x0 = u0 = 0. Detta g¨or att modellen i

ekvation (2.22) kan skrivas om s˚a att den inneh˚aller x och u ist¨allet f¨or z och v. D˚a erh˚alls en modell enligt

˙x(t) = Alx(t) + Blu(t), (2.23)

d¨ar matrierna Al och Bl ¨ar samma matriser som i ekvation (2.22) men med

x0 = u0 = 0. Det som ˚aterst˚ar ¨ar att ta fram matriserna C och D s˚a att

¨onskade utsignaler erh˚alls.

2.2.6

Ut¨

okning med roderservodynamik

Eftersom referenssignalen fr˚an guidance, som ges enligt ekvation (2.1), inneh˚aller p, Ayoch Azvill man ha samma utsignal fr˚an systemet (2.22). Enligt [8] ber¨aknas

accelerationerna Ay och Az enligt

Ay= − qdS m (CCββ + CCδrδr) Az= − qdS m (CN αα + CN δeδe). (2.24)

Detta uttryck kr¨aver en direkttermsmatris, D, d˚a det f¨orutom tillst˚anden α och β, ¨aven inneh˚aller styrsignalerna δe och δr. Det inneb¨ar en stor f¨orenkling att ta

fram en regulator f¨or ett system utan direkttermsmatris och den kan elimineras genom att ut¨oka modellen s˚a att den ¨aven inneh˚aller en modell f¨or roderservo-dynamiken. Denna dynamik kan approximeras med ett andra ordningens system fr˚an kommenderat roderutslag δd till verkst¨allt roderutslag δ enligt

δ = ω 2 0 p2+ 2ζ 0ω0p + ω02 δd, (2.25)

d¨ar p ¨ar deriveringsoperatorn d/dt, ω0 ¨ar polernas avst˚and till origo (od¨ampad

(25)

dynamik och ett ζ0 p˚a minst 0.7 betyder att systemet ¨ar v¨ald¨ampat. Om xr och ur definieras enligt xr=                        δa ˙δa δe ˙δe δr ˙δr                        (2.26) och ur=          δad δed δrd          , (2.27)

kan den totala roderservodynamiken skrivas om som. ( ˙xr= Arxr+ Brur yr= Crxr , (2.28) d¨ar Ar=                        0 1 0 0 0 0 −ω2 0 −2ζ0ω0 0 0 0 0 0 0 0 1 0 0 0 0 −ω2 0 −2ζ0ω0 0 0 0 0 0 0 0 1 0 0 0 0 −ω2 0 −2ζ0ω0                        , (2.29) Br=                        0 0 0 ω2 0 0 0 0 0 0 0 ω2 0 0 0 0 0 0 0 ω2 0                        (2.30) och Cr=          1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0          . (2.31)

Om ekvation (2.23) och ekvation (2.28) kombineras och en l¨amplig Cu-matris v¨aljs,

erh˚alls ett system utan D-matris enligt (

˙xu=Auxu+ Buur

y=Cuxu

(26)

d¨ar xu=     x xr     . (2.33)

Matriserna Auoch Bu ges av

Au=     Al BlCr 06×5 Ar     (2.34) och Bu=     06×3 Br     . (2.35)

H¨ar anv¨ands index u f¨or att s¨arskilja vektorer och matriser som har med ut¨okning-en med roderservodynamikut¨okning-en att g¨ora. F¨or att f˚a p, Ay och Az som utsignaler

m˚aste matrisen Cu v¨aljas enligt

Cu =          1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 −qdSCCβ m 0 0 0 0 − qdSCCδr m 0 0 0 0 −qdSCN α m 0 0 0 − qdSCN δe m 0 0 0          . (2.36)

2.3

Simuleringsmilj¨

o

Den linj¨ariserade modellen som har tagits fram i detta kapitel anv¨ands f¨or att ber¨akna den optimala styrsignalen. Detta behandlas n¨armare i kapitel 4. Mo-dellen anv¨ands ¨aven f¨or att ta fram skattningar av de tillst˚and som inte g˚ar att m¨ata. Detta g¨ors med ett Kalmanfilter och behandlas i kapitel 3. F¨or att simulera missilens dynamik anv¨ands en olinj¨ar modell av missilen som ¨ar implementerad i ADA. De parametrar som bland annat massa och diameter som anv¨ands vid simu-leringarna finns samlade i bilaga C. F¨or att diskretisera missilmodellen, g¨ora vissa matrismultiplikationer och utf¨ora optimeringen anv¨ands Matlab. Data skickas mellan simuleringsmilj¨on och Matlab via en l¨ank Saab utvecklat. De kommandon i Matlab som fr¨amst anv¨ands ¨ar c2d, f¨or att diskretisera modellen och quadprog f¨or att utf¨ora optimeringen.

2.4

Begr¨

ansningar och antaganden

F¨or att kunna modellera missilen s˚a m˚aste vissa antaganden g¨oras och i detta avsnitt behandlas dessa. Alla relevanta begr¨ansningar p˚a missilens h˚ardvara och dess omgivning tas ocks˚a upp.

2.4.1

Antaganden i modelleringen

• Alla krafter och moment f¨orutom de som kommer fr˚an luftkrafterna f¨or-summas.

(27)

• Vinklarna α och β ¨ar sm˚a till beloppet, d.v.s. |α| ≤ 30◦ och |β| ≤ 30.

• ¨Andringen hos missilens hastighet V antas vara l˚angsam, d.v.s. ˙V ≈ 0. • Masstr¨oghetsmomentsmatrisen ¨andras inte med tiden och kan skrivas som

I =          Ix 0 0 0 Iy 0 0 0 Iz          . (2.37)

• Aerodynamikkoefficienten Cm|β| antas vara noll.

2.4.2

Antaganden och begr¨

ansningar f¨

or missilen och dess

omgivning

• Missilens massa ¨ar konstant.

• Missilen har alltid konstant dragkraft.

• M˚alf¨oljningen antas vara ideal och inte p˚averkas av andra f¨orem˚al ¨an det t¨ankta m˚alet.

• Missilens roder kan maximalt ha vinkeln ±0.5 rad ≈ 28◦

• ¨Andringshastigheten hos missilens roder kan maximalt vara ±4π rad/s = ±720◦/s.

• Referenssignalen pc ¨ar alltid noll d˚a guidancesystemet anv¨ands. Detta beror

p˚a att m˚alf¨oljningen har st¨orre chans att f¨olja m˚alet om missilen inte roterar runt sin egen axel. N¨ar stegsvarssimuleringar g¨ors anv¨ands p 6= 0 f¨or att studera de korskopplingar som d˚a uppkommer.

(28)
(29)

Grundl¨

aggande reglerteori

3.1

Systemmodeller

I denna rapport ¨ar modellen f¨or missilen beskriven p˚a tillst˚andsform enligt ˙x(t) = Ax(t) + Bu(t)

y(t) = Cx(t). (3.1)

En av de stora f¨ordelarna med denna formulering ¨ar att envariabla och flervari-abla system behandlas formellt p˚a precis samma s¨att. En annan f¨ordel ¨ar att tillst˚andsmodeller i regel erh˚alls vid fysikaliskt modellbygge som det i kapitel 2.

3.2

Fr˚

an tidskontinuerlig till diskret beskrivning

MPC-regulatorn ¨ar en tidsdiskret regulator och kr¨aver d¨arf¨or en tidsdiskret modell av systemet. D¨arf¨or m˚aste den tidskontinuerliga modellen som tagits fram i kapitel 2 ¨overs¨attas.

Sats 3 (Sampling av system) Om ett system beskrivet enligt ekvation (3.1) styrs med en insignal som ¨ar styckvis konstant ¨over samplingsintervallet Ts, s˚a ges

sambandet mellan insignalernas, tillst˚andens och utsignalernas v¨arden i samplings-¨ogonblicket av det tidsdiskreta systemet enligt:

x(t + 1) = F x(t) + Gu(t) y(t) = Cx(t). (3.2) H¨ar ¨ar F = eATs, G = Ts Z 0 eAtB dt. (3.3) 15

(30)

Bevis se Sats 4.1 i [13]. ¤ Det som presenteras i Sats 3 anv¨ander sig av flera ber¨akningskr¨avande operationer och d˚a speciellt att ber¨akna matrisen F . En matris-vektormultiplikation m˚aste ¨

aven utf¨oras och sedan g¨oras en numerisk approximation av integralen f¨or att ta fram G. I Matlab-funktionen c2d finns en l¨osning p˚a problemet. Matriserna F och G ber¨aknas ist¨allet enligt

    F G 0 I     = exp à    A B 0 0     Ts ! . (3.4)

Att en omskrivning kan g¨oras p˚a detta s¨att inses t.ex. om ekvationerna i (3.3) tay-lorserieutvecklas och resultatet j¨amf¨ors med en taylorserieutveckling av h¨ogerledet i ekvation (3.4).

3.2.1

Val av samplingstid

Sats 3 visar att samplingstiden, Ts, har stor betydelse f¨or hur de nya

systemma-triserna kommer att se ut. I kapitel 11.4 i [6] diskuteras en tumregel som s¨ager att samplingsfrekvensen ska v¨aljas till 20 g˚anger bandbredden hos det slutna systemet. Detta kan sedan ¨overs¨attas till samplingstiden genom

T = 2π

ω . (3.5)

Om detta uttryck anv¨ands kan samplingstiden uttryckas som Ts =

π 10ωb

, (3.6)

d¨ar ωb ¨ar bandbredden f¨or det slutna systemet.

3.3

Kalmanfilter

Vid design av en regulator s˚a kan oftast systemets tillst˚andsvektor, x, inte m¨atas, utan endast de m¨atbara utsignalerna, y. D¨arf¨or m˚aste tillst˚anden p˚a n˚agot s¨att skattas med hj¨alp av m¨atsignalen och styrsignalen, u. Detta kan g¨oras med hj¨alp av en observat¨or. St¨orningar antas komma in i det tidskontinuerliga systemet (3.1) enligt

˙x(t) = Ax(t) + Bu(t) + N v1(t)

y(t) = Cx(t) + v2(t), (3.7)

d¨ar v1(t) ¨ar processbrus och v2(t) ¨ar m¨atst¨orningar. N beskriver hur

system-st¨orningarna p˚averkar de olika tillst˚anden. I [7] visas hur en observat¨or som mi-nimerar skattningsfelet e = x − ˆx kan tas fram. Denna observat¨or brukar kallas f¨or ett Kalmanfilter. Den beskrivningen inneh˚aller en upps¨attning ekvationer f¨or att ta hand om tidsuppdateringen, d.v.s. hur systemet och kovariansmatrisen

(31)

P = E{eeT} ska uppdateras i de sampel d˚a m¨atning ej g¨ors. H¨ar betecknar

E{·} v¨antev¨ardet. Kovariansmatrisen beskriver hur s¨akra skattningarna ¨ar. Be-skrivningen i [7] kr¨aver att ela systemet diskretiseras, vilket ¨ar relativt kr¨avande, i synnerhet i ADA. I t.ex. [10] visas att tidskontinuerliga uttryck f¨or tidsuppda-teringen och tidsdiskreta uttryck f¨or m¨atuppdatidsuppda-teringen kan anv¨andas. Detta g¨or att systemet (3.1) i Kalmanfiltret inte beh¨over diskretiseras.

3.3.1

Tidskontinuerlig tidsuppdatering

Tidsuppdateringen kan ses som en internsimulering och k¨ors tidskontinuerligt. Uppdateringen av de skattade tillst˚anden ˙ˆxoch kovariansmatrisen g¨ors enligt

˙ˆx(t) = Aˆx(t) + Bu(t) ˙

P(t) = AP (t) + P (t)AT + N R1NT (3.8)

d¨ar R1beskriver processbrusets kovarians.

3.3.2

Tidsdiskret m¨

atuppdatering

Grundfundamentet i Kalmanfiltret bygger p˚a skattning av tillst˚anden med hj¨alp av m¨atdata. F¨or att uppdatera de skattade tillst˚anden och kovariansmatrisen s˚a ber¨aknas f¨orst Kalmanfiltrets f¨orst¨arkning K. Detta g¨ors enligt

K = P (t|t − 1)CT¡CP (t|t − 1)CT + R

−1

(3.9) d¨ar P (t|t − 1) ¨ar skattningsfelets kovarians givet m¨atningarna upp till och med tidpunkten t − 1 och R2 beskriver m¨atbrusets kovarians. Nu uppdateras ˆxoch P

enligt

ˆ

x(t|t) = ˆx(t|t − 1) + K¡y(t) − C ˆx(t|t − 1)¢

P(t|t) = P (t|t − 1) − KCP (t|t − 1). (3.10) Vid implementering s˚a uppdaterar de b˚ada funktionerna samma tillst˚and och ko-variansmatris. Parametrarna R1och R2blir designvariabler f¨or Kalmanfiltret och

vissa principer kan beaktas vid intrimning av dessa. R1 best¨ammer hur tillst˚

an-den, x, slumpvandrar och anger ¨aven hur kovariansmatrisen ska v¨axa med tiden. R2 anger tillf¨orlitligheten i m¨atningarna och best¨ammer hur mycket

kovarians-matrisen ska minska efter en m¨atning. Om R2 = 0 s˚a kan m¨atningarna anses

som perfekta. Om R2 g˚ar mot o¨andligheten s˚a tillf¨or m¨atningarna ingen egentlig

(32)
(33)

MPC

MPC ¨ar en modern avancerad reglerstrategi och har anv¨ants med stor framg˚ang under de senaste 10-20 ˚aren inom industrin, d˚a fr¨amst i processindustrin. Det ¨ar f¨orst p˚a senare ˚ar som metoden har blivit tillg¨anglig f¨or system med snabbare dynamik, detta tack vare bland annat ¨okad datorkraft och effektivare optimerings-algoritmer. Den st¨orsta f¨ordelen med MPC ¨ar att begr¨ansningar p˚a styrsignaler och ¨aven p˚a linj¨arkombinationer av tillst˚and kan hanteras explicit. En annan f¨or-del ¨ar att MPC av m˚anga anses som en intuitiv metod och att den ¨ar enkel att f¨orst˚a och f¨orklara. Om inget annat n¨amns ¨ar teorin i detta kapitel h¨amtad ur [13], [16] eller [3]. De tv˚a sistn¨amnda beskriver MPC v¨aldigt ing˚aende och den som vill f¨ordjupa sig inom ¨amnet h¨anvisas till dessa. Uppl¨agget f¨or beskrivningen av MPC ¨ar till stor del h¨amtat ur [18].

4.1

Oversiktlig beskrivning av MPC

¨

Grundid´en med MPC ¨ar formulera reglerproblemet som ett optimeringsproblem och l¨osa detta problem online varje g˚ang nya m¨atsignaler erh˚alls. De f¨orv¨antade framtida v¨ardena p˚a reglerstorheterna ber¨aknas som funktion av de m¨ojliga styr-signalerna. V¨alj sedan den styrsignal som ¨ar b¨ast enligt n˚agot kriterium. Hela f¨orfarandet i MPC kan sammanfattas i enligt

1. Ber¨akna eller prediktera ett antal framtida utsignaler. Dessa signaler beror p˚a framtida styrsignaler och p˚a m¨atv¨arden k¨anda vid tidpunkten t.

2. S¨att sedan upp ett kriterium baserat p˚a dessa variabler och optimera sedan med avseende p˚a de framtida styrsignalerna.

3. Applicera u(k), det f¨orsta v¨ardet av de ber¨aknade styrsignalerna. 4. Repetera fr˚an steg 1.

Grundl¨aggande begrepp inom MPC ¨ar

• Prediktionshorisonten, Np, som anger hur l˚angt fram prediktionen ska ske.

(34)

• Styrsignalhorisonten, Nu, som anger hur l˚ang den optimerade

styrsignalse-kvensen blir.

Figur 4.1 ger en grafisk f¨orklaring av hur MPC fungerar. D¨ar visas ett exempel p˚a hur en framtagen styrsignalsekvens kan se ut.

y(k) ˆ y(k + i|k) u(k + i|k) u(k) N1 N2 k k+ i k+ N2 Past Future Nu Np k+ Np Framtida Tidigare

Figur 4.1.Illustration av styrstrategin i MPC. Styrsignalen ¨ar heldragen och utsignalen

beskrivs med punkter.

Enligt punkt 2 i MPC-f¨orfarandet ska optimeringen ske med avseende p˚a de fram-tida styrsignalerna. Det inneb¨ar att man f¨or referensv¨ardet noll har ett optime-ringsproblem enligt min u Np X i=1 ° °x(k + i)° ° 2 Q1+ Nu X j=1 ° °u(k + j − 1)° ° 2 Q2 d˚a Ax ≤ b (4.1)

d¨ar Q1och Q2¨ar straffmatriser f¨or tillst˚anden respektive styrsignalerna. A och b

¨ar bivillkoren f¨or optimeringsproblemet skrivet p˚a matrisform.

4.2

Prediktion av framtida tillst˚

andsv¨

arden

Anledningen till att metoden heter Model Predictive Control ¨ar att de framtida tillst˚anden predikteras (eng. predict) och sedan anv¨ands i ekvation (4.1). Om en styrsignal u(k) appliceras, s¨ager ekvation (3.2) att

x(k + 1) = F x(k) + Gu(k). (4.2) F¨or att ta fram n¨asta tillst˚and s˚a anv¨ands modellen rekursivt, d.v.s.

x(k + 2) = F x(k + 1) + Gu(k + 1)

(35)

Genom induktionsbevis kan man visa att ett godtyckligt framtida tillst˚and med Nu− 1 antal styrsignaler kan ber¨aknas enligt

x(k + i) = Fix(k) +

k+Nu−1

X

j=k

Fk+i−j−1Gu(j). (4.4)

Alla de framtida tillst˚anden fram till och med prediktionshorisonten kan skrivas p˚a vektorform enligt X = Hx(k) + SU , (4.5) d¨ar X =                x(k + Np) .. . x(k + 2) x(k + 1)                , U =                u(k + Nu− 1) .. . u(k + 1) u(k)                S =                                   FNp−NuG FNp−Nu−1G · · · FNp−1G FNp−Nu−1G . .. FNp−2G .. . ... ... ... G F G · · · FNu−1G 0 G . .. ... .. . . .. . .. F G 0 · · · 0 G                                   H =                FNp .. . F2 F                . (4.6)

Med denna form p˚a S antas att u(k +j) = 0, ∀j > Nu. Andra val av u diskuteras

vidare i avsnitt 4.6.

4.3

Prestandam˚

att

Om man v¨aljer att s¨atta upp optimeringsproblemet som i ekvation (4.1) kan pro-blemet ¨aven uttryckas i X och U . Om ˜Q1 och ˜Q2 definieras som blockdiagonala

(36)

matriser av Q1 och Q2repeterade Np respektive Nu g˚anger, d.v.s. ˜ Q1 =                  Q1 0 · · · 0 0 . .. ... ... .. . . .. Q1 0 0 · · · 0 Q1                  , ˜Q2 =                  Q2 0 · · · 0 0 . .. ... ... .. . . .. Q2 0 0 · · · 0 Q2                  (4.7) erh˚alls Np X i=1 ° °x(k + i)° ° 2 Q1+ Nu X j=1 ° °u(k + j − 1)° ° 2 Q2 = XTQ˜1X+ UTQ˜2U = ¡Hx(k) + SU ¢TQ˜ 1¡Hx(k) + SU ¢ + UTQ˜2U. (4.8)

4.4

MPC formulerat som kvadratiskt problem

En anledning till att MPC har kommit att anv¨andas inom s˚a m˚anga omr˚aden ¨ar att problemet kan formuleras som ett kvadratisk optimeringsproblem. Det finns m˚anga effektiva l¨osningsmetoder f¨or denna typ av problem och det kan vara till stor nytta d˚a l¨osningen sker online. Ett generellt kvadratiskt optimeringsproblem kan skrivas som

min x 1 2x THx+ fT x d˚a Axx≤ b. (4.9)

F¨or att se att ekvation (4.8) kan formuleras p˚a kvadratisk form i U utvecklas den f¨orsta kvadratiska termen i ekvationen, d.v.s.

¡Hx(k) + SU ¢TQ˜

1¡Hx(k) + SU ¢

= xT(k)HTQ˜1Hx(k) + 2xT(k)HTQ˜1SU+ UTSTQ˜1SU. (4.10) Eftersom man vill optimera med avseende p˚a U s˚a kan alla termer som inte inne-h˚aller U strykas. D˚a kan optimeringsproblemet formuleras enligt

min U 2x

T(k)HTQ˜

1SU+ UTSTQ˜1SU+ UTQ˜2U

d˚a AuU ≤ b. (4.11)

Genom att stryka korstermer och dela med tv˚a erh˚alls min U 1 2U T¡STQ˜ 1S+ ˜Q2¢U + ¡STQ˜1Hx(k) ¢T U d˚a AuU ≤ b. (4.12)

Detta uttryck ¨ar p˚a formen (4.9) och kan sedan anv¨andas f¨or att ber¨akna den optimala styrsignalsekvensen i t.ex Matlab.

(37)

4.5

MPC med f¨

oljning av referenssignal

Det ¨ar vanligt att man inte vill minimera tillst˚anden, x:s, avvikelse fr˚an origo, utan ist¨allet minimera utsignalen, y:s, avvikelse fr˚an n˚agon referenssignal r. F¨or f¨oljning av referenssignal s˚a skrivs summationen i ekvation (4.1) med hj¨alp av ekvation (3.2) och (4.5) om enligt

Np X i=1 ° °y(k + i) − r(k + i)° ° 2 Q1+ Nu X j=1 ° °u(k + j − 1)° ° 2 Q2 = Np X i=1 ° °Cx(k + i) − r(k + i)° ° 2 Q1+ Nu X j=1 ° °u(k + j − 1)° ° 2 Q2 = ¡˜ CX− R¢T˜ Q1¡˜ CX− R¢ + UTQ˜ 2U = ¡˜ CHx(k) + ˜CSU− R¢T˜ Q1¡˜ CHx(k) + ˜CSU − R¢ + UTQ˜ 2U △ = ¡Hcx(k) + ScU− R¢ T˜ Q1¡Hcx(k) + ScU− R¢ + UTQ˜2U, (4.13) d¨ar Hc △ = CH, S˜ c △ = CS, R =˜           r(k) .. . r(k)           (4.14) och ˜ C =                 C 0 · · · 0 0 . .. ... ... .. . . .. C 0 0 · · · 0 C                 (4.15)

¨ar en blockdiagonal matris best˚aende av C repeterat Npg˚anger. I ekvation (4.14)

g¨ors ¨aven f¨orenklingen att referenssignalen r antas vara konstant f¨or alla framtida tidpunkter. Detta ¨ar rimligt att anta d˚a de framtida referenssignalerna oftast inte ¨ar k¨anda . Uttrycket som erh˚alls i ekvation (4.13) kan skrivas om s˚a att ett kvadratiskt optimeringsproblem erh˚alls. Om samma ber¨akningsg˚ang som i avsnitt 4.4 f¨oljs erh˚alls ett optimeringsproblem enligt

min U 1 2U T¡S cTQ˜1Sc+ ˜Q2¢U + ³ ScTQ˜1¡Hcx(k) − R¢ ´T U d˚a AuU ≤ b. (4.16)

4.6

Styrsignal efter N

u

sampel

I avsnitt 4.3 gjordes f¨orenklingen att styrsignalerna ¨ar noll efter styrsignalhorison-ten. Det finns flera andra val som kan f¨or¨andra prestandan f¨or regulatorn. Ett

(38)

mer logiskt val ¨ar att v¨alja styrsignalen som konstant efter styrsignalhorisonten. Enligt [18] ¨ar detta passande f¨or system utan integralverkan i ¨oppna systemet. D˚a s˚a ¨ar fallet ska den station¨ara styrsignalen vara nollskild. Utsignalen kan antas ligga n˚agorlunda n¨ara referenssignalen efter Nusampel och d¨arf¨or kan U v¨aljas s˚a

att

u(k + j) = u(k + Nu), Nu< j ≤ Np− 1. (4.17)

F¨or att kunna anv¨anda detta i tidigare framtagna uttryck s˚a skrivs det p˚a vektor-notation. D˚a erh˚alls

UNp △ = ΩMU =                                 I 0 · · · 0 .. . ... . .. ... I 0 · · · 0 I 0 · · · 0 0 . .. ... ... .. . . .. I 0 0 · · · 0 I                                 U (4.18) d¨ar UNp =                                  u(k + Np− 1) .. . u(k + Nu− 1) u(k + Nu− 2) .. . u(k + 1) u(k)                                  . (4.19)

Matriserna S och ˜Q2 m˚aste skrivas om enligt

S =                 G F G · · · FNp−1G 0 . .. ... ... .. . . .. G F G 0 · · · 0 G                 , ˜Q2 =                  Q2 0 · · · 0 0 . .. ... ... .. . . .. Q2 0 0 · · · 0 Q2                  (4.20)

d¨ar ˜Q2 ¨ar blockdiagonal som tidigare fast i detta fall ¨ar Q2 repeterad Np g˚anger

ist¨allet f¨or Nu g˚anger. Om alla dessa omskrivningar g¨ors s˚a blir t.ex.

prestanda-m˚attet i ekvation (4.8) Np X i=1 ° °x(k + i)° ° 2 Q1+ Np X j=1 ° °u(k + j − 1)° ° 2 Q2 = X TQ˜ 1X+ UTΩTMQ˜2ΩMU = ¡Hx(k) + SΩMU¢ T˜ Q1¡Hx(k) + SΩMU¢ + UTΩMT Q˜2ΩMU. (4.21)

(39)

Detta kan sedan uttryckas som ett kvadratisk optimeringsproblem med hj¨alp av samma ber¨akningsg˚ang som i kapitel 4.4. D˚a erh˚alls

min U 1 2U TT M¡STQ˜1S+ ˜Q2¢ΩMU+¡ΩTMSTQ˜1Hx(k) ¢T U d˚a AuU ≤ b. (4.22)

4.7

MPC med integralverkan

F¨or att kunna ta hand om t.ex. modellfel beh¨over integralverkan inf¨oras. Algo-ritmen k¨anner inte storleken p˚a felen och det g¨or att man f˚ar station¨ara fel. N¨ar simuleringar g¨ors med guidancesystemet inkopplat s˚a beh¨over dock inte denna ut¨okning g¨oras eftersom ˚aterkopplingen som finns mellan delsystemen Guidance och Missil ger integralverkan automatiskt – se Figur 2.2. Vid simuleringar med stegsvar beh¨over dock denna ut¨okning g¨oras. Det man d˚a kan g¨ora ¨ar att skriva om modellen i ekvation (3.2) s˚a att den anv¨ander ∆u ist¨allet f¨or u. H¨ar ¨ar

∆u(k) = u(k) − u(k − 1). (4.23) F¨or att ta hand om problemet med att straffa styrsignalen, samtidigt som h¨ansyn till modellst¨orningar beaktas, kan delar av en algoritm som kallas Velocity Algo-rithmutnyttjas. Den beskrivs i [19] och bygger bland annat p˚a att tillst˚ andsvek-torn ut¨okas s˚a att den ¨aven inneh˚aller reglerfelet. Nya variabler inf¨ors enligt

∆x(k) = x(k) − x(k − 1), e(k) = y(k) − r(k) (4.24) och dessutom ∆u enligt ekvation (4.23). Sedan ut¨okas tillst˚andsmodellen enligt

xI(k) =     ∆x(k) e(k)     , uI(k) = ∆u(k) (4.25) och FI =     F 0 CF I     , GI =     G CG     , CI =  0 I  . (4.26) D˚a erh˚alls en ny modell enligt

xI(k + 1) = FIxI(k) + GIuI(k)

e(k) = CIxI(k). (4.27)

H¨ar anv¨ands indexet I f¨or att s¨arskilja vektorer och matriser som har med inf¨o-randet av integration. Denna form av integralverkan erh˚alls genom att inf¨ora fler tillst˚and i modellen. Eftersom reglerfelet nu finns med i tillst˚andsvektorn s˚a m˚aste optimeringsproblemet omformuleras. Referensf¨oljningen sk¨ots automatiskt genom att reglerfelet e minimeras och d¨arf¨or beh¨ovs inte vektorn R i prestandam˚attet.

(40)

Eftersom modellen har ∆u som insignal s˚a uttrycks prestandam˚attet i denna va-riabel och ∆u blir ¨aven ny optimeringsvava-riabel. Prestandam˚attet kan, precis som i avsnitt 4.3, skrivas som

Np X i=1 ° °e(k + i)° ° 2 Q1 + Nu X j=1 ° °∆u(k + j − 1)° ° 2 Q2 = Np X i=1 ° °CIxI(k + i) ° ° 2 Q1 + Nu X j=1 ° °∆u(k + j − 1)° ° 2 Q2 = ¡˜ CIXI ¢T˜ Q1¡˜ CIXI¢ + ∆U TQ˜ 2∆U . (4.28)

H¨ar ¨ar ˜CIen blockdiagonal matris precis som den i ekvation (4.15). ∆U ges enligt

∆U =                u(k + Nu− 1) − u(k + Nu− 2) .. . u(k + 1) − u(k) u(k) − u(k − 1)                . (4.29)

H¨ar finns u(k − 1) med, detta g¨or att den applicerade styrsignalen fr˚an samplings-tidpunkten innan m˚aste sparas undan. Om ekvation (4.5) utnyttjas kan prestan-dam˚attet skrivas om enligt

¡˜ CIXI ¢T˜ Q1¡C˜IXI¢ + ∆U TQ˜ 2∆U = ¡˜ CIHIxI(k) + ˜CISI∆U ¢T˜ Q1¡˜ CIHIxI(k) + ˜CISI∆U¢ + ∆U TQ˜ 2∆U . (4.30)

H¨ar ¨ar matriserna HI och SI p˚a samma form som i ekvation (4.6) med den

skill-naden att FI och GIanv¨ands ist¨allet. N¨ar formulering i ekvation (4.6) tas fram s˚a

antas att u(k+j) = 0, ∀j > Nu. I formuleringen i detta avsnitt anv¨ands ∆u.

Det-ta g¨or att anDet-tagandet i fallet med integralverkan blir att ∆u(k +j) = 0, ∀j > Nu.

Detta g¨or att omskrivningen av optimeringsproblemet som g¨ors i avsnitt 4.6 inte beh¨over g¨oras. Prestandam˚attet kan skrivas om s˚a att ett kvadratiskt optime-ringsproblem erh˚alls, se avsnitt 4.4. Om detta g¨ors s˚a erh˚alls

min ∆U 1 2∆U T¡ST c,IQ˜1Sc,I+ ˜Q2¢∆U + ¡STc,IQ˜1Hc,IxI(k) ¢T ∆U d˚a A∆u∆U ≤ b. (4.31)

H¨ar har ¨aven definitionerna Hc,I △

= ˜CIHI och Sc,I △

= ˜CISI anv¨ants.

4.8

Bivillkor

En av de st¨orsta f¨ordelarna med MPC ¨ar att man tar hand om bivillkor p˚a styr-signaler och tillst˚and p˚a ett enkelt och intuitivt s¨att. Alla bivillkor som ¨ar linj¨ara

(41)

i optimeringsvariabeln, i detta fall U eller ∆U , kan hanteras. F¨or att passa in i ramverket s˚a uttrycks allts˚a alla bivillkor p˚a formen

AuU ≤ b, (4.32)

alternativt

A∆u∆U ≤ b, (4.33)

om optimeringsvariabeln ¨ar ∆U . Flera olika sorters bivillkor kan l¨aggas ihop. De formuleras d˚a enligt     Au1 Au2    U ≤     b1 b2     , (4.34)

d¨ar Au1, b1 motsvarar en viss typ av bivillkor och Au2, b2 motsvarar en annan.

Samma sak kan g¨oras f¨or bivillkor uttryckta i ∆U .

4.8.1

Bivillkor p˚

a amplituden

Ofta finns det begr¨ansningar p˚a styrsignalens amplitud, t.ex. maximal utvridning f¨or ett roderservo i fallet med missilstyrning. S˚adana villkor formuleras enligt

umin≤ u(k + j) ≤ umax. (4.35)

Detta kan ¨aven skrivas som

u(k + j) ≤ umax

−u(k + j) ≤ −umin. (4.36)

Om bivillkor f¨or styrsignalerna l¨angs hela styrsignalhorisonten st¨alls upp och skrivs p˚a formen enligt ekvation (4.32) erh˚alls

                                       I 0 · · · 0 0 I . .. ... .. . . .. ... 0 0 · · · 0 I −I 0 · · · 0 0 −I . .. ... .. . . .. ... 0 0 · · · 0 −I                                        U ≤                            umax .. . umax −umin .. . −umin                            . (4.37)

D˚a ∆u anv¨ands som optimeringsvariabel blir det annorlunda. Om olikheten u(k + j) ≤ umax analyseras till att b¨orja med, kan uttrycket

u(k) = ∆u(k) + u(k − 1) (4.38) utnyttjas. Detta g¨or att olikheten f¨or j = 1 kan skrivas om enligt

(42)

Samma sak kan g¨oras f¨or j = 2 och omskrivningen av u(k + 1) blir d˚a enligt u(k + 1) = ∆u(k + 1) + ∆u(k) + u(k − 1). (4.40) P˚a samma s¨att kan d˚a olikheten f¨or j = 2 kan skrivas om enligt

∆u(k + 1) + ∆u(k) + u(k − 1) ≤ umax. (4.41)

Om detta g¨ors f¨or alla styrsignaler l¨angs hela styrsignalhorisonten erh˚alls                 I · · · I 0 I . .. ... .. . . .. ... ... 0 · · · 0 I                 ∆U +           u(k − 1) .. . u(k − 1)           ≤           umax .. . umax           . (4.42)

F¨or att det ska vara p˚a formen enligt ekvation (4.33) flyttas vektorn med u(k − 1) ¨over till h¨ogerledet. D˚a erh˚alls

                I · · · I 0 I . .. ... .. . . .. ... ... 0 · · · 0 I                 ∆U ≤           umax− u(k − 1) .. . umax− u(k − 1)           . (4.43)

F¨or villkoret −u(k +j) ≤ −uminkan man p˚a samma s¨att som f¨or u(k +j) ≤ umax

visa att bivillkoren kan skrivas enligt                 −I · · · −I 0 −I . .. ... .. . . .. ... ... 0 · · · 0 −I                 ∆U ≤          

−umin+ u(k − 1)

.. .

−umin+ u(k − 1)

          . (4.44)

Villkoret (4.35) kan nu skrivas p˚a formen enligt ekvation (4.34) med hj¨alp av ekvation (4.43) och (4.44). I detta arbete s˚a har umax = 0.5I rad och umin =

−0.5I rad anv¨ants, detta enligt avsnitt 2.4.

4.8.2

Bivillkor p˚

a ¨

andringshastigheten

P˚a samma s¨att som f¨or amplituden p˚a styrsignalen kan bivillkor p˚a ¨andringshastig-heten eller derivatan finnas. I samma exempel som f¨or amplituden p˚a styrsignalen, ett roderservo, kan en begr¨ansning p˚a ¨andringshastigheten helt enkelt betyda att rodret inte kan ¨andra vinkel hur fort som helst. En s˚adan begr¨ansning kan ock-s˚a finnas f¨or att undvika on¨odigt slitage p˚a roderservona. S˚adana bivillkor kan formuleras som

(43)

Bivillkoren f¨or alla styrsignaler l¨angs hela styrsignalhorisonten kan formuleras en-ligt ekvation (4.32). D˚a erh˚alls

                                                    I −I 0 · · · 0 0 I −I . .. ... .. . . .. ... ... 0 .. . . .. I −I 0 · · · 0 I −I I 0 · · · 0 0 −I I . .. ... .. . . .. ... ... 0 .. . . .. −I I 0 · · · 0 −I                                                     U ≤                                      ∆umax .. . ∆umax

∆umax+ u(k − 1)

−∆umin

.. . −∆umin

−∆umin− u(k − 1)

                                     . (4.46)

H¨ar ser man att den senast applicerade styrsignalen m˚aste sparas, d.v.s.

u(k − 1), m˚aste sparas om dessa bivillkor anv¨ands samtidigt som U ¨ar optime-ringsvariabel. P˚a samma s¨att som f¨or bivillkoren p˚a amplituden blir dessa bivillkor annorlunda om ∆U ¨ar optimeringsvariabel.

                                       I 0 · · · 0 0 I . .. ... .. . . .. ... 0 0 · · · 0 I −I 0 · · · 0 0 −I . .. ... .. . . .. ... 0 0 · · · 0 −I                                        ∆U ≤                            ∆umax .. . ∆umax −∆umin .. . −∆umin                            . (4.47)

I detta arbete s˚a har ∆umax = 4πI rad/s och ∆umin = −4πI rad/s anv¨ants,

enligt avsnitt 2.4.

4.9

Val av horisonter

Valet av de tv˚a horisonterna Np och Nu p˚averkar regulatorn starkt.

Prediktions-horisonten v¨aljs s˚a att den t¨acker in den tid som det tar f¨or systemet att sv¨anga in sig vid ett stegsvar, se [13]. Styrsignalhorisonten v¨aljs ˚a andra sidan s˚a kort som m¨ojligt. Det ¨ar just denna horisont tillsammans med antalet styrsignaler som be-st¨ammer en stor del av optimeringens komplexitet. Eftersom optimeringen utf¨ors

(44)

online s˚a ¨ar det av st¨orsta vikt att h˚alla nere ber¨akningstiden f¨or varje ny styrsig-nalsekvens. Genom att ha s˚a l˚ag Nu som m¨ojligt kan allts˚a denna ber¨akningstid

minskas.

4.10

Stabilitet

Ett mycket vanligt krav vid design av en regulator ¨ar att det slutna systemet ska vara stabilt. Eftersom styrsignalen ber¨aknas online med hj¨alp av optimering s˚a kan ett explicit uttryck f¨or hur ˚aterkopplingen ser ut oftast inte tas fram. Detta g¨or det mycket sv˚arare att analysera det slutna systemets stabilitet. I [17] sammanfattas den senaste forskningen inom stabilitet f¨or MPC och ett antal metoder f¨or att garantera detta presenteras. N˚agra av dessa tas upp i detta avsnitt men ingen av dem har implementerats i den slutgiltiga regulatorn.

4.10.1

andlig prediktionshorisont

Eftersom varje optimering i framtagningen av den optimala styrsignalsekvensen inte bryr sig om vad som h¨ander efter prediktionshorisonten s˚a kan den g¨ora s˚a att systemet hamnar i ett tillst˚and som inte g˚ar att stabilisera. Om o¨andlig predik-tionshorisont anv¨ands s˚a undviks detta problem. I kapitel 6 i [16] s˚a presenteras en metod som utnyttjar detta.

4.10.2

Bivillkor p˚

a sluttillst˚

andet

Om ett bivillkor som s¨ager vad sluttillst˚andet ska vara anv¨ands, d˚a oftast ett likhetsvillkor, erh˚alls stabilitet. Det vanligaste villkoret ¨ar att x(k +Np) = 0. Man

kan ¨aven kr¨ava att tillst˚anden ska avta med en viss konstant hastighet. Detta kan formuleras som

kx(k + i)k ≤ αkx(k + i − 1)k, α < 1. (4.48)

4.10.3

Sluttillst˚

andet inom ett visst omr˚

ade

Man kan ¨aven v¨alja att generalisera villkoren i f¨oreg˚aende avsnitt s˚a att de ist¨allet kr¨aver att sluttillst˚andet ska vara inom ett specifikt omr˚ade, Xf, d.v.s.

x(k + Np) ∈ Xf. (4.49)

Xf ¨ar definierat s˚a att det inneh˚aller origo ist¨allet f¨or en specifik punkt som i det ti-digare avsnittet. Detta ¨ar ¨aven en relaxering av optimeringsproblemet som erh˚alls d˚a metoden i avsnitt 4.10.2 anv¨ands. Alla bivillkor antas ¨aven var inaktiva inom omr˚adet. I [20] visas att om styrsignalen, u, ber¨aknas bortom styrsignalhorisonten enligt

u(k + i) = KLQx(k + i), ∀i ≥ Nu, (4.50)

d¨ar KLQ¨ar ˚aterkopplingsmatrisen ber¨aknad med hj¨alp av Linear Quadratic

(LQ)-teori (se kapitel 9 i [13]), s˚a ¨ar systemet stabilt. Detta tillv¨agag˚angss¨att g¨aller ¨aven f¨or ¨oppna system som ¨ar instabila och en till¨ampning av denna strategi ˚aterfinns i [5].

(45)

4.10.4

Straff p˚

a sluttillst˚

andet

Ett av de tidigaste f¨orslagen till modifiering av optimeringsproblemet f¨or att ga-rantera stabilitet f¨or det slutna systemet var att l¨agga till ett straff p˚a sluttillst˚ an-det. Genom att v¨alja denna straffmatrisen f¨or sluttillst˚andet som l¨osningen till Lyapunov-olikheten

FTP F − P ¹ Q, (4.51) kan stabilitet garanteras utan ett bivillkor p˚a sluttillst˚andet anv¨ands. H¨ar ¨ar F den diskretiserade systemmatrisen, P l¨osningen till olikheten och Q en godtycklig positivt semidefinit matris. Detta f¨orfarande beskrivs i [12] och g¨aller endast f¨or ¨

oppna system som ¨ar stabila. En praktisk till¨ampning av metoden finns beskriven i [2].

4.11

osning av optimeringsproblemet

I MPC m˚aste en optimering g¨oras f¨or att f˚a fram en styrsignal. Denna optimering m˚aste, samtidigt som den ska r¨akna fram den b¨asta styrsignalen enligt n˚agon v¨ar-defunktion, ta h¨ansyn till givna bivillkor. Detta kan sammanfattas i Figur 4.2 d¨ar v¨ardefunktionen visas som niv˚akurvor och bivillkoren beskrivs av den gr˚a kvadra-ten. Figuren visar ¨aven att v¨ardefunktionen har ett optimum utan bivillkor och ett annat med bivillkor. Enligt strategin fr˚an avsnitt 4.1 implementeras den f¨ors-ta styrsignalen u(k) och prediktionsorisonten f¨orskjuts fram˚at – receding horizon control.

Optimeringsproblemet kan alltid ¨overf¨oras till ett kvadratiskt optimeringsproblem eller ett QP-problem som det ocks˚a kallas. Denna klass av problem bygger p˚a en kvadratisk v¨ardefunktion med linj¨ara bivillkor och beskrivs av ekvation (4.9). QP-problem ¨ar konvexa problem och detta g¨or att varje lokalt optimum ¨ar ett globalt optimum, vilket g¨or optimeringsproblemet relativt l¨attl¨ost. Den vanligas-te l¨osningsmetoden kallas Active Set-metoden och bygger p˚a att s¨okningen efter optimum initieras med att anta en m¨angd av aktiva bivillkor. Sedan kan det resul-terande minsta-kvadrat-problemet (d¨ar bivillkoren behandlas som likhetsvillkor) enkelt l¨osas med hj¨alp av Lagrangemultiplikatorer. Den m¨angd aktiva bivilkor som anv¨ands initialt ¨ar oftast inte den r¨atta men genom att anv¨anda Karush-Kuhn-Tucker (KKT)–villkoret kan m¨angden uppdateras iterativt tills den r¨atta m¨angden har hittats. Detta f¨orfarande beskrivs n¨armare i [14] och d¨ar f¨orklaras ¨aven KKT-villkoren n¨armare. De KKT-villkoren ¨ar n¨odv¨andiga villkor f¨or l¨osningen till ett allm¨ant optimeringsproblem med bivillkor. F¨or QP-problem ¨ar det ett n¨odv¨andigt och tillr¨ackligt villkor. I [14] beskrivs ytterligare tv˚a klasser av l¨osningsmetoder. Den f¨orsta ¨ar metoder som anv¨ander straffunktioner och den andra ¨ar metoder som an-v¨ander barri¨arfunktioner. Metoder som anan-v¨ander straffunktioner bygger p˚a att det begr¨ansade optimeringsproblemet omformuleras till ett obegr¨ansat samtidigt som en straffterm till v¨ardefunktionen adderas. Denna term uttrycker avst˚andet till de otill˚atna punkterna som tidigare beskrevs av bivillkoren. De metoder som anv¨an-der barri¨arfunktioner ¨ar snarlika de som anv¨ananv¨an-der straffunktioner. Skillnaden ¨ar

(46)

Optimum utan bivillkor Tillåtet område Optimum med bivillkor u(k) u(k + 1)

J

(u)

Implementering enligt “Receding Horizon”

Figur 4.2. F¨orklaring av optimering.

den att barri¨arfunktionerna beskriver avvikelsen fr˚an randen p˚a det till˚atna omr˚ a-det som beskrivs av bivillkoren. I a-detta arbete har Matlab-funktionen quadprog anv¨ants och den utnyttjar en Active Set-metod.

(47)

Robust MPC

Vid reglering av system ¨ar det viktigt att analysera hur k¨ansligt det ˚aterkopplade systemet ¨ar f¨or os¨akerhet i modellen som anv¨ands f¨or reglerdesign. Denna k¨ans-lighet brukar ¨aven beskrivas som regulatorns robusthet. Robustheten beskriver hur stora modellfel som kan accepteras utan att ¨aventyra stabiliteten i det ˚ ater-kopplade systemet. Eftersom framtagningen av styrsignalen i en MPC-regulator kr¨aver optimering s˚a m˚aste os¨akerheterna bakas in i optimeringskriteriet p˚a n˚agot s¨att. Detta kapitel kommer att behandla olika beskrivningar av modellfelet och metoder f¨or att ta fram en robust MPC-regulator. D˚a kommer fr¨amst en minmax-framst¨allning att behandlas. Detta kapitel kan ses som en sammanfattning av [1], [15] och kapitel 8 i [16]. Ingen av de teorier och metoder som presenteras i detta kapitel kan dock anses vara m¨ojlig att implementera i realtid. F¨or arbetets fullst¨andighet presenteras ¨and˚a denna ¨oversikt.

5.1

Os¨

akerhetsmodeller

Os¨akerheten i modellen kan representeras p˚a olika s¨att. Generellt kan alla varianter av s˚adana beskrivningar skrivas som

x(k + 1) = F (δk)x(k) + G(δk)u(k) + Ψ(δk), δk ∈ ∆

y(k) = C(δk)x(k), (5.1)

d¨ar δk ¨ar st¨orningen och ∆ ¨ar m¨angden av alla m¨ojliga st¨orningar. Forts¨attningen

av detta avsnitt kommer ta upp de olika varianter som ¨ar vanligast.

5.1.1

Additiv st¨

orning

All os¨akerhet i modellen kan i vissa fall antas vara en begr¨ansad men ok¨and st¨or-ning som ¨ar additiv. Detta g¨or att ekvation (5.1) kan skrivas om som

x(k + 1) = F x(k) + Gu(k) + Ψw(k), w(k) ∈ W

y(k) = Cx(k). (5.2)

(48)

Additiva st¨orningar finns ofta i fysikaliska system, t.ex. som l¨ackage i en tank som niv˚an ska regleras i. Ett annat anv¨andningsomr˚ade f¨or denna beskrivning ¨ar att anv¨anda fiktiva st¨orningar f¨or att f˚a en mindre k¨anslig styrlag. M¨angden W, som beskriver de m¨ojliga st¨orningarna, kan vara formad p˚a flera s¨att. De tv˚a vanligaste skrivs som

W2 = {w : kwk2≤ 1} (5.3) W = {w : kwk≤ 1}. (5.4)

5.1.2

Polytopisk beskrivning

En av de mest vanliga beskrivningarna anv¨ander ett konvext h¨olje f¨or att beskriva inom vilka gr¨anser som systemmatriserna kan variera. Till skillnad mot additiv st¨orning s˚a finns felet i modellen och kommer inte in externt. Den polytopiska beskrivningen kan d¨arf¨or skrivas som

x(k + 1) = F x(k) + Gu(k) y(k) = Cx(k) ¡F G¢ ∈ Co{¡F(1) G(1)¢, . . . , ¡F(q) G(q)¢}. (5.5) H¨ar betyder Co{.} det konvexa h¨oljet enligt

Co{x(1), x(2), . . . , x(q)} = {x : x= q X j=1 λjx(j), q X j=1 λj = 1, λj ≥ 0}. (5.6)

Det konvexa h¨oljet kan ses som en yta som sp¨anns upp av alla linj¨arkombinationer av x(1), x(2), . . . , x(q). Allts˚a s¨ager ekvation (5.5) att F och G f˚ar variera inom det

rum som begr¨ansas av det konvexa h¨oljet. En f¨orenkling som kan g¨oras ¨ar att anta att bara os¨akerheter i G-matrisen finns. F¨or att ytterligare f¨orenkla ber¨akningarna i optimeringen d˚a polytopisk os¨akerhet antas kan detta dessutom approximeras med en modell med begr¨ansad norm. Ist¨allet f¨or att beskriva hur os¨akerheten p˚averkar G-matrisen med hj¨alp av ett konvext h¨olje s˚a kan det uttryckas enligt

G = G(∆k) = G0+ G1∆kG2, ∆k ∈ ∆

∆ = {∆ ∈ Rn∆×m∆ k∆k ≤ 1}. (5.7)

Os¨akerheten beskrivs nu av matrisen ∆k som har en begr¨ansad norm.

5.1.3

Beskrivning med en Linear Fraction

Transformation-modell

En modell av systemet som beskriver st¨orningarna med en Linear Fraction Trans-formation-modell eller LFT-modell beskrivs som

x(k + 1) = F x(k) + Gu(k) + J p(k) y(k) = Cx(k)

h(k) = Dxx(k) + Duu(k) + Dpp(k)

(49)

och ¨ar vanligt f¨orekommande f¨or att beskriva aerodynamiska os¨akerheter i en mis-sil. H¨ar kan h(k) och p(k) elimineras. D˚a erh˚alls

x(k + 1) = ³F + J¡I − ∆kDp ¢−1 ∆kDx ´ x(k)+ + ³G+ J¡I − ∆(k)Dp ¢−1 ∆kDu ´ u(k) y(k) = Cx(k) k∆kk ≤ 1. (5.9)

H¨ar f¨oruts¨atts att inversen existerar f¨or alla k∆kk ≤ 1. Os¨akerheterna i denna

modell g¨or att den ursprungliga modellen blir avsev¨art mycket mer komplicerad. Detta beror p˚a att os¨akerheterna kommer in p˚a ett olinj¨art s¨att. Detta kan illu-streras genom att anv¨anda modellen f¨or att ta fram x(k + 2). Om ekvation (5.9) anv¨ands f¨or att g¨ora detta erh˚alls

x(k + 2) = ³F + J¡I − ∆k+1Dp ¢−1 ∆k+1Dx ´ ³ F + J¡I − ∆kDp¢ −1 ∆kDx ´ x(k) + . . . . (5.10) Eftersom alla os¨akerheter kommer in olinj¨art i modellen f¨orsv˚aras framtagningen av en regulator.

5.2

Ny formulering av optimeringsproblemet

Beroende p˚a vilken form av os¨akerhetsmodell som anv¨andes erh˚alles en ny formule-ring av optimeformule-ringsproblemet. Om en modell med os¨akerheter enligt den allm¨anna formen som beskrivs i ekvation (5.1) anv¨ands kan ett nytt optimeringsproblem for-muleras enligt min U maxδ J(U , X) bivillkor u(k + j) ∈ U, j = 1, . . . , Nu ∀δ ∈ ∆ x(k + j) ∈ X, j = 1, . . . , Np ∀δ ∈ ∆ δk+j ∈ ∆, j = 1, . . . , Np, (5.11)

d¨ar X och U ¨ar m¨angden av alla till˚atna tillst˚and respektive styrsignaler. Ofta g¨ors antagandet att prestandam˚attet, J (U , X) ¨ar konvext. Detta g¨or att att ett lokalt optimum som hittas ¨aven garanterat ¨ar ett globalt optimum. Optimerings-problemen f¨or de olika os¨akerhetsmodellerna i detta kapitel blir d˚a olika specialfall av detta optimeringsproblem, se [15].

(50)
(51)

Resultat

I detta kapitel presenteras resultaten fr˚an simuleringar som har genomf¨orts i den olinj¨ara simuleringsmilj¨on. F¨or att visa vilken prestanda regulatorn har j¨amf¨ort med andra designmetoder, presenterade i [8] och [4], s˚a utf¨ors stegsvarssimule-ringar. Syftet med examensarbetet ¨ar att utreda om missilen kan stabiliseras d˚a en MPC-regulator anv¨ands. Stegsvarssimuleringarna ger inte speciellt realistiska translationer och rotationer p˚a missilen, men anv¨ands f¨or att studera hur autopi-loten kan hantera de korskopplingar som finns, framf¨orallt mellan roll- och girka-nalen. Simuleringar d˚a missilen ska tr¨affa ett r¨orligt m˚al har ocks˚a genomf¨orts, vilket ger betydligt mer realistiska translationer och rotationer.

6.1

Val av parametrar

Vid design av MPC-regulatorn s˚a m˚aste flera parametrar v¨aljas. I detta avsnitt f¨orklaras hur n˚agra av de viktigaste parametrarna har valts och motiveringen till detta.

6.1.1

Samplingstid, T

s

I avsnitt 3.2.1 diskuteras hur samplingstiden Tsska v¨aljas och en tumregel

presen-teras. Denna regel bygger p˚a att bandbredden f¨or systemet ¨ar k¨and. Bandbredden f¨or systemet ¨ar dock sv˚ar att ta fram i detta fall och en uppskattning f˚ar g¨oras baserat p˚a tidigare erfarenheter. F¨or andra typer av regulatorer men med samma missilmodell har det visat sig att bandbredden oftast varit runt 30 rad/s. Det-ta g¨or att tumregeln ger oss en samplingstid Ts ≈ 0.01 s. Vid simuleringar har

det dock visat sig att en samplingstid p˚a Ts = 0.005 s ger b¨attre prestanda hos

regulatorn, vilket ¨ar det slutgiltiga valet av samplingstid.

6.1.2

Horisonter, N

u

och N

p

Genomg˚aende har styrsignalhorisonten Nu valts till 15. Detta f¨or att

ber¨akning-en av styrsignalber¨akning-en ska g˚a s˚a fort som m¨ojligt. Om en kortare styrsignalhorisont 37

References

Related documents

In the cascading algorithm, on the other hand, both the horizontal and vertical problems are solved in parallel, and an inner controller is used to control the system while the

Thus, provided that the observer and the control error can be bounded and shown to lie in sufficiently ”small” sets, it is possible to find an admissible control sequence ¯ u and ¯

For all solution times and patients, model DV-MTDM finds solutions which are better in terms of CVaR value, that is, dose distributions with a higher dose to the coldest volume..

We developed a new method of model predictive control for nonlinear systems based on feedback linearization and local convex approximations of the control constraints.. We have

A natural solution to this problem is to provide the optimized control sequence u ob- tained from the previous optimization to the local estimator, in order to obtain an

Mer än 90% av eleverna har svarat stämmer bra eller stämmer mycket bra när det kommer till frågan om de anser att det är viktigt att skolan undervisar om anabola steroider och

Förhörsledaren säger att ”Och när vi satt och fikade berättade ju du för mig om pappa P.” Förhörsledaren ger order att ”…jag vill att vi fortsätter att prata om pappa

Based on the Bag of Frames approach, a Support Vector Regression learning algorithm was used to identify relationships between various acoustic features of the acoustics signals