1 Introduction

Since the space projects, such as deep space exploration, space debris removal, and on-orbit service, grow more complex, the spacecraft attitude control system becomes more vital for mission accomplishment. The design of the attitude control system mainly focuses on the following issues. The first one is the robustness. It is required that the attitude control system should be capable of coping with the disturbances and uncertainties arising from the severe space environment for reliability concern. Another one is the vibration suppression of flexible appendages. The structural design of the spacecraft with large size and lightweight results in the increase in the flexibility, which will influence the stability of the attitude control system. Moreover, in order to complete the diverse and difficult missions better, the requirement of the control performance is dramatically increased as well. Therefore, the attitude control design is still a challenging research subject.

The robust attitude control methods for flexible spacecraft have been extensively studied [1,2,3,4,5,6,7,8,9,10,11,12,13]. Xiao et al. [1] presented an adaptive sliding mode controller to achieve attitude tracking control with neural networks to deal with uncertainties. Sendi et al. [2] studied the robust tracking control problem using T-S fuzzy model to approximate the uncertain flexible spacecraft system and PDC (parallel distributed compensation) technique to construct the controller. To improve the convergence speed and the robustness against disturbances, Zhong et al. [3] designed finite-time control strategies by utilizing terminal sliding mode method. In [4], a robust \(H_{\infty }\) output feedback control method for flexible spacecraft attitude stabilization was developed by combining LMI and the convex optimization algorithm. Based on the ideas of uncertainties estimation and feed-forward compensation, disturbance observers were designed to handle the lumped disturbance (including external disturbances, unmodeled dynamics, and flexible influences) in [5,6,7,8,9], which can significantly improve the attitude control accuracy. Similar to the disturbance observer, a modal observer was proposed by Di Gennaro [10] with the special purpose of addressing the vibration of flexible appendages. Utilizing backstepping and finite-time control techniques, Ding and Zheng [11] developed the controller to obtain the high-accuracy attitude stabilization, while a modal observer was employed to suppress the vibration. For the multiple flexible spacecraft distributed attitude synchronization control, a nonlinear observer was introduced to solve the problem that the modal variables and angular velocity cannot be measured [12]. Although the above approaches can effectively suppress the uncertainties including flexible vibrations while enhancing the system robustness, two issues still need to be further considered. First, in these works, the vibration suppression was realized by the so-called centralized vibration control [13] whose basic thought is to rely on the attitude controller to reduce or eliminate the influence of the vibration on the spacecraft attitude. In fact, the vibration itself is not suppressed through the centralized control but will decay through the damping of the flexible structures. Thus, when the structures have the characteristics of low damping and high flexibility, the simple use of the centralized control may not possess the desired results. On the contrary, it will increase the burden on the actuators of the spacecraft main body. Second, these methods are not specially designed for performance concerns resulting in the dependence on control gains and the lack of flexibility. Therefore, the active vibration control and the performance-oriented control schemes are essential to be introduced into the attitude control system to enhance the overall control performance.

The key to the active vibration control is exploiting distributed intelligent materials or other instruments as sensors and actuators to measure and control the vibration deformation. For the active vibration control of the flexible spacecraft, Hu et al. [14,15,16,17] obtained some important results, in which the robust sliding mode control method was mainly studied to design the attitude controllers, while the strain rate feedback or the positive position feedback (PPF) compensators were used to achieve the vibration suppression. In recent years, several new results using active control have emerged such as modal velocity feedback [18], PPF [19, 20], and component synthesis vibration suppression [21]. However, most of them concentrated on the innovation of the centralized attitude control rather than the active vibration control. Moreover, in the aforementioned results, the attitude controller and active controller were designed separately on the premise of ignoring the dynamic coupling between flexible structures and the spacecraft main body, which could not ensure the stability of the whole closed-loop system. On the other hand, owing to the introduction of the additional devices, the consequent issues (such as the installation, the reliability, and the complexity of the control system) which will make the practical application difficult cannot be neglected. Taking the above factors into consideration, Wang et al. [13] studied the centralized vibration control with the optical camera measuring the flexible dynamic behaviors instead of attaching the smart sensors or actuators on the appendages and explained the advantages of the method. In [22,23,24], the active vibration control was researched with only actuators but no sensors to measure the modal variables, while the coupling between flexible structures and the spacecraft main body was considered.

To satisfy the performance requirements of the attitude maneuver, motion planning approaches [25,26,27] were usually introduced into the control system design, whose aim is to acquire an ideal desired trajectory. After that, the planned trajectory was tracked by designing the high-performance controllers. This scheme can be regarded as the common solution for the attitude control of the spacecraft with performance requirements. However, actually the control effect mainly depends on the designed tracking control methods. Furthermore, it does not have a systematic procedure or specific design technique which can obtain the required control behaviors by a prior selection of some certain parameters. To achieve the above characteristic, some distinctive performance constraint methods including funnel control (FC) [28, 29], barrier Lyapunov function (BLF) technique [30, 31], and prescribed performance control (PPC) [32] attracted researchers’ attention. Consider that FC is limited to be applied to some certain types of systems and BLF technique places more emphasis on handling the problems with state constraints. However, PPC can make the convergence rate, overshoot, and steady-state error of the closed-loop system strictly satisfy the requirements by utilizing a predefined performance function and an error transformation, which is more suitable for solving the control problems with high-performance specifications. For the last decade, PPC has been widely investigated in theory [33,34,35] and was initially applied to robotic systems [36, 37]. In recent years, it has been gradually adopted in spacecraft attitude control systems [38,39,40], which demonstrates the good application prospect. Furthermore, when considering that PPC has the characteristic of making the system state strictly stay within the predefined bounds, it can be used to control the vibration to obtain a prespecified suppression effect.

To sum up, most published studies attached more importance to the design of the centralized control. Although many of them also deeply researched the application of active vibration control, the influence of the attitude motions was often neglected leaving the stability of the closed-loop system not guaranteed. Additionally, when taking into account the increasing control performance requirements, the idea of prescribed performance should be reasonably adopted. Thus, both high-performance attitude control and active vibration control schemes with strong robustness need to be further studied in the consideration of external disturbances and uncertainties.

In this study, a prescribed performance composite control strategy is proposed for flexible spacecraft, which contains a modal observer, an adaptive prescribed performance attitude controller, and a prescribed performance active vibration controller. The modal observer is employed as a substitute for the piezoelectric sensors to obtain the modal information. The main contributions of this study can be summarized as follows:

  1. (1)

    Different from Ref. [14,15,16,17,18,19,20,21], this paper performs the controllers design and stability analysis from an overall perspective of the closed-loop system with the dynamic coupling considered.

  2. (2)

    The attitude controller and the active vibration controller are derived by using the PPC design process, such that the attitude error can obtain the prescribed dynamic and steady-state control performance and the modal coordinate of the flexible vibration can be always kept within the prescribed constraint bounds to achieve expected vibration attenuation effect.

  3. (3)

    Previous researches on PPC usually depend on the assumption that all states are available for measurement. Since neither the modal coordinate nor the modal velocity can be measured, this work introduces a modal observer to make the estimation and try to constrain the observed variables to achieve the similar constraint effect on the actual modal coordinate, which provides a solution to the PPC problem without measured states. Specifically, the actual modal coordinate of each controlled mode can be driven to stay in a certain range with the attenuation rate no less than a prespecified value.

The remainder of this research is organized as follows: The mathematical models of the flexible spacecraft with piezoelectric actuators and the control objective are given in Sect. 2. Section 3 presents the design procedures of the proposed prescribed performance controllers and the stability analysis of the closed-loop system. Section 4 provides the numerical simulation results in different cases to verify the approach, followed by the conclusions summarized in Sect. 5.

2 Preliminaries

Let \({{\varvec{I}}}_n \in \mathbf{R }^{n\times n}\) denote the n-by-n identity matrix. Let \(||\cdot ||\) stand for the Euclidean norm or its induced matrix 2-norm. \(\lambda _{\min } (\cdot )\) and \(\lambda _{\max } (\cdot )\), respectively, represent the minimum and maximum eigenvalues of the matrix in brackets. Specifically, \(||\cdot ||_1 \) represents the induced matrix 1-norm and \(\lambda _{\max }^+ (\cdot )\) represents the maximum positive eigenvalue of the matrix in brackets.

2.1 Flexible spacecraft attitude dynamics

Assume that the thin, homogeneous, and isotropic piezoelectric films are attached on the surface of the flexible appendages as actuators. The dynamic equations of the spacecraft can be expressed as [22]

$$\begin{aligned}&{{\varvec{J}}}\dot{{\varvec{\omega }}}+{\varvec{\omega }}^{\times }{{\varvec{J}}}{\varvec{\omega }} +{{\varvec{F}}}_s \ddot{{\varvec{\eta }}}+{\varvec{\omega }} ^{\times }{{\varvec{F}}}_s\dot{{\varvec{\eta }}}={{\varvec{u}}}+{{\varvec{d}}} \end{aligned}$$
(1)
$$\begin{aligned}&\ddot{{\varvec{\eta }}}+2{\varvec{\xi }} {\varvec{\Omega }} \dot{{\varvec{\eta }} }+{\varvec{\Omega }}^{2}{\varvec{\eta }} +{{\varvec{F}}}_s^{\mathrm{T}} \dot{{\varvec{\omega }} }=-\,{{\varvec{F}}}_a {{\varvec{u}}}_p. \end{aligned}$$
(2)

Equation (1) is the attitude dynamic equation, where \({\varvec{\omega }} =[{\begin{array}{lll} {\omega _1 }&{} {\omega _2 }&{} {\omega _3 } \\ \end{array} }]^{\mathrm{T}}\in \mathbf{R }^{3}\) denotes the angular velocity vector of the spacecraft body-fixed frame with respect to an inertial frame expressed in the body-fixed frame, \({{\varvec{J}}}\in \mathbf{R }^{3\times 3}\) denotes the positive definite symmetric inertia matrix of the whole spacecraft, \({{\varvec{u}}}\) and \({{\varvec{d}}}\in \mathbf{R }^{3}\) denote the control torque vector commanded by the controller and the external environmental disturbance torque vector, respectively, \({\varvec{\eta }} \in \mathbf{R }^{n}\) denotes the n-dimension modal coordinate vector, and \({{\varvec{F}}}_s \in \mathbf{R }^{3\times n}\) denotes the coupling matrix between the flexible appendages and the rigid body. Equation (2) is the modal equation, where \({\varvec{\xi }}\) and \({\varvec{\Omega }}\) are n-dimensional diagonal matrices representing the corresponding damping ratio matrix and the natural frequency matrix, respectively, \({{\varvec{F}}}_a \in \mathbf{R }^{n\times m}\) is a coupling matrix associated with the structural characteristics of the appendage and the mounting position of the m piezoelectric actuators, and \({{\varvec{u}}}_p \in \mathbf{R }^{m}\) is the m-dimensional piezoelectric input voltage. For any three-dimensional vector \({\varvec{\nu }} =[{\begin{array}{lll} {\nu _1 }&{} {\nu _2 }&{} {\nu _3 } \\ \end{array} }]^{\mathrm{T}}\), the symbol \({\varvec{\nu }}^{\times }\) denotes the following skew-symmetric matrix:

$$\begin{aligned} {\varvec{\nu }}^{\times }=\left[ {{\begin{array}{lll} 0&{} {-\,\nu _3 }&{} {\nu _2 } \\ {\nu _3 }&{} 0&{} {-\,\nu _1 } \\ {-\,\nu _2 }&{} {\nu _1 }&{} 0 \\ \end{array} }} \right] . \end{aligned}$$

The modified Rodrigues parameters (MRPs) are used to perform the attitude description of the spacecraft. Let \({\varvec{\sigma }} ={\varvec{\phi }} \tan (\varphi /4)=[\sigma _1 ,\sigma _2 ,\sigma _3 ]^{\mathrm{T}}\in \mathbf{R }^{3}\) represent the MRPs, where \({\varvec{\phi }} \in \mathbf{R }^{3}\) is the Euler axis, \(\varphi \) is the Euler angle, and \(\sigma _i \) (\(i=1,2,3)\) denotes the MRP of each axis. The kinematic equation is given as [41]

$$\begin{aligned} {\dot{{\varvec{\sigma }}}}={{\varvec{G}}}({\varvec{\sigma }}){\varvec{\omega }}, \end{aligned}$$
(3)

where \({{\varvec{G}}}({\varvec{\sigma }})=\frac{1}{4}[(1-{\varvec{\sigma }} ^{\mathrm{T}}{\varvec{\sigma }} ){{\varvec{I}}}_3 +2{\varvec{\sigma }} {\varvec{\sigma }}^{\mathrm{T}}+2{\varvec{\sigma }}^{\times }]\).

Remark 1

Note that MRPs have a singularity problem when \(\varphi =\pm \, 2\pi \) rad. However, the original MRPs can be switched to its shadow set \({\varvec{\sigma }}^{s}=-\,{\varvec{\sigma }} /({\varvec{\sigma }}^{\mathrm{T}}{\varvec{\sigma }} )\) when \({\varvec{\sigma }}^{\mathrm{T}}{\varvec{\sigma }}>1\), which guarantees the global rotation representation without singularity. Therefore, the combined set of the original and shadow MRPs may provide a bounded attitude representation [42]. In this study, to avoid using the shadow set \({\varvec{\sigma }}^{s}\) and simplify the control design process, we limit the range of the Euler angle \(\varphi \) to \([-\,\pi ,\pi ]\) rad (i.e., \({\varvec{\sigma }} ^{\mathrm{T}}{\varvec{\sigma }} \le 1\)).

2.2 Attitude error dynamics

Denote \({\varvec{\sigma }}_d =[\sigma _{d1} ,\sigma _{d2} ,\sigma _{d3} ]^{\mathrm{T}}\in \mathbf{R }^{3}\) and \({\varvec{\omega }} _d \in \mathbf{R }^{3}\) as the desired attitude MRPs and desired angular velocity. The attitude error MRPs \({\varvec{\sigma }}_e =[\sigma _{e1} ,\sigma _{e2} ,\sigma _{e3} ]^{\mathrm{T}}\in \mathbf{R }^{3}\) is defined as [42]

$$\begin{aligned} {\varvec{\sigma }}_e= & {} {\varvec{\sigma }} \otimes {\varvec{\sigma }}_d^{-1} \nonumber \\= & {} \frac{{\varvec{\sigma }}_d ({\varvec{\sigma }}^{\mathrm{T}}{\varvec{\sigma }} -1)+{\varvec{\sigma }} (1-{\varvec{\sigma }}_d^{\mathrm{T}} {\varvec{\sigma }}_d )+2{\varvec{\sigma }}_d^\times {\varvec{\sigma }} }{1+{\varvec{\sigma }}_d^{\mathrm{T}} {\varvec{\sigma }}_d {\varvec{\sigma }} ^{\mathrm{T}}{\varvec{\sigma }} +2{\varvec{\sigma }}_d^{\mathrm{T}} {\varvec{\sigma }} }. \end{aligned}$$
(4)

The error angular velocity \({\varvec{\omega }}_e ={\varvec{\omega }} -{\varvec{\omega }}_r \), where \({\varvec{\omega }}_r ={\tilde{{{\varvec{R}}}}}({\varvec{\sigma }}_e ){\varvec{\omega }}_d \) and \({\tilde{{{\varvec{R}}}}}({\varvec{\sigma }}_e )\) is the coordinate transformation matrix from the desired body-fixed frame to the body-fixed frame described by \({\varvec{\sigma }}_e \), where

$$\begin{aligned} {\tilde{{{\varvec{R}}}}}({\varvec{\sigma }}_e )= & {} {{\varvec{I}}}_3 -\frac{4(1-{\varvec{\sigma }}_e^{\mathrm{T}} {\varvec{\sigma }}_e )}{(1+{\varvec{\sigma }}_e^{\mathrm{T}} {\varvec{\sigma }}_e )^{2}}{\varvec{\sigma }}_e^\times \nonumber \\&+\,\frac{8}{(1+{\varvec{\sigma }}_e^{\mathrm{T}} {\varvec{\sigma }}_e )^{2}}({\varvec{\sigma }}_e^\times )^{2}. \end{aligned}$$
(5)

Further, we have

$$\begin{aligned} {\dot{{\varvec{\omega }}}}_r= & {} {\tilde{{{\varvec{R}}}}}({\varvec{\sigma }}_e ){\dot{{\varvec{\omega }}}}_d +\dot{{\tilde{{{\varvec{R}}}}}}({\varvec{\sigma }}_e ){\varvec{\omega }}_d ={\tilde{{{\varvec{R}}}}}({\varvec{\sigma }}_e )\dot{{\varvec{\omega }}}_d \nonumber \\&-\,{\varvec{\omega }}_e^\times {\tilde{{{\varvec{R}}}}}({\varvec{\sigma }}_e ){\varvec{\omega }}_d. \end{aligned}$$
(6)

Let \({{\varvec{C}}}=2{\varvec{\xi \Omega }} \) and \({{\varvec{K}}}={\varvec{\Omega }}^{2}\) represent the damping and stiffness matrices, respectively. \({\varvec{\psi }} ={{\varvec{F}}}_s^{\mathrm{T}} {\varvec{\omega }}_e +\dot{{\varvec{\eta }}}\) represents the difference between the total modal velocity \({{\varvec{F}}}_s^{\mathrm{T}} {\varvec{\omega }} +{\dot{{\varvec{\eta }}}}\) and the reference modal velocity \({{\varvec{F}}}_s^{\mathrm{T}} {\varvec{\omega }}_r\)[22]. Combining Eqs. (1)–(5), one can obtain the attitude error dynamic equations as

$$\begin{aligned} {{\varvec{J}}}_m {\dot{{\varvec{\omega }}}}_e= & {} -\,{\varvec{\omega }}^{\times }{{\varvec{J}}}_m {\varvec{\omega }}_e -{\varvec{\omega }}^{\times }{{\varvec{J}}}{\varvec{\omega }}_r -{{\varvec{F}}}_s {{\varvec{CF}}}_s^{\mathrm{T}} {\varvec{\omega }}_e -{{\varvec{J}}}_m {\dot{{\varvec{\omega }}}}_r \nonumber \\&+\,{{\varvec{F}}}_s ({{\varvec{K}}}{\varvec{\eta }} +{{\varvec{C}}}{\varvec{\psi }} )-{\varvec{\omega }}^{\times }{{\varvec{F}}}_s {\varvec{\psi }} \nonumber \\&+\,{{\varvec{F}}}_s {{\varvec{F}}}_a {{\varvec{u}}}_p +{{\varvec{u}}}+{{\varvec{d}}} \nonumber \\ {\dot{{\varvec{\sigma }}}}_e= & {} {{\varvec{G}}}({\varvec{\sigma }}_e ){\varvec{\omega }}_e \end{aligned}$$
(7)
$$\begin{aligned} \left[ {{\begin{array}{l} {{\dot{{\varvec{\eta }}}}} \\ {{\dot{{\varvec{\psi }}}}} \\ \end{array} }} \right]= & {} {{\varvec{A}}}\left[ {{\begin{array}{l} {\varvec{\eta }} \\ {\varvec{\psi }} \\ \end{array} }} \right] -{{\varvec{ABF}}}_s^{\mathrm{T}} {\varvec{\omega }}_e -{{\varvec{BF}}}_s^{\mathrm{T}} {\dot{{\varvec{\omega }}}}_r -{{\varvec{BF}}}_a {{\varvec{u}}}_p \end{aligned}$$
(8)

where \({{\varvec{J}}}_m ={{\varvec{J}}}-{{\varvec{F}}}_s {{\varvec{F}}}_s^{\mathrm{T}} \), \({{\varvec{G}}}({\varvec{\sigma }}_e )=\frac{1}{4}[(1-{\varvec{\sigma }}_e^{\mathrm{T}} {\varvec{\sigma }}_e ){{\varvec{I}}}_3 +2{\varvec{\sigma }}_e {\varvec{\sigma }}_e^{\mathrm{T}} +2{\varvec{\sigma }}_e^\times ]\), \({{\varvec{A}}}=\left[ {{\begin{array}{ll} \mathbf{0 }&{} {{{\varvec{I}}}_n } \\ {-\,{{\varvec{K}}}}&{} {-\,{{\varvec{C}}}} \\ \end{array} }} \right] \), and \({{\varvec{B}}}=\left[ {{\begin{array}{l} \mathbf{0 } \\ {{{\varvec{I}}}_n } \\ \end{array} }} \right] \).

2.3 Control objective

To proceed further, the following basic assumptions are required in this study:

Assumption 1

The desired attitude MRPs \({\varvec{\sigma }}_d \), angular velocity \({\varvec{\omega }}_d\), and their first-order time derivatives are known and bounded for all \(t\ge 0\).

Assumption 2

The attitude MRPs \({\varvec{\sigma }}\) and the angular velocity \({\varvec{\omega }}\) are available for measurement.

Assumption 3

The number of the piezoelectric actuators should be equal to the order of the controlled modes, such that the coupling matrix \({{\varvec{F}}}_a\) is invertible.

The control objective can be expressed as follows: Design the attitude controller \({{\varvec{u}}}\) and the active vibration controller \({{\varvec{u}}}_p\), such that the error MRPs \({\varvec{\sigma }}_e \) and the modal coordinate \({\varvec{\eta }}\) can converge to zero with the prescribed transient and steady-state performance, respectively.

3 Prescribed performance controllers design and stability analysis

In this section, the attitude controller and the active controller are proposed based on PPC design process with the stability of the whole closed-loop system analyzed by the Lyapunov theory. It should be noted that the controllers can be derived from the process of the Lyapunov stability analysis.

3.1 Attitude controller design

To achieve the control objective, we expect to solve the constrained problem as

$$\begin{aligned} -\underline{{\delta }}_i \rho _i (t)<\sigma _{ei} (t)<\bar{{\delta }}_i \rho _i (t), \end{aligned}$$
(9)

where \(\underline{{\delta }}_i\) and \(\bar{{\delta }}_i \) (\(i=1,2,3\)) are constants which belong to the set (0, 1]. \(\rho _i (t)\) is a designed function, which will be utilized to describe the envelope of \(\sigma _{ei} (t)\). In order to present a simple and intuitive expression, \(\rho _i (t)\) is commonly chosen as the following consistently positive and exponentially decaying form [32]:

$$\begin{aligned} \rho _i (t)=(\rho _{i0} -\rho _{i\infty } )e^{-k_i t}+\rho _{i\infty }, \end{aligned}$$
(10)

where \(\rho _{i0} \), \(\rho _{i\infty } \), and \(k_i \) are prespecified positive constants. According to the performance function Eq. (10) and the constraint Eq. (9), it can be found that if the initial value \(\sigma _{ei} (0)\) is located in the set \((-\,\underline{{\delta }}_i \rho _{i0} ,\bar{{\delta }}_i \rho _{i0} )\), the behaviors of \(\sigma _{ei} (t)\) should be completely determined by the properties of \(\rho _i (t)\), that is, the decreasing rate \(k_i \) of \(\rho _i (t)\) provides the minimum convergence speed of \(\sigma _{ei} (t)\), \(\underline{{\delta }}_i \rho _{i0} \) (or \(\bar{{\delta }}_i \rho _{i0}\)) represents the upper bound of the maximum overshoot of the transient response, and the terminal value \(\rho _{i\infty } \) denotes the maximum allowable error of \(\sigma _{ei} (t)\) at the steady state. Thus, the expected performance can be obtained by designing \(\underline{{\delta }}_i \), \(\bar{{\delta }}_i \), and \(\rho _i (t)\) properly.

Since it is difficult to find a solution of the constrained problem (9), a new error variable \(\varepsilon _i (t)\in (-\,\infty ,+\,\infty )\) is introduced to make the error transformation according to the PPC design process [32]:

$$\begin{aligned} \varepsilon _i (t)=\frac{1}{2}\ln \frac{z_i (t)+{\underline{\delta }}_i }{\bar{{\delta }}_i -z_i (t)}, \end{aligned}$$
(11)

where \(z_i (t)={\sigma _{ei} (t)}/{\rho _i (t)}\). Note that if \(\varepsilon _i (t)\) is bounded, the constraint Eq. (9) can hold, which means the control objective is obtained. Consequently, designing the controller to keep \(\varepsilon _i (t)\) bounded becomes the control problem to be solved.

To move forward, define a sliding variable \(s_i (t)\) as

$$\begin{aligned} s_i =c_i \varepsilon _i +{\dot{\varepsilon }}_i, \end{aligned}$$
(12)

where \(c_i >0\) are constants to be selected. Taking the time derivative of \(s_i \) to establish a new error system, we have

$$\begin{aligned} {\dot{s}}_i =c_i {\dot{\varepsilon }}_i +\ddot{\varepsilon }_i =v_i +r_i \ddot{\sigma }_{ei}, \end{aligned}$$
(13)

where \(r_i =(\partial \varepsilon _i^{-1} /\partial z_i )/\rho _i >0\) and \(v_i =(c_i r_i +{\dot{r}}_i )({\dot{\sigma }}_{ei} -\sigma _{ei} {\dot{\rho }}_i /\rho _i )-c_i ({\dot{\sigma }}_{ei} \dot{\rho }_i +\sigma _{ei} \ddot{\rho }_i )/\rho _i +c_i \sigma _{ei} {\dot{\rho }}_i^2 /\rho _i^2 \). \(\ddot{\sigma }_{ei} \) can be obtained from the attitude error dynamics Eq. (7), where the second-order time derivative of \({\varvec{\sigma }}_e \) is

$$\begin{aligned} \ddot{{\varvec{\sigma }} }_e= & {} {\dot{{{\varvec{G}}}}}({\varvec{\sigma }}_e ){\varvec{\omega }}_e +{{\varvec{G}}}({\varvec{\sigma }}_e ){\dot{{\varvec{\omega }}}}_e \nonumber \\= & {} {\dot{{{\varvec{G}}}}}({\varvec{\sigma }}_e ){\varvec{\omega }}_e +{{\varvec{G}}}({\varvec{\sigma }}_e ){{\varvec{J}}}_m^{-1} [-\,{\varvec{\omega }}^{\times }{{\varvec{J}}}_m {\varvec{\omega }}_e -{\varvec{\omega }}^{\times }{{\varvec{J}}}{\varvec{\omega }}_r \nonumber \\&-\,{{\varvec{F}}}_s {{\varvec{CF}}}_s^{\mathrm{T}} {\varvec{\omega }}_e -{{\varvec{J}}}_m {\dot{{\varvec{\omega }}}}_r +{{\varvec{F}}}_s ({{\varvec{K}}}{\varvec{\eta }} +{{\varvec{C}}}{\varvec{\psi }}) \nonumber \\&-\,{\varvec{\omega }}^{\times }{{\varvec{F}}}_s {\varvec{\psi }} +{{\varvec{F}}}_s {{\varvec{F}}}_a {{\varvec{u}}}_p +{{\varvec{u}}}+{{\varvec{d}}}]. \end{aligned}$$
(14)

Further, rewrite Eq. (13) into a compact form as

$$\begin{aligned} {\dot{{{\varvec{s}}}}}= & {} {{\varvec{c}}}{\dot{{\varvec{\varepsilon }}}}+\ddot{{\varvec{\varepsilon }} }={{\varvec{V}}}+{{\varvec{R}}}[{{\varvec{F}}}+{{\varvec{Hu}}}+{{\varvec{HF}}}_s {{\varvec{F}}}_a {{\varvec{u}}}_p \nonumber \\&+\,{{\varvec{HF}}}_s ({{\varvec{K}}}{\varvec{\eta }} +{{\varvec{C}}}{\varvec{\psi }} )-{{\varvec{H}}}{\varvec{\omega }}^{\times }{{\varvec{F}}}_s {\varvec{\psi }} +{{\varvec{D}}}] \end{aligned}$$
(15)

where \({\varvec{\varepsilon }} =[\varepsilon _1 ,\varepsilon _2 ,\varepsilon _3 ]^{\mathrm{T}}\), \(\varvec{c}=\hbox {diag}[c_1 ,c_2 ,c_3 ]\), \({{\varvec{R}}}=\hbox {diag}[r_1 ,r_2 ,r_3 ]\), \({{\varvec{V}}}=[v_1 ,v_2 ,v_3 ]^{\mathrm{T}}\), \({{\varvec{H}}}={{\varvec{G}}}({\varvec{\sigma }}_e ){{\varvec{J}}}_m^{-1} \), \({{\varvec{F}}}={\dot{{{\varvec{G}}}}}({\varvec{\sigma }}_e ){\varvec{\omega }}_e -{{\varvec{H}}}({\varvec{\omega }}^{\times }{{\varvec{J}}}_m {\varvec{\omega }}_e +{\varvec{\omega }}^{\times }{{\varvec{J}}}{\varvec{\omega }}_r +{{\varvec{F}}}_s {{\varvec{CF}}}_s^{\mathrm{T}} {\varvec{\omega }}_e +{{\varvec{J}}}_m {\dot{{\varvec{\omega }}}}_r )\), and \({{\varvec{D}}}={{\varvec{Hd}}}\). Now, if we force \({{\varvec{s}}}\) of the error system Eq. (15) to be bounded, then it is known from Eq. (12) that \(\varepsilon _i \) and \({\dot{\varepsilon }}_i \) are bounded.

Consider that there are only piezoelectric actuators to control the modal vibration but no sensors to measure the modal variables. A modal observer is designed to obtain the modal coordinate and velocity according to the modal dynamics Eq. (8):

$$\begin{aligned} \left[ {{\begin{array}{l} {\dot{{\hat{\varvec{\eta }}}}} \\ {\dot{{\hat{\varvec{\psi }}}}} \\ \end{array} }} \right]= & {} {\varvec{A}}\left[ {{\begin{array}{l} {\hat{\varvec{\eta }}} \\ {\hat{\varvec{\psi }}} \\ \end{array} }} \right] -{\varvec{ABF}}_{s}^{\mathrm{T}} \varvec{\omega }_{e} -{\varvec{BF}}_{s}^{\mathrm{T}} \dot{{{\varvec{\omega }}}}_{r} \nonumber \\&+\,{\varvec{P}}^{-1}\left[ {{\begin{array}{l} {\left( {{\varvec{s}}^{\mathrm{T}}{\varvec{HF}}_{s} {\varvec{K}}} \right) ^{\mathrm{T}}} \\ {\left( {{\varvec{s}}^{\mathrm{T}}{\varvec{H}}({\varvec{F}}_{s} {\varvec{C}}-\varvec{\omega }^{\times }{\varvec{F}}_{s} )} \right) ^{\mathrm{T}}} \\ \end{array}}} \right] -{\varvec{BF}}_{a} {\varvec{u}}_{p}, \nonumber \\ \end{aligned}$$
(16)

where \(\hat{{{\varvec{\eta }}}}\) and \(\hat{{{\varvec{\psi }}}}\) are the estimation of \({\varvec{\eta }}\) and \({\varvec{\psi }}\), respectively. \({{\varvec{P}}}\) is a positive definite diagonal gain matrix and can be denoted as a block matrix \({{\varvec{P}}}=\left[ {{\begin{array}{ll} {{{\varvec{P}}}_{11} }&{} {{\varvec{0}}} \\ {{\varvec{0}}}&{} {{{\varvec{P}}}_{22} } \\ \end{array} }} \right] \), where \({{\varvec{P}}}_{11} \) and \({{\varvec{P}}}_{22}\) are n-dimensional diagonal matrix, respectively.

Moreover, an adaptive estimation approach is adopted to deal with the disturbance which satisfies the following assumption.

Assumption 4

The disturbance term \({{\varvec{D}}}\) is unknown but bounded with \(||{{\varvec{D}}}||\le \bar{{d}}\).

The attitude controller can be proposed as

$$\begin{aligned} {\varvec{u}}= & {} {\varvec{H}}^{-1}\left[ -\,{\varvec{R}}^{-1}{\varvec{V}}-{\varvec{F}}-{\varvec{K}}_{1} {\varvec{s}}-{\varvec{HF}}_{s} {\varvec{F}}_{a} {\varvec{u}}_{p}\right. \nonumber \\&\left. -{\varvec{HF}}_{s} ({\varvec{K}}\hat{\varvec{\eta }}+{\varvec{C}}\hat{{{\varvec{\psi }}}})+{\varvec{H}}{\varvec{\omega }} ^{\times }{\varvec{F}}_{s} \hat{\varvec{\psi }}-\hat{{\bar{{d}}}}\mathbf{tanh }\left( {\frac{{\varvec{s}}}{\mu }} \right) \right] \nonumber \\ \end{aligned}$$
(17)

with the adaptive law to estimate the upper bound \(\bar{{d}}\) of the disturbance \({{\varvec{D}}}\):

$$\begin{aligned} \dot{{\hat{{\bar{{d}}}}}}=\frac{1}{\alpha }\left[ {{\varvec{s}}^{\mathrm{T}}\mathbf{tanh }\left( {\frac{{\varvec{s}}}{\mu }} \right) -\beta \hat{{\bar{{d}}}}} \right] \end{aligned}$$
(18)

where \({{\varvec{K}}}_1 >0\) is a control gain matrix, \(\hat{{\bar{{d}}}}\) is the estimation of \(\bar{{d}}\), \(\alpha ,\beta ,\mu >0\) are adaptive gain constants, and \(\mathbf{tanh }\left( {\frac{{{\varvec{s}}}}{\mu }} \right) =\left[ {\tanh \left( {\frac{s_1 }{\mu }} \right) ,\tanh \left( {\frac{s_2 }{\mu }} \right) ,\tanh \left( {\frac{s_3 }{\mu }} \right) } \right] ^{\mathrm{T}}\).

3.2 Active vibration controller design

Similar to the design idea of constraining the spacecraft attitude, each flexible mode is expected to be restricted to a certain range as well. Consider that we can only obtain the estimations of the modal variables from modal observer (16) rather than the measured ones from sensors. Thus, the modal coordinate estimation \(\hat{{{\varvec{\eta }}}}\) will be constrained instead of the actual modal coordinate \({\varvec{\eta }}\). Furthermore, it can be proved that by constraining \(\hat{{{\varvec{\eta }}}}\), \({\varvec{\eta }}\) is also constrained indirectly.

Inspired by [43], the sliding variables containing both estimations of the modal coordinate and velocity are introduced:

$$\begin{aligned} s_{aj} =c_{a1j} \hat{{\eta }}_j +\hat{{\psi }}_j +c_{a2j} \int _0^t {\hat{{\eta }}_j (\tau )\hbox {d}\tau }, \end{aligned}$$
(19)

where \(j=1,2,\ldots ,n\) represents the modal order, \(c_{a1j} ,c_{a2j} >0\) represent the designed constants, \(\hat{{\eta }}_j \) and \(\hat{{\psi }}_j \) represent the jth order modal value of \(\hat{{{\varvec{\eta }}}}\) and \(\hat{{{\varvec{\psi }}}}\), respectively. By using the performance bound \(\rho _{aj} \), the variable \(s_{aj} \) is required to satisfy the constraint

$$\begin{aligned} -\,\rho _{aj}<s_{aj} <\rho _{aj}. \end{aligned}$$
(20)

It can be obtained from the following lemmas that constraining \(s_{aj} \) is equivalent to constraining \(\eta _j \).

Lemma 1

[44] Consider the second-order nonhomogeneous linear differential equation with constant coefficients with respect to time

$$\begin{aligned} \ddot{y}(t)+p_1 {\dot{y}}(t)+p_2 y(t)=f(t), \end{aligned}$$
(21)

where the nonhomogeneous term f(t) is an arbitrary continuous function. If its characteristic equation has two different real roots \(\lambda _1 \) and \(\lambda _2 \), then the general solution of Eq. (21) can be given as

$$\begin{aligned} y(t)= & {} C_1 e^{\lambda _1 t}+C_2 e^{\lambda _2 t}+\frac{1}{\lambda _1 -\lambda _2 } \nonumber \\&\times \left[ {e^{\lambda _1 t}\int _0^t {f(\tau )e^{-\lambda _1 \tau }d\tau } -e^{\lambda _2 t}\int _0^t {f(\tau )e^{-\lambda _2 \tau }d\tau } } \right] ,\nonumber \\ \end{aligned}$$
(22)

where \(C_1 ={[{\dot{y}}(0)-\lambda _2 y(0)]}/{(\lambda _1 -\lambda _2 )}\) and \(C_2 ={[\lambda _1 y(0)-{\dot{y}}(0)]}/{(\lambda _1 -\lambda _2 )}\).

Lemma 1 is used to support the proof of Lemma 2.

Lemma 2

Consider the variable \(s_{aj} \) in Eq. (19) obtained by modal observer (16) with the performance function \(\rho _{aj} =(\rho _{aj0} -\rho _{aj\infty } )e^{-k_{aj} t}+\rho _{aj\infty } \). If the following conditions are satisfied: 1) attitude error variables \({\varvec{\sigma }}_e \), \({\varvec{\omega }}_e \), \({{\varvec{s}}}\), and the observation error \({\varvec{\eta }}_e ={\varvec{\eta }} -\hat{{{\varvec{\eta }}}}\) are bounded, 2) Eq. (20) holds, and 3) the constant gains \(c_{a1j} \) and \(c_{a2j} \) are chosen as \(c_{a1j}^2 >4c_{a2j} \) and \(\lambda _{a2j}<\lambda _{a1j} <-\,k_{aj} \), respectively, then the modal coordinate \(\eta _j \) will eventually converge to the set

$$\begin{aligned} \mathbf{N }_\eta =\left\{ {\eta _i \in \mathbf{R }:|\eta _i |\le \frac{\rho _{aj\infty } +\bar{{q}}}{c_{a1j} }+\frac{\rho _{aj\infty } +\bar{{q}}}{\lambda _{a1j} -\lambda _{a2j} }+\bar{{\eta }}} \right\} \nonumber \\ \end{aligned}$$
(23)

with the convergence rate no less than \(e^{-k_{aj} t}\), where \(\lambda _{a1j} ={\left( {-c_{a1j} +\sqrt{c_{a1j}^2 -4c_{a2j} }} \right) }/2\), \(\lambda _{a2j} ={\left( {-c_{a1j} -\sqrt{c_{a1j}^2 -4c_{a2j} }} \right) }/2\). \(\bar{{q}}\) and \(\bar{{\eta }}>0\) denote the bound of \({\varvec{Q}}={\varvec{F}}_{s}^{\mathrm{T}} {\varvec{\omega }}_{e} \quad -{\varvec{P}}_{11}^{-1} \left( {{\varvec{s}}^{\mathrm{T}}{\varvec{HF}}_{s} {\varvec{K}}} \right) ^{\mathrm{T}}\) and \(\varvec{\eta }_{e} \), respectively.

The proof of Lemma 2 is given in “Appendix A.”

To proceed with the active controller design, an analogous error transformation as Eq. (11) is provided:

$$\begin{aligned} \varepsilon _{aj} =\frac{1}{2}\ln \frac{z_{aj} +1}{1-z_{aj} }, \end{aligned}$$
(24)

where \(z_{aj} ={s_{aj} (t)}/{\rho _{aj} (t)}\). The objective is to keep \(\varepsilon _{aj} \) bounded. The time derivative of \(\varepsilon _{aj} \) is

$$\begin{aligned} {\dot{\varepsilon }}_{aj}= & {} \frac{\partial \varepsilon _{aj}^{-1} }{\partial z_{aj} }\cdot {\dot{z}}_{aj} \nonumber \\= & {} r_{aj} ({\dot{s}}_{aj} -v_{aj} s_{aj} ), \end{aligned}$$
(25)

where \(r_{aj} =(\partial \varepsilon _{aj}^{-1} /\partial z_{aj} )/\rho _{aj} >0\) and \(v_{aj} ={{\dot{\rho }}_{aj} }/{\rho _{aj} }\). Rewriting Eq. (25) as a compact form and according to Eqs. (16) and (19), we obtain the error system of the active vibration control

$$\begin{aligned} \dot{{{\varvec{\varepsilon }}}}_{a}= & {} {\varvec{R}}_{a} (\dot{{{{\varvec{s}}}}}_{a} -{\varvec{V}}_{a} {\varvec{s}}_{a} ) \nonumber \\= & {} {\varvec{R}}_{a} ({\varvec{c}}_{a1} \dot{{\hat{\varvec{\eta }}}}+\dot{{\hat{\varvec{\psi }}}}+{\varvec{c}}_{a2} \hat{\varvec{\eta }}-{\varvec{V}}_{a} {\varvec{s}}_{a} ) \nonumber \\= & {} {\varvec{R}}_{a} \left\{ {\begin{array}{l} ({\varvec{c}}_{a1} -{\varvec{C}})\hat{\varvec{\psi }}-{\varvec{c}}_{a1} {\varvec{F}}_{s}^{\mathrm{T}} \varvec{\omega }_{e} +{\varvec{c}}_{a1} {\varvec{P}}_{11}^{-1} ({\varvec{s}}^{\mathrm{T}}{\varvec{HF}}_{s} {\varvec{K}})^{\mathrm{T}}+({\varvec{c}}_{a2} -{\varvec{K}})\hat{\varvec{\eta }} \\ +{\varvec{CF}}_{s}^{\mathrm{T}} \varvec{\omega }_{e} -{\varvec{F}}_{s}^{\mathrm{T}} \dot{{{\varvec{\omega }}}}_{r} +{\varvec{P}}_{22}^{-1} \left[ {{\varvec{s}}^{\mathrm{T}}{\varvec{H}}({\varvec{F}}_{s} {\varvec{C}}-\varvec{\omega }^{\times }{\varvec{F}}_{s} )} \right] ^{\mathrm{T}}-{\varvec{F}}_{a} {\varvec{u}}_{p} -{\varvec{V}}_{a} {\varvec{s}}_{a} \\ \end{array}} \right\} \end{aligned}$$
(26)

where \({{\varvec{R}}}_a =\hbox {diag}[r_{a1} ,\ldots ,r_{an} ]\), \({\varvec{\lambda }}_a =\hbox {diag}[\lambda _{a1} ,\ldots ,\lambda _{an}]\), \({{\varvec{V}}}_a =\hbox {diag}[v_{a1} ,\ldots ,v_{an} ]\), \(\varvec{c}_{a1} =\hbox {diag}[c_{a11} ,\ldots ,c_{a1n} ]\), and \(\varvec{c}_{a2} =\hbox {diag}[c_{a21} ,\ldots ,c_{a2n} ]\). Then, based on Assumption 3, the active controller can be proposed as

$$\begin{aligned} {\varvec{u}}_{p} ={\varvec{F}}_{a}^{-1} \left\{ {\begin{array}{l} ({\varvec{c}}_{a1} -{\varvec{C}})\hat{\varvec{\psi }}-{\varvec{c}}_{a1} {\varvec{F}}_{s}^{\mathrm{T}} \varvec{\omega }_{e} +{\varvec{c}}_{a1} {\varvec{P}}_{11}^{-1} ({\varvec{s}}^{\mathrm{T}}{\varvec{HF}}_{s} {\varvec{K}})^{\mathrm{T}}+({\varvec{c}}_{a2} -{\varvec{K}})\hat{\varvec{\eta }} \\ +{\varvec{CF}}_{s}^{\mathrm{T}} \varvec{\omega }_{e} -{\varvec{F}}_{s}^{\mathrm{T}} \dot{{{\varvec{\omega }}}}_{r} +{\varvec{P}}_{22}^{-1} \left[ {{\varvec{s}}^{\mathrm{T}}{\varvec{H}}({\varvec{F}}_{s} {\varvec{C}}-\varvec{\omega }^{\times }{\varvec{F}}_{s} )} \right] ^{\mathrm{T}}-{\varvec{V}}_{a} {\varvec{s}}_{a} +{\varvec{R}}_{a}^{-1} {\varvec{K}}_{2} \varvec{\varepsilon }_{a} \\ \end{array}} \right\} \end{aligned}$$
(27)

where \({{\varvec{K}}}_2 >0\) is a control gain matrix.

3.3 Closed-loop stability analysis

The stability of the entire closed-loop system under the action of the proposed control strategies is analyzed. First, we present an additional lemma.

Lemma 3

[45]: For any \(\mu >0\) and for any \(x\in {\mathbf {R}}\), the following inequality holds

$$\begin{aligned} 0\le |x|-x\tanh \frac{x}{\mu }\le \kappa \mu , \end{aligned}$$
(28)

where \(\kappa \) is a constant which satisfies \(\kappa =\exp (-\kappa -1)\), i.e., \(\kappa =0.2758\).

When summarizing the results in Sects. 3.1 and 3.2, a theorem can be proposed as follows:

Theorem 1

Consider the flexible spacecraft attitude system described by Eqs. (7) and (8) under the Assumptions 14 with the modal observer (16) to estimate the modal variables, which are transformed into the error systems (15) and (26) by the error transformations (11) and (24). If the attitude controller, the active vibration controller, and the adaptive law are designed as Eqs. (17), (27), and (18), while the gain parameters \({{\varvec{K}}}_1 \), \({{\varvec{K}}}_2 \), \({{\varvec{P}}}\), \(c_{a1j} \), \(c_{a2j} \), \(\alpha \), \(\beta \), \(\mu \) are chosen to satisfy certain conditions, then the corresponding error variables in the closed-loop system are bounded, and \(\sigma _{ei} \) and \(\eta _i \) will obtain prescribed convergence performances, respectively.

Proof

Choose a Lyapunov candidate which is made up of four components as

$$\begin{aligned} V=V_1 +V_2 +V_3 +V_4, \end{aligned}$$
(29)

where

$$\begin{aligned} V_1= & {} \frac{1}{2}{{\varvec{s}}}^{\mathrm{T}}{{\varvec{R}}}^{-1}{{\varvec{s}}} \\ V_2= & {} \frac{1}{2}\left[ {{\begin{array}{ll} {{\varvec{\eta }}_e^{\mathrm{T}} }&{} {{\varvec{\psi }}_e^{\mathrm{T}} } \\ \end{array} }} \right] {{\varvec{P}}}\left[ {{\begin{array}{l} {{\varvec{\eta }}_e } \\ {{\varvec{\psi }}_e } \\ \end{array} }} \right] \\ V_3= & {} \frac{1}{2}{\varvec{\varepsilon }}_a^{\mathrm{T}} {\varvec{\varepsilon }}_a \\ V_4= & {} \frac{1}{2}\alpha {\tilde{d}}^{2} \end{aligned}$$

with \({\varvec{\psi }}_e ={\varvec{\psi }} -\hat{{{\varvec{\psi }}}}\) and \({\tilde{d}}=d-\hat{{d}}\). Taking the time derivatives of \(V_1 \), \(V_2 \), \(V_3 \), and \(V_4 \) along the trajectories of the systems (15), (8), and (26) while substituting the controller (17), the modal observer (16), the active controller (27), and the adaptive law (18) into them, respectively, one has

$$\begin{aligned} {\dot{V}}_1= & {} {{\varvec{s}}}^{\mathrm{T}}{{\varvec{R}}}^{-1}{\dot{{{\varvec{s}}}}}+\frac{1}{2}{{\varvec{s}}}^{\mathrm{T}}{\dot{{{\varvec{R}}}}}_{-1} {{\varvec{s}}} \nonumber \\= & {} {{\varvec{s}}}^{\mathrm{T}}\left[ {{\varvec{HF}}}_s ({{\varvec{K}}}{\varvec{\eta }}_e +{{\varvec{C}}}{{\varvec{\psi }}}_e )-{{\varvec{H}}}{\varvec{\omega }}^{\times }{{\varvec{F}}}_{{\varvec{s}}} {\varvec{\psi }}_e\right. \nonumber \\&\left. +\,{{\varvec{D}}}-\hat{{\bar{{d}}}}\mathbf{tanh }\left( {\frac{{{\varvec{s}}}}{\mu }} \right) -{{\varvec{K}}}_1{{\varvec{s}}} \right] +\frac{1}{2}{{\varvec{s}}}^{\mathrm{T}}{\dot{{{\varvec{R}}}}}_{-1} {{\varvec{s}}} \nonumber \\= & {} -\,{{\varvec{s}}}^{\mathrm{T}}{{\varvec{K}}}_1 {{\varvec{s}}}+\frac{1}{2}{{\varvec{s}}}^{\mathrm{T}}{\dot{{{\varvec{R}}}}}_{-1} {{\varvec{s}}}+{{\varvec{s}}}^{\mathrm{T}}[{\begin{array}{ll} {{{\varvec{HF}}}_s {{\varvec{K}}}}&{} {{{\varvec{H}}}({{\varvec{F}}}_s {{\varvec{C}}-}{\varvec{\omega }}^{\times }{{\varvec{F}}}_s )} \\ \end{array} }] \nonumber \\&\left[ {{\begin{array}{l} {{\varvec{\eta }}_e } \\ {{{\varvec{\psi }}}_e } \\ \end{array} }} \right] +{{\varvec{s}}}^{\mathrm{T}}\left[ {{{\varvec{D}}}-\hat{{\bar{{d}}}}\mathbf{tanh }\left( {\frac{{{\varvec{s}}}}{\mu }} \right) } \right] , \end{aligned}$$
(30)

where the symbol \({{\varvec{R}}}_{-1}\) denotes \({{\varvec{R}}}^{-1}\).

$$\begin{aligned} \dot{{V}}_{2}= & {} \left[ {{\begin{array}{ll} {\varvec{\eta }_{e}^{\mathrm{T}} } &{} {\varvec{\psi }_{e}^{\mathrm{T}} } \\ \end{array} }} \right] {{\varvec{P}}}\left[ {{\begin{array}{l} \dot{{{\varvec{\eta }}}}_{e} \\ \dot{{{\varvec{\psi }}}}_{e} \\ \end{array} }} \right] \nonumber \\= & {} \left[ {{\begin{array}{ll} {\varvec{\eta }_{e}^{\mathrm{T}} } &{} {\varvec{\psi }_{e}^{\mathrm{T}} } \\ \end{array} }} \right] {{\varvec{P}}} \nonumber \\&\,\left\{ {{{\varvec{A}}}\left[ {{\begin{array}{l} {\varvec{\eta }_{e} } \\ {\varvec{\psi }_{e} } \\ \end{array} }} \right] +{{\varvec{P}}}^{-1}\left[ {{\begin{array}{l} {\left( {{{\varvec{s}}}^{\mathrm{T}}{{\varvec{HF}}}_{s} {{\varvec{K}}}} \right) ^{\mathrm{T}}} \\ {\left( {{{\varvec{s}}}^{\mathrm{T}}{{\varvec{H}}}({{\varvec{F}}}_{s} {{\varvec{C}}}-\varvec{\omega }^{\times }{{\varvec{F}}}_{s})} \right) ^{\mathrm{T}}} \\ \end{array} }} \right] } \right\} \nonumber \\= & {} \left[ {{\begin{array}{ll} {\varvec{\eta }_{e}^{\mathrm{T}} } &{} {\varvec{\psi }_{e}^{\mathrm{T}} } \\ \end{array} }} \right] {{\varvec{PA}}}\left[ {{\begin{array}{l} {\varvec{\eta }_{e} } \\ {\varvec{\psi }_{e} } \\ \end{array} }} \right] \nonumber \\&+\,\left[ {{\begin{array}{ll} {\varvec{\eta }_{e}^{\mathrm{T}} } &{} {\varvec{\psi }_{e}^{\mathrm{T}} } \\ \end{array} }} \right] \left[ {{\begin{array}{l} {\left( {{{\varvec{HF}}}_{s} {{\varvec{K}}}} \right) ^{\mathrm{T}}} \\ {\left( {{{\varvec{H}}}({{\varvec{F}}}_{s} {{\varvec{C}}}-\varvec{\omega }^{\times }{{\varvec{F}}}_{s} )} \right) ^{\mathrm{T}}}\\ \end{array} }} \right] {{\varvec{s}}} \end{aligned}$$
(31)
$$\begin{aligned} \dot{{V}}_{3}= & {} {\varvec{\varepsilon }}_{a}^{\mathrm{T}} \dot{{{\varvec{\varepsilon }}}}_{a} \nonumber \\= & {} {\varvec{\varepsilon }}_{a}^{\mathrm{T}} {\varvec{R}}_{a} \left\{ {\begin{array}{l} ({\varvec{c}}_{a1} -{\varvec{C}})\hat{{{\varvec{\psi }}}}-{\varvec{c}}_{a1} {\varvec{F}}_{s}^{\mathrm{T}} {\varvec{\omega }}_{e} +{\varvec{c}}_{a1} {\varvec{P}}_{11}^{-1} ({\varvec{s}}^{\mathrm{T}}{\varvec{HF}}_{s} {\varvec{K}})^{\mathrm{T}}+({\varvec{c}}_{a2} -{\varvec{K}})\hat{{{\varvec{\eta }}}} \\ +{\varvec{CF}}_{s}^{\mathrm{T}} {\varvec{\omega }}_{e} -{\varvec{F}}_{s}^{\mathrm{T}} \dot{{{\varvec{\omega }}}}_{r} +{\varvec{P}}_{22}^{-1} \left[ {{\varvec{s}}^{\mathrm{T}}{\varvec{H}}({\varvec{F}}_{s} {\varvec{C}}-{\varvec{\omega }}^{\times }{\varvec{F}}_{s} )} \right] ^{\mathrm{T}}-{\varvec{F}}_{a} {\varvec{u}}_{p} -{\varvec{V}}_{a} {\varvec{s}}_{a} \\ \end{array}} \right\} \nonumber \\= & {} -\,{\varvec{\varepsilon }}_{a}^{\mathrm{T}} {\varvec{K}}_{2} {\varvec{\varepsilon }}_{a} \end{aligned}$$
(32)
$$\begin{aligned} \dot{{V}}_{4}= & {} -\,\alpha \tilde{{d}}\dot{{\hat{{\bar{{d}}}}}} \nonumber \\= & {} -\,\tilde{{d}}{{\varvec{s}}}^{\mathrm{T}}\mathbf{tanh }\left( {\frac{{{\varvec{s}}}}{\mu }} \right) +\beta \tilde{{d}}\hat{{\bar{{d}}}}. \end{aligned}$$
(33)

Further, we combine Eqs. (30)–(33) and substitute them into the derivative of the Lyapunov function V

$$\begin{aligned} {\dot{V}}= & {} {\dot{V}}_1 +{\dot{V}}_2 +{\dot{V}}_3 +{\dot{V}}_4 \nonumber \\= & {} -\,{\varvec{s}}^{\mathrm{T}}{\varvec{K}}_{1} {\varvec{s}}+\frac{1}{2}{\varvec{s}}^{\mathrm{T}}\dot{{{{\varvec{R}}}}}_{-1} {\varvec{s}}+\left[ {{\begin{array}{ll} {{\varvec{\eta }}_{e}^{\mathrm{T}} } &{} {{\varvec{\psi }}_{e}^{\mathrm{T}} } \\ \end{array} }} \right] {\varvec{PA}}\left[ {{\begin{array}{l} {{\varvec{\eta }}_{e} } \\ {{\varvec{\psi }}_{e} } \\ \end{array} }} \right] \nonumber \\&-\,{\varvec{\varepsilon }}_{a}^{\mathrm{T}} {\varvec{K}}_{2} {\varvec{\varepsilon }}_{a} +{\varvec{s}}^{\mathrm{T}}{\varvec{D}}-\bar{{d}}{\varvec{s}}^{\mathrm{T}}(\mathbf{tanh })\left( {\frac{{\varvec{s}}}{\mu }} \right) +\beta \tilde{{d}}\hat{{\bar{{d}}}}.\nonumber \\ \end{aligned}$$
(34)

Utilizing Lemma 3 yields

$$\begin{aligned} {{\varvec{s}}}^{\mathrm{T}}{{\varvec{D}}}-\bar{{d}}{{\varvec{s}}}^{\mathrm{T}}\mathbf{tanh }\left( {\frac{{{\varvec{s}}}}{\mu }} \right)\le & {} ||{{\varvec{s}}}||\cdot ||{{\varvec{D}}}||-\bar{{d}}{{\varvec{s}}}^{\mathrm{T}}\mathbf{tanh }\left( {\frac{{{\varvec{s}}}}{\mu }} \right) \nonumber \\\le & {} \bar{{d}}||{{\varvec{s}}}||_1 -\bar{{d}}{{\varvec{s}}}^{\mathrm{T}}\mathbf{tanh }\left( {\frac{{{\varvec{s}}}}{\mu }} \right) \nonumber \\= & {} \bar{{d}}\mathop {\sum }\limits _{i=1}^3 {\left( {|s_i |-s_i \tanh \frac{s_i }{\mu }}\right) } \nonumber \\\le & {} 3\bar{{d}}\kappa \mu . \end{aligned}$$
(35)

Moreover, according to the Young inequality, we have

$$\begin{aligned} \beta {\tilde{d}}\hat{{\bar{{d}}}}= & {} \beta {\tilde{d}}\bar{{d}}-\beta {\tilde{d}}^{2} \nonumber \\\le & {} \beta \left( {\frac{1}{2}{\tilde{d}}^{2}+\frac{1}{2}\bar{{d}}^{2}} \right) -\beta {\tilde{d}}^{2} \nonumber \\= & {} -\,\frac{1}{2}\beta {\tilde{d}}^{2}+\frac{1}{2}\beta \bar{{d}}^{2}. \end{aligned}$$
(36)

Therefore, when substituting Eqs. (35) and (36) into Eq. (34), it follows that

$$\begin{aligned} {\dot{V}}\le & {} -\,{{\varvec{s}}}^{\mathrm{T}}{{\varvec{K}}}_1 {{\varvec{s}}}+\frac{1}{2}{{\varvec{s}}}^{\mathrm{T}}{\dot{{{\varvec{R}}}}}_{-1} {{\varvec{s}}}+\left[ {{\begin{array}{lll} {{\varvec{\eta }}_e^{\mathrm{T}} }&{} {{\varvec{\psi }}_e^{\mathrm{T}} } \\ \end{array} }} \right] {{\varvec{PA}}}\left[ {{\begin{array}{l} {{\varvec{\eta }}_e } \\ {{\varvec{\psi }}_e } \\ \end{array} }} \right] \nonumber \\&-\,{\varvec{\varepsilon }}_a^{\mathrm{T}} {{\varvec{K}}}_2 {\varvec{\varepsilon }}_a -\frac{1}{2}\beta {\tilde{d}}^{2}+3\bar{{d}}\kappa \mu +\frac{1}{2}\beta \bar{{d}}^{2}\nonumber \\\le & {} -\,\tau _1 {{\varvec{s}}}^{\mathrm{T}}{{\varvec{s}}}-\tau _2 \left[ {{\begin{array}{ll} {{\varvec{\eta }}_e^{\mathrm{T}} }&{} {{\varvec{\psi }}_e^{\mathrm{T}}} \\ \end{array} }} \right] \left[ {{\begin{array}{l} {{\varvec{\eta }}_e } \\ {{\varvec{\psi }}_e } \\ \end{array} }} \right] -\tau _3 {\varvec{\varepsilon }}_a^{\mathrm{T}} {\varvec{\varepsilon }}_a \nonumber \\&-\tau _4 {\tilde{d}}^{2}+\gamma , \end{aligned}$$
(37)

where \(\gamma =3\bar{{d}}\kappa \mu +0.5\beta \bar{{d}}^{2}>0\). If we choose appropriate control gains \({{\varvec{K}}}_1 \), \({{\varvec{P}}}\), \({{\varvec{K}}}_2 \), \(\beta \), and \(\mu \), such that the following conditions are fulfilled

$$\begin{aligned} \tau _1= & {} \lambda _{\min } ({{\varvec{K}}}_1 )-\lambda _{\max }^+ ({\dot{{{\varvec{R}}}}}_{-1} )>0 \nonumber \\ \tau _2= & {} \lambda _{\min } (-{{\varvec{PA}}})>0 \nonumber \\ \tau _3= & {} \lambda _{\min } ({{\varvec{K}}}_2 )>0 \nonumber \\ \tau _4= & {} \frac{1}{2}\beta >0, \end{aligned}$$
(38)
Fig. 1
figure 1

Schematic of the proposed control system

then the transformed errors \({{\varvec{s}}}\) and \({\varvec{\varepsilon }}_a \), the modal observation errors \({\varvec{\eta }}_e \) and \({\varvec{\psi }}_e \), and the disturbance estimation error \({\tilde{d}}\) are bounded, while, respectively, converging to the sets

$$\begin{aligned} {\mathbf{N }}_1= & {} \left\{ {{{\varvec{s}}}\in \mathbf{R }^{3}:\;\;\left\| {{\varvec{s}}} \right\| \le \sqrt{\gamma /\tau _1 }} \right\} \nonumber \\ {\mathbf{N }}_2= & {} \left\{ {\left[ {{\begin{array}{ll} {{\varvec{\eta }}_e^{\mathrm{T}} }&{} {{\varvec{\psi }}_e^{\mathrm{T}} } \\ \end{array} }} \right] ^{\mathrm{T}}\in \mathbf{R }^{2n}:\;\;\left\| {\left[ {{\begin{array}{ll} {{\varvec{\eta }}_e^{\mathrm{T}} }&{} {{\varvec{\psi }}_e^{\mathrm{T}} } \\ \end{array} }} \right] ^{\mathrm{T}}} \right\| \le \sqrt{\gamma /\tau _2 }} \right\} \nonumber \\ {\mathbf{N }}_3= & {} \left\{ {{\varvec{\varepsilon }}_a \in \mathbf{R }^{n}:\;\;\left\| {{\varvec{\varepsilon }}_a } \right\| \le \sqrt{\gamma /\tau _3 }} \right\} \nonumber \\ {\mathbf{N }}_4= & {} \left\{ {{\tilde{d}}\in \mathbf{R }:\;\;\left| {{\tilde{d}}} \right| \le \sqrt{\gamma /\tau _4 }} \right\} . \end{aligned}$$
(39)

From Eq. (12), it can be further derived that \(\varepsilon _i\) is bounded with respect to the set

$$\begin{aligned} {\mathbf{N }}_\varepsilon =\left\{ {\varepsilon _i \in \mathbf{R }:\;\;\left| {\varepsilon _i } \right| \le {\sqrt{\gamma /\tau _1 }}/{c_i }} \right\} . \end{aligned}$$
(40)

Hence, the performance constraint Eq. (9) can hold, which means the error MRPs \({\varvec{\sigma }}_e\) can converge to zero with the prescribed transient and steady-state performance. Meanwhile, Eq. (20) is satisfied. Consider that \({\varvec{\sigma }}_e\), \({\varvec{\omega }}_e\), \({{\varvec{s}}}\), and \({\varvec{\eta }}_e\) are bounded, while Eq. (20) holds. After choosing \(c_{a1j} \) and \(c_{a2j} \) to meet the inequality conditions \(c_{a1j}^2 >4c_{a2j} \) and \(\lambda _{a2j}<\lambda _{a1j} <-k_{aj} \), the modal coordinate \(\eta _j \) will obtain prescribed convergence performance by using Lemma 2. \(\square \)

Finally, the control objective presented in Sect. 2.3 is accomplished.

Remark 2

It should be pointed out that owing to Lemma 2, the boundedness of modal coordinate \(\eta \) is guaranteed indirectly by driving \({\varvec{\varepsilon }}_a\) to be bounded. Thus, in the stability analysis, the Lyapunov function related to the modal system (8), for example,

$$\begin{aligned} V_5 =\frac{1}{2}\left[ {{\begin{array}{ll} {{\varvec{\eta }}^{\mathrm{T}}}&{} {{\varvec{\psi }}^{\mathrm{T}}} \\ \end{array} }} \right] {{\varvec{P}}}_2 \left[ {{\begin{array}{l} {\varvec{\eta }} \\ {\varvec{\psi }} \\ \end{array} }} \right] \end{aligned}$$

has been actually contained in \(V_3 \), such that it can be omitted.

The structure of the attitude and vibration control system with the proposed control approaches is illustrated in Fig. 1.

4 Simulation results

To evaluate the effectiveness of the proposed methods, numerical simulations are performed on a flexible spacecraft model. The main parameters of the inertia and the flexible appendage are given in Table 1. We try to control the first three flexible modes (i.e., \(n=3)\).

Table 1 Simulation parameters
Table 2 Parameters of performance functions of the varying angular velocity tracking case
Table 3 Parameters of the proposed controllers of the varying angular velocity tracking case

Assume that the flexible spacecraft is running in an orbit with the altitude of 500 km such that the total environmental disturbance torque \({{\varvec{d}}}\) (N\(\cdot \)m) is assumed as

$$\begin{aligned} {{\varvec{d}}}=4.5\times 10^{-3}\left[ {{\begin{array}{l} {\cos (\omega _0 t)+1} \\ {\cos (\omega _0 t)+\sin (\omega _0 t)} \\ {\sin (\omega _0 t)+1} \\ \end{array} }} \right] , \end{aligned}$$
(41)

where \(\omega _0 \approx 0.0011\) rad/s represents the orbital angular velocity.

The simulations are carried out in the following four cases.

4.1 Attitude tracking with varying angular velocity

In some missions, the spacecraft is required to track certain targets, such as other spacecraft and the shorelines of the earth. In this section, the attitude control performance is verified by the simulation of tracking a desired time-varying angular velocity \({\varvec{\omega }}_d =[\sin (0.1t),0.5\sin (0.1t),-\,\sin (0.1t)]^{\mathrm{T}}\)\(\circ \)/s. The initial states are given as \({\varvec{\sigma }}_d (0)=[0,0,0]^{\mathrm{T}}\), \({\varvec{\sigma }} (0)=[0.0389,0.0560,-\,0.0389]^{\mathrm{T}}\), and \({\varvec{\omega }} (0)=[0,0,0]^{\mathrm{T}}\)\(\circ \)/s. The parameters of the performance functions (PFs) and the controllers are presented in Tables 2 and 3, respectively. In order to better illustrate the effectiveness of the attitude controller and the active vibration controller, the results with no active control (i.e., \({{\varvec{u}}}_p ={{\varvec{0}}}\)) are simultaneously provided for comparison, which will be denoted as “ac-on” and “ac-off” to distinguish between whether the active control is used or not.

Remark 3

In practical application, the parameters of the performance functions should normally be chosen according to the performance requirements, i.e., the overshoot limit, the minimum convergence rate, and the maximum allowable steady-state error.

The simulation results are shown in Figs. 2, 3, 4, 5, and 6.

Fig. 2
figure 2

Error MRPs \({\varvec{\sigma }}\)\(_{e}\) with or without active control: a\(\sigma _{e1}\), b\(\sigma _{e2}\), and c\(\sigma \)\(_{e3}\)

Fig. 3
figure 3

Control torque u with or without active control: a\(u_{1}\), b\(u_{2}\), and c\(u_{3}\)

Fig. 4
figure 4

Modal coordinate \({\varvec{\eta }}\) with or without active control: a\(\eta _{1}\), b\(\eta _{2}\), and c\(\eta _{3}\)

Fig. 5
figure 5

Attitude Euler angle and angular velocity \(\varvec{\omega }\) of the proposed scheme

Fig. 6
figure 6

Modal estimation errors \({\varvec{\eta }}\)\(_{e}\) and \({\varvec{\psi }}\)\(_{e}\) of the proposed method

Figures 2, 3, and 4 show the comparative results of error MRPs, control torque, and the modal coordinate whether the active vibration controller (27) is introduced or not. It can be seen from Fig. 2 that the error MRPs in both cases are coincidence and can always maintain between the prescribed bounds defined by the performance function with an acceptable dynamic and steady-state response, which means that the proposed attitude controller (17)–(18) is sufficient to obtain the expected attitude tracking performance and has certain robustness to handle the influence of the flexible vibration. From Figs. 3 and 4, we can find that when utilizing the active controller (27), the vibration induced by the attitude motion can be greatly suppressed to a certain small range with a fast attenuation rate and the control torque can be smoothed so that the burden on the actuators of the spacecraft could be moderated. Figures 5 and 6 show the corresponding attitude Euler angle, angular velocity, and modal estimation errors. From Fig. 5, one can have a more intuitive understanding that the attitude tracking mission is well accomplished. As shown in Fig. 6, the modal estimation errors are relatively small and tend to converge, which verifies the effect of the modal observer.

4.2 Attitude tracking with zero angular velocity

In order to execute the mission of earth orientation and observation, the fast and accurate attitude maneuver is needed. This section conducts the simulation with the desired angular velocity \({\varvec{\omega }}_d =[0,0,0]^{\mathrm{T}}\) deg/s, which is equivalent to the case of rest-to-rest maneuver. The spacecraft is supposed to rotate from the initial attitude \({\varvec{\sigma }} (0)=[\hbox {0.1965},\hbox {0.2231},-\,\hbox {0.0773}]^{\mathrm{T}}\) to the desired attitude \({\varvec{\sigma }}_d =[0,0,0]^{\mathrm{T}}\) with the initial angular velocity \({\varvec{\omega }} (0)=[0,0,0]^{\mathrm{T}}\) deg/s. The parameters of the performance functions and the controllers are presented in Tables 4 and 5, respectively.

The simulation results are shown in Figs. 7, 8, 9, 10, 11, and 12.

Figure 7 shows the response of the error MRPs. It can be seen that in this case the error MRP \(\sigma _{ei} \) can also keep between the prescribed performance bounds, and converges smoothly toward the equilibrium point, which means the attitude maneuver is effectively completed with the preassigned performance. Figures 8, 9, and 10 provide the responses of attitude Euler angle, angular velocity, and control toque which clearly illustrate the maneuver process. From Fig. 8, we find that the attitude angle can converge to the accuracy range of \(5\times 10^{-4}\) deg within 60 s. Figures 11 and 12 show the modal coordinates and the modal estimation errors, which demonstrate that the excited vibration can be suppressed effectively, while the modal variables can be estimated accurately.

Table 4 Parameters of performance functions of the zero angular velocity tracking case
Table 5 Parameters of the proposed controllers of the zero angular velocity tracking case

4.3 Attitude control under modal parameter uncertainties

It should be noted that the modal observer is used in the controller design, which highly depends on the accuracy of the modal parameters. This section considers a situation that the modal parameters are measured inaccurately or changed under some certain circumstances. Suppose that there exist ± 10% parameter uncertainties as shown in Table 6. The simulation conditions as well as the parameters of the performance functions and the controllers are exactly the same as in Sect. 4.2.

Fig. 7
figure 7

Error MRPs \({\varvec{\sigma }}\)\(_{e}\) of the zero angular velocity tracking case

Fig. 8
figure 8

Attitude Euler angle of the zero angular velocity tracking case

Fig. 9
figure 9

Angular velocity \({\varvec{\omega }}\) of the zero angular velocity tracking case

Fig. 10
figure 10

Control torque u of the zero angular velocity tracking case

Fig. 11
figure 11

Modal coordinate \({\varvec{\eta }}\) of the zero angular velocity tracking case

Fig. 12
figure 12

Modal estimation errors \({\varvec{\eta }}\)\(_{e}\) and \({\varvec{\psi }}\)\(_{e}\) of the zero angular velocity tracking case

Remark 4

During the simulation, the nominal values in Table 6 which are taken from Table 1 will be used in the designed controller, while the actual values will be adopted in the flexible spacecraft model.

Figures 13, 14, 15, and 16 show the responses of the error MRPs, control torque, modal coordinate, and modal estimation errors under modal parameter uncertainties. Comparing with the results of the zero angular velocity tracking case in Sect. 4.2, we can find out that although the modal estimations become relatively inaccurate owing to the uncertain modal parameters, the error MRPs can still stay between the prescribed performance bounds with a well dynamic process and the modal coordinate remains small with the tendency of convergence. That means the proposed control scheme is robust to deal with a certain degree of modal parameter uncertainties.

Table 6 Modal parameter uncertainties
Fig. 13
figure 13

Error MRPs \({\varvec{\sigma }}\)\(_{e}\) under modal parameter uncertainties

Fig. 14
figure 14

Control torque u under modal parameter uncertainties

Fig. 15
figure 15

Modal coordinate \({\varvec{\eta }}\) under modal parameter uncertainties

Fig. 16
figure 16

Modal estimation errors \({\varvec{\eta }}\)\(_{e}\) and \({\varvec{\psi }}\)\(_{e}\) under modal parameter uncertainties

4.4 Attitude control under measurement noise

For practical engineering application, the attitude sensor noises are considered, which are modeled as zero-mean Gaussian random variables [46]. Thus, one has the measurement equation

$$\begin{aligned} \sigma _{mi} (t)=\sigma _i (t)+N\left( 0,\sigma _p^2 \right) , \end{aligned}$$
(42)

where \(\sigma _{mi} (t)\) represents the measurement from the attitude sensor, \(\sigma _i (t)\) represents the attitude true value, \(N(0,\sigma _p^2 )\) represents a zero-mean Gaussian white noise with the variance \(\sigma _p^2 :0.0001\;(1\sigma )\).

Since there is no filtering process, the parameters of the performance functions are redesigned to accommodate the influence of the noises (see Table 7 where the steady-state constraint \(\rho _{i\infty } \) is relaxed). The simulation conditions and the parameters of the controllers are also taken from Sect. 4.2.

Table 7 Parameters of performance functions of the zero angular velocity tracking case

The simulation results are shown in Figs. 17 and 18. It can be seen that the attitude and vibration control objectives are also achieved with the control accuracy better than \(1.5\times 10^{-5}\), which illustrates the effectiveness of the proposed strategy under measurement noise.

Fig. 17
figure 17

Error MRPs \({\varvec{\sigma }}\)\(_{e}\) under measurement noise

Fig. 18
figure 18

Modal coordinate \({\varvec{\eta }}\) under measurement noise

5 Conclusion

A control scheme which aims at solving both attitude and active vibration control problems has been investigated based on the idea of prescribed performance under the influence of external disturbances. When considering that the modal variables are unmeasured, a modal observer is introduced to acquire the estimated values. Further, by using the estimated modal variables, an attitude controller is designed with an adaptive law to address the upper bound of the disturbances. Moreover, an active vibration controller is constructed to suppress the flexible vibration excited by the attitude motions. The rigorous stability analysis of the whole closed-loop control system is carried out by the Lyapunov theory. Finally, numerical simulations in different cases illustrate that the proposed control method is effective on both attitude control and vibration attenuation and have certain robustness to modal parameter uncertainties. Future works will concern the actuator saturation problem of the attitude control.