Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Preliminaries
r =position vector of vehicle wrt center of Earth
ωC
B/A = angular velocity of frame B wrt frame A or as observed from frame A and
coordinatized in frame C
ω B/A = −ω A/B
ω C/A = ω C/B + ω B/A
For each ω C
B/A , we can form the angular-rate matrix, also know as the angular-rate
cross-product matrix.
0 −ω CB/A (3) ωCB/A (2)
ΩCB/A
ωC B/A (3) 0 −ω CB/A (1)
C C
−ω B/A (2) ω B/A (1) 0
If ω C D D
B/A = TC ω B/A , then it is easy to show that
ΩC D D C
B/A = TC ΩB/A TD
1
Navigation Equations for Inertially Stabilized Gimbaled Plat-
form
• An inertial frame is ”instrumented”
• When the platform is held fixed and aligned with an inertial frame the, the
navigation equations are
ˆṙI = v̂II , v̇
ˆ II = ãII,non−grav + gI (r̂I )
2
Navigation Equations for a Strapdown System
• Measure anon−grav in the body frame, ãB
non−grav
where Ω̃B B
B/I is the cross-product matrix of ω̃B/I
B
• ω̃B/I are the gyro measurements
3
Simplified Error Analysis and Effects of Sensor Errors
A simple method that is often used to conduct an error analysis for inertial naviga-
tion systems is Monte Carlo analysis. The basic idea is to systematically introduce
errors into the navigation equations, generate 100’s or 1000’s of trajectories, and then
compare the results to an error free trajectory.
The error free trajectory or error free navigation state estimates are obtained by
integrating the following equations
ṙI = vII
v̇II = TIB aB I I
I,non−grav + g (r )
and the accelerometers may have errors due to accelerometer noise (ν accel ), bias
(baccel ), and scale factor (saccel ), misalignment (²), g2 -sensitivity (kg2 ), and g3 -sensitivity
(kg3 ).
a2 a3
ãB B
I,non−grav = [I−(²×)][I+Diag(saccel )]aI,non−grav+ baccel + kg 2 + kg3 2 + ν accel(8)
ge ge
2
a a3
= [I + Eaccel ][I + Saccel ]aB
I,non−grav + b accel + k g 2 + k g 3 + ν accel (9)
ge ge2
where a = |aB 2
I,non−grav | and ge = 9.81 m/s .
4
Linear Covariance Analysis
Instead of doing a Monte Carlo analysis that requires hundreds or thousands of runs,
a linear covariance analysis may be more useful. A linear covariance analysis can be
used to compute the same statistics as a Monte Carlo analysis, but in only one run.
The basic idea is to linearize the navigation equations of motion about the true
error-free trajectory. Once the equations are linearized, the covariance of the naviga-
tion errors is easily determined using well known stochastic linear system theory.
The non-linear navigation equations are obtained by substituting Eq. 10, and Eq.
11 into Eqs. 1-5. If we select the state vector to be
¡ ¢T
x= rI vII θ B sgyro bgyro ² saccel baccel kg2 kg3
δ ṙI = δvII
¯
I ∂gI ¯¯ B
δ v̇I = δrI + TIB [aB
I,non−grav ×]δθ +
∂rI ¯nom
¡
TIB −[²×]aB B
I,non−grav + Diag(saccel )aI,non−grav + baccel +
¶
a2 a3
kg2 + kg3 2 + ν accel
ge ge
B B
δ θ̇ = −ω B B
B/I × δθ + Diag(sgyro )ω B/I + bgyro + ν gyro
sgyro = 03×1
bgyro = 03×1
² = 03×1
saccel = 03×1
baccel = 03×1
kg2 = 03×1
kg3 = 03×1
where
03×3 I3×3 03×3 03×3 03×3 03×3 03×3 03×3 03×3 03×3
Fv,r 03×3 Fv,θ 03×3 03×3 Fv,² Fv,saccel Fv,baccel Fv,kg2 Fv,kg3
F =
03×3 03×3 Fθ,θ Fθ,sgyro Fθ,bgyro 03×3
03×3 03×3 03×3 03×3
021×3 021×3 021×3 021×3 021×3 021×3 021×3 021×3 021×3 021×3
5
03×3 03×3
I3×3 03×3
G=
03×3 I3×3
021×3 021×3
¯
∂gI ¯¯
Fv,r = I ¯ , Fv,θ = TIB [aB B B
I,non−grav ×], Fv,² = TI [aI,non−grav ×]
∂r nom
a2 a3
Fv,saccel = TIB Diag(aB B B
I,non−grav ), Fv,baccel = TI , Fv,kg2 = TI , Fv,kg3 = TIB 2
ge ge
and
Fθ,θ = −[ω B B
B/I ×], Fθ,sgyro = Diag(ω B/I ), Fθ,bgyro = I3×3
end
·µ ¶ ¸ µ ¶
ν accel ¡ ¢ Qaccel δ(t − τ ) 0
Q=E ν Taccel ν Tgyro =
ν gyro 0 Qgyro δ(t − τ )
where
Φi = exp F ∆t ≈ I + F ∆t + F 2 ∆t2 /2
6
Example - Initialization of IMU Systems
• Spacecraft Attitude/Orientation Initialization
– Star-trackers
– Sun sensors
– Horizon sensors
– Magnetometers
– GPS
– Ground uplink
– Celestial Navigation ?
iB
down × ω̃ gyro
iB
east = B
|idown × ω̃ gyro |
iB B B
north = ieast × idown
{idown }T
B
7
– Using the known position vector, determine the earth-fixed to NED coor-
dinate transformation (direction cosine matrix)
rEF iEF
down × ẑ
iEF
down = − , iEF
east = EF
, iEF EF EF
north = ieast × idown
|rEF | |idown × ẑ|
EF T
{inorth }
TEF →N ED = {iEF east }
T
{iEF
down }
T
8
Applications of Kalman Filters in Inertial Navigation Systems
A typical Kalman filter design approach for an inertial navigation system begins with
a model for the gyro and accelerometer measurements. The gyro data can have errors
due to gyro noise (ν gyro ), bias (bgyro ), and scale factor (sgyro ),
ω̃ B B
B/I = [I + Diag(sgyro )]ω̃ B/I + bgyro + ν gyro (10)
and the accelerometers may have errors due to accelerometer noise (ν accel ), bias
(baccel ), and scale factor (saccel ), and misalignment (²).
ãB B
I,non−grav = [I−(²×)][I+Diag(saccel )]aI,non−grav+ baccel + ν accel (11)
If these are the models for the gyro and accelerometer measurements, then the design
models for the true dynamics are given by
ẋ = f (x) + Gw
ṙI = vI
v̇I = TIB (qIB ){[I + (²×)][I − Diag(saccel )]ãB I
I,non−grav − baccel − ν accel } + g(r )
1 I
q̇BI = qB ⊗ {[I − Diag(sgyro )]ω̃ B
B/I − bgyro − ν gyro }
2
ḃgyro = 0
ṡgyro = 0
ḃaccel = 0
ṡaccel = 0
²̇ = 0
Notice that the true position, velocity, and attitude is recovered by eliminating the
effect of the accelerometer and gyro error sources.
9
Using the above design model, we can build an extended Kalman filter. The
expected value of the states can be propagated in between non-inertial measurements:
r̂˙ I = v̂I
v̂˙ I = TIB (q̂IB ){[I + (²̂×)][I − Diag(ŝaccel )]ãB I
I,non−grav − b̂accel + g(r̂ )
1 I
q̂˙BI = q̂B ⊗ {[I − Diag(ŝgyro )]ω̃ B
B/I − b̂gyro }
2
˙
b̂gyro = 0
ŝ˙ gyro = 0
˙
b̂accel = 0
ŝ˙ accel = 0
²̂˙ = 0
δ ẋ = F δx + Gw
and in between non-inertial measurements the covariance of the state error can be
propagated using
Pi+1 = ΦPi ΦTi + Qd
where
Φi = I + Fi ∆t + Fi2 ∆T 2 /2
¯
∂f ¯¯
Fi =
∂x ¯ x̂i
and
Qd ≈ GQGT ∆t
Now, when a non-inertial measurement is available, for example, z̃ = h from an
altimeter, or z̃ = ṙ from a doppler measurement, or z̃ = rEF from GPS we can
process the measurement in the standard manner
x+ = x− + K(z̃ − ẑ)
10