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:
(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):
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.