4.2 Sensor Fusion Basics
Spacecraft guidance, navigation, and control algorithms require an estimate of the vehicle state before they can determine how the spacecraft should manoeuvre or how its actuators should respond.
Section 4.1 introduced spacecraft sensors and showed that onboard instruments do not provide perfect knowledge of the true spacecraft state. Instead, each sensor observes only particular physical quantities and produces measurements affected by noise, bias, drift, scale-factor error, sampling, latency, finite resolution, and other imperfections.
Furthermore, no individual sensor normally observes every state quantity required by a complete spacecraft GNC system.
For example,
- a gyroscope measures angular velocity,
- an accelerometer measures specific force,
- a magnetometer measures the local magnetic-field vector,
- a star tracker provides an absolute attitude observation,
- a Sun sensor provides a measured Sun direction,
- a GNSS receiver provides navigation information such as position, velocity, and time,
- a camera may provide relative bearing, image features, line-of-sight direction, or relative pose,
- a LiDAR may provide relative range, range rate, geometry, point-cloud information, or target pose.
These measurements provide different pieces of information about the spacecraft state.
Sensor fusion is the process of combining measurements from multiple sensors, together with knowledge of spacecraft dynamics or kinematics, to produce a more accurate, robust, and useful estimate of the spacecraft state.
General Sensor-Fusion Concept
The fundamental information chain is
\[ \boxed{\text{Spacecraft Dynamics}} \rightarrow \boxed{\text{Sensors}} \rightarrow \boxed{\text{Measurements}} \rightarrow \boxed{\text{Sensor Fusion / State Estimator}} \rightarrow \boxed{\hat{\mathbf x},\mathbf P}. \]
Here,
- \(\hat{\mathbf x}\) represents the estimated spacecraft state,
- \(\mathbf P\) represents the uncertainty associated with that state estimate.
The state estimate may contain quantities such as position, velocity, attitude, angular rate, sensor biases, target-relative position, target-relative velocity, and other parameters required by the mission.
The estimator therefore forms the bridge between the raw spacecraft measurements developed in Section 4.1 and the guidance and control algorithms that require reliable state information.
Why Sensor Fusion Is Needed
The purpose of sensor fusion is not simply to average several sensor measurements.
Different sensors may observe completely different physical quantities, may operate at different update rates, may have different accuracy levels, and may fail or become unavailable under different conditions.
A practical estimator must therefore determine how information from different sensors should be combined in a mathematically consistent way.
Different Sensors Have Different Strengths
Consider spacecraft attitude determination.
A gyroscope provides a high-rate measurement of angular velocity:
\[ \boldsymbol{\omega}_m. \]
The angular-rate measurement can be integrated or used inside a quaternion kinematic equation to propagate the spacecraft attitude.
Conceptually,
\[ \boldsymbol{\omega}_m \rightarrow \boxed{\text{Attitude Propagation}} \rightarrow \hat{\mathbf q}^{-}. \]
The propagated attitude can be available at a high update rate. However, even a small gyroscope bias can accumulate during integration and gradually cause the attitude estimate to drift.
A star tracker behaves differently.
Instead of measuring angular velocity, it can provide a highly accurate absolute attitude observation:
\[ \mathbf q_{ST}. \]
The star tracker normally operates at a lower update rate than the gyroscope and may temporarily lose measurements because of Sun exclusion, Earth or Moon interference, blinding, tracking loss, or spacecraft motion.
The two sensors therefore provide complementary information.
\[ \boxed{\text{Gyroscope}} \rightarrow \text{High-rate attitude propagation} \]
while
\[ \boxed{\text{Star Tracker}} \rightarrow \text{Accurate absolute attitude reference}. \]
Combining the two gives
\[ \boxed{\text{Gyro Prediction}} + \boxed{\text{Star Tracker Correction}} \rightarrow \boxed{\text{High-Rate Drift-Corrected Attitude Estimate}}. \]
Translational Navigation Example
The same principle applies to translational navigation.
An inertial measurement unit can support high-rate propagation of velocity and position using accelerometer and gyroscope measurements.
However, inertial-navigation errors accumulate with time because accelerometer bias, gyro bias, attitude error, and measurement noise are integrated into velocity and position.
GNSS provides an independent absolute navigation reference that can periodically correct this accumulated error.
Therefore,
\[ \boxed{\text{IMU High-Rate Propagation}} + \boxed{\text{GNSS Absolute Correction}} \rightarrow \boxed{\text{Improved Position / Velocity Estimate}}. \]
Sensor fusion therefore exploits the strengths of one sensor to compensate for the limitations of another.
True State, Sensor Measurement, and Estimated State
Three quantities must be clearly distinguished when studying sensor fusion:
\[ \boxed{\text{True State}} \qquad \boxed{\text{Sensor Measurement}} \qquad \boxed{\text{Estimated State}}. \]
True State
The true state represents the actual physical condition of the spacecraft.
A representative state may be written as
\[ \mathbf x_k = \begin{bmatrix} \mathbf r_k \\ \mathbf v_k \\ \mathbf q_k \\ \boldsymbol{\omega}_k \\ \mathbf b_{g,k} \\ \mathbf b_{a,k} \\ \cdots \end{bmatrix}. \]
In a real spacecraft, the complete true state is not directly available to the onboard computer.
Sensor Measurement
Sensors observe particular functions of the true state.
A general nonlinear measurement model is
\[ \boxed{ \mathbf z_k = h(\mathbf x_k) + \mathbf v_k }. \]
The vector \(\mathbf z_k\) contains the measured quantities and \(\mathbf v_k\) represents measurement uncertainty or noise.
Consequently,
\[ \mathbf z_k \neq \mathbf x_k \]
in general.
A sensor may observe only a small part of the state or some nonlinear function of the state.
Estimated State
The state estimator processes the available measurements and uses a model of the spacecraft to reconstruct an estimate of the state:
\[ \boxed{ \hat{\mathbf x}_k }. \]
Ideally,
\[ \boxed{ \hat{\mathbf x}_k \approx \mathbf x_k }. \]
However, the estimated state is never perfectly known.
Estimation Error
The estimation error is defined as
\[ \boxed{ \mathbf e_k = \mathbf x_k - \hat{\mathbf x}_k }. \]
One of the main objectives of a state estimator is to keep this error sufficiently small for the mission requirements.
For example, during rendezvous and docking, navigation requirements may specify limits on relative-position error, relative-velocity error, relative-attitude error, or angular-rate estimation error.
Importance in Simulation
This distinction is particularly important when constructing a spacecraft simulation.
The estimator should not receive perfect truth values directly.
The correct simulation architecture is
\[ \boxed{\mathbf x_{true}} \rightarrow \boxed{\text{Sensor Models}} \rightarrow \boxed{\mathbf z} \rightarrow \boxed{\text{Estimator}} \rightarrow \boxed{\hat{\mathbf x}}. \]
The truth state should remain available separately for validation:
\[ \boxed{ \mathbf e = \mathbf x_{true} - \hat{\mathbf x} }. \]
This separation allows estimation accuracy, convergence, robustness, filter consistency, and closed-loop GNC performance to be evaluated realistically.
State Estimation as a Prediction–Correction Process
A large class of sensor-fusion algorithms can be understood using two fundamental operations:
\[ \boxed{\text{Prediction}} \qquad \text{and} \qquad \boxed{\text{Correction}}. \]
This idea forms the foundation of complementary filters, observers, Kalman filters, Extended Kalman Filters, Error-State Kalman Filters, Multiplicative EKFs, Unscented Kalman Filters, and many other estimation algorithms.
Prediction Step
The prediction step uses a mathematical model to determine how the spacecraft state should evolve between measurements.
A general discrete nonlinear system model can be written as
\[ \boxed{ \mathbf x_{k+1} = f(\mathbf x_k,\mathbf u_k) + \mathbf w_k }. \]
Here,
- \(\mathbf x_k\) is the state at time step \(k\),
- \(\mathbf u_k\) represents known inputs such as control commands, actuator forces, or measured inertial inputs,
- \(f(\cdot)\) describes the system dynamics or kinematics,
- \(\mathbf w_k\) represents process uncertainty.
The estimator propagates the previous updated estimate according to this model:
\[ \boxed{ \hat{\mathbf x}_{k-1}^{+} } \rightarrow \boxed{\text{Prediction Model}} \rightarrow \boxed{ \hat{\mathbf x}_{k}^{-} }. \]
The superscript \((-)\) denotes the prior or predicted estimate.
Correction Step
Prediction alone is normally insufficient because model errors, disturbances, sensor biases, and uncertain initial conditions gradually cause the estimated state to diverge from the true state.
When a new measurement becomes available, the estimator uses that information to correct the prediction.
The measurement model is
\[ \boxed{ \mathbf z_k = h(\mathbf x_k) + \mathbf v_k }. \]
Using the predicted state, the estimator computes the measurement it expects to observe:
\[ \boxed{ \hat{\mathbf z}_k = h(\hat{\mathbf x}_k^{-}) }. \]
The actual sensor measurement can then be compared with this predicted measurement.
Residual or Innovation
The difference is
\[ \boxed{ \mathbf y_k = \mathbf z_k - \hat{\mathbf z}_k } \]
or
\[ \boxed{ \mathbf y_k = \mathbf z_k - h(\hat{\mathbf x}_k^{-}) }. \]
This quantity is commonly called the measurement residual.
In Kalman-filter terminology it is usually called the innovation.
If the predicted state is accurate, the predicted measurement should approximately agree with the actual sensor measurement.
A large residual may indicate that
- the predicted state is inaccurate,
- the measurement contains significant noise,
- an unmodelled disturbance has occurred,
- the sensor may contain an outlier or fault,
- the filter covariance or noise assumptions may be inappropriate.
Updated Estimate
The measurement residual is used to modify the predicted state:
\[ \boxed{ \hat{\mathbf x}_{k}^{-} } \rightarrow \boxed{\text{Measurement Correction}} \rightarrow \boxed{ \hat{\mathbf x}_{k}^{+} }. \]
The superscript \((+)\) denotes the posterior or updated estimate.
The estimator then propagates this updated estimate until the next measurement becomes available.
Estimator Cycle
The complete cycle is therefore
\[ \boxed{\text{Predict}} \rightarrow \boxed{\text{Measure}} \rightarrow \boxed{\text{Compare}} \rightarrow \boxed{\text{Correct}} \rightarrow \boxed{\text{Predict Again}}. \]
Understanding this prediction–correction structure is essential before studying the individual filters introduced later in this chapter.
State Model and Measurement Model
Model-based sensor fusion normally requires two mathematical descriptions:
- a state or process model,
- a measurement model.
State / Process Model
The state model describes how the quantities being estimated evolve with time.
For a nonlinear discrete-time system,
\[ \boxed{ \mathbf x_{k+1} = f(\mathbf x_k,\mathbf u_k) + \mathbf w_k }. \]
For a linear discrete-time system,
\[ \boxed{ \mathbf x_{k+1} = \mathbf F_k\mathbf x_k + \mathbf B_k\mathbf u_k + \mathbf w_k }. \]
Here,
- \(\mathbf F_k\) is the state-transition matrix,
- \(\mathbf B_k\) maps known inputs into the state dynamics,
- \(\mathbf w_k\) represents process uncertainty.
Depending on the application, the process model may contain
- spacecraft translational dynamics,
- spacecraft rotational dynamics,
- quaternion kinematics,
- Hill/Clohessy–Wiltshire relative dynamics,
- Tschauner–Hempel or nonlinear relative dynamics,
- IMU mechanisation equations,
- sensor bias dynamics,
- clock bias and clock drift dynamics.
Measurement Model
The measurement model describes how the state produces the quantity observed by a particular sensor.
The nonlinear form is
\[ \boxed{ \mathbf z_k = h(\mathbf x_k) + \mathbf v_k }. \]
For a linear system,
\[ \boxed{ \mathbf z_k = \mathbf H_k\mathbf x_k + \mathbf v_k }. \]
The matrix \(\mathbf H_k\) is the measurement or observation matrix.
It determines which combinations of the state are observed by the sensor.
Example
Suppose the state contains one-dimensional position and velocity:
\[ \mathbf x = \begin{bmatrix} r \\ v \end{bmatrix}. \]
If a sensor measures position only, the measurement equation can be written as
\[ z = \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} r \\ v \end{bmatrix} + v_m. \]
Therefore,
\[ \mathbf H = \begin{bmatrix} 1 & 0 \end{bmatrix}. \]
The sensor does not measure velocity directly, but velocity may still be estimated because position and velocity are connected through the state dynamics.
Model-Based Fusion
The estimator therefore combines
\[ \boxed{\text{Dynamic Model}} + \boxed{\text{Measurement Model}} \rightarrow \boxed{\text{State Estimate}}. \]
This combination of predicted spacecraft behaviour and actual sensor information is the mathematical foundation of model-based sensor fusion.
What Can Be Included in the Estimated State?
A navigation or attitude estimator does not necessarily estimate only position and attitude.
The state vector should contain the quantities required by the GNC system as well as additional quantities that must be estimated to maintain navigation accuracy.
A representative spacecraft estimator state may be written as
\[ \mathbf x = \begin{bmatrix} \mathbf r \\ \mathbf v \\ \mathbf q \\ \boldsymbol{\omega} \\ \mathbf b_g \\ \mathbf b_a \\ \mathbf b_c \\ \dot{\mathbf b}_c \\ \cdots \end{bmatrix}. \]
Possible estimated quantities include
- spacecraft position \(\mathbf r\),
- spacecraft velocity \(\mathbf v\),
- spacecraft attitude \(\mathbf q\),
- angular velocity \(\boldsymbol{\omega}\),
- gyroscope bias \(\mathbf b_g\),
- accelerometer bias \(\mathbf b_a\),
- GNSS receiver clock bias,
- GNSS receiver clock drift,
- sensor alignment errors,
- calibration parameters,
- relative position and velocity,
- target-relative attitude,
- target angular rate,
- slowly varying dynamic or environmental parameters.
Indirectly Estimated Quantities
An important principle in state estimation is that
a quantity does not necessarily need to be measured directly in order to be estimated.
If a state influences the system dynamics or sensor measurements in a way that can be distinguished from other states, the estimator may be able to infer it indirectly.
For example, a gyroscope bias may not be measured directly by another sensor.
Nevertheless, repeated disagreement between gyro-propagated attitude and star-tracker attitude measurements can allow the filter to estimate the gyro bias.
Conceptually,
\[ \boxed{\text{Gyro Propagation}} - \boxed{\text{Star Tracker Observation}} \rightarrow \boxed{\text{Attitude Residual}} \rightarrow \boxed{\text{Gyro Bias Estimate}}. \]
Whether this is possible depends strongly on observability, which is introduced later on this page and developed in detail in Section 4.2.17.
Uncertainty in Sensor Fusion
State estimation is concerned not only with the numerical value of the estimated state but also with the uncertainty associated with that estimate.
Two estimates may have identical numerical values while having very different levels of confidence.
Estimation Error
Recall that the estimation error is
\[ \mathbf e_k = \mathbf x_k - \hat{\mathbf x}_k. \]
Because the true state is unknown onboard, the estimator cannot normally calculate this error directly during flight.
Instead, the uncertainty of the error is represented statistically.
Error Covariance Matrix
A common representation is the estimation-error covariance matrix:
\[ \boxed{ \mathbf P_k = E \left[ \mathbf e_k \mathbf e_k^T \right] }. \]
The diagonal elements of \(\mathbf P\) represent the variance associated with individual state-estimation errors.
For a simplified state
\[ \mathbf x = \begin{bmatrix} r \\ v \end{bmatrix}, \]
the covariance may be written as
\[ \mathbf P = \begin{bmatrix} \sigma_r^2 & P_{rv} \\ P_{vr} & \sigma_v^2 \end{bmatrix}. \]
Here,
- \(\sigma_r^2\) represents position-error variance,
- \(\sigma_v^2\) represents velocity-error variance,
- \(P_{rv}\) and \(P_{vr}\) represent correlations between position and velocity estimation errors.
Estimator Output
A probabilistic estimator therefore conceptually produces
\[ \boxed{ \text{Estimator Output} = \hat{\mathbf x} + \mathbf P }. \]
The state estimate tells the GNC system what the estimator believes the spacecraft state to be, while the covariance describes the estimator's uncertainty in that belief.
Process Noise and Measurement Noise
Two major uncertainty sources appear repeatedly in model-based sensor fusion:
\[ \boxed{\text{Process Noise}} \qquad \boxed{\text{Measurement Noise}}. \]
Process Noise
Process noise represents uncertainty in the mathematical model used to propagate the spacecraft state.
In
\[ \mathbf x_{k+1} = f(\mathbf x_k,\mathbf u_k) + \mathbf w_k, \]
the vector
\[ \mathbf w_k \]
represents process uncertainty.
Examples may include
- unmodelled disturbance forces,
- uncertain thruster magnitude,
- thruster misalignment,
- uncertain aerodynamic drag,
- solar-radiation-pressure uncertainty,
- gravity-model approximation,
- IMU bias evolution,
- unmodelled flexible-body dynamics,
- target-spacecraft motion uncertainty,
- other modelling errors.
Its covariance is commonly written as
\[ \boxed{ \mathbf Q_k = E \left[ \mathbf w_k \mathbf w_k^T \right] }. \]
Measurement Noise
Measurement noise represents uncertainty associated with the sensor measurement.
From
\[ \mathbf z_k = h(\mathbf x_k) + \mathbf v_k, \]
the measurement-noise term is
\[ \mathbf v_k. \]
Its covariance is commonly represented by
\[ \boxed{ \mathbf R_k = E \left[ \mathbf v_k \mathbf v_k^T \right] }. \]
Interpretation of Q and R
A useful interpretation is
\[ \boxed{\mathbf Q} \rightarrow \boxed{\text{How uncertain is the model?}} \]
while
\[ \boxed{\mathbf R} \rightarrow \boxed{\text{How uncertain is the measurement?}}. \]
These matrices strongly influence how the estimator balances model prediction against sensor measurements.
Incorrect values of \(\mathbf Q\) and \(\mathbf R\) can produce poor estimation performance even when the underlying filter equations are implemented correctly.
Their selection and tuning are therefore developed separately in Section 4.2.19.
Complementary Information from Different Sensors
One of the most useful ways to understand sensor fusion is to ask:
What information does each sensor contribute to the state estimate?
Attitude Determination
A gyroscope provides high-rate angular-motion information:
\[ \boxed{\text{Gyroscope}} \rightarrow \boxed{\text{High-Rate Relative Attitude Information}}. \]
A star tracker provides an accurate absolute attitude reference:
\[ \boxed{\text{Star Tracker}} \rightarrow \boxed{\text{Absolute Attitude Reference}}. \]
Combining them gives
\[ \boxed{\text{Gyro + Star Tracker}} \rightarrow \boxed{\text{High-Rate Drift-Corrected Attitude Estimate}}. \]
Attitude Determination with Vector Sensors
A magnetometer and Sun sensor provide measured reference vectors in the spacecraft body frame.
When compared with reference magnetic-field and Sun-direction models, these vectors provide attitude information.
A possible sensor suite is
\[ \boxed{\text{Gyroscope}} + \boxed{\text{Sun Sensor}} + \boxed{\text{Magnetometer}} \rightarrow \boxed{\text{Attitude Estimate}}. \]
Such a combination is common when high-accuracy star-tracker measurements are unavailable or when a spacecraft is operating in acquisition or safe modes.
Inertial Navigation
An IMU provides high-rate inertial information:
\[ \boxed{\text{IMU}} \rightarrow \boxed{\text{High-Rate Motion Propagation}}. \]
GNSS provides an absolute position and velocity reference:
\[ \boxed{\text{GNSS}} \rightarrow \boxed{\text{Absolute Position / Velocity Correction}}. \]
Combining them gives
\[ \boxed{\text{IMU + GNSS}} \rightarrow \boxed{\text{Bounded Navigation Error}}. \]
Relative Navigation for RPO
Rendezvous and proximity operations introduce another important sensor fusion problem.
The preferred sensor suite may change significantly as the chaser spacecraft moves from far range toward capture.
A representative progression is
\[ \boxed{\text{Far Range: GNSS}} \rightarrow \boxed{\text{Mid Range: GNSS + Camera}} \rightarrow \boxed{\text{Close Range: Camera + LiDAR}} \rightarrow \boxed{\text{Capture: Relative Pose Estimation}}. \]
Sensor fusion therefore includes not only combining measurements but also determining which sensors are valid, observable, sufficiently accurate, and appropriate during each mission phase.
Different Sensor Update Rates
Spacecraft sensors rarely operate at identical update rates.
High-rate inertial sensors may produce measurements many times between successive observations from an absolute reference sensor.
For example,
\[ \boxed{ f_{\text{gyro}} \gg f_{\text{star tracker}} }. \]
The estimator may therefore propagate the attitude repeatedly using gyroscope measurements before performing a star-tracker correction.
Conceptually,
\[ \boxed{\text{Gyro}} \rightarrow \boxed{\text{Predict}} \rightarrow \boxed{\text{Predict}} \rightarrow \boxed{\text{Predict}} \rightarrow \boxed{\text{Star Tracker Update}}. \]
Similarly,
\[ \boxed{\text{IMU: High Rate}} \qquad \boxed{\text{GNSS: Lower Rate}}. \]
A practical estimator must therefore support
- multi-rate measurements,
- asynchronous measurements,
- different sensor timestamps,
- sensor latency,
- temporary sensor unavailability,
- measurement dropouts,
- delayed measurements,
- out-of-sequence measurements.
These effects become especially important when combining high-rate inertial sensors with slower GNSS, star-tracker, camera, or LiDAR measurements.
Multi-rate fusion and timing issues are developed in Sections 4.2.13 and 4.2.14.
Measurement Quality and Sensor Trust
Not every sensor measurement should influence the estimated state equally.
Sensors may have different accuracy, noise, resolution, geometry, tracking quality, environmental conditions, and confidence levels.
Simple Two-Sensor Example
Suppose two sensors measure the same scalar physical quantity \(x\):
\[ z_1 = x + v_1 \]
and
\[ z_2 = x + v_2. \]
Assume sensor 1 is substantially more accurate than sensor 2.
The estimator should normally assign greater confidence to sensor 1 rather than treating both measurements equally.
Conceptually,
\[ \boxed{\text{Lower Measurement Uncertainty}} \Rightarrow \boxed{\text{Greater Measurement Influence}} \]
while
\[ \boxed{\text{Higher Measurement Uncertainty}} \Rightarrow \boxed{\text{Lower Measurement Influence}}. \]
Kalman filtering formalizes this idea using measurement covariance, predicted-state covariance, innovation covariance, and the Kalman gain.
Sensor fusion is therefore better understood as uncertainty-weighted information combination rather than simple averaging.
Measurement Validation
A practical estimator should not automatically accept every measurement received from every sensor.
Measurements may occasionally be physically unreasonable, corrupted, inconsistent with the predicted spacecraft state, or generated during invalid sensor operating conditions.
Examples include
- statistical outliers,
- temporary sensor faults,
- corrupted communication packets,
- invalid GNSS navigation solutions,
- GNSS satellite loss,
- star-tracker loss of tracking,
- Sun or Earth blinding,
- incorrect camera feature association,
- false target detection,
- LiDAR returns from unintended surfaces,
- unexpected measurement jumps.
Using the Innovation
The estimator already computes the measurement residual
\[ \mathbf y_k = \mathbf z_k - h(\hat{\mathbf x}_k^{-}). \]
This residual provides useful information about whether the new measurement agrees with the predicted spacecraft state.
A measurement-validation stage can therefore operate as
\[ \boxed{\text{Measurement}} \rightarrow \boxed{\text{Validation / Gating}} \rightarrow \begin{cases} \text{Accept} \\ \text{Reject} \\ \text{Down-weight} \end{cases} \rightarrow \boxed{\text{Estimator}}. \]
More formal methods use the innovation covariance, Mahalanobis distance, Normalised Innovation Squared, or related statistical tests.
These concepts are developed in Sections 4.2.15 and 4.2.16.
Observability in Sensor Fusion
Adding more states to an estimator does not automatically mean those states can actually be determined from the available measurements.
The estimator must receive sufficient independent information about a state before that state can be estimated reliably.
This property is known as observability.
Basic Concept
Observability depends on several factors:
\[ \boxed{\text{Sensor Measurements}} + \boxed{\text{Measurement Geometry}} + \boxed{\text{Spacecraft Dynamics}} + \boxed{\text{Vehicle Motion}} \rightarrow \boxed{\text{Observability}}. \]
A sensor may measure one direction accurately while providing little or no information about another degree of freedom.
Similarly, some sensor biases or calibration parameters may become observable only when the spacecraft performs particular manoeuvres.
Example: Bias Estimation
Consider a gyroscope with an unknown constant bias.
If no independent attitude reference is available for a long period, separating actual spacecraft rotation from gyroscope bias may be difficult.
Once star-tracker or vector-sensor measurements become available, the additional information can make the bias observable.
Observability is therefore not simply a property of the sensor alone. It is a property of the complete combination of
- state definition,
- spacecraft dynamics,
- measurement equations,
- sensor geometry,
- vehicle motion.
Observability is developed in detail in Section 4.2.17.
Major Families of Sensor-Fusion Methods
Sensor fusion can be implemented using algorithms of different complexity.
A useful conceptual progression is
\[ \boxed{\text{Complementary Filters}} \rightarrow \boxed{\text{Observers}} \rightarrow \boxed{\text{Bayesian Estimation}} \rightarrow \boxed{\text{Kalman Filters}} \rightarrow \boxed{\text{Nonlinear / Advanced Filters}}. \]
The appropriate method depends on
- the spacecraft dynamics,
- measurement nonlinearities,
- sensor accuracy and noise characteristics,
- available computational resources,
- required navigation accuracy,
- mission phase,
- sensor availability,
- uncertainty assumptions,
- real-time implementation requirements.
Complementary Filters
Complementary filters exploit the frequency-domain characteristics of different sensors.
A common example combines high-frequency gyroscope information with a low-frequency absolute attitude reference.
Observers
Observer-based estimators use a mathematical model of the system and a correction term based on measurement error.
Linear Luenberger observers and nonlinear attitude observers are common examples.
Kalman Filters
Kalman filtering provides a systematic probabilistic framework for combining model predictions with noisy measurements.
Common spacecraft variants include
- Linear Kalman Filter,
- Extended Kalman Filter,
- Error-State Kalman Filter,
- Multiplicative Extended Kalman Filter,
- Unscented Kalman Filter,
- Information Filter,
- Federated Kalman Filter.
Particle Filters
Particle filters represent the state probability distribution using a population of weighted samples.
They can be useful when the estimation problem is strongly nonlinear or non-Gaussian, although their computational cost is generally higher than conventional Kalman-filter approaches.
These methods are developed individually throughout Sections 4.2.3 to 4.2.12.
General Sensor-Fusion Signal Flow
The concepts introduced above can be combined into a general spacecraft sensor-fusion architecture.
The truth-dynamics model first produces the physical spacecraft state. Sensor models then convert appropriate parts of the true state into realistic measurements.
Before the measurements enter the estimator, they may require coordinate transformation, timestamp alignment, preprocessing, calibration, and validity checking.
Complete Conceptual Architecture
\[ \boxed{\text{Spacecraft Truth Dynamics}} \]
\[ \downarrow \]
\[ \boxed{\text{True Spacecraft State}} \]
\[ \downarrow \]
\[ \boxed{\text{Sensor Models}} \]
\[ \downarrow \]
\[ \boxed{\text{Sensor Measurements}} \]
\[ \downarrow \]
\[ \boxed{\text{Timestamping / Time Synchronization}} \]
\[ \downarrow \]
\[ \boxed{\text{Coordinate Transformation / Preprocessing}} \]
\[ \downarrow \]
\[ \boxed{\text{Measurement Validation / Gating}} \]
\[ \downarrow \]
\[ \boxed{\text{State Prediction}} \]
\[ + \]
\[ \boxed{\text{Measurement Correction}} \]
\[ \downarrow \]
\[ \boxed{\text{Sensor Fusion / State Estimator}} \]
\[ \downarrow \]
\[ \boxed{\hat{\mathbf x},\mathbf P} \]
\[ \downarrow \]
\[ \boxed{\text{Guidance \& Control}}. \]
Compact Representation
The complete chain can be summarised as
\[ \boxed{\text{Dynamics}} \rightarrow \boxed{\text{Sensors}} \rightarrow \boxed{\text{Measurements}} \rightarrow \boxed{\text{Validation}} \rightarrow \boxed{\text{Fusion}} \rightarrow \boxed{\hat{\mathbf x},\mathbf P} \rightarrow \boxed{\text{GNC}}. \]
This generic architecture will be reused throughout the attitude, inertial-navigation, GNSS, vision, LiDAR, and RPO sensor-fusion examples developed later in this chapter.
From Sensor Models to Sensor Fusion
Sections 4.1 and 4.2 address two different but directly connected questions.
Section 4.1 — Sensor Models
Section 4.1 answers:
What does each spacecraft sensor measure, and what errors are contained in that measurement?
The output of Section 4.1 is therefore a realistic sensor measurement:
\[ \boxed{\text{True Physical Quantity}} \rightarrow \boxed{\text{Sensor Model}} \rightarrow \boxed{\mathbf z_m}. \]
Section 4.2 — Sensor Fusion
Section 4.2 answers:
How do we combine these imperfect measurements with a model of the spacecraft to estimate the required vehicle state?
Therefore,
\[ \boxed{\text{Sensor Measurements}} + \boxed{\text{Spacecraft Model}} \rightarrow \boxed{\text{State Estimator}} \rightarrow \boxed{\hat{\mathbf x},\mathbf P}. \]
Complete Navigation Chain
Combining both chapters gives
\[ \boxed{\text{True Spacecraft State}} \rightarrow \boxed{\text{Sensor Physics}} \rightarrow \boxed{\text{Sensor Errors}} \rightarrow \boxed{\text{Measurements}} \rightarrow \boxed{\text{Sensor Fusion}} \rightarrow \boxed{\hat{\mathbf x},\mathbf P}. \]
The estimated state is then supplied to guidance and control:
\[ \boxed{\hat{\mathbf x}} \rightarrow \boxed{\text{Guidance}} \rightarrow \boxed{\text{Control}} \rightarrow \boxed{\text{Actuators}} \rightarrow \boxed{\text{Spacecraft Dynamics}}. \]
The resulting spacecraft motion is sensed again, creating the complete closed-loop GNC architecture.
Closed-Loop View
\[ \boxed{\text{Spacecraft}} \rightarrow \boxed{\text{Sensors}} \rightarrow \boxed{\text{Sensor Fusion}} \rightarrow \boxed{\text{Guidance}} \rightarrow \boxed{\text{Control}} \rightarrow \boxed{\text{Actuators}} \rightarrow \boxed{\text{Spacecraft}}. \]
Sensor fusion therefore plays a central role in closing the loop between physical spacecraft motion and autonomous GNC decision-making.
Explore Sensor Fusion Topics
The following sections develop the mathematical foundations, architectures, filtering methods, spacecraft applications, implementation details, and verification techniques used in modern sensor-fusion and state-estimation systems.
Foundations and Architectures
These sections establish the conceptual and mathematical foundation required before developing Kalman-filter-based estimators.
4.2.1 Fundamentals of Sensor Fusion
Prediction and correction, complementary sensor information, state and measurement concepts, estimation error, covariance, uncertainty, observability, and the basic structure of a model-based state estimator.
Explore Sensor Fusion Fundamentals →
4.2.2 Sensor Fusion Architectures
Centralized, decentralized, federated, distributed, cascaded, loosely coupled, tightly coupled, and deeply coupled sensor-fusion architectures used in spacecraft navigation systems.
Explore Sensor Fusion Architectures →
4.2.3 Complementary Filters
High-pass and low-pass sensor combination, gyroscope and absolute attitude reference fusion, cutoff-frequency selection, tuning, discrete implementation, and spacecraft attitude applications.
Explore Complementary Filters →
4.2.4 Observer-Based Fusion
Luenberger observers, observer error dynamics, gain selection, nonlinear observers, attitude observers, convergence, robustness, and observer-based spacecraft state estimation.
Explore Observer-Based Fusion →
4.2.5 Bayesian Estimation Fundamentals
Probability distributions, prior information, likelihood, posterior probability, conditional probability, uncertainty propagation, Gaussian assumptions, and the probabilistic foundations of recursive state estimation.
Explore Bayesian Estimation →
Core Estimation Algorithms
These sections develop the primary recursive estimation algorithms used in spacecraft attitude determination and navigation.
4.2.6 Kalman Filter Fundamentals
Linear state-space models, state prediction, covariance propagation, innovation, innovation covariance, Kalman gain, measurement update, posterior covariance, and complete recursive Kalman-filter implementation.
Explore the Kalman Filter →
4.2.7 Extended Kalman Filter (EKF)
Nonlinear state dynamics, nonlinear measurement models, first-order linearisation, Jacobian matrices, state and covariance propagation, measurement updates, limitations, and spacecraft navigation applications.
Explore the Extended Kalman Filter →
4.2.8 Error-State Kalman Filter (ESKF)
Nominal-state propagation, error-state definition, inertial sensor error states, covariance propagation, measurement correction, error injection, reset operations, IMU bias estimation, and navigation applications.
Explore the Error-State Kalman Filter →
4.2.9 Multiplicative EKF (MEKF)
Quaternion attitude estimation, multiplicative attitude-error representation, small-angle error states, gyroscope-bias estimation, quaternion correction, reset, and spacecraft attitude determination.
Explore the Multiplicative EKF →
4.2.10 Unscented Kalman Filter (UKF)
Sigma-point generation, unscented transformation, nonlinear state propagation, predicted mean and covariance, nonlinear measurement updates, tuning parameters, and comparison with the EKF.
Explore the Unscented Kalman Filter →
4.2.11 Information and Federated Filters
Information-vector and information-matrix formulations, distributed estimation, local filters, master filters, information sharing, fault isolation, and federated spacecraft navigation architectures.
Explore Information and Federated Filters →
4.2.12 Particle Filters and Non-Gaussian Fusion
Particle representation of probability distributions, importance weighting, resampling, nonlinear and non-Gaussian estimation, degeneracy, computational cost, and navigation applications where Gaussian filters may be insufficient.
Explore Particle Filters →
Practical Sensor-Fusion Problems
Real flight estimators must handle timing, invalid measurements, initialization, tuning, consistency, sensor dropouts, and imperfect observability in addition to the filter equations themselves.
4.2.13 Multi-Rate and Asynchronous Sensor Fusion
Fusion of high-rate gyroscopes and IMUs with lower-rate GNSS, star-tracker, camera, and LiDAR measurements; asynchronous updates, independent sensor clocks, event-driven measurement updates, and multi-rate implementation.
Explore Multi-Rate Fusion →
4.2.14 Time Synchronization, Latency and Delayed Measurements
Sensor timestamps, clock alignment, PPS synchronization, measurement latency, communication delay, state propagation to measurement time, delayed measurements, and out-of-sequence updates.
Explore Sensor-Fusion Timing →
4.2.15 Measurement Validation and Innovation Gating
Measurement residuals, innovation covariance, statistical consistency tests, Mahalanobis distance, Normalised Innovation Squared, chi-square gates, measurement acceptance, and rejection.
Explore Measurement Validation →
4.2.16 Outlier Rejection, Fault Detection and Robust Fusion
Sensor faults, bad data, outliers, measurement dropouts, fault-detection and isolation, FDIR interaction, robust weighting, sensor exclusion, redundancy, and degraded navigation modes.
Explore Robust Sensor Fusion →
4.2.17 Observability in Sensor Fusion
Observable and unobservable states, observability matrices, nonlinear observability, sensor geometry, manoeuvre-dependent observability, bias estimation, relative navigation, and spacecraft examples.
Explore Observability →
4.2.18 Filter Initialization and Convergence
Initial-state selection, initial covariance, attitude initialization, bias initialization, coarse alignment, convergence, filter transients, covariance collapse, and initialization for spacecraft navigation systems.
Explore Filter Initialization →
4.2.19 Process and Measurement Noise Tuning
Construction and tuning of \(\mathbf Q\) and \(\mathbf R\), conversion of sensor specifications into covariance, bias-process models, noise-density interpretation, filter trust, and consequences of over- and under-tuning.
Explore Q/R Noise Tuning →
4.2.20 Filter Consistency and Performance Metrics
Estimation error, RMSE, innovation statistics, Normalised Innovation Squared, Normalised Estimation Error Squared, covariance consistency, Monte Carlo envelopes, convergence time, and navigation performance assessment.
Explore Filter Performance Metrics →
Spacecraft Sensor-Fusion Applications
These sections apply the general estimation principles to practical spacecraft attitude, inertial-navigation, and relative-navigation sensor combinations.
4.2.21 Attitude Sensor Fusion
Gyroscope, star tracker, Sun sensor, and magnetometer fusion; quaternion attitude propagation, vector measurements, gyro-bias estimation, safe-mode attitude determination, and fine-pointing navigation.
Explore Attitude Sensor Fusion →
4.2.22 IMU/GNSS Sensor Fusion
Inertial navigation mechanisation, accelerometer and gyro integration, GNSS position and velocity correction, IMU biases, loose coupling, tight coupling, GNSS outages, and spacecraft navigation.
Explore IMU/GNSS Fusion →
4.2.23 Relative Navigation Sensor Fusion for RPO
GNSS, inter-satellite navigation, camera, LiDAR, IMU, line-of-sight, relative range, range rate, relative position, velocity, attitude, and pose estimation for rendezvous, proximity operations, and docking.
Explore RPO Sensor Fusion →
4.2.24 Vision and LiDAR Fusion
Bearing measurements, image features, target detection, optical pose estimation, LiDAR range measurements, point-cloud geometry, camera–LiDAR calibration, relative pose fusion, and close-range navigation.
Explore Vision and LiDAR Fusion →
4.2.25 Sensor Handover and Mode-Dependent Fusion
Far-range, mid-range, close-range, and capture navigation modes; overlapping sensors, sensor validity, covariance transition, estimator handover, smooth switching, and mission-phase-dependent fusion logic.
Explore Sensor Handover →
4.2.26 Redundancy and Multi-Sensor Fusion
Multiple gyroscopes, star trackers, GNSS receivers, cameras, and redundant sensor channels; voting, weighted fusion, covariance methods, fault isolation, cross-checking, and graceful degradation.
Explore Sensor Redundancy →
4.2.27 Adaptive Sensor Fusion
Online modification of process and measurement covariance, measurement-quality-dependent weighting, adaptive noise estimation, innovation-based adaptation, changing sensor conditions, and robust spacecraft navigation.
Explore Adaptive Sensor Fusion →
Implementation and Verification
The final group of sections moves from filter theory to practical spacecraft software implementation and verification.
4.2.28 Practical Filter Implementation
Continuous-to-discrete conversion, state propagation, covariance propagation, numerical stability, covariance symmetry, positive-semidefinite covariance, matrix conditioning, Joseph-form covariance updates, computational load, and embedded implementation.
Explore Practical Filter Implementation →
4.2.29 Simulink Implementation of Sensor Fusion
Truth dynamics, sensor-model blocks, measurement buses, estimator subsystems, prediction and update scheduling, multi-rate processing, logging, state outputs, covariance outputs, and closed-loop GNC integration.
Explore Simulink Sensor Fusion →
4.2.30 Monte Carlo Verification of Sensor Fusion
Statistical variation of sensor bias, noise, misalignment, initialization error, timing, dropouts, dynamic uncertainty, navigation errors, covariance consistency, success criteria, confidence intervals, NIS, NEES, and mission-level verification.
Explore Sensor-Fusion Monte Carlo Verification →
4.2.31 SIL/HIL and Flight Validation
Software-in-the-loop, processor-in-the-loop, hardware-in-the-loop, sensor emulation, real interfaces, timing verification, latency, communication protocols, recorded-data replay, flight-test validation, and estimator qualification.
Explore SIL/HIL and Flight Validation →
4.2.32 Complete Spacecraft Sensor-Fusion Architecture
End-to-end spacecraft navigation architecture combining truth dynamics, sensor models, timing, preprocessing, measurement validation, attitude estimation, translational navigation, relative navigation, mode management, covariance monitoring, guidance, control, and actuator interaction.
Explore Complete Sensor-Fusion Architecture →