Aerospace Science and Technology 12 (2008) 324–330 www.elsevier.com/locate/aescte
Robust controllers design with finite time convergence for rigid spacecraft attitude tracking control Jin Erdong ∗,1 , Sun Zhaowei 2 P.O. Box 3013, Research Center of Satellite Technology, Science Park of Harbin Institute of Technology, Yi Kuang Street, Nan Gang District, Harbin 150080, China Received 7 September 2006; received in revised form 6 May 2007; accepted 25 August 2007 Available online 31 August 2007
Abstract Attitude tracking control problem for rigid spacecraft is investigated in this paper. Two controllers based on unit quaternion attitude parameterization are proposed to solve this problem. Both controllers presented here can guarantee finite time reachability of given desired attitude motion of a rigid spacecraft in the presence of model uncertainties and external disturbances. Ambiguity in quaternion representation exists in the first controller, while it is absent in the second one. The convergences of the proposed controllers for the resulting closed loop systems are proven theoretically. Numerical simulations are also provided to demonstrate the performance of the developed controllers. © 2007 Elsevier Masson SAS. All rights reserved. Keywords: Attitude tracking; Finite time reachability; Robust; Rigid spacecraft
1. Introduction Due to important applications such as formation flying [10] and landmark observation [8], attitude tracking control has been an active research topic for several years. In practical situations, the inertia matrix of the spacecraft cannot be known exactly, and the spacecraft is always subject to external disturbances. Many papers [1–3,7,11] had proposed various approaches for dealing with these problems. The PD control law [11] can achieve asymptotic stability in the presence of model uncertainties. However, its validity is restricted to a special kind of referenced trajectories. In contrast, the adaptive controller [11] can be applied to a larger range. Yet, the implementation of the controller is more complicated due to the existence of an adaptive estimator. To cope with both model uncertainties and external disturbances, sliding mode * Corresponding author. Tel.: +86 451 86413440 8308; fax: +86 451
86416457. E-mail addresses:
[email protected] (E. Jin),
[email protected] (Z. Sun). 1 Jin Erdong is a Doctor Candidate of Harbin Institute of Technology. 2 Sun Zhaowei is a Professor of Aerospace Engineering at Harbin Institute of Technology. 1270-9638/$ – see front matter © 2007 Elsevier Masson SAS. All rights reserved. doi:10.1016/j.ast.2007.08.001
control approach was employed with different attitude representations such as unit quaternion and Rodrigues parameter [2, 9]. In Ref. [2], Lo and Chen handled the attitude tracking problem with non-global Rodrigues parametrization [9]. In a later paper [7], the same authors presented a sliding mode tracking controller with unit quaternion representation. The controller is non-global because the scalar component of the quaternion is assumed to be nonzero all the time. For removing the discontinuous term in the traditional sliding mode control scheme, continuous version of sliding mode control law [1] was designed. The proposed simple controller is possible to achieve global zero error tracking provided that certain conditions can be met. In this research, both model uncertainties and external disturbances are considered for attitude tracking control. The goal is to design suitable controllers which can drive the rotational motion of a rigid body to a given desired trajectory in finite time rather than in the asymptotic sense as time trends to infinity. In the robot control literature [3], a technique based on sliding mode control approach was used for finite time convergent controller design. The basic mind behind this technique is to choose a proper sliding surface such that on it the objective of control is achieved in finite time, and to design a control law which can drive the motion of the system on the sliding surface in fi-
E. Jin, Z. Sun / Aerospace Science and Technology 12 (2008) 324–330
nite time. To the best knowledge of the authors, this technique has not been applied to the attitude control problem. Based on sliding mode control approach and employing quaternion representation, two controllers are proposed to achieve finite time convergence of both attitude and angular velocity tracking errors. The rest of this paper is organized as follows. Preliminaries are given in the following section. In Section 3, two attitude tracking control laws are proposed. Corresponding convergence analyses are also provided in this section. Sections 4 and 5 present numerical simulation results and conclusion respectively. 2. Preliminaries 2.1. Kinematic equation The unit quaternion is adopted to describe the attitude of a rigid spacecraft for global representation without singularities [11]. The unit quaternion q¯ is defined by e sin Φ2 q Φ = q¯ = (1) q 0 cos 2 where e is the Euler axis, Φ is the Euler angle, q and q0 are the vector and scalar components of the unit quaternion respectively. It is subject to the constraint q¯ T q¯ = q T q + q02 = 1
(2)
The kinematic equation in terms of unit quaternion is given by [5]
325
2.3. Relative attitude error kinematics Let q¯e = (qeT q0e )T denotes the relative attitude error from a desired reference frame to the body-fixed reference frame of the rigid spacecraft, then one may have q¯e = q¯ ⊗ q¯d∗ = (qeT q0e )T
(6)
where q¯d is the desired attitude, which is defined as
q¯d∗
denotes the inverse of q¯d
q¯d∗ = (−qdT q0d )T
(7)
where ⊗ is the operator for quaternion multiplication which is defined by [9] q0a qb + q0b qa − qa× qb (8) q¯a ⊗ q¯b = q0a q0b − qaT qb where q¯a and q¯b denote any given two groups of quaternion. The first order derivative of the relative attitude error is given by [9] 1 q˙¯ e = ω¯ e ⊗ q¯e 2 where ω¯ e is written as T ω¯ e = (ωb − Cbd ωd )T 0 = (ωeT 0)T
(9)
(10)
in which Cbd = SO(3) is the rotation matrix from the desired reference frame to the body-fixed reference frame, ωd ∈ R 3 is the angular velocity of the desired reference frame with respect to the inertial reference frame expressed in the desired reference frame. 2.4. Problem statement
1 q˙ = (q0 I + q × )ωb 2 1 q˙0 = − q T ωb 2
(3a) (3b)
where ωb ∈ R 3 is the angular velocity of a body-fixed reference frame of a spacecraft with respect to an inertial reference frame expressed in the body-fixed reference frame, I represents the 3 × 3 identity matrix, q × denotes a skew-symmetric matrix which is given by 0 −q3 q2 × q = q3 (4) 0 −q1 −q2 q1 0 2.2. Dynamic equation
+τ +d
3. Controllers design In this section, two different controllers based on unit quaternion attitude representation are developed to solve the problem that has just been stated. 3.1. Basic algorithm We propose the following controller
The dynamic model of a rigid spacecraft is governed by the following differential equation [5] J ω˙ b = −ωb× J ωb
The attitude tracking control problem in this paper is to design the control torque τ such that {qe ≡ 0, ωe ≡ 0} is reached in finite time in the presence of model uncertainties and external disturbances.
(5)
where J = J T ∈ R 3×3 denotes the inertia tensor of the rigid spacecraft expressed in the body-fixed reference frame, τ ∈ R 3 is the control torque, and d ∈ R 3 represents the external disturbances torque which is bounded as |di | δi , i = 1, 2, 3, where δi is a positive constant.
τi = −υ0i − ρi sgn(si ),
i = 1, 2, 3
(11)
to achieve the control object, where si = ωei + ci sgn(qei )|qei |α ,
i = 1, 2, 3
α ∈ (0, 1), ci is a constant. ρi satisfies ρi υi (qe , ωe , ωd , ω˙ d ) + ρi , i = 1, 2, 3
(12)
(13)
where ρi is a positive constant which satisfies ρi > δi for i = 1, 2, 3, and
326
υ0 =
E. Jin, Z. Sun / Aerospace Science and Technology 12 (2008) 324–330
α J0 diag ci |qei |α−1 (q0e I + qe× )ωe 2 − ωb× J0 ωb + J0 (ωe× Cbd ωd − Cbd ω˙ d )
υ =
α J diag ci |qei |α−1 (q0e I + qe× )ωe 2 − ωb× J ωb + J (ωe× Cbd ωd − Cbd ω˙ d )
Proof of Step 1. Consider the following scalar function (14a)
(14b)
where J0 and J denote the nominal and perturbation part of J respectively. Theorem 1. The controller (11) can solve the attitude tracking problem presented in Section 2.4. Before proving Theorem 1, we present two lemmas which play key roles in the proof. Lemma 1. If a ∈ (0, 1), then the following inequality holds 3 1+a 3 2 |xi |1+a |xi |2 (15) i=1
y + b2
y + b3
(b1 + b2 + b3 )
y
(16)
i=1
bi b1 + b2 + b3
y 1
(17)
For y ∈ (0.5, 1), we have y bi bi , b1 + b2 + b3 b1 + b2 + b3
i=1
bi b1 + b2 + b3
Hence, (15) holds.
= s T (τ + υ0 + υ + d)
(22)
Substituting in the controller (11) yields 3 (ρi − δi )|si | −λs i=1
1 −λ 2/σmax (J )V 2
(23)
min(ρi
where λ = − δi , i = 1, 2, 3). By Lemma 2, si ≡ 0 is reached in finite time.
ωei = −ci sgn(qei )|qei |α V1 = (1 − q0e )2 + qeT qe
i = 1, 2, 3
(18)
3 i=1
bi =1 b1 + b2 + b3
(25)
with its derivative V˙1 = qeT ωe = −
y
(24)
Now, consider the following candidate Lyapunov function
which yields 3
− ωb× J ωb + J (ωe× Cbd ωd − Cbd ω˙ d ) + τ + d
Proof of Step 2. Once on the sliding surface si ≡ 0, we may have
namely 3
V˙ = s T J s˙ T α J diag ci |qei |α−1 (q0e I + qe× )ωe =s 2
V˙ −
i=1
2 Proof. Let 1+a 2 = y, |xi | = bi , then y ∈ (0.5, 1) and bi 0. The case when b1 + b2 + b3 = 0 is trivial. If b1 + b2 + b3 > 0, (15) can be rearranged as y b1
1 (20) V = sT J s 2 which satisfies 1 1 (21) σmin (J )s2 V σmax (J )s2 2 2 where σmax (•) and σmin (•) represent the maximum and minimum eigenvalue of a positive definite matrix respectively, • is used to denote Euclidean norm. Computing the first order derivative of V gives
3
ci |qei |1+α < 0
(26)
i=1
(19)
2 C1
smooth positive defiLemma 2. (See [4].) Suppose Υ is a nite function (defined on U ⊂ R n ) and Υ˙ + λΥ β is a negative semi-definite function on U ⊂ R n for β ∈ (0, 1) and λ ∈ R + , then there exists an area U0 ⊂ R n such that any Υ which starts from U0 ⊂ R n can reach Υ ≡ 0 in finite time. Moreover, if Treach is the time needed to reach Υ ≡ 0, then Treach 1−β γ0 /(λ − λβ), where γ0 is the initial value of γ . Proof of Theorem 1. The proof of the theorem includes the following two consecutive main steps: Step 1: si ≡ 0 is achieved in finite time. Step 2: Once on the sliding surface si ≡ 0, the tracking error {qe ≡ 0, ωe ≡ 0} is achieved in finite time.
Hence qe → 0 as t → ∞, then q0e → +1 or q0e → −1. Note that {q0e = −1} is not a stable equilibrium as shown below. Consider the following scalar function V2 = (1 + q0e )2 + qeT qe
(27)
Calculating the derivative of V2 yields V˙2 = −qeT ωe =
3
ci |qei |1+α
(28)
i=1
By the instability theorem [6], the equilibrium {qe = 0, q0e = −1} is not stable. As q0e → 1, there exists some finite time T such that for all t T , q0e 0 and [11] (1 − q0e )2 (1 − q0e )(1 + q0e ) = qeT qe
(29)
Therefore, V1 can be bounded as in V1 2qeT qe
(30)
E. Jin, Z. Sun / Aerospace Science and Technology 12 (2008) 324–330
By Lemma 1 and inequality (30), we may have 1+a 1+a 3 1 2 1+α ci |qei | −c V1 2 V˙1 = − 2
327
Proof of Step 2. Consider the following candidate Lyapunov function (31)
i=1
V1 = qeT qe
(36)
where c = min(ci , i = 1, 2, 3). By Lemma 2, qe ≡ 0 and ωe ≡ 0 is reached in finite time. 2
Calculate the derivative of above function, we may have
Combining Step 1 and Step 2 completes the proof of Theorem 1. 2
On the surface si ≡ 0
Remark 1. From the preceding proof, we know that the controller (11) is a finite time convergent algorithm for the resulting closed loop system. However, the upper bound of the time needed to reach the desired motion cannot be determined because the time T (in the proof of Step 2) is not known. 3.2. A modified controller Since −q¯e and q¯e represent the same rotation, ambiguity exists in quaternion representation. Such a problem can be resolved by enforcing the relative kinematic equation (9), but the resulting computational cost becomes quite high [11]. To make the controller implemented more efficiently, we propose the following modified one τi = −ζ0i − γi sgn(si ),
i = 1, 2, 3
= ωei + ci sgn(q0e qei )|q0e qei | ,
and γi satisfies γi ζi (qe , ωe , ωd , ω˙ d ) + γi ,
i = 1, 2, 3
(33)
i = 1, 2, 3
(34)
where γi is a positive constant which satisfies γi > δi , and α ζ0 = J0 diag ci |q0e qei |α−1 2 × q0e (q0e I + qe× )ωe − qe qeT ωe − ωb× J0 ωb + J0 (ωe× Cbd ωd − Cbd ω˙ d )
(35a)
α J diag ci |q0e qei |α−1 2 × q0e (q0e I + qe× )ωe − qe qeT ωe − ωb× J ωb + J (ωe× Cbd ωd − Cbd ω˙ d )
(35b)
Theorem 2. The controller (32) can solve the attitude tracking problem stated in Section 2.4. The proof of Theorem 2 also consists of two main steps which are similar to the proof of Theorem 1. They are listed as follows: Step 1: si ≡ 0 is achieved in finite time. Step 2: Once on the sliding surface si = 0, {qe ≡ 0, ωe ≡ 0} is achieved in finite time. The proof of Step 1 can be readily accomplished by following the line in the proof of Step 1 in Theorem 1, and thus omitted. We just prove Step 2.
(37)
(38)
then we get V˙1 = (q0e qe )T ωe = −
3
ci |q0e qei |1+α
(39)
i=1
By a proof procedure similar to Step 2 in Theorem 1, it is easy to know that q0e qe arrives at zero in finite time. It implies that qe ≡ 0 or q0e ≡ 0 is reached in finite time, with the former is the desired equilibrium. Now we show that q0e ≡ 0 is an instable equilibrium. Consider the following scalar function 2 V2 = q0e
(40)
with its first order derivative V˙2 = −(q0e qe )T ωe =
α
ζ =
ωei = −ci sgn(q0e qei )|q0e qei |α
(32)
where si
V˙1 = qeT (q0e I + qe× )ωe = (q0e qe )T ωe
3
ci |q0e qei |1+α
(41)
i=1
Following the instability theorem [6], q0e ≡ 0 is an instable equilibrium. Hence, qe ≡ 0 is the unique stable one, which means the desired motion {qe ≡ 0, ωe ≡ 0} is achieved in finite time. 2 Remark 2. In comparison with the controller (11), the realization of the controller (32) is more effective in the case that the acquired attitude is in the form of rotation matrix, because the error qe in the controller (11) is replaced by q0e qe which can be directly calculated from the rotation matrix [11]. Remark 3. In order to avoid the chattering phenomenon due to the imperfect implementation of the first sign function in the controllers (11) and (32), the saturation function [2] 1 x>ε sat(x) = x (42) |x| ε −1 x < −ε is a simple choice to replace the discontinuous function, where ε is a small positive constant. Remark 4. Following Lemma 2, the upper bound of the time needed to reach the sliding surface s ≡ 0 can be determined by √ 1 2σmax (J ) Treach V (0) 2 (43) λ Analogous result can be obtained for the controller (32).
328
E. Jin, Z. Sun / Aerospace Science and Technology 12 (2008) 324–330
4. Simulation results In this section, simulations for the controllers (11) and (32) with the saturation function (42) are presented. In practice, the inertia matrix J cannot be known exactly, only a nominal one J0 is available. The real inertia matrix J is assumed to be ⎛ ⎞ 22.7 0 0 23.3 0 ⎠ kg m2 J =⎝ 0 0 0 24.5 and it is assumed that J = diag( Ji ),
i = 1, 2, 3
where | Ji | 3 = 1, 2, 3. The nominal inertia matrix J0 is chosen as ⎛ ⎞ 20 0 0 J0 = ⎝ 0 21 0 ⎠ kg m2 0 0 22 kg m2 , i
Case 2 √ q(0) ¯ = 0.3 0.4 1/ 2
0.5
T
ωb (0) = (−0.22 0.24 0.16)T rad/s d = (0.06 0.03 0.05)T sin(2t) N m Case 3 q(0) ¯ = (0.1 0.5 ωb (0) = (0.33
0.7 0.5)T
0.24
− 0.42)T rad/s
d = (−0.3 0.4 0.6)T sin(5t) N m The parameters α and ci of the controllers (11) and (32) are chosen as α = 0.66 and ci = 0.1. ρ is given by
The desired tracking trajectory is of the form [1] ⎛ ⎞ 0.1 cos(t/40) ωd = ⎝ −0.1 sin(t/50) ⎠ rad/s −0.1 cos(t/60) with the initial attitude √ T q¯d (0) = 0.3 0.1 0 3/ 10 Three cases of initial conditions and disturbances are considered in the simulations, which are given as follows: Case 1 √ q(0) ¯ = 1/ 3
0
ωb (0) = (0.12
− 0.15 0.11)T rad/s
d = (0.004
√ √ T 1/ 3 1/ 3
− 0.003 0.007)T sin(0.5t) N m Fig. 2. Attitude tracking errors: controller 2.
Fig. 1. Attitude tracking errors: controller 1.
Fig. 3. Sliding variables: controller 1 and controller 2.
E. Jin, Z. Sun / Aerospace Science and Technology 12 (2008) 324–330
Fig. 4. Control torques: controller 1 and controller 2.
329
Fig. 6. Attitude tracking errors: controller 2.
Fig. 5. Attitude tracking errors: controller 1.
3 ρ = α diag ci |qei |α−1 (q0e I + qe× )ωe 2 + f (ωb ) + 3|ωe× Cbd ωd − Cbd ω˙ d | + ρ with ρi = 0.3 for Case 1, ρi = 0.6 for Case 2 and ρi = 0.9 for Case 3, where T f (ωb ) = 6 |ωb2 ωb3 | |ωb1 ωb3 | |ωb1 ωb2 | γ is chosen as 3 γ = α diag ci |q0e qei |α−1 q0e (q0e I + qe× )ωe − qe qeT ωe 2 + f (ωb ) + 3|ωe× Cbd ωd − Cbd ω˙ d | + γ with γ = ρ . Simulation results are presented in Figs. 1–4. Figs. 1–2 show the transient behavior of attitude tracking errors of the controller 1 and controller 2 in different initial conditions and
Fig. 7. Control torques: controller 1 and controller 2.
disturbances, in which we can see that high attitude tracking accuracy is achieved. The responses of the sliding variables s and s for both controllers are plotted in Fig. 3, where rapid convergence rates are illustrated. The control torques applied on the spacecraft are given in Fig. 4. In the previous simulations, there is no restriction on the control torque. Now, we bound the magnitude of the torque as |τi | 1.5 while the rate of the control torque is bounded in three situations: |τ˙i | 5, |τ˙i | 3 and |τ˙i | 1. For simplicity, we take Case 3 which has the worst initial conditions and disturbances as the simulation example to observe how the control performance will be degraded. Simulation results are given in Figs. 5–7. It can be seen in Figs. 5–6 that the attitude tracking performance of the controller 1 and controller 2 is degraded gradually as the rate of
330
E. Jin, Z. Sun / Aerospace Science and Technology 12 (2008) 324–330
the control torques drops. Fig. 7 shows the response of the control variables in the three constrained situations.
[2] Y.-P. Chen, S.-C. Lo, Sliding-mode controller design for spacecraft attitude tracking maneuvers, IEEE Transactions on Aerospace and Electronic Systems 29 (4) (1993) 1328–1333.
5. Conclusion
[3] L.T. Gruyitch, A. Kokosy, Robot control for robust stability with finite reachability time in the whole, Journal of Robotic Systems 16 (5) (1999) 263–283.
In this study, two novel robust controllers are proposed for spacecraft attitude tracking control in the presence of model uncertainties and external disturbances. Both of the proposed controllers can drive the rotational motion of a rigid spacecraft to its desired trajectory in finite time rather than in the asymptotic sense. The second controller is free of the ambiguity problem in quaternion representation which exists in the first one. Numerical simulations are included to support the analyses of the presented controllers. The results demonstrate that the presented controllers have fine tracking performance. Acknowledgements The authors would like to thank Jiang Xiaolei for his help in mathematics and English writing. References [1] J.D. Boskovic, S.-M. Li, R.K. Mehra, Robust tracking design for spacecraft under control input saturation, Journal of Guidance, Control, and Dynamics 27 (4) (2004) 627–633.
[4] Y.-G. Hong, D.-Z. Chen, Nonlinear System Analysis and Control, Science Press, Beijing, 2005 (in Chinese). [5] P.C. Hughes, Spacecraft Attitude Dynamics, John Wiley & Sons, New York, 1986. [6] H.K. Khalil, Nonlinear Systems, third ed., Prentice Hall, New York, 2001. [7] S.-C. Lo, Y.-P. Chen, Smooth sliding-mode control for spacecraft attitude tracking maneuvers, Journal of Guidance, Control, and Dynamics 18 (6) (1995) 1345–1349. [8] H. Schaub, R.D. Robinett, J.L. Junkins, Globally stable feedback laws for near-minimum-fuel and near-minimum-time pointing maneuvers for a landmark-tracking spacecraft, The Journal of the Astronautical Sciences 44 (4) (1996) 443–466. [9] M.D. Shuster, A survey of attitude representations, The Journal of the Astronautical Sciences 41 (4) (1993) 439–517. [10] P.K.C. Wang, F.Y. Hadaegh, Coordination and control of multiple microspacecraft moving in formation, The Journal of the Astronautical Sciences 44 (3) (1996) 315–355. [11] J.T.-Y. Wen, K. Kreutz-Delgado, The attitude control problem, IEEE Transactions on Automatic Control 36 (10) (1991) 1148–1162.