Introduction

In recent years, drag-free satellites (Lange 1964; DeBra 1997; Armano et al. 2016) have played key roles in many space science projects, including navigation, earth science, fundamental physics, and astrophysics. In the area of navigation, the drag-free satellites have been used for autonomous fuel-efficient orbit maintenance, and precision real-time onboard navigation (Leitner 2003). In geodesy applications, the drag-free satellites allow for the fine-structured gravity field maps of the Earth (Carraz et al. 2014). For example, the GOCE satellite (Canuto 2008) that is launched in 2009, is part of the European space program dedicated to exploring the Earth’s gravity field. Scientists have also explored drag-free satellites that are simple and cost-effective for autonomous observations of Earth, as well as in Earth atmospheric studies (Nguyen and Conklin 2015). In fundamental physics, the drag-free satellites have been used for equivalence principle testing, including the Microscope mini-satellite (Touboul et al. 2002), operated by the CNES, which is used to test the universality of equivalence principle with a precision to the order of 10−15, 100 times more precise than could be achieved on Earth. It was launched in 2016. In the area of astrophysics, drag-free technology is key to LISA Pathfinder (Fichter 2005a, Armano et al. 2016), which tests the technologies needed for the Laser Interferometer Space Antenna (LISA). The LISA is a European Space Agency mission designed to detect and accurately measure gravitational waves, which is planned to be launched in 2030 s. China has also propose space gravitational wave detection and earth gravity mapping projects based on drag-free technology (Li et al. 2018).

The drag-free satellites are equipped with gravitational reference sensors (GRS), which shield a free-flying test mass (TM), also referred as proof mass, both from external disturbances and disturbances caused by the satellite itself. The GRS measures the position and attitude of the test mass with respect to the spacecraft, and a feedback control system commands high precision continuous thrusters to keep the satellite centered within the test mass. Typically, for the cubic test mass or more than one test mass within a satellite, an electrostatic suspension actuator is required to control the position and attitude of the test mass with respect to the satellite. The drag-free performance requirements are usually specified as residual acceleration noise spectral densities of the test mass or masses along a specific axis.

Because of the dynamic coupling and relative motion between the test mass and spacecraft, it has proven to be very challenging to achieve the requirements imposed by the scientific goals. There are many related studies conducted regarding this problem (Fichter et al. 2005a, b, 2006, Bortoluzzi et al. 2003, 2004, Chapman et al. 2002). The couplings among the different degrees of freedom are decoupled by the feedback interconnections between the overall systems, which yield a system of decoupled simple single-input to single-output (SISO) systems. Control synthesis methods have been used to design controllers for these SISO systems. These have included a proportional- integral-derivative (PID) (Chapman et al. 2002), and optimization based on the definition of a weight function (Bortoluzzi et al. 2003, 2004), as well as \( {\mathcal{H}}_{\infty } \) synthesis techniques (Fichter et al. 2005a, b, 2006). In all of these cases, the structural uncertainties of the design plants are not taken into consideration. On the other hand, the robust drag-free controller synthesis method that is proposed by Pettazzi et al. (2009), in which the ν-gap metric is used to derive a simplified uncertain design plant, along with the control design technique based on mixed structure singular value, is used to synthesize a SISO controller. However, the decoupling method is approximate, and the controller of this synthesis technique is complex. Moreover, it has been found that the robust control synthesis is usually conservative, at the cost of the systems’ performances.

When considering the problem of drag-free control in this paper, a disturbance rejection based approach has been proposed to synthesis the controller (Zheng et al. 2009). The cross-couplings between the different control loops, as well as the external disturbances, have been treated as total “disturbance” estimated and rejected in real time. This strategy originated from the active disturbance rejection control (Han 2009), which is less dependent on the model due to its idea of using an extended state observer (ESO) to estimate the total “disturbance”, which includes both the internal disturbances and the external disturbances of the plant. The ADRC displays strong robustness and outstanding performances in the application research results (Xia et al. 2011, Liu and Li 2012). The objective of this study is to design a controller which could decouple the system, and also exhibit good performances in the parameter uncertainties and disturbance rejections.

The contributions of this work are in following aspects:

  1. (1)

    We develop disturbance decoupling control based on ADRC, and transform it into the form of transfer function, the control structure is simpler than that of (Zheng et al. 2009);

  2. (2)

    We derive two degree structure internal model control structure of ADRC based on reduce extend state observer, based on this the robust stability condition of the controller is derived, which is used to the robust stability verification;

  3. (3)

    We derive the search algorithm based on stability criteria and performance requirement conditions to determine controller parameters.

This paper is organized as follows: Section 1 is the introduction; In Section 2, the design model of the drag-free satellite is presented; In Section 3, the decoupling method, which is based on active disturbance rejection control and a disturbance rejection controller designed for the system, is detailed; In Section 4, the design results of this controller are presented; and finally, the conclusion is presented in Section 5.

Mathematical Model of the Drag-Free Satellite

This section presents a drag-free satellite model with a cubic test mass. Stephen Theil (2002) and Pettazzi (2008) have derived the system dynamics. In this model, the satellite is placed in the Sun-Earth Lagrangian point. The force and torque acting on the spacecraft due to drag-free control is provided by means of micro-thrusters (Gollor and Franke 2016), which are modeled as a first order system. The time constant takes into account the delays introduced by the electronic devices which driving the thrusting actuators. However, in past research, the delay of the suspension actuator front-end electronic (FEE) (Li et al. 2011) has not been considered, and this parameter definitely affected the designed controller. In this research, the FEE is also modeled as a first order system. In this section, we will briefly introduce the system dynamics of drag-free satellite, more details can be found in (Pettazzi 2008).

The simplified block-diagram of satellite system is shown in Fig. 1, and the reference frames, which are relevant for the derivation of the equation of motion, are depicted. In this figure, ∑I denotes the inertial coordinate system; ∑SC is the spacecraft body reference, and ∑TM is the body reference frame of the test mass.

Fig. 1
figure 1

Schematic of drag-free satellite with its test mass

As derived by Pettazzi (2008), the linearized equations describing the motion of the test mass with respect to the spacecraft are

$$ \ddot{q}={M}_q^{-1}\left\{ Kq+{f}_{SUS}+{f}_{TM}+\left({M}_u{M}_{SC}^{-1}\right)\left({f}_{dist}+{f}_{DF}\right)\right\} $$
(1)
$$ {f}_{SUS}=\left(I+{H}_{IS}\right){F}_{SUS} $$
(2)
$$ {\ddot{q}}_{SC}={M}_{SC}^{-1}\left({f}_{SC}+{f}_{dist}+{f}_{DF}\right) $$
(3)
$$ {a}_{tm x}={m}_{TM}^{-1}\left[{f}_{TM x}+{h}_{IS}{F}_{SUS\phi}+{K}_{x x}{x}_{tm}+{K}_{x\phi}\phi \right]. $$
(4)

The meaning of each symbol can be found in Table 1. The Eq. (4) is the measurement equation and x axis is the sensitive axis. The numerical values of the satellite and test mass parameters are displayed in Table 1, which are consistent with the values in (Antonucci et al. 2011). The stiffness, which is listed in Table 1, indicates that the design plant has unstable poles.

Table 1 Variables and numerical of drag-free satellite

The disturbances acting on the test mass ftm and the satellite fdist are modeled as zero-mean Gaussian white noise shaped by low pass filters (Gath et al. 2004). The filters describing the different input disturbances are displayed in Fig. 2.

Fig. 2
figure 2

Input disturbance weights. Disturbance force unit\( \mathrm{N}/\sqrt{\mathrm{Hz}} \), and disturbance torque unit \( \mathrm{N}\bullet \mathrm{m}/\sqrt{\mathrm{Hz}} \)

The position and attitude of the test mass are measured by GRS, and the measurement accuracy requirement is 2\( \mathrm{nm}/\sqrt{\mathrm{Hz}} \) in the displacement measurement, and 2\( 00\ \mathrm{nrad}/\sqrt{\mathrm{Hz}} \) in the rotation measurement, over the measurement bandwidth (Gath et al. 2004). The measurement noises are also modeled as zero-mean Gaussian white noises reshaped with low pass filters. The magnitude plots for the readout noise filters are shown in Fig. 3.

Fig. 3
figure 3

Measurement noise weight. Unit for measurement noise on x is\( \mathrm{m}/\sqrt{\mathrm{Hz}} \), and on ϕ is \( \mathrm{rad}/\sqrt{\mathrm{Hz}} \)

The thruster and the FEE are modeled as a first-order system in this study as follows:

$$ \varGamma =\frac{\kappa }{\tau s+1} $$
(5)
$$ {\varGamma}_{FEE}=\frac{1}{\tau_{FEE}s+1}. $$
(6)

As defined in (Pettazzi et al. 2009), an uncertainty of 50% with respect to the nominal value listed in Table 1 is considered on each element of the stiffness matrix. The scale factor κ indicates the static behavior of the thruster, which has an uncertainty of ±5%. An uncertainty of 50% is considered on the time constants of the thruster and FEE.

ADRC Based Drag-Free Design

Because of the uncertainty of the drag-free system and the coupling between the different coordinates, the design of the controller needs to take robustness and decoupling into account. As show in (Fichter et al. 2006) and (Pettazzi et al. 2009), the H and mixed structured singular value synthesis techniques have been proposed as methods to synthesize the SISO controllers. However, the structure of the controller is complex, and the control synthesis is conservative at the cost of the system performance. Therefore, this research is motivated by the problems that the parameters of the drag-free system are difficult to be obtained accurately, and coupling existed between different control loops. The goal of this research is to design decoupling controllers to suppress the uncertainty and disturbances of the drag-free satellite system.

In this work, a disturbance rejection based approach is proposed, where the cross-couplings between the drag-free loop and the suspension loop, as well as the external disturbances and internal uncertainties, are treated as “disturbance”, which are estimated in real time and rejected. This disturbance decoupling control (DDC) strategy originates from a recently proposed novel control method referred as active disturbance rejection control (ADRC). The ADRC is a quite different design philosophy, with good robustness and simple structure. Therefore, the ADRC has promising potential in designing drag-free control laws. In this section, the design process is illustrated in the following subsections. In these subsections, first, we will define the performance specification for the drag-free system control design. Second, the active disturbance rejection control strategy will be introduced, and the general form of ADRC for single input single output (SISO) system is given. Third, the internal model control structure of ADRC will be derived in this section, and the result of this section will be used in the robust stability verification for each control loop. Fourth, the idea of disturbance decoupling control is presented. Fifth, the details of design controllers for drag-free and suspension loop are given.

Specifications for Control Design

In this research, the control design is considered successful if the residual absolute acceleration acting on the test mass along the x direction is kept below (Fichter et al. 2005a):

$$ {S}_y^{1/2}\le 3\times {10}^{-14}\left[1+{\left(\frac{f}{3\mathrm{mHz}}\right)}^2\right]\frac{\mathrm{m}}{{\mathrm{s}}^2}\frac{1}{\sqrt{\mathrm{Hz}}} $$
(7)

In the measurement bandwidth (MBW)

$$ 1\mathrm{mHz}\le f\le 100\mathrm{mHz} $$

A decentralized controller structure is assumed in the current research, where the test mass x position is fed back by means of the thruster actuation and this control loop is drag-free loop. In addition, the attitude error is fed back by the suspension actuation and this control loop is suspension loop.

Active Disturbance Rejection Control

In this subsection, the general form of the ADRC based on reduce order extend state observer (RESO) for the SISO system is presented. Consideration is given to following model:

$$ {y}^{(n)}(t)= bu(t)+f\left(y(t),u(t),d(t)\right) $$
(8)

Where y(t), u(t) and d(t) are output, input and disturbance of the system respectively, and f(y, u, d) is a combination of the unknown dynamics and the external disturbance of the plant, which is denoted as generalized disturbance and assumed to be unknown in ADRC design. The parameter n is the relative order of the system and b is the gain of the cascade integral model.

In ADRC framework, the central idea is to estimate the unknown generalized disturbance f(y, u, d). Assuming the ‘generalized disturbance’ as an addition state, the augment state space model of the system (8) is:

$$ {\displaystyle \begin{array}{c}\dot{x}= Ax+ Bu+ Eh\\ {}y= Cx\end{array}} $$
(9)

Where x1 = y, x2 = y and\( h=\dot{f} \), C=[1, 0, …, 0] is n + 1dimensional vector, and

$$ A={\left[\begin{array}{cccc}0& 1& & \\ {}\vdots & & \ddots & \\ {}0& & & 1\\ {}0& \cdots & \cdots & 0\end{array}\right]}_{\left(n+1\right)\left(n+1\right)},B={\left[\begin{array}{c}0\\ {}0\\ {}\vdots \\ {}b\\ {}0\end{array}\right]}_{\left(n+1\right)\times 1},E={\left[\begin{array}{c}0\\ {}0\\ {}\vdots \\ {}0\\ {}1\end{array}\right]}_{\left(n+1\right)\times 1} $$
(10)

Due to y = x1 can be measured. Only the estimation of xi, i ≥ 2 is needed. The linear reduce order extend state observer (RESO) (Xue and Huang 2013) is design as

$$ {\displaystyle \begin{array}{l}\dot{\widehat{z}}=\left({A}_e-L{C}_e\right)\widehat{z}+\left({L}_1-{\beta}_1L\right)y+{B}_eu\\ {}\widehat{x}=\widehat{z}+ Ly\end{array}} $$
(11)
$$ {A}_e={\left[\begin{array}{cccc}0& 1& & \\ {}\vdots & & \ddots & \\ {}0& 0& \cdots & 1\\ {}0& \cdots & \cdots & 0\end{array}\right]}_{n\times n},{B}_e={\left[\begin{array}{c}0\\ {}0\\ {}\vdots \\ {}b\\ {}0\end{array}\right]}_n, $$
(12)

Where \( \widehat{x} \)is estimation of x except x1, \( \widehat{z} \) is intermediate variable and \( \widehat{z}=\left[{z}_2\kern0.5em \cdots \kern0.5em {z}_n\kern0.5em {z}_{n+1}\right] \). L is the gain of the observer, and L1 is intermediate variable.

$$ L={\left[{\beta}_1\kern0.5em {\beta}_2\kern0.5em \cdots \kern0.5em {\beta}_n\right]}^T $$
(13)
$$ {L}_1={\left[{\beta}_2\kern0.5em {\beta}_3\kern0.5em \cdots \kern0.5em {\beta}_n\kern0.5em 0\right]}^T $$
(14)
$$ {C}_e={\left[1\kern0.5em 0\kern0.5em \cdots \kern0.5em 0\right]}_{1\times n} $$
(15)

When Ae-LCe is asymptotically stable, \( {\widehat{x}}_2 \), …, \( {\widehat{x}}_n \) will approximate y derivatives (up to order n-1), and \( {\widehat{x}}_{n+1} \) will approximate the generalized disturbance f. The control law will be chosen as

$$ u=\frac{u_0-{\widehat{x}}_{n+1}}{b} $$
(16)

If the RESO is properly designed, i.e. \( {\widehat{x}}_{n+1}= \)f. Reduce the origin system to an nth integral system

$$ {y}^{(n)}={u}_0 $$
(17)

The controller of system (17) can be design directly as a state feedback law:

$$ {u}_0={k}_1\left(r-{\widehat{x}}_1\right)+{k}_2\left(\dot{r}-{\widehat{x}}_2\right)+\cdots +{k}_n\left({r}^{(n)}-{\widehat{x}}_n\right) $$
(18)

Where r is reference input, the observer gain L and feedback gain ki can be tuned based on the bandwidth-parameterization method proposed by (Gao 2003). Assume the RESO poles are placed at ωo and the closed-loop are placed at ωc, such that the gain βi and ki are calculated as:

$$ {\beta}_i={C}_n^i{\omega}_o^i,i=1,\cdots, n $$
(19)
$$ {k}_i={C}_n^{i-1}{\omega}_c^{n-i+1},i=1,\cdots, n $$
(20)

The final control law can be approximated as

$$ {\displaystyle \begin{array}{c}u(t)=\frac{k_1\left(r-{\widehat{x}}_1\right)+{k}_2\left(\dot{r}-{\widehat{x}}_2\right)+\cdots +{k}_n\left({r}^{(n)}-{\widehat{x}}_n\right)-{\widehat{x}}_{n+1}}{b}\\ {}={K}_0\left(\widehat{r}-\widehat{x}\right)\end{array}} $$
(21)

Where \( {K}_0=\left[{k}_1\kern0.5em {k}_2\kern0.5em \cdots \kern0.5em {k}_n\kern0.5em 1\right]/b \) and \( \widehat{r}={\left[r\kern0.5em \dot{r}\kern0.5em \cdots \kern0.5em {r}^{\left(n-1\right)}\kern0.5em 0\right]}^T \). It can be seen that an ADRC is a general control structure that only need the relative order and the high frequency gain ‘b’. It does not need to know the detailed structure and the parameters of the model. Based on the bandwidth-parameterization method the ADRC can be tuned with two parameters (ωc andωo). The general structure of ADRC is displayed in Fig. 4.

Fig. 4
figure 4

the general structure of ADRC

Internal Model Control Structure of ADRC

In this subsection, the internal model control structure of LADRC will be derived. This structure will be used in robust stability analysis of the drag-free system. By taking Laplace transform of (11), we have

$$ s\widehat{Z}(s)=\left({A}_e-L{C}_e\right)\widehat{Z}(s)+\left({L}_1-{\beta}_1L\right)Y(s)+{B}_eU(s) $$
(22)
$$ \widehat{X}(s)=\widehat{Z}(s)+ LY(s) $$
(23)

Where \( \widehat{Z}(s) \) and \( \widehat{X}(s) \) is the Laplace transform of z(t) and x(t). \( \widehat{R}(s) \) is Laplace transform of \( \widehat{r}(t) \).

$$ \widehat{R}(s)={\left[1\kern0.5em s\kern0.5em {s}^2\kern0.5em \cdots \kern0.5em {s}^n\kern0.5em 0\right]}^TR(s) $$
(24)

Solve for\( \widehat{X}(s) \), and substitute it into \( U(s)=K\left(\widehat{R}(s)-\widehat{X}(s)\right) \)

$$ \widehat{X}(s)=\left(\begin{array}{c}1\\ {}s{\left( sI-\left({A}_e-L{C}_e\right)\right)}^{-1}L\end{array}\right)Y(s)+\left(\begin{array}{c}0\\ {}{\left( sI-\left({A}_e-L{C}_e\right)\right)}^{-1}B\end{array}\right)U(s) $$
(25)
$$ U(s)={C}_1(s){F}_r(s)R(s)-{C}_2(s)Y(s) $$
(26)

Where

$$ {C}_1(s)=\frac{1}{1+K\left(\begin{array}{c}0\\ {} MB\end{array}\right)},{C}_2(s)=\frac{K\left(\begin{array}{c}1\\ {} sML\end{array}\right)}{1+K\left(\begin{array}{c}0\\ {} MB\end{array}\right)} $$
(27)
$$ M={\left( sI-\left({A}_e-L{C}_e\right)\right)}^{-1} $$
(28)

And \( {F}_r(s)=K{\left[1\kern0.5em s\kern0.5em {s}^2\kern0.5em \cdots \kern0.5em {s}^n\kern0.5em 0\right]}^T \) .The conventional feedback structure shown in Fig. 5a, in drag-free control the set point r = 0, such that the structure can be simplify as Fig. 5b. The above result shows that an ADRC is equivalent to a two-degree-of-freedom (TDF) feedback control structure shown in Fig. 5c.

Fig. 5
figure 5

a the general structure of ADRC. b ADRC for drag-free satellite. c the two-degree-of-freedom IMC

In the TDF-IMC structure, we have

$$ {P}_0=\frac{b}{s^n} $$
(29)
$$ U(s)=\frac{Q}{1-{P}_0Q{Q}_d}R(s)-\frac{Q{Q}_d}{1-{P}_0Q{Q}_d}Y(s) $$
(30)

Compared with (26), solving for Q and Qd,

$$ {Q}_d=\frac{C_2}{C_1{F}_r},Q=\frac{C_1{F}_r}{1+{P}_0{C}_2} $$
(31)

And the sensitivity and complementary sensitivity functions

$$ S=\frac{1-Q{P}_0{Q}_d}{1+Q\left(P-{P}_0\right){Q}_d},T=\frac{QP{Q}_d}{1+Q\left(P-{P}_0\right){Q}_d} $$
(32)

Assume P=P0,the complementary sensitivity functions can be simplify as

$$ T={P}_0Q{Q}_d $$
(33)

By the small-gain theorem, a sufficient condition for the system stable is

$$ {\left| T\varDelta \right|}_{\infty }<1 $$
(34)

∆ is multiplicative perturbation of the system. Substitute (34) into (33), the sufficient condition for the system stable is

$$ \mid Q\left( j\omega \right){Q}_d\left( j\omega \right)\mid <\frac{1}{\mid P\left( j\omega \right)-{P}_0\left( j\omega \right)\mid } $$
(35)

The formula (35) is the robust stability condition of ADRC control for SISO system.

Disturbance Decoupling Control

In section B and C, the ADRC for SISO system is addressed. However, the problem encountered in this paper is about multi-input multi-output system. In this paper, an ADRC based DDC approach is proposed to address the decoupling problem for the drag-free systems. The cross-couplings between the control loops, as well as the external disturbances, are treated as “disturbance”. An ESO is designed for each control loop, and the state and disturbances are estimated in real time by the ESO. On the other hand, a control law is designed based on the estimation similar to section B. The DDC is briefly addressed in the following section. Let:

$$ {\displaystyle \begin{array}{l}{\theta}_1=\left[{y}_1^{\left({n}_1-1\right)}(t),{y}_1^{\left({n}_1-2\right)}(t),...,{y}_1(t)\right]\\ {}{\theta}_2=\left[{y}_2^{\left({n}_2-1\right)}(t),{y}_2^{\left({n}_2-2\right)}(t),...,{y}_2(t)\right]\\ {}\vdots \\ {}{\theta}_m=\left[{y}_m^{\left({n}_m-1\right)}(t),{y}_m^{\left({n}_m-2\right)}(t),...,{y}_m(t)\right]\\ {}u=\left[{u}_1(t),{u}_2(t),\cdots, {u}_m(t)\right]\\ {}w=\left[{w}_1(t),{w}_2(t),\cdots, {w}_m(t)\right]\end{array}} $$
(36)

Then, by considering a system formed by a set of coupled input and output equations with predetermined input and output parings:

$$ \Big\{{\displaystyle \begin{array}{c}{y}_1^{\left({n}_1\right)}={f}_1\left({\theta}_1,{\theta}_2,{\theta}_m,\cdots, w,u,t\right)+{b}_{11}{u}_1\\ {}{y}_2^{\left({n}_2\right)}={f}_2\left({\theta}_1,{\theta}_2,{\theta}_m,\cdots, w,u,t\right)+{b}_{22}{u}_2\\ {}\vdots \\ {}{y}_m^{\left({n}_m\right)}={f}_m\left({\theta}_1,{\theta}_2,{\theta}_m,\cdots, w,u,t\right)+{b}_{mm}{u}_m\end{array}} $$
(37)

Where yi is the output, ui is the input, and wi is the external disturbances of the ith loop; \( {y}_i^{(n)} \)denotes the nith order derivative of yi, i = 1, 2, 3, …, m; and fi represents the combined effect of the internal dynamics and external disturbances in the ith loop, including the cross-channel interference. It should be noted that i refers to i = 1, 2, 3…, m in the following. In (37), it is assumed that the numbers of inputs and outputs are the same, and the order ni and input gain bii are obtained. Next for the ith loop, an nith-order ADRC controller can be design to make yi follow reference signal of the i th loop. In ADRC controller for every loop, fi is estimated and compensated by ESO, and the state feedback controller is design the same as the SISO system. The structure of DDC is show in Fig. 6.

Fig. 6
figure 6

the structure of disturbance decoupling control based on ADRC

Combine ADRC and DDC to Solve Drag-Free Control

The methods presented in section B, C, and D are combined to solve the drag-free control problem. The system Eq. (1) is divided into two parts. The first is the plant of the xtm direction, and its total disturbance. The second is the plant of the suspension loop, and its total disturbance. With the disturbance decoupling control, it could be assumed that the total disturbances in each loop are rejected by the control. Therefore, the measurement Eq. (4) could be represented by the sensitivity and complementary sensitivity function of each of the control loops.

In this section DDC is applied to control drag-free system.

First, the transfer function of the xtm direction is derived from Eq. (1) as follows:

$$ {\displaystyle \begin{array}{c}{m}_{tm}{\ddot{x}}_{tm}={k}_{x x}{x}_{tm}+{k}_{x\phi}\phi +h{{}_{IS}F}_{SUS}+{f}_{tm\_x}+{b}_{11}\left({f}_{dist\_x}+{f}_{DF}\right)\\ {}{b}_{11}=-\frac{m_{tm}}{m_{SC}}\end{array}} $$
(38)
$$ {b}_{11}=-\frac{m_{tm}}{m_{SC}} $$

Then, by assuming:

$$ {f}_1={k}_{x\phi}\phi +{h}_{IS}{F}_{SUS}+{f}_{tm\_x}+{b}_{11}{f}_{dist\_x} $$
(39)

Along with dDF = f1/b11, such that:

$$ {\ddot{x}}_{tm}=\frac{k_{xx}}{m_{tm}}{x}_{tm}+\frac{b_{11}\left({u}_1+{d}_{DF}\right)}{m_{tm}} $$
(40)

Then, this equation is converted into frequency domain using the Laplace transform, the plant transfer function is:

$$ {G}_{DF}=\frac{b_1}{s^2-{K}_x} $$
(41)

Where b1 = b11/mtm, and Kx = kxx/mtm. Similarly, the plant transfer function of the suspension loop is:

$$ {G}_{SUS}=\frac{b_2}{s^2-{K}_{\phi }} $$
(42)

Where b2 = 1/Itm, and Kϕ = kϕϕ/Itm, and the disturbance of the suspension loop is as follows:

$$ {\displaystyle \begin{array}{c}{f}_2={k}_{\phi x}{x}_{tm}+{f}_{tm\_\phi }+{b}_{22}{f}_{dist\_\phi}\\ {}{b}_{22}=-\frac{I_{tm}}{I_{SC}}\end{array}} $$
(43)

In this model, the coupling terms in Eq. (34) kϕ + hISFsus and (38) kϕxxtm are treated as external disturbances. In addition, f1 and f2 are estimated by the ESO of the drag-free and suspension loops and cancelled by the PD controller stated in Eq. (18). Finally, the full control structure of the drag-free and suspension loops could be constructed, as shown in Fig. 7. As derived in (27), the controllers GC_DF and GC_SUS can be expressed as

$$ {C}_2(s)={G}_c(s)=\frac{1}{b}\frac{C_{n2}{s}^2+{C}_{n1}s+{C}_{n0}}{C_{d2}{s}^2+{C}_{d1}s} $$
(44)

Where the coefficient can be found in the appendix. The two controllers have the same structure, the differences lies in choosing extend state observer bandwidth ωo and controller bandwidth ωc.

Fig. 7
figure 7

Block diagram of the drag-free satellite system

The closed loop expressions of each of the two loops could be derived, which are substituted into Eq. (4) as follows:

$$ {\displaystyle \begin{array}{c}{a}_{tm x}(s)={m}_{tm}^{-1}\Big\{{f}_{tm\_x}+{k}_{x x}\left[{S}_{DF}{G}_{DF}{d}_{DF}-{T}_{DF}{\eta}_x\right]+{k}_{x\phi}\left[{S}_{SUS}{G}_{SUS}{f}_2-{T}_{SUS}{\eta}_{\phi}\right]\\ {}+{h}_{IS}\left[-{T}_{SUS}{f}_2-{T}_{sus}{\eta}_{\phi }/{G}_{SUS}\right]\Big\}\end{array}} $$
(45)

Where the sensitivity and complementary sensitivity functions

$$ {S}_{DF}=\frac{1}{1+{G}_{C\_ DF}\varGamma {G}_{DF}},{T}_{DF}=\frac{G_{C\_ DF}{\varGamma}_{TH}{G}_{DF}}{1+{G}_{C\_ DF}\varGamma {G}_{DF}} $$
(46)
$$ {S}_{SUS}=\frac{1}{1+{G}_{C\_ SUS}{\varGamma}_{FEE}{G}_{SUS}},{T}_{SUS}=\frac{G_{C\_ SUS}{\varGamma}_{FEE}{G}_{SUS}}{1+{G}_{C\_ SUS}{\varGamma}_{FEE}{G}_{SUS}} $$
(47)

From the closed loop measurement relation in Eq. (45), the top level required in Eq. (7) is broken down into specifications on the drag-free and suspension loops, respectively. Those specifications, which are given in the MBW, are shown in Table 2.

Table 2 Specification on different control variable

Design Result

Search Program for Parameters Stable and Performance Region

The parameter setting method of ωo and ωc is presented in this section. There are two points which are taken into consideration. On one hand, the closed loop should be stable. On the other hand, the closed performance requirements shown in Table 2 should be met.

The stabilities of the drag-free and suspension loops are determined by the pole location of (46) and (47), in which the characteristic polynomials of the drag-free and suspension loops are as follows:

$$ {A}_{df}(s)={A}_5{s}^5+{A}_4{s}^4+{A}_3{s}^3+{A}_2{s}^2+{A}_1s+{A}_0 $$
(48)
$$ {B}_{sus}(s)={B}_5{s}^5+{B}_4{s}^4+{B}_3{s}^3+{B}_2{s}^2+{B}_1s+{B}_0 $$
(49)

The coefficients of Adf and Bsus have the same form, so we only give the coefficients of Adf in appendix. Usually, Routh-Hurwitz criterion is used to derive inequality relation between ωo and ωc for the stable region of the closed-loop system. However, it is complex for a fifth order characteristic polynomial. A search program is used to determine the region in ωo-ωc plane where the closed loop system is stable. The procedure of searching parameters stability region for drag-free and suspension loop is as following:

  • Step 1: Input parameters of drag-free loop or suspension loop, search region for ωo-ωc, search step length.

  • Step 2: For every ωo-ωc in search region, compute Cn2 Cn1 Cn0 Cd1 Cd0, compute the coefficients of Adf and Bsus, compute the roots of the characteristic polynomial, and then the real part of the roots.

  • Step 3: If max value of the real part <0, store the ωo-ωc.

  • Step 4: Output all ωo-ωc satisfy the stability condition.

The results are shown in Figs. 8 and 9, where the area to the upper-right side of the curve is the stable region. Figure 8 shows that, even though the plant GDF is unstable, the closed-loop system could be stable, given enough controller and observer bandwidth. It is also shown that the uncertain parameter kxx has an impact on the stable region of ωo - ωc when the values of the ωo - ωc are closed in the region [0, 0.008]. However, as the ωo- ωc increase, the uncertainty of kxx has little impact on the stability of the system. The impact on the stability of uncertainty of the thruster are detailed in Fig. 8b and c. In Fig. 8b, it can be seen that the stable region of the ωo - ωc is almost the same when the time constant τ varies. Also, the uncertainty of the scale factor kc shows impacts on the stability of the system which are similar to that of kxx. The stable region of the ωo - ωc for the suspension loop is shown in Fig. 9. Similar to kxx, the uncertainty of kϕϕ is found to impact the stability of this loop when the values of the ωo - ωc are closed in the region [0, 0.008]. Furthermore, the uncertainty of the time constant has very little impact on the stability of the suspension loop.

Fig. 8
figure 8

the stable region ωo-ωc of drag-free loop. a Stable region for uncertainty in kxx. b Stable region for uncertainty in time constant τ. c The stable region for uncertainty in kc

Fig. 9
figure 9

the stable region ωo-ωc of suspension loop. a The stable region for different kϕϕ. b Stable region for different time constant τ

The closed-loop performance requirements of this system (Table 2) could be expressed as follows:

$$ {x}_{tm}={S}_{DF}{G}_{DF}d-{T}_{DF}{\eta}_x $$
(50)
$$ \phi ={S}_{SUS}{G}_{SUS}{d}_{SUS}-{T}_{SUS}{\eta}_{\phi } $$
(51)
$$ {U}_{SUS}=-{T}_{SUS}{d}_{SUS}-{G}_{C\_ SUS}{\eta}_{\phi }/\left(1+{G}_{C\_ SUS}{G}_{SUS}\right) $$
(52)

Where d is the disturbance of the drag-free loop, and is the combination of the thruster noise and solar noise. The contributions of the coupling and stray force are discarded for simplicity. The dSUS contains the stray force, as well as the thruster and solar noise contributions. On the other hand, in order to guarantee the robustness and stability margins, constraints are imposed on the sensitivity and complementary functions of each loop as follows:

$$ S\le 1.4125T\le 1.4125 $$
(53)

Then, using these relationships and requirements, a search program is established to determine the ωo - ωc for each loop. The procedure of searching parameters meeting the performance requirements is as following:

  • Step 1: Input the parameters of the drag-free or suspension loop, the search region of for ωo-ωc, and the search step length, the measurement bandwidth.

  • Step 2: Calculate the total disturbance on the drag-free loop d and on the suspension loop dSUS.

  • Step 3: for every ωo-ωc in search region, calculate the controller Gc for each loop by Eq. (44), sensitivity and complementary sensitivity function for each loop by Eqs. (46) and (47).

  • Step 4: Calculate ∣xtm()∣, ∣ϕ()∣ and ∣uSUS()∣ by Eq. (50) (51) and (52) in measurement bandwidth.

  • Step 5: If the max value of ∣xtm()∣, ∣ϕ()∣and ∣uSUS()∣< the specification in Table 2, store ωo-ωc.

  • Step 6: Output all ωo-ωc satisfy the performance requirements condition.

The performance region is shown in following figures. As detailed in Fig. 10, there are large amounts of the ωo - ωc which met the requirements. The parameters choosing for the controllers are shown in Table 3.

Fig. 10
figure 10

The performance region for the system. a The performance ωo-ωc region for drag-free loop. b The performance ωo-ωc region for drag-free loop for suspension loop

Table 3 the controller parameters of each loop

The Performance of Drag-Free Loop

The design results of the drag-free loop are presented in this section. First, the loop gain transfer function is GC_DFΓGDF, the bode plots of which are shown in Fig. 11. As can be seen in the figure, the nominal loop gain transfer function curve coincides with the worst-case loop gain transfer function. This indicates the uncertainty of the thruster and the system has little impact on the stability of the drag-free loop. The gain margin of this loop is determined to be 16.4 dB at 7.33 rad/s, and the phase margin of this loop is 51 degrees at 1.99 rad/s. These results confirmed that the system has an exceptional stability margin. The plot of the design controller of the drag-free loop |QQd| and the reciprocal of the model uncertainty |P − P0| are shown in Fig. 12. It is clear that |QQd|<|P − P0|. So with the chosen parameters, the drag-free loop is robust stable.

Fig. 11
figure 11

The gain margin and phase margin of the drag-free loop

Fig. 12
figure 12

singular value plot of the model uncertainty and the design controller for drag-free loop

Second, the system’s performance in regard to suppressing disturbances and noise are shown in Fig. 13a. The bode plots of the nominal SDFGDF, as well as the worst case SDFGDF are shown in the figure. It is clear in the figure that the plots shows little difference throughout the entire frequency domain. In the MBW, the value of SDFGDF is found to be close to 10−3. These findings indicates that the controller has a good performance in disturbance suppressing. The bode plots of the nominal TDF and worst case TDF are illustrated in Fig. 13b. The uncertainty only shows the impacts on TDF above 0.1 Hz. Also, the value of the TDF is approximately 1, which indicates that the x output of this control loop is mainly from the measurement noise.

Fig. 13
figure 13

The SDFGDF and TDF and their worst-case plots. a SDFGDF plot of the drag-free loop. b TDF plot of drag-free loop

Third, the control output of the drag-free loop is shown in Fig. 14. In the figure, the black line indicates the nominal output of the controller output, and the red dotted line denotes the worst-case control output. This also indicates the uncertainty of the system’s impact on the control output. The green dotted line and the black dotted line indicate the contributions on the control output. In the low frequency range [10−4, 10−2], the control output is mainly from cancelling the disturbances, and in the relatively high frequency range, the control output is mainly from suppressing the noise.

Fig. 14
figure 14

The control signal output of drag-free loop

Finally, the closed loop response of the drag-free system is shown in Fig. 15. The response results indicate that the controller could meet the requirement, since the disturbances acting on the drag-free loop are largely suppressed.

Fig. 15
figure 15

The closed loop response of the drag-free loop

The Performance of Suspension Loop

In this section, the design result of suspension loop is presented. Figure 16 details the nominal SSUS and TSUS, as well as the worst-case SSUS and TSUS of the suspension loop. The uncertainty of system is found to affect the sensitivity and complementary sensitivity functions in the low frequency range below 10−3 Hz.

Fig. 16
figure 16

Sensitivity function and complementary sensitivity function of the suspension loop

Figure 17 shows the Bode plot of the loop gain transfer function GC_SUSΓFEEGSUS that has a negative gain margin of −12.3 dB at 0.00175 rad/s, and the phase margin of this system is 59.8 degrees at 0.012 rad/s. The uncertainty of this loop is determined to have little effect on the stability margin. As shown in Section III C. The plot of the design controller of suspension loop |QQd| and the reciprocal of the model uncertainty |P − P0| are shown in Fig. 18. It is clear that |QQd|<|P − P0|. So with the chosen parameters, the suspension loop is robust stable.

Fig. 17
figure 17

The loop gain transfer function of the suspension loop

Fig. 18
figure 18

singular value plot of the model uncertainty and the design controller for suspension loop

The control output of the suspension loop is shown in Fig. 19. The black line indicates the nominal output of the controller output, and the black dotted line shows the worst-case control output. Also, the uncertainty of the system’s impact on the control output is presented. This figure also presents the contributions of the disturbances and measurement noise on the control output. The results indicates that the requirements on control output USUS are met. The closed-loop output of the suspension loop is shown in Fig. 20. The original impacts from the disturbances and noise are also presented in this figure, and the requirements on ϕ are also met by the controller.

Fig. 19
figure 19

The control signal of the suspension loop

Fig. 20
figure 20

The output of ϕ of the suspension loop

The Simulation Result

In Section III C, the coupling of different coordinates is not taken into consideration in design parameters of the controller. Therefore, the controller performance is checked posteriori. In this section, the simulation of the overall system is implemented. Figure 21 shows the results of this simulation. The black line in the figure indicates the residual acceleration on the test mass, and the red line shows the top requirement on the system. It can be seen in this figure that the controller meets the top requirement. Also in this figure, the major source of the residual acceleration of the test mass is the electrostatic actuation cross talk HISFSUS, which is denoted by the magenta line. The contributions of the stiffness coupling of x and ϕ are largely suppressive, as shown by the green and blue lines.

Fig. 21
figure 21

The simulation result of overall system

Conclusion

This research addresses the problem of the design of an active disturbance rejection controller for a high accuracy drag-free satellite with a cubic test mass. First, the uncertain model of the drag-free satellite is defined. The performance requirement imposed on the acceleration of the test mass are broken down into the specifications of the drag-free and suspension loops, due to the disturbance decoupling controller. The parameter stability, along with the regions of the controller which satisfies the performance requirements, are determined using a search program. The design technique is found to be robust for the perturbation of the system, and displays strong performance in suppressing the disturbances. Then, in order to check the design of the controller, an overall simulation is performed. The results confirms that the controller could meet the top requirement.