Research Article

Highly Efficient Sigma Point Filter for Spacecraft Attitude and Rate Estimation

Table 5

Pseudocode and computational expense evaluation of the MGSPF algorithm.

Algorithm × +

Initialize ̂ 𝐱 0 ̂ 𝐚 = [ 𝑇 0 ̂ 𝐛 , Δ 𝑇 0 ] 𝑇 = 𝟎 6 × 1 , ̂ 𝐪 0 = [ 𝟎 𝑇 3 × 1 , 1 ] 𝑇 , ̂ 𝐛 0 = 𝟎 3 × 1
𝐏 𝐴 0 = 𝜀 2 𝑎 𝐈 3 , 𝐏 0 𝐵 𝐴 = 𝜀 𝑎 𝜀 𝑏 𝐈 3     m = 4
𝐒 𝑄 𝐴 𝑘 1 = 𝑇 ( ( 6 𝜎 2 A R W 𝑇 2 𝜎 2 R R W ) / 1 2 ) 𝐈 3 𝐒 𝑄 𝐵 𝑘 1 = ( 𝜎 R R W 𝑇 / 2 ) 𝐈 3

Propagation 𝐒 𝐴 𝑘 1 = 𝐏 𝐴 𝑘 1 , 𝐒 𝐵 𝐴 𝑘 1 = 𝐏 𝐵 𝐴 𝑘 1 / ( 𝐒 𝐴 𝑘 1 ) 𝑇 2513 3
𝑎 𝑘 1 = ( 𝐒 𝐴 𝑘 1 + 𝐒 𝑄 𝐴 𝑘 1 ) 𝖀 𝐺 𝑆 , 𝕭 𝑘 1 = ( 𝐒 𝐵 𝐴 𝑘 1 𝐒 𝑄 𝐵 𝑘 1 ) 𝖀 𝐺 𝑆 054
𝝎 𝑘 1 = 𝜔 m e a s 𝑘 1 ̂ 𝐛 𝑘 1 , 𝜔 𝑘 1 𝝎 = | 𝑘 1 | , 𝜙 𝑘 1 = 𝜔 𝑘 1 𝑇 6 5 1
̂ 𝐪 𝝎 𝑘 1 𝝓 = [ 8 𝑇 𝑘 1 𝜙 , ( 1 6 2 𝑘 1 ) ] 𝑇 𝜙 / ( 1 6 + 2 𝑘 1 ) 6 2
For 𝐢 = 𝟏 𝐦 ,   𝝓 𝜷 ( 𝑖 ) 𝑘 1 𝝎 = ( 𝑘 1 𝜷 ( 𝑖 ) 𝑘 1 ) 𝑇 3m 3m
𝐪 𝜷 ( 𝑖 ) 𝑘 1 = [ 8 𝝓 𝜷 ( 𝑖 ) 𝑇 𝑘 1 , ( 1 6 𝜙 𝜷 ( 𝑖 ) 2 𝑘 1 ) ] 𝑇 / ( 1 6 + 𝜙 𝜷 ( 𝑖 ) 2 𝑘 1 ) 6m 2m
𝐪 𝜶 ( 𝑖 ) 𝑘 1 = [ 8 𝜶 ( 𝑖 ) 𝑇 𝑘 1 , ( 1 6 𝛼 ( 𝑖 ) 2 𝑘 1 ) ] 𝑇 / ( 1 6 + 𝛼 ( 𝑖 ) 2 𝑘 1 ) 6m 2m

𝐪 𝜶 ( 𝑖 ) 𝑘 / 𝑘 1 ̂ = ( 𝐪 𝜔 𝑘 1 ) 1 𝐪 𝜶 ( 𝑖 ) 𝑘 1 𝐪 𝜷 ( 𝑖 ) 𝑘 1 32m 24m
𝜶 ( 𝑖 ) 𝑘 / 𝑘 1 = 4 𝐪 𝜶 ( 𝑖 ) 𝑘 / 𝑘 1 / ( 1 + 𝑞 4 𝜶 ( 𝑖 ) 𝑘 / 𝑘 1 ) end 5m 1m
𝕭 𝑘 / 𝑘 1 = 𝕭 𝑘 1 , 𝖅 𝑘 / 𝑘 1 = 𝑎 𝑘 / 𝑘 1
̂ 𝐚 𝑘 / 𝑘 1 = ( 1 / 𝑚 ) 𝑎 𝑘 / 𝑘 1 𝟏 1 × 𝑚 1 × 𝑚 , Δ ̂ 𝐛 𝑘 / 𝑘 1 ̂ 𝐛 = Δ 𝑘 1 = 𝟎 3 × 1 3 3( 𝑚 1 )
𝑎 𝑘 / 𝑘 1 = 𝑎 𝑘 / 𝑘 1 𝟏 1 × 𝑚 ̂ 𝐚 𝑘 / 𝑘 1 3m
𝐏 𝐴 𝑘 / 𝑘 1 = ( 1 / 𝑚 ) 𝑎 𝑘 / 𝑘 1 ( 𝑎 𝑘 / 𝑘 1 ) 𝑇 6 + 6 𝑚 6( 𝑚 1 )
𝐏 𝐵 𝐴 𝑘 / 𝑘 1 = ( 1 / 𝑚 ) 𝕭 𝑘 / 𝑘 1 ( 𝑎 𝑘 / 𝑘 1 ) 𝑇 9 + 9 𝑚 9( 𝑚 1 )
̂ 𝐪 𝑘 / 𝑘 1 = ̂ 𝐪 𝑘 1 ̂ 𝐪 𝝎 𝑘 1 , ̂ 𝐪 𝑘 / 𝑘 1 = ̂ 𝐪 𝑘 / 𝑘 1 ̂ / 𝐪 𝑘 / 𝑘 1 2215 1
̂ 𝐛 𝑘 / 𝑘 1 = ̂ 𝐛 𝑘 1

For 𝑚 = 4 351 285 5

Measurement update ̂ 𝑧 𝑘 / 𝑘 1 = ( 1 / 𝑚 ) 𝖅 𝑘 / 𝑘 1 1 𝑚 × 1 3 3( 𝑚 1 )
𝖅 𝑘 / 𝑘 1 = 𝖅 𝑘 / 𝑘 1 𝟏 1 × 𝑚 ̂ 𝑧 𝑘 / 𝑘 1 3m
𝐏 𝑍 𝑘 / 𝑘 1 = ( 1 / 𝑚 ) 𝖅 𝑘 / 𝑘 1 𝖅 𝑇 𝑘 / 𝑘 1 + 𝐑 𝑘 6 + 6 𝑚 9 ( 𝑚 1 ) + 3
𝐏 𝐴 𝑍 𝑘 / 𝑘 1 = ( 1 / 𝑚 ) 𝑎 𝑘 / 𝑘 1 𝖅 𝑇 𝑘 / 𝑘 1 9 + 9 𝑚 9 ( 𝑚 1 )
𝐏 𝐵 𝑍 𝑘 / 𝑘 1 = ( 1 / 𝑚 ) 𝕭 𝑘 / 𝑘 1 𝖅 𝑇 𝑘 / 𝑘 1 9 + 9 𝑚 9 ( 𝑚 1 )
𝐊 𝑘 𝐴 𝑍 = 𝐏 𝐴 𝑘 / 𝑘 1 ( 𝐏 𝑍 𝑘 / 𝑘 1 ) 1 , 𝐊 𝑘 𝐵 𝑍 = 𝐏 𝐵 𝐴 𝑘 / 𝑘 1 ( 𝐏 𝑍 𝑘 / 𝑘 1 ) 1 114 58
𝛿 𝐪 m e a s 𝑘 = 𝐪 1 𝑘 / 𝑘 1 𝐪 m e a s 𝑘 16 12
𝑧 m e a s 𝑘 = 4 𝐪 m e a s 𝑘 / ( 1 + 𝑞 4 m e a s 𝑘 ) , 𝜸 m e a s 𝑘 = ̂ 𝑧 m e a s 𝑘 ̂ 𝑧 𝑘 / 𝑘 1 5 4
̂ 𝐚 𝑘 = 𝐊 𝑘 𝐴 𝑍 𝜸 m e a s 𝑘 , Δ ̂ 𝐛 𝑘 = 𝐊 𝑘 𝐵 𝑍 𝜸 m e a s 𝑘 1812
𝐏 𝐴 𝑘 = 𝐏 𝐴 𝑘 / 𝑘 1 𝐊 𝑘 𝐴 𝑍 ( 𝐏 𝐴 𝑍 𝑘 / 𝑘 1 ) 𝑇 2727
𝐏 𝑘 𝐵 𝐴 = 𝐏 𝐵 𝐴 𝑘 / 𝑘 1 𝐊 𝑘 𝐵 𝑍 ( 𝐏 𝐴 𝑍 𝑘 / 𝑘 1 ) 𝑇 2727
𝐏 𝐵 𝑘 = 𝐏 𝐵 𝑘 / 𝑘 1 𝐊 𝐵 𝑍 𝑘 / 𝑘 1 ( 𝐏 𝐵 𝑍 𝑘 / 𝑘 1 ) 𝑇 2727
̂ 𝐪 𝑘 = ̂ 𝐪 𝑘 / 𝑘 1 𝛿 ̂ 𝐚 𝐪 ( 𝑘 ) , ̂ 𝐪 𝑘 = ̂ 𝐪 𝑘 ̂ / 𝐪 𝑘 2215 1
̂ 𝐛 𝑘 = ̂ 𝐛 𝑘 / 𝑘 1 ̂ 𝐛 + Δ 𝑘 3

For 𝑚 = 4 379 278 1