4.1.1 Gyroscopes
Gyroscopes are among the most important sensors used in spacecraft guidance, navigation, and control. They provide measurements of spacecraft angular velocity and are therefore central to attitude propagation, attitude control, manoeuvre monitoring, inertial navigation, and state estimation.
A gyroscope does not directly measure spacecraft attitude. Instead, it measures the angular rate of the spacecraft about one or more sensing axes.
For a three-axis spacecraft gyroscope, the measured angular-rate vector is typically written as
\[ \boldsymbol{\omega}_m = \begin{bmatrix} \omega_{mx}\\ \omega_{my}\\ \omega_{mz} \end{bmatrix}. \]
A simple gyroscope measurement model is
\[ \boxed{ \boldsymbol{\omega}_m = \boldsymbol{\omega}_{true} + \mathbf b_g + \mathbf n_g } \]
where
- \(\boldsymbol{\omega}_{true}\) is the true spacecraft angular velocity,
- \(\mathbf b_g\) is the gyroscope bias,
- \(\mathbf n_g\) is measurement noise.
A more complete engineering model additionally includes scale-factor errors and axis misalignment:
\[ \boxed{ \boldsymbol{\omega}_m = \left( \mathbf I+\mathbf S_g+\mathbf M_g \right) \boldsymbol{\omega}_{true} + \mathbf b_g + \mathbf n_g } \]
Here, \(\mathbf S_g\) represents scale-factor error and \(\mathbf M_g\) represents axis misalignment and cross-axis sensitivity.
4.1.1.1 Role of Gyroscopes in GNC
The primary role of a spacecraft gyroscope is to provide the angular velocity required to determine how rapidly the spacecraft body frame is rotating relative to a reference frame.
Gyroscope measurements are used in a wide range of GNC functions, including
- attitude propagation,
- closed-loop attitude control,
- rate damping,
- spacecraft slew manoeuvres,
- reaction-wheel feedback control,
- thruster-based attitude manoeuvres,
- safe-mode control,
- detumbling,
- inertial navigation,
- fault detection,
- rendezvous and docking,
- attitude-estimator propagation.
The basic information flow is
\[ \boxed{\text{Spacecraft Rotation}} \rightarrow \boxed{\text{Gyroscope}} \rightarrow \boxed{\boldsymbol{\omega}_m} \rightarrow \boxed{\text{Attitude Propagation}} \rightarrow \boxed{\hat{\mathbf q}}. \]
A star tracker may provide a highly accurate absolute attitude measurement, but it usually operates at a lower update rate than the gyroscope. The gyro therefore provides high-rate angular-rate information between absolute attitude updates.
This complementary behaviour is one of the main reasons spacecraft frequently combine gyroscopes with star trackers or other absolute reference sensors.
4.1.1.2 What a Gyroscope Measures
A gyroscope measures angular velocity.
For a rigid spacecraft, the angular velocity expressed in body-frame coordinates is
\[ \boldsymbol{\omega}^{B} = \begin{bmatrix} \omega_x\\ \omega_y\\ \omega_z \end{bmatrix}. \]
The components correspond to rotation about the three spacecraft body axes.
- \(\omega_x\): rotation about the body \(x\)-axis,
- \(\omega_y\): rotation about the body \(y\)-axis,
- \(\omega_z\): rotation about the body \(z\)-axis.
In conventional aerospace terminology, these may correspond approximately to roll, pitch, and yaw rates.
Units
The SI unit of angular velocity is
\[ \mathrm{rad/s}. \]
Gyroscope datasheets also commonly specify angular rate in
\[ ^\circ/\mathrm{s}. \]
The conversion is
\[ 1^\circ/\mathrm{s} = \frac{\pi}{180} \mathrm{rad/s}. \]
Angular Rate Is Not Attitude
A gyroscope does not directly measure Euler angles,
\[ \phi,\qquad \theta,\qquad \psi, \]
nor does it directly measure the spacecraft quaternion
\[ \mathbf q. \]
Instead, the measured angular velocity is supplied to the attitude kinematic equations, which propagate the spacecraft attitude with time.
4.1.1.3 Physical Operating Principle
Different gyroscope technologies measure angular velocity using different physical principles. The three most common categories relevant to GNC are MEMS gyroscopes, Fiber-Optic Gyroscopes, and Ring-Laser Gyroscopes.
MEMS Gyroscope
A MEMS gyroscope typically contains a vibrating proof mass. When the sensor rotates, the moving proof mass experiences a Coriolis acceleration.
The Coriolis acceleration is
\[ \boxed{ \mathbf a_C = 2 \boldsymbol{\omega} \times \mathbf v } \]
where
- \(\boldsymbol{\omega}\) is the angular velocity of the sensor,
- \(\mathbf v\) is the velocity of the vibrating proof mass.
The resulting Coriolis-induced motion is detected electrically and converted into an estimate of angular velocity.
MEMS gyroscopes are attractive for spacecraft because of their compact size, low mass, low power consumption, and relatively low cost.
However, depending on performance grade, MEMS gyroscopes generally exhibit larger bias instability, noise, and thermal sensitivity than high-performance optical gyroscopes.
Fiber-Optic Gyroscope
A Fiber-Optic Gyroscope, or FOG, uses the Sagnac effect.
Two light beams travel in opposite directions around an optical-fibre coil. If the coil rotates, the two beams experience slightly different effective optical path lengths.
The resulting phase difference is proportional to angular velocity:
\[ \Delta\phi \propto \omega. \]
Because FOGs do not require a mechanically rotating rotor, they can provide excellent reliability and significantly improved bias stability compared with many MEMS gyroscopes.
Ring-Laser Gyroscope
A Ring-Laser Gyroscope, or RLG, also uses the Sagnac effect, but light propagates around a closed laser cavity rather than through a fibre coil.
Clockwise and counter-clockwise laser beams experience different optical path lengths when the system rotates.
This creates a measurable frequency difference
\[ \Delta f \propto \omega. \]
RLGs can achieve extremely high performance and are commonly associated with high-grade inertial-navigation systems.
4.1.1.4 Gyroscope Coordinate Frames
A gyroscope measures angular velocity along its own physical sensing axes. These axes are not always perfectly aligned with the spacecraft body frame.
Let
- \(B\) denote the spacecraft body frame,
- \(G\) denote the gyroscope sensor frame.
If the gyroscope is perfectly aligned with the spacecraft body frame,
\[ \boldsymbol{\omega}^{G} = \boldsymbol{\omega}^{B}. \]
More generally,
\[ \boxed{ \boldsymbol{\omega}^{G} = C_B^G \boldsymbol{\omega}^{B} } \]
where \(C_B^G\) is the DCM that transforms body-frame angular-velocity components into the gyroscope frame.
Ideally,
\[ C_B^G=I. \]
For small mounting errors,
\[ C_B^G \approx I+M_g. \]
The matrix \(M_g\) represents small sensor-axis misalignment terms.
Coordinate-frame consistency is essential. Even a highly accurate gyro can produce incorrect attitude propagation if its measurements are interpreted in the wrong frame.
4.1.1.5 Ideal Gyroscope Model
An ideal gyroscope reproduces the true angular velocity exactly:
\[ \boxed{ \boldsymbol{\omega}_m = \boldsymbol{\omega}_{true} } \]
For the three individual axes,
\[ \omega_{mx}=\omega_x, \qquad \omega_{my}=\omega_y, \qquad \omega_{mz}=\omega_z. \]
The ideal model assumes
- zero bias,
- zero scale-factor error,
- perfect axis alignment,
- zero measurement noise,
- infinite resolution,
- unlimited measurement range,
- zero latency.
This model is useful during early algorithm development because it allows the attitude-propagation equations to be validated independently of sensor imperfections.
4.1.1.6 Constant Bias
Gyroscope bias is an offset added to the true angular-rate signal.
For a single axis,
\[ \boxed{ \omega_m = \omega_{true} + b } \]
If the spacecraft is perfectly stationary,
\[ \omega_{true}=0, \]
but a biased gyroscope may still report
\[ \omega_m=b. \]
For a three-axis gyroscope,
\[ \boldsymbol{\omega}_m = \boldsymbol{\omega}_{true} + \mathbf b_g. \]
Effect on Attitude
Constant bias is especially important because the angular-rate measurement is integrated during attitude propagation.
If
\[ b_g=\text{constant}, \]
the approximate attitude error grows as
\[ \boxed{ \theta_{error}(t) \approx b_g t }. \]
For example, if
\[ b_g=0.01^\circ/\mathrm{s}, \]
then after
\[ t=100~\mathrm{s}, \]
the approximate accumulated attitude error is
\[ \theta_{error} \approx 1^\circ. \]
This is why gyro bias is often included explicitly as an estimated state in spacecraft attitude filters.
4.1.1.7 Bias Drift and Bias Random Walk
Real gyroscope bias is rarely perfectly constant.
It may change because of
- temperature variation,
- electronic drift,
- mechanical stress,
- aging,
- radiation effects,
- stochastic internal processes.
A time-varying bias can be written as
\[ \mathbf b_g(t). \]
Random-Walk Bias Model
A common stochastic model is
\[ \boxed{ \dot{\mathbf b}_g = \mathbf n_b } \]
where \(\mathbf n_b\) is a zero-mean stochastic driving process.
In discrete time,
\[ \boxed{ \mathbf b_{g,k+1} = \mathbf b_{g,k} + \mathbf w_{b,k} } \]
where \(\mathbf w_{b,k}\) represents the stochastic bias increment over one sampling interval.
First-Order Gauss-Markov Bias
A bounded correlated bias can instead be represented using a first-order Gauss-Markov process:
\[ \boxed{ \dot{\mathbf b}_g = -\frac{1}{\tau_b}\mathbf b_g + \mathbf n_b } \]
where \(\tau_b\) is the bias correlation time.
This model allows the bias to vary gradually while preventing it from growing without bound.
4.1.1.8 Scale-Factor Error
Scale-factor error represents an error in the relationship between the actual angular rate and the rate reported by the sensor.
For a single axis,
\[ \boxed{ \omega_m = (1+s)\omega_{true} } \]
where \(s\) is the fractional scale-factor error.
For example,
\[ s=0.001 \]
corresponds to a
\[ 0.1\% \]
scale-factor error.
For three axes,
\[ S_g = \begin{bmatrix} s_x & 0 & 0\\ 0 & s_y & 0\\ 0 & 0 & s_z \end{bmatrix}. \]
The measurement becomes
\[ \boldsymbol{\omega}_m = (I+S_g) \boldsymbol{\omega}_{true}. \]
Scale-factor errors become especially important during high-rate spacecraft manoeuvres because the absolute error grows with angular rate.
4.1.1.9 Axis Misalignment / Cross-Axis Sensitivity
Ideally, each gyroscope sensing axis responds only to angular velocity about that particular axis.
For example, an \(x\)-axis gyro should ideally measure only
\[ \omega_x. \]
Small manufacturing and mounting errors can cause angular motion about the other axes to influence the measurement.
A convenient misalignment matrix is
\[ M_g = \begin{bmatrix} 0 & m_{xy} & m_{xz}\\ m_{yx} & 0 & m_{yz}\\ m_{zx} & m_{zy} & 0 \end{bmatrix}. \]
The measurement becomes
\[ \boldsymbol{\omega}_m = (I+M_g) \boldsymbol{\omega}_{true}. \]
For the \(x\)-axis,
\[ \omega_{mx} = \omega_x + m_{xy}\omega_y + m_{xz}\omega_z. \]
Therefore, angular motion about the \(y\)- and \(z\)-axes can appear as false angular-rate components in the \(x\)-axis measurement.
4.1.1.10 White Noise and Noise Density
Gyroscope outputs contain high-frequency random fluctuations caused by electronics, sensing mechanisms, thermal effects, and other stochastic processes.
A simple noise model is
\[ \boxed{ \boldsymbol{\omega}_m = \boldsymbol{\omega}_{true} + \mathbf n_g } \]
with
\[ E[\mathbf n_g]=0. \]
Ideal continuous white noise may be represented as
\[ E \left[ \mathbf n_g(t) \mathbf n_g^T(t') \right] = Q_g \delta(t-t'). \]
Noise Density
Gyroscope datasheets frequently specify random noise using a noise-density parameter.
One common unit is
\[ \frac{^\circ/\mathrm{s}} {\sqrt{\mathrm{Hz}}}. \]
If \(N_g\) is the noise density and \(B\) is the effective measurement bandwidth, the RMS rate noise approximately scales as
\[ \sigma_\omega \propto N_g\sqrt{B}. \]
Increasing bandwidth therefore increases the amount of high-frequency noise admitted into the measurement.
4.1.1.11 Angle Random Walk
White rate noise accumulates when angular velocity is integrated to obtain attitude.
This produces Angle Random Walk, or ARW.
A common unit is
\[ ^\circ/\sqrt{\mathrm{hr}}. \]
If the ARW coefficient is \(N\), the attitude uncertainty due to white-rate noise approximately grows as
\[ \boxed{ \sigma_\theta(t) \propto N\sqrt{t} }. \]
This behaviour differs from constant bias.
Bias-driven attitude error approximately grows as
\[ \theta_{bias}\propto t, \]
while angle random walk grows approximately as
\[ \sqrt{t}. \]
ARW is therefore an important parameter when selecting gyroscopes for precision spacecraft attitude propagation.
4.1.1.12 Rate Random Walk
Rate Random Walk represents slowly varying stochastic changes in the gyroscope rate error.
A simple conceptual model is
\[ \dot b(t) = w(t), \]
where \(w(t)\) is white noise.
The bias therefore performs a random walk with time.
Rate Random Walk can become important over longer time intervals and is one reason a gyroscope bias cannot always be represented accurately as a fixed constant.
This behaviour can be identified from long-duration gyro data using techniques such as Allan deviation.
4.1.1.13 Bias Instability
Bias instability describes the tendency of the gyroscope zero-rate output to vary slowly even when the true angular velocity is constant.
For a stationary sensor,
\[ \omega_{true}=0, \]
but the measured output may behave approximately as
\[ \omega_m(t) = b(t) + n(t). \]
Bias instability is commonly specified in units such as
\[ ^\circ/\mathrm{hr}. \]
Lower bias-instability values indicate a more stable sensor.
This parameter is especially important for spacecraft that must maintain accurate attitude propagation for long periods without frequent correction from an absolute attitude sensor.
4.1.1.14 Quantisation and Saturation
Quantisation
Digital gyroscopes have finite measurement resolution.
If the smallest output increment is
\[ \Delta\omega, \]
the quantised output can be represented approximately as
\[ \boxed{ \omega_q = \Delta\omega \operatorname{round} \left( \frac{\omega}{\Delta\omega} \right) } \]
The corresponding quantisation error is approximately bounded by
\[ -\frac{\Delta\omega}{2} \leq e_q \leq \frac{\Delta\omega}{2}. \]
Saturation
A gyroscope also has a finite measurable angular-rate range.
If
\[ -\omega_{max} \leq \omega \leq \omega_{max}, \]
then the measured value may be modelled as
\[ \omega_m = \begin{cases} -\omega_{max}, & \omega<-\omega_{max}\\[4pt] \omega, & |\omega|\leq\omega_{max}\\[4pt] +\omega_{max}, & \omega>\omega_{max}. \end{cases} \]
If spacecraft rotation exceeds the sensor range, the measurement is clipped and no longer represents the true angular velocity.
4.1.1.15 Temperature Effects
Gyroscope bias and scale factor may depend significantly on temperature.
A simple linear bias-temperature model is
\[ \boxed{ b_g(T) = b_0 + k_T(T-T_0) } \]
where
- \(b_0\) is the bias at reference temperature \(T_0\),
- \(k_T\) is the bias temperature coefficient.
A higher-order approximation may be written as
\[ b_g(T) = b_0 + k_1(T-T_0) + k_2(T-T_0)^2. \]
Scale factor can also depend on temperature:
\[ s_g=s_g(T). \]
Thermal calibration and temperature compensation can therefore be important for spacecraft that experience significant orbital thermal cycling.
4.1.1.16 Complete Three-Axis Measurement Model
Combining the principal deterministic and stochastic error sources gives the three-axis gyroscope model
\[ \boxed{ \boldsymbol{\omega}_m = \left( I+S_g+M_g \right) \boldsymbol{\omega}_{true} + \mathbf b_g + \mathbf n_g } \]
A more complete simulation model can also include sensor mounting, temperature dependence, saturation, and quantisation:
\[ \boxed{ \boldsymbol{\omega}_m = Q \left[ \operatorname{sat} \left( (I+S_g+M_g) C_B^G \boldsymbol{\omega}^{B}_{true} + \mathbf b_g(T) + \mathbf n_g \right) \right] } \]
where
- \(C_B^G\) represents the body-to-gyro mounting transformation,
- \(S_g\) represents scale-factor error,
- \(M_g\) represents axis misalignment,
- \(\mathbf b_g(T)\) represents temperature-dependent bias,
- \(\mathbf n_g\) represents stochastic measurement noise,
- \(\operatorname{sat}(\cdot)\) represents saturation,
- \(Q[\cdot]\) represents quantisation.
This model provides a practical basis for software simulation, Monte-Carlo analysis, and estimator development.
4.1.1.17 Continuous vs Discrete-Time Model
The physical gyroscope can be represented in continuous time, while spacecraft flight software normally processes measurements at discrete sampling instants.
Continuous-Time Measurement
\[ \boldsymbol{\omega}_m(t) = \boldsymbol{\omega}(t) + \mathbf b_g(t) + \mathbf n_g(t). \]
Bias dynamics may be represented as
\[ \dot{\mathbf b}_g(t) = \mathbf n_b(t). \]
Discrete-Time Measurement
Let
\[ t_k=kT_s. \]
The discrete measurement becomes
\[ \boxed{ \boldsymbol{\omega}_{m,k} = \boldsymbol{\omega}_k + \mathbf b_{g,k} + \mathbf v_k } \]
and a random-walk bias model becomes
\[ \boxed{ \mathbf b_{g,k+1} = \mathbf b_{g,k} + \mathbf w_k }. \]
For a first-order Gauss-Markov model,
\[ \mathbf b_{k+1} = e^{-T_s/\tau_b} \mathbf b_k + \mathbf w_k. \]
This form is particularly convenient for Kalman-filter and EKF implementation.
4.1.1.18 Simulink Sensor Model
A practical Simulink gyroscope model should reproduce the measurement chain from true angular velocity to the digital rate delivered to the estimator.
Signal Flow
True Angular Velocity
|
v
Sensor-Frame Transformation
|
v
Scale-Factor Error
|
v
Axis Misalignment
|
v
Sum <----- Constant Bias
^ <----- Bias Drift
^ <----- White Noise
|
v
Saturation
|
v
Quantisation
|
v
Sample and Hold
|
v
Measured Angular Velocity
Recommended Simulink Blocks
- Matrix Gain for \(C_B^G\),
- Matrix Gain for \(I+S_g+M_g\),
- Constant block for fixed bias,
- Random Number or Band-Limited White Noise block,
- Integrator for bias random walk,
- Sum block for additive errors,
- Saturation block,
- Quantizer block,
- Zero-Order Hold or discrete sampling block,
- output \(\boldsymbol{\omega}_m\).
The bias branch can be generated using
\[ \dot{\mathbf b}_g = \mathbf n_b \]
with a noise source feeding an Integrator block.
4.1.1.19 Example Simulation
Consider a spacecraft with true body angular velocity
\[ \boldsymbol{\omega}_{true} = \begin{bmatrix} 0.10\\ -0.05\\ 0.02 \end{bmatrix} ^\circ/\mathrm{s}. \]
Suppose the constant gyro bias is
\[ \mathbf b_g = \begin{bmatrix} 0.005\\ -0.003\\ 0.002 \end{bmatrix} ^\circ/\mathrm{s}. \]
Assume one instantaneous noise realization of
\[ \mathbf n_g = \begin{bmatrix} 0.001\\ -0.001\\ 0.0005 \end{bmatrix} ^\circ/\mathrm{s}. \]
Ignoring scale-factor and misalignment errors,
\[ \boldsymbol{\omega}_m = \boldsymbol{\omega}_{true} + \mathbf b_g + \mathbf n_g. \]
Therefore,
\[ \boxed{ \boldsymbol{\omega}_m = \begin{bmatrix} 0.106\\ -0.054\\ 0.0225 \end{bmatrix} ^\circ/\mathrm{s} } \]
Even though each individual error is small, the measured rate differs from the actual spacecraft rate.
Accumulated Bias Effect
If an \(x\)-axis bias of
\[ 0.005^\circ/\mathrm{s} \]
remains uncompensated for
\[ 600~\mathrm{s}, \]
then the approximate accumulated attitude error is
\[ 0.005\times600 = 3^\circ. \]
This simple example demonstrates why even small gyro biases can become important during long periods of attitude propagation.
4.1.1.20 Reading a Gyroscope Datasheet
Gyroscope selection requires more than simply checking the maximum measurable angular rate.
Important specifications include the following.
| Specification | Meaning |
|---|---|
| Measurement range | Maximum measurable angular rate |
| Bias | Zero-rate output offset |
| Bias stability | Long-term stability of the zero-rate output |
| Bias repeatability | Change in bias between power cycles |
| Noise density | High-frequency random rate noise |
| Angle Random Walk | Accumulated angular uncertainty caused by rate noise |
| Scale-factor error | Error in angular-rate sensitivity |
| Scale-factor stability | Variation of scale factor with time or temperature |
| Misalignment | Angular error between sensing axes |
| Cross-axis sensitivity | Response to rotation about orthogonal axes |
| Bandwidth | Frequency range over which rates are measured accurately |
| Update rate | Frequency at which measurements become available |
| Resolution | Smallest distinguishable angular-rate increment |
| Latency | Delay between physical motion and output availability |
| Operating temperature | Temperature range over which specified performance is valid |
| Power | Electrical power consumption |
| Mass | Physical mass of the sensor |
| Radiation tolerance | Suitability for the expected spacecraft radiation environment |
A wide measurement range does not automatically imply high accuracy.
For precision spacecraft attitude determination, parameters such as
\[ \text{bias instability}, \qquad \text{ARW}, \qquad \text{scale-factor stability} \]
may be more important than the maximum angular-rate range.
4.1.1.21 MEMS vs FOG vs RLG
The choice of gyroscope technology depends on the required performance, mission class, spacecraft resources, and environmental constraints.
| Characteristic | MEMS | FOG | RLG |
|---|---|---|---|
| Operating principle | Coriolis vibration | Sagnac effect in optical fibre | Sagnac effect in a laser cavity |
| Size | Very small | Medium | Usually larger |
| Power | Low | Moderate | Moderate to high |
| Cost | Low to moderate | High | High |
| Bias stability | Moderate to poor depending on grade | Very good | Excellent |
| Noise | Higher | Low | Very low |
| Moving mechanical rotor | No conventional rotor | No | No |
| Typical application | CubeSats, UAVs, compact IMUs | Precision spacecraft and navigation | High-grade inertial navigation |
Technology selection should consider required attitude accuracy, angular rate range, bias stability, mass, volume, power, cost, radiation environment, mission duration, redundancy philosophy, and heritage.
4.1.1.22 Spacecraft Applications
Gyroscopes are used throughout nearly every phase of spacecraft operation.
Typical applications include
- attitude-rate measurement,
- quaternion propagation,
- reaction-wheel feedback control,
- control-moment-gyro control systems,
- thruster-based attitude manoeuvres,
- rate damping,
- detumbling,
- safe mode,
- spacecraft slew manoeuvres,
- rendezvous and docking,
- formation flying,
- inertial navigation,
- star-tracker propagation between updates,
- sensor fault detection and redundancy management.
Rendezvous and Docking
During rendezvous and docking operations, accurate angular-rate knowledge is especially important because relative attitude and body-rate errors directly influence docking alignment, capture conditions, sensor pointing, and thruster-control performance.
Safe Mode
In safe mode, the spacecraft may rely on gyroscopes together with coarse attitude sensors to reduce body rates or maintain a recoverable attitude.
Precision Pointing
For high-precision pointing missions, gyro measurements can be used to propagate the attitude at high rate between star-tracker measurements, allowing the controller to operate at a much higher frequency than the absolute attitude sensor alone.
4.1.1.23 Gyroscope → Quaternion Propagation
The direct connection between a gyroscope and spacecraft attitude kinematics occurs through the quaternion differential equation.
Let the spacecraft quaternion be
\[ \mathbf q = \begin{bmatrix} q_0\\ q_1\\ q_2\\ q_3 \end{bmatrix} \]
and let the body angular velocity be
\[ \boldsymbol{\omega} = \begin{bmatrix} \omega_x\\ \omega_y\\ \omega_z \end{bmatrix}. \]
One common quaternion kinematic equation is
\[ \boxed{ \dot{\mathbf q} = \frac{1}{2} \Omega(\boldsymbol{\omega}) \mathbf q } \]
with
\[ \Omega(\boldsymbol{\omega}) = \begin{bmatrix} 0 & -\omega_x & -\omega_y & -\omega_z\\ \omega_x & 0 & \omega_z & -\omega_y\\ \omega_y & -\omega_z & 0 & \omega_x\\ \omega_z & \omega_y & -\omega_x & 0 \end{bmatrix}. \]
In practice, the true angular velocity is not available to the flight computer. Instead, it receives
\[ \boldsymbol{\omega}_m. \]
If an estimate of the gyro bias is available, a corrected angular rate is formed:
\[ \boxed{ \hat{\boldsymbol{\omega}} = \boldsymbol{\omega}_m - \hat{\mathbf b}_g } \]
and the attitude propagation becomes
\[ \boxed{ \dot{\hat{\mathbf q}} = \frac{1}{2} \Omega \left( \boldsymbol{\omega}_m - \hat{\mathbf b}_g \right) \hat{\mathbf q} }. \]
The signal chain is therefore
\[ \boxed{\boldsymbol{\omega}_{true}} \rightarrow \boxed{\text{Gyroscope}} \rightarrow \boxed{\boldsymbol{\omega}_m} \rightarrow \boxed{\text{Bias Correction}} \rightarrow \boxed{\text{Quaternion Kinematics}} \rightarrow \boxed{\hat{\mathbf q}}. \]
Because gyro bias and measurement noise are integrated during propagation, attitude uncertainty grows with time unless the propagated solution is periodically corrected using an absolute reference sensor.
4.1.1.24 Gyroscope → EKF Bias Estimation
One of the most important applications of an Extended Kalman Filter in spacecraft attitude determination is the simultaneous estimation of attitude error and gyroscope bias.
A typical error-state vector may be written as
\[ \boxed{ \mathbf x = \begin{bmatrix} \delta\boldsymbol{\theta}\\ \mathbf b_g \end{bmatrix} } \]
where
- \(\delta\boldsymbol{\theta}\) is a small attitude-error vector,
- \(\mathbf b_g\) is the gyroscope bias.
Gyro Propagation
The gyroscope measurement is
\[ \boldsymbol{\omega}_m = \boldsymbol{\omega}_{true} + \mathbf b_g + \mathbf n_g. \]
The estimator subtracts the current bias estimate:
\[ \hat{\boldsymbol{\omega}} = \boldsymbol{\omega}_m - \hat{\mathbf b}_g. \]
This corrected angular rate is then used to propagate the quaternion.
Absolute Attitude Measurement
An absolute reference sensor such as a star tracker provides an independent attitude observation,
\[ \mathbf q_{ST}. \]
The predicted attitude obtained from gyro propagation is compared with the star-tracker measurement.
The difference forms the measurement innovation used by the EKF.
Bias Correction
If the filter observes a persistent attitude discrepancy, part of the error may be attributed to gyro bias.
The bias estimate is updated approximately as
\[ \boxed{ \hat{\mathbf b}_{g,k}^{+} = \hat{\mathbf b}_{g,k}^{-} + K_b\mathbf y_k } \]
where
- \(\mathbf y_k\) is the measurement innovation,
- \(K_b\) is the bias-related portion of the Kalman gain.
The corrected gyro measurement then becomes
\[ \boxed{ \boldsymbol{\omega}_{corr} = \boldsymbol{\omega}_m - \hat{\mathbf b}_g } \]
and is fed back into the quaternion propagator.
Estimator Architecture
Gyroscope
|
v
Measured Angular Rate
|
v
Subtract Estimated Bias
|
v
Quaternion Propagation
|
v
Predicted Attitude
|
+------------------------------+
|
Star Tracker |
| |
v v
Measured Attitude ------------> Innovation
|
v
EKF
|
+--------------+--------------+
| |
v v
Attitude Correction Bias Estimate
|
|
+------>
Gyro
Bias Correction
The gyroscope provides high-rate relative attitude information, while the star tracker or another absolute reference sensor prevents long-term drift.
The EKF combines the two sources and continuously estimates both attitude error and gyroscope bias.
The complete architecture can therefore be summarised as
\[ \boxed{\text{True Angular Rate}} \rightarrow \boxed{\text{Gyroscope Model}} \rightarrow \boxed{\text{Measured Angular Rate}} \rightarrow \boxed{\text{Quaternion Propagation}} \rightarrow \boxed{\text{Absolute Sensor Correction}} \rightarrow \boxed{\text{EKF}} \rightarrow \boxed{\text{Attitude + Bias Estimate}}. \]
This creates the bridge from the gyroscope sensor model into the sensor fusion and attitude-estimation algorithms developed later in the GNC theory notes.