Almost global attitude stabilization of a rigid body for both internal and external actuation schemes

Almost global attitude stabilization of a rigid body for both internal and external actuation schemes

European Journal of Control 20 (2014) 45–54 Contents lists available at ScienceDirect European Journal of Control journal homepage: www.elsevier.com...

409KB Sizes 6 Downloads 183 Views

European Journal of Control 20 (2014) 45–54

Contents lists available at ScienceDirect

European Journal of Control journal homepage: www.elsevier.com/locate/ejcon

Almost global attitude stabilization of a rigid body for both internal and external actuation schemes Ramaprakash Bayadi n, Ravi N. Banavar Systems and Control Engineering, Indian Institute of Technology Bombay, Mumbai 400076, India

art ic l e i nf o

a b s t r a c t

Article history: Received 30 May 2013 Received in revised form 17 October 2013 Accepted 19 October 2013 Recommended by A. Astolfi Available online 26 October 2013

One of the recent developments in attitude control is the notion of almost-global asymptotic stabilization (AGAS) using coordinate-free control laws. In this paper, we examine two aspects related to this line of research. The first is the problem of AGAS with internal actuation. Since all of the results concerning AGAS so far focus on external actuation, we address the internal actuation case and show that there exists a class of control laws that can almost globally stabilize the desired equilibria either by external or internal actuation. The second aspect we analyze is the construction of potential functions leading to AGAS. We show that it is possible to construct such potential functions in such a way that the resulting control torque depends only on two vector observations, thus avoiding the need for explicitly computing the attitude matrix for the purpose of feedback. We also show that these potentials are nothing but the commonly used error functions, namely the modified trace functions. & 2013 European Control Association. Published by Elsevier Ltd. All rights reserved.

Keywords: Attitude control Almost global stabilization Internal actuation Vector observations

1. Introduction Attitude stabilization of a rigid body is a classical and important problem and has been widely studied in the context of controlling spacecraft or underwater vehicles. Even though the state space for this problem is a nonlinear manifold, classically this problem has been analyzed by making use of local representations such as Euler angles or global but redundant representations like quaternions, resulting in differential equations on a Euclidean space. It is only recently that the problem has been analyzed in a ‘coordinatefree’ framework [17,6,21,7,18,8] where one deals with the dynamics directly on the nonlinear state space, namely the tangent or the cotangent bundle of SO(3). The motivation for doing this, rather than use a coordinate dependent approach, has been documented well in the references cited above. One of the main advantages of the coordinate-free approach is that it allows a global analysis of the designed feedback control law. However, since the rigid body dynamics evolves on a fiber bundle over a compact manifold, global asymptotic stabilization is not achievable through continuous feedback [5]. The notion of almost global asymptotic stability or AGAS (to be defined in Section 2) is the best one can hope to achieve in this situation. Control laws that can achieve AGAS have been indeed developed for the case of external actuation [17,21,7,18,8].

n

Corresponding author. Tel.: þ 91 9769130097. E-mail addresses: [email protected], [email protected] (R. Bayadi), [email protected] (R.N. Banavar).

In the case of internal actuation, to the best of our knowledge, the existing literature on rigid body stabilization is solely based upon the coordinate dependent approach. In the classical spacecraft control textbooks such as [30,16,28], the attitude stabilization and the attitude acquisition problems are addressed as a sequence of single axis maneuvers and the system can be treated as linear in this situation. Schaub and Junkins [26] have recently developed a stabilizing control law based on the modified Rodriguez parameterization. If we assume that the external torques are negligible, the total angular momentum of the system is conserved. In the literature so far, this fact is often accounted for by imposing an algebraic constraint on the evolution of state variables. The coordinatefree approach, by taking into account the conservation of angular momentum, can offer remarkable economy and simplicity in terms of the governing equations and the feedback control law. In this work, we shall adopt this approach and address the stabilization problem using a coordinate-free approach when the actuation is by internally mounted rotors. We show that there exist control laws that achieve AGAS with internal actuation and achieve the same with external actuation, with only a sign change. It is worth noting that this result applies only to a class of control laws and to highlight this, we present an example of a control law which stabilizes with internal actuation, the negative of which does not stabilize with external actuation. Potential functions inspired from the gravitational potential of a spinning top have been used earlier for stabilization of angular velocity of rigid bodies or underwater vehicles [19,25]. These potential functions are capable of stabilizing what are known as

0947-3580/$ - see front matter & 2013 European Control Association. Published by Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.ejcon.2013.10.006

46

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

relative equilibria [22]. On the other hand, trace and the modified trace functions have been used as error functions for total stabilization of rigid body attitude and angular velocity [17,6]. In this paper, we show that these two approaches are closely related. A preliminary version of these results appears in [3]. Control laws have been recently proposed for attitude stabilization using vector observations, without the need for explicitly computing the attitude matrix [24,29,1]. This has an advantage in spacecraft applications that the system can function even if the inertial navigation system fails. In the paper [24], the authors propose a control law for adaptive stabilization using vector observations based on an observer–controller framework. This setup however calls for additional computational effort in an actual application, for the integration of the observer variables. In the paper [29], the authors develop a-priori bounded, velocityfree control laws based on vector observations, using the quaternion representation for the spacecraft orientation. The damping necessary to achieve asymptotic stability is generated by augmenting the rigid body dynamics with an auxiliary system. The resulting closed loop system in [29] might however have a continuum of equilibria, depending on the choice of the observed vectors, as we shall demonstrate. We show, taking motivation from classical rigid body systems such as a spinning top, a method of deriving a coordinate-free, almost globally stabilizing control torque using only two vector observations, without the need for an observer or an auxiliary system. Also, in any globally defined control law, determining the equilibrium points of the closed loop dynamics and the nature of stability at these points is of utmost importance. We show how one can utilize the existing framework of modified trace functions for this purpose and show that the closed system with the control law that we derive has only four isolated equilibria. We also delineate a method of estimating the angular velocity using body-rates of two vector observations, which is in turn used for the damping torque in our control law. We first review the strategy of AGAS for external actuation in Section 3 using potential or error functions. In Section 4, we then show how the same potential can be used to design stabilizing internal torques. In Section 5 we show how to use vector observations to build modified trace functions. We derive an expression in closed form for the body angular velocity from body-rates of two vector observations in Section 6. We present simulation results in Section 7.

2. Preliminaries The set of orientations of a rigid body, which is the set of 3  3 proper orthogonal matrices is the Lie group SO(3) [23]. The tangent space at the group identity eA SOð3Þ, called the Lie algebra of SO(3), is the space of 3  3 skew-symmetric matrices, which is denoted by soð3Þ. For any R A SOð3Þ, we can define a function LR over SO(3) as LR ðQ Þ ¼ RQ for every Q A SOð3Þ. This function, LR : SOð3Þ⟶SOð3Þ has an inverse and both LR and LR 1 are differentiable. Hence, LR is a diffeomorphism and is called ‘the lefttranslation by R’. Every differentiable map has a derivative map or tangent map and T e LR , the tangent map of LR evaluated at e, maps from soð3Þ to T R SOð3Þ, the tangent space of SO(3) at R. The map T e LnR : T nR SOð3Þ⟶soð3Þn , where T nR SOð3Þ is the cotangent space at R and soð3Þn is the dual of the Lie algebra, is the dual of T e LR . The vector space soð3Þ can be identified with R3 using the map S : R3 ⟶soð3Þ (also called the hat map). For every a ¼ ða1 ; a2 ; a 3 Þ A R3 , 2 3 a2 0  a3 6 a 0  a1 7 SðaÞ ¼ 4 3 5:  a2 a1 0

We can use this map to identify soð3Þn with R3 as follows (see for example [13]). Define p : soð3Þn ⟶ðR3 Þn , p ¼ S n , the adjoint of S. If we identify ðR3 Þn with R3 using the inner product, then p : soð3Þn ⟶R3 is given by pðρÞ  η≔〈ρ; SðηÞ〉;

ð1Þ

for any ρ A soð3Þ . Here the ðÞ on the left hand side denotes the standard inner product on R3 and the angles-bracket on the right hand side denotes the dual action of soð3Þn on soð3Þ. We often denote η^ ¼ SðηÞ, for η A R3 , to avoid notational complexity. We now give a definition of AGAS relevant in our context. This is essentially the notion of almost global stability used in the literature. n

Definition 2.1. An equilibrium point x A M of a vector field X on M is almost globally asymptotically stable if

 x is locally asymptotically stable,  X has finite number of equilibrium points and the stable 

manifold of every equilibrium point other than x is a lower dimensional submanifold of M, all points in M\U, where U is the union of stable manifolds of the equilibrium points other than x, converge to x.

3. Review of stabilization by external actuation The equations of motion of a rigid body with external torque u are given by R_ ¼ RSðI  1 Π Þ;

ð2Þ

Π_ ¼ Π  I  1 Π þ u;

ð3Þ

where Π is the angular momentum expressed in the body coordinates and I is the moment of inertia matrix. In a coordinate-free analysis, one directly makes use of the rotation matrices, instead of representing them using coordinates such as Euler angles or quaternions, which implies that one directly considers the dynamics on the nonlinear manifold. For example, consider a top spinning with its point of contact on the ground at rest. The torque due to gravity on the top can be written as a function of the rotation matrix R as uðRÞ ¼  mg χ  RT e3 , where m and g are the mass and the acceleration due to gravity respectively, χ is the vector from point of contact to the center of mass expressed in the body frame and e3 is the unit vector in the direction of gravity. Substituting this expression for u in Eq. (3), we get a dynamical system whose state variable consists of R, a 3  3 proper orthogonal matrix and Π , a vector in R3 . It might seem uneconomical at the outset to directly use proper orthogonal matrices which have nine components, instead of using coordinates such as Euler angles or quaternions which have three or four components. However, the methods of analysis in the coordinate-free set-up seldom require one to express R in terms of its components. The analysis often involves geometric ideas that capture the dynamics by using R as only a symbol to represent the orientation, as we shall demonstrate in this section. We also refer the reader to [8] for a tutorial on the coordinate-free approach. As it will become clear through the course of this paper, it is often beneficial to look for a feedback control law which can be derived from a scalar valued smooth function V : SOð3Þ⟶R. The paper by Koditschek [17] is among the first one to analyze coordinate-free, globally defined control laws, which are derived from what he calls as a navigation function. A navigation function is a Morse function on SO(3) and the stabilization properties of the resulting control law were studied using the Riemannian geometry structure that can be given to SO(3). Bullo and Lewis also derive

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

stabilizing control laws from globally defined error functions on manifolds using a Riemannian-geometric framework [6]. However, they confine the analysis to local stability. We give a brief account of the ideas involved in the following subsection. 3.1. Lyapunov stability with error functions Since we are interested in looking for feedback laws based on scalar valued functions, we recall the definition of the Hessian of a scalar valued function, which plays an important role in our analysis. Definition 3.1. Suppose M is a smooth manifold, Ψ : M⟶R is a smooth function and φ : Rk ⟶M is a local parameterization around x A M. Then, the Hessian of V at x is defined as the second variation of V~ : Rk ⟶R, where V~ ≔V○φ. A function Ψ : M⟶R is called an error function [6] about xd A M if

 Ψ ðxd Þ ¼ 0,  dΨ ðxd Þ ¼ 0, and  The Hessian of Ψ is positive definite around xd. Let us demonstrate how an error function can be used to derive a stabilizing torque. Suppose that V : SOð3Þ⟶R is an error function about Rd A SOð3Þ. Suppose we apply the feedback torque uðRÞ ¼  pðT ne LR dVðRÞÞ so that the closed loop system becomes R_ ¼ RSðI  1 Π Þ;

ð4Þ

Π_ ¼ Π  I  1 Π  pðT ne LR dVðRÞÞ:

ð5Þ

Define the function H : SOð3Þ  R3 ⟶R HðR; Π Þ≔12 Π I  1 Π þ VðRÞ: T

ð6Þ

First of all, note that ðRd ; 0Þ is an isolated equilibrium of the system _ (4) and (5). It can be seen that HðR; Π Þ  0 for the system. Since V is an error function about Rd and since I 4 0, it follows that H is locally positive definite around ðRd ; 0Þ. Thus, H is a Lyapunov function about ðRd ; 0Þ and hence ðRd ; 0Þ is stable in the sense of Lyapunov for the system (4) and (5). Remark 3.2. The cotangent bundle T n SOð3Þ can be identified with SOð3Þ  R3 using the left trivialization of T n SOð3Þ, λ : T n SOð3Þ⟶SOð3Þ  R3 given by λðαR Þ ¼ ðR; pðT e LnR αR ÞÞ for every αR A T n SOð3Þ. The symplectic structure on T n SOð3Þ induces one on SOð3Þ  R3 through λ. With this symplectic structure, it can be shown that Eqs. (4) and (5) can be interpreted as the Hamiltonian vector field on SOð3Þ  R3 corresponding to the Hamiltonian (6). The Lyapunov stability of ðRd ; 0Þ can then also be inferred from the Lagrange–Dirichlet criterion [23] since V is actually a potential function with a positive definite Hessian at Rd. 3.2. Damping and almost global asymptotic stability Suppose we introduce damping by redefining the control as

47

stable, implying that the system (8) and (9) is locally asymptotically stable at ðRd ; 0Þ. In addition, suppose the potential function has the following properties: Assumption 3.3. The bounded function V : SOð3Þ⟶R satisfies the following properties:

 V has finite, isolated critical points,  the Hessian of V is positive definite only at a single critical point Rd, and non-singular at the other critical points. Then it can be shown that ðRd ; 0Þ is almost globally asymptotically stable. Modified trace functions [9], which we shall discuss in Section 5, can be constructed so that they satisfy this assumption. To show AGAS, one has to show that all equilibrium points except ðRd ; 0Þ are unstable. The linearization procedure necessary for showing instability can be performed using the Riemannian structure since the closed loop system can be interpreted as a vector field on the Riemannian manifold SO(3). This allows to conclude almost global asymptotic stability. Thus, the following result follows, the proof of which has been derived in different contexts in [17,21,7]: Theorem 3.4. Consider the system (8) and (9). Suppose V satisfies Assumption 3.3. Then the equilibrium point ðRd ; 0Þ is AGAS. 4. Stabilization by internal actuation Now we turn to the stabilization of a rigid body with internal rotors. We assume that the rotors are mounted along the principal axis of the body. The actuation is provided by applying torque to the rotors. Since the actuation is internal, the total inertial angular momentum of the body μ A R3 is a constant of motion. Let Ir be the moment of inertia of the rotors and let IL be the locked inertia tensor of the rigid body with rotors. Let Ω be the body angular velocity of the rigid body. Define I s ¼ I L  I r and Π ¼ I s Ω. Then, it can be shown (see Appendix A) that the equations of motion are given by R_ ¼ RSðI s 1 Π Þ;

ð10Þ

Π_ ¼ RT μ  Is 1 Π  u;

ð11Þ

where u is the torque applied to the rotors, taken as a vector in R3 . 4.1. Lyapunov stability We first show that if a function V : SOð3Þ⟶R3 is such that uðRÞ ¼ pðT ne LR dVðRÞÞ it stabilizes (in the sense of Lyapunov) an equilibrium point for system (4) and (5), then uðRÞ ¼ pðT ne LR dVðRÞÞ stabilizes the same equilibrium point for system (10) and (11). The resulting closed loop system defines a vector field X over SOð3Þ  R3 . Explicitly, X≔ðRSðI s 1 Π Þ; RT μ  I s 1 Π  pðT ne LR dVðRÞÞÞ:

ð12Þ

R_ ¼ RSðI  1 Π Þ;

ð8Þ

Π_ ¼ Π  I  1 Π  CI  1 Π  pðT ne LR dVðRÞÞ:

ð9Þ

The equilibrium points of the above vector field are ðRd ; 0Þ where Rd is a critical point of V, as in the case of external actuation. Even though the feedback torque is derived from a potential, the system (12) is not a Hamiltonian system, since we have eliminated the rotor variables in arriving at these equations. However, using the special form of the feedback torque, we can analyze the local and global stability as we show in Theorems 4.1 and 4.7 respectively.

To show local asymptotic stability of ðRd ; 0Þ, the closed loop system is linearized about the point using the Riemannian structure of SO (3) [6]. It follows that the linearized system is asymptotically

Theorem 4.1. Suppose Rd is a critical point of V and that the Hessian of V is positive definite about Rd. Then the system (12) is Lyapunov stable about the equilibrium point ðRd ; 0Þ.

uðR; Π Þ ¼  CI  1 Π  pðT ne LR dVðRÞÞ;

ð7Þ

where C is a positive definite matrix, then the closed loop system becomes

48

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

Proof. Define the function HðR; Π

Þ ¼ 12

Π

T 1 Is

Π þ VðRÞ:

ð13Þ I s 1

Since the Hessian of V is positive definite about Rd and since is a positive definite matrix, it follows that H is locally positive definite about ðRd ; 0Þ. It also follows that H_ ¼ 0 along the trajectories of X. Thus, H is a Lyapunov function for X and Lyapunov stability follows. □ The natural next step is to introduce dissipation to the system so that one can expect to achieve asymptotic stability. As we saw in Section 3.2, asymptotic stability analysis for external actuation depended crucially on linearization. However, it is not possible to linearize the present system as done in [6,7], since it is not clear how the closed loop system can be derived from a Riemannian structure. We present the linearization relevant to the present context in the following subsection. Using this procedure, we can resort to the strategy explained in Section 3.2 to prove almost global asymptotic stability. 4.2. Linearization Let X be a smooth vector field on M, which is a smooth embedded submanifold of Rk for some k A Z þ and let Xðx0 Þ ¼ 0. To determine the stability at x0, we can resort to linearization of the vector field expressed in a local chart around x0. To be more precise, let U  M be a neighbourhood around x0 and let ϕ : 1 U⟶Rn be a coordinate chart such that ϕðx0 Þ ¼ 0. Let φ ¼ ϕ on the image of ϕ, thus φ : ϕðUÞ⟶U is a local parameterization of M around U. Note that both ϕ and φ are local diffeomorphisms. Now let Y be the local representative of X in the coordinate chart ϕ, which is basically the pull-back of X by the diffeomorphism φ. That is, in a sufficiently small neighbourhood of 0 A Rn , YðηÞ≔ðDφðηÞÞ  1 XðφðηÞÞ is well defined. Thus, Y is a vector field on ϕðUÞ  Rn . We can linearize Y and analyze the stability of the resulting linear system. We can see that if the equilibrium point 0 of Y is stable or unstable, then the same conclusion holds for the equilibrium point x0 of X. The linearization of Y at η0 in the direction of η can be computed as d  DYðη0 Þη ¼  Yðη0 þ t ηÞ: dt t ¼ 0 We call the linear vector field DYðη0 Þη the linearization of X at x0. 4.3. Damping and almost global asymptotic stability Let us introduce damping to the system by changing the feedback control law to uðR; Π Þ ¼ CI s 1 Π þ pðT ne LR dVðRÞÞ; where C is a positive definite matrix. Thus, the closed loop system becomes R_ ¼ RSðI s 1 Π Þ;

ð14Þ

Π_ ¼ RT μ  I s 1 Π  CIs 1 Π  pðT ne LR dVðRÞÞ:

ð15Þ 3

Thus we get a modified vector field Xd on SOð3Þ  R : X d ≔ðRSðI s 1 Π Þ; RT μ  I s 1 Π  CI s 1 Π  pðT ne LR dVðRÞÞÞ: Note that the equilibrium points remain the same as those of the vector field X. Suppose R0 A SOð3Þ is a critical point of V and we want to analyze the stability of Xd at the equilibrium point ðR0 ; 0Þ by linearization. We have a special choice for local parameterization of SO(3) around R0, using the exponential map. The exponential map exp : soð3Þ⟶SOð3Þ coincides with the usual matrix exponential expm : R33 ⟶R33 , restricted to the space of skew-

symmetric matrices. A linearization analysis on similar lines was presented in [8]. We have made the ideas that exist there mathematically more precise and this has enabled us to consider feedback torques derived from general scalar valued functions. The derivative of the matrix exponential function expm : R33 ⟶R33 at 0 A R33 is the identity map between the corresponding tangent spaces [4]. Since the exponential map exp that we are interested is a restriction of expm, it follows that D expð0Þ ¼ id : soð3Þ⟶soð3Þ. We define φ1 : R3 ⟶SOð3Þ as

φ1 ≔LR0 ○ exp ○S;

ð16Þ

where LR0 : SOð3Þ⟶SOð3Þ is the diffeomorphism of the left action of R0. This is a local parameterization of SO(3) on R3 around R0. Define φ : R3  R3 ⟶SOð3Þ  R3 ,

φ ¼ ðφ1 ; idR3 Þ:

ð17Þ 3

It follows that this is a local parameterization of SOð3Þ  R around ðR0 ; 0Þ. Proposition 4.2. Let ðη; Π Þ be the coordinates of SOð3Þ  R3 around ðR0 ; 0Þ in the chart defined by the parameterization φ. Then, the linearization of Xd at ðR0 ; 0Þ, in these coordinates is given by ! !  0 I s 1 η_ η ; ð18Þ ¼ Π  K SðRT μÞ CI  1 Π_ 0

s

where K ¼ δ V~ ð0Þ and V~ : R3 ⟶R are given by V~ ¼ V○φ1 . 2

Proof. Let us represent the vector field Xd in the component form as X d ¼ ðX 1 ; X 2 Þ. Let Y be the pullback X vector field by the diffeomorphism φ. That is, Yðη; Π Þ ¼ ðDφðη; Π ÞÞ  1 Xðφðη; Π ÞÞ: It follows that ðDφðη; Π ÞÞ  1 ¼

"

ðDφ1 ðηÞÞ  1

0

0

id

# :

Thus we get Yðη; Π Þ ¼ ððDφ1 ðηÞÞ  1 X 1 ðφ1 ðηÞ; Π Þ; X 2 ðφ1 ðηÞ; Π ÞÞ:

ð19Þ

We write this again in the component form Yðη; Π Þ ¼ ðY 1 ðη; Π Þ; Y 2 ðη; Π ÞÞ. Note that Yð0; 0Þ ¼ ð0; 0Þ. The linearization of Y at ð0; 0Þ in the direction ðη; Π Þ is given by d  ðY 1 ðt η; t Π Þ; Y 2 ðt η; t Π ÞÞ: DYð0; 0Þðη; Π Þ ¼  dt t ¼ 0 Computing term by term, d  d  Y 1 ðt η; t Π Þ ¼  ððDφ1 ðt ηÞÞ  1 X 1 ðφ1 ðt ηÞ; t Π ÞÞ:  dt t ¼ 0 dt t ¼ 0 By using the Leibniz rule (product rule), since X 1 ðφ1 ð0Þ; 0ÞÞ ¼ ð0; 0Þ, it follows that d  d  Y 1 ðt η; t Π Þ ¼ ðDφ1 ð0ÞÞ  1  T e Lφ1 ð0Þ SðtI s 1 Π Þ  dt t ¼ 0 dt t ¼ 0 ¼ ðDφ1 ð0ÞÞ  1 T e Lφ1 ð0Þ SðI s 1 Π Þ ¼ I s 1 Π ; since from Eq. (16) it follows that Dφ1 ð0Þ ¼ T e Lφ1 ð0Þ ○S. Coming to the second term,  d d  Y 2 ðt η; t Π Þ ¼   ðtI s 1 Π  φ1 ðt ηÞT μ þtC Π Þ  dt t ¼ 0 dt t ¼ 0  d  pðT ne Lφ1 ðtηÞ dV φ1 ðtηÞ Þ   dt t ¼ 0 The first term on the right hand side reduces to SðRT0 μÞΠ CI s 1 Π . The second term is computed in the lemma below.

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

49

Lemma 4.3. The following identity holds if dV φ1 ð0Þ ¼ 0: d  pðT ne Lφ1 ðt ηÞ dVjφ1 ðt ηÞ Þ ¼ K η;  dt t ¼ 0 2 where K ¼ δ V~ ð0Þ.

where x ¼ ðη; Π Þ. By resorting to Jordan block diagonalization for the case of imaginary eigenvalues (see for example [12]), it can be shown that there exist nontrivial periodic orbits for the linear system (20). Consider the function

Proof. It can be shown that

It follows that V_ lin ¼  η_ T C η_ r 0 since C 4 0. However, this inequality implies that V_ lin  0 along a periodic orbit, which implies η_  0 since C is nonsingular. Since η_  0, it follows that Π_  0. Thus ðη_ ; Π_ Þ  ð0; 0Þ for V_ lin r 0 to hold, which is not possible for a nontrivial periodic orbit. Hence the linear system (20) cannot have a nontrivial periodic orbit, which means that Ad cannot have purely imaginary eigenvalues. Additionally, when K is nonsingular, the matrix Ad is also nonsingular and hence Ad cannot have zero eigenvalues. □

V lin ðη; Π Þ≔ηT K η þ Π I s 1 Π : T

dVjφ1 ðt ηÞ ¼ ðT nφ1 ðtηÞ φ1 Þ  1 dV~ ðt ηÞ: Thus, since φ1 ð0Þ ¼ R0 , and since dV R0 ¼ 0, it follows that dV~ ð0Þ ¼ 0. From Eq. (16), we get ðT nφ1 ðtηÞ φ1 Þ  1 ¼ ðT ne LR0 Þ  1 ○p  1 . Let us define F : R3 ⟶R3 as FðηÞ ¼ p○T ne Lφ1 ðηÞ ○ðT ne LR0 Þ  1 ○p  1 . Thus, pðT ne Lφ1 ðtηÞ dVjφ1 ðt ηÞ Þ ¼ Fðt ηÞ dV~ ðt ηÞ: Since dV~ ð0Þ ¼ 0, it follows that d  d  pðT ne Lφ1 ðt ηÞ dVjφ1 ðt ηÞ Þ ¼ Fð0Þ  dV~ ðt ηÞ:  dt t ¼ 0 dt t ¼ 0 n

n

1

With these facts, we are ready to state the following result.

1

But Fð0Þ ¼ p○T e LR0 ○ðT e LR0 Þ ○p ¼ idR3 . Thus, d  2 pðT ne Lφ1 ðt ηÞ dVjφ1 ðt ηÞ Þ ¼ δ V~ ð0Þη;  dt t ¼ 0 2 by definition of δ V~ . □ Therefore, we get  d Y 2 ðt η; t Π Þ ¼ SðRT0 μÞΠ CI s 1 Π  K η:  dt t ¼ 0

Theorem 4.7. Consider the system (14) and (15). Suppose V satisfies Assumption 3.3. Then the equilibrium point ðRd ; 0Þ is AGAS.



Let us denote Ad ≔

0

I s 1

K

SðRT0 μÞ  CI s 1

! :

ð20Þ

The linearized system can be written in the form of a ‘secondorder equation’, which becomes a linear gyroscopic system with damping: I s η€ þ ðC  SðRT0 μÞÞη_ þK η ¼ 0: The stability of this type of a system has been analyzed extensively. The theorem by Kelvin–Tait–Chatayev [14] is the most relevant in our context. Theorem 4.4 (Kelvin–Tait–Chetaev). The origin of the system ðη; η_ Þ ¼ ð0; 0Þ is

 asymptotically stable if both K and C are positive definite,  unstable if K is not positive definite and C is positive definite. Remark 4.5. It has been shown by Zajac [32] that the number of positive eigenvalues of Ad is equal to the number of negative eigenvalues of K. Recall that to come to a conclusion about the stability or instability of an equilibrium point of the original system by linearization, we need the equilibrium point to be hyperbolic. Even though Theorem 4.4 asserts that the system (20) is unstable when K is not positive definite and C is positive definite, the possibility of zero or purely imaginary eigenvalues is not ruled out. We resolve this in the following result. Proposition 4.6. If K is nonsingular, Ad does not have zero or purely imaginary eigenvalues. Proof. We first show that a matrix of the kind of Ad, with I s ; C 4 0 and K symmetric cannot have purely imaginary eigenvalues. Suppose it does. Consider the linear system (20), which is of the form x_ ¼ Ad x;

Proof. Consider the linearization of Xd at the equilibria. Because of the nature of the Hessian of V according to Assumption 3.3, it follows from Proposition 4.2 that the matrix K appearing in the linearization is positive definite at ðRd ; 0Þ and not positive definite and nonsingular at the other equilibria. Thus, it follows from Theorem 4.4 that the linearized dynamics at ðRd ; 0Þ is asymptotically stable and hence the vector field Xd is locally asymptotically stable at ðRd ; 0Þ. Since K is not positive definite and nonsingular at the other equilibria, from Theorem 4.4 it follows that the linearized dynamics at these equilibria is unstable, which are also hyperbolic from Proposition 4.6. Thus Xd is unstable at these equilibria. To analyze global behaviour, consider the function H defined in (13). It can be shown that H_ ¼  ðI s 1 Π ÞT CI s 1 Π r 0. The largest invariant set where H_ vanishes contains only the equilibrium points. Even though the domain of our interest, namely SOð3Þ  R3 , is not compact, all arguments leading to the LaSalle's invariance theorem ([6, Theorem 6.19]) are applicable here. This is because, the compactness assumption in LaSalle's principle is required to ensure that H is bounded from below and in our case, H as defined in Eq. (13) is clearly bounded from below since I s 4 0 and V is bounded from below. Thus, the trajectories of the system starting at every point of SOð3Þ  R3 tend to one of the equilibrium points. The linearization at the unstable equilibria of Xd have lowerdimensional stable manifolds. By the global stable manifold theorem ([15, Theorem 6.17]), it follows that the stable manifolds of the unstable equilibria are smooth immersions in SOð3Þ  R3 of the stable manifolds of the linearized system. Thus, the region of attraction of the unstable equilibria is lower dimensional immersed submanifolds of SOð3Þ  R3 . From the LaSalle's analysis above, all points but those in the union of these immersed submanifolds converge to ðRd ; 0Þ. This proves the result. □ Thus, AGAS with internal actuation depends crucially on the nature of the Hessian of V at the critical points, just the same way that the external actuation depended on it. Comparing with Theorem 3.4, we are now ready to state the main result: Theorem 4.8. Suppose V : SOð3Þ⟶R satisfies Assumption 3.3. Then,

 The control law of the form uext ðR; Π Þ ¼  CI  1 Π  pðT ne LR dVðRÞÞ



almost globally satisfies the equilibrium point ðRd ; 0Þ for the externally actuated system (4) and (5). The control law of the form uint ðR; Π Þ ¼ CI s 1 Π þpðT ne LR dVðRÞÞ

50

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

almost globally satisfies the equilibrium point ðRd ; 0Þ for the internally actuated system (10) and (11). Note that even though the term Π represents different physical quantities for external and internal actuation, the terms I  1 Π for external actuation and I s 1 Π in case of internal actuation represent the same physical quantity, namely the body angular velocity of the rigid body.

function using a pair of vector observations which satisfies Assumption 3.3, thus yielding an almost globally stabilizing feedback around ðe; 0Þ. The resulting feedback control law only involves the observed vectors, thus avoiding the need for explicitly computing the orientation matrix R. Given any P A symð3  3Þ, the set of 3  3 symmetric matrices, the modified trace function trmP : SOð3Þ⟶R is defined as trmP ðRÞ ¼ trðPRÞ:

ð21Þ

In [9], the authors prove the following result. 4.4. Discussion Note that the Eqs. (8) and (9), corresponding to stabilization with external torques can also be linearized in the same way, giving a linear mechanical system without the gyroscopic term. It is thus interesting to note that the use of exponential coordinates for linearization is crucial in obtaining linear mechanical systems both in the case of external and internal actuations. We emphasize here that Theorem 4.8 does not imply that if any externally applied feedback control torque can stabilize an equilibrium, then the negative of the same torque can achieve this when applied internally and vice versa. For example, consider the following control law: uðRÞ ¼ CI s 1 Π  k1  RT k2  k2  RT k3  k3  RT k1 : If we take k1 ; k2 and k3 to be the unit vectors along (1 0 1), (  1 0 0) and (  1 1 0) respectively and C ¼ id33 ; I s ¼ id33 , this control law locally asymptotically stabilizes around (e, 0) with internal actuation for μ ¼ ð0 0  1Þ. However, if the torque  uðRÞ is applied externally, the point (e, 0) becomes unstable. Both of these statements can be verified by linearization. It will be hence interesting to look for a classification of the control laws for which Theorem 4.8 holds.

5. A potential function from a pair of vector observations In the analysis so far, we have shown that the same potential can be used for constructing stabilizing control laws for both external and internal actuation cases. We now show how we can build a stabilizing potential using vector observations alone. This leads us to the modified trace functions [17,6,21], proposed by Chillingworth et al. [9], which were used in the context of rigid body stabilization by Koditschek [17]. In Section 5.1, we show how modified trace functions and vector observations can be related. In Section 5.2, we derive the control law for stabilization around an arbitrary orientation using a modified trace function built using two vector observations and demonstrate the properties of the control law. While it is true that two vector observations are the minimum required, it is not true that more vector observations will always lead to a better behaviour of the control law. We comment on this aspect in Section 5.3. 5.1. Vector observations and modified trace functions The technique of vector observations is often used to estimate the attitude of the rigid body for the purpose of feedback control (see for example [31,20,27]). Suppose that k A R3 is the observed direction vector of an external point, expressed in the inertial coordinates. We assume that the point is at rest in the inertial frame and hence k_ ¼ 0. If R is the attitude matrix of the rigid body, then b≔RT k is the direction vector of the same point expressed in the rigid body frame, as the rigid body rotates. Two such vector observations completely determine the attitude matrix R (see for example [30]). We now show how to construct a potential

Lemma 5.1 (Chillingworth et al. [9]). If P is a symmetric3  3 matrix with distinct eigenvalues π 1 ; π 2 ; π 3 and if ðπ 1 þ π 2 Þðπ 2 þ π 3 Þðπ 3 þ π 1 Þ a0; then there are exactly four critical points of trmP . It is shown in [6] that these critical points are precisely e; expðπ f^ 1 Þ; expðπ f^ 2 Þ; expðπ f^ 3 Þ; where f 1 ; f 2 ; f 3 are the (distinct) unit eigenvectors of P. Note that f 1 ; f 2 ; f 3 can be chosen to be orthonormal since P is symmetric. It further holds [17,6] that P can be chosen such that the Hessian of trmP is positive definite at e and has negative eigenvalues but nonsingular at the other critical points, thus satisfying the conditions of assumption 3.3, thus qualifying trmP for an almost globally stabilizing potential. Remark 5.2. If P ¼ I 33 , then the modified trace function is the ordinary trace functions and the set of critical points of this function is diffeomorphic to S2, the two-sphere. Thus, the derivative of the potential function around this set of equilibria is ‘small’ and hence results in a weak control torque. This leads to an unsatisfactory behaviour near every 1801 rotation, as noted in the literature (see for example [18]). The modified trace functions do not suffer from this limitation since they have only four isolated equilibria. Define the potential function which depends on a pair of vector observations, VðRÞ ¼  k1  RT k1  k2  RT k2 : Note that V can also be written as VðRÞ ¼  k1  SymðRÞk1 k2  SymðRÞk2 ;

ð22Þ

T

where SymðRÞ ¼ 1=2ðR þR Þ. Potential functions of the form VðRÞ ¼ k  RT k have been used in the literature before in the context of stabilization of relative equilibria (see for example [19]). Note that VðRÞ ¼ k  RT k can also be thought of as the potential due to gravity (upto a scaling) of a spinning top. It is well known that the spinning about the vertical upright position is a stable relative equilibrium if the spin velocity satisfies a given condition [23]. However, this potential cannot assure total stability because of the degeneracy of the Hessian at e. We show now that the function (22), with two vector observations, is a modified trace function if we choose k1 and k2 appropriately, which can be used for total stabilization. Proposition 5.3. If k1 ; k2 A R3 are linearly independent unit vectors which are not orthonormal, then there exists a P A symð3  3Þ such that VðRÞ ¼  k1  SymðRÞk1 k2  SymðRÞk2 ¼  trðPRÞ; where P is diagonalizable to diagða1 ; a2 ; 0Þ, a1 ; a2 4 0. Proof. Let c1 ¼ J k1 þ k2 J ; c2 ¼ J k1 k2 J . Since k1 and k2 are not orthonormal, c1 ac2 and both of them are nonzero. Define l1 ¼ 1=c1 ðk1 þ k2 Þ; l2 ¼ 1=c2 ðk1  k2 Þ, which are orthonormal. It can

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

be shown that VðRÞ ¼ 

c21 2

l1  SymðRÞl1 

c22 2

l2  SymðRÞl2 :

Suppose l3 is such that l1 ; l2 ; l3 form an orthonormal basis in R3 . Then, there exists S A SOð3Þ such that li ¼ Sei ;

i ¼ 1; …; 3;

51

By differentiating, we get d  1 k1  SymðR exp t η^ RTd Þk1 ¼ k1  ðRd ð  η^ ÞRT þ Rη^ RTd Þk1  dt t ¼ 0 2 1 T T T ^ ^ ¼ ð  Rd k1  η R k1 þ R k1  η RTd k1 Þ ¼ ðRTd k1  RT k1 Þ  η: 2 Thus, 2

pðT ne LR dV Rd ðRÞÞ  η ¼  ∑ ðRTd ki  RT ki Þ  η;

where ei is the canonical basis. Thus, we get VðRÞ ¼ 

c21 c2 c2 c2 Se1  RSe1  2 Se2  RSe2 ¼  1 e1  ST RSe1  2 e2  ST RSe2 : 2 2 2 2

from which we get pðT ne LR dV Rd ðRÞÞ ¼  RTd k1  RT k1  RTd k2  RT k2 :

Define the matrix D ¼ diagðc21 =2; c22 =2; 0Þ, so that T

i¼1

ð24Þ

Clearly, this control law also depends only on vector observations.

T

VðRÞ ¼  trðDS RSÞ ¼  trðSDS RÞ: T

It is clear that P ¼ SDS is a symmetric (positive semidefinite) matrix and hence the result follows. □ Thus, V is a modified trace function. The eigenvalues of the matrix SDST are c21 =2; c22 =2; 0 and satisfy the condition specified by Lemma 5.1 and thus V satisfies all the conditions of Assumption 3.3. These functions can be used to derive control laws to stabilize around ðe; 0Þ. Our next aim is to develop a control law that depends only on vector observations and that can stabilize around ðRd ; 0Þ, where Rd A SOð3Þ is arbitrary, using the properties of modified trace functions. 5.2. Stabilization around arbitrary orientation using vector observations

where φ1 : R3 ⟶SOð3Þ defined according to Eq. (16) so that φ1 ð0Þ ¼ Rd . That is,

φ1 ≔LRd ○ exp ○S: From Eq. (24), we get

Define the function V Rd : SOð3Þ⟶R as V Rd ðRÞ ¼  k1  SymðRRTd Þk1 k2  SymðRRTd Þk2 ;

5.2.3. Definiteness of the Hessian Since V Rd is a pullback of a modified trace function but not a modified trace function in itself, the definiteness of the Hessian cannot be concluded from Lemma 5.1. Therefore now we proceed to analyze the nature of the Hessian using Lemma 4.3. Let us begin with analyzing the Hessian at Rd. From Lemma 4.3, we have d δ2 V~ Rd ð0Þη ¼  pðT ne Lφ1 ðtηÞ dV Rd jφ1 ðtηÞ Þ; dt t ¼ 0

2

ð23Þ

where k1 and k2 satisfy assumptions of Proposition 5.3. Thus there exists P A symð3  3Þ such that V Rd ¼  trmP ðRRTd Þ, by virtue of proposition 5.3. It is clear that V Rd ¼  trmP ○χ where χ : SOð3Þ⟶SOð3Þ is given by χ ðQ Þ ¼ QRTd for all Q A SOð3Þ.

pðT ne Lφ1 ðt ηÞ dV Rd ðφ1 ðt ηÞÞÞ ¼  ∑ RTd ki  ðφ1 ðt ηÞÞT ki i¼1

Thus, d δ2 V~ Rd ð0Þη ¼   dt

¼

5.2.1. Critical points Suppose Rc A SOð3Þ is a critical point of V Rd . Thus,

Rc A fRd ; ðexpðπ f^ 1 ÞÞRd ; ðexpðπ f^ 2 ÞÞRd ; ðexpðπ f^ 3 ÞÞRd g:

2 d  ∑ RT k  ðRd expðt η^ ÞÞT ki  dt t ¼ 0 i ¼ 1 d i 2

2

i¼1

i¼1

¼  ∑ RTd ki  ð  η^ ÞRTd ki ¼  ∑ SðRTd ki ÞSðRTd ki Þη:

0 ¼ dV Rd ðRc Þ ¼  d trmP ðχ ðRc ÞÞ○Dχ ðRc Þ: Since χ is a diffeomorphism, dV Rd ðRc Þ ¼ 0 implies d trmP ðχ ðRc ÞÞ ¼ 0. Hence, χ ðRc Þ ¼ Rc RTd A fe; expðπ f^ 1 Þ; expðπ f^ 2 Þ; expðπ f^ 3 Þg, where f 1 ; f 2 ; f 3 are eigenvectors of P. Thus,

2

∑ RTd ki  ðφ1 ðt ηÞÞT ki

t ¼ 0i ¼ 1

Thus, 2

δ2 V~ Rd ð0Þ ¼  ∑ SðRTd ki ÞSðRTd ki Þ; i¼1

5.2.2. Control law We now find the expression for the proportional part of the control law determined by V Rd , which is

which is positive definite. Next let us determine the nature of the Hessian at the critical point ðexpðπ f^ 1 ÞÞRd . First of all, it follows that l1 ; l2 ; l3 as defined in Proposition 5.3 are eigenvectors of P. Thus, we take f 1 ¼ l1 ; f 2 ¼ l2 ; f 3 ¼ l3 . Since k1 ; k2 are unit vectors, it follows that

uprop ðRÞ ¼ pðT ne LR dVðRÞÞ:

ðexpðπ ^l 1 ÞÞk1 ¼ k2 ;

By (1), for any η A R , we have

Next we choose

pðT e LR dV Rd ðRÞÞ  η ¼ 〈T e LR dV Rd ðRÞ; η^ 〉:

φ1 ≔Lðexpðπl^1 ÞÞRd ○ exp ○S:

Now,

Proceeding as before, we get 2 d δ2 V~ Rd ð0Þη ¼   ∑ RTd ki  ððexpðπ ^l 1 ÞÞRd expðt η^ ÞÞT ki dt t ¼ 0 i ¼ 1 2 d  ¼  ∑ RTd ki  expð  t η^ ÞRTd expð  π ^l 1 Þki dt t ¼ 0 i ¼ 1

3

n

n

〈T e LR dV Rd ðRÞ; η^ 〉 ¼ 〈dV Rd ðRÞ; Rη^ 〉 d  ¼  V R ðR exp t η^ Þ dt t ¼ 0 d  2 d ∑ ki  SymðR exp t η^ RTd Þki ¼  dt t ¼ 0 i ¼ 1 n

We carry out the computations for the term k1  SymðRd RT Þk1 in (23) of V Rd . First of all note that k1  SymðR exp t η^ RTd Þk1 ¼ 12 k1  ðRd expð  t η^ ÞRT þR expðt η^ ÞRTd Þk1 :

ðexpðπ ^l 1 ÞÞk2 ¼ k1 :

¼  RTd k1  ð  η^ ÞRTd k2 þ RTd k2  ð  η^ ÞRTd k1 ¼ SðRTd k1 ÞSðRTd k2 Þη þ SðRTd k2 ÞSðRTd k1 Þη: 2 With this, δ V~ Rd ð0Þ turns out to be indefinite. It follows that ðexpðπ ^l 2 ÞÞk1 ¼  k2 ; ðexpðπ ^l 2 ÞÞk2 ¼  k1 ; ðexp ^ ðπ l 3 ÞÞ k1 ¼  k1 ; ðexpðπ ^l 3 ÞÞk2 ¼ k2 . Using this, it can be shown

52

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

that the Hessian is indefinite at ðexpðπ ^l 2 ÞÞRd and negative definite at ðexpðπ ^l 3 ÞÞRd . With this analysis and using Theorem 4.8, we summarize the construction of the feedback control law in the following result. Proposition 5.4. The feedback control torque uint ðR; Π Þ ¼ CI s 1 Π  RTd k1  RT k1  RTd k2  RT k2

ð25Þ

almost globally stabilizes the system (10) and (11) around the equilibrium ðRd ; 0Þ. Remark 5.5. If k1 and k2 are orthonormal, then it follows that c1 ; c2 as defined above are equal. In such cases, the critical points of V are all the rotations around the axis k1  k2 . See [6], proposition 11.31 for details. In this case, we can define the potential function as VðRÞ ¼  k1  SymðRÞk1  ck2  SymðRÞk2 ; where R 3 c 4 0; c a 1. This function satisfies the conditions of Assumption 3.3. Remark 5.6. In [8], for stabilizing a rigid body by external actuation, the authors consider a control law of the form 3

u1 ðRÞ ¼ ∑ ai ei  RTd Rei ; i¼1

where ai ; i ¼ 1; …; 3 are distinct positive real numbers. The modified trace function trmP ðRÞ ¼ trðPRTd RÞ; where P ¼ diagða1 ; a2 ; a3 Þ, will yield the following control law:

i¼1

It can be shown that both of these control laws have the same stabilizing properties. 5.3. Using multiple vector observations for stabilization In [29], the authors consider a control law based on multiple vector observations. If we denote n vectors by ki A R3 ; i ¼ 1; …; n, the proportional part of the control law proposed by the authors, expressed in our notation is n

uprop ¼ ∑ ki  RT ki : i¼1

In this section, we show that caution must be exercised while choosing the vectors ki, since there is a possibility that the points R A SOð3Þ such that uprop ¼ 0 might be a continuum (as opposed to a set of isolated points) and hence the resulting control law will lead to continuum of equilibria. It is clear that the potential function from which this control law can be derived is n

VðRÞ ¼ ∑ ki  SymðRÞki : i¼1

Let ei ; ¼ 1; …; 3 be an orthonormal frame. Let αij i ¼ 1; …; n; j ¼ 1; …; 3 be scalar such that ki ¼ ∑3j ¼ 1 αij ej . Thus, " ! !# n

3

∑ αij ej

VðRÞ ¼ ∑

i¼1

j¼1 3

R

3

∑ αik ek

k¼1

3

¼ ∑ ∑ ∑ αij αik ej  Rek : i¼1j¼1k¼1

It can be seen that ej  Rek ¼ trðP jk RÞ, where Pjk is the 3  3 matrix with 1 at the ðk; jÞth entry and zero otherwise. Thus we can write ! ! n

n

3

3

P≔ ∑ ∑ ∑ αij αik P jk i¼1j¼1k¼1

is symmetric and hence V is indeed a modified trace function. However, for arbitrary choices of ki, one cannot be assured that the eigenvalues of P satisfy the conditions of Lemma 5.1. If P has repeated eigenvalues, then V has a continuum of critical points [6, Proposition 11.31]. Depending upon whether a pair or all of the eigenvalues are identical, this continuum is diffeomorphic to the circle S1 or the sphere S2 respectively. For example, if n¼ 2 with k1 and k2 orthonormal, then the set of critical points of V is diffeomorphic to S1, whereas if n¼ 3 and if the ki's are orthonormal, then the set of critical points is diffeomorphic to S2. This fact therefore calls for a judicious choice of ki and we have shown in this section that two vector observations chosen suitably are sufficient to get the best possible outcome, namely four isolated equilibria. It will however be interesting to further investigate the merits of multiple vector observations in the context of sensor and environmental noise and to get a guideline in choosing the vectors ki so that the resulting modified trace function has only four isolated equilibria. Further, since P is symmetric, it is diagonalizable by an orthonormal frame of eigenvectors. If we denote these by f 1 ; f 2 ; f 3 and a1 ; a2 ; a3 are the corresponding diagonal elements, then 3

VðRÞ ¼ ∑ ai f i  SymðRÞf i : i¼1

3

u2 ðRÞ ¼  ∑ ai ei  RT Rd ei :

n

It can be shown that the matrix

3

3

VðRÞ ¼ ∑ ∑ ∑ αij αik trðP jk RÞ ¼ tr i¼1j¼1k¼1

n

3

3

∑ ∑ ∑ αij αik P jk R :

i¼1j¼1k¼1

Thus, in principle, a control law derived using any number of vector observations for n Z 3 can be realized with three orthogonal vector observations.

6. Angular velocity estimation from rates of vector observations In the previous section, we derived the proportional part of the stabilizing control law using two vector observations. However, the rigid body angular velocity estimation is still needed. In a typical spacecraft application, the angular velocity is estimated using the inertial navigation system. However, in the paper [10], the author proposes a method of estimating the body angular velocity based on successive vector observations. In the paper [1], the authors make the direct use of the rate of the observed vector in the feedback torque for detumbling (bringing the rigid body to rest, irrespective of the orientation) a spacecraft. We adapt these ideas to our setting and show how angular velocity can be estimated in closed form, assuming that along with the two vector observations, accurate rates of change of the observed vectors are also available. Let, as in Section 5, k1 and k2 be two linearly independent vectors, not orthonormal to each other. Define b1 ≔RT k1 ;

b2 ≔RT k2 :

Now, it follows that b_ 1 ¼ b1  Ω, where Ω is the body angular velocity of the rigid body. Recall that Ω ¼ I s 1 Π or Ω ¼ I  1 Π depending on whether the actuation is internal or external. Now, we have the following formula for Ω using the rate of vector observations. Proposition 6.1. The following identity holds:   1 T 1 T 1 T Ω¼ l1 l1 þ l2 l2 þ l3 l3 ðb1  b_ 1 þ b2  b_ 2 Þ;

λ1

λ2

λ3

ð26Þ

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

53

where l1 ¼

b1 þ b2 ; J b1 þ b2 J

l2 ¼

b1  b2 ; J b1  b2 J

l3 ¼

b1  b2 ; J b1  b2 J

and λ1 ¼  1 þ k1  k2 ; λ2 ¼  ð1 þ k1  k2 Þ, and λ3 ¼  2. Proof. We have b b b b b b1  b_ 1 þ b2  b_ 2 ¼ b1  ðb1  b_ 1 Þ þ b2  ðb2  b_ 2 Þ ¼ ðb 1 1 þ b 2 b 2 ÞΩ:

b b b b b Let us denote D≔b 1 1 þ b 2 b 2 . Under the assumed conditions on k1 and k2, it follows that D is negative definite. Since D is symmetric, it has an orthonormal frame of eigenvectors l1 ; l2 and l3. If λ1 ; λ2 and λ3 are the corresponding eigenvalues, then D ¼ λ1 l1 l1 þ λ2 l2 l2 þ λ3 l3 l3 : T

T

T

It can be seen that the eigenvectors of D are l1 ¼

b1 þ b2 ; J b1 þ b2 J

l2 ¼

b1  b2 ; J b1  b2 J

l3 ¼

b1  b2 ; J b1  b2 J

Fig. 1. Error norm of R and the rigid body angular velocity Ω.

with eigenvalues λ1 ¼  1 þ k1  k2 ; λ2 ¼  ð1 þ k1  k2 Þ, and λ3 ¼  2 respectively. Thus the expression (26) holds. □ Remark 6.2. Note that at least two body rates are required to determine the angular velocity. If only one such body vector rate is available, as we have mentioned in the beginning of this section, it is still possible to directly use this in the feedback torque for detumbling [1]. In our case, instead of estimating Ω as in Eq. (26), we can directly use the term  b1  b_ 1  b2  b_ 2 ¼  DΩ in the feedback torque u, instead of C Ω. Note however that the matrix D is actually a function of R; that is, DðRÞ ¼ SðRT k1 ÞSðRT k1 Þ þSðRT k2 ÞSðRT k2 Þ; Since D(R) is negative definite for every R A SOð3Þ, if we use the damping  b1  b_ 1  b2  b_ 2 , all the arguments leading to Theorem 4.7 hold and we still have AGAS of the required equilibrium point. However, the resulting closed system exhibits oscillatory behaviour during convergence, which is undesired. It will be interesting to look for alternate ways of directly using the body rate information while avoiding oscillatory behaviour.

Fig. 2. Torque in Nm applied at the three rotors.

7. Simulation results In this section we present simulation results for the stabilization with internal rotors, for the following control law: uðR; Π Þ ¼ CI s 1 Π  RTd e1  RT e1  cRTd e2  RT e2 : The proportional part of this control, as we discussed in Section 5, comes from the modified trace function TP, where P ¼ diagðc1 ; c2 ; 0Þ. We choose the model parameters I ¼ diagð40; 45; 42:5Þ kg m2 , I r ¼ diagð0:01; 0:01; 0:01Þ kg m2 and the control parameters C ¼ 10I 33 , c¼ 1.2. The simulation is carried out for the case when Rd ¼ Rx ðπ =6ÞRy ðπ =8ÞRz ð5π =12Þ; R0 ¼ e and μ ¼ ð1; 1:5;  2Þ. Fig. 1 plots the error norm of R against Rd and the rigid body body angular velocity, which shows asymptotic convergence to the desired value. Fig. 2 shows the torque applied at the rotors. Fig. 3 shows the angular velocity of the three rotors, indicating that the inertial angular momentum is absorbed at the rotors.

8. Conclusion We showed that if an externally applied control torque derived from a potential can stabilize a desired equilibrium, then the negative of the same torque applied internally through rotors can

Fig. 3. Angular velocity in RPM of the three rotors.

stabilize the same equilibrium. We showed that a potential function can be constructed from two vector observations, which can be used to derive an almost globally stabilizing feedback, which ultimately leads to the modified trace function. We also derived a closed form expression for the body angular velocity using rates of the two vector observations, ultimately making it possible to achieve almost global stability in the absence of an inertial navigation system.

54

R. Bayadi, R.N. Banavar / European Journal of Control 20 (2014) 45–54

Acknowledgements The authors wish to thank the anonymous reviewers for their valuable suggestions that have helped improve the presentation and the content of the paper. The work towards this paper was partially sponsored through a research project of the Indian Space Research Organization, administered through the IITB-ISRO Cell.

[3]

[4] [5]

[6]

Appendix A. Equations of motion of a rigid body with rotors

[7]

The configuration space of a rigid body with three rotors is SOð3Þ  T3 . Using Euler–Poincare method [23], it can be shown that the equations of motion on the tangent bundle TðSOð3Þ  T3 Þ for a rigid body with rotors is given by

[8]

^ ; R_ ¼ RΩ b _ _ ¼ ðI Ω þ I Ω Þ  Ω ; IL Ω b þ Ir Ω r r r L b b _ _ I Ω þ I Ω ¼ u; r

b

r

[9]

[10] [11]

r

Θ_ ¼ Ωr

[12]

where IL is the ‘locked’ moment of inertia matrix of the rigid body along with the rotors, Ir the moment of inertia matrix of the rotors, Ωb and Ωr are the rigid body and rotor angular velocity both in the body frame of the rigid body, Θ is the three-tuple of rotor angles and u is the applied control torque. Note that the term I L Ωb þ I r Ωr represents the total angular momentum of the system and hence I L Ωb þI r Ωr ¼ RT μ, where μ is the conserved value of the angular momentum. Using this, subtracting the third equation from the second gives

[13] [14] [15] [16] [17] [18] [19] [20]

_ ¼ RT μ  Ω u: ðI L  I r ÞΩ b b

[21]

Define I s ¼ I L  I r and Π ¼ I s Ωb . With this, the governing equations can be written as

[22]

R_ ¼ RSðI s 1 Π Þ;

ðA:1Þ

[23]

Π_ ¼ RT μ  I s 1 Π  u;

ðA:2Þ

Θ_ ¼ Ωr :

ðA:3Þ

[25]

These equations have appeared in the literature earlier (see for example [11]). We have shown in [2] the uncontrolled version of the above equations are nothing but the push-forward of the Hamiltonian on T n ðSOð3Þ  T3 Þ onto SOð3Þ  T n T3 , which is the level set of the angular momentum function.

[26]

References [1] G. Avanzini, F. Giuletti, Magnetic detumbling of a rigid spacecraft, J. Guidance Control Dyn. 35 (4) (2012) 1326–1334. [2] R. Bayadi, R.N. Banavar, Weak positive Poisson stability and Hamiltonian vector fields in mechanical systems, in: Proceedings of the 4th IFAC Workshop

[24]

[27] [28] [29]

[30] [31] [32]

on Lagrangian and Hamiltonian Methods for Nonlinear Control, Bertinoro, Italy, 2012. R. Bayadi, R.N. Banavar, Almost global attitude stabilization of a rigid body for both internal and external actuation schemes, in: Proceedings of the European Control Conference 2013, Zurich, Switzerland, 2013. R. Bellman, Introduction to Matrix Analysis, 2nd edition, SIAM, 1987. S.P. Bhat, D. Bernstein, A topological obstruction to continuous global stabilization of rotational motion and the unwinding phenomenon, Syst. Control Lett. 39 (1) (2000) 66–73. F. Bullo, A.D. Lewis, Geometric Control of Mechanical Systems, Springer-Verlag, New York, 2005. D. Cabecinhas, R. Cunha, C. Silvestre, Output-feedback control for almost global stabilization of fully-actuated rigid bodies, in: Proceedings of the IEEE Conference on Decision and Control, 2008, pp. 3583–3588. N. Chaturvedi, A.K. Sanyal, N.H. McClamroch, Rigid-body attitude control: using rotational matrices for continuous, singularity-free control laws, in: IEEE Control Systems Magazine, June 2011, pp. 30–51. D.J.R. Chillingworth, J.E. Marsden, Y.H. Wan, Symmetry and bifurcation in three-dimensional elasticity. Part I, Arch. Ration. Mech. Anal. 80 (4) (1982) 295–331. J.L. Crassidis, Angular velocity determination directly from star tracker measurements, J. Guidance Control Dyn. 25 (6) (2002) 1165–1168. P. Crouch, Spacecraft attitude control and stabilization: applications of geometric control theory to rigid body models, IEEE Trans. Autom. Control 29 (1984) 321–331. M.W. Hirsh, S. Smale, R.L. Devaney, Differential Equations, Dynamical Systems and an Introduction to Chaos, Elsevier Academic Press, 2004. D.D. Holm, T. Schmah, C. Stoica, Geometric Mechanics and Symmetry: From Finite to Infinite Dimensions, Oxford University Press, 2009. P. C Hughes, Spacecraft Attitude Dynamics, Wiley, New York, 1986. M.C. Irwin, Smooth Dynamical Systems, World Scientific, 2001. M.H. Kaplan, Modern Spacecraft Dynamics and Control, Wiley, 1976. D.E. Koditschek, The application of total energy as a Lyapunov function for mechanical control systems, Contemp. Math. 97 (1989) 131–157. T. Lee, Exponential stability of an attitude control system on SO(3) for largeangle rotational maneuvers, Syst. Control Lett. 61 (2012) 231–237. N.E. Leonard, Stabilization of underwater vehicle dynamics with symmetrybreaking potentials, Systems Control Lett. 32 (1997) 35–42. G.M. Lerner, Three-axis attitude determination, in: J.R. Wertz (Ed.), Spacecraft Attitude Determination and Control, 1978, pp. 420–428. D. Maithripala, J. Berg, W. Dayawansa, Almost global tracking of simple mechanical systems on a general class of Lie groups, IEEE Trans. Autom. Control 51 (1) (2006) 216–225. J.E. Marsden, Lectures on Mechanics, 2nd edition, Cambridge University Press, 1992. J.E. Marsden, T.S. Ratiu, Introduction to Mechanics and Symmetry, 2nd edition, Springer, 1999. T.H. Merker, M.R. Akella, Rigid-body attitude tracking with vector measurements and unknown gyro bias, J. Guidance Control Dyn. 34 (5) (2012) 1474–1484. S. Nair, N.E. Leonard, Stable synchronization of mechanical system networks, SIAM J. Control Optim. 47 (2) (2008) 661–683. H. Schaub, J. Junkins, Analytical Mechanics of Space Systems, AIAA Educational Series, 2009. M.D. Shuster, S.D. Oh, Three axis attitude determination from vector observations, AIAA J. Guidance Control 4 (1981) 70–77. M. Sidi, Spacecraft Dynamics and Control: A Practical Engineering Approach, Cambridge University Press, New York, 1997. A. Tayebi, A. Roberts, A. Benallegue, Inertial vector measurements based velocity-free attitude stabilization, IEEE Trans. Autom. Control, doi: http:// dx.doi.org/10.1109/TAC.2013.2256689. J.R. Wertz, Spacecraft Attitude Determination and Control, Kluwer Academic Publishers, 1978. G. Wahba, Problem 65-1: a least squares estimate of satellite attitude, SIAM Rev. 7 (3) (1965) 409. E.E. Zajac, Capture problem in gravitational attitude control of satellites, American Rocket Society Journal 31 (10) (1961) 1464–1466.