Attitude tracking control for observation spacecraft ﬂying around the target spacecraft

This paper addresses the attitude tracking problem of observation spacecraft, which is traveling around the target spacecraft. To observe the target spacecraft completely, view planning technology is used to select the optimal viewpoints where the observation spacecraft need to achieve and scans the target spacecraft. The desired attitude and desired angular velocity are determined by the relative location and relative velocity of the observation spacecraft with respect to the target spacecraft. The attitude tracking model are globally and uniquely described in the space of SO(3) × R 3 . Based on the sliding mode method, a nonlinear feedback controller is designed to track the desired attitude and desired angular velocity. The convergence and stability of the closed-loop system are assured by Morse-Lyapunov theorem and LaSalle’s theorem. Moreover, it is proved that the attitude error and angular velocity error converge to a tolerable error interval regardless of actuator misalignment, uncertainties of the inertia matrix and external disturbed torque. In addition, the convergence interval is determined by the parameter setting in the controller. Finally, numerical simulations are presented to illustrate the effectiveness of the proposed controller.


INTRODUCTION
The on-orbit servicing technology has been widely studied such as visual inspection, debris removal and refueling [1]. The relative movement between two spacecrafts is a fundamental problem for the on-orbit servicing consisting of relative trajectory movement and relative attitude movement. Specially for the observation task, the camera fixed on the observation spacecraft need to be oriented towards the target spacecraft all time, which means that the desired attitude of the observation spacecraft is determined by the relative location of the two spacecrafts. In this paper, pulse manoeuver is used to control relative trajectory and then the main issue is to keep the actual attitude tracking the desired attitude all time.
The set of attitudes is the set of 3 × 3 orthogonal matrices ' the space SO(3) which is not Euclidean [2]- [4]. Various attitude parameterisations are developed to describe the attitude such as Euler angles [5], quaternions [6], axis-angle [7], Rodrigues parameters [8], modified Rodrigues parameters [9]. However, all parameterisations fail to represent the set of attitudes both  [10]. For Euler angles, there are multiple sets of Euler angles corresponding to the same attitude, and not all angular velocity can be represented by the time derivatives of the Euler angles at these certain attitudes. For quaternions, a pair of antipodal unit quaternions represent the same attitude, and it may cause unstable unwinding which causes unnecessary energy consumption. Specially, the initial state of the system is close to the desired equilibrium. However, the trajectory go away from the desired equilibrium and travel a large distance before returning to the desired attitude. Consequently, the results obtained based on the parameterisations need to be checked in the rotation matrices space SO (3). In this paper, rotation matrices are used to describe the attitudes globally and uniquely.
Attitude control system is a nonlinear, multi-input and multi-output system and the system may suffer from the parameter uncertainties and external disturbances. For this challenging problem, many methods are developed to address the attitude control system such as sliding mode control (SMC) [11], adaptive control [12], robust H ∞ control [13], model predictive control [14], intelligent control [15] etc. Thereinto, sliding mode control has been widely applied because of its computational simplicity, fast response and strong robustness [16]. Sliding mode control is a special non-linear type of control which is characterised by the high-speed switch function in the sliding mode controller. The control is not fixed and dependent on the current state with respect to the predefined "sliding mode surface", which forces the system to move towards the sliding mode surface. In the sliding mode surface, the system is guaranteed by a lower order subsystem which enables the invariance of the system on system parameter variation and external disturbance. However, it's impossible to keep the state of the system in the predefined sliding mode surface. Instead, the state trajectory will moves through both sides of the sliding mode surface and induces sharp chattering. It's important to decrease the chattering considering the actual actuators. A lot of anti-chattering technology are proposed such as filtering, eliminating disturbance and uncertainty, switching gain lowering etc. Recently, the full-order SMC (FOSMC) method is proposed where the real inputs is obtained by integrating the virtual discontinuous terms and thus the real inputs is continuous [17].
Generally, the convergence and stability of sliding mode controller can be proved by the Lyapunov function, provided that the parameterisations are used to represent the attitude. However, the set of rotation matrix is special orthogonal space SO(3) which is not Euclidean, and it causes a lot of trouble to solve the equilibria and prove the convergence and stability of these equilibria in non-Euclidean space. Significantly, the Morse-Lyapunov function theorem provides preliminary conclusions for the proof in non-Euclidean space together with LaSalle theorem [18]. Furthermore, the linearised method is used to transform the system from non-Euclidean space to Euclidean space, minimising the complexity of demonstrating the stability of the equilibria. This paper is organised as follows. In Section 2, the view planning technology is introduced to select the optimal viewpoints. Based on pulse manoeuvers, the optimal trajectory is planned by pseudospectral method. The desired attitude and desired angular velocity are established according to the relative location and relative velocity of the observation spacecraft with respect to the target spacecraft. In Section 3, the attitude tracking model for observation spacecraft is established based on the rotation matrices. In Section 4, a sliding mode control law is designed, the convergence and stability are proved through Morse-Lyapunov functions. In Section 5, the simulation is carried to show the effectiveness of the proposed scheme.
Notation: Let ‖ ⋅ ‖ denote L 2 norm of a vector or a matrix norm induced by the corresponding L 2 vector norm. Let v × denote a skew symmetric mapping from the Euclidean space R 3 to the Lie algebra so (3)

PROBLEM FORMULATION
The target spacecraft is scanned from some different viewpoints by the 3D laser radar fixed on the observation spacecraft, and the viewpoints are selected by the view planning technology. In order to scan the target spacecraft stably, the 3D laser radar fixed on the observation spacecraft need to be oriented towards the target spacecraft. It's to say that the desired attitude and desired angular velocity are determined by the relative location and relative velocity of the observation spacecraft with respect to the target spacecraft. In this section, the scheme of scanning is introduced and the pseudospectral methods are used to calculate the optimal trajectory with a minimum energy consumption based on pulse manoeuver. And then the desired attitude and desired angular velocity are deduced according to the relative location and relative velocity of the observation spacecraft with respect to the target spacecraft.

Optimal observation trajectory
As illustrated in Figure 1, let  , ,  denote the inertial coordinate frame O − XYZ , target spacecraft orbital reference coordinate frame O − xyz, body-fixed coordinate frame of the observation spacecraft O − x ′ y ′ z ′ respectively(the  is illustrated in Figure 3). Let t and c denote the target spacecraft and observation spacecraft respectively. Let r t denote the location vector of target spacecraft and let r c denote the location vector of observation spacecraft. Let = r c − r t denote the relative location vector of the observation spacecraft with respect to the target spacecraft.
In the coordinate frame , the movement of the observation spacecraft is described as According to terminaƟon criterion, scanning need to be conƟnued?  [19] where is the true anomaly of the target spacecraft, is the earth's gravitational constant, = [x y z] T is the coordinates of the relative location vector in , and f = [ f x f y f z ] is the thrust applied on the observation spacecraft along the three coordinate axes. The r t and r c are the distance of the target spacecraft and observation spacecraft with respect to the origin of  respectively. It is obvious that r c = √ (r t + x) 2 + y 2 + z 2 . The scheme of view planning technology is illustrated in Figure 2, see more details in [19]. The scanning stars when the observation spacecraft has changed its attitude, with 3D laser radar fixed on pointing towards the target spacecraft steadily. First, the observation spacecraft scans the target spacecraft in the current location and gets a set of point cloud. Then calculate the volume enclosed by the point cloud obtained from current and all previous viewpoints. If the volume variation in two successive viewpoints is small enough, then the scanning is terminated, if not , the next view direction is attained via MVC. It should be noticed that observation spacecraft only need to achieve a point along the next direction. At the current viewpoint, the observation spacecraft makes a pulse manoeuver to achieve the next viewpoint.
The two spacecrafts need to be kept at a safe distance and the relative distance should be small than the distance satisfying normal working of the 3D laser radar. So Assume that the observation spacecraft need to scan the target spacecraft at N viewpoints and the observation spacecraft need to make a pulse manoeuver at the first N − 1 viewpoint. Let n i (i = 1, 2, … , N ) denote the view directions, where n i is unit vector. For a minimum energy consumption, the target function is where Δv i = [Δv i,x Δv i,y Δv i,z ], (i = 1, 2 ⋯ , N − 1) denote velocity pulse increment at the ith viewpoint. The GPOPS [20]- [24] tool kit is used to solve the optimisation.

The desired attitude
Let R  d denote the desired rotation matrix from  to . Let R   denote the rotation matrix from  to  , which is determined by six-dimensional orbit elements of the target spacecraft. Let R  d denote the desired rotation matrix from  to . According to the transitivity of rotation matrix, the R N Where M 1 [⋅] and M 3 [⋅] is primitive rotation matrix with X -axis and Z -axis respectively. The Ω is the ascension of ascending node. The i is the orbit inclination. The u is the angle distance from ascending intersection to the current location of the target spacecraft.
Remark 1. The Ω and i are both constants while u is a variable with time. As illustrated in Figure 3, assumed the 3D laser radar is fixed on the coordinate axis x ′ in coordinate frame , along the positive direction. So the desired i  is calculated by

Desired rotation matrix
The other two axes j  and k  are on the plane which is perpendicular to i  . The j  and k  can be selected freely on the plane as long as i  , j  and k  form a right-handed rectangular coordinate system. Specially, take j  as then k  is determined by

Desired angular velocity and desired angular acceleration
In order to keep the i  towards to the target spacecraft, observation spacecraft need to rotate with the same angular velocity of vector . According to the concept of instantaneous angular velocity, the desired angular velocity d and desired angular acceleratioṅd are calculated by Remark 2. The desired rotation matrix and the desired angular velocity are not independent and they are linked by kinematical Actually, as long as the initial attitude of the observation spacecraft satisfying the observation condition, i.e. the i  is towards the target spacecraft at initial time, the i  will keep towards to the target spacecraft all time in the future under the driving of desired desired angular velocity d by kinematical equation (11).
As stated in Section 2.1, the observation spacecraft makes a pulse manoeuver after scanning at current location. So at every viewpoint, the desired has no attitude error but the desired angular velocity and desired angular acceleration has a sudden change calculated by

ATTITUDE TRACKING MODEL AND PRELIMINARY
In this section, the attitude tracking model for observation spacecraft is formulated in the state space SO(3) × R 3 . A new defined variable S ∈ R 3 is introduced which is useful for the purpose of feedback control design, and some properties of S are introduced. In addition, three main disturbed factors are described.

Attitude tracking model
As stated in Section 2.1,  is the inertial coordinate frame and  is the body-fixed coordinate frame of the observation spacecraft. The orientation of the spacecraft is described by the rotation matrix R , as an element of SO (3), from  to  . The R describes the actual orientation of the spacecraft, and R d is defined to describe the desired orientation of the spacecraft. According to the transitivity of rotation matrix, the rotation matrix errorR from the actual  to the desired  is given asR Also, the angular velocity error is defined as Where is the actual angular velocity, d is the desired angular velocity. According the Euler's rotational equations of motion and attitude kinematics equations, the dynamics model of attitude tracking is described as (16) and (17):R is the installation direction unit vector of the ith actuator in the body-fixed coordinate frame ; u = [u 1 , u 2 , … , u n ] T ∈ R n×1 and u i is torque provided by the ith actuator. The state variables are described by the pair (R,̃) on the It's our purpose that (R,̃) converge to (I, 0) as time tends to infinity, where I is the identity matrix and 0 is zero vector with compatible dimension. That is lim

Premilinary processing for the rotation matrix errorR
The rotation matrix errorR is an element of the space SO (3) which is the set of 3 × 3 real special orthogonal matrices. So there are only three independent elements inR. An mapping from SO (3) to R 3 is defined as [2] where [e 1 , e 2 , e 3 ] is the identity matrix and a 1 , a 2 , a 3 are three different positive constants. The first derivative of S iṡ substitution of (16) into (19) results iṅ

S = M(R)̃(20)
where The variable S and rotation matrix error have important properties as (21) to (24) where A = diag(a 1 a 2 a 3 ) with the same a 1 , a 2 , a 3 in (18).

Input-to-state stability (ISS)
Consider the systemẋ Let us view the system (25) as a perturbation of the unforced system (26), where u is the perturbation.
is said to belong to class  if, for each fixed s, the mapping (r, s) belongs to class  with respect to r and, for each fixed r, the mapping (r, s) is decreasing with respect to s and (r, s) → 0 as s → ∞.
Definition 3. The system (25) is said to be ISS if there exist a class  function and a class  function such that for any initial state x(t 0 ) and any bounded input u(t ), the solution x(t ) exists for all t ≥ t 0 and satisfies inequality (27) guarantees that for any bounded input u(t ), the state x(t ) of the system (25) will be bounded.
Lemma 1 provides a method to determine whether a system is ISS. Lemma 1. [25]: Suppose f (t , x, u) is continuously differentiable and globally Lipschitz in (x, u), uniformly in t . If the unforced system (26) has a globally exponentially stable equilibrium point at the origin x = 0, then the system (25) is ISS.

3.4
Disturbed factors of the model

Actuator misalignment
The actual allocation matrix of actuator is whereD and ΔD are the nominal part and uncertain part. The control torque is allocated by pseudo-inverse technique, so the term of u in (17) is rewritten as where ∈ R 3 is the control torque in the body-fixed coordinate frame . Furthermore, the term of Du in (17) is rewritten as In engineering practice, the actuator installation deviation ΔD is bounded. So it is assumed that there exists an scalar 0 < 1 < 1 such that ‖ΔDD + ‖ ≤ 1 . See more details about mathematical proof in the reference [26].

3.4.2
Uncertainties of the inertia matrix The actual inertia matrix is WhereĴ and ΔJ are the nominal part and uncertain part. It is assumed that there exists an scalar 2 such that and ‖ΔJ‖ ≤ 2 and ‖ΔJ‖ ≪ ‖Ĵ‖.

External disturbed torque
The external disturbed torque is denoted as d and it is assumed that there exists an scalar 3 such that ‖d ‖ ≤ 3 .

MAIN RESULTS OF SLIDING MODE CONTROL LAW
In this section, the main results of sliding mode control law are presented. First, a sliding mode surface is proposed, and the system is guaranteed by a lower order subsystem in the sliding mode surface. For the subsystem, the equilibria and the corresponding attraction domain are solved. Second, the control law is designed to take the trajectory inside the boundary layer and furthermore to the desired equilibria. Third, the boundness of the state is proved.

Sliding mode surface
The sliding mode surface is designed as: where K = diag(K 1 , K 2 , K 3 ) with K 1 , K 2 , K 3 positive real constants. On this surface s =̃+ KS = 0, the motion is governed bẏR where S is defined by (18). For the subsystem (33), theorem 1 presents the convergence and stability.  [27]. According to expression of subsystem (33), every element ofV −1 a (0) = I ∪  is also an equilibria of the subsystem (33). By LaSalle's theorem, all solutions that start in the set  = {R ∶ V a (R) ≤ V a (R(0))} converge to an element of the largest invariant subsetV −1 a (0). Next, the local stability of the four elements in the largest invariant subsetV −1 a (0) are analysed using linearised equations.
Assumed that the initial rotation matrix error near the equilibria isR(0, ) = R e exp( × 0 ) using exponential coordinates whereR e ∈V −1 a (0) and 0 is a constant element in R 3 , and the initial angular velocity error is̃(0, ) = 0 where 0 is a constant element in R 3 . It's clear that (R(0, ),̃(0, )) = (R e , 0) if = 0. The subsystem disturbed by the perturbation is as follows: taking the partial derivatives against and then taking = 0 results in Two new linearised variables are defined as follow: (36) can be rewritten as: substitution of (18) into (39) results in Considering a 1 > a 2 > a 3 > 0, the K is positive definite only if R e = I from which it follows that the equilibria I is locally stable. The K has at least one negative eigenvalue if R e ∈  from which it follows that the corresponding linearised system is unstable at these equilibria. The solutions that start near the unstable equilibria will get away from the corresponding unstable equilibrium. And that is to say, the attraction domain of the unstable equilibria is only itself. Considering that all solutions converge to an element of the largest invariant subsetV −1 a (0), so the attraction domain of the equilibria I is almost global except another three unstable equilibria.

Control law design and stability analysis
where for the variable Q(⋅), there is an inequality where The sliding mode control law is designed as where k s and k are two real positive constants. There are three terms in the control law . The first term −L(⋅) is the equivalent control which guaranteės = 0 for the nominal system without actuator misalignment, uncertainties of the inertia matrix or external disturbed torque. The second term −k s s is the dynamic response for s . The third term −k SAT(s, ) ensures the robustness of the system.
Remark 3. The variable s ,i (i = 1, 2, 3) measure the distance between sliding mode variable s i (i = 1, 2, 3) and the boundary layer s i ≤ (i = 1, 2, 3). Outside the boundary layer, the first derivative of s ,i (i = 1, 2, 3) is the same as the first derivative of s i (i = 1, 2, 3), i.e.̇s ,i =̇s i (i = 1, 2, 3). Inside the boundary layer, it follows that s ,i = 0(i = 1, 2, 3). According to (51) and (52), the following results can be obtained that Proof. There is a similar theorem in [28]. However, this article uses the rotation matrices instead of the quaternion. Furthermore, the uncertainty of the inertia matrix is taken into account. There are two main steps in the proof: Step 1: Prove that the sliding mode variable s i (i = 1, 2, 3) enter into the boundary layer s i ≤ (i = 1, 2, 3) asymptotically.
Step 2: Inside the boundary layer, the state pair (R,̃) converge to a small interval near (I, 0). □ Step 1: Let the Lyapunov function candidate be Furthermore, substitution of the feedback control law (50) into (60) results inV Considering the inequality(55), (61) can be simplified aṡ so the s = 0 is achieved asymptotically, i.e. the sliding mode s i (i = 1, 2, 3) enter into the boundary layer asymptotically.
Step 2: Inside the boundary layer, the following results can be obtained that̃i (63) can be rewritten as Remark 4. The theorem 2 implies an assumption that the state of the system (42) and (43) is bounded. The theorem 3 represents the boundness of the state of the system (42) and (43) based on the Lemma 1.

Theorem 3. The state of the system (42) and (43) is bounded with the control law (50).
Proof. In the control law (50), the first two terms −L(⋅) − k s s can guarantee that the nominal system has a globally uniformly asymptotically stable equilibrium point at the origin x = 0. So design the feedback control law for the nominal system (16) and (17) as □ Substitution of the feedback control law (67) into the nominal system (16) and (17) results in the closed-loop system. Replacẽ R with variable S furthermore, the closed-loop of the nominal system is where (68) is just the form of the (26). Substitution of the bounded perturbation d (here one use the term d to represent the term u in (25)) into the (68) results in The closed-loop system (69) is just the form of the (25). According to the lemma 1, the system (69) is ISS as long as the system (68) has a globally exponentially stable equilibrium point at the origin x = 0.
For the system (68) outside the boundary layer, taking Lyapunov function can be indicated as Taking the derivative of V , and considerinġs ,i =̇s i (i = 1, 2, 3) outside the boundary layer, the following equation holdṡ The inequality (71) shows that the closed-loop system (68) has a globally exponentially stable equilibrium point at the origin x = 0. Then the condition of lemma 1 is satisfied, that's to say the system (69) is ISS.
According to the definition of the saturation function, the third term −k SAT(s, ) of the control law (50) can also be seen as bounded perturbation. Then it is easy to prove that the system (42) and (43) is ISS. Therefore, the state of the system (42) and (43) is bounded.

SIMULATION RESULTS
In this section, simulations are conducted to illustrate the effectiveness of the proposed controller. Assume the target spacecraft is in a nearly circular orbit whose period is T = 96.788 min, the corresponding orbit angular velocity iṡ= 2 ∕T = 1.082 × 10 −3 rad∕s, with the ascension of ascending node Ω = ∕6 and the orbit inclination i = ∕4. The angle distance from ascending intersection to the current location u is 0 at initial time.
Assume that the three actuator is fixed along the three axes in body-fixed coordinate frame  but there is 1 • erection angle error for every actuator relative. So the nominal partD and uncertain part △D of allocation matrix of actuator is [26]  The whole task can be divided into two stages simply, i.e. attitude acquisition stage(before scanning the first viewpoint) and scanning stage(after scanning the first viewpoint). In the attitude acquisition stage, the rotation matrix errorR is far away from I and angular velocity error̃is far away from 0, too. The controller will work until the rotation matrix errorR is near I and angular velocity error is near 0 enough such that the 3D laser radar can scan the target spacecraft stably, then the scanning begins at first viewpoint. After that, the observation spacecraft will work as illustrated in Figure 2. where the first three terms are location (m) and the second three terms are the velocity (m/s). In order to orient the 3D LIDAR towards the target spacecraft, the initial desired attitude of the observation spacecraft is calculated by It is obvious that we just need to calculate the desired state at the initial time, the desired attitude in future is decided by desired angular velocity d through kinematical equation (11). And also the desired angular velocity d is illustrated as Figure 4 calculating by (9). It's noticed that the desired angular velocity d is perpendicular to the relative vector , so the component on the x-axis of desired angular velocity is 0 all time. The observation spacecraft needs to adjust its attitude and angular velocity until the rotation matrix errorR is near I and angular velocity error̃is near 0 enough, when the current location can be chosen as the first viewpoint.

Attitude acquisition stage
Assume that the initial state (R,̃)| t =0 is Consider that the Eular axis-angle representation for the rotation matrix is comprehensible, the angle errorΦ is used to represent the rotation matrixR For comparison, the controller in this paper is denoted as controller 1. As a contrast, two other controllers are designed. One is also the siding mode control using quaternion called controller 2, the other is simple linear feedback control using rotation matrices called controller controller 3.
controller 1 ∶ the controller in this paper controller 2 ∶ siding mode control using quaternion controller 3 ∶ linear feedback control using rotation matrices The simulation results are illustrated as Figure 5 to Figure 7. For the controller 1 and controller 2, the angle errorΦ converges to zero, but the controller 2 causes unwinding where the angle errorΦ increases to 180 • and then decreases to zero due to the duality of quaternions. For controller 3, the angle errorΦ stay near a non-zero constant without fluctuation which means that the actual attitude makes precession near the desired attitude.
For the controller 1 and controller 2, the angular velocity error i (i = 1, 2, 3) satisfy i ≤ 2 and ‖ ‖ ≤ 2 tends to infinity, where = 1 × 10 −5 . The controller 2 causes unwinding where angular velocity error increases firstly and the decreases to a small interval. For the controller 3, the angular velocity error i (i = 1, 2, 3) converge to an interval which has the same order of magnitude with the desired angular velocity, and it means that the controller 3 is not robust against external disturbance torque. For the controller 2, the torque T has a sudden increase at the beginning due to the unwinding. The maximum torque ‖T ‖ max and the energy consumption E is shown in Table 1. The energy consumption E is calculated by  Given the above, the proposed controller can take the trajectory close to the desired equilibria, i.e. making the three LIDAR fixed on the observation spacecraft point at the target spacecraft steadily. Compared with the controller based on quaternions, the proposed controller can avoid unwinding, which causes unnecessary energy consumption and a particularly large torque output for the actuator. Also, the proposed controller is robust against the uncertainties of parameter and external disturbances.

Scanning stage
Specially after 2000 s, it is taken as the first viewpoint and the current state for the observation spacecraft is: where the first three terms are location (m) and the second three terms are the velocity (m/s). At the current time, The rotation matrix errorR is near I and angular velocity error is near 0. Then the trajectory is optimised by the GPOPS. According to the theory in Section 2.1, we can calculate the time consumption to next viewpoint, view direction, relative distance, velocity pulse increment, and the volume enclosed by point cloud as shown in Table A1, see Appendix for table of results. It's obvious that the volume variation is little enough such that the scanning is terminated at fifth viewpoint. The target function has minimum J min = 0.4413m 2 ⋅ s −2 . The trajectory is illustrated as Figure 8 including attitude acquisition stage. Specially after the observation spacecraft makes a pulse manoeuver after scanning at first viewpoint, the attitude error R can be approximated asR = I, and the angular velocity is calculated by (12), then the state (R,̃)| t =0 is For the convenience of drawing, the time is recorded as 0 at first viewpoint. The desired angular velocity is illustrated in Figure 9. And the simulation results is illustrated as Figure 10 to Figure 12.
For the controller 1, the angle errorΦ has a slight fluctuation round zero but quickly converges to a small value. For the controller 2, the angle errorΦ increases to 180 • and then decreases to zero due to unwinding. For the controller 3, the angle error Φ stay near a non-zero constant although the angle errorΦ is zero at initial time, and there is no fluctuation which means that the actual attitude makes precession near the desired attitude.  For controller 1 and controller 2, the angular velocity error is less than 2 = 2 × 10 −5 , but the controller 2 causes unwinding. And the convergence interval does not meet accuracy requirements for controller 3.
For controller 1, the torque is uniform and does not have a particularly large value compared with controller 2. Although the torque of the controller 3 is perfect, but it is not robust. The Maximum torque ‖T ‖ max and the energy consumption E is shown in Table 2.
Given the above, the proposed controller show great performance after the observation spacecraft makes a pulse manoeuver. The angle errorΦ has a slight fluctuation but quickly converges to zero, and the angular velocity error converges to a tolerable error range. For the controller based on quaternions, the observation spacecraft rotate with 360 • and return to original attitude, which is called unwinding. Compared with the linear feedback controller, the proposed controller is robust against the uncertainties of parameter and external disturbances.

CONCLUSION
In this paper, the attitude tracking control problem of the observation spacecraft has been studied. First, the optimal viewpoints for observation spacecraft are selected by view planning technology and the optimal trajectory problem is solved by GPOPS tool kit. The desired attitude and desired angular velocity are deduced according to the relative location and relative velocity of the observation spacecraft with respect to the target spacecraft. Second, a robust controller is designed for the attitude tracking model described using rotation matrices, and the convergence and stability of the closed-loop are proved in the non-Euclidean space. Finally, numerical simulations are conducted to illustrate the effectiveness of the proposed controller.