This answer to How much time did the longest maneuver last? says:

The GOCE satellite mission (Gravity Field and Steady-State Ocean Circulation Explorer) lasted 55 months (4.6 years) of largely continuous thrust as drag compensation in LEO.


The thrust level was modulated via a unique dynamic control system to compensate for variable atmospheric drag.

Wikipedia's GOCE says:

The satellite's main payload was the Electrostatic Gravity Gradiometer (EGG) to measure the gravity field of Earth. This instrument consisted of three pairs of capacitive accelerometers arranged in three dimensions that responded to tiny variations in the 'gravitational tug' of the Earth as it traveled along its orbital path. Because of their different position in the gravitational field they all experienced the gravitational acceleration of the Earth slightly differently. The three axes of the gradiometer allowed the simultaneous measurement of the five independent components of the gravity gradient tensor.

The ion engine's generally steady but slowly variable thrust's ability to null/compensate for acceleration due to atmospheric drag was a critical aspect of the mission.

Question: What "unique control system" modulated GOCE's thrust to compensate for variable atmospheric drag? How did it know how to modulate it?


  • $\begingroup$ Are you asking how the drag is measured / estimated? $\endgroup$
    – AJN
    Aug 13, 2021 at 0:56
  • 1
    $\begingroup$ @AJN that would certainly be a big part of it, but after the measurement it also "modulated GOCE's thrust" as well. Do you think that's too much for one question? Would answers be found in unrelated sources? I'm thinking that these would be so closely coupled (for such a precision system) that it's best to discuss all in one place. $\endgroup$
    – uhoh
    Aug 13, 2021 at 0:57
  • $\begingroup$ GOCE used its main science package (Electrostatic Gravity Gradiometer) which measures acceleration accurate to pico-meter per second levels, combined with the advanced GPS position tracking which was accurate to about 2mm. How they got such accuracy and how it was fed to the 20 millinewton thrusters I leave to the actual experts. $\endgroup$ Sep 21, 2021 at 18:58
  • 2
    $\begingroup$ I think the answers are here, but they are not answers I am capable of summarizing. semanticscholar.org/paper/… $\endgroup$ Nov 16, 2023 at 1:36

1 Answer 1


The EO Portal page on GOCE provides a lot of information and references, including for the Drag Free and Attitude Control System (DFACS). It includes this block diagram:

DFACS High level block diagram

(source; credit: Thales Alenia Space)

The block diagram is for the Drag Free Mode (DFM) of the controller (it has four different control modes).

On the top-right is the Ion Propulsion Assembly (IPA) control output. At the bottom-right the Magnetic Torquers (MTR) control output. Those are the two actuation outputs available to the DFM.

The inputs are:

  • Electrostatic Gravity Gradiometer (EGG): this is actually the primary science instrument. It measures the gravity gradient.
  • Satellite-to-Satellite Tracking Instrument (SSTI): this is the secondary science. It measures position by tracking up to 12 GPS satellite signals.
  • Three 3-axis Magnetometers (MGM)
  • Three Star Trackers (STR)

In addition, the spacecraft was equipped with Laser Retro Reflectors (LRR). These were not input for the control, but instead provide a means to do precise orbit determination from the ground as an independent verification.

The block diagram is, of course, much simplified. It's more like this block diagram, taken from the paper by E. Canuto, "Drag-Free and Attitude Control for the GOCE satellite (hat tip @Organic Marble):

Block-diagram of the Embedded Model surrounded by Control Law and Noise Estimators.


Without going into too much detail, what we see here is the following:

  • In blue boxes, a mathematical representation of the spacecraft dynamics (model); the model outputs are compared against the actual spacecraft behaviour, and the resulting difference (error) is fed into noise (disturbance) estimators (in purple/pink, on the right)
  • In yellow/green, the sensors
  • The control law (drag-free trajectory computation, fuel saving, etc.) in purple/pink on the left.

One of the main difficulties is how to decouple the control signals from the science signals, meaning: how to ensure that the control is only compensating for non-gravity disturbances. The paper explains this in much detail and a lot of math.

A paper by M. Romazzano et al., "IN-ORBIT EXPERIENCE WITH THE DRAG-FREE ATTITUDE AND ORBIT CONTROL SYSTEM OF ESA'S GRAVITY MISSION GOCE" explains it at a high-level: the EGG consist of six sensors, arranged in three pairs aligned with along-track, cross track and vertical axis of the local coordinate reference frame. By taking the common mode signals are the input to the controller, the differential signals are the science signal, the idea being that the common mode disturbance signals are caused by disturbances common to both sensors on the same axis, like drag.

The uniqueness of the control is (somewhat opinionated) in the combination of the following:

  • The control is based on a real-time model of the spacecraft. The model (actually the EGG) was re-calibrated by shaking the entire spacecraft periodically using a dedicated set of thrusters (the Gradiometer Calibration Assembly (GCA)).
  • The attitude control relied on stabilisation by the aerodynamic design of the spacecraft to reduce actuation noise in the measurements. The design was also symmetric for this reason.
  • The orbit control relied on a low-thrust ion drive that was almost continuously on for the same reason (near continuous low thrust is better than discrete bursts of higher thrust).
  • It is unconventional to see the orbit control thruster aligned with the orbit at all times.
  • 2
    $\begingroup$ Fascinating. I had no idea you could measure high-order gravitational field features from orbit with a baseline of a meter or two. Apparently it's a well-developed field called gradiometry. Thanks for teachning me something new. $\endgroup$ Nov 20, 2023 at 4:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.