tyo 8 _tyoohje_2

19
AS-0.2230 Automaatio- ja systeemitekniikan laboratoriotyöt LABORATORIOTYÖ 8 Konttinosturin sumea säätö Einar Toivonen, Lasse Eriksson 2006

Upload: mickhole

Post on 24-Jan-2015

258 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Tyo 8 _tyoohje_2

AS-0.2230 Automaatio- ja systeemitekniikan laboratoriotyöt

LABORATORIOTYÖ 8

Konttinosturin sumea säätö

Einar Toivonen, Lasse Eriksson

2006

Page 2: Tyo 8 _tyoohje_2

1. Johdanto

Konttinostureita käytetään muun muassa satamissa (ks. kuva 1) konttien siirtelyyn sekä teollisuudessa raskaiden tavaroiden siirtämiseen teollisuushalleissa. Oikeat nosturit voivat olla kooltaan kymmenien, jopa satojen metrien pituisia. Laboratoriotyö käsittelee konttinosturin pienoismallia (2.5 m x 0.8 m), jolla voidaan siirtää konttia kahdessa suunnassa (vaaka- ja pystysuunta). Työssä tarkastellaan kontin siirron säätöä vakiokuormalla, vaikkakin todellisuudessa kuorma luonnollisesti vaihtelee siirrosta toiseen. Työssä keskitytään virittämään säätö siten, että kontin heiluminen siirron aikana minimoituu, mutta samalla pyritään pitämään siirtonopeus kohtuullisena.

Kuva 1. Konttinosturi Shanghain Wai Gao Qiao telakalla.

1.1. Työn tavoitteet

Työssä tarkastellaan konttinosturin pienoismallin säätöongelmaa ja sovelletaan kaskadi PID-säätöä ja sumeaa logiikkaa kontin siirrossa. Tavoitteena on tutustuttaa opiskelijat kaskadi PID-säädön virittämiseen ja sumean logiikan perusteisiin sekä näyttää miten sumeaa logiikkaa voidaan soveltaa säätöongelman ratkaisussa käytännössä. Työssä vertaillaan sumeaa säädintä PID-säätimeen, jotta säädinrakenteiden erot tulisivat hyvin esille (suorituskyky, kompleksisuus, viritys jne.). Työssä tarkastellaan myös mittausten suodatusta ja sovelletaan Kalman-suodatinta käytännön säätöjärjestel-mässä. Työssä sivutaan myös mm. ultraäänimittauksen periaatteita ja käytännön säätöjärjestelmän ongelmia (häiriöt jne.).

1.2. Säätöjärjestelmän kuvaus

Konttinosturia ohjaa kaksi erillistä moottoria. Vaunumoottori liikuttaa liukujohteeseen kiinnitettyä vaunua vaakasuunnassa (ks. kuva 2). Johdetta pitkin liikkuvaan vaunuun on kiinnitetty nostomoottori, jolla konttia voidaan siirtää pystysuunnassa. Kontti roikkuu nostomoottoriin kiinnitetyn narun varassa. Järjestelmän säädön tavoitteena on, että nosturi vie kontin halutusta alkutilasta (paikka) haluttuun lopputilaan mahdollisimman nopeasti huomioiden edessä olevat mahdolliset esteet sekä minimoi kontin heilahtelut.

Page 3: Tyo 8 _tyoohje_2

Kuva 2. Konttinosturin CAD-kuva.

Konttinosturia säädetään kolmella säätimellä. Vaunun paikkaa ja kontin korkeutta säädetään kaskadi PID-säätimillä. Kaskadisäätöä käytetään, koska takaisinkytkentä vaunun paikan ja kontin korkeuden muutoksesta eli nopeudesta parantaa näiden suureiden säätöä. Sumeaa säätöä käytetään vaimentamaan kontin heilahtelua siirron aikana.

Kontin heilahteluja voidaan parhaiten kompensoida vaunumoottorin avulla, joten sumea säädin ohjaa vaunumoottoria paikkasäädön rinnalla. Näin ollen vaunumoottoria ohjataan vaunun paikkatiedon mukaan siten, että kontin heilahtelu pysyy minimissään. Narun pituuteen eli kontin korkeuteen vaikuttaa vain nostomoottori. Referenssitrajektorit PID-säätimille saadaan radansuunnittelualgoritmin avulla. Tämä ottaa huomioon moottorien maksiminopeudet yms., ja laskee realistisesti saavutettavissa olevat radat halutusta alkupisteestä loppupisteeseen huomioiden rataa mahdollisesti rajoittavat esteet. Jotta säätimet saavat luotettavaa mittaustietoa on takaisinkytkentään lisätty Kalman-suodatin, joka antaa luotettavan estimaatin halutuista suureista.

Konttinosturin säätöjärjestelmän rakenne esitetään kuvassa 3.

2. Konttinosturin malli

Konttinosturilla voidaan siirtää kuormia kahdessa dimensiossa eli se pystyy nostamaan kontin ja liikuttamaan sitä vaakasuunnassa kuvan 4 mukaisesti. Kontin liikuttamiseen vaadittavat vääntömomentit saadaan kahdesta systeemissä olevasta moottorista: vaunumoottori (trolley motor) ja nostomoottori (hoist motor). Vaunumoottori vaikuttaa vaunun paikkaan liukujohteen (linear actuator) avulla.

3

MickEE
Highlight
Page 4: Tyo 8 _tyoohje_2

Konttinosturi

( ) ( , )( ) ( , )

x t f x uy t g x u

==

Kalman-suodin

Vaunumootori

Nostomoottori

Fuzzy

Φ

1u

2u

PID PID

PID PID

2,refΘ

Φ̂

Φ̂2Θ̂

2Θ̂1Θ̂

1Θ̂

Vaunun paikan kaskadisäätö

Kontin korkeuden kaskadisäätö

2,refΘ

1,refΘ1,refΘ

1Θ̂

1Θ̂

2Θ̂

2Θ̂

Φ

Φ̂

ˆ

++++++

++++

Kuva 3. Konttinosturin säätöjärjestelmän komponentit.

Kuva 4. Konttinosturin kaaviokuva.

2.1. Mekaaninen malli

Konttinosturin mallintamisessa käytetään seuraavia muuttujia: θ1 [rad] on vaunumoottorin akselin kiertokulma (vaunun paikka d = r1θ1, missä r1 on liukujohteen akselin säde), θ2 [rad] on

4

Page 5: Tyo 8 _tyoohje_2

nostomoottorin akselin kiertokulma (narun pituus l = r2θ2, missä r2 on nostomoottorin väkipyörän säde, jonka ympärille naru siis kiertyy) sekä Φ [rad] on narun absoluuttinen kulma. Konttinosturin mekaniikkamalliksi saadaan Euler-Langrange-yhtälöiden perusteella:

1 11 1

d L L N Ddt θ θ⎛ ⎞∂ ∂

− = −⎜ ⎟∂ ∂⎝ ⎠ (2.1)

22 2

d L L N Ddt θ θ⎛ ⎞∂ ∂

− = −⎜ ⎟∂ ∂⎝ ⎠2 (2.2)

0d L Ldt⎛ ⎞ − =⎜ ⎟∂Φ ∂Φ⎝ ⎠∂ ∂ , (2.3)

missä

2 2 2 2 2 2 2 21 1 2 2 1 1 1 1 2 2

2 2 22 2 1 2 1 2 1 2 1 2 2 2

2 2 2 2 21 sin cos cos .2

v k k

k k k k

L T U J J m r m r m r

m r m r r m r r m gr

θ θ θ θ θ

θ θ θ θ θ θ

= − = + + + + +

+ Φ + Φ + Φ Φ +

1 1 1 1 1

Φ (2.4)

Yhtälöissä L on ns. Lagrangen funktio, L = T – U, missä T on liike-energia ja U on potentiaalienergia. Ni ovat moottorien tuottamat vääntömomentit, Di ovat systeemiin vaikuttavat kitkat ja Ji ovat moottorien hitausmomentit. Muuttujat mv ja mk ovat vaunun sekä kontin massat ja ri moottorien akselien säteet. Merkinnöissä indeksi i = 1 viittaa vaunumoottoriin ja i = 2 nostomoottoriin.

2.2. Moottorien mallit

Vaunumoottorina on Moogin valmistama AC-servomoottori (malli D314 L20), jossa käytetään pulssinleveysmodulaatiota tuottamaan jännite staattorin käämeihin. Moottorin mallintaminen analyyttisesti ei ole ollut mahdollista moottorin iän ja siitä johtuen puutteellisten tietojen valossa. Tästä syystä moottorille on johdettu identifioimalla (mittauksiin perustuen) seuraava malli.

3 4 5

1 2

( ) ( ) ( ),( )

( ) 0.06495 0.3543 0.4354 0.5031( ) 1 0.2185 0.1251

y k u k e kF q

6

( )B q

B q q q qF q q q

− − −

− −

= +

= + + +

= + +

q− (2.5)

Nostomoottori on DC-moottori, johon on kytketty välitys (välityssuhde i = 1/23). Nostomoottoria kuvaa analyyttinen malli:

2

T22 2 0t t

ges a load frica a

K KJ U i TR R

θ θ+ − + ⋅ + = , (2.6)

missä Jges on moottoriin kytketty kokonaisinertia, Tfric kitkasta aiheutuva vääntömomentti, Tload massaan kohdistuva vääntömomentti, Kt momenttivakio, Ua herätejännite ja RRa moottorin sisäinen vastus.

5

Page 6: Tyo 8 _tyoohje_2

2.3. Kitkamalli

Koska moottoreissa ja liukujohteessa esiintyvät kitkat vaikuttavat huomattavasti systeemin käyttäytymiseen, on systeemille johdettu myös kitkamalli. Nostomoottorin kitka johtuu suurimmalta osin välityksestä, ja se on helppo mallintaa moottorintoimittajan ohjekirjan perusteella. Moottorin hyötysuhde kyseiseen välitykseen liitettynä on 50 %, joten voidaan olettaa, että 50 % vääntömomentista häviää kitkan takia.

Vaunumoottorin ja liukujohteen kitkan mallinnuksessa on sovellettu ns. LuGre-kitkamallia. Yleisesti mallin on todettu soveltuvan hyvin erilaisten säätöjärjestelmien kitkan mallintamiseen. Yleisessä muodossa malli on seuraava:

20

0

( / )0 1

0 1 2

,( )

( ) ,

.

v v

vdz v zdt g v

g v edzF z vdt

σ

α α

σ σ α

= −

= +

= + +

2 2 2

(2.7)

Kitkamomentti F on funktio vaunun nopeudesta v. αi ja vo ovat staattisia parametrejä ja σi ovat dynaamisia parametrejä. Staattiset parametrit on saatu ajamalla järjestelmää vakionopeuksilla ja dynaamiset vertaamalla järjestelmän simulointi- ja mittaustuloksia. Mallin muuttuja z liittyy kitkamallin fysikaaliseen tulkintaan, mutta muuttuja ei ole mitattavissa.

2.4. Kontin narun kulman mittaus

Kontin narun kulma mitataan ultraääneen perustuvalla mittausjärjestelmällä. Kontissa on lähetin, joka lähettää lyhyitä (2 ms) ultraäänipulsseja 40 kHz taajuudella neljä kertaa sekunnissa. Konttinosturin kehikkoon on kiinnitetty ultraäänivastaanottimia, jotka vastaanottavat pulssit. Narun kulma lasketan vastaanottoaikaerojen perusteella.

Ultraäänipulssien lähetysaikaa ei tunneta, koska kontissa olevaa lähetintä ei ole kytketty mittausjärjestelmään. Vastaanottimia kuitenkin luetaan samanaikaisesti 20 kHz:n taajuudella, joten pulssin kulkuajan ero kahden vastaanottimen välillä voidaan laskea. Koska pulssien lähetysaikaa ei tiedetä, on mahdotonta laskea suoraan matkaeroa kontin ja vastaanottimen välillä. Kuitenkin kahden vastaanottimen välinen etäisyys ja muu geometria sekä pulssin vastaanottoajan erotus tunnetaan, joten lähettimen ja vastaanottimien etäisyys voidaan laskea. Näiden avulla narun kulma saadaan laskettua käyttäen hyväksi kosinilausetta (laajennettu Pythagoraan lause), jonka yleinen muoto esitetään kuvassa 5 ja kaavassa (2.8). Kuvan 5 mukaiselle kolmiolle pätee yhteys

2 cos( )a b c bc α= + − . (2.8)

αβ

δ a

b

c

Kuva 5. Kosinilauseeseen liittyvät muuttujat.

6

Page 7: Tyo 8 _tyoohje_2

1R2R Trolley

Load

'L

2cX12X 1cX

1X

2X

βδ

Kuva 6. Kulman mittaaminen ultraäänen perusteella.

Kuvassa 6 on hahmoteltu narun kulman laskemiseen liittyvää geometriaa. Kuvassa RRi on ultraäänivastaanottimen i paikka, Xci ultraäänivastaanottimen i ja vaunun (Trolley) välinen etäisyys ja Xij vastaanottimien i ja j välinen etäisyys. L’ on narun pituus ja Xi ultraäänen kulkema matka vastaanottimelle RiR

d X X v t= − = Δ

.

Narun kulma on muuttuja β kuvassa 6. Koska narun pituus L’ voidaan mitata ja vaunun etäisyys vastaanottimista tunnetaan, voidaan narun kulma laskea, jos etäisyys X1 saadaan selville. Seuraavassa johdetaan kaava X1:lle ultraäänipulssien vastaanottoaikojen erotusten perusteella.

Yleisesti kahden vastaanottimen etäisyysero suhteessa lähettimeen saadaan ultraäänen nopeuden ja vastaanottimien vastaanottoaikojen erotuksen perusteella

ij j i s ij , (2.9)

missä Δtij on vastaanottoaikojen erotus vastaanottimien RRi ja RjR välillä ja vs on äänennopeus. Soveltamalla kosinilausetta kulmalle δ kolmioihin (Load, RR1, R2R ) sekä (Load, Trolley, RR

2 2 2 cos( )

2), saadaan johdettua seuraavat yhtälöt:

2 2 2 2' 2c cL X X X X δ= + −

2 2 2 )

ja (2.10)

1 12 2 12 22 cos(X X X X X δ= + − . (2.11)

Yhtälöstä (2.11) voidaan päätellä, että

2 2 2

12

12 2 1

12 2

cos( ) .2

X X XX X

δ + −= (2.12)

Etäisyys d12 = X2 – X1, eli

X 2 1X d= + . (2.13)

Sijoittamalla yhtälöt (2.12) ja (2.13) yhtälöön (2.10) saadaan

( )

2 2 2 12 1 12 12 1 12 2 1 12

12 1 12

2 2 2 2 222 1 1 12 12 12 1 12 12

12

( )' ( ) 2 ( )2 ( )

2 2

c c

cc

2 2 2

.

X X d XL X X d X X dX X d

XX X X d d X X d dX

+ + −= + + − +

+

= + + + − + + (2.14)

Yllä olevasta lausekkeesta muokkautuu X1:lle toiseen asteen yhtälö

7

Page 8: Tyo 8 _tyoohje_2

22 22 2 12

1 12 1 2 2 12 1212 12

2 (1 ) ( ) ' 0cc c

X dX d X X X X d LX X

+ − + − − + − = , (2.15)

josta etäisyys X1 ratkaistaan

21 12

12

1cXX dX

⎛ ⎞= − ±⎜ ⎟

⎝ ⎠,Δ (2.16)

missä

2 2 22 .c

2 12 2 12 22 12 22

12 12

' c cc

d X d XL X X XX X

Δ = + − + − (2.17)

Kahdesta ratkaisusta valitaan se, joka antaa etäisyydeksi X1 positiivisen arvon, eli neliöjuurilausekkeen edessä oleva merkki on +.

Narun kulma voidaan ratkaista kolmiosta (Trolley, Load, RR1).

( )2 2 2

1

1 1 1

2 21

1

' 2 'cos

'arccos .2 '

c c

c

c

X X L X L

X L XX L

β

β

= + −

⎛ + −⇒ = ⎜ ⎟

⎝ ⎠

⎞ (2.18)

Koska vastaanottimia ei ole oikeassa järjestelmässä mahdollista sijoittaa suoraan vaunun ja liukujohteen yläpuolelle, vastaanottimet on asennettu konttinosturin kehikon reunalle. Kyseiselle konstruktiolle on rakennettu kuvan 7 mukainen kehikko, jossa vastaanottimet ovat liukujohteen suuntaisesti kehikon reunalla (samalla korkeudella). Näin ollen yllä olevissa laskelmissa pitää huomioida vielä vastaanottimien vaakasuora siirtymä (kuvassa 7 muuttuja W).

T

C

T’

A

A’

Rail

½ Frame

W L

L’

β

α

y

Kuva 7. Vastaanottimien geometria.

8

Page 9: Tyo 8 _tyoohje_2

Aikaisemmin johdettua narun kulman yhtälöä voidaan hyödyntää yllä olevaan konstruktioon, jossa edellä käytetty narun pituus L’ määritellään apusuureeksi todelliselle narun pituudelle L.

Kulmasta β ja etäisyydestä L’ on mahdollista laskea T’A’ vektorin pituus (myös TA:n pituus), missä A ja A’ ovat normaaliprojektiot kontista C liukujohteeseen ja vastaanotinlinjaan, ja missä T’ on normaaliprojektio vaunun paikasta T vastaanotinlinjalle. Olkoon T’A’:n pituus y.

9

( )'cosy L= β (2.19)

Nyt todellinen narun kulma α voidaan laskea geometrian avulla

( )'cosarccos arccos

LyL L

βα

⎛ ⎞⎛ ⎞= = ⎜⎜ ⎟⎝ ⎠ ⎝ ⎠

⎟ . (2.20)

L’ voidaan nyt laskea käyttäen Pythagoraan lausetta, kun tiedetään narun todellinen pituus sekä vastaanottimien vaakasuora siirtymä W,

2'L L W= + 2 . (2.21)

Sijoittamalla yhtälö (2.21) yhtälöön (2.20) sekä sijoittamalla β:n tilalle yhtälö (2.18), saadaan narun todellinen kulma muotoon

2 2 2 2

⎟1 1

1

arccos2

c

c

X X L WX L

α⎛ ⎞− + +

= ⎜⎝ ⎠

. (2.22)

Lisäksi tulee huomioida seuraavat ehdot: jos vastaanotin RR1 on narun vasemmalla puolella, on narun kulma Φ = α, muulloin Φ = π - α.

3. PID-säädin

PID-säädin on yksi säätötekniikan perussäätimistä ja sen toiminta perustuu takaisinkytkentään. PID-säädin on yleisin teollisuudessa käytettävä säädin. PID-säätimen nimi muodostuu termeistä proportional-integral-derivative (suhde-integroiva-derivoiva).

3.1. Jatkuva-aikainen PID-säädin

Säätimen ulostulo u(t) eli ohjaussignaali koostuu siis kolmesta termistä.

0

1( ) ( ) ( )pI

de tu t K e t e d TT d

τ τ⎛ ⎞

= + +⎜⎝ ⎠

∫( )t

D t ⎟ (3.1)

Usein yhtälö esitetään myös muodossa

0

( )( ) ( ) ( ) ( ) ( ) ( )P I D p I Dde tu t u t u t u t K e t K e d K

dtτ τ= + + = + +∫

t

, (3.2)

Page 10: Tyo 8 _tyoohje_2

jolloin ja pI D p

I

KK K K

T= = DT .

Suhdesäätötermi (P - proportional) on staattinen kuvaus erosuureesta ohjaukseen. Aina kun erosuure muuttuu, niin uP muuttuu myös vakiosuhteessa erosuureen muutoksiin. Integroiva termi integroi erosuuretta. uI on jatkuvassa muutostilassa, kunnes erosuure häviää (menee nollaan). Integroiva termi poistaa pysyvää poikkeamaa, mutta saattaa lisätä järjestelmän värähtelyjä. Derivoiva termi vahvistaa erosuureen muutosnopeutta. Aina kun erosuure on muutostilassa, niin uD reagoi yrittäen vastustaa muutosta. Derivoiva termi nopeuttaa järjestelmää, mutta on herkkä viiveille ja korkeataajuiselle kohinalle (esimerkiksi mittaushäiriöt).

Laplace-tasossa PID-säätimen siirtofunktio voidaan esittää seuraavasti:

1( ) 1cI

G s K T sT s

⎛ ⎞= + +⎜

⎝ ⎠D ⎟ . (3.3)

3.2. Diskreettiaikainen PID-säädin

Käytännössä PID-säätöalgoritmia lasketaan tietokoneilla mittausten perusteella, joten tarvitaan diskreettiaikainen PID-säädin. Koska diskreettiaikainen PID-säädin ei ole yksikäsitteinen, niin parametrien lisäksi on esitettävä myös kulloinkin käytettävä säätimen rakenne. Alla esitellään ns. käytännöllisen PID-säätimen diskreettiaikainen muoto. Tähän käytännölliseen versioon on tehty muutama muutos oppikirjaversioon (3.1) nähden. Nämä ovat referenssisignaalin painotus suhdetermissä ja suodatuksen lisääminen derivointitermiin. Lisäksi derivointi kohdistuu vasteeseen eikä erosuureeseen. Näillä muutoksilla pyritään nopeuttamaan säätöä, vähentämään askelmaisen referenssisignaalin aiheuttamia ”piikkejä” ohjaussignaalissa sekä vähentämään mittauskohinan vahvistumista ohjaussignaaliin. Tarkastellaan ensin jatkuva-aikaista PID-säädintä Laplace-tasossa.

( )1( ) ( ) ( ) ( ) ( ) ( )1

( ) ( ) ( )

DREF REF

DI

m m

T sU s K bY s Y s Y s Y s Y sTT s sN

P s I s D s

⎛ ⎞⎜ ⎟

= − + − −⎜⎜ +⎝ ⎠

= + +

⎟⎟

( )

(3.4)

Nähdään, että derivointi on toteutettu suodatettuna siten, että korkeataajuiset signaalit suodatetaan pois (häiriöt), säädin derivoi vain prosessin lähtösignaalia ja vain osa referenssisignaalista vaikuttaa suhdesäätöön. Parametri N on suodatusvakio, jonka arvo valitaan yleensä väliltä 3...20. Säätimen diskretionnissa suhdetermi ei muutu, ainoastaan jatkuva-aikaiset signaalit korvataan diskreeteillä. Integraalitermi diskretoidaan käyttämällä Eulerin approksimaatiota ja derivaattatermi käyttäen taaksepäin derivoinnin (backward differences) approksimaatiota. Näin saadaan ”käytännöllisen” PID-säätimen diskreettiaikainen versio.

( )( ) ( ) ( ) ( ) ( ) ( )m REF m REFP s K bY s Y s P z K bY z Y z= − ⇒ = − (3.5)

1 1 1K h( ) ( ) ( ) ( ) ( )1 1m m

II I

I s E s I z K E z K ETT s z T zh

= ⇒ = =− −

z (3.6)

10

MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
Page 11: Tyo 8 _tyoohje_2

1z1( ) ( ) ( ) ( ) ( )11 1

Dm m D D

D D D D

KT s zzhD s Y s D z KT Y z KT Y zT T z T Ts h zN N zh N N

−−

= − ⇒ = − = −− ⎛ ⎞+ + + −⎜ ⎟

⎝ ⎠

(3.7)

3.3. Kaskadisäätö

Useissa prosesseissa toimisuureen vaikutus säädettävään suureeseen näkyy vasta huomattavan ajan kuluttua, jolloin yksinkertainen takaisinkytketty säätö on luonnostaan hidas. Jos kuitenkin järjestelmästä on mitattavissa apusuureita, joissa ohjaussuureen ja/tai häiriöiden vaikutus näkyy aikaisemmin kuin säädettävässä suureessa, voidaan säätötulosta merkittävästi parantaa kerrostamalla säätöpiirejä ns. kaskadipiiriksi. Kaskadisäädön periaatekaavio esitetään kuvassa 8.

Kaskadisäädöllä saavutetaan seuraavanlaiset hyödyt. Säätö on helppo toteuttaa perinteisillä PID-säätimillä. Tällöin voidaan hyödyntää takaisinkytkennän periaatetta. Systeemin suorituskyky saadaan nousemaan huomattavasti, kun huolehditaan, että sisempi silmukka on nopeampi kuin ulompi silmukka. Tällöin myös sisäinen silmukka käsittelee ulkoiset häiriöt nopeammin. Usein myös käytännössäkin säätöjärjestelmien operaattorit mieltävät kaskadikäytön helpoksi. Kaskadisäädön virityksessä pätee yleisesti, että sisemmän silmukan integrointivakio on suhteessa vahvempi ulkoisempaan silmukkaan, mutta taas ulkoisemman silmukan vahvistus on suurempi suhteessa sisäisempään silmukkaan (toisin sanoen sisempi silmukka on nopeampi).

Kaskadisäätöä käytetään kun yhden silmukan suorituskyky ei ole tyydyttävä. Kaskadisäädön toimivuus edellyttää yleensä, että apusuure pystytään ylipäänsä mittamaan ja merkittävät häiriöt tapahtuvat sisemmän silmukan sisällä. Myös sisemmän ja ulomman silmukan mitattujen suureiden välillä on oltava hyvin määritelty yhteys (esimerkiksi nopeus ja paikka). Lisäksi sisemmän silmukan dynamiikan pitää olla huomattavasti, noin 4-5 kertaa, nopeampi kuin ulomman silmukan. On huomioitavaa, että toissijaisen muuttujan mittaaminen voi olla monimutkaista tai kallista, ja että kaskadisäätö voi lisätä merkittävästi järjestelmän monimutkaisuutta.

Kaskadisäätimen viritys voidaan tehdä samoilla menetelmillä kuin muidenkin säätöjen viritys. Ongelmaa voidaan lähestyä esimerkiksi analyyttisesti, jos prosessin siirtofunktio tai muu vastaava malli on tiedossa tai mahdollista kehittää. Parametrien viritys voidaan tällöin toteuttaa käyttäen perinteisiä menetelmiä kuten taajuustason analyysiä tai Ziegler-Nicholsin virityssääntöjä.

SÄÄDIN SÄÄDIN TOIMILAITE PROSESSI

MITTAUS

MITTAUSmitattu suure

asetusarvo asetusarvo

ohjaus

mitattu suure 2

toimisuure lähtösuure

)(tyref 2, ( )ref

häiriö

y t

)(tymit

2, ( )mity t

)(1 tu )(2 tu )(ty

)(tv

Kuva 8. Kaskadisäädön periaatekaavio.

11

MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
Page 12: Tyo 8 _tyoohje_2

4. Sumea logiikka ja säätö

Fuzzy- eli sumeaa säätöä käytetään yleisesti prosesseissa, joissa perinteiset lineaariset säätimet eivät tuota haluttua säätötulosta johtuen prosessin epälineaarisuudesta tai siitä, että prosessin käyttäytymistä ei tunneta tarkasti. Toinen yleinen syy sumean säädön käyttöön on, että se antaa säätösuunnittelijoille mahdollisuuden käyttää suunnittelussa hyväksi ihmisoperaattoreiden säätöstrategioita. Tätä lähestymistapaa on sovellettu esimerkiksi pyykinpesukoneen pesuaineen annostelumäärän säädössä pyykin likaisuuden ja määrän mukaan.

4.1. Sumea logiikka

Fuzzy- eli sumea logiikka on ns. moniarvoinen logiikka, jossa alkio voi kuulua osittain joukkoon. Tällöin esimerkiksi lauseen: ”Alkio x kuuluu joukkoon X” totuusarvo on väliltä [0,1]. Käytännössä monesti kohdataan sellaisia ilmiöitä tms., joita ei voida kuvata perinteisellä eksaktilla matematiikalla. Sumea joukko-oppi sisältää menetelmiä, joilla voidaan käsitellä tällaisia ongelmia.

4.2. Sumea säätö

Sumeaa logiikkaa voidaan käyttää säädössä hyväksi, jolloin säätöalgoritmin voidaan ajatella koostuvan kolmesta osasta, jotka ovat sumeutus, päättely ja selkeytys. Säätäjän sisäänmenoille määritellään jäsenyysfunktioiden avulla sumeat joukot, jotka nimetään kuvaavilla nimillä. Jäsenyysfunktio määrittää jäsenyysasteen, jolla sisäänmenon arvo kuuluu kyseiseen sumeaan joukkoon. Joukot määritellään tyypillisesti hiukan limittäin, jolloin sisäänmeno saattaa kuulua osittain esimerkiksi pienten ja keskisuurten lukujen joukkoon. Säätöalgoritmin osaa, jossa jäsenyysfunktioiden arvot lasketaan, kutsutaan yleensä sumeutukseksi. Päättely tapahtuu jos—niin sääntöjen ja sumeutuksessa laskettujen jäsenyysfunktioiden arvojen perusteella. Yhdistelemällä eri sisäänmenojen sumeita joukkoja and- ja or-, eli ja- sekä tai-operaattoreiden avulla, voidaan rajata mitkä säännöt ovat kulloinkin voimassa. Koska sumeassa logiikassa alkiot voivat saada arvoja väliltä [0,1], käsitetään and-operaattori min-operaattoriksi ja or-operaattori max-operaattoriksi. Päättelemällä tähän tilanteeseen sopiva ohjaustoimenpide ja määrittelemällä se ko. säännön johtopäätökseksi, saadaan koko säätöstrategia rakennettua pala palalta käymällä kaikki mahdolliset tilanteet läpi. Päättely tuottaa tyypillisesti yhden sumean joukon. Ennen kuin sitä voidaan käyttää, sumea joukko täytyy muuttaa täsmälliseksi sumean säätäjän ulostuloksi. Tätä vaihetta kutsutaan selkeytykseksi. Kuvassa 9 esitetään sumean säädön osat.

Sumea säätäjä sisältää seuraavat peruskomponentit: sumeutusrajapinta, sääntökanta, sumea päättely ja selkeytysrajapinta. Sumeutusrajapinnalla täsmälliset prosessista saadut mittausarvot muutetaan sumeiden joukkojen jäsenyysfunktioiden arvoiksi. Sääntökannan ja sumeiden mittaustietojen avulla päätellään tarvittavat sumeat ohjaukset. Sumeat ohjaukset muutetaan täsmällisiksi selkeytys-rajapinnalla.

Sääntökanta

SumeapäättelySumeutus Selkeytys

Täsmällinenmittaus

Sumeamittaus

Sumeaohjaus

Täsmällinenohjaus

Kuva 9. Sumean säädön periaatekaavio.

12

MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
MickEE
Highlight
Page 13: Tyo 8 _tyoohje_2

13

4.2.1. Sumeutus

Säätösovelluksissa mitattu tieto on usein täsmällistä. Koska sumeassa säädössä ohjaus muodostetaan sumeiden päättelysääntöjen avulla, täytyy täsmällinen mittaus sumeuttaa. Sumeutus voidaan toteuttaa laskemalla mittauksen kaikkien sumeiden joukkojen jäsenyysfunktioiden arvot kyseisellä mittauksen arvolla.

4.2.2. Sääntökanta

Sumean säätäjän sääntökanta koostuu kokoelmasta jos—niin sääntöjä, joiden perusteella sumeasta mittauksesta päätellään sumea ohjaus. Säännöt ovat tyypillisesti muotoa: ”jos mittauksen tietty ehto toteutuu, niin ohjauksen täytyy toteuttaa tietty ehto”. Nämä lingvistiset säännöt määrittelevät käytettävän säätöstrategian. Sääntökanta voidaan muodostaa usealla eri tavalla. Parhaiten sääntökanta saadaan teollisuusprosesseista huolellisesti suunniteltujen kokeiden ja mittausten avulla tai prosessimallia analysoimalla. Sääntöjen lukumäärä on suoraan verrannollinen säätäjän ohjelmointiin ja virittämiseen tarvittavaan työmäärään. Usein hyvin pienellä sääntökannalla, esimerkiksi jo parilla säännöllä, voidaan saavuttaa sama lopputulos kuin useita kymmeniä sääntöjä sisältävällä sääntökannalla.

4.2.3. Sumea päättely

Sumeassa päättelyssä sumean mittauksen ja sääntökannan avulla päätellään tarvittava ohjaus käyttäen sumeita loogisia operaatioita kuten and, or ja not sekä sumeaa implikaatiota.

4.2.4. Selkeytys

Sumean päättelyn tuloksena on sumea ohjaus. Koska tyypillisesti prosessin ohjauksen täytyy olla täsmällinen, täytyy sumea ohjaus muuttaa täsmälliseksi ohjaukseksi. Yleisesti käytetyin selkeytysmenetelmä on painopistemenetelmä (center of gravity), joka antaa ohjaukseksi jäsenyysasteiden painopisteen.

4.3. Pikaopas Matlabin Fuzzy-työkaluun

Matlabissa sumean säädön suunnittelutyökalu käynnistetään komennolla fuzzy. Tämä avaa kuvassa 10 esitetyn ikkunan. Vasemmalla ylhäällä oleva laatikko (input1) kuvaa sisään menevien mittauksien jäsenyysfunktioita, keskimmäinen laatikko sisältää sumean säädön sääntökannan ja oikeanpuoleinen laatikko ulostulon jäsenyysfunktiot. Vasemmalla alanurkassa valitaan selkeyttämistapa, joka oletuksena on keskipisteen laskenta (centroid). Sumean logiikan sisäänmenoja ja ulostuloja lisätään ikkunan valikosta Edit -> Add variable -> Input/Output. Tässä vaiheessa on hyvä antaa jokaiselle muuttujalle nimi, jonka voi asettaa ikkunan oikealla puolella (Current Variable -> Name). Tuplaklikkaamalla sisäänmeno- tai ulostulokuvaketta avautuu kuvan 11 mukainen ikkuna, jossa voidaan määrittää halutut jäsenyysfunktiot muuttujalle.

Avautuvassa ikkunassa oikealla voidaan määrittää jäsenyysfunktioiden nimet sekä käyrien halutut muodot. Vasemmalla alhaalla määritetään haluttu vaikutusalue. Edit-valikon alta voidaan lisätä ja poistaa jäsenyysfunktioita. Params-kohdassa voidaan määrittää jäsenyysfunktion parametrejä. Esimerkiksi Gaussisen jäsenyysfunktion (gaussmf) tapauksessa parametrit ovat hajonta (verrannollinen jäsenyysfunktion leveyteen) ja keskiarvo (jäsenyysfunktion keskipiste). Tästä ikkunasta voidaan määrittää jokaisen sisäänmeno- ja ulostulomuuttujan jäsenyysfunktiot.

Page 14: Tyo 8 _tyoohje_2

Kuva 10. Fuzzy-työkalu.

Kuva 11. Jäsenyysfunktioiden määrittely.

Kun jäsenyysfunktiot on määritelty, siirrytään sääntökannan määrittelyyn. Sääntökanta avautuu tuplaklikkaamalla ensimmäisessä ikkunassa keskimmäistä laatikkoa, minkä jälkeen avautuu kuvan 12 mukainen ikkuna. Sääntökanta määritetään muodostamalla jos – niin -tyyppisiä sääntöjä. Esimerkiksi: ”jos lämpötila on suuri niin lämmitysteho on pieni”. Tässä lämpötila on sisäänmenomuuttuja ja lämmitysteho ulostulomuuttuja eli ohjaussuure. Sisäänmenon eräs jäsenyysfunktio on nimeltään suuri, joka on siis edellä määritelty lämpötila-alueen yläpäähän. Ulostulon eräs jäsenyysfunktio on nimeltään pieni, joka vastaa ohjausalueen pienimpiä arvoja. Säännön takana oleva logiikka: jos on jo lämmintä, vähennetään lämmitystehoa, jotta olisi hieman viileämpää.

Kun koko sääntökanta on määritelty, voidaan ensimmäisessä ikkunassa tarkastella säädön käyttäytymistä eri sisäänmenojen arvoilla menemällä valikkoon View -> Rules. Toiminnolla voi tarkastella sumean logiikan ulostulon arvoja eri sisäänmenon signaalien arvoilla.

Säädin on hyvä tässä vaiheessa tallentaa (myös aikaisemmin) tai viedä työtilaan valikosta File -> Export -> To Workspace/To Disk. Tämän jälkeen sumean logiikan lohkoa voidaan käyttää esimerkiksi Simulinkissä säätimenä. Simulinkin kirjastoista löytyy Fuzzy Logic Toolboxin alta Fuzzy Logic Controller -lohko. Lohkon voi siirtää tavalliseen Simulink-malliin. Tuplaklikkaamalla lohkoa voidaan määritellä säätimen nimi, joka on työtilassa, ja säädin on valmis käytettäväksi.

Kuva 12. Sääntökannan määrittely.

14

Page 15: Tyo 8 _tyoohje_2

4.4. Esimerkki sumeasta säädöstä

Pesukoneen pesuaineen määrää annostellaan sumean logiikan avulla. Sisääntulosuureina ovat pyykin määrä ja likaisuus, jotka mitataan automaattisesti. Pyykin määrää kuvaa muuttuja ”Täyttöaste”, joka mitataan kiloina välillä 0 – 5 kg. Pyykin määrää kuvaavat joukot [Tyhjä, Normaali, Täysi], joiden jäsenyysfunktiot on nähtävissä kuvassa 13.

Pyykin likaisuus mitataan anturilla, joka antaa arvoja väliltä 0 - 100 % (0 % vastaa puhdasta, 100 % likaista pyykkiä). Likaisuusastetta kuvaavat joukot [Puhdas, Likainen, Törky]. Likaisuus-muuttujan jäsenyysfunktiot esitetään kuvassa 14. Pesuaineen määrä annostellaan välillä 0 – 40 g taulukossa 1 esitettävän sääntökannan perusteella. Ohjauslogiikan säännöt on annettu muodossa: Jos Täyttöaste ja Likaisuus niin Annostelu. Annostelun jäsenyysfunktiot on nähtävissä kuvassa 15.

Oletetaan, että pesukoneen Täyttöaste on 4 kg ja Likaisuus 80 %. Tällöin Täyttöaste 4 kg antaa seuraavat jäsenyysfunktioiden arvot: Tyhjä = 0, Normaali = 0.65, Täysi = 0.35. Likaisuus 80 % vastaa jäsenyysfunktioiden arvoja: Puhdas = 0, Likainen 0.4, Törky = 0.6. Taulukossa 2 esitetään sääntökannan arvot näillä jäsenyysfunktioiden arvoilla.

Kuva 13. Pyykin määrään liittyvät jäsenyysfunktiot

(Täyttöaste).

Taulukko 1. Pesukone-esimerkin sääntökanta. Täyttöaste Tyhjä Normaali Täysi

Puhdas Ei

ollenkaan Ei

ollenkaan Ei

ollenkaan Likaisuus Likainen Vähän Vähän Paljon

Törky Paljon Paljon Paljon

Kuva 14. Pyykin likaisuuteen liittyvät jäsenyysfunktiot

(Likaisuus).

Kuva 15. Pesuaineen annostelun jäsenyysfunktiot

(Annostelu).

15

Page 16: Tyo 8 _tyoohje_2

Taulukko 2. Sääntökannan arvot. Täyttöaste Tyhjä Normaali Täysi

Puhdas Ei

ollenkaan=0.0 Ei

ollenkaan=0.0 Ei

ollenkaan=0.0 Likaisuus: Likainen Vähän=0.0 Vähän=0.4 Paljon=0.35

Törky Paljon=0.0 Paljon=0.6 Paljon=0.35

Taulukon 2 arvot saadaan sääntökannan sääntöjen perusteella. Koska säännöt on annettu ja – niin-muodossa, saadaan tulos ottamalla kahdesta sisäänmenon jäsenyysfunktion arvosta minimi (ja vastaa min-operaatiota). Esimerkiksi: jos Täyttöasteen jäsenyys joukkoon Normaali on 0.65 ja Likaisuuden jäsenyys joukkoon Likainen on 0.4, niin Annostelu on 0.4 (minimi jäsenyysfunktioiden arvoista). Edelleen ulostulon (Annostelu) jäsenyysfunktioiden arvot saadaan ottamalla maksimiarvot kunkin ulostulomuuttujan arvosta sääntökannassa. Taulukon 2 mukaan sumeiksi ohjauksen arvoiksi saadaan: Ei ollenkaan = 0.0, Vähän = 0.4, Paljon = 0.6. Näiden ohjausten selkeytys tehdään tässä painopistemenetelmällä. Sumean ohjauksen painopiste lasketaan

i ii

ii

x Ax

A=∑∑

, (4.1)

missä xi ovat ohjauksen sumeat arvot ja Ai jäsenyysfunktion pinta-ala (ks. kuva 16). Painopiste-menetelmällä selkeytettynä ohjauksen arvoksi saadaan 23.6 g. Kuvassa 16 esitetään graafisesti ohjauksen määräytyminen mittausten ja jäsenyysfunktioiden sekä sääntökannan perustella. Sumean ohjauksen arvo näkyy oikeassa alakulmassa.

Kuva 16. Sumeutuksen graafinen esitys.

5. Kalman-suodatin

Käytännön säätöjärjestelmissä mittauksissa ja prosesseissa on häiriöitä, jotka tulee suodattaa ennen signaalien käyttämistä säädössä. Toisaalta on mahdollista, että joitain tarvittavia suureita ei voi mitata vaan ne pitää estimoida muiden mittausten perusteella. Kalman-suodatin on optimaalinen tilaestimaattori, jos järjestelmässä on tilastolliseksi tulkittavaa kohinaa ja häiriötä. Kalman-suodattimella voidaan muodostaa järjestelmän mallia hyödyntäen estimaatti tiloista, eli saada arvio järjestelmän tiloista siten, että signaaleista on poistettu häiriö mahdollisimman tehokkaasti.

16

Page 17: Tyo 8 _tyoohje_2

Oletetaan, että järjestelmä noudattaa lineaarista dynamiikkaa, joka on annettu tilamuodossa

( 1) ( ) ( ) ( ) ( ) ( )k k k k k k+ = + +x A x B u w

( ) ( ) ( ) ( )k k k k= +z C x v

, (5.1)

missä x on järjestelmän tilavektori, u ohjaus ja sekä w prosessikohinaa. Hetkellä k järjestelmän todellisista tiloista tehdään havainto (mittaus) z(k)

, (5.2)

missä C on havaintomatriisi ja v mittauskohinaa. Häiriöt w ja v oletetaan normaalijakautuneiksi, nollakeskiarvoisiksi ja niiden kovarianssifunktiot tunnetuiksi

{ }{ }

E ( ) ( ) (

E ( ) ( ) ( )T

k k k

k k k

=

=

w w Q

v v R

)T

[

. (5.3)

Kalman-suodatin ratkaisee estimointiongelman, jossa järjestelmän tiloista on muodostettu minimivarianssiestimaatti siten, että se voidaan laskea rekursiivisesti, kun tunnetaan edellinen estimaatti ja uusi mittauspari u(k), y(k).

ˆ ( | )k kx| 1)k k− −ˆ ( 1x

5.1. Perusmuoto

Kalman-suodattimen perusmuoto on

]ˆ ˆ ˆ( | ) ( | 1) ( ) ( ) ( ) ( | 1)k k k k k k k k k= − + − −x x K z C x , (5.4)

missä tarkoittaa hetkellä k laskettavaa estimaattia, kun kaikki mittaustieto hetkeen k asti on käytettävissä. Vastaavasti tarkoittaa estimaattia hetkellä k, kun mittaustietoa on hetkeen k – 1 asti käytettävissä. Yllä olevasta yhtälöstä havaitaan, että estimaatti koostuu kahdesta osasta: ennakoivasta (prediktointi) osasta

ˆ ( | )k kxˆ ( | 1)k k −x

ˆ ( | 1)k k −x ja korjaavasta (päivitys) osasta [ ]ˆ( ) ( ) ( |k k k−C x( )k kK z 1)− , joka on saatu kertomalla suodattimen vahvistusmatriisi K viimeisen

mittauksen estimointivirheellä. Kalman-suodatin sisältää yhtälöt ennakoivan osan muodostamiseksi ja vahvistusmatriisin laskemiseksi, jotka kummatkin saadaan täydelliseen rekursiiviseen muotoon siten, että laskenta voidaan suorittaa k:n kasvaessa askel kerrallaan.

5.2. Kalman-suodattimen perusyhtälöt

Seuraavassa on annettu Kalman-suodattimen perusyhtälöt rekursiivisessa muodossa siten, että yhtälöiden perusteella suodatin on mahdollista toteuttaa esimerkiksi tietokoneohjelmana.

Prediktointi:

ˆ ˆ( | 1) ( ) ( 1 | 1) ( ) ( )k k k k k k k− = − − +x A x B u

T− = − − +Q

, tilan prediktointi (5.5)

( | 1) ( ) ( 1| 1) ( ) ( )k k k k k k kP A P A , tilan estimointivirheen kovarianssin prediktointi (5.6)

17

Page 18: Tyo 8 _tyoohje_2

Päivitys:

ˆ( ) ( ) ( ) ( | 1)k k k k k= − −y z C x

T k

1T −= −

ˆ ˆ( | ) ( | 1) ( ) ( )k k k k k k= − +x x K y

( )

1−

, mittausvirhe (5.7)

( ) ( ) ( | 1) ( ) ( )k k k k k= − +S C P C R , mittausvirheen kovarianssi (5.8)

( ) ( | 1) ( ) ( )k k k k kK P C S , optimaalinen Kalman-vahvistus (5.9)

, tilaestimaatin päivitys (5.10)

( | ) ( ) ( ) ( | 1)k k k k k k= − −P I K C P , tilan estimointivirheen kovarianssimatriisin päivitys. (5.11)

Usein A, B ja C, Q ja R ovat vakioita ajan suhteen, jolloin estimointivirheen kovarianssi P voidaan laskea Riccatin yhtälöllä

( )T T T⎡ ⎤= − + +⎣ ⎦P A P PC CPC R CP A Q . (5.12)

Kalman-suodattimen teoriassa tunnetuiksi oletetut häiriöiden kovarianssimatriisit R ja Q eivät yleensä ole käytännössä tunnettuja. Käytännössä suodatin viritetään valitsemalla R ja Q sekä asettamalla suhde Q/R siten, että vahvistus tulee sopivaksi. Usein sopiva suhteen arvo valitaan silmämääräisesti tuloksia tarkastelemalla. Erityisesti mittauskohinan varianssin voi yrittää arvioida prosessikokeiden perusteella, jolloin R:lle voidaan joissain tapauksissa johtaa arvo. Q mittaa prosessihäiriöiden tai epätarkkuuksien suuruutta, ja näitä on vaikeampi arvioida ennalta.

5.3. Laajennettu Kalman-suodatin

Monesti sekä prosessimalli että havaintomalli voivat olla epälineaarisia

( )( )

( 1) ( ), ( ), (

( ) ( ), ( )

k f k k k

k h k k k

⎧ + = +⎪⎨

= +⎪⎩

x x u

z x v

)kw. (5.13)

Funktiot f ja h eivät välttämättä ole lineaarisia, ja saattavat riippua x:n ja u:n lisäksi k:sta (aikavarianttisuus). Yleisessä tapauksessa kovarianssit saattavat muuttua ajan funktiona, ja siksi kovarianssimatriisit esitetään k:n funktioina. Prosessin tila x, heräte u, mittaus z, funktiot f ja h, sekä kohinatermit w ja v ovat kaikki yleisessä tapauksessa vektoreita. Kalman-suodattimen yhtälöissä esiintyvien matriisien K ja P laskemiseksi tarvitaan matriiseja A ja C. Mikäli malli on epälineaarinen, nämä matriisit korvataan funktioiden f ja h jakobiaaneilla. A- ja C-matriisi muodostetaan tällöin funktioiden f ja h osittaisderivaatoista. A-matriisi saadaan ottamalla f:n osittaisderivaatat kunkin tilamuuttujan suhteen ja C-matriisi vastaavasti funktiosta h. Esimerkiksi:

1 1

1 2

2 2 1 2

1 2

,

f fx x h hf f x xx x

∂ ∂⎡ ⎤⎢ ⎥∂ ∂ ⎡ ⎤∂ ∂⎢ ⎥= = ⎢∂ ∂⎢ ⎥ ∂ ∂⎣ ⎦⎢ ⎥∂ ∂⎣ ⎦

A C ⎥ . (5.14)

Koska f ei ole lineaarinen, tulee matriiseihin termejä, jotka sisältävät tilamuuttujia ja herätteitä. Tämän vuoksi A- ja C-matriisit lasketaan jokaisella kierroksella uudelleen. Matriisia A laskettaessa

18

Page 19: Tyo 8 _tyoohje_2

19

tilavektorina x käytetään edellisen kierroksen estimaattia ˆ ( 1 | 1)k k− −x1)

, kun taas C-matriisia laskettaessa käytetään kuluvan kierroksen estimaattia ˆ ( |k k −x .

Seuraavassa on annettu laajennetun Kalman-suodattimen yhtälöt.

Prediktointi:

( )

( )

ˆ ˆ( | 1) ( 1| 1), ( ), 1k k f k k k k− = − − −x x u , tilan prediktointi (5.15)

ˆ ( 1| 1), ( ), 1( )

ˆ ( 1| 1)f k k k k

kk k

∂ − − −⎡ ⎤= ⎢ ⎥∂ − −⎣ ⎦

x uA

x, A:n korvaava derivaatta (5.16)

( | 1) ( ) ( 1| 1) ( ) ( )k k k k k k k− = − − +P A P A T Q , tilan estimointivirheen kovarianssin prediktointi(5.17)

Päivitys:

( )ˆ ( | 1),( )

ˆ ( | 1)h k k k

kk k

∂ −⎡ ⎤= ⎢ ∂ −⎣ ⎦

xC

x ⎥

(

, C:n korvaava derivaatta (5.18)

)ˆ( ) ( ) ( | 1)k k h k k= − −y z x , mittausvirhe (5.19)

( ) ( ) ( | 1) ( ) ( )k k k k kS C P C RT k= − +

1T −

ˆ ˆ( | ) ( | 1) ( ) ( )k k k k k k= − +x x K y

( )

, mittausvirheen kovarianssi (5.20)

( ) ( | 1) ( ) ( )k k k k k= −K P C S , optimaalinen Kalman-vahvistus (5.21)

, tilaestimaatin päivitys (5.22)

( | ) ( ) ( ) ( | 1)k k k k k k= − −P I K C P , tilan estimointivirheen kovarianssimatriisin päivitys. (5.23)