Academia.eduAcademia.edu

A semi-analytic approach to spacecraft attitude guidance

Attitude slew motions for spacecraft are usually undertaken using feedback control where only the desired final attitude is stated. In this paper attitude guidance is considered which could be used, in addition to feedback control, to enhance the efficiency of slew motions by pre-planning time-dependent attitude motions. This is achieved using a three-step method in which the angular velocities are expressed as analytic functions in terms of free parameters (on the virtual time domain), and the boundary conditions on the rotation are matched using a shooting method based on a discretized form of Rodrigue's formula. Following this, the virtual time is reparametrized. This is applied to design a rest-to-rest two-impulse slew manoeuver and a slew motion using only two reaction wheels.

2017 25th Mediterranean Conference on Control and Automation (MED) July 3-6, 2017. Valletta, Malta A semi-analytic approach to spacecraft attitude guidance ⋆ Helen C. Henningera , a James D. Biggsa , Dipartimento di Scienze e Tecnologie Aerospaziale, Politecnico di Milano, Via La Masa 34 - 20156 Milano, Italy Abstract - Attitude slew motions for spacecraft are usually undertaken using feedback control where only the desired final attitude is stated. In this paper attitude guidance is considered which could be used, in addition to feedback control, to enhance the efficiency of slew motions by pre-planning timedependent attitude motions. This is achieved using a threestep method in which the angular velocities are expressed as analytic functions in terms of free parameters (on the virtual time domain), and the boundary conditions on the rotation are matched using a shooting method based on a discretized form of Rodrigue’s formula. Following this, the virtual time is reparametrized. This is applied to design a rest-to-rest twoimpulse slew manoeuver and a slew motion using only two reaction wheels. Index terms: Attitude control; spacecraft; algebraic and geometric methods and not the entire time-dependent motion during the manoeuvre. Although such proportional-type controls are robust and commonly used on board spacecraft they are not optimal and do not account for actuator faults. In this paper, the use of attitude guidance to pre-plan an efficient motion is considered which can then be tracked to enhance the efficiency of the slew manoeuvre. In this paper, a general semi-analytical method is presented that defines the angular velocities of the spacecraft in the body frame in terms of a number of free parameters that can be selected numerically to match boundary conditions and minimize prescribed cost functions. In our examples numerical shooting with different values of these parameters is used to match the boundary conditions on the rotation. Due to the analytical description of the angular velocities, timeparameterization can be used to ensure that the motion is dynamically feasible and potentially further minimize a pre1 I NTRODUCTION scribed cost function. The method is used to design an efficient rest-to-rest slew motion for a nano-spacecraft using only two This paper is motivated by the prospect of using small spaceimpulses; one delivered by a thruster at the beginning of the craft to replace much larger spacecraft to undertake Earth motion to initialize it and one at the end to bring it to rest observation and space science missions. In particular, nanowhen it arrives naturally at its desired attitude. The method spacecraft (1-10kg) are being considered to significantly reitself is able to calculate the initial and final impulsive torque duce launch costs. However, with any significant reduction required to exactly perform the motion efficiently. In addiin size of a spacecraft there is usually a significant reduction, the method is used to design a slew motion using only tion in capability. For example, the attitude control of nanotwo reaction wheels. In this case the angular velocities are spacecraft is challenging as they have much harder constraints analytically defined in terms of several parameters by solvin terms of fuel usage, either when thrusters are used to coning a non-holonomic optimal kinematic control problem. The trol the attitude directly or when they are used to de-saturate boundary conditions are then satisfied by numerical shooting reaction wheels in deep-space missions. Furthermore, their acof these parameters. tuators are far more likely to fail since the dogma of reliabilityWhile the applications considered here consider spacecraft atbased design on large spacecraft is relaxed in favour of effititude guidance, this method could be applied to several other ciency design. systems with constraints defined on matrix Lie groups, for exIn the case of attitude slewing, spacecraft use feedback-control ample attitude pointing constraints [2], the wheeled robot with where the control is proportional to a prescribed error function sliding constraints [3], the planar Kirchhoff elastic rod held at between the current attitude of the spacecraft and the desired each end by a robotic gripper [4] and underwater vehicles [5]. attitude [1]. Furthermore, the implementation of these conThe dynamic equations of motion of a spacecraft controlled trollers usually only requires the specification of the final state ⋆ Corresponding author H. C. Henninger. Tel. +39 3420270338. Email Addresses: [email protected] (Helen C. Henninger), [email protected] (James D. Biggs) 1 978-1-5090-4533-4/17/$31.00 ©2017 IEEE 1231 By using basis functions on the angular velocities only and solving numerically for the curve R(t) in the group SO(3), the necessity of having to introduce co-ordinates such as Euler angles to express R(t) is avoided. Step B: The boundary conditions in (4) are matched by using numerical shooting. In [6], [7], [11] and [2] the corresponding rotations are derived analytically and the boundary conditions matched through numerical optimization. However, this requires a corresponding analytical solution R ∈ SO(3) which generally cannot be obtained. The shooting method will be used to determine the initial angular velocities ω 0 (in the case of natural motions) or λ0 (in the case of the optimal control problem). In order to do this, an initial guess for ω 0 (or λ0 ) is used to calculate the corresponding solution R(t). In our method, the numerical solution of (2) is determined using the discrete representation [12] (6) Ri+1 = Ri exp(Ωi h) by reaction wheels and thrusters can be represented by the equation J ω̇ = −ω × (Jω + h) − ḣ + d + u (1) where ω = [ω1 , ω2 , ω3 ]⊤ is the angular velocity vector in the body-fixed frame, J is the inertia tensor, h is the angular momentum vector of the reaction wheels, d denotes the disturbing torque and u is the external torque delivered by thrusters (impulsive in our examples). Expressing the attitude kinematics of the spacecraft on the Direct Cosine Matrix R(t) ∈ SO(3) where SO(3) is the special orthogonal group, the matrix Lie group consisting of the set of all orthogonal matrices of determinant 1, we have dR (t) = R(t) (ω1 (t)A1 + ω2 (t)A2 + ω3 (t)A3 ) dt (2) where R(t) ∈ SO(3), and ⎡ 0 A1 = ⎣ 0 −1 0 0 0 ⎤ ⎡ 1 0 0 ⎦ , A 2 = ⎣0 0 0 0 0 −1 ⎤ ⎡ 0 0 1 ⎦ , A 3 = ⎣1 0 0 −1 0 0 computed on the virtual time domain t ∈ [0, 1] where h is a chosen step-size, ti = h i and Ωi = ω1i A1 + ω2i A2 + ω3i A3 (7) ⎤ 0 0⎦ 0 (3) where ω1i , ω2i , ω3i are the analytic expression of the velocities evaluated at time ti . Solving equation (2) in the form of is the standard basis of the Lie algebra so(3). We develop a 3-step method which solves the attitude guid- equation (6) ensures R(t) satisfies the orthonormality property ance problem of determining the desired ω or h analytically for all t, which is not guaranteed when solving numerically and solving equations (2) numerically such that the boundary by Runge-Kutta schemes. In order to increase computational speed, rather than computing the exponential at every step, Roconditions (4) drigue’s formula is used, which gives an explicit expression for R(0) = R0 , R(tf ) = Rd the matrix exponential on the group SO(3) for constant time: (where R0 is the prescribed initial attitude and Rd the desired final attitude) are satisfied. Step A: The angular velocities are (8) Ri+1 = Ri (I + Ωi sin(h) + Ω2i (1 − cos(h))) expressed as functions of time and parameters that can be chosen to optimize a prescribed cost-function or match the bound- (h is equal to the angle of rotation about a fixed axis). This ary conditions (4). The analytical expressions for the angular rotation is then used to construct the shooting function (9) S(ω 0 ) = tr(I − R(1)Rd⊤ ), velocities can be described in a number of ways (i) Angular velocities that describe natural motions can be solved when which is zero when the boundary condition R(1) = Rd . We u = 0, h = 0, d = 0 (as in [6]) (ii) Analytically defined solve for this root using the iterative Newton’s method: set angular velocities that describe solutions to optimal kinematic ∆ = S(ω00 ) (where DS(ω 0 ) is the Jacobian of the shooting 0 i DS(ω 00 ) control problems on SO(3) ( [7], [2]). Moreover, kinematics function (9) which we compute numerically) for the starting of the form (2) with cost functions of the form guess ω 00 . The algorithm can be applied iteratively to obtain  tf S(ω 0n ) ω ⊤ Q ω dt (5) J= ω 0n+1 = ω 0n − 0 DS(ω 0n ) where Q is a positive-definite matrix have extremal equations for n = 1, 2, 3, ..... Step C: In our computations the time dothat are always integrable [8]. In our case we will choose Q main is scaled with respect to true final time so that time reto be a diagonal matrix Q = diag(c1 , c2 , c3 ) where ci are mains in the interval [0, 1]. This scaled time is denoted by t to weights. (iii) Where the angular velocities are expressed in differentiate it from the real time τ . A time-reparametrization terms  of some basis function such as a standard polynomial is used where F (·) : [0, Tf ] → [0, 1] is some continuous funcn ωi = j=0 aij tj or a Legendre polynomial. The aij are then tion of the true time τ , i.e. solved for by using a shooting method in order to meet the boundary conditions. The use of polynomials is not addressed t = F (τ ) (10) in this paper but will be a feature in future work. Polynomial functions have been used as basis functions in motion where a new rotation is then defined as R∗ (τ ) = R(F (τ )), interpolation problems in Euclidean space. However, the stan- provided the corresponding real angular velocity dard basis functions do not naturally parameterize SO(3) or dF (τ ) (11) ω ∗ (τ ) = ω(F (τ )) the quaternions due to the structure on these spaces [9], [10]. dτ 2 1232 satisfies the form of the equation (1) used in the problem. The final time Tf is then tuned to ensure a feasible motion, given the actuator constraints. This procedure is used to plan two different types of attitude motions. In section 2 a rest-to-rest slew motion using only two impulses is designed. Section 3 designs a rest-to-rest optimal slew motion using only two reaction wheels. 2 α11= α21= α31= β 1= m1 = T WO - IMPULSE REST- TO - REST SLEW MOTION = Id = exp( π4 A1 ) exp( π5 A2 ) exp( π2 A3 ) = 0, tf = 1.  M −2HJ3 sgn(ω10 ) J1 (J1 −J3 ) M −2HJ3  J2 (J2 −J3 ) 2HJ1 −M  J3 (J1 −J3 ) α12= sgn(q(ω 0 , J)) α22= sgn(ω30 ) α32= (2HJ1 −M )(J2 −J3 ) J1 J3 J2 (J1 −J2 )(M −2HJ3 ) (J2 −J3 )(2HJ1 −M ) β 2= m2 =  M −2HJ3  J1 (J1 −J3 ) 2HJ1 −M  J2 (J1 −J2 ) 2HJ1 −M  J3 (J1 −J3 ) sgn(ω10 ) sgn(q(ω 0 , J)) sgn(ω30 ) (M −2HJ3 )(J1 −J2 ) J 1 J3 J2 (J2 −J3 )(2HJ1 −M ) (J1 −J2 )(M −2HJ3 ) (17) ω 0 ω 0 (J −J ) (the function q(ω 0 , J) = 1 3 J21 3 ), from which the constraints J1 > J2 > J3 are obtained (so that the coefficients in (17) are real). The inequalities in H, M, J1 , J2 , J3 in (15) and (16) are required in order to fulfill the constraints 0 < mi < 1, i = 1, 2 required by the Jacobi elliptic functions. Note that there are two possible forms of the solution: Cases I and II together can be seen to represent all possible solutions of the angular velocity equations for that ordering of moments of inertia Ji since the first condition in Case I is inverted for Case II. The value of γ is chosen such that at time t = 0, sn(γ) = ω2 (0) −α2 ; thus 2.1 Spacecraft natural motion The approach here is to compute the exact initial and final torque required for the spacecraft to perform a natural motion which could reduce the fuel requirement of spacecraft using thrusters for attitude slews [6]. If (J1 , J2 , J3 ) are the principal moments of inertia of the body, the dynamic equation of motion of the spacecraft in natural motion is given by equation (1) where h = 0, d = 0 and u(t) = 0 where t ∈ (0, tf ) i.e. Euler’s equations of motion. The aim of our problem is to determine the initial torque u(0) and the final torque u(tf ) required to bring a spacecraft from its initial position R(0) = R0 at rest to a prescribed final position R(tf ) = Rd at rest, where the kinematics are given by equation (2). The values J1 = 0.141728 kg/m2 , J2 = 0.153784 kg/m2 , J3 = 0.079546 kg/m2 are chosen to reflect the inertias of typical Cubesat spacecraft [13], and we cover the particular problem ⎧ ⎪ ⎨ R0 Rd ⎪ ⎩ t0  γ = F sin−1 ω2 (0) −α2 ,m where F(·, ·) is the incomplete elliptic integral of the x dt Since sn(βt + γ, m) = first kind F(x, m) = 0 1−m 2.    −1 ω2 (0) ω2 (t)/(−α2 ), then F sin , m < F π2 , m and −α2 it follows that 0 < cn(γ, m) < 1 (since cn(0, m) = 1 and the first real root of cn(·, m) is at cn(F ( π2 , m), m) = 0). The signs of square roots are obtained by noting that since dn(·) , then sgn(α3 ) = is always positive, and dn(βt + γ) = ωα3 (t) 3 sgn(ω3 (0)). Taking t = 0, then ω1 (0) = α1 cn(γ, m), giving sgn(ω10 ) = sgn(α1 ). Finally, sgn( ω̇2 (0)) = sgn(α2 ); but, J3 −J2 sgn(ω10 )sgn(ω30 ). Thus from (1), sgn(ω̇2 (0)) = sgn J1  0 0 2 it follows that sgn(α2 ) = sgn J3J−J ω ω . 1 3 1 (12) 2.2 Analytic expressions of the angular velocities The Euler equations are an integrable system [8], and consequently the angular velocities ω(t) can be determined analytically in terms of Jacobi elliptic functions sn(·, m), cn(·, m) and dn(·, m) [14]. The system of equations (1) (where h = d = u = 0) has the following first integrals: 2.2.1 Calculating the angular velocities In this example, 1 H = J1 ω12 + J2 ω22 + J3 ω32 (13) the angular velocities take the form (15), i.e. 2 (18) ω(t) = (α11 cnF(t), −α21 snF(t), α31 dnF(t)). M = J12 ω12 + J2 ω22 + J3 ω32 . (14) One assumes the general form of the solutions to the Euler Using the function (9) to match the boundary conditions in 0 equations of motion, where F(t) = βt+γ; there are two cases (12), the optimal initial value ω = 1.772 0.635 3.591 is obtained using the shooting method in the case J = 0.141728 kg/m2 , J2 = 0.153784 kg/m2 , J3 = 1 1 1 1 1 1 Case I : ω(t) = (α1 cn(F (t), m ), −α2 sn(F (t), m ), α3 dn(F (t), m )) 1 0.079546 kg/m2 . In the discretized computation of R(t) re (J −J )(M −2HJ ) 0 < ((J2 −J1 )(2HJ −M3 )) < 1 1 3 2 (15) quired for the shooting function, using the stepsize h = 0.01. where : F (t) = β 1 t + γ The angular velocities obtained are then Case II : ω(t) = (α21 dn(F (t), m2 ), −α22 sn(F (t), m2 ), α23 cn(F (t), m2 )) ω1 = 1.859 cn(1.660 t − 0.305, 0.099) rad · s−1  (J1 −J3 )(2HJ2 −M ) 0 < (J −J )(M −2HJ ) < 1. ω2 = −2.115 sn(1.660 t − 0.305, 0.099) rad · s−1 2 1 3 where : (16) F (t) = β 2 t + γ ω3 = 3.607 dn(1.660 t − 0.305, 0.099) rad · s−1 . (19) for which The initial and final impulses required to perform the slew 3 1233 are u0 = [0.071, −0.236, 0.007]⊤ N · m utf = [−0.219, −0.057, −0.006]⊤ N · m x1 (20) x2 x3 1 (21) to ensure that the initial and final impulses required by the guidance scheme are feasible within the bounds of the actuators with reaction wheel capable of the maximum torque magnitude 10 mNm, we reparametrize time along the curve. x() 0.5 0 -0.5 2.3 Feasible rest-to-rest manoeuvers It is assumed that -1 0 1 2 3 4 5 F (τ ) = t/Tf in (10). Thus the angular velocities in terms time  (s) of real time are given by τ 1 ω ∗ (τ ) = ω . (22) Figure 1: Pointing directions xi (τ ) (where x(τ ) = R(τ ) · [0, 0, 1] ) Tf Tf This reparametrization can be seen to satisfy the Euler equations since 3 U NDERACTUATED REST- TO - REST SLEW MOTION ω̇ ∗ (τ ) = 1 ω̇ Tf2 τ Tf From [15], [11], the dynamic slew motion of a spacecraft with reaction wheels is given by (1) where h is the angular momentum provided by the reaction wheels. In this case we assume that d = 0, u = 0; thus the dynamic equation (1) reduces to J ω̇ = −ω × (Jω + h) − ḣ. (28) Assuming without loss of generality that there are just two reaction wheels along the X and Y axes such that h = [h1 , h2 , 0]⊤ then the spacecraft is controllable by the two wheels if and only if the total angular momentum is zero [15] Jω + h = 0 ⇔ J ω̇ = −ḣ. (29) (23) and so J ω̇ ∗ (τ ) + ω ∗ (τ ) × (Jω ∗ (τ )) = τ τ 1 (J ω̇ +ω × (Jω Tf2 Tf Tf τ )) = 0. Tf Thus the initial and final torques in real time are given by τ Ji u∗ (τ ) = 2 ω̇ (24) Thus from here on it is assumed that ω3 = 0. Expressing the , τ = 0, Tf . Tf Tf attitude kinematics of the spacecraft R(t) ∈ SO(3), in this case This equation (24) allows us to pick a feasible final time Tf Ṙ(t) = R(t) (ω1 A1 + ω2 A2 ) (30) that reduces the values of u∗ (0), u∗ (Tf ) to below the feasible magnitude. The final time Tf = 5s is found to be sufficient; where A1 , A2 are given by (3). The aim of this underactufor this time, the initial and final impulsive torques required ated re-pointing problem is to determine the angular velocities ωi (t) required to re-point a spacecraft from its initial position for the transfer are 0 ⊤ R(0) = R0 to a prescribed final position R(tf ) = Rd while u = [−0.0028, 0.0095, −0.00027] N · m (25) minimizing the cost function tf ⊤ u = [0.0088, 0.0023, 0.00022] N · m (26)  1 tf c1 ω12 + c2 ω22 dt (31) J = The angular velocities in this case are given by 2 0 where c1 , c2 > 0 are constant weights. Varying the weights ci ω1 (τ ) = 0.372 cn(1.660 τ − 0.305, 0.099) rad · s−1 allows us to produce a range of different curves between R0 ω2 (τ ) = −0.424 sn(1.660 τ − 0.305, 0.099) rad · s−1 and Rd which can be tuned in the presence of path constraints. ω3 (τ ) = 0.723 dn(1.660 τ − 0.305, 0.099) rad · s−1 . (27) However, for a simple example of the method we fix c1 = 1, c2 = 0.25, and focus on the optimal control problem The pointing direction R(τ ) · [1, 0, 0]⊤ is plotted against ⎧ time for this feasible manoeuver in Figure 1, where R(τ ) is R0 = Id ⎪ ⎪ computed using equation (2) with the angular velocities aris⎪ ⎨ Rd = exp(−0.897A2 ) exp(− π2 A3 ) ing from equation (27). From this Figure we can see that the (32) ⎪ t0 = 0, tf = 1 initial direction [x1 , x2 , x3 ] = [1, 0, 0] to the desired final di⎪ ⎪ ⎩ rection [−0.500, 0, 0.866] using only a two-impulse torque. c2 = 0.25, c1 = 1. 4 1234 We make use of Pontryagin’s Maximum Principle [16], a necessary condition for optimality which is most naturally expressed in the non-canonical formulation exploiting the geometry of the cotangent bundle of a Lie group, in this case T ∗ SO(3) of SO(3) [8]. The cotangent bundle T ∗ SO(3) can be trivialized such that T ∗ SO(3) = SO(3) × so(3)∗ , where so(3)∗ is the dual space of the Lie algebra so(3). The dual space so(3)∗ has a natural Poisson structure, called the minus Lie-Poisson structure, given by {F, G}(p) = −p([dF (p), dG(p)]) (33) ∗ 1 ∗ for p ∈ so(3) and F, G ∈ C (so(3) ). (Note that dF (p) is a linear function on so(3)∗ and so is an element of so(3)) where [·, ·] is the Lie bracket on so(3), [A, B] = AB − BA for all A, B ∈ so(3). Minimizing the function (31) leads to a Hamiltonian (in the non-canonical form):  1  (34) H = λ̂, fˆ(ω1 , ω2 ) − (c1 ω12 + c2 ω22 ) 2 where fˆ(ω1 , ω2 ) = R(t)T Ṙ(t) = −(ω1 A1 + ω2 A2 ) ∈ so(3) with λ̂ = λ1 A1 + λ2 A2 + λ3 A3 and A, B = − 12 tr(AB) the inner product on so(3) [8]. 3.0.1 Calculating the angular velocities Similarly as in section 2, the set of equations (40) has two integrals of motion: the Hamiltonian function in (36), and the function M = λ21 + λ22 + λ23 , (41) meaning the system (40) is integrable, and the solutions can be found in terms of Jacobi elliptic functions: Case I : λ(t) = (α1 sn(F (t), m), α2 cn(F (t), m), α3 dn(F (t), m)  (c −c )(2Hc −M ) 0 < ((c 1−c 2)(−2Hc3 +M )) < 1 3 1 2 (42) where : F (t) = βt + γ Case II : λ(t) = (α1 sn(F (t), m), α2 dn(F (t), m), α3 cn(F (t), m))  ((c −c )(−2Hc +M )) 0 < (c3 −c1 )(2Hc 2−M ) < 1. 1 2 3 (43) where : F (t) = βt + γ For the values given in (32), the inequalities for Case II are satisfied and so this solution has the form (λ1 (t), λ2 (t), λ3 (t)) = (α1 sn(F(t), m), α2 cn(F(t), m), α3 dn(F(t), m))(44) for which the coefficients are ⎧ √ 0 0 −1 ⎪ 2Hc1 ⎨ α1 = sgn λ2 · λ3 · c2 √ 0 α2 = sgn(λ2 ) 2Hc2 ⎪ ⎩ α3 = sgn(λ03 ) (M − 2Hc2 ) From the Maximum Principle and given that H is a concave function in ω1 , ω2 , the necessary conditions for optimality are: λ1 ∂H ∂h1 = 0 ⇒ ω1 (t) = c1 (35) λ2 ∂H ∂h2 = 0 ⇒ ω2 (t) = c2 .  ⎧ 2 ⎪ β = M −2Hc ⎪ ⎨  c1 c 2 (2H(c1 −c2 )) m = M −2Hc2 ⎪ ⎪ ⎩ λ0 γ = F(asin α11 , m). (45) Using the function (9), the optimal initial value λ0 =  0.930 1.095 −2.151 is obtained using the iterative Newton method, and so the angular velocities (which are related to the curves λ(t)) by equation (35)) take the form Substituting (35) into (34), the optimal Hamiltonian is obtained as a function of the co-states, λ2 1 λ21 H= + 2 . (36) 2 c1 c2 It is well known that the Hamiltonian vectors fields can be constructed using the Poisson bracket for arbitrary coordinates zi ∈ SO(3) × T ∗ SO(3) where SO(3) × T ∗ SO(3) is the cotangent bundle where SO(3) is the manifold and T ∗ SO(3) is the co-tangent space such that: żi (t) = {zi (t), H} , (37) ω1 (t) = −0.183 sn(4.594t + 0.410, 0.805) ω2 (t) = −0.337 cn(4.594t + 0.410, 0.805). (46) 3.0.2 Dynamically feasible rest-to-rest curves For a problem which takes place in real time (in seconds) τ ∈ [0, Tf ], the real time can be parametrized again such that τ = F (κ) where the general equation for the Poisson bracket of two where κ ∈ [0, Tf ]. Particularly, choosing the parametrization functions H, G in arbitrary co-ordinates can be stated as: 2πκ Tf sin F (κ) = κ − , (47) ∂F ∂H 2π Tf {F, H} = {zi , zj } . (38) ∂zi ∂zj the resulting angular velocities have the form In the case of the Hamiltonian (34) which is defined on so(3)∗ 2πκ )). (48) ω ∗ (κ) = ω(F (κ))(1 − cos( then the Poission bracket is defined in terms of the Lie bracket Tf as in equation (33). This allows us to compute the Hamiltonian It is clear that under this parametrization, ω ∗ (0) = 0, vector fields corresponding to H using the relation [8] ω ∗ (Tf ) = 0, i.e. the transfer is rest-to-rest and does not reλ̇i = {λi , H} (39) quire impulsive torques at the end-points. From the condition in equation (29), the torques are given which gives rise to the set of extremal equations by ḣ i . Thus, we differentiate equation (46) and derive the λ̇1 = − c12 λ2 λ3 torques applied to the reaction wheels (40) ḣ1 = 0.84cn(4.59t + 0.41, 0.81) · dn(4.59t + 0.41, 0.81) λ̇2 = c11 λ1 λ3 c − c 1 2 ḣ2 = −1.55sn(4.59t + 0.41, 0.81) · dn(4.59t + 0.41, 0.81). λ̇3 = c1 c2 λ1 λ2 . 5 1235 Making use of the time reparametrization t = Tτf and the feasible rest-to-rest reparametrization τ = F (κ) in equation (47), the torques take the form ⎞  ⎛ 2πκ pulses that are applied at the beginning and at the end of the motion, while no torque is required during the motion. The method allows the computation of the exact initial and final torque impulse that should be applied to the system to achieve Tf sin T 2 f κ − 2πκ Ji ⎜ ⎟ the exact rotation given the prescribed boundary conditions. 2π 1 − cos λ̇i ⎝ ḣ∗i (κ) =  The second class of angular velocities considered are solutions 2 c i Tf Tf Tf  ⎞ ⎛ to an optimal control problem that describe optimal rotations Tf sin 2πκ Tf for a spacecraft with only two reaction wheels. This guidance κ − 2πκ 2πJi ⎜ ⎟ 2π λi ⎝ sin +  . (49) method could be useful in the event of actuator failure where 2 c i Tf Tf Tf the spacecraft is left with only two working reaction wheels. which allows us to pick a feasible time Tf to bring our torque Future work will involve using different types of basis funcvalues back into alignment with feasible reaction wheel val- tions to represent the angular velocities such as polynomials. Using basis functions that are simple and computationally efues. The final time Tf = 17.2 s is found to be sufficient. In Figure 2 the rest-to-rest angular velocities and the re- ficient will allow different types of attitude guidance problems sulting feasible toques are shown: it can clearly be seen that to be considered. the torques remain below the feasible maximum torque over R EFERENCES the time interval κ ∈ [0, Tf ]. 1  2  u 3 0.4 0.01 0.2 0.005 torque (Nm) angular velocity (rad/s)  0 -0.2 -0.4 1 u 2 u [1] Bullo, F., and A. Lewis. (2005). "Modeling, Analysis, and Design for Simple Mechanical Control Systems." Geometric Control of Mechanical Systems (Texts in Applied Mathematics) 49. [2] Biggs, J. D. and L. Colley (2016). Geometric Attitude Motion Planning for Spacecraft with Pointing and Actuator Constraints. J Guid Control Dynam, 39(7), 1672-1677. [3] Dubins, L. E. (1957). On curves of minimal length with a constraint on average curvature, and with prescribed initial and terminal positions and tangents. Am J Math, 79, 497–516. [4] Bretl, T. and Z. McCarthy (2014). Quasi-Static Manipulation of a Kirchhoff Elastic Rod Based on a Geometric Analysis of Equilibrium Configurations. Int J Robot Res, 33(1), 48-68. [5] Biggs, J., and W. Holderbaum. (2009). Optimal kinematic control of an autonomous underwater vehicle. IEEE transactions on automatic control 54(7), 1623-1626. [6] Maclean, C., D. Pagnozzi, and J. D. Biggs. (2014). Planning natural repointing manoeuvres for nano-spacecraft. IEEE T Aero Elec Sys, 50(3), 2129-2145. [7] Biggs, J. D., and N. Horri. (2012). "Optimal geometric motion planning for a spin-stabilized spacecraft." Syst Control Lett. 61(4), 609-616. [8] Jurdjevic, V. (1997). Geometric Control Theory, Cambridge University press, UK. [9] Caubet, A., and J. Biggs. (2015). "A motion planning method for spacecraft attitude maneuvers using single polynomials." in AAS/AIAA Astrodynamics Specialist Conference, Vail, USA, 1-17. [10] Boyarko, G., M. Romano, and O. Yakimenko. (2011). "Time-optimal reorientation of a spacecraft using an inverse dynamics optimization method." J Guid Control Dynam. 34(4), 1197-1208. [11] Biggs, J. D., Y. Bai and H. C. Henninger. Attitude guidance and tracking for spacecraft with two reaction wheels. International Journal of Control, accepted February 2017. doi/full/10.1080/00207179.2017.1299944 [12] Lee, T., M. Leok, and N. H. McClamroch. (2008). "Optimal attitude control of a rigid body using geometrically exact computations on SO (3)." Journal of Dynamical and Control Systems 14(4) 465-487. [13] Meissner, D. M. (2009). "A three degrees of freedom test-bed for nanosatellite and Cubesat attitude dynamics, determination, and control." M.Sc. disseration, Naval Postgraduate school, Montery, CA. [14] Lawden, J. (2013). Elliptic Functions and their Applications. Springer Science & Business Media, New York. [15] Horri, N. M., P. Palmer, and S. Hodgart. (2012). "Practical implementation of attitude-control algorithms for an underactuated satellite." J Guid Control Dynam 35(1), 40-45. [16] Boltyanskii, V., R. Grigor’evich, V. Gamkrelidze, and L. S. Pontryagin. (1960). The Theory of Optimal Processes: I. The Maximum Principle. TRW Space Technology Labs, Los Angeles, California. 3 0 -0.005 -0.01 0 5 10 time (s) 15 0 a.) 5 10 time (s) 15 b.) Figure 2: a.) Rest-to-rest angular velocities b.) Feasible torques for rest-to-rest transfer The plots in Figure 2 show that using an underactuated guidance scheme can provide a feasible reorientation for a nano-spacecraft with low torque in a reasonable time interval. 4 C ONCLUSION This paper has presented an attitude guidance method that uses analytic forms to represent angular velocities in terms of free parameters. The free parameters are then chosen to match boundary conditions via a proposed structure preserving numerical shooting method. Due to the analytic form of the angular velocities the speed along the curves can be adjusted to ensure dynamic feasibility. Although any basis functions for the angular velocities can be used, this paper investigates two problems where the angular velocities are described in terms of Jacobi elliptic functions. The first class of angular velocities define natural motions which could be used to design fuel efficient attitude motions. These motions consist of two im- 6 1236