ASEN 5070: Statistical Orbit Determination I Fall 2015 Professor Brandon A. Jones

advertisement
ASEN 5070: Statistical Orbit Determination I
Fall 2015
Professor Brandon A. Jones
Lecture 20: Project Discussion and
Introduction to the Kalman Filter
University of Colorado
Boulder

Homework 6 Due Friday

No lecture quiz this week

Exam 1 Returned Monday (10/19)
University of Colorado
Boulder
2
Term Project Introduction
University of Colorado
Boulder
3

The OD project consists of
◦ Deriving the algorithms for estimating the state of a
spacecraft
◦ Implementing the algorithms
◦ Processing range and range-rate observations from
three ground-stations
University of Colorado
Boulder
4

3 Ground-based tracking stations
◦ Equatorial station’s position fixed in filter

Dynamics Model
◦
◦
◦
◦
Two-body, unknown μ
Also estimating J2
Drag with unknown CD
Already completed!
◦ Simple spherical satellite with known mass and area
University of Colorado
Boulder
5




University of Colorado
Boulder
Estimate satellite position
and velocity in ECI
Constants governing
satellite dynamics
Station positions on
Earth’s surface (ECEF)
18x1 state vector
6

Unknown ground tracking station positions
◦ Boat in Pacific at equator
 Equatorial station still estimated, but a priori
covariance is very small
◦ Turkey
◦ Greenland
University of Colorado
Boulder
7

Range (m) and range-rate (m/s)
◦ Range: Zero mean, σ = 1 cm
◦ Range-Rate: Zero mean, σ = 1 mm/s

There is an observation at t=0 !

Observation intervals do not overlap
◦ Number of observations at a given time always
equals 2
◦ Would add more complexity to the filter
University of Colorado
Boulder
8

Derive A and H_tilde and implement the
partials in software
◦ Use the symbolic toolbox with the jacobian()
command
◦ Don’t include calls to symbolic toolbox in ode45()
derivative function!

Add numeric integration of STM to you HW2
propagator
◦ Check intermediate results with the website
University of Colorado
Boulder
9

Implement a batch least squares filter to
estimate the state and get an error covariance
◦ Results from first iteration are provided as your
homework 9

Implement a Kalman/Sequential filter to
estimate the state and error covariance
◦ Completed with HW 10
University of Colorado
Boulder
10


Discussion of OD problem and batch
processor in the report
Discuss the results
◦ Compare results from the Kalman and LS filters

Plots:
◦ Residuals
◦ Covariance
◦ Error ellipsoids (more in future lecture)
University of Colorado
Boulder
11

Process one data type at a time
◦ Range-only processing
◦ Range-rate only
◦ Compare results (which does better?)

Discussion of results
University of Colorado
Boulder
12

The previous tasks get you a maximum score of
90/100

Additional elements boost your grade from there
◦ Extended Kalman filter (EKF needed for StatOD 2
anyway)
◦ Potter Filter
◦ Givens transformations
◦ Smoothing
◦ Interval processing of data
◦ Others…

The additional elements is your chance to further
explore a topic of interest covered in class
University of Colorado
Boulder
13


Satellite state estimated and propagated in the
inertial frame:
Dynamics solve-for parameters are
(fundamentally) not tied to a coordinate system:

Ground-station locations are in the Earth-fixed
frame:
University of Colorado
Boulder
14


Since the ground stations are in the Earth-fixed
frame, we assume:
Hence, we have:
University of Colorado
Boulder
15


The portions of the reference state requiring integration
only includes the spacecraft position and velocity
Strictly speaking, we only need to propagate a 6 × 9 STM
University of Colorado
Boulder
16
All of these need to be in
the same reference frame!

We recommend including this transformation
in the measurement model:
University of Colorado
Boulder
17

Although the project description includes an
absolute epoch time (3 Oct. 1999), you do
not need this information

You can use:

We give you the rotation rate and t is the
provided measurement time

In the real world, time and coordinate
systems are not this easy!
University of Colorado
Boulder
18

Compare to solution online

Results available as .txt and .mat
◦ Results generated for the .txt files did not use ode45()!
◦ Results in .mat file appear to have used Rel/Abs
tolerances of 1e-11
◦ Python users can load .mat files using scipy.io.loadmat().

Note: some elements of the project website will
be updated later in the semester (suggestions
and rubric)
University of Colorado
Boulder
19


We ask for relative differences to quickly
identify differences between your result and
the one online:
Example:
University of Colorado
Boulder
20
Conventional Kalman Filter (CKF)
University of Colorado
Boulder
21

Given from a previous filter:

We have new a observation and mapping matrix:

We can update the solution via:
University of Colorado
Boulder
22

Two principle phases in any sequential estimator
◦ Time Update
 Map previous state deviation and covariance matrix to the
current time of interest
◦ Measurement Update
 Update the state deviation and covariance matrix given the
new observations at the time of interest

Jargon can change with communities
◦ Forecast and analysis
◦ Prediction and fusion
◦ others…
University of Colorado
Boulder
23

We still have to invert an n × n matrix

Can be computationally expensive for large n
◦ Gravity field estimation: ~n2+2n-3 coefficients!

May become sensitive to numeric issues
University of Colorado
Boulder
24

Is there a better sequential processing
algorithm?
◦ YES! – This equations above may be manipulated to
yield the Kalman filter
University of Colorado
Boulder
25

Today – Outline derivation starting with the
minimum variance estimator
◦ Demonstrates mathematical equivalence of CKF and
Batch
◦ Make sure you understand the derivation presented
in the book!

Wednesday – Derivation as a solution to Bayes
theorem
◦ Demonstrates strengths of Kalman filter in context
of probability/statistics
◦ Also helps to understand impacts of assumptions
University of Colorado
Boulder
26

Schur Identity (Appendix B, Theorem 4):
(Yes, it will simplify things…)
University of Colorado
Boulder
27
Kalman Gain
University of Colorado
Boulder
28
University of Colorado
Boulder
29

Instead inverting a p×p matrix

Mathematically equivalent to the batch least squares, minimum variance
estimator, etc.

Also provides a solution to the least squares minimization problem

Yields a new set of problems in filtering (to be covered later)
University of Colorado
Boulder
30
Does not map to epoch time!
Note the use of Htilde
University of Colorado
Boulder
31
Download