Subject: [IGSMAIL-0591] New GPS attitude model
From: Yoaz E. Bar-Sever/JPL
Date: Mon, 9 May 1994 16:25:21 PDT

******************************************************************************
IGS Electronic Mail      Mon May  9 16:25:21 PDT 1994      Message Number 0591
******************************************************************************

Author: Yoaz E. Bar-Sever/JPL
Subject: New GPS attitude model

IMPROVEMENT TO THE GPS ATTITUDE CONTROL SUBSYSTEM ENABLES PREDICTABLE
ATTITUDE DURING ECLIPSE SEASONS

It is well known that high-precision GPS positioning degrades during GPS
eclipse seasons.  A major source of this degradation is the mismodeling
of the yaw attitude of those GPS satellites that are in eclipsing
orbits.  The yaw attitude of GPS satellites is essentially random during
an eclipse and for up to 30 minutes past exiting from shadow.
Furthermore, commonly used models of the noon turn can be inaccurate for
a period of up to 30 minutes.  This leads to both measurement and
dynamic errors.  Errors in the radio metric measurements are introduced
because the transmitterphase center and the carrier phase wind-up are
mismodeled.  This measurement error can be as large as 1 wavelength.
Errors in the satellite dynamics are introduced because the direction of
the solar pressure force is mismodeled during the 30-minute recovery
period after exiting the shadow and during the noon turn.

The GPS attitude control system uses Sun sensors which have a dead band
around zero.  Thus without any bias in the sensor system the yaw
attitude is indeterminate in shadow.  The system can be made predictable
by introducing a bias.  Currently, and for unrelated reasons, the Air
Force is operating three spacecraft in this biased mode.  The Air Force
has agreed to bias the attitude control subsystem of all GPS satellites
except three (SVN 11, 14 and 20), and it will take effect on June 6,
1994.

The new GPS attitude modifications should only affect high-precision
users who are sensitive to decimeter-level errors in the broadcast
signals.  High-precision users may experience some degradation in their
navigation solution after June 6 unless they make the necessary
modifications to their software.  A significant improvement is expected,
though, if the correct modeling and estimation strategy are used.

Why is the GPS attitude important
=================================

The GPS attitude is important for kinematic and dynamic reasons.
Dynamically, the important solar pressure force is a strong function of
the attitude.  Kinematically, the effect on the measurement model is
potentially more important than the dynamic effect.  It is two-fold:  an
unmodeled yaw will change the transmitter phase center and it will also
change the phase wind-up for a station-satellite pair.  A detailed
analysis of the wind-up effect can be found in Reference 1, from which
the following paragraph is an excerpt.

"In the Global Positioning System (GPS) two types of observables,
pseudorange and carrier phase, are available from signals carried by
circularly polarized waves.  Carrier phase provides information on the
range between the transmitter and the receiver, biased by an unknown
number of integer cycles that is known as the cycle ambiguity.  The
electromagnetic wave may be visualized as a rotating electric field
which propagates through space from the transmitting antenna to the
receiving antenna.  In an idealized situation, the measured carrier
phase angle at the receiving antenna is equal to the geometric angle
between the instantaneous electric field at the receiving antenna and a
reference direction on the antenna.  Changing the antenna orientation
changes the reference direction and thus the measured phase.  Similarly,
changing the orientation of the transmitting antenna changes the
direction of the electric field at the transmitting antenna and
subsequently that at the receiving antenna.  The result is also a change
in the measured phase.  Thus the observed carrier phase depends on the
orientation of the antennas of the transmitter and the receiver as well
as the direction of the line of sight.  ...This paper describes a method
to compute the phase correction due to this geometric effect.  ...The
corrections do not cancel when the data are doubly differenced to
eliminate the clock errors.  An example with a simple geometry is given
to show that the residual phase shift after double differencing could be
as large as half a cycle (180) depending on the baseline length."

The residual phase value of half a cycle quoted above assumes a
satellite attitude which is perfectly known, i.e.  satellite yaw is not
taken into account.  If the satellite then rotates around its antenna
boresight the residual phase shift will be bigger.  For example, imagine
a station-satellite pair such that the satellite is right above the
station.  If the station tracks the carrier phase, then, when the
satellite yaws (rotates around its Z axis which is along the navigation
antenna boresight), the phase of the received signal will change.  If
this rotation is not modeled the station will infer that the range to
the satellite is changing.  When the satellite rotates a full turn the
station will infer 1 wavelength change in range.  During shadow events a
GPS satellite can randomly rotate up to a full turn.

The wind-up error due to satellite yaw is common to all stations
observing the satellite.  Consequently, double differencing will
eliminate the wind-up error due to unmodeled satellite yaw but will not
affect the phase center error.  The phase center error can cause a range
error as large as 14 cm.  Solving for clocks instead of double
differencing is still insensitive to the wind-up error unless
pseudo-range is also processed.  In that case both phase center and
wind-up errors will be present.

The problem with the current GPS yaw attitude during eclipse seasons
====================================================================

Most software packages have modeled GPS attitude as follows:  a
spacecraft - fixed coordinate system is defined where the Z axis is
along the navigation antenna boresight, the Y axis is along the solar
panel boom and the X axis completes a right hand system.  This system is
oriented such that the Z axis points at the geocenter, the Y axis is
perpendicular to the s/c - Sun vector and X forms a sharp angle with the
s/c - Sun vector (i.e.  points in the general direction of the Sun).
Define the "yaw angle" as the angle between the s/c-fixed X axis and the
orbit plane along the direction of the s/c velocity.

It is true that GPS satellites keep this nominal orientation outside
eclipse seasons.  During eclipse season, though, the satellites deviate
significantly from this attitude model.  This is due to the design of
the satellite control subsystem.  During shadow events the signal from
the Sun sensors vanishes.  The unit that converts the analog Sun sensor
signal into digital representation lacks the ability to represent zero
voltage.  The quantization error is large enough to drive the satellite
at full yaw rate and the actual output is determined by the noise in the
system.  Typically, a satellite will start yawing at full rate upon
entering shadow.  At maximum yaw rate of about 0.12 degrees/second the
satellite can yaw more than 360 degrees during a 50-minute long shadow
event.  Upon exit it will find itself 180 degrees in yaw error (since
the nominal yaw attitude can change by as much as 180 degrees during
shadow).  The satellite will need half an hour to correct for that
error.  Neither the direction of the yaw during shadow, nor the
magnitude of the yaw itself are predictable.  Satellites have been
observed to oscillate in yaw, freeze and switch direction of full yaw.
The mismodeling during the noon turn is milder.  Most software packages
simply ignore the natural limits on the yaw rate.  Because the satellite
yaw rate is limited, its actual yaw attitude will lag behind the ideal
yaw attitude for orbits with small beta angle (beta < 5 degrees) during
noon turns.  The mismodeling during shadow and during noon combine to
degrade any navigation solution.  The level of degradation depends on
the number of satellites in eclipse, the beta angle, and the random
behavior of the satellites during shadow.  Our analysis has shown that a
single eclipsing satellite during maximum shadow can cause more than 10%
degradation in overall solution, that is, every measure of the quality
of the solution degrades by 10%.  These include post- fit residuals, GPS
orbit overlaps from day to day, baseline repeatability, station position
repeatability, LEO solution (e.g.  Topex) overlap and more.
Topex/Poseidon solutions have improved by 30% when all GPS satellites
are in full Sun, suggesting significant benefits from properly modeling
the yaw during eclipse seasons.

Making GPS yaw attitude predictable
===================================

It is possible to bias the output from the Sun sensors by 0.5 degree,
which is the smallest bias allowed.  This means that outside shadow the
satellite will have about 0.5 degree yaw error (depending on the
satellite orbit position).  During shadow this bias will overwhelm the
noise and will drive the satellite with maximal yaw rate toward fixing
the yaw "error".  Since the sign of the bias is known, so is the
direction of the yaw.  This makes it possible to model the satellite yaw
attitude accurately enough so that we can predict the satellite attitude
at all times with sufficient precision, including the Sun recovery
periods.  This yaw bias scheme was proposed to the US Air Force and they
have agreed to implement it starting June 6.

After June 6 eclipsing satellites will yaw at full rate upon entering
shadow.  For some satellites the difference between the nominal attitude
model and the actual behavior will be larger than was the case when the
GPS yaw attitude was determined randomly.  This will degrade
high-precision solutions unless it is accurately modeled.  When properly
modeled, an overall improvement in high- precision solutions is expected
during eclipse seasons.

Modeling the new GPS attitude
=============================

A model for the GPS satellite attitude control subsystem was written
that predicts the yaw attitude of the "biased" satellites for any orbit
position with high accuracy.  The core model and the most important
utilities have been designed to be portable.  They are simply a set of
subroutines communicating through the calling sequence only.  These
subroutines are available to all interested users.  Relatively minor
software modifications are required to accommodate these subroutines.
There is a need to estimate a new set of parameters.  Specifically, a
yaw rate parameter needs to be estimated separately for every shadow
event and noon turn.  The yaw rate can be treated as a piece- wise
constant parameter or as a set of parameters such that the yaw rate is
constant over shadow and noon turns and has a discontinuity in between.
Our experience is that the problem is sufficiently non-linear to require
iterating on the solution.  Iteration and estimation may not be
necessary in the future as more is learned about the parameters of the
attitude control system.

The three major modules of any GPS navigation software are:  the (GPS)
satellite integrator which generates the nominal orbit and partials, the
measurement model which forms the pre-fit residuals and computes the
partials of the observables wrt all the estimated parameters and the
parameter estimation software.  All of these will need to be modified.

The yaw model has to be added to the orbit integrator due to the dynamic
effects of the yaw attitude.  The yaw itself cannot be computed without
knowledge of the precise orbit position.  So the natural place for the
new yaw model is in the orbit integration module.  Then the yaw
information has to be passed on to the "measurement model" module.
Utilities were created to write "attitude" files during the run of the
integrator and to read them into the measurement model.  There, it is
necessary to modify the subroutine that models the phase wind-up to
account for the modeled yaw and its partials.  The satellite maximum yaw
rate is the recommended parameter to be estimated and partials of the
yaw angle wrt this parameter are computed along with the yaw angle in
the orbit integrator.  Until more data are available we must assume (as
indeed was observed in some cases) that the maximum yaw rate of the
satellite can change from one shadow event to the next, or from shadow
to noon turn.  It depends on some unmodeled torque exerted on the
satellite by solar pressure, gravity and the like.  A simple strategy is
to insert a parameter reset mid-way between noon and midnight, i.e., the
parameter is constant over shadow and over noon but can vary change 12
hours.  This requires a small program to read the time of the shadow
events off the orbit file and to fix the timing of the resets
accordingly.  Typically, at least one iteration on the solution of the
yaw parameter (the maximum yaw rate) is necessary.  As more is learned
about the possible values of the yaw parameters it may be possible to
predict them well enough so that iterations will not be necessary.

How to get the subroutines
==========================

All subroutines have been placed on "sideshow" (internet node
128.149.70.41) where they are available through anonymous FTP.  They can
be found under the directory "pub/GPS_yaw_attitude".  A subdirectory
called "software" contains the yaw model subroutines as well as
subroutines to write and read the attitude files.  Also contained there
are measurement model subroutines to handle the phase wind-up and its
partials (called "phase_wind_up") and to handle phase center corrections
and partials (called "phase_center").  Along with every subroutine there
is a README file with some implementation notes that you may find
useful.  Some sample plots can be found in "pub/GPS_yaw_attitude/plots".

How to get more information
===========================

We continue to study the attitude model and hope that this announcement
will generate continued interaction in the precision GPS community.
More detailed information about the attitude model can be communicated
upon request.  If you have any questions please write to me at:
[email-masked].

How to test the new software
============================

>From July 9 to July 17 1993, GPS 24 was in near maximal eclipse.  That
satellite contained a positive bias.  Use a yaw rate value of 0.119
degrees/second as an initial guess.  Marked improvement should appear in
your solutions from that period with the new models.  Current solutions
from that period should show post-fit residuals of GPS 24 larger by an
order of magnitude during and after shadow events.  After the new yaw
model is installed and applied to GPS 24 no particular correlation
between post-fit residual distribution and shadow events should be
evident.  Postscript files with some sample plots are available in
"pub/GPS_yaw_attitude/plots".

Acknowledgement
===============

The original idea of biasing the Sun sensors as a way to solve the GPS
attitude problem during shadow was suggested by Joseph A.  Anselmi of
the Aerospace Corporation.

References
==========

1.  Wu, J.T.  et.  al.  Effects of Antenna Orientation on GPS Carrier
Phase.  Manuscripta Geodetica (1993) 18:91-98.