Inertial Navigation...

18
Inertial Navigation C7-03 © 2018 Futoshi Magosaki 7-1 7 カルマンフィルタ カルマンフィルタには離散過程のカルマンフィルタと連続過程のカルマンフィルタの 2 種類がある.本書では,慣性計測装置に広く使われている離散過程のカルマンフィルタを 扱う. 7.1 カルマンフィルタのアルゴリズム カルマンフィルタはシステム方程式 (system equation) と観測方程式 (observation equation) の二つの方程式が基礎となる.カルマンフィルタのアルゴリズムは時間更新 (time update) と観測更新 (observation update) 2 種類の更新から構成される.それらの公 式を表 7.1 にまとめる.なお,カルマンフィルタのカルマンとは,ハンガリー生まれの米 国の科学者 R. E. Kalman (1930 – 2016) である. 7.1 カルマンフィルタ システム方程式 ( ) k k k k k k k N Q 0 w w Γ x Φ x , ~ , 1 1 1 1 + = (7.14) 観測方程式 ( ) k k k k k k N R 0 v v x H z , ~ , + = (7.21) 時間更新 () ( ) () ( ) T 1 1 1 T 1 1 1 1 1 + + + = = k k k k k k k k k k Γ Q Γ Φ P Φ P x Φ x (7.15) (7.20) 観測更新 () ( ) ( ) ( ) () ( ) ( ) ( ) ( ) ( ) + + = + = + = k k k k k k k k k k k T k k k k k k P H K I P x H z K x x R H P H H P K 1 T (7.39) (7.38) (7.40) カルマンフィルタの更新のタイミングを図 7.1 に示す. 7.1 カルマンフィルタのタイミング

Transcript of Inertial Navigation...

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-1

7 カルマンフィルタ

カルマンフィルタには離散過程のカルマンフィルタと連続過程のカルマンフィルタの 2

種類がある.本書では,慣性計測装置に広く使われている離散過程のカルマンフィルタを

扱う.

7.1 カルマンフィルタのアルゴリズム

カルマンフィルタはシステム方程式 (system equation) と観測方程式 (observation

equation) の二つの方程式が基礎となる.カルマンフィルタのアルゴリズムは時間更新

(time update) と観測更新 (observation update) の 2 種類の更新から構成される.それらの公

式を表 7.1 にまとめる.なお,カルマンフィルタのカルマンとは,ハンガリー生まれの米

国の科学者 R. E. Kalman (1930 – 2016) である.

表 7.1 カルマンフィルタ

システム方程式 ( )kkkkkkk N Q0wwΓxΦx ,~,1111 −−−− += 式 (7.14)

観測方程式 ( )kkkkkk N R0vvxHz ,~,+= 式 (7.21)

時間更新 ( ) ( )

( ) ( )T

111T

111

11

−−−−+−−−

+−−−

+=

=

kkkkkkk

kkk

ΓQΓΦPΦP

xΦx

式 (7.15)

式 (7.20)

観測更新

( ) ( )( )( ) ( ) ( )( )

( ) ( ) ( )−+

−−+

−−

−=

−+=

+=

kkkk

kkkkkk

kT

kkkkkk

PHKIP

xHzKxx

RHPHHPK1T

式 (7.39)

式 (7.38)

式 (7.40)

カルマンフィルタの更新のタイミングを図 7.1 に示す.

図 7.1 カルマンフィルタのタイミング

Inertial Navigation C7-03

7-2 © 2018 Futoshi Magosaki

離散時刻 tk–1から tkへの更新を時間更新と言う.添え字 k は離散時刻の番号を示す.そ

れぞれの離散時刻において観測更新を直ちに行う.観測更新の前を添え字 (-) で,観測

更新の後を添え字 ( + ) で示す.したがって,カルマンフィルタ全体での更新の順序は,

( ) ( ) ( ) ( ) ( ) →−+→+→−→+−→−−→ 111 kkkkk

となる.ただし,図 7.1 では時間更新と観測更新を交互に行っているが,観測の周期が長

い(観測のサイクル数が小さい)場合や,観測値が得られなかった場合には,時間更新を

連続して行う.以下,表 7.1 に示した公式の詳細について記す.

7.2 システム方程式

システム方程式が次の微分方程式で表されるものとする.

( ) ( ) ( ) ( ) ( )ttttt wBxAx += (7.1)

ここに,xはシステムの状態を表すベクトル変数であり,状態変数と言う.w (t) はホワイ

トノイズ入力であり,システムノイズと言う.行列 Aは係数行列,行列 Bはシステムノイ

ズの換算行列である.行列 A, Bの要素は,定数の場合もあれば,変数の場合もある.状態

変数 xの行数を n 行,システムノイズ wの行数を m 行とすると,行列 Aは n 行 n 列の正

方行列,行列 Bは n 行 m 列の行列となる.システムノイズ w (t) は平均値ベクトルが 0,

共分散行列が Q (t) の正規分布に従うものとする.共分散行列Q (t) は m 行 m 列の正方行

列であり,システムノイズ w (t) の要素同士に相関が無ければ,対角行列となる.

( ) ( )( )

( ) ( ) ( ) ( )

=+ ttt

tNt

Qww

Q0w

T

,~ (7.2)

第 6 章に記したマルコフノイズのシステム方程式は,式 (6.22) より,

( ) ( ) ( )twtxtx +−=

であった.これはスカラーの式であるが,式 (7.1) と同じ形式である.マルコフノイズの

システム方程式の解は,式 (6.29) より,

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-3

( ) ( ) ( ) ( )−−− +=

ttt dwexetx

00

であった.この式と同様に,式 (7.1) の解は,

( ) ( )( ) ( ) ( ) ( ) ( ) ( )−−

+=t

t

tttttdetet

0

0

0 wBxx

AA (7.3)

となる.ここに,係数 -β が係数行列 A (t) に,システムノイズ w (τ) が行列 B (τ) w (τ)

に,積分の開始時刻が t = 0 から t = t0 に置き換わっている.ここで,式 (7.3) の中の指数

関数を,

( ) ( ) ( )0

0,ttt

ett−

=A

Φ (7.4)

と記すことにする.この行列Φは n 行 n 列の正方行列であり,推移行列 (transition

matrix),または状態推移行列と言う.この推移行列Φを使うと,式 (7.3) は,

( ) ( ) ( ) ( ) ( ) ( )+=t

tdttttt

0

,, 00 wBΦxΦx (7.5)

となる.連続時間のシステム方程式が求められた.

推移行列Φを求める.スカラーの指数関数は展開すると,

+++++=

+++++=

nnat

nx

tan

taate

xn

xxe

!

1

!2

11

!

1

!2

11

22

2

(7.6)

である.定数行列 Aを指数とする指数関数も同様に,

+++++= nnt tn

tte AAAIA

!

1

!2

1 22 (7.7)

である.ここに,Iは n 行 n 列の単位行列である.式 (7.4) に代入すると,

Inertial Navigation C7-03

7-4 © 2018 Futoshi Magosaki

( ) ( ) ( ) +−+−+=2

02

00!2

1, tttttt AAIΦ (7.8)

となる.この式は行列 Aが定数行列の場合の式であるが,時間間隔 t – t0における A (t) の

変化が小さければ,

( ) ( ) ( ) ( ) ( ) +−+−+=2

02

00!2

1, tttttttt AAIΦ (7.9)

と近似できる.

システム方程式 (7.5) を離散化する.時刻 t0 を tk–1,時刻 t を tk,時間 t – t0を Δt とする

とすると,式 (7.9) を離散化した推移行列Φkは,

+++= 22

!2

1tt kkk AAIΦ (7.10)

となる.時間 Δt が十分に小さい場合は,2 次以上の高次の項を無視して,

tkk += AIΦ (7.11)

となる.式 (7.5) の第 2 項は,式 (7.10) を代入して,2 次以上の高次の項を無視すると,

( ) ( ) ( )

1111

1122

1

111

!2

1

,1

−−−−

−−−

−−−

==

+++=

=

kkkk

kkkk

kkk

t

t

t

ttt

t

dtk

k

wΓwB

wBAAI

wBΦ

wBΦ

(7.12)

となる.ここに,

kk t BΓ = (7.13)

である.以上より,離散化されたシステム方程式は,

1111 −−−− += kkkkk wΓxΦx (7.14)

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-5

となる.

7.3 時間更新

時間更新における状態変数 xの期待値は,式 (7.14) とホワイトノイズの関係 0w =k

より,

( ) ( )+−−− = 11ˆ

kkk xΦx (7.15)

となる.ここで,2 種類の状態変数の誤差を,

( ) ( )

( ) ( )

−=

−=

++

−−

kkk

kkk

xxε

xxε

~~

ˆˆ (7.16)

と定義する. kε̂ は時間更新における誤差, kε~ は観測更新における誤差である. kε̂ の式に

式 (7.14) と式 (7.15) を代入すると,

( ) ( )

( )( )

1111

11111

111111

~

ˆ

ˆˆ

−−−−

−−−+−−

−−−−+−−

−=

−−=

+−=

kkkk

kkkkk

kkkkkkk

wΓεΦ

wΓxxΦ

wΓxΦxΦε

(7.17)

となる.この式を使うと,時間更新における共分散行列 Pの期待値は,

( ) ( )

T1

T111

T1

T111

T1

T111

T1

T111

T1

T111

T1

T111

T1

T111

T1

T111

T11111111

T

~

~~~

~

~~~

~~

ˆˆ

−−−−−−−−

−−−−−−−−

−−−−−−−−

−−−−−−−−

−−−−−−−−

+−

−=

+−

−=

−−=

=

kkkkkkkk

kkkkkkkk

kkkkkkkk

kkkkkkkk

kkkkkkkk

kkk

ΓwwΓΓwεΦ

ΦεwΓΦεεΦ

ΓwwΓΓwεΦ

ΦεwΓΦεεΦ

wΓεΦwΓεΦ

εεP

(7.18)

となり,4 項の和となる.ここで,第 1 項の期待値は時間更新前の共分散行列である.第

Inertial Navigation C7-03

7-6 © 2018 Futoshi Magosaki

2 項と第 3 項の期待値は,時間更新のノイズ 1−kw と観測更新の誤差 1~

−kε は相関が無いとし

て,ともに 0である.第 4 項の中の期待値はシステムノイズの共分散行列であり,

T

kkk wwQ = (7.19)

と定義する.以上より,共分散行列の式 (7.18) は,

( ) ( )T

111T

111 −−−−+−−− += kkkkkkk ΓQΓΦPΦP (7.20)

となる.

7.4 観測方程式

観測方程式が次の式で表されるものとする.

kkkk vxHz += (7.21)

ここに,zkは観測値,Hk は観測行列,xkは状態変数である.vkは観測ノイズであり,ホワ

イトノイズとする.状態変数 xk を n 行のベクトルとし,観測値 zk と観測ノイズ vkを l 行の

ベクトルとすると,観測行列Hkは l 行 n 列の行列となる.

観測ノイズ vk は平均値ベクトルが 0,共分散行列が Rk の正規分布に従うものとする.

( )

( )

−= jk

N

kjk

kk

Rvv

R0v

T

,~ (7.22)

ここに,共分散行列 Rkは l 行 l 列の正方行列であり,観測ノイズ vk (t) の要素同士に相関

が無い場合は対角行列となる.記号 Δ (k – j) は離散化されたデルタ関数であり,k = j のと

き 1,k ≠ j のとき 0 である.

7.5 観測更新

観測更新はカルマンフィルタの核心である.本書では,文献 11 による直観的な方法を使

って導く.確率論のベイズの公式に基づく証明は文献 1 がくわしく,わかりやすい.

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-7

観測直前における状態変数を x1 とし,観測によって得られた観測値に対応する状態変数

を x2 とする.この二つの状態変数 x1 と x2から推定される推定値を x̂ が,次の式に示すよ

うに表されるものとする.

( )

( )121

21ˆ

xxWx

WxxWIx

−+=

+−=

(7.23)

ここに,状態変数 xを n 行のベクトルとすると,IとWはともに n 行 n 列の正方行列であ

り,Iは単位行列,Wは観測更新の重みを表す行列である.もし重み行列W = I であれば

2ˆ xx = となり,重み行列W = 0 であれば 1

ˆ xx = となる.この重み行列Wはこの段階では

未定である.ここで,観測値 yと状態変数 xとの間には,次の観測方程式が成り立つもの

とする.

22 Hxy = (7.24)

ここに,行列 Hは観測行列である.さらに,重み行列Wが,観測行列 Hを使って,

KHW = (7.25)

と表されるものとする.重み行列Wは未定であるから,新たな行列 Kも未定である.こ

の式を式 (7.23) に代入すると,

( )( )121

121ˆ

HxHxKx

xxKHxx

−+=

−+=

(7.26)

となる.この式に式 (7.24) を代入して x2を消去すると,

( )

( ) 21

121ˆ

KxxKHI

HxyKxx

+−=

−+=

(7.27)

となる.ここで,両辺の期待値をとると,

( ) 21ˆ yKxKHIx +−= (7.28)

となる.式 (7.27) と式 (7.28) の差をとると,

Inertial Navigation C7-03

7-8 © 2018 Futoshi Magosaki

( ) ( ) ( )2211ˆˆ yyKxxKHIxx −+−−=− (7.29)

となる.この状態変数の偏差の共分散行列 Pは,

( )( )

( ) ( ) ( )( ) ( ) ( ) ( )( )

( ) ( ) ( )( ) ( ) ( ) ( )( )( ) ( )( ) ( )

( ) ( )( )

( )( ) ( )

( )( ) TT

2222

TT

1122

TT

2211

TT

1111

TT

22TT

112211

T

22112211

Tˆˆˆˆ

KyyyyK

KHIxxyyK

KyyxxKHI

KHIxxxxKHI

KyyKHIxxyyKxxKHI

yyKxxKHIyyKxxKHI

xxxxP

−−+

−−−+

−−−+

−−−−=

−+−−−+−−=

−+−−−+−−=

−−=

(7.30)

となり,4 項の和となる.ここで,次の式に示すように,観測更新前における状態変数 x1

の偏差の共分散行列を P1 とする.状態変数の偏差と観測値の偏差とは相関が無く,その共

分散行列は 0とする.観測値 yの偏差の共分散行列を Rとする.

( )( )

( )( )

( )( )

( )( )

=−−

=−−

=−−

=−−

Ryyyy

0xxyy

0yyxx

Pxxxx

T

2222

T

1122

T

2211

1

T

1111

(7.31)

これらの式を式 (7.30) に代入すると,

( ) ( ) TT1 KRKKHIPKHIP +−−= (7.32)

となる.展開すると,

( ) ( )

TTT1

TT111

TTT1

KRKKHKHPKHPKHPP

KRKKHIPKHIP

++−−=

+−−=

(7.33)

となる.共分散行列 Pの対角線上には状態変数の偏差の二乗(正値)が並んでいる.それ

らの対角要素の和,すなわち共分散行列 Pのトレース Tr (P) を最小化する未定行列 Kを

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-9

求める.そのため,トレース Tr (P) を行列Kで微分して 0とする.

( ) 0PA

=T rd

d (7.34)

この式に式 (7.33) を代入して,2.11 節に記したトレースに関する公式;

( ) ( ) ( )

( ) ( )

( ) ( )TT

TT

T r

T r,T r

T rT rT r

BBAABAA

BBAA

BABA

BAAB

+=

==

+=

d

d

d

d

d

d

を使うと,

( ) ( ) ( ) ( ) ( ) ( )( )

( ) ( ) ( )

( ) ( )0

RRKHHPHHPKHPHP

RRKHHPHHPKHPHP

KRKKHKHPKHPKHPPA

PA

=

++++−−=

++

++−−=

++−−=

TTT1

T1

T1

TT1

TTT1

T1

T1

T1

TTT1

TT111 T rT rT rT rT rT r

d

d

d

d

(7.35)

となる.ここで,共分散行列 P, Rはともに転置しても変わらない行列,すなわち対称行列

であるから,

T1

T1 , RRPP ==

である.よって,式 (7.35) は,

( )

( )( ) 1T

1T

1

T1

T1

T1

T1 222T r

−+=

=+

=++−=

RHHPHPK

HPRHHPK

0KRHKHPHPPAd

d

(7.36)

となり,未定の行列 Kが定まった.この行列 Kをカルマンゲイン (Kalman gain) と言う.

この行列 Kを共分散行列 Pの式 (7.33) に代入すると,

Inertial Navigation C7-03

7-10 © 2018 Futoshi Magosaki

( )( ) ( )

( ) 1

11

TT1

TT111

TT1

1T1

T1

TT111

TT1

TT111

PKHI

KHPP

KHPKHPKHPP

KRHHPRHHPHPKHPKHPP

KRHHPKKHPKHPPP

−=

−=

+−−=

+++−−=

++−−=

(7.37)

となる.式 (7.27),式 (7.36),式 (7.37) の添え字を書き改めると,

( ) ( ) ( )( )−−+ −+= kkkkkk xHzKxx (7.38)

( ) ( )( ) 1T −

−− += kT

kkkkkk RHPHHPK (7.39)

( ) ( ) ( )−+ −= kkkk PHKIP (7.40)

となる.

7.6 拡張カルマンフィルタのアルゴリズム

現実の技術的課題のシステム方程式や観測方程式の多くは線形方程式ではなく,非線形

方程式である.非線形のシステム方程式や観測方程式にも適用できるように拡張したカル

マンフィルタ,すなわち拡張カルマンフィルタ (extended Kalman filter, EKF) のまとめを表

7.2 に示す.

表 7.2 拡張カルマンフィルタ

システム方程式 ( )kkkkkkk N Q0wwΓxΦx ,~,1111 −−−− += 式 (7.41)

観測方程式 ( )kkkkkk N R0vvxHz ,~,+= 式 (7.42)

時間更新 ( )

( ) ( )T

111T

111 −−−−+−−−

+=

=

kkkkkkk

k

ΓQΓΦPΦP

0x

式 (7.43)

式 (7.44)

観測更新

( ) ( )( )( ) ( )( )( )

( ) ( ) ( )−+

−+

−−

−=

−=

+=

kkkk

kkkk

kT

kkkkkk

PHKIP

xHzKx

RHPHHPK

1T

式 (7.45)

式 (7.46)

式 (7.47)

カルマンフィルタの表 7.1 と比較すると,状態変数 xを状態変数の誤差δxに,観測値 z

を観測値の誤差δzに置き換えたものになっている.式 (7.44),式 (7.45),式 (7.47) の 3

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-11

式は変わらない.状態変数の時間更新の式は, ( ) ( )+−−− = 11 kkk xΦx となるが,その時間更

新の直前まで最も確からしい(最尤の)観測更新を行っているとの前提から,式 (7.43) と

なる.状態変数の観測更新の式は, ( ) ( ) ( )( )−−+ −+= kkkkkk xHzKxx となるが,式 (7.43)

を代入すると式 (7.46) となる.

7.7 可観測性

観測によって状態変数がすべて観測できることを可観測 (observable) と言う.本節で

は,カルマンフィルタが可観測か否かを判定する方法を記す.この方法の根拠は文献 2 を

参照されたい.

システム方程式と観測方程式を,

vHxz

BwAxx

+=

+=

とする.ここに,状態変数 xを n 行,係数行列 Aを n 行 n 列,観測行列 Hを m 行 n 列と

する.ここで,可観測性行列 (observability matrix) を記号 Uで表し,

=

−1nHA

HA

H

U

(7.48)

と定義する.ここに,部分行列 H, HA, ・・・, HAn–1 はいずれも m 行 n 列であるから,可観

測性行列 Uのサイズは (m × n) 行 n 列である.この可観測性行列 Uのランクが状態変数の

数 n であるなら可観測であり,ランクが n 未満であれば可観測ではない.なお,この判定

法にシステムノイズ wや観測ノイズ vは関わらない.システムノイズ wや観測ノイズ vが

大きいと正確な観測が困難となるが,それは本節の可観測性の問題とは別の問題である.

7.8 例題

機体の x 軸方向に加速度センサが固定されている.加速度センサのノイズはホワイトノ

イズ成分とバイアスのランダムウォーク成分を含んでいる.機体が水平面内で静止してい

るとき,その静止情報を観測値として,加速度センサのバイアスを推定するカルマンフィ

Inertial Navigation C7-03

7-12 © 2018 Futoshi Magosaki

ルタを作る.

(1) システム方程式

機体の運動方程式は,加速度センサの出力にバイアスが含まれる場合,

bfv −= (a)

と表される.ここに,v は x 軸方向の速度,f は加速度センサの出力,b は加速度センサ出

力に含まれるバイアス成分である.この運動方程式の誤差方程式は,

=

−=

2

1

wb

bwv

(b)

となる.ここに,δv は x 軸方向の速度誤差,δb は加速度センサのバイアス誤差,w1 は加速

度センサのホワイトノイズである.w2 は加速度センサのバイアスのランダムウォークを生

じさせるホワイトノイズ入力である.行列を使って表すと,

+

−=

2

1

00

10

w

w

b

v

b

v

(c)

となる.

(2) 観測方程式

速度を観測する観測方程式は,

vb

vz +

=

01 (d)

となる.ここに,v は観測ノイズである.

(3) 可観測性

可観測性行列 Uの式 (7.48) における係数行列 Aと観測行列 Hは,

01,00

10=

−= HA (e)

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-13

である.HA, HA2 を計算すると,

=

−−=

−=

−=

0000

1010

1000

1001

2HA

HA

(f)

となるから,可観測性行列 Uは,

−=

=

00

10

01

2HA

HA

H

U (g)

となる.この行列のランクは 2 であり,状態変数の数に一致するから,可観測と判定され

る.

(4) システム方程式の離散化

推移行列Φは式 (7.11) より,

−=

−+

=

+=

10

1

00

10

10

01 tt

tAIΦ

(h)

となる.なお,式 (7.11) は時間間隔 Δt の 2 次以上の項を無視した近似式であるが,この

例題の場合は,

=

−=

00

00

00

10

00

102A

となるから,厳密な式 (7.10) を使った推移行列とも言える.

システムノイズは式 (7.13) より,

==

2

1

w

wtt Bww (i)

となる.ここに,

Inertial Navigation C7-03

7-14 © 2018 Futoshi Magosaki

t

KNw

t

NNw ,0~,,0~ 21 (j)

である.したがって,離散化されたシステム方程式は,

+

−=

+−− 2

1

)(1)(10

1

w

wt

b

vt

b

v

kk

(k)

となる.

(5) 時間更新

状態変数の時間更新は,

( )( )

=

−+=

+−−

−+−−

)(1)(

)(1)(

kk

kkkk

bb

tbfvv (l)

となる.共分散行列 Pの時間更新の式 (7.44) の第 1 項を計算すると,

( )

)(1222221

22122

22211211

)(1222221

121211

)(12221

1211T1)(11

10

1

1

01

10

1

+−

+−

+−

−+−−

−++−=

−=

−=

k

k

k

kkk

ptpp

tpptptppp

ptpp

ptppt

tpp

pptΦPΦ

(m)

となる.システムノイズの共分散行列は式 (i) より,

==−−− 2212

212

12TT111

www

wwwtkkk wwΓQΓ (n)

となる.ここで,ノイズ w1 と w2との間に相関が無いこと,および式 (j) より,

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-15

=

=−−−tK

tN

t

Kt

N

tkkk 2

2

2

2

2T111

0

0

0

0ΓQΓ (o)

となる.よって,共分散行列 Pの時間更新の式 (7.44) は,

( )

+

−++−=

+−−tK

tN

ptpp

tpptptppp

pp

pp

kk

2

2

)(1222221

22122

22211211

)(2221

1211

0

0 (p)

となる.

(6) 観測更新

観測ノイズの共分散行列は,この例題の場合はスカラーであり,

Rvk == 2R (q)

と表される.式 (7.45) よりカルマンゲインを求めると,

( )

+=+

=

=

+=+

=

=

=

=

21

11

11

111

21

11

2

1

11)(

11

21

11)(

21

11

2221

1211)(

1

01

0

1

p

p

RpRp

p

p

k

k

Rp

pp

p

p

p

pp

pp

k

kT

kkk

Tkkk

Tkk

K

RHPH

HPH

HP

(r)

となる.速度の観測値が 0(静止)であるから,観測誤差は,

( ) ( )−− −=−= kkk vv0z (s)

となる.式 (7.46) より状態変数の観測更新は,

Inertial Navigation C7-03

7-16 © 2018 Futoshi Magosaki

( )

( )

−=

−=

+=

−−+

−−+

−+

kkk

kkk

kkkk

vkbb

vkvv

2)()(

1)()(

)()( zKxx

(t)

となる.共分散行列 Pの観測更新は,式 (7.47) より,

( )

( ) ( )

)(1222211221

121111

)(2221

1211

2

1

)(

2

1

)(2

1

)()(

11

1

01

0

0

10

01

01

−+

−−

−−=

−=

=

−=

−=

k

k

k

k

kkkk

pkppkp

pkpk

pp

pp

k

k

Pk

k

Pk

kI

PHKIP

(u)

となる.

(7) シミュレーション

Excel の乱数生成の機能を使って生成した加速度センサの出力とバイアスを図 7.2 に示

す.ホワイトノイズのパワースペクトル密度の係数 Hzmg1=N ,ランダムウォークの

パワースペクトル密度の係数 smg1=K ,時間間隔 Δt = 0.1 s とした.

図 7.2 加速度センサの出力とバイアス

Inertial Navigation C7-03

© 2018 Futoshi Magosaki 7-17

Excel でカルマンフィルタを作成して,バイアス推定を行った結果を図 7.3 に示す.推定

値が真値を追跡できていることがわかる.速度 v = 0 の観測誤差の分散 R = 0.0012 (m/s)2 と

した.機体が静止しているとの前提より,R = 0 とすると,計算にエラーが生じやすい.

式 (r) の分母が 0 または負となることがあるためである.

図 7.3 バイアスの真値と推定値

共分散行列 Pの時間変化を図 7.4 に示す.縦軸は対角要素 p11 と p22の平方根である.p22

の平方根はバイアス推定誤差 δb の偏差を意味し,約 0.01 m/s2 に収束している.図示はし

ないが,非対角要素の p12 と p21の値は等しく,符号は負となっている.

図 7.4 共分散行列 Pの時間変化

Inertial Navigation C7-03

7-18 © 2018 Futoshi Magosaki

この例題のような考え方によってセンサのバイアスを推定する方法は,零速度更新

(zero velocity update) と呼ばれ,実際の慣性計測装置でもしばしば利用される.

参考文献

1) 加藤寛一郎,最適制御入門 レギュレータとカルマンフィルタ,東京

大学出版会,1987

2) 小郷寛,美多勉,システム制御理論入門,実教出版,1979

3) 志甫徹,誘導制御を伴なう宇宙航行系プログラムの軌道推定に関する

理論構成,航空宇宙技術研究所報告 TR-1032,航空宇宙技術研究所,

1989

4) K. R. Britting, Inertial Navigation Systems Analysis, John Wiley & Sons,

1971

5) J. A. Farrell, M. Barth, The Global Positioning System & Inertial Navigation,

McGraw-Hill, 1998

6) A. Gelb, Applied Optimal Estimation, M. I. T. Press, 1974

7) M. S. Grewal, A. P. Andrews, Kalman Filtering Theory and Practice Using

MATLAB, 2nd Edition, Wiley, 2001

8) M. S. Grewal, L. R. Weill, A. P. Andrews, Global Positioning Systems,

Inertial Navigation, and Integration, Wiley, 2001

9) P. D. Groves, Principles of GNSS, Inertial, and Multisensor Integrated

Navigation Systems, Artech House, 2008

10) R. M. Rogers, Applied Mathematics in Integrated Navigation Systems, 3rd

Edition, AIAA, 2007

11) D. H. Titterton, Strapdown Inertial Navigation Technology, 2nd Edition,

AIAA, 2004

12) R. G. Brown, P. Y. C. Hwang, Introduction to Random Signals and Applied

Kalman Filtering, 3rd Edition, John Wiley & Sons, 1997

13) R. E. Kalman, A New Approach to Linear Filtering and Prediction Problems,

Trans. ASME, J. Basic Eng., vol.82D, pp. 35-45, 1960