• No results found

En indirekt metod för adaptiv reglering av en helikopter

N/A
N/A
Protected

Academic year: 2021

Share "En indirekt metod för adaptiv reglering av en helikopter"

Copied!
78
0
0

Loading.... (view fulltext now)

Full text

(1)

Institutionen för systemteknik

Department of Electrical Engineering

Examensarbete

En indirekt metod för adaptiv reglering av en

helikopter

Examensarbete utfört i Reglerteknik vid Tekniska högskolan i Linköping

av

Peter Jägerback

LITH-ISY--09/4221--SE

Linköping 2009

Department of Electrical Engineering Linköpings tekniska högskola

Linköpings universitet Linköpings universitet

(2)
(3)

En indirekt metod för adaptiv reglering av en

helikopter

Examensarbete utfört i Reglerteknik

vid Tekniska högskolan i Linköping

av

Peter Jägerback

LITH-ISY--09/4221--SE

Handledare: Erik Wernholt

isy, Linköpings universitet Daniel Simon

SAAB Aerosystems

Examinator: Martin Enqvist

isy, Linköpings universitet

(4)
(5)

Avdelning, Institution

Division, Department

Division of Automatic Control Department of Electrical Engineering Linköpings universitet

SE-581 83 Linköping, Sweden

Datum Date 2009-04-03 Språk Language  Svenska/Swedish  Engelska/English  ⊠ Rapporttyp Report category  Licentiatavhandling  Examensarbete  C-uppsats  D-uppsats  Övrig rapport  ⊠

URL för elektronisk version

http://www.control.isy.liu.se http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-17637 ISBNISRN LITH-ISY--09/4221--SE

Serietitel och serienummer

Title of series, numbering

ISSN

Titel

Title En indirekt metod för adaptiv reglering av en helikopterAn indirect approach to adaptive control of a helicopter

Författare

Author Peter Jägerback

Sammanfattning

Abstract

When a helicopter is flying, the dynamics vary depending on, for example, speed and position. Hence, a time-invariant linear model cannot describe its properties under all flight conditions. It is therefore desirable to update the linear helicopter model continuously during the flight. In this thesis, two different recursive esti-mation methods are presented, LMS (Least Mean Square) and adaptation with a Kalman filter.

The main purpose of the system estimation is to get a model which can be used for feedback control. In this report, the estimated model will be used to create a LQ controller with the task of keeping the output signal as close to the reference signal as possible.

Simulations in this report show that adaptive feedback control can be used to control a helicopter’s angular velocities and that the possibility to use an adaptive control algorithm in a real future helicopter is good.

Nyckelord

Keywords Adaptive, LQ controller, Recursive, System identification, Kalman filter, LMS, Helicopter

(6)
(7)

Abstract

When a helicopter is flying, the dynamics vary depending on, for example, speed and position. Hence, a time-invariant linear model cannot describe its properties under all flight conditions. It is therefore desirable to update the linear helicopter model continuously during the flight. In this thesis, two different recursive esti-mation methods are presented, LMS (Least Mean Square) and adaptation with a Kalman filter.

The main purpose of the system estimation is to get a model which can be used for feedback control. In this report, the estimated model will be used to create a LQ controller with the task of keeping the output signal as close to the reference signal as possible.

Simulations in this report show that adaptive feedback control can be used to control a helicopter’s angular velocities and that the possibility to use an adaptive control algorithm in a real future helicopter is good.

Sammanfattning

Eftersom en helikopters dynamik ändras beroende på till exempel dess hastighet och position kan inte en tidsinvariant linjär modell beskriva dess egenskaper vid alla flygfall. Därför är det önskvärt att under flygning kontinuerligt uppdatera den linjära helikoptermodellen. I denna rapport tas två rekursiva skattningsmetoder upp, LMS (Least Mean Square) och skattning med kalmanfilter.

Den rekursivt skattade helikoptermodellen används för att skapa en LQ-regulat-or som kontinuerligt uppdateras så att helikoptern kan följa givna referenssignaler under en hel flygning.

Simuleringar i rapporten visar att det går att skapa en adaptiv regulator som reglerar helikopterns vinkelhastigheter och att förutsättningarna för att i framtiden kunna använda en adaptiv regulator i en verklig helikopter är goda.

(8)
(9)

Tack

Jag vill tacka all trevlig personal på Saab Aerosystems, område TDA, för den tid jag fått spendera i deras sällskap. Ett särskilt tack vill jag rikta till Daniel Simon (handledare på Saab), Erik Wernholt (handledare på Linköpings universitet) samt Martin Enqvist (examinator på Linköpings universitet) för den tid och engagemang de lagt på mitt arbete. Jag vill även tacka Sam Nicander (sektionschef på Saab Aerosystems) som gjort detta examensarbete möjligt.

(10)
(11)

Innehåll

1 Introduktion 3

1.1 Bakgrund . . . 3

1.2 Syfte . . . 3

1.3 Problemställning . . . 4

1.4 Omfattning och avgränsningar . . . 4

1.5 Rapportens disposition . . . 4

I Bakgrundsteori

5

2 Helikopterteori 7 2.1 Helikopterdynamik . . . 7 2.2 Styrning av en helikopter . . . 10 2.2.1 Systemets insignaler . . . 10 2.3 Korskopplingar . . . 12 3 Systemidentifiering 13 3.1 Grundläggande teori . . . 13 3.2 Rekursiv parameterskattning . . . 14 3.2.1 Adaptering med LMS . . . 15

3.2.2 Adaptering med kalmanfilter . . . 16

3.2.3 Inställning av designparametrar . . . 17

4 Reglerteknik 19 4.1 Poler för flervariabelt system . . . 19

4.2 LQ-reglering . . . 20

4.2.1 Följning av referenssignal . . . 21

4.3 Referensföljning med observatör . . . 22

4.4 Rekursiv LQ-reglering . . . 24

II Systemidentifiering och reglering av helikopter

25

5 Systemidentifiering av helikopter 27 5.1 Översikt . . . 27

(12)

5.2 Rekursiv skattning av systemparametrar . . . 28

5.3 Systemet på tillståndsform . . . 30

6 Validering av den rekursiva helikoptermodellen 33 6.1 Valideringsmetodik . . . 33

6.2 Adaptering med NLMS . . . 34

6.3 Adaptering med kalmanfilter . . . 35

7 Adaptiv LQ-reglering av helikopter 39 7.1 Utökad tillståndsform . . . 39

7.2 Reglerdesign . . . 41

7.3 Begränsningar . . . 44

8 Validering av reglersystemet 47 8.1 Simulering med utgångspunkt från hovringsmodell . . . 47

8.1.1 Adaptering med kalmanfilter . . . 47

8.1.2 Adaptering med NLMS . . . 49

8.1.3 System- och mätbrusets inverkan på reglersystemet . . . 50

8.2 Simulering med utgångspunkt från linjäriseringsskript . . . 50

8.2.1 Simulering med konstant återkopplingsmatris . . . 51

8.2.2 Systemets singulära värden . . . 53

9 Slutsatser 55 Litteraturförteckning 57 A Figurer 59 A.1 Simuleringar, adaptiv skattning . . . 59

A.1.1 Parametervariation vid simulering av modell . . . 60

A.2 Simuleringar av reglersystemet, där det verkliga systemet beskrivs med utgångspunkt från en hovringsmodell . . . 61

(13)

Notation

Notation inom helikopterdynamik

Symbol Förklaring

¯

x x-axel i helikopterns kroppsfixa koordinatsystem

x x-axel i det jordfixa koordinatsystemet

¯

y y-axel i helikopterns kroppsfixa koordinatsystem

y y-axel i det jordfixa koordinatsystemet

¯

z z-axel i helikopterns kroppsfixa koordinatsystem

z z-axel i det jordfixa koordinatsystemet

p Rollvinkelhastighet

q Tippvinkelhastighet

r Girvinkelhastighet

ϑ Vektor innehållande Eulervinklarna

Φ Rollvinkel

Θ Tippvinkel

Ψ Girvinkel

Notation inom rekursiv modellskattning

Symbol Förklaring

s(t) Tidskontinuerlig signal s

s[t] Tidsdiskret signal s

ϕ[t] Vid tiden t känd mätvektor

θ Vektor med parametrar

ˆ

θ Vektor med skattade parametrar

θ[t] Vektor med parametrar vid tiden t

ˆ

θ[t] Vektor med skattade parametrar vid tiden t

u[t] Insignalsvektor vid tiden t

y[t] Utsignalsvektor vid tiden t

ˆ

y[t] Skattad utsignalsvektor vid tiden t

q Förskjutningsoperatorn

e[t] Störsignal som påverkar systemet vid tiden t

w[t] Brus som beskriver parameterförändringen vid tiden t

forts. på nästa sida

(14)

Symbol Förklaring

R Mätbrusets kovariansmatris

R[t] Mätbrusets variabla kovariansmatris vid tiden t

Q Systembrusets kovariansmatris

Q[t] Systembrusets variabla kovariansmatris vid tiden t

LMS Least Mean Square

NLMS Normalized Least Mean Square

E{y[t]} Väntevärdet av y[t]

Notation inom reglerdesign

Symbol Förklaring

s(t) Kontinuerlig signal s

s[t] Tidsdiskret signal s

u[t] Insignalsvektor vid tiden t

y[t] Utsignalsvektor vid tiden t

x[t] Tillståndsvektor vid tiden t

˙x(t) Derivata av tidskontinuerlig tillståndsvektor vid tiden t

r[t] Referenssignalsvektor vid tiden t

v[t] Mätbrus vid tiden t

w[t] Processbrus vid tiden t

q Förskjutningsoperatorn

L Återkopplingsmatris

(15)

Kapitel 1

Introduktion

I detta första kapitel presenteras bakgrunden till arbetet. Även arbetets syfte och avgränsningar beskrivs.

I rapporten används två uttryck flitigt: rekursiv modell och adaptiv regulator. Med rekursiv modell menas matematiska samband där utvalda parametrar anpas-sar sig till ändrade indata. En adaptiv regulator är en regulator som anpasanpas-sar sig till ändrade indata.

1.1 Bakgrund

Eftersom dynamiken hos en helikopter ändras beroende på bland annat dess has-tighet och orientering är det önskvärt att under flygning kontinuerligt skatta en linjär helikoptermodell. Att inte en olinjär modell tas fram beror på att en linjär modell är att föredra vid reglering. Den linjära helikoptermodellen skattas konti-nuerligt för att ge en god överensstämmelse med verkligheten oavsett flygfall.

Idag används rekursiva modeller inom exempelvis bilindustrin för att överva-ka diverse komponenter och detektera när dessa går sönder. Rekursiva metoder används även för signalbehandling i CD-spelare, GPS-navigering och för att föl-ja fordon i trafiken [5], [12]. Inom flygindustrin har det tidigare gjorts rekursiva fladdermodeller för vingar eller bladformade rotorblad/propellrar, med målet att minimera fladdret [1], [9], [10].

Saab Aerosystems i Linköping vill undersöka om det är möjligt att använda en rekursiv modell i en helikopter och om det går att uppnå god reglering av en helikopter då en sådan modell används i en adaptiv regulator.

1.2 Syfte

Syftet med detta examensarbete är att ta fram en rekursiv helikoptermodell samt en regulator som använder sig av den kontinuerligt uppdaterade helikoptermodel-len för att reglera systemet under flygning.

(16)

1.3 Problemställning

De frågor som detta arbete ska besvara är:

1. Hur bör den rekursiva helikoptermodellen skattas för att få en tillräckligt bra modell?

2. Räcker det med en konfektionsmodell eller måste mer komplexa samband tas fram, där utvalda parametrar kontinuerligt uppdateras?

3. Hur ska regulatorn konstrueras för att uppnå god reglering?

4. Är LQ-design en lämplig lösning eller måste andra reglerstrategier användas?

1.4 Omfattning och avgränsningar

Denna rapport syftar inte till att vara en komplett framställning av hur en rekursiv helikoptermodell ska skattas eller hur en adaptiv regulator tas fram. Rapporten syfte är snarare att ge en möjlig väg för fortsatt arbete. De resultat som öns-kas är en rekursiv helikoptermodell samt en LQ-regulator som använder sig av den skattade modellen för att reglera systemet. Jämförelser mellan de olika skatt-ningsmetoderna LMS (Least Mean Square) och skattning med kalmanfilter ska göras där för- och nackdelar med de olika metoderna vid systemskattning och re-glering av en helikopter framgår. Den helikoptermodell som rekursivt ska skattas och regleras begränsas till att beskriva dynamiken från fyra servolägen som styr helikoptern till helikopterns tre vinkelhastigheter i tipp-, roll- och girled. Denna modell har ansetts tillräcklig för en första undersökning av möjligheten till adaptiv reglering av en helikopter.

1.5 Rapportens disposition

I kapitel 2 presenteras grundläggande helikopterteori som används i senare kapitel. Likaså innehåller kapitel 3 och 4 bakgrundsteori inom områdena systemidentifi-ering respektive reglsystemidentifi-ering. Innehållet i de senare kapitlen bygger på denna teori. Kapitel 5 ger en översikt över reglersystemet och innehåller även en beskrivning av framtagandet av den rekursivt skattade helikoptermodellen. Kapitel 6 beskriver valideringen av den rekursiva modellen. I kapitlet 7 finns redogörelser för hur den adaptiva regulatorn designats. Kapitel 8 beskriver valideringen av reglersystemet. I kapitel 9 finns de slutsatser som arbetet har lett fram till.

(17)

Del I

Bakgrundsteori

(18)
(19)

Kapitel 2

Helikopterteori

Detta kapitel ger en introduktion till vanliga begrepp och beteckningar som an-vänds inom helikopterindustrin. Kapitlet ger även en bild av hur en helikopter styrs och hur en helikopter svarar på olika styrkommandon.

2.1 Helikopterdynamik

Inom helikopterindustrin finns det vedertagna beteckningar på en helikopters po-sition och orientering. Helikopterns placering kan anges i två koordinatsystem, ett jordfixt och ett helikopterfixt. Det jordfixa systemet betecknas (x, y, z)T, där x

pekar åt norr, y åt öster och z in mot jordens centrum. Det helikopterfixa koordi-natsystemet betecknas (¯x, ¯y, ¯z)T och är liksom det jordfixa systemet

högeroriente-rat med origo i helikopterns tyngdpunkt. ¯x pekar i helikopternosens riktning och ¯

z pekar ut från helikopterns botten. För att relatera de olika koordinatsystemen till varandra används Eulervinklarna

ϑ = (Φ, Θ, Ψ)T

där Φ är rollvinkel, Θ tippvinkel och Ψ girvinkel, se figur 2.1. Helikopterns rörelse beskrivs av hastighetsvektorn1

v= (u, v, w)T b och vinkelhastighetsvektorn w= (p, q, r)T b Newton-Euler ekvationerna är mdvtot dt = Fi (2.1) Iidwtot dt = Mi (2.2)

1Vektorn uttrycks i det helikopterfixa koordinatsystemet, därav index b för body.

(20)

Hastighetsvektorn vtotoch vinkelhastighetsvektorn wtotär de totala hastigheterna

i det jordfixa koordinatsystemet. Kraftvektorn Fi, momentvektorn Mi och

heli-kopterns tröghetsmoment Ii är i ovanstående ekvationer uttryckt i det jordfixa

koordinatsystemet. I fortsättningen uttrycks samtliga vektorer i det kroppsfixa

koordinatsystemet där F = (X, Y, Z)T

b är kraftvektorn som verkar i helikopterns

masscentrum och M = (L, M, N)T

b är momentvektorn. Matrisen I är helikopterns

tröghetsmoment och m är helikopterns massa. Sambanden (2.1) och (2.2) kan med kinematik skrivas om till det helikopterfixa koordinatsystemet och blir då enligt [8, sid. 55, 56]

m ˙v + m(w × v) = F (2.3)

I ˙w+ (w × Iw) = M (2.4)

Ekvation (2.3) kan delas upp i tre differentialekvationer längs de olika axlarna.

˙u = (−wq + vr) +X m (2.5) ˙v = (−ur + wp) +Ym (2.6) ˙ w = (−vp + uq) + Z m (2.7)

Även gravitationen ingår i den yttre påverkande kraften F. För att särskilja denna från andra yttre krafter kan ekvationerna (2.8), (2.9) och (2.10) ställas upp enligt

˙u = (−wq + vr) +Xg

m − g sin(Θ) (2.8)

˙v = (−ur + wp) +Ymg + g cos(Θ) sin(Φ) (2.9)

˙

w = (−vp + uq) +Zmg + g cos(Θ) cos(Φ) (2.10)

där Xg, Yg och Zg är kraftkomponenterna för den kraft, frånsett tyngdkraften,

som verkar i helikopterns masscentrum. Även (2.4) kan delas upp i tre differentia-lekvationer och under antagandet att I är diagonal [8, sid. 55, 56] blir ekvationerna

˙p = qrIyy− Izz Ixx + L Ixx (2.11) ˙q = prIzz− Ixx Iyy + M Iyy (2.12) ˙r = pqIxx− Iyy Izz + N Izz (2.13)

(21)

2.1 Helikopterdynamik 9

Figur 2.1.Helikopternotation. Övre bilden är ritad från sidan, mellersta uppifrån och nedre är ritad bakifrån.

Även Eulervinklarna kan enligt [11] beskrivas med tre differentialekvationer ˙

Φ = p + q sin(Φ) tan(Θ) + r cos(Φ) tan(Θ) (2.14)

˙ Θ = q cos(Φ) − r sin(Φ) (2.15) ˙ Ψ = qsin(Φ) cos(Θ)+ r cos(Φ) cos(Θ) (2.16)

Ekvationerna (2.8) till och med (2.13) beskriver helikopterns rörelse när ex-terna krafter och moment, F och M, verkar på helikoptern. Dessa krafter och moment kommer framförallt från rotorbladen, som när de vinklas ger olika kraft-och momentvektorer. Det är dock svårt att bestämma F kraft-och M eftersom dessa är olinjära funktioner som beror av flera variabler såsom bladvinkel, helikopterns hastighet och rotorvarvtal.

De framtagna sambanden i detta avsnitt beskriver en mycket enkel olinjär he-likoptermodell. När en helikopter ska regleras är det dock önskvärt att använda linjära modeller. Dessa kan tas fram genom att exempelvis linjärisera en olin-jär helikoptermodell eller genom att skatta linolin-jära modeller utifrån en given linolin-jär konfektionsmodell. I senare kapitel kommer linjäriseringar att skattas rekursivt ut-ifrån en linjär konfektionsmodell. Att inte en olinjär modell tas fram beror på att

(22)

Figur 2.2.Swashplattan och dess länkning.

den olinjära helikoptermodellen snabbt blir mycket komplex när exempelvis flad-dermodeller för rotorbladen med mera ska ingå i den olinjära modellen. Eftersom det egentliga målet är reglerdesign med linjära modeller är det en onödig omväg att först ta fram en olinjär modell. Detta kapitel ger dock en bild av helikopterns grundläggande dynamik och en förståelse för helikopterns beteende.

2.2 Styrning av en helikopter

En helikopter styrs via tre huvudkommandon, lyftkraft, färdriktning och rotation i girled. Lyftkraften kan bestämmas på två sätt, antingen ökas rotorvarvtalet medan vinkeln på rotorbladen hålls konstant eller så hålls rotorvarvtalet konstant medan rotorbladen vinklas. Färdriktningen bestämmer piloten genom att rikta rotordis-ken åt det håll som denne önskar färdas. Helikopterns rotation i girled bestämmer piloten genom att justera kraften som genereras från stjärtrotorn.

I många helikoptrar justeras rotordiskens riktning och rotorbladens vinkling av en swashplatta som är länkad till rotorbladen. Swashplattan kan genom påverkan av servon, vinklas, höjas och sänkas. Höjden på swashplattan styr rotorbladens vinkling och dess lutning styr rotordiskens riktning. Swashplattans utseende kan ses i figur 2.2.

2.2.1 Systemets insignaler

De insignaler som används för att styra systemet (helikoptern) δ = (δpitch, δroll, δcol, δtail)

genereras av fyra servon. Tre av dessa styr swashplattan och ett (δtail) styr

stjärtro-torn. Låt

(23)

2.2 Styrning av en helikopter 11

vara en vektor som innehåller de fyra servovinklarna, var och en med arbetsområde mellan −45o och 45o. Systemets insignaler kan då beräknas enligt

δ = Rtuservo där Rt =     −2/3 1/3 1/3 0 0 0.5774 −0.5774 0 1/3 1/3 1/3 0 0 0 0 1    

I de simuleringar som redovisas i senare kapitel har ovanstående insignaler (δ) använts för att styra system med andra insignalsskalningar. Två exempel på skalningar är: δt= Rt 4 π π 180uservo och δt,sw = Rt,sw π 180uservo där Rt,sw=     l1/(3l2) −l1/(3l2) −l1/(3l2) 0 0 −l1/( √ 3l2) l1/( √ 3l2) 0 1/19.5 1/19.5 1/19.5 0 0 0 0 1/2.2    

Parametrarna l1 och l2är satta till 0.025 och 0.056.

Då insignalerna till ett system skalas om måste tillståndsbeskrivningen ändras. Detta illustreras i exempel 2.1.

Exempel 2.1: Omvandling mellan system med olika insignaler

Låt ett system beskrivas av

x[t + 1] = Ax[t] + Bδt,sw[t]

Detta system ska göras om så att insignal δ istället används. Det nya systemet blir då

x[t + 1] = Ax[t] + BRt,swRt−1

π 180δ[t] Om systemet istället beskrivs av

x[t + 1] = Ax[t] + Bδt[t]

och ska göras om så att insignal δ istället används blir systemet x[t + 1] = Ax[t] + B4

π π 180δ[t]

(24)

2.3 Korskopplingar

I praktiken är det ofta så att en insignal påverkar fler än en utsignal. Antag att insignalerna utgörs av δpitch, δroll, δcol, δtail och att rotorvarvtalet är konstant.

Styrsignalerna δpitch och δroll styr rotordiskens vinkling, det vill säga riktningen

av kraftvektorn ˜Fsom är ortogonal mot rotordisken. Styrkommandot δcolstyr ro-torbladens vinkling och kommer således bestämma lyftkraften, det vill säga kraft-vektorns längd. Eftersom rotorbladen kan vinklas både uppåt och nedåt kommer δcol även att bestämma om kraftvektorn ˜Fär positiv eller negativ, det vill säga

riktad uppåt eller nedåt från rotordisken. Kommandot δtail påverkar vinkeln på

stjärtrotorn, vilket i sin tur påverkar girvinkelhastigheten.

Om rotordisken vinklas åt något håll kommer kraftvektorn inte att peka rakt upp från helikoptern utan ge helikoptern fart i den riktning rotordisken lutar åt. Eftersom en del av lyftkraften läggs i en annan riktning måste mer lyftkraft ge-nereras för att hålla helikoptern på samma höjd som tidigare. Detta innebär att piloten måste vinkla rotorbladen mer (öka δcol), vilket i sin tur leder till ökat

luftmotstånd på rotorbladen. För att hålla ett konstant rotorvarvtal måste piloten därför gasa.2Detta innebär att det moment som verkar på helikoptern ökar, vilket

leder till rotation i girled. För att motverka detta måste piloten öka δtail så att

stjärtrotorn genererar ett moment som motverkar momentet från rotorn.

Beroende på bland annat hastighet och position kommer dessa korskopplingar att se olika ut i olika flygfall. Det är svårt att säga hur mycket de påverkar varandra i olika situationer, men korskopplingarna finns där och måste beaktas.

2I helikoptrar med collective pitch (lyftkraften bestäms av rotorbladens vinkel) finns ofta en

(25)

Kapitel 3

Systemidentifiering

Systemidentifiering går ut på att skatta modeller som beskriver ett systems dy-namik. Att skatta en modells parametrar är ett välkänt problem och det finns ett flertal skattingsmetoder att tillgå. Detta kapitel tar upp en av dessa metoder: Skattning av en linjär konfektionsmodell med prediktionsfelsmetoden.

3.1 Grundläggande teori

Låt utsignalen beskrivas av sambandet

y[t] = G[q, θ]u[t] + H[q, θ]e[t] (3.1)

Den bästa prediktionen av utsignalen y[t] tas då enligt [3] fram på följande sätt:

Skriv om (3.1) till

H−1[q, θ]y[t] = H−1[q, θ]G[q, θ]u[t] + e[t]

eller

y[t] = (1 − H−1[q, θ])y[t] + H−1[q, θ]G[q, θ]u[t] + e[t] (3.2)

Bästa prediktionen av y[t] är då ˆ

y[t] = (1 − H−1[q, θ])y[t] + H−1[q, θ]G[q, θ]u[t] (3.3)

För att skatta systemparametrarna jämförs mätsignalen y[t] med den predik-terade utsignalen ˆy[t], där målet är att få skillnaden

ε[t] = y[t] − ˆy[t]

så liten som möjligt. Detta kan göras genom att exempelvis minimerar predik-tionsfelet

V [θ] =Xε2

[t] 13

(26)

När modeller ska byggas finns olika standardmodeller att tillgå. En vanlig konfektionsmodell är ARX-modellen y[t] = B[q] A[q]u[t] + 1 A[q]e[t] (3.4)

I detta uttryck är e[t] vitt brus och

A[q] = 1 + a1q−1+ ... + an

aq−n a

B[q] = b1q−1+ ... + bnbq

−nb

ARX-modellen är lämplig att använda då systembrus kommer in tidigt i processen och på så sätt går igenom samma dynamik som insignalerna [7]. Om inte ARX-modellen är tillräcklig för att beskriva brusets inverkan på systemet finns andra konfektionsmodeller såsom ARMAX och Box-Jenkins (BJ) att tillgå [7].

När systemet beskrivs med en ARX-struktur är G[q, θ] =B[q]

A[q] och

H[q, θ] = 1

A[q] Den bästa prediktionen av utsignalen blir då

ˆ

y[t] = B[q]u[t] + (1 − A[q])y[t] (3.5)

vilket kan skrivas som

ˆ

y[t] = ϕT[t]θ (3.6)

där

ϕ[t] = (−y[t − 1], ..., −y[t − na], u[t − 1], ..., u[t − nb])T

och

θ = (a1, ..., ana, b1, ..., bnb)

T

3.2 Rekursiv parameterskattning

Rekursiv identifiering handlar om att skatta samband i realtid, där mätningar av in- och utsignaler används för att rekursivt uppdatera systemparametrarna. Detta är intressant när sambanden ändras i tiden och det inte i förväg är möjligt att bestämma parametrarnas värden. För att skatta dessa samband ansätts en modell som beskriver beroendet mellan in- och utsignaler. Utvalda parametrar skattas så att passningen mellan den uppmätta utsignalen och modellens utsignal blir så bra som möjligt. Ett vanligt utseende på ett system för rekursiv identifiering visas i figur 3.1.

(27)

3.2 Rekursiv parameterskattning 15

Figur 3.1. Ett system för rekursiv identifiering där skillnaden y− ˆy bestämmer hur parametervektorn θ ska ändras. När y− ˆy= 0 har parametrarna konvergerat mot värden som beskriver systemets dynamik.

Det finns olika metoder för att rekursivt skatta parametrar i en modell. I detta kapitel kommer två metoder att tas upp, skattning med LMS (Least Mean Square) respektive kalmanfilter. I båda fallen ansätts modellen

y[t] = ϕT[t]θ[t] + e[t] (3.7)

där y[t] är den observerade utsignalen vid tiden t och ϕT[t] är en känd mätvektor

vid tiden t. Vektorn θ[t] består av de parametrar som beskriver sambandet mellan y[t] och ϕT[t]. Det är parametrarna i vektorn θ[t] som rekursivt skattas, det vill

säga parametrarna uppdateras i varje tidssteg. För att skatta θ[t] jämförs uppmätt y[t] med prediktionen

ˆ

y[t] = ϕT[t]ˆθ[t − 1]

Målet med skattningen av θ[t] är att få en så bra överensstämmelse mellan mät-signal y[t] och den predikterade utmät-signalen ˆy[t] som möjligt.

3.2.1 Adaptering med LMS

Om mätningarna beskrivs av (3.7) är det enligt [5, kap. 9] lämpligt att välja θ så att modellfelet V (θ) = 1 2E{(y(t) − ϕ T (t)θ)2 }

minimeras. Derivera modellfelet V (θ) med avseende på θ och den negativa gradi-enten blir enligt [5, kap. 9]

−d

dθV (θ) = E{ϕ(t)(y(t) − ϕ

T

(t)θ)} (3.8)

En metod för att uppdatera θ är att använda mätsignalerna istället för väntevärdet och justera θ i den negativa gradientriktningen (3.8). Metoden kallas för LMS (Least Mean Square) och uppdateringen av θ[t] sker enligt:

ˆ

θ[t] = ˆθ[t − 1] + µϕ[t](y[t] − ϕT[t]ˆ

(28)

[5, kap. 9]. Konstanten µ inverkar på uppdateringens steglängd och ligger i inter-vallet [0, 1]. LMS-metoden kan modifieras lite till en normaliserad variant kallad NLMS. Resultatet kan sammanfattas enligt algoritm 1, som också hittas i [5, kap 9].

Algoritm 1Adaptering med LMS och NLMS

ˆ θ[t] = ˆθ[t − 1] + K[t](y[t] − ϕT[t]ˆθ[t − 1]) K[t] = ( µϕ[t](α + ϕ[t]Tϕ[t])−1 , om NLMS µϕ[t] , om LMS

Konstanterna α och µ är designparametrar där den konstanta matrisen α är

en diagonalmatris med samma dimension som ϕT[t]ϕ[t], där diagonalelementen är

små positiva tal för att undvika division med noll.

3.2.2 Adaptering med kalmanfilter

Kalmanfiltret är ett välkänt filter som används inom många olika områden då parametrar eller tillstånd ska skattas [5].

När θ[t] i (3.7) skattas rekursivt med hjälp av kalmanfiltret ansätts θ[t + 1] = θ[t] + w[t]

där w[t] är vitt brus som beskriver θ[t]:s slumpvandring [5, kap. 9]. Detta kan tillsammans med (3.7) skrivas som

θ[t + 1] = θ[t] + w[t] y[t] = ϕT[t]θ[t] + e[t]

Om brusen w[t] och e[t] är normalfördelade med medelvärde noll och kovariansma-triserna Q och R kommer kalmanfiltret ge den bästa skattningen av θ[t]: den som minimerar felvariansen och den som är det betingade väntevärdet. Både R och Q är designparametrar som kan variera i tiden och om så är fallet ger kalmanfiltret den i y[t] linjärt bästa skattningen av θ[t] [5, kap. 9]. Parametrarna kan således uppdateras enligt algoritm 2, som också hittas i [5, kap 9].

Algoritm 2Adaptering med kalmanfilter

ˆ θ[t] = ˆθ[t − 1] + K[t](y[t] − ϕT[t]ˆθ[t − 1]) K[t] = P [t − 1]ϕ[t](R[t] + ϕ[t]T P [t − 1]ϕ[t])−1 P [t] = P [t − 1] − P [t − 1]ϕ[t](R[t] + ϕT [t]P [t − 1]ϕ[t])−1ϕT[t]P [t − 1] + Q[t]

Startvärdena ˆθ[0] och P [0] måste ansättas. Kovariansmatrisen P [0] ska då speg-la osäkerheten hos ˆθ[0]. Om ingen god uppskattning av startvärdet kan göras är det vanligt att sätta ˆθ[0] = 0 och P [0] = κI, där κ är en skalär.

(29)

3.2 Rekursiv parameterskattning 17

3.2.3 Inställning av designparametrar

Hur parametrarna µ, α, R och Q ska väljas beror på vilka egenskaper som ska uppnås. Låt α och R vara konstanta. Ett stort µ och Q ger då snabb adaptionsför-måga, men då blir också ˆθ[t] känslig för mätfel i y[t]. Ett litet µ och Q ger då den motsatta egenskapen, det vill säga ˆθ[t] blir mindre bruskänsligt men adaptions-förmågan blir långsammare. Det gäller därför att välja designparametrarna med eftertanke så att de skattade parametrarna får önskade egenskaper.

(30)
(31)

Kapitel 4

Reglerteknik

Detta kapitel innehåller teori inom området reglerteknik. Kapitlet tar bland annat upp hur polerna för ett flervariabelt system beräknas, LQ-reglering och referens-följning.

4.1 Poler för flervariabelt system

För ett envariabelt system är det relativt lätt att bestämma systemets poler ef-tersom de utgörs av nollställena till nämnarpolynomet i överföringsfunktionen. För ett flervariabelt system blir det dock mer komplicerat. Polerna utgörs då av noll-ställena till den minsta gemensamma nämnaren till alla underdeterminanter av överföringsmatrisen. Detta innebär att polerna kan tas fram ur minsta gemensam-ma nämnaren av gemensam-matriselementen. För att få polernas multiplicitet krävs dock att hela beräkningen med underdeterminanter utförs [2, kap. 3].

Exempel 4.1: Poler för ett flervariabelt system

Låt systemet utgöras av (5.2), (5.3) och (5.9). Överföringsmatrisen blir då: G[q] =    b1q q2+a1q+a2 b2q q2+a1q+a2 b3q q2+a1q+a2 b4q q2+a1q+a2 b5q q2+a3q+a4 b6q q2+a3q+a4 b7q q2+a3q+a4 b8q q2+a3q+a4 b9q q2+a5q+a6 b10q q2+a5q+a6 b11q+b12 q2+a5q+a6 b13q+b14 q2+a5q+a6    (4.1)

Minsta gemensamma nämnare för samtliga underdeterminanter blir p[q] = (q2

+ a1q+ a2)(q2+ a3q+ a4)(q2+ a5q+ a6)

Polerna tas fram genom att lösa ekvationen (q2 + a1q+ a2)(q2+ a3q+ a4)(q2+ a5q+ a6) = 0 Polerna ligger i: −a21 ± r a2 1 4 − a2 19

(32)

−a23 ± r a2 3 4 − a4 −a25 ± r a2 5 4 − a6

Om systemet är representerat på tillståndsform

x[t + 1] = Ax[t] + Bu[t]

y[t] = Cx[t]

är systemets poler egenvärdena till systemmatrisen A i en minimal tillståndsreali-sering [2, kap. 3].

4.2 LQ-reglering

Antag att systemet beskrivs av

x[t + 1] = Ax[t] + Bu[t]

y[t] = Cx[t] (4.2)

LQ-reglering handlar om att välja ett optimalt L så att tillståndsåterkopplingen

u[t] = −Lx[t] + r[t] (4.3)

uppnår önskade systemegenskaper. Ett blockschema över tillståndsåterkopplingen visas i figur 4.1.

Figur 4.1.Linjär tillståndsåterkoppling.

Valet av L har direkt inverkan på det slutna systemets poler och påverkar således det slutna systemets egenskaper. Om systemet beskrivs av (4.2) och u[t] ges av en tillståndsåterkoppling enligt (4.3) kommer det slutna systemet att utgöras av

y[t] = C(qI − (A − BL))−1Br[t]

För att välja ett optimalt L som minimerar tillstånds- och insignalsenergin, mini-meras enligt [2] och [4] kriteriet

(33)

4.2 LQ-reglering 21

Figur 4.2.Linjär tillståndsåterkoppling med referenssignal.

J =XxT[t]Q1x[t] + uT[t]Q2u[t] (4.4)

Den optimala linjära regulatorn (4.3) bestäms då enligt [2, kap. 9] av

L = (BTSB + Q2)−1BTSA (4.5)

där S är den entydiga, positivt semidefinita, symmetriska lösningen till matri-sekvationen

AT

SA − S − ATSB(BTSB + Q

2)−1BTSA + Q1= 0 (4.6)

Matriserna Q1och Q2anger hur stor vikt de olika tillstånden och insignalerna

har. Vanligtvis är dessa matriser diagonalmatriser. Ett högt värde på ett element i Q2innebär att denna insignal kommer att viktas högt och således hållas låg. De

insignaler som har lägre vikt kommer då också ofta att bli högre. Likaså kommer de tillstånd med ett högt värde i Q1vara av högre prioritet att reglera. Förhållandet

mellan Q1och Q2avgör om det är av högre prioritet att insignalerna hålls låga eller

om det är viktigare att föra tillstånden till stationära nivåer så fort som möjligt. För att en återkoppling ska kunna användas måste systemet vara stabiliserbart, detta innebär att det måste finnas ett L som gör det återkopplade systemet A−BL stabilt. Se [2] för mer ingående beskrivningar av de villkor som ska vara uppfyllda.

4.2.1 Följning av referenssignal

I det fall utsignalerna önskas följa givna referenssignaler är ett sätt, enligt [4], att utöka tillståndsmodellen med

˙xi= r(t) − y(t)

En tidsdiskret variant av de integrerande tillstånden är xi[t + 1] = xi[t] + Ts(r[t] − y[t])

där Ts är samplingstiden. (Det finns även andra sätt att skapa referensföljning,

(34)

En utvidgad tidsdiskret tillståndsbeskrivning med de integrerande tillstånden blir då

x[t + 1] = Ax[t] + Bu[t] + T r[t]

y[t] = Cx[t] (4.7)

där A, B och C har utvidgats och T lagts till eftersom de nya tillstånden xi

finns med i tillståndsbeskrivningen. Utsignalerna y[t] är som tidigare de uppmätta utsignalerna, vilket innebär att C enbart fyllts ut med nollor. Beräkning av åter-kopplingsmatrisen L sker enligt avsnitt 4.2, där de utvidgade matriserna A och B

används vid beräkningen. Viktmatrisen Q1 utökas för att även vikta de tillagda

integrerande tillstånden. Med tillståndsåterkoppling u[t] = −Lx[t], se figur 4.2, blir det slutna systemet

y[t] = C(qI − (A − BL))−1T r[t]

där A, B och C är de utökade matriserna. Att u[t] inte valts enligt (4.3) beror på att en sådan återkoppling förutsätter att det är samma antal in- och utsignaler.

4.3 Referensföljning med observatör

En observatör kan användas för att skatta tillstånd som inte är mätbara och göra en återkoppling möjlig även om x[t] inte direkt kan återkopplas. Ovanstående teori om hur en LQ-regulator tas fram gäller även i det fall x[t] skattas och kan separeras från problemet att välja en optimal observatör [2].

Låt systemet beskrivas av

x[t + 1] = Ax[t] + Bu[t] + T r[t] + w[t]

y[t] = Cx[t] + v[t] (4.8)

där w[t] och v[t] är processbrus respektive mätbrus. En observatör beskrivs då enligt [2] och [4] av

ˆ

x[t + 1] = Aˆx[t] + Bu[t] + T r[t] + K(y[t] − C ˆx[t]) (4.9)

Det är matrisen K i (4.9) som ska bestämmas för att få en så snabb insvängning mot de verkliga tillstånden som möjligt.

Med återkopplingen

u[t] = −Lˆx[t] (se figur 4.3) blir

ˆ

x[t] = (qI − (A − KC − BL))−1(Ky[t] + T r[t])

Eftersom y[t] = Cx[t] + v[t] kommer ett stort värde på K inte bara ge en snabba-re insvängning mot de verkliga tillstånden x[t] utan även en stor förstärkning av mätbruset. Det gäller därför att göra en avvägning mellan hur snabb tillståndsre-konstruktionen ska vara och hur känslig skattningen ska vara för mätbrus.

(35)

4.3 Referensföljning med observatör 23

Figur 4.3.Linjär tillståndsåterkoppling med referenssignal och observatör.

Om systemet beskrivs av (4.8) väljs den optimala observatören enligt algo-ritm 3, som också hittas i [5].

Algoritm 3Tidsvariabelt kalmanfilter

ˆ

x[t + 1] = A[t]ˆx[t] + B[t]u[t] + K[t](y[t] − C[t]ˆx[t]) K[t] = A[t]P [t]CT[t](R[t] + C[t]P [t]CT[t])−1

P [t + 1] = A[t]P [t]AT

[t] −A[t]P [t]CT[t](R[t] + C[t]P [t]CT[t])−1C[t]P [t]AT[t] + Q[t]

Matriserna R och Q är kovariansmatriserna för mätbruset v[t] respektive pro-cessbruset w[t]. Dessa brus antas vara oberoende. Matrisen P [t] är kovariansma-trisen för de skattade tillstånden och har samma dimension som A[t]. Startvärdet P [0] kan vara svårt att bestämma, men en grov uppskattning av tillståndens stor-lek ger möjlighet till ett rimligt val av P [0].

Systemet (4.8) kan skrivs som

x[t + 1] = Ax[t] + Bu[t] + T r[t] + w[t] = Ax[t] − BLˆx[t] + T r[t] + w[t] =

= (A − BL)x[t] + BL˜x[t] + T r[t] + w[t] ˜ x[t + 1] = (A − KC)˜x[t] + w[t] − Kv[t] y[t] = Cx[t] där ˜ x[t] = x[t] − ˆx[t] På matrisform blir detta

 x ˜ x  [t + 1] =  A − BL BL 0 A − KC   x ˜ x  [t] +  T 0  r[t]+ +  1 0 1 −K   w v  [t] y[t] = C 0   x ˜ x 

(36)

Låt ABL= A − BL, AKC = A − KC och e[t] =  T 0  r[t] +  1 0 1 −K   w v  [t] Systemet kan då enligt [4] skrivas som

y[t] = C 0   qI − ABL −BL 0 qI − AKC −1 e[t] = C 0  

(qI − ABL)−1 (qI − ABL)−1BL(qI − AKC)−1

0 (qI − AKC)−1

 e[t]

= C(qI − A + BL)−1T r[t] + C(qI − A + BL)−1w[t]+

+ C(qI − A + BL)−1BL(qI − A + KC)−1(w[t] − Kv[t])

Detta innebär att det blir samma överföringsfunktion mellan referens- och utsignal när en observatör används som när tillstånden direkt återkopplas. Däremot kom-mer observatören att påverka hur mät- och processbrus inverkar på utsignalen.

För att en observatör ska kunna användas måste systemet vara detekterbart. Detta innebär att det måste finnas en matris K så att A − KC är stabilt. Se [2] för mer ingående beskrivningar av de villkor som ska vara uppfyllda.

4.4 Rekursiv LQ-reglering

Om systemet som ska regleras ändras i tiden är det önskvärt att även ändra re-gulatorn i tiden. Då en LQ-regulator används kan detta lösas rekursivt genom att återkopplingsmatrisen L uppdateras i varje tidssteg. I [2, kap. 9] finns riccatiekva-tionerna för återkopplingsmatrisen L och för matrisen K i kalmanfiltret. För att beräkna K måste P bestämmas ur riccatiekvationen

P = AP AT

− AP CT(CP CT + R)−1CP AT + Q

Denna ekvation kan enligt [5, kap. 8] lösas rekursivt P [t + 1] = A[t]P [t]AT

[t] −A[t]P [t]CT[t](C[t]P [t]CT[t] + R[t])−1C[t]P [t]AT[t] + Q[t]

Med samma resonemang som ovan kan återkopplingsmatrisen L bestämmas genom att rekursivt uppdatera S ur riccatiekvationen (4.6) enligt

S[t+1] = AT[t]S[t]A[t]−AT[t]S[t]B[t](BT[t]S[t]B[t]+Q2[t])−1BT[t]S[t]A[t]+Q1[t]

Resultatet kan sammanfattas enligt algoritm 4, som också kan hittas i [6].

Algoritm 4Tidsvariabel LQ-reglering

L[t] = (BT[t]S[t]B[t] + Q2[t])−1BT[t]S[t]A[t]

S[t+1] = AT[t]S[t]A[t]−AT[t]S[t]B[t](BT[t]S[t]B[t]+Q2[t])−1BT[t]S[t]A[t]+Q1[t]

Startvärdet S[0] måste ansättas och ett lämpligt val är S[0] = 0, då ingen information om S[0] finns.

(37)

Del II

Systemidentifiering och

reglering av helikopter

(38)
(39)

Kapitel 5

Systemidentifiering av

helikopter

I detta kapitel redovisas hur den rekursiva helikoptermodellen togs fram. Kapitlet innehåller även en kort introduktion till det reglersystem som byggts upp.

5.1 Översikt

Systemet som ska regleras har tre utsignaler, vinkelhastigheterna p, q och r samt fyra styrsignaler δpitch, δroll, δcoloch δtail. De tre första insignalerna är en

samman-vägning av de tre servovinklarna (i grader) som styr swashplattans läge, medan δtail är vinkeln (i grader) på det servo som styr stjärtrotorn. En mer ingående

beskrivning av insignalerna gavs i avsnitt 2.2.1. Systemet kan alltså skrivas

  p[t] q[t] r[t]  =   G11[q] G12[q] G13[q] G14[q] G21[q] G22[q] G23[q] G24[q] G31[q] G32[q] G33[q] G34[q]       δpitch[t] δroll[t] δcol[t] δtail[t]     (5.1)

Eftersom skattningen av överföringsfunktionerna sker rekursivt kommer överfö-ringsfunktionerna G11, .., G34att uppdateras i varje sampelögonblick. Att systemet

är framtaget i diskret tid beror på att det är att föredra vid rekursiv modellskatt-ning eftersom insignaler och utsignaler avläses tidsdiskret. Av denna anledmodellskatt-ning har även regleringen gjorts i diskret tid eftersom det inte finns någon anledning att föra över det tidsdiskreta systemet till ett tidskontinuerligt när det finns framtag-na metoder för tidsdiskret reglering. Systemet (5.1) kommer i fortsättningen att presenteras på tillståndsform då det är en lämpligare form för LQ-reglering. In-och utsignaler kommer i fortsättningen att betecknas som u[t] In-och y[t] där

y = (p, q, r)T

(40)

Figur 5.1.Systemöversikt.

och

u = (δpitch, δroll, δcol, δtail)T

Målet med regleringen är att få utsignalerna att följa tre givna referenssignaler rp, rq och rr. Dessa referenssignaler kommer i fortsättningen betecknas som

r = (rp, rq, rr)T

För att få god referensföljning oavsett helikopterns hastighet, position med me-ra görs nya skattningar av tillståndsmatriserna A och B i varje sampelögonblick. Dessa matriser används sedan till att uppdatera observatören och återkopplings-matrisen L i varje tidssteg. För att få referensföljning införs tre extra integrerande tillstånd, vilket ger en utökad A- och B-matris. Mer om detta finns att läsa i kapitel 7. En översiktlig bild av reglersystemet finns i figur 5.1.

Det finns dock ett känt problem inom rekursiv systemidentifiering och adaptiv reglering: För att få en skattning av systemet ska insignalen vara anpassad till systemet som ska identifieras. En bra start är att använda ett så brett frekvensband som möjligt. Helst ska då insignalen bestå av alla frekvenser, det vill säga vitt brus. En regulator däremot är till för att hålla utsignalen på en önskad nivå och göra detta med små och inte allt för varierande insignaler. Dessa två egenskaper motverkar varandra och frågan är om det går att skatta en tillräckligt bra rekursiv modell för att uppnå god reglering, då systemet identifieras samtidigt som det regleras.

5.2 Rekursiv skattning av systemparametrar

För att skatta A- och B-matriserna måste sambandet mellan in- och utsignaler ansättas. Samtidigt som modellen ska beskriva systemet väl eftersträvas en modell

(41)

5.2 Rekursiv skattning av systemparametrar 29

med få parametrar. Detta beror på att osäkerheten i parameterskattningen blir större ju fler parametrar som skattas. Till att börja med ansätts ARX-modellen

y1[t] = −a1y1[t − 1] − a2y1[t − 2] + b1u1[t − 1] + b2u2[t − 1] +b3u3[t − 1] + b4u4[t − 1] + e1[t] (5.2) y2[t] = −a3y2[t − 1] − a4y2[t − 2] + b5u1[t − 1] + b6u2[t − 1] +b7u3[t − 1] + b8u4[t − 1] + e2[t] (5.3) y3[t] = −a5y3[t − 1] − a6y3[t − 2] + b9u1[t − 1] + b10u2[t − 1] +b11u3[t − 1] + b12u4[t − 1] + e3[t] (5.4)

där e1[t], e2[t] och e3[t] är vita brusprocesser med standardavvikelse σ. För att

skatta de 18 parametrarna (a1, a2, ..., a6, b1, b2, ..., b12) används både NLMS enligt

algoritm 1 och kalmanfiltrering enligt algoritm 2 i kapitel 3. De in- och utsig-naler som används är genererade i simulatorn ARES som är utvecklad av Saab Aerosystems och σ är satt till ett. I både NLMS- och kalmanskattningen blir

ϕ[t] =   ϕ1[t] 0 0 0 ϕ2[t] 0 0 0 ϕ3[t]   T (5.5) och θ[t] = θp[t] θq[t] θr[t]  T (5.6) där ϕ1[t] = (−y1[t − 1], −y1[t − 2], u1[t − 1], u2[t − 1], u3[t − 1], u4[t − 1]) ϕ2[t] = (−y2[t − 1], −y2[t − 2], u1[t − 1], u2[t − 1], u3[t − 1], u4[t − 1]) ϕ3[t] = (−y3[t − 1], −y3[t − 2], u1[t − 1], u2[t − 1], u3[t − 1], u4[t − 1]) θp[t] = (a1, a2, b1, b2, b3, b4) (5.7) θq[t] = (a3, a4, b5, b6, b7, b8) (5.8) θr[t] = (a5, a6, b9, b10, b11, b12)

I figur 5.2 har först en simulering gjorts där in- och utsignaler från ARES använts för att skatta parametrarna i (5.2), (5.3) och (5.4) vid varje tidpunkt.

(42)

0 10 20 30 40 50 60 −50 0 50 p p psim 0 10 20 30 40 50 60 −50 0 50 q q qsim 0 10 20 30 40 50 60 −50 0 50 r r rsim

(a) Data från ARES och simulerad data med NLMS skattning. µ = 0.4 och α = 0.01. 0 10 20 30 40 50 60 −50 0 50 p p psim 0 10 20 30 40 50 60 −50 0 50 q q qsim 0 10 20 30 40 50 60 −50 0 50 r r rsim

(b) Data från ARES och simulerad data med kalmanskattning. R = I och Q = I · 10−4.

Figur 5.2.Skattning med NLMS och kalmanfilter.

Dessa parametrar har sedan använts för att simulera den rekursiva modellen då den matas med samma insignaler (se figur A.1) som användes i skattningsfallet. Som ses i figur 5.2 följer de simulerade utsignalerna p och q med i dynamiken. Girvinkelhastigheten r enligt (5.4) modelleras däremot inte på ett riktigt sätt med varken NLMS- eller kalmanskattning. Därför införs en utökad modell för r där u3[t − 2] och u4[t − 2] används enligt

y3[t] = −a5y3[t − 1] − a6y3[t − 2] + b9u1[t − 1] + b10u2[t − 1] + b11u3[t − 1]

+b12u3[t − 2] + b13u4[t − 1] + b14u4[t − 2] + e[t] (5.9)

De nya vektorerna ϕ3[t] och θr[t] i (5.5) och (5.6) blir då

ϕ3[t] = (−y3[t − 1], −y3[t − 2], u1[t − 1], u2[t − 1], u3[t − 1], ...

...u3[t − 2], u4[t − 1], u4[t − 2])

θr[t] = (a5, a6, b9, b10, b11, b12, b13, b14) (5.10)

Med denna modell blir även r modellerad på ett korrekt sätt med både NLMS-och kalmanskattning. Detta kan ses i figur 5.3 där den nya modellen för girvinkeln används i simuleringen. Validering av denna modell görs i kapitel 6.

5.3 Systemet på tillståndsform

För simulering och senare reglering är det lämpligt att skriva sambanden (5.2), (5.3) och (5.9) på tillståndsform. Låt θ[t] definieras av (5.6), där θp[t], θq[t] och θr[t] är

(43)

5.3 Systemet på tillståndsform 31 0 10 20 30 40 50 60 −50 0 50 p p psim 0 10 20 30 40 50 60 −50 0 50 q q qsim 0 10 20 30 40 50 60 −50 0 50 r r rsim

(a) Data från ARES och simulerad data med NLMS skattning. µ = 0.4, α = 0.01. 0 10 20 30 40 50 60 −50 0 50 p 0 10 20 30 40 50 60 −50 0 50 q 0 10 20 30 40 50 60 −50 0 50 r p psim q qsim r rsim

(b) Data från ARES och simulerad data med kalmanskattning, R = I, Q = I · 10−4.

Figur 5.3.Skattning med NLMS och kalmanfilter då den utökade modellen för r an-vänds.

vektorerna (5.7), (5.8) och (5.10). Systemet kan skrivas på tillståndsform (4.2), där varje överföringsfunktion överförts till tillståndsform genom att använda ob-serverbar kanonisk form [4]. Detta ger

A[t] =         −θ1[t] 1 0 0 0 0 −θ2[t] 0 0 0 0 0 0 0 −θ7[t] 1 0 0 0 0 −θ8[t] 0 0 0 0 0 0 0 −θ13[t] 1 0 0 0 0 −θ14[t] 0         (5.11) B[t] =         θ3[t] θ4[t] θ5[t] θ6[t] 0 0 0 0 θ9[t] θ10[t] θ11[t] θ12[t] 0 0 0 0 θ15[t] θ16[t] θ17[t] θ19[t] 0 0 θ18[t] θ20[t]         (5.12) C =   1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0   (5.13)

(44)

Tillstånden i ovanstående tillståndsbeskrivning är satta enligt x1[t] = y1[t] x2[t] = −θ2[t]y1[t − 1] x3[t] = y2[t] x4[t] = −θ8[t]y2[t − 1] x5[t] = y3[t]

x6[t] = −θ14[t]y3[t − 1] + θ18[t]u3[t − 1] + θ20[t]u4[t − 1]

Eftersom systemet är skrivet på observerbar kanonisk form [2, kap. 2] är sy-stemet observerbart [2, kap. 3]. Detta betyder att sysy-stemet även är detekterbart, eftersom ett observerbart system alltid är detekterbart [2, kap. 3].

(45)

Kapitel 6

Validering av den rekursiva

helikoptermodellen

För att validera det uppställda systemet enligt avsnitt 5.3 skattades först system-parametrarna vid varje tidpunkt med in- och utsignaler från ARES (simulator på Saab). Dessa parametrar användes sedan vid simulering av tillståndsmodel-len (avsnitt 5.3) då denna matas med samma insignaler som vid skattningen (se figur A.1). Utsignalen från det simulerade systemet, ysim[t], jämfördes därefter

med utsignalen från ARES, y[t]. Parameterskattningen gjordes både med NLMS och med kalmanfilter och resultatet av de olika skattningsmetoderna redovisas i avsnitt 6.2 och 6.3.

6.1 Valideringsmetodik

Helikoptern som simulerades i ARES åkte först bakåt, bytte därefter färdriktning och flög framåt. Efter tiden t = 10 gjorde helikoptern en 360 graders sväng och fortsatte sedan framåt igen. Denna sekvens upprepades två gånger. Flygsekvensen kan ses i figur 6.1.

För att få en uppskattning om hur bra en modell är, kan mått som

s = 1 N Ntrans+N −1 X Ntrans (y[t] − ysim[t]) 2

(där N är längden på signalen och Ntransär det sampel där summeringen börjar)

tas fram. Signalen ysim är den simulerade utsignalen då det skattade systemet

matas med samma insignaler som under skattningsprocessen. Signalen y är den uppmätta utsignalen. Ett annat värdefullt mått är att betrakta polernas place-ring. Polerna bör inte variera allt för snabbt eftersom felaktiga skattningar på grund av exempelvis störningar och mätfel då kan få kraftigt genomslag, se av-snitt 3.2.3. Om systemet beskrivs av sambanden (5.2), (5.3) och (5.9), där y1[t] är

vinkelhastigheten i rolled (p), y2[t] är vinkelhastigheten i tippled (q) och y3[t] är

(46)

Figur 6.1.Illustration av flygsekvensen.

vinkelhastigheten i girled (r), ges polerna av följande uttryck: Poler för p: −a21 ± r a2 1 4 − a2 Poler för q: −a3 2 ± r a2 3 4 − a4 Poler för r: −a5 2 ± r a2 5 4 − a6

6.2 Adaptering med NLMS

När NLMS används för att skatta parametrarna vid varje tidpunkt sätts parame-tervektorns startvärde ˆθ[0] = 0. Som ses i figur 6.2 finns det fyra transienter för rollvinkelhastigheten p, vid tiden t = 11 och t = 44, då helikoptern går in i en sväng och vid tiden t = 24 och t = 57, då helikoptern går ur svängen. Mellan dessa tidsintervall då helikoptern ligger i konstant sväng eller konstant fart fram-åt/bakåt ligger polerna för p på en jämn nivå. Polerna för tippvinkelhastigheten q och girvinkelhastigheten r har inte några transienter under simuleringen. Polerna för r exciteras dock först när helikoptern går in i första svängen och girkommandot kraftigt ändras.

Som ses i figur 6.3 så följer den simulerade utsignalen ysim utsignalen från

(47)

insväng-6.3 Adaptering med kalmanfilter 35 0 20 40 60 0 0.2 0.4 0.6 p:s pols realdel 0 20 40 60 0 0.2 0.4 p:s pols imaginärdel 0 20 40 60 −0.4 −0.20 0.2 0.4 p:s pols realdel 0 20 40 60 −0.4 −0.2 0 p:s pols imaginärdel 0 20 40 60 0 0.2 0.4 0.6 q:s pols realdel 0 20 40 60 −0.1 0 0.1 q:s pols imaginärdel 0 20 40 60 −0.4 −0.2 0 q:s pols realdel 0 20 40 60 −0.1 0 0.1 q:s pols imaginärdel 0 20 40 60 0 0.5 1 r:s pols realdel 0 20 40 60 −0.1 0 0.1 r:s pols imaginärdel 0 20 40 60 −0.4 −0.2 0 r:s pols realdel 0 20 40 60 −0.1 0 0.1 r:s pols imaginärdel

Figur 6.2.Polernas placering när NLMS används med µ = 0.4 och α = 0.01.

ningsförloppen om steglängden ökas, men detta innebär större ändringar i polpla-ceringen, det vill säga kraftigare variation av parameterskattningarna. Det gäller därför att göra en avvägning mellan storleken på s och polernas variation. Måttet s är i simuleringen (1.0611, 0.1166, 2.8226)T. Detta är en bra passning med hänsyn

till den inte allt för varierande polplaceringen. I simuleringen är µ och α valda till 0.4 respektive 0.01. Detta val av µ har i simuleringar visat sig vara bäst, då en minskning av µ till 0.3 ökar s till (1.5346, 0.1968, 5.0856)T, medan

polvariatio-nen inte ändras något nämnvärt. Likaså blir polplaceringen mer varierande om µ ändras till 0.5, men då minskar s till (0.7660, 0.0763, 1.2405)T.

I figur A.2, A.3 och A.4 visas plottar över de skattade parametrarnas variation. Som ses i figurerna ligger samtliga parametrar inom rimliga gränser ([-1,1]).

6.3 Adaptering med kalmanfilter

När ett kalmanfilter används för att skatta parametrarna vid varje tidpunkt sätts parametervektorns startvärde ˆθ[0] = 0. I den simulering som gjorts, se figur 6.5,

blir det framtagna måttet s = (0.9377, 0.5937, 0.5213)T och polplaceringen, se

figur 6.4, blir svagt varierande. Transienterna som ses för p:s poler vid tiden t = 11, t = 24, t = 44 och t = 57 är liksom då skattningen sker med NLMS transienter som uppkommer då helikoptern går in och ur en sväng. När helikoptern däremot är inne i svängen eller färdas framåt/bakåt är polerna för p smått varierande.

(48)

0 10 20 30 40 50 60 −50 0 50 p p psim 0 10 20 30 40 50 60 −50 0 50 q q qsim 0 10 20 30 40 50 60 −50 0 50 r r rsim

(a) Data från ARES och simulerad data med NLMS-skattning. µ = 0.4, α = 0.01, och s = (1.0611, 0.1166, 2.8226)T. 43.5 44 44.5 45 45.5 46 −60 −40 −20 0 20 40 p 34 34.2 34.4 34.6 34.8 35 35.2 35.4 35.6 35.8 36 −60 −40 −20 0 20 40 q 10 11 12 13 14 15 16 17 18 19 20 −40 −20 0 20 40 r p psim q qsim r rsim

(b) Zoomning av data från ARES och simu-lerad data med NLMS-skattning. µ = 0.4, α= 0.01, och s = (1.0611, 0.1166, 2.8226)T.

Figur 6.3.Utsignalerna då skattning görs med NLMS.

Påpekas bör dock att det kan ta en stund för polerna att svänga in. Exempelvis har polerna för q i figur 6.4 svängt in mot relativt konstanta värden först vid tiden t = 15. Detta kan även ses i figur 6.5 där den simulerade tippvinkelhastigheten q inte följer den verkliga utsignalen förrän efter t = 15.

I den simulering som redovisas ovan är Q = I · 10−4, R = I och P [0] =

I · 102. Dessa matriser är diagonalmatriser men de diagonala elementen behöver

inte vara lika. Olika vikter på diagonalelementen har prövats i simuleringar, men detta har inte lett till några större förbättringar. Minskas designparametern Q till I · 10−5 blir s = (0.9305, 2.7708, 4.8986)T, men det blir inga större förbättringar

av polvariationerna. Ökas Q till I · 10−3 blir s = (0.5208, 0.1014, 0.1343)T, vilket

är en förbättring, men polvariationerna blir dock större. Av denna anledning är Q = I · 10−4 ett bra val.

Som tidigare nämnts är den simulerade tippvinkelhastigheten q mycket svängig i början av simuleringen, men parametrarna konvergerar efter t = 15 in mot vär-den som beskriver dynamiken. Detta insvängningsförlopp beror på initialvärvär-dena. Om exempelvis P [0] minskas vid parameterskattningen av q:s dynamik blir varia-tionerna mindre. Figur 6.5 visar dock att det adaptiva systemet behöver påverkas av insignaler för att parametrarna ska svänga in mot riktiga värden.

I figur A.2, A.3 och A.4 visas plottar över de skattade parametrarnas varia-tion. Som ses i figurerna ligger samtliga parametrar när de svängt in inom rimliga gränser ([-1,1]). Parametrarna för tippvinkel q har dock stor variation i början av simuleringen. Detta beror som tidigare nämnts på designparameter P [0] och initialvärde ˆθ[0].

Som ses i figur 6.2 och 6.4 skiljer sig polskattningen åt om NLMS respektive kalmanfilter används. Exempelvis går ena polens realdel för r mot ett med både NLMS och kalmanfilter, men polen konvergerar in betydligt snabbare då

(49)

skatt-6.3 Adaptering med kalmanfilter 37 0 20 40 60 0 0.5 1 1.5 p:s pols realdel 0 20 40 60 0 0.5 1 p:s pols imaginärdel 0 20 40 60 0 0.5 1 p:s pols realdel 0 20 40 60 −1 −0.5 0 p:s pols imaginärdel 0 20 40 60 0 0.5 1 1.5 q:s pols realdel 0 20 40 60 0 0.5 1 q:s pols imaginärdel 0 20 40 60 −1 0 1 q:s pols realdel 0 20 40 60 −1 −0.5 0 q:s pols imaginärdel 0 20 40 60 0 0.5 1 1.5 r:s pols realdel 0 20 40 60 −0.1 0 0.1 r:s pols imaginärdel 0 20 40 60 −1 0 1 r:s pols realdel 0 20 40 60 −0.1 0 0.1 r:s pols imaginärdel

Figur 6.4. Polernas placering när skattning med kalmanfilter görs. I simuleringen är Q= I · 10−4, R = I och P [0] = I · 102. 0 10 20 30 40 50 60 −50 0 50 p 0 10 20 30 40 50 60 −50 0 50 q 0 10 20 30 40 50 60 −50 0 50 r p psim q qsim r rsim

(a) Data från ARES och simulerad data med kalmanskattning, Q = I · 10−4, R = I och s= (0.9377, 0.5937, 0.5213)T. 44 44.5 45 45.5 46 −40 −20 0 20 40 p 34 35 36 37 38 39 40 −80 −60 −40 −20 0 20 40 q 10 11 12 13 14 15 16 17 18 19 −40 −20 0 20 40 r p psim q qsim r rsim

(b) Zoomning av data från ARES och simule-rad data med kalmanskattning, Q = I · 10−4,

R= I och s = (0.9377, 0.5937, 0.5213)T.

(50)

ningen sker med kalmanfilter. Skattningen av den andra polen skiljer sig dock åt med de olika metoderna. Då skattningen görs med NLMS går realdelen mot −0.42, men när skattningen sker med kalmanfilter går realdelen mot 0.31. Kal-manfiltret kommer att ge en mer korrekt skattning av polernas placering, varför 0.31 är en bättre skattning än −0.42. Dock är skattningen med kalmanfiltret mer beräkningskrävande.

(51)

Kapitel 7

Adaptiv LQ-reglering av

helikopter

I detta kapitel redovisas hur det adaptiva reglersystemet för helikoptern har ut-formats. I kapitel 8 redovisas valideringen av det framtagna reglersystemet.

7.1 Utökad tillståndsform

För att kunna styra helikoptern önskas de tre utsignalerna p, q och r följa tre givna referenssignaler rp, rq och rr. För att åstadkomma detta införs tre extra

integrerande tillstånd i modellen (se avsnitt 4.2.1 för teori om referensföljning).

˙xi1 = rp− y1

˙xi2 = rq− y2

˙xi3 = rr− y3

En tidsdiskret variant av de integrerande tillstånden är

xi1[t + 1] = xi1[t] + Ts(rp[t] − y1[t])

xi2[t + 1] = xi2[t] + Ts(rq[t] − y2[t])

xi3[t + 1] = xi3[t] + Ts(rr[t] − y3[t])

där Ts är samplingstiden. Om ett system på tillståndsform (4.2) utvidgas med de

integrerande tillstånden blir det utökade systemet 39

(52)

    x xi1 xi2 xi3     [t + 1] =  A 0 −TsC E      x xi1 xi2 xi3     [t] +     B 0 0 0     u[t] + T r[t]   y1 y2 y3  [t] = C 0 0 0      x xi1 xi2 xi3     [t] T =     0 0 0 Ts 0 0 0 Ts 0 0 0 Ts     E =   1 0 0 0 1 0 0 0 1   (7.1)

En utökad tillståndsbeskrivning av systemet i avsnitt 5.3 blir då

    x xi1 xi2 xi3     [t + 1] = Aext[t]     x xi1 xi2 xi3     [t] + Bext[t]u[t] + T r[t]   y1 y2 y3  [t] = Cext     x xi1 xi2 xi3     [t] (7.2) där

(53)

7.2 Reglerdesign 41 Aext[t] =               −θ1[t] 1 0 0 0 0 0 0 0 −θ2[t] 0 0 0 0 0 0 0 0 0 0 −θ7[t] 1 0 0 0 0 0 0 0 −θ8[t] 0 0 0 0 0 0 0 0 0 0 −θ13[t] 1 0 0 0 0 0 0 0 −θ14[t] 0 0 0 0 −Ts 0 0 0 0 0 1 0 0 0 0 −Ts 0 0 0 0 1 0 0 0 0 0 −Ts 0 0 0 1               (7.3) Bext[t] =               θ3[t] θ4[t] θ5[t] θ6[t] 0 0 0 0 θ9[t] θ10[t] θ11[t] θ12[t] 0 0 0 0 θ15[t] θ16[t] θ17[t] θ19[t] 0 0 θ18[t] θ20[t] 0 0 0 0 0 0 0 0 0 0 0 0               (7.4) Cext=   1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0   (7.5)

och matrisen T blir

T =               0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Ts 0 0 0 Ts 0 0 0 Ts              

7.2 Reglerdesign

Det återkopplade systemet är designat enligt figur 7.1. Matriserna A och B upp-dateras i varje tidssteg och en ny observatör samt återkoppling beräknas enligt

ˆ

x[t + 1] = Aext[t]ˆx[t] + Bext[t]u[t] + T r[t] + K[t](y[t] − Cextx[t])ˆ

u = −L[t]ˆx[t] (7.6)

Matriserna Aext[t], Bext[t] och Cext är de utökade matriserna enligt (7.3), (7.4)

(54)

y x_hat u r_r r_q r_p r Utöka A,B,C samt sätt T för extra integrerande tillstånd

In1 Out1 System f(u) Skattning av A,B matris In1 In2 Out1 Observatör x_hat=Ax_hat+Bu+Tr+K(y−Cx_hat) In1 In2 In3 In4 Out1

Beräkna L samt sätt nytt u; u=−Lx_hat

In1 In2 Out1

(55)

7.2 Reglerdesign 43

För att inte återkopplingen ska reagera för starkt på abrupta felaktiga skatt-ningar utan ändras lugnt uppdateras L[t] enligt algoritm 5. Detta innebär att

Algoritm 5Uppdatering av återkopplingsmatrisen L

1. Bestäm L[t] enligt algoritm 4 2. ˜L[t] = ˜L[t − 1] + µ(L[t] − ˜L[t − 1]) 3. u[t] = −˜L[t]ˆx[t]

återkopplingsmatrisen L blir lågpassfiltrerad. Filtrets bodediagram kan ses i fi-gur 7.2. Steglängden µ justeras efter önskemål och är i simuleringarna vald till 0.1.

−30 −25 −20 −15 −10 −5 0 Magnitude (dB) 10−1 100 101 102 103 −90 −45 0 45 Phase (deg) Bode Diagram Frequency (rad/sec)

Figur 7.2.Bodediagram för filter som lågpassfiltrerar L då µ valts till 0.1.

Vid beräkning av L[t] används matriserna Aext, Bext och viktmatrisen Q1 väljs

till Q1=               0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 30 0 0 0 0 0 0 0 0 0 30 0 0 0 0 0 0 0 0 0 30               (7.7)

Detta innebär att återkopplingen inte bryr sig om hur x1, ..., x6 beter sig, utan

helt fokuserar på att få utsignalerna att gå mot referenssignalerna. Viktmatrisen Q2 väljs till

(56)

Q2=     1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1     (7.8) Eftersom de extra integrerande tillstånden xi1, xi2och xi3inte är detekterbara

skattas inte dessa med en observatör utan skattas enligt ˆ xi1[t + 1] = xˆi1[t] + Ts(rp[t] − ˆy1[t]) ˆ xi2[t + 1] = xˆi2[t] + Ts(rq[t] − ˆy2[t]) ˆ xi3[t + 1] = xˆi3[t] + Ts(rr[t] − ˆy3[t]) där ˆ y[t] = Cextx[t]ˆ

Systemtillstånden x1, ..., x6 som däremot är detekterbara skattas med en

obser-vatör. Detta innebär att observatören rekursivt uppdateras enligt algoritm 6, där matriserna Aext[t], Bext[t] och Cext bestäms av (7.3), (7.4) och (7.5). Matriserna

A[t] och C bestäms av (5.11) och (5.13). Matrisen R[t] är en enhetsmatris av di-mension 3 × 3 då mätburset antas vara vitt brus med varians ett. Även Q[t] är en enhetsmatris, men Q[t] är av dimension 6 × 6. Detta val har gjorts då process-bruset ansatts till vitt brus med varians ett. Det satta processprocess-bruset är tänkt att beskriva det brus som uppkommer då A[t]- och B[t]-matriserna består av skattade parametrar. Även andra val av Q[t] har prövats men det valda visade sig vara bäst. Startvärdet för kovariansmatrisen P [0] valdes till I ·102och är av dimension 6 × 6.

Algoritm 6Uppdatering av observatör

ˆ

x[t + 1] = Aext[t]ˆx[t] + Bext[t]u[t] + T r[t] + K[t](y[t] − Cextx[t])ˆ

Ksys[t] = A[t]P [t]CT(R[t] + CP [t]CT)−1 P [t + 1] = A[t]P [t]AT [t] − A[t]P [t]CT(R[t] + CP [t]CT)−1CP [t]AT[t] + Q[t] K[t] =     Ksys[t] 0 0 0    

7.3 Begränsningar

För att parametrarna i tillståndsmodellen enligt avsnitt 5.3 inte ska sticka iväg införs begränsningar i reglersystemet. Parameterskattningen i regulatorn har be-gränsningen 30 ≥ |θ[t]|. Den övre bebe-gränsningen 30 finns med för att begränsa

(57)

7.3 Begränsningar 45

parameterskattningen i det fall skattningen skulle bli felaktig och ge orimligt höga parametervärden. I första hand finns den övre gränsen med för att begränsa för-stärkningen. Även en begränsning för systemets poler finns i regulatorn där det garanteras att polerna ligger innanför enhetscirkeln.

(58)
(59)

Kapitel 8

Validering av reglersystemet

Det reglersystem som simulerats i detta kapitel är uppbyggt enligt figur 7.1 där systemparametrarna skattas enligt avsnitt 5.2 och regulatorn skapas enligt kapi-tel 7. Samplingstiden Tsär i simuleringarna satt till 0.02 sekunder.

Simuleringarna som gjorts i detta kapitel beskrivs i två avsnitt, 8.1 och 8.2. Avsnitten innehåller simuleringar av två olika helikoptermodeller: En modell med utgångspunkt från en framtagen hovringsmodell (avsnitt 8.1) och en större mer komplett modell (avsnitt 8.2). En mer ingående beskrivning av de olika helikop-termodeller som regleras finns i början av varje avsnitt.

8.1 Simulering med utgångspunkt från

hovrings-modell

På Saab Aerosystems i Linköping finns en hovringsmodell för helikoptern Skeldar framtagen. Denna modell användes i simuleringarna som verkligt system i tidsin-tervallet [0, 50]. I tidsintervallen ]50, 100] och ]100, 150] användes modifieringar av hovringsmodellen som verkligt system. Exempelvis ändrades polplaceringen i in-tervallen för att undersöka om den adaptiva regulatorn klarar av att reglera en ändring av dynamiken. De verkliga systemparametrarna finns plottade tillsam-mans med de skattade i figur A.6, A.7 och A.8. Det verkliga systemets poler finns plottade tillsammans med den skattade polplaceringen i figur A.9.

Mätbrusets varians är i de simuleringar som gjorts i avsnitt 8.1.1 och 8.1.2 satt till σ2= 0, men även simuleringar med varians upp till σ2= 1 har gjorts (se

avsnitt 8.1.3).

8.1.1 Adaptering med kalmanfilter

Då reglersystemet simuleras i det fall modellparametrarna skattas med kalmanfil-ter sätts initialvärdet till

ˆ

θ[0] = (−1.5, 0.5, 0, 0.1, 0, 0, −1.5, 0.5, 1, 0, 0, 0, 0.5, 0, 0, 0, 0, 1, 1, 0)T

(60)

0 50 100 150 −50 0 50 p r 1 0 50 100 150 −50 0 50 q r 2 0 50 100 150 −50 0 50 r r 3

(a) Systemets utsignaler då skattning med kalmanfilter används. 25 30 35 40 45 50 −40 −20 0 20 40 25 30 35 40 45 −40 −20 0 20 40 25 30 35 40 45 50 −40 −20 0 20 40 p r 1 q r 2 r r 3

(b) Zoomning av systemets utsignaler då kal-manskattning används.

Figur 8.1.Simulering då kalmanskattning används.

Eftersom de verkliga systemparametrarna för hovringsfallet är kända i Saabs hov-ringsmodell kan valet av parametrar göras så att ˆθ[0] = θ[0] (se figur A.6, A.7 och A.8 för verkliga parametervärden). Startvärdet ˆθ[0] har dock valts med lite avvikelse från det verkliga startvärdet. Detta har gjort för att undersöka om pa-rametrarna konvergerar mot de verkliga parametervärdena. Designpapa-rametrarna Q, R och P [0] i algoritm 2 är satt till I · 10−4, I och I · 102 (se avsnitt 6.3 för

motivering). Steglängden µ för lågpassfiltret enligt algoritm 5 är satt till 0.1 och viktmatriserna Q1och Q2i algoritm 4 är valda enligt (7.7) och (7.8). Matriserna R

och Q är i algoritm 6 enhetsmatriser. Startvärde för observatörens kovariansmatris P [0] är I · 102.

I figur 8.1 följer utsignalerna referenssignalerna väl då Saabs hovringsmodell används (t ≤ 50). När den modifierade modellen med fler korskopplingar och an-nan polplacering används i intervallet ]50, 100] är regleringen fortfarande god. Även i intervallet ]100, 150] klarar regulatorn av att reglera systemet. I figur A.6, A.7 och A.8 finns de verkliga parametrarna plottade tillsammans med de skattade. Som ses i figurerna följer de skattade parametrarna de verkliga med lite felmar-ginal. Även om de skattade parametrarna inte alltid stämmer väl överrens med de verkliga så är skattningen av polplaceringen (se figur A.9) god. Detta är det väsentliga i skattningen och även den kraftiga ändringen av polernas placering i intervallet ]100, 150] klarar kalmanfiltret av att skatta.

De insignaler som genereras av regulatorn kan ses i figur A.5. Som ses i figuren ligger samtliga insignaler på rimliga nivåer.

References

Related documents

Att genomföra åtgärder för att påverka till exempel antalet lodjur nationellt eller i en region och sedan följa upp dem genom inven- tering är inte ett exempel på

Syftet med detta arbete är att, med särskilt fokus på mobila enheter, undersöka hur stor påverkan användningen av progressiv detaljrikedom i vektorgrafik kan

Direktivet saknar undantagsbestämmelser som gäller specifikt för jakt. Däremot finns det möjligheter till undantag från skydd av arter som listas i direktivet som gäller

Momentkurvan för den lastbil där regulatorn har implementerats kan ses i Figur 21. Där ses att varvtal över 1000rpm inte resulterar i nämnvärt större moment. Utan den enda

Forskning inom området [1, 38] nämner främst två olika sensorer som klarar av att mäta avstånd som är upp till 250 m, radar (Radio Detection and Ranging) som använder sig

Syftet är att studera kvinnors "motiv" till att arbeta ideellt i en idrottsförening för barn och ungdomar, om deras motiv kan relateras till de normativa riktlinjer som

The overall aim of this thesis was to study patients with anxiety/depression symptoms before and after primary total knee replacement, particularly in terms of improvements

Denna avhandling har finansierats med medel från den Nationella Forskar- skolan i Pedagogiskt Arbete, NaPA, som koordineras av Fakultetsnämnden för lärarutbildning, Umeå