1 Introduction

In the past decade, the control concept Incremental Non-linear Dynamic Inversion (INDI) gained a lot of interest, especially in the domain of flight control. While control techniques such as Non-linear Dynamic Inversion (NDI) [1,2,3,4] and Backstepping (BS) [5] rely on accurate models of the plant to be controlled, INDI simply uses measurements of derivatives of the output and the input effectiveness. This is because the knowledge of the state dependent dynamics can be approximated by an appropriate measurement. INDI can, therefore, be interpreted as a sensor-based control method. This reduced model-dependency has been proven to be advantageous when controlling aerial vehicles because of multiple reasons:

  1. 1.

    Novel aerial vehicle configurations might be complex to model or the models might be inaccurate or lacking the influence of dominating physical effects.

  2. 2.

    Aircraft models depend on aerodynamic parameters, which are expensive to identify, e.g., by performing extensive flight test campaigns;

  3. 3.

    Changes in the vehicle design require a repetition of the identification process, and therefore the flight test campaigns;

  4. 4.

    Robustness against a wide range of faults or structural damages;

  5. 5.

    Robustness against disturbances;

  6. 6.

    Suitability for automatic take-off and landing, especially for ultra-light aerial vehicles, where ground effects have a large impact and are difficult to model;

  7. 7.

    Unified control strategies without the necessity of switching or blending between different control laws for different flight phases.

Incremental non-linear flight control techniques, such as INDI, have been successfully demonstrated on several aerial platforms and for different applications: the Cessna Citation II [6, 7], VTOL transition UAVs with movable tilts [8,9,10], quadrotor UAVs [10,11,12], hexacopter [14], a hybrid tail-sitter UAV [15, 16], the automatic take-off and landing of a fixed wing tail-wheel aircraft [17], a helicopter [18], an airship [19], a piloted all attitude fixed wing turboprop demonstrator simulated aircraft [20], and a commercial civil aircraft simulation model [21, 22].

It is commonly known that one major challenge of INDI is its sensitivity towards measurement delays in the output derivative feedback [23,24,25,26] and actuator command delay [EINDI]. In van’t Veld et al. [27], the authors show that the stability of INDI controllers subject to measurement time delay is an issue, especially, when the transmission delay of the actuator measurements and that of the relevant output derivative measurement are not equal. Delays are usually encountered for several reasons:

  1. 1.

    Control signal transmission delay;

  2. 2.

    Sensor signal delays;

  3. 3.

    Processing and scheduling delays.

In van’t Veld et al. [27], it is observed that INDI is more sensitive to output derivative measurement delay than actuator delay. Additionally, signal filtering can introduce lag to the system which might be an issue for the controller performance and stability as demonstrated in van’t Veld et al. [27] as well. The use of signal filtering in control laws is of high importance, for performance, stability, safety and robustness. There are several reasons for introducing filtering of the used signals. The most common reasons are:

  1. 1.

    Anti aliasing filtering;

  2. 2.

    Roll-off filtering for noise attenuation;

  3. 3.

    Notch filtering for attenuation of structural mode excitation;

  4. 4.

    Filtering for estimation of certain variables, e.g., complementary filtering;

  5. 5.

    Filtering for bias removal.

Another common issue related to INDI for aircraft control applications is that measurements of the angular accelerations are often required. Although sensors for measuring the angular rate derivative exist, they are not part of the standard equipment of aerial vehicles. Hence, the rate derivative needs to be estimated in most applications. Obtaining the rate derivative by calculating the discrete derivative of the rate measurement using a differentiator, is not recommended because of its sensitivity to sensor noise leading to an amplification of noise on the control signal. In [24], the angular accelerations were estimated with this technique, using backward finite differences, and a first-order low-pass filter was introduced before the actuators to attenuate high-frequency oscillations caused by numerical noise. With the sensor dynamics and measurement delays present, a low-amplitude high-frequency oscillation still remained in the control commands. [28] proposed to filter the measurement, using a second-order low-pass filter, in combination with a discrete differentiation. This allows to estimate the derivative for low frequencies, while attenuating high-frequency sensor noise. Since this kind of second-order filter differentiator introduces lag and produces a delayed estimate of the relevant output derivative which degrades the controller performance and stability, several techniques were proposed to accommodate this issue. [29] proposes the use of an input scaling gain to increase the controller robustness to delays in the feedback loop, when using the second-order filter differentiator. Other approaches are based on the importance of delaying the actuator and state derivative measurements equally, which has been demonstrated in van’t Veld et al. [27]. [6, 11, 27] synchronize the actuator measurement in time with respect to the angular acceleration by a synchronization filter. This synchronization corresponds to the second-order low-pass filter and a time delay, corresponding to the relative delay between the angular rates and actuator deflection measurements. Besides the second-order filter differentiator, complementary filters have been proposed for estimating the angular accelerations, where the measured rate is low-pass filtered and differentiated and the high-frequency part of the rate derivative is obtained using a high-pass filtered model-based rate acceleration estimate [14, 30]. The latter further proposed a synchronization scheme on the actuator feedback in combination with the complementary filter. In [23], a linear predictive filter is designed to predict the angular rate derivatives from angular rates and references thereof. The coefficients of the predictive filter are computed using least squares estimation [31] designs a nondelay differentiator based on a precise-delay differentiator, to acquire the output derivatives without delay.

In this paper, it is investigated how to compensate for filter and sensor dynamics in the implementation of different types of incremental control laws. We start with the Non-Linear Dynamic Inversion (NDI) control law through the actuators introduced as Actuator-NDI (ANDI) in Steffensen et al. [32]. From this control law, several other derived control laws can be obtained by applying appropriate assumptions. The most basic form is Incremental Non-linear Dynamic Inversion (INDI) [28]. This control law does not explicitly take into account the actuator dynamics. The Extended INDI (E-INDI) [9] takes the actuators into account, but neglects the state dependent terms. The filter synchronization is derived analytically for the ANDI control law, using a complementary filter exploiting relevant model information to compensate for the negative effects of the filters and sensors. Analysis is made for the initialization of the filter, to investigate methods of transient-free activation of the control law. An analytical comparison is made of synchronization techniques used in literature, and a re-formulation of these synchronization techniques is performed in terms of equivalent complementary filters with several benefits for MIMO systems when the filters applied to the measurements differ.

The contribution of this paper consists of:

  • Formulation of a complementary filter structure that can be used for ANDI, E-INDI and INDI control laws. The benefits are 1) an inherent synchronization which increases the robustness with regard to phase delays 2) It allows to apply different filtering on the different measurement signals. For example to attenuate structural modes in the various axes of the aircraft, different notch filters might be required on the different measurement signals.

  • Formulation of a proper initialization method for these complementary filters as used in incremental control laws, for transient-free engagement in non-steady-state conditions.

  • Derivation of alternative formulations of popular synchronization techniques in the actuator feedback path as modified complementary filters. These alternative formulations have the benefit that they can recover the design closed-loop transfer function structure in MIMO systems when different sensor filtering in the various feedback channels are used. It is shown that the synchronization in the feedback can become even unstable in case of strongly coupled input effectiveness, where the equivalent complementary filter exactly recovers the design closed-loop behavior.

  • Application of appropriate filters on the output of the reference model based on the filtering on the measured signals for use in the error controller feedback.

  • Derivation of an un-delayed state estimate using a cascaded complementary filter taking into account signal filtering and delays. This un-delayed state estimate can be used to obtain an un-delayed \({\dot{y}}_{mdl}\). This cascaded filter additionally provides an \({\dot{x}}\) estimate that can be used in control laws based on ANDI.

Based on a general linear MIMO system, the closed-loop dynamics is analyzed analytically for (1) vanilla (perfect knowledge of all variables) INDI (2) INDI with complementary filter and \({\dot{y}}_{mdl}\) (3) filter differentiator approach without synchronization (4) filter differentiator approach with synchronization (5) Hybrid INDI, i.e., complementary filter approach with synchronization. The analysis done in this paper further provides insights into the relations between these different approaches. Additionally, the cascaded complementary filter is demonstrated for an ANDI control law, introduced in Steffensen et al. [32], and compared to the E-INDI law [9].

2 Control laws

The following section provides a derivation of the ANDI (Actuators in Non-Linear Dynamics Inversion), E-INDI (Extended Incremental Non-linear Dynamic Inversion) and INDI (Incremental Non-linear Dynamic Inversion) control laws, as a basis for the investigation in Sects. 4 and 5.

2.1 Summary of ANDI control law

We consider the ANDI control law introduced in Steffensen et al. [32], as depicted in Fig. 1. The ANDI is based on NDI, hence includes the stability guarantees in terms of Lyapunov and exact inversion for tracking as well as specified error dynamics. With the assumption of first-order actuators from ANDI, the approximate concepts INDI and E-INDI can be deduced. Hence, the ANDI is taken as a starting point, and the concepts of synchronization will be extended directly to INDI and E-INDI. As was shown in Steffensen et al. [32], the ANDI control law corresponds to an INDI control law if the bandwidth of the actuators tends to infinity, and corresponds to the E-INDI [9] if the \(F_x {\dot{x}}\) term is neglected as explained later in this section. The ANDI control law allows to actively account for the actuator and state dependent dynamics and is summarized in the following. Consider the system

$$\begin{aligned}{} & {} {\dot{x}} = f(x,u),\nonumber \\{} & {} y = h(x), \end{aligned}$$
(1)

with system state \(x \in \mathbb {R}^n\), actuator state \(u \in \mathbb {R}^k\), output \(y \in \mathbb {R}^m\), \(f \in C^{(r+1)}(\mathbb {R}^n \times \mathbb {R}^k;\mathbb {R}^n)\) and \(h \in C^{(r+1)}(\mathbb {R}^n;\mathbb {R}^m)\). Note, that the time dependence (t) was here and in the following omitted for better readability. The actuator dynamics are given by:

$$\begin{aligned} \dot{u} = \Omega \left( {{u_c} - u} \right) , \end{aligned}$$
(2)

with diagonal matrix \(\Omega \in \mathbb {R}^{(k \times k)}\) with its entries representing the bandwidth of the different actuators. In Steffensen et al. [32] the ANDI control law is derived assuming the system to have a relative degree of \(r \in \mathbb {N}\), i.e., the rth derivative of y with respect to time is the first derivative of y which explicitly depends on u. For the sake of simplicity, we assume here \(r=1\):

$$\begin{aligned} {{\dot{y}}} = F(x,u), \end{aligned}$$
(3)

with \(F \in C^{1}(\mathbb {R}^n \times \mathbb {R}^k;\mathbb {R}^m)\). The second derivative of y is then

$$\begin{aligned} {\ddot{y}} = {F_x}{\dot{x}} + {F_u}\dot{u}, \end{aligned}$$
(4)

where \({F_x} = \frac{{\partial F(x,u)}}{{\partial x}}\) and \({F_u} = \frac{{\partial F(x,u)}}{{\partial u}}\). Substituting Eq. (2) into (4) results in

$$\begin{aligned} {\ddot{y}} = {F_x}{\dot{x}} + {F_u} \Omega \left( {{u_c} - u} \right) , \end{aligned}$$
(5)

which is solved for \(u_c\), assuming \(F_u\Omega \) to have full row rank and choosing \(\ddot{y}=\nu \) as the virtual command:

$$\begin{aligned} {u_c} = ({F_u}\Omega )^{\dagger }\left( { \nu - {F_x}{\dot{x}}} \right) + u, \end{aligned}$$
(6)

where \(({F_u}\Omega )^{\dagger }\) denotes a right inverse matrix that solves the linear equation system given in Eq. (5). The virtual control input \(\nu \) is designed using a linear error controller as

$$\begin{aligned} \nu = \ddot{y}_{\textrm{ref}} + k_1({\dot{y}}_{\textrm{ref}}-{\dot{y}})+k_0(y_{\textrm{ref}}-y). \end{aligned}$$
(7)

By applying the control law to the system, the desired error dynamics are obtained as designed, because \(F_u\Omega \) has full row rank such that \((F_u\Omega )(F_u\Omega )^{\dagger }=I_{m \times m}\):

$$\begin{aligned} \begin{aligned} {\ddot{y}}&= {F_x}{\dot{x}} + {F_u} \Omega \left( ({F_u}\Omega )^{\dagger } \left( { \nu - {F_x}{\dot{x}}} \right) + u- u\right) \\&=\ddot{y}_{\textrm{ref}} + k_1({\dot{y}}_{\textrm{ref}}-{\dot{y}})+k_0(y_{\textrm{ref}}-y). \end{aligned} \end{aligned}$$
(8)

The block diagram of the ANDI controller is depicted in Fig. 1.

Fig. 1
figure 1

ANDI with known outputs and state and output derivatives

2.2 ANDI control law with measured output

It is often not possible to directly measure the time derivative \({\dot{y}}\), which is needed to calculate the pseudo-control \(\nu \) in Eq. (7), which is then used in the ANDI control law in Eq. (6). We propose to estimate \({\dot{y}}\) using the complementary filter which will be introduced in Sect. 3.3, that uses a model-based estimate of \({\dot{y}}\) and the measured and filtered output signal \(y_f\) as depicted in Fig. 2. In addition, due to the filtering of y, it is proposed to filter the reference signal \(y_{ref}\) with the same filtering as the measurement to synchronize the error term. This filtering includes the filtering by F, which is any filtering applied to the signal, e.g., roll-off filters or notch filters, the measurement delay \(D_y\), as well as the sensor dynamics S. The control law is, hence, modified as such:

$$\begin{aligned} \begin{aligned} {u_c}&= ({F_u}\Omega )^{\dagger }\left( { \nu - {F_x}{\dot{x}}} \right) + u \\&= ({F_u}\Omega )^{\dagger }\left( \ddot{y}_{ref} + k_1 ({\dot{y}}_{ref}- \hat{{\dot{y}}}) \right. \\&\quad \left. +\, k_0 (y_{ref,f}-y_f) - {F_x}{\dot{x}} \right) + u. \end{aligned} \end{aligned}$$
(9)

In addition, \({{\dot{x}}}\) needs to be estimated, which is covered in Sect. 4.6. Note, that in some cases \(\hat{{\dot{x}}}\) is the same as \(\hat{{\dot{y}}}\), and the same complementary filtered signal can be used.

Fig. 2
figure 2

Block diagram of ANDI with synchronization

2.3 ANDI and INDI

To arrive at the INDI control law from the ANDI control law, a special choice of error dynamics have to be made as shown in Steffensen et al. [32]. The error dynamics shall be chosen as a product of actuator and system error dynamics as shown in Eq. (10). The actuator loop of the ANDI error dynamics, i.e., the second part of Eq. (10), shall be chosen with the same bandwidth as the actuators, \(\omega \). The assumption necessary on the system is that all actuators need to have the same bandwidth, that is \(\Omega =\omega I_{k \times k}\).

$$\begin{aligned} E_y(s)\left( s + K_0\right) (sI +\omega I)=0, \end{aligned}$$
(10)

with the errors defined as:

$$\begin{aligned} \begin{aligned} e_y&= y_{ref}-y, \\ \dot{e}_y&= {\dot{y}}_{ref}- {{\dot{y}}}. \end{aligned} \end{aligned}$$
(11)

In the time domain, this can be expressed as:

$$\begin{aligned} \ddot{e}_y+k_1 {\dot{e}}_y + k_0 e_y = \ddot{e}_y + K_0 \dot{e}_y + \omega (\dot{e}_y + K_0 e_y)=0. \end{aligned}$$
(12)

Then, the pseudo-control \(\nu \) is chosen as:

$$\begin{aligned} \nu = \ddot{y}_{ref} + K_0 \dot{e}_y + \omega (\dot{e}_y + K_0 e_y), \end{aligned}$$
(13)

and by inserting \(\nu \) into Eq. (6), the ANDI control law can be expressed as:

$$\begin{aligned} \begin{aligned} {u_c}&= \frac{1}{\omega }({F_u})^{\dagger }\left( { \ddot{y}_{ref} + K_0 \dot{e}_y - {F_x}{\dot{x}}} \right) \\&\quad + ({F_u})^{\dagger } \left( \dot{e}_y + K_0 e_y\right) + u, \end{aligned} \end{aligned}$$
(14)

which was first shown in Steffensen et al. [32]. If the actuators have a high bandwidth \(\omega \), the first term of Eq. (14) can be neglected, and the remaining part is equivalent to the INDI control law:

$$\begin{aligned} \begin{aligned} {u_c} = ({F_u})^{\dagger } \left( \dot{e}_y + K_0 e_y\right) + u. \end{aligned} \end{aligned}$$
(15)
Fig. 3
figure 3

Block diagram of INDI with synchronization

Similar to Sect. 2.2, the INDI law can be implemented as depicted in Fig. 3 using a complementary filtered estimate of \(\dot{y}\) and synchronizing \(y_{ref}\) and \(y_f\).

It shall be noted that sometimes the first term in Eq. (14) is included using variables from a reference model [20, 33], such that the command path exactly corresponds to the ANDI control law. If the system is (sufficiently) linear, this will only affect the feed-forward part of the system, and hence not change the closed-loop poles.

2.4 ANDI and E-INDI

In literature, several extensions to the vanilla INDI control law can be found. Two approaches that are taking explicitly the actuator dynamics into account are [9, 11]. While [11] assumes that all actuators have the same bandwidth, i.e., \(\Omega = I_{k \times k}\omega \), [9] considers the more general case of actuators with different bandwidth. As was shown in Steffensen et al. [32], choosing the error dynamics given in Eq. (12), the respective control laws from [9, 11], can be re-formulated as

$$\begin{aligned} \begin{aligned} {u_c}&\!= ({F_u \Omega })^{\dagger }\left( { \ddot{y}_{\textrm{ref}} \!+ K_0 \dot{e}_y} +\! \Omega _y \left( \dot{e}_y +\! K_0 e_y\right) \right) \! +\! u, \end{aligned} \end{aligned}$$
(16)

which in case of \(\Omega = I_{k \times k}\omega \), \(\Omega _y = I_{m \times m}\omega \), can be expressed as

$$\begin{aligned} \begin{aligned} {u_c}&=\! \frac{1}{\omega }({F_u})^{\dagger }\left( { \ddot{y}_{ref} \!+ K_0 \dot{e}_y} \!+ \omega \left( \dot{e}_y \!+ K_0 e_y\right) \right) \!+ u. \end{aligned} \end{aligned}$$
(17)

This control law equals the ANDI control law in Equation (14), if \(F_x \dot{x}\) is neglected.

3 Complementary filters and initialization

In the following section, the complementary filter design and initialization is presented, and a formal initialization method is derived for transient-free engagement in non-steady-state conditions. As will be shown later, this design of the complementary filters will inherently contain the synchronization properties that have earlier been shown to be crucial for increasing performance and stability of INDI control laws. The use of this type of complementary filter design, allows for the use of different filters in the individual measurement channels, which is not directly achievable using common synchronization techniques on the actuator feedback.

3.1 Basic complementary filter concept and initialization

Figure 4 depicts a simple complementary filter, which will be used as an introductory example for the derivation of the initialization in non-steady-state conditions.

Fig. 4
figure 4

Block diagram of complementary filter

Fig. 5
figure 5

Block diagram of complementary filter with reset

First consider the zero-valued steady-state case. Then, the relation between the inputs and outputs of the filter can be derived as follows:

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= (1-H(s)+H(s))\dot{Y}(s)\\&= \left( 1-H(s)\right) \dot{Y}(s)+H(s)s{Y}(s),\\ \end{aligned} \end{aligned}$$
(18)

where \(U_1(s)=Y(s)\), \(U_2(s) =\dot{Y}(s)\) and assuming that y(0) and \(\dot{y}(0)\) are zero. In case that the model \({\dot{y}}\) is accurate, the filter perfectly distributes the high-frequency part of the \({\dot{y}}\) estimate to the model-based \({\dot{y}}\) and the low-frequency part to the differentiated y measurement.

In case of non-steady-state initial conditions, the filter needs to be carefully initialized. In the following, a method to obtain the correct initialization is derived. For now, consider H(s) as a first-order filter such that the differential equations describing the \(x_1\) and \(x_2\) dynamics, as depicted in Fig. 5, are given by:

$$\begin{aligned} \dot{x}_{1/2}=\omega (u_{1/2}-x_{1/2}), \end{aligned}$$
(19)

where \(u_1=y\) and \(u_2=\dot{y}\). In the Laplace domain, accounting also for non-zero initial conditions, the following relation is obtained:

$$\begin{aligned} X_{1/2}(s) = \frac{\omega }{s+\omega }U_{1/2}(s) + \frac{1}{s+\omega } x_{1/2}(0). \end{aligned}$$
(20)

The complementary filter calculates \(\dot{y}\) as shown in Fig. 5 by

$$\begin{aligned} \dot{y}=\dot{x}_1+u_2-x_2. \end{aligned}$$
(21)

In the Laplace domain, accounting for non-zero initial conditions, this results in

$$\begin{aligned} \dot{Y}(s)=sX_1(s)-x_1(0)+U_2(s)-X_2(s). \end{aligned}$$
(22)

Substituting Eq. (20) into (22) results in

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&=s\left( \frac{\omega }{s+\omega }U_{1}(s) + \frac{1}{s+\omega } x_{1}(0)\right) -x_1(0)+U_2(s)\\&\quad -\left( \frac{\omega }{s+\omega }U_{2}(s) + \frac{1}{s+\omega } x_{2}(0)\right) \\&= \frac{s\omega }{s+\omega }U_{1}(s) - \frac{\omega }{s+\omega } x_{1}(0)\\&\quad +U_2(s)-\frac{\omega }{s+\omega }U_{2} (s)- \frac{1}{s+\omega } x_{2}(0). \end{aligned} \end{aligned}$$
(23)

Substituting \(U_1(s)=Y(s)\) and \(U_2(s)=\dot{Y}(s)=sY(s)-y(0)\), results in

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= \frac{s\omega }{s+\omega }Y(s) - \frac{\omega }{s+\omega } x_{1}(0)\\&\quad +U_2(s)-\frac{\omega }{s+\omega }\left( sY(s)-y(0)\right) - \frac{1}{s+\omega } x_{2}(0)\\&= - \frac{\omega }{s+\omega } x_{1}(0)+U_2(s)+\frac{\omega }{s+\omega }y(0)- \frac{1}{s+\omega } x_{2}(0).\\ \end{aligned} \end{aligned}$$
(24)

Initializing the integrators with \(x_1(0)=y(0)=u_1(0)\) and \(x_2(0)=0\) as depicted in Fig. 5 by the red dotted lines, results in

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= U_2(s) = \dot{Y}(s).\\ \end{aligned} \end{aligned}$$
(25)

Hence, in case of an accurate model of \({\dot{y}}\), the output of the filter will exactly match the true \({\dot{y}}\), also at the initial time instance when engaging the control law.

3.2 Complementary filter and sensor dynamics

Fig. 6
figure 6

Block diagram of complementary filter with sensor dynamics

Fig. 7
figure 7

Block diagram of complementary filter with reset

Usually, the output y of the plant is measured by a sensor with corresponding sensor dynamics S(s). These dynamics may include an anti-aliasing filter because of the (down) sampling of the sensor signal for the flight control computer. For now consider these dynamics to be described by a first-order filter such that the measured plant output that is used in the complementary filter corresponds to

$$\begin{aligned} Y_s(s) = S(s)Y(s). \end{aligned}$$
(26)

The complementary filter in Fig. 6 is given by

$$\begin{aligned} \begin{aligned} \dot{Y}(s)= \left( 1-H(s)S(s)\right) \dot{Y}_{mdl}(s)+sH(s)Y_s(s). \end{aligned} \end{aligned}$$
(27)

To show the proper synchronization, now assume that \(\dot{y}_{mdl}={\dot{y}}\). The complementary filter for zero initial conditions results in:

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= \left( 1-H(s)S(s)\right) \dot{Y}(s)+sH(s)Y_s(s). \end{aligned} \end{aligned}$$
(28)

Hence, with an accurate model of \({\dot{y}}\), the filter again exactly distributes the high-frequency part of the \({\dot{y}}\) estimate to the model-based \({\dot{y}}\) and the low-frequency part to the differentiated y in the presence of the sensor dynamics S(s).

To determine the initial values of the integrator state in the sensor filter model used in the complementary filter, we start with considering the differential equations of the sensor filter and the sensor filter model, as depicted in Fig. 7, given by

$$\begin{aligned} \dot{\tilde{x}}_{1/2}=\tilde{\omega }(\tilde{u}_{1/2}-\tilde{x}_{1/2}), \end{aligned}$$
(29)

where \(\tilde{u}_1=y\) and \(\tilde{u}_2 =\dot{y}\). The resulting relation in the Laplace domain is

$$\begin{aligned} \tilde{X}_{1/2}(s) = \frac{\tilde{\omega }}{s+\tilde{\omega }}\tilde{U}_{1/2}(s) + \frac{1}{s+\tilde{\omega }} \tilde{x}_{1/2}(0). \end{aligned}$$
(30)

The estimate of \(\dot{y}\) is calculated by the complementary filter as depicted in Fig. 7 by

$$\begin{aligned} \dot{y} = \dot{x}_1 +\tilde{u}_2 -x_2, \end{aligned}$$
(31)

which results in the Laplace domain to

$$\begin{aligned} \dot{Y}(s) = sX_1(s) - x_1(0) + \tilde{U}_2(s)-X_2(s). \end{aligned}$$
(32)

For \(X_1(s)\) and \(X_2(s)\), the relation in Eq. (20) is inserted. The input \(U_1(s)\) and \(U_2(s)\) are the states of the sensor filter and sensor filter model as depicted in Fig. 7, i.e., \(U_1(s)=\tilde{X}_1(s)\), \(U_2(s)=\tilde{X}_2(s)\):

$$\begin{aligned} \dot{Y}(s)= & {} s\left( \frac{\omega }{s+\omega }\tilde{X}_{1}(s) + \frac{1}{s+\omega } x_{1}(0)\right) - x_1(0) + \tilde{U}_2(s)\nonumber \\{} & {} -\left( \frac{\omega }{s+\omega }\tilde{X}_{2}(s) + \frac{1}{s+\omega } x_{2}(0)\right) . \end{aligned}$$
(33)

Substituting \(\tilde{X}_1\) and \(\tilde{X}_2\) in Eq. (33) by relation (30) results in

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= \frac{s\omega }{s+\omega }\left[ \frac{\tilde{\omega }}{s+\tilde{\omega }}\tilde{U}_{1}(s) + \frac{1}{s+\tilde{\omega }} \tilde{x}_{1}(0)\right] + \frac{s}{s+\omega } x_{1}(0) \\&\quad - x_1(0) + \tilde{U}_2(s)\\&\quad -\frac{\omega }{s+\omega }\left[ \frac{\tilde{\omega }}{s+ \tilde{\omega }}\tilde{U}_{2}(s) + \frac{1}{s+\tilde{\omega }} \tilde{x}_{2}(0) \right] - \frac{1}{s+\omega } x_{2}(0). \end{aligned} \end{aligned}$$
(34)

Using that \(\tilde{U}_1(s) = Y(s)\) and \(\tilde{U}_2(s)=\dot{{Y}}(s)=sY(s)-y(0)\) results in

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= \frac{s\omega }{s+\omega }\left[ \frac{\tilde{\omega }}{s+\tilde{\omega }}Y(s) + \frac{1}{s+\tilde{\omega }} \tilde{x}_{1}(0)\right] + \frac{s}{s+\omega } x_{1}(0) \\&\quad - x_1(0) + \dot{Y}(s)\\&\quad -\frac{\omega }{s+\omega }\left[ \frac{\tilde{\omega }}{s+\tilde{\omega }}\left( sY(s)-y(0)\right) + \frac{1}{s+\tilde{\omega }} \tilde{x}_{2}(0) \right] \\&\quad -\frac{1}{s+\omega } x_{2}(0) \\ {}&= \frac{s\omega }{(s+\omega )(s+\tilde{\omega })} \tilde{x}_{1}(0) + \frac{s}{(s+\omega )} x_{1}(0) \\ {}&\quad -\frac{s+\omega }{(s+\omega )} x_1(0) + \dot{Y}(s)\\&\quad -\frac{\omega }{s+\omega }\left[ -\frac{\tilde{\omega }}{s+\tilde{\omega }}y(0) + \frac{1}{s+\tilde{\omega }} \tilde{x}_{2}(0) \right] - \frac{1}{s+\omega } x_{2}(0) \\ {}&= \frac{s\omega }{(s+\omega )(s+\tilde{\omega })} \tilde{x}_{1}(0) \\&\quad -\frac{\omega (s+\tilde{\omega })}{(s+\omega )(s+\tilde{\omega })} x_1(0) + \dot{Y}(s)\\&\quad +\frac{\omega \tilde{\omega }}{(s+\omega )(s+\tilde{\omega })}y(0) - \frac{\omega }{(s+\omega )(s+\tilde{\omega })} \tilde{x}_{2}(0)\\&\quad - \frac{1}{s+\omega } x_{2}(0). \\ \end{aligned} \end{aligned}$$
(35)

Initializing the integrators as discussed before with with \(x_1(0)=u_1(0)=\tilde{x}_1(0)\) and \(x_2(0)=0\) as depicted in Fig. 7 by the red dotted lines, results in

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= \frac{\omega \tilde{\omega }}{(s+\omega )(s+\tilde{\omega })} \left( y(0)-\tilde{x}_1(0)\right) + \dot{Y}(s)\\&\quad - \frac{\omega }{(s+\omega )(s+\tilde{\omega })} \tilde{x}_{2}(0) \\ \end{aligned} \end{aligned}$$
(36)

Hence, the sensor model state needs to be initialized to \(\tilde{x}_2(0)=\tilde{\omega }\left( y(0)-\tilde{x}_1(0)\right) \) which corresponds to the time derivative \(\dot{\tilde{x}}_1(0)\) of the sensor filter state as depicted in Fig. 7 by the red dotted lines.

Note that in case the sensor state \(\tilde{x}_1\) is initialized to y(0), \(\dot{\tilde{x}}_1(0)\) will be 0. This will be the case if the sensor is reset, and then the integrator state \(\tilde{x}_2\) of the sensor model could be initialized with 0. Otherwise, alternatively as an approximation of \(\dot{ \tilde{x}}_1\) the model based \(\dot{y}\) could be used as initialization value for \(\tilde{x}_2\).

3.3 Complementary filter, sensor dynamics and additional filtering

Fig. 8
figure 8

Block diagram of complementary filter with sensor dynamics and filtering

Often the measured output \(y_s\) of the plant is additionally filtered to attenuate noise, vibrations from engines, pickup of structural modes, etc. Commonly roll-off filters or notch filters are used for this purpose. Furthermore, transmission delays might be present on the measurements such that the signal used by the complementary filter corresponds to

$$\begin{aligned} Y_f(s) = F(s)D_y(s)S(s)Y(s), \end{aligned}$$
(37)

where F(s) is the transfer function of the roll-off or notch filters, D(s) is the transmission delay of the measurement and S(s) is the sensor dynamics. The complementary filter needs then to be updated as shown in Fig. 8, such that

$$\begin{aligned} \begin{aligned} \dot{Y}(s)&= \left( 1-H(s)F(s)D_y(s)S(s)\right) \dot{Y}(s)\\&\quad +H(s)F(s)D_y(s)S(s)\dot{Y}(s)\\&= \left( 1-H(s)F(s)D_y(s)S(s)\right) \dot{Y}(s)+sH(s)Y_f(s). \end{aligned} \end{aligned}$$
(38)

The initialization of the filters can be derived in a similar manner as in the previous sections. In the following, we denote the series of the filters as

$$\begin{aligned} F_{cy}(s)=F(s)D_y(s)S(s). \end{aligned}$$
(39)

The complementary filtered estimate of the derivative of the output signal y is, hence, given by

$$\begin{aligned} \hat{\dot{Y}}(s)=(1-H(s)F_{cy}(s))\dot{Y}_{mdl}(s)+sH(s)Y_{f}(s), \end{aligned}$$
(40)

where \(\dot{Y}_{mdl}(s)\) is the model-based estimate of \(\dot{Y}\).

4 Synchronization techniques with related complementary filters

In the following, the proposed synchronization is compared to other synchronization approaches in literature. For the analysis, we consider a MIMO linear time invariant system:

$$\begin{aligned} \begin{aligned}&{\dot{x}}(t) = Ax(t) + Bu(t) + B_dd(t),\\&y^{(r-1)}(t)=Cx(t), \end{aligned} \end{aligned}$$
(41)

where r is the relative degree of the system, A is the system matrix, B is the input effectiveness, \(B_dd(t)\) is the disturbance term, C the output matrix, and with the restriction that:

$$\begin{aligned} CB{\left( {I - {G_A(s)}} \right) ^{ - 1}}{G_A(s)}{(CB)^\dag } = {\left( {I - {{\bar{G}}_A(s)}} \right) ^{ - 1}}{{\bar{G}}_A(s)}, \end{aligned}$$
(42)

where \(G_A(s)\) are the actuator dynamics, \({\bar{G}}_A(s)\) is a diagonal transfer function matrix, and the matrix CB has full row rank. Equation (42) is true if either:

Basic assumptions (either has to hold):

  1. 1.

    System is SISO, then \({\bar{G}}_A = G_A\).

  2. 2.

    CB matrix and actuator transfer function matrix \(G_A\) are square, only have elements on the diagonal, and they have the same dimension, such that \({\bar{G}}_A=G_A\).

  3. 3.

    Actuator transfer function matrix \(G_A\) only has elements on the diagonal and all the elements are the same, i.e., the actuators operate independently and have the same dynamics. Then, \({\bar{G}}_A\) is a diagonal transfer function matrix with elements equal to the elements in \(G_A\) but the matrix have a different dimension.

For the following, we consider without loss of generality a system with relative degree 1, which is common in baseline flight control laws. In addition it improves the readability. Substituting sY(s) with \(s^rY(s)\) for the following results recover the general case. Note that for better readability the arguments (s) and (t) are omitted.

In the following, it is shown that the different synchronization techniques only vary in their influence on the state dependent term CAX of the closed-loop dynamics, summarized in Table 1. The influence on the direct disturbance term \(CB_dD\) and pseudo-control term \(\mathcal {V}\) is exactly the same for all synchronization techniques.

Table 1 Effect of synchronization on CAX in closed-loop

It is additionally shown that for methods 3 and 4 as proposed in [6, 11, 27] and [30], for MIMO systems, additional restrictive assumptions, e.g., same filtering of all measurements, are necessary to obtain the relations given in Table 1. The respective assumptions will be detailed in the related sections. A re-arrangement of the synchronization is proposed, such that the design closed-loop transfer function can be recovered for MIMO systems, relaxing the above-mentioned assumptions. This re-arrangement allows different filtering in the measurement feedback channels.

4.1 Vanilla INDI

Fig. 9
figure 9

Vanilla INDI control law

The vanilla INDI with perfect knowledge of the state derivative is depicted in Fig. 9. The closed-loop transfer function is given by:

$$\begin{aligned} sY = \left( {I - {\bar{G}_A}} \right) CAX + {\bar{G}_A}\mathcal {V} + \left( {I - {\bar{G}_A}} \right) C{B_d}D, \end{aligned}$$
(43)

as shown in Appendix A.1. It is seen that \({\dot{y}}\) follows \(\nu \) with the actuator dynamics, plus the state dynamics and disturbances filtered through a high-pass filter given by \(I-\bar{G}_A\), i.e., if the actuator dynamics are much faster than the state dynamics and disturbances, the influence is filtered out.

4.2 INDI with complementary filter and \({\dot{y}}_{mdl}\)

Fig. 10
figure 10

INDI with complementary filter

If \({\dot{y}}\) is estimated with a complementary filter as derived in Sect. 3.3, and depicted in Fig. 10, assuming that there are no model uncertainties or noise, then \(\dot{y}_{mdl} = \dot{y}\) holds, and the closed-loop transfer function is given by:

$$\begin{aligned} sY = \left( {I - {\bar{G}_A}} \right) CAX + {\bar{G}_A}\mathcal {V} + \left( {I - {\bar{G}_A}H{F_{cy}}} \right) C{B_d}D \end{aligned}$$
(44)

as shown in Appendix A.2, which shows that the complementary filter recovers the input–output dynamics of the vanilla INDI. It is seen that the disturbance is high-pass filtered by \(\left( {I - {\bar{G}_A}H{F_{cy}}} \right) \), such that disturbances below the cut-off of the combined actuator and filter dynamics are rejected.

Note, \(\dot{y}_{mdl} = \dot{y}\) might seem like a crude assumption but is made to highlight the synchronization effects i.e., \(\dot{y}_{mdl}\) gives an un-delayed estimate of \(\dot{y}\). For example \(\dot{y}_{mdl}= C(A{\hat{x}}+Bu)\) would be such an estimate, if \({\hat{x}}\) is obtained as an un-delayed estimate, for example from a model or using again a complementary filter as depicted in Fig. 16.

Note that \(\dot{y}_{mdl}\) will not be \(\dot{y}\) if there are model uncertainties (e.g., in A, B or C) or measurement noise. The cut-off frequency of the filter H in the complementary filter has to be chosen as a compromise, in general as high as possible but low enough such that the noise is not amplified by the derivative.

4.3 INDI with derivative filter and no synchronization

Fig. 11
figure 11

INDI with derivative filter

If \({\dot{y}}\) is estimated with a filter from a sensor measurement as depicted in Fig. 11, then the closed-loop transfer function is given by:

$$\begin{aligned} \begin{aligned} sY&= {\left( {I - {\bar{G}_A} + \bar{G}_AH{F_{cy}}} \right) ^{ - 1}}\left( {I - {\bar{G}_A}} \right) CAX \\&\quad + {\left( {I - {\bar{G}_A} + \bar{G}_AH{F_{cy}}} \right) ^{ - 1}}{\bar{G}_A}\mathcal {V} \\&\quad + {\left( {I - {\bar{G}_A} + \bar{G}_AH{F_{cy}}} \right) ^{ - 1}}\left( {I - {\bar{G}_A}} \right) C{B_d}D, \end{aligned} \end{aligned}$$
(45)

as shown in Appendix A.3. It can be seen that this filtering technique does not correspond to the dynamics of the vanilla INDI, i.e., INDI with perfect state derivative knowledge. It is shown in Section 5 by simulation that having no synchronization can very easily lead to unstable closed-loop dynamics.

4.4 INDI with derivative filter and synchronization

Fig. 12
figure 12

INDI with derivative filter and synchronization as used in [6, 11, 27]

If \({\dot{y}}\) is estimated, as proposed in [6, 11, 27], and depicted in Fig. 12, i.e., with a filter from a sensor measurement and synchronized with the same filters \({\bar{H}}\) and \({\bar{F}}_{cy}\) (with possibly different dimensions as indicated by the bar), as used for the derivative and sensor filtering in the control signal feedback path, then, as shown in Appendix A.4, the closed-loop transfer function is given by:

$$\begin{aligned} sY = \left( {I - {{\bar{G}}_A}H{F_{cy}}} \right) CAX + {{\bar{G}}_A}\mathcal {V} + \left( {I - {{\bar{G}}_A}H{F_{cy}}} \right) C{B_d}D, \end{aligned}$$
(46)

assuming that:

$$\begin{aligned} CB{\left( {I - {G_A}{\bar{H}}{{\bar{F}}_{cy}}} \right) ^{ - 1}}{G_A}{(CB)^\dag }={\left( {I - {{\bar{G}}_A} H{F_{cy}}} \right) ^{ - 1}}{{\bar{G}}_A}, \end{aligned}$$
(47)

which hold if either of these additional assumptions are satisfied, respectively:

Respective additions to the basic assumptions:

  1. 1.

    No additional assumption if system is SISO.

  2. 2.

    \({\bar{H}}\) and \({\bar{F}}_{cy}\) are square, only have elements on the diagonal and both have the same dimension as H and \({F}_{cy}\), such that \(\bar{H}\bar{F}_{cy}=HF_{cy}\).

  3. 3.

    H and \(F_{cy}\) only has elements on the diagonal and all the elements of the respective matrix are the same, i.e., each measurement channel is filtered separately and equally. Then, \(\bar{H}\bar{F}_{cy}\) is a diagonal transfer function matrix with elements equal to the elements in \(HF_{cy}\) but the matrix has a different dimension.

It can be seen that this filtering technique results in a closed-loop transfer behavior which is similar to the result of the vanilla INDI, i.e., \({\dot{y}}\) follows \(\nu \) with the actuator dynamics, plus the state dynamics filtered through a high-pass filter. While for vanilla INDI this high-pass filter is given by \(\left( I-{\bar{G}}_A \right) \), here the high pass results in \((I-{\bar{G}}_AHF_{cy})\), which allows signals with lower frequencies to pass through compared to \((I- {\bar{G}}_A)\), which means that more dynamics from the model dependent part CAX will pass through in the closed-loop dynamics. The direct influence of the disturbances are also high-pass filtered by \((I-{\bar{G}}_AHF_{cy})\), which is similar to the complementary filter discussed in Sect. 4.2.

Fig. 13
figure 13

Re-formulation of INDI with derivative filter and synchronization

In Appendix A.4, it is shown that if the block diagram in Fig. 13 is implemented instead, then the same closed-loop behavior as given in Eq. (46) is obtained, even without the additional assumptions given above.

It is additionally seen that the synchronization in Fig. 13 corresponds to the INDI with complementary filter depicted in Fig. 10 with \(\dot{y}_{mdl}=Bu\), i.e., only the high-frequency part of \(\dot{y}\) is considered in the estimate \(\dot{y}_{mdl}\). This re-formulation can be attractive if different filters in \(F_{cy}\) are used in the separate control channels of y, e.g., that notch filters with different notch frequencies are used for the individual axes of the aircraft. Having the filter synchronization in the u feedback path does not allow for consistent separate filtering in the different axes.

4.5 Hybrid INDI

Fig. 14
figure 14

Hybrid INDI with complementary filter and synchronization as proposed in Kumtepe et al. [30]

If \({\dot{y}}\) is estimated, as proposed in Kumtepe et al. [30], with a complementary filter and synchronized as depicted in Fig. 14 (with the On-board plant model (OBPM) being \(\dot{y}_{mdl}=CAx_f+CBu\), then the closed-loop transfer function is given by:

$$\begin{aligned} sY= & {} \left[ {I - {{{\bar{G}}}_{A}}H{F_{cy}}} \right] CAX - {{{\bar{G}}}_{A}}\left[ {I - H} \right] CA{F_{cx}}X \nonumber \\{} & {} \quad + {{{\bar{G}}}_{A}}{{\mathcal {V}}}+ \left[ {I - {{{\bar{G}}}_{A}}H{F_{cy}}} \right] C{B_d}D, \end{aligned}$$
(48)

as shown in Appendix A.5, under the assumption that

$$\begin{aligned}{} & {} CB\left[ I -G_A\bar{H}\bar{F}_{cy}-G_A (I-\bar{H})\right] ^{ - 1}{G_A}{(CB)^\dag } \nonumber \\{} & {} \quad =\left[ I -\bar{G}_A{H}{F}_{cy}-\bar{G}_A (I-H)\right] ^{ - 1}, \end{aligned}$$
(49)

which holds if the basic assumptions and the additional assumptions mentioned in Sect. 4.4 are satisfied, respectively. If for example \({{F_{cy}}}\) and \({{F_{cx}}}\) are diagonal with the same elements on the diagonal, then:

$$\begin{aligned} sY= & {} (I - {{{\bar{G}}}_{A}}{F_{cy}})CAX + {{{\bar{G}}}_{A}}{{\mathcal {V}}} \nonumber \\{} & {} \quad + \left[ {I - {{{\bar{G}}}_{A}}H{F_{cy}}} \right] C{B_d}D. \end{aligned}$$
(50)

In this case, it can be seen that this filtering technique produces a high-pass filter on the states which is \((I-\bar{G}_AF_{cy})\) and hence with a cut-off frequency which is in between the cut-off frequencies of the high-pass filter in vanilla INDI (Sect. 4.1), \((I-\bar{G}_A)\), and the INDI with derivative filter and synchronization (Sect. 4.4), \((I-\bar{G}_AHF_{cy})\). If the state dynamics are slow enough \(\dot{y}\), hence follows \(\nu \) with the actuator dynamics \(\bar{G}_A\). The direct influence of the disturbances are high-pass filtered by \((I-\bar{G}_AHF_{cy})\), which is similar to the complementary filter discussed in Sect. 4.2 and the derivative filter with synchronization discussed in Sect. 4.4.

Fig. 15
figure 15

Re-formulation of hybrid INDI with complementary filter

Fig. 16
figure 16

State complementary filter for un-delayed model estimate of \({\dot{x}}\) and x

Fig. 17
figure 17

ANDI roll control

The assumptions above can again be relaxed if the synchronization on the feedback is moved to the complementary filter and the filter chain \(F_{cy}(s)\) is split into sensor filters S(s) and notch/roll-off filters F(s) as shown in Fig. 15. Different filtering F(s) in the control law can now be applied in the feedback paths. With this modification the only assumption is the sensor filters \(S_x(s)\) and \(S_y(s)\) are diagonal and identical in each channel in order to obtain the relation given by Eq. (50).

4.6 Un-delayed estimate of model-based output derivative \(\dot{y}_{mdl}\)

In Section 4.2, the analysis was based on an un-delayed model estimate, \({\dot{y}}_{mdl}\), of \({\dot{y}}\). This can for this example be obtained by a cascaded complementary filter for \({{\dot{x}}}\) and then x as depicted in Fig. 16. Since \({\dot{y}}=C(Ax+Bu)\), this provides the necessary estimate for the use in Section 4.2. Furthermore, this complementary filter can provide the estimate \(\hat{\dot{x}}\) for the ANDI control law.

5 Simulation

5.1 Roll dynamics example

This subsection compares the different presented synchronization approaches for the simplified roll motion dynamics of an aircraft, given by

$$\begin{aligned} \dot{p}=L_p p + L_{\xi } \xi , \end{aligned}$$
(51)

with roll damping \(L_p=-2.7\) 1/s, effectiveness \(L_{\xi }=-14\) \(1/s^2\), control input \(\xi \), which is the aileron deflection and measured output p, which is the roll rate. The actuator dynamics are given by

$$\begin{aligned} G_A = \frac{\omega _A}{(s+\omega _A)}, \end{aligned}$$
(52)

with \(\omega _A = 50\) rad/s. The sensor dynamics are given by

$$\begin{aligned} S(s)= \frac{\omega _S}{s+\omega _S}, \end{aligned}$$
(53)

with bandwidth \(\omega _S=100\) rad/s. The delay is given by

$$\begin{aligned} D_{y}(s) = e^{-Ts}, \end{aligned}$$
(54)

with \(T= 0.03s\). For this example, the filter \(F(s)=1\). \(F_{cy}(s)\) is given by Eq. (39). The filter H is given by

$$\begin{aligned} H(s)= \frac{\omega _H}{s+\omega _H}, \end{aligned}$$
(55)

with bandwidth \(\omega _H=30\) rad/s.

Figure 18 shows the desired roll acceleration signal \(\dot{p}_{des}\), which shall be tracked, and the closed-loop roll acceleration \(\dot{p}\), for the vanilla INDI law depicted in Fig. 9, and the INDI with derivative filter and no synchronization depicted in Fig. 11. The pseudo-control is in both cases \(\nu =\dot{p}_{des}\). Figure 18 shows that in case, the derivative of p is obtained by a differentiation filter without a synchronization technique, the resulting response might be oscillatory. With increasing phase loss of the filter \(F_{cy}(s)\), the closed-loop system will become unstable as happened in this case.

Fig. 18
figure 18

Comparison of vanilla INDI and INDI with derivative filter without synchronization

Fig. 19
figure 19

Comparison of vanilla INDI and INDI with different synchronization variants

Fig. 20
figure 20

Verification of the behavior of ANDI /E-INDI with cascaded synchronization

Fig. 21
figure 21

Comparison of control signal with noise on the measurement of y

Figure 19 compares the responses of vanilla INDI (Fig. 9), INDI with derivative filter and synchronization (Fig. 12), hybrid INDI with complementary filter and synchronization (Fig. 14), and INDI with the cascaded complementary filter (Figs. 10 and 16). For all cases, the pseudo-control is again \(\nu =\dot{p}_{des}\). It is seen that INDI with derivative filter and synchronization improves the response compared to the INDI with derivative filter and without a synchronization, by removing the oscillations. The hybrid INDI with the complementary filter and synchronization improves the response further (the resulting response is closer to the response obtained by vanilla INDI) compared to the pure derivative filter with synchronization. Compared to that, the INDI with the proposed cascaded complementary filter improves the response further by recovering the vanilla INDI response. However, if the sensor dynamics are fast and the measurement delay very low, the differences in the responses might be minor. In this case, the hybrid INDI or INDI with differentiation filter and synchronization might be the preferred solution because of its lower complexity. If the sensor dynamics are slow or the measurement delay non-negligible, the cascaded complementary filter might be preferred.

Figure 20 compares the E-INDI control law given by Eq. (17), with the ANDI control law, given by Eq. (9), and depicted in Figs. 2 and 17. Both the E-INDI and ANDI are implemented with \(K_0 =k_0 =0\), i.e., without roll rate error feedback. Figure 20 reveals that E-INDI recovers the phase of the reference signal. This is because of the feed forward of \(\ddot{y}_{ref}\) in E-INDI. ANDI also uses this feed forward and additionally the model dependent term \(F_x \dot{x}\), which corresponds to \(L_p\hat{\dot{p}}\) in the considered example. The closed-loop response of ANDI results in exact tracking of the reference signal \(\dot{p}_{ref}\), at the cost of additional necessary model information.

In Fig. 21, the control input \(\xi \) are depicted for the different controller structures for the case that noise with a standard deviation of 0.1deg is added to the measured roll rate p. It can be seen that the resulting jitter on \(\xi \) is for all variants in a similar magnitude range, although it seems slightly less for ANDI.

5.2 Linearized lateral motion example

This subsection compares the different presented synchronization approaches for the linearized lateral dynamics of an aircraft given by

$$\begin{aligned} \begin{bmatrix} \dot{r} \\ \dot{\beta } \\ \dot{p}\\ \dot{\Phi } \end{bmatrix}&= \begin{bmatrix} N_r &{} N_{\beta } &{} N_p &{} 0\\ -1+Y_r &{} Y_{\beta } &{} 0 &{} \frac{g}{V_0}\\ L_r &{} L_{\beta } &{} L_p &{} 0 \\ 0 &{} 0&{} 1&{} 0 \end{bmatrix} \begin{bmatrix} r \\ \beta \\ p\\ \Phi \end{bmatrix} + \begin{bmatrix} N_{\xi } &{} N_{\zeta }\\ Y_{\xi } &{} Y_{\zeta }\\ L_{\xi } &{} L_{\zeta }\\ 0 &{} 0 \end{bmatrix} \begin{bmatrix} \xi \\ \zeta \end{bmatrix} \nonumber \\&= \begin{bmatrix} -0.520 &{} 3.488 &{} -0.628 &{} 0\\ -0.987 &{} -0.199 &{} 0 &{} 0.130\\ 0.472 &{} -14.408 &{} -6.624 &{} 0 \\ 0 &{} 0&{} 1&{} 0 \end{bmatrix} \begin{bmatrix} r \\ \beta \\ p\\ \Phi \end{bmatrix}\nonumber \\&\quad + \begin{bmatrix} 0.539 &{} -2.005\\ -0.012 &{} 0.040\\ -10.700 &{} 2.899\\ 0 &{} 0 \end{bmatrix} \begin{bmatrix} \xi \\ \zeta \end{bmatrix}, \end{aligned}$$
(56)

with \(y=[r,p]^T\) and \(x=[r,\beta ,p,\Phi ]^T\). All states are filtered by the sensor dynamics S(s) given by Eq. (53) with \(\omega _S=100\,rad/s\) and are delayed with Eq. (54) with \(T=0.03s\). Only the rates p and r are additionally filtered by a notch filter given by

$$\begin{aligned} F(s) = \frac{s^2+2 g_{min} \zeta _N \omega _N +\omega _N^2}{s^2+2 \zeta _N \omega _N+\omega _N^2}, \end{aligned}$$
(57)

with parameters summarized in Table 2 for p and r, respectively. The filter H is given by Eq. (55) with bandwidth \(\omega _H=30\) rad/s. For the different INDI synchronization structures \(\nu \) represents \(\dot{r}\) and \(\dot{p}\). For the E-INDI and ANDI structures \(\nu \) represents \(\ddot{r}\) and \(\ddot{p}\). \(F_u = CB\) is given by

$$\begin{aligned} F_u= \begin{bmatrix} N_{\xi } &{} N_{\zeta }\\ L_{\xi } &{} L_{\zeta }\\ \end{bmatrix}, \end{aligned}$$
(58)

and \(F_x = CA\) by

$$\begin{aligned} F_x= \begin{bmatrix} N_r &{} N_{\beta } &{} N_p &{} 0\\ L_r &{} L_{\beta } &{} L_p &{} 0 \\ \end{bmatrix}. \end{aligned}$$
(59)

The actuator dynamics are given by

$$\begin{aligned} G_A = (sI+\Omega )^{-1} \Omega , \end{aligned}$$
(60)
Table 2 Values of notch filters
Fig. 22
figure 22

Comparison of vanilla INDI and INDI with different synchronization variants (\(\dot{p}\) command to \(\dot{p}\) response)

Fig. 23
figure 23

Comparison of vanilla INDI and INDI with different synchronization variants (\(\dot{p}\) command to \(\dot{r}\) response)

Fig. 24
figure 24

Comparison of vanilla INDI and INDI with different synchronization variants (\(\dot{r}\) command to \(\dot{p}\) response)

with \(\Omega = I\omega _A\) and \(\omega _A = 50 rad/s\). Figures 22 to 25 compare the response of ideal vanilla INDI (i.e., with perfect knowledge of \(\dot{y}\) as depicted in Fig. 9) with the different synchronization techniques depicted in Figs. 12, 14 and 10, with the notch filters placed on the dominant feedback channel of the input. Figures 22 and 23 thereby show the \(\dot{p}\) and \(\dot{r}\) responses for the given command in \(\dot{p}_{des}\). It can be seen that with the proposed cascaded complementary filter the response is equivalent to the vanilla INDI response. The other techniques slightly deteriorate the response, especially with regard to the decoupling of the axes. If a pure roll command is given the response in the r channel is desired to be as low as possible, but the excursion is much higher in the conventional synchronization schemes as shown in Fig. 23. The same holds for the responses to a yaw step command, which are depicted in Figs. 24 and 25.

Fig. 25
figure 25

Comparison of vanilla INDI and INDI with different synchronization variants (\(\dot{r}\) command to \(\dot{r}\) response)

Fig. 26
figure 26

Comparison of INDI with synchronization on u with the re-formulated synchronization on the feedback (\(\dot{p}\) command to \(\dot{p}\) response)

Fig. 27
figure 27

Verification of the behavior of ANDI /E-INDI with cascaded synchronization (\(\dot{p}\) command to \(\dot{p}\) response)

Fig. 28
figure 28

Verification of the behavior of ANDI /E-INDI with cascaded synchronization (\(\dot{p}\) command to \(\dot{r}\) response)

Fig. 29
figure 29

Verification of the behavior of ANDI /E-INDI with cascaded synchronization (\(\dot{r}\) command to \(\dot{p}\) response)

Fig. 30
figure 30

Verification of the behavior of ANDI /E-INDI with cascaded synchronization (\(\dot{r}\) command to \(\dot{r}\) response)

The simulations done until now show that the cascaded filter has improvement over the synchronization on u, but the synchronization on u still works reasonably well. The synchronization approach does not require any additional model information; hence, it might be the preferred choice. The above simulations were made with a weakly coupled CB matrix; hence, the assumptions given in Eqs. (47) and (49) almost hold. For conventional fixed wing aircraft, this is usually the case, but, for advanced configurations this is not necessarily the case. For example in a V-tail aircraft the control inputs are heavily coupled in the r and p channel. In this case, having the synchronization on u can have adverse effects as shown in the following. As derived in Sects. 4.4 and 4.5, re-formulations of the synchronization as complementary filters allows for separate filtering in the different channels. The following simulations are performed with the exact same lateral system only changing the CB matrix to be strongly coupled as given in Eq. (61). In Fig. 26 the synchronization from Fig. 12 is compared with the re-formulated filter from Fig. 13. It is seen that the synchronization technique on u is even unstable in this case, where the performance of the re-formulated complementary filter approach is not affected by the couplings. Figure 26 also shows the same behavior for the Hybrid approach with synchronization in u as depicted in Fig. 14, and should be compared to the re-formulated Hybrid INDI depicted in Fig. 15.

$$\begin{aligned} {CB_{\textrm{coupled}}} = \left[ {\begin{array}{*{20}{c}} 1.8&{}{ - 2} \\ { - 10.7}&{}{8} \end{array}} \right] . \end{aligned}$$
(61)

At last, we compare the ANDI and E-INDI approaches used with the proposed cascaded complimentary filter in Figs. 27, 28, 29 and 30. It can be seen that the response for the ANDI technique with cascaded complementary filter perfectly tracks the reference dynamics and perfectly decouples the roll and yaw channel.

6 Conclusion

In this paper, we investigated different ways to compensate and synchronize for filtering and delays of the measurements in several types of incremental control laws. It was shown how to synthesize complementary filters, taking into account the filtering and delays. It was shown that the use of complementary filters in contrast to synchronization on the feedback of u can be especially useful in MIMO systems, if separate filtering is necessary in the different measurements. It was shown that in case of strongly coupled input effectiveness, the synchronization on the actuator feedback may become even unstable, where the equivalent complementary filter formulation recovers the design closed-loop behavior. A method for deriving the initialization of the complementary filters was presented, which allows for transient-free engagement in non-steady state conditions. At last, it was shown that a cascaded complementary filter can be used to obtain an un-delayed model-based derivative estimate. Future work will be focused on comparing the performance and robustness in practical applications.