This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Spacecraft Attitude Stabilization with Piecewise-constant Magnetic Dipole Moment

Fabio Celani Department of Astronautical, Electrical, and Energy Engineering
Sapienza University of Rome
00138 Rome, Italy
Email: fabio.celani@uniroma1.it
Abstract

In actual implementations of magnetic control laws for spacecraft attitude stabilization, the time in which Earth magnetic field is measured must be separated from the time in which magnetic dipole moment is generated. The latter separation translates into the constraint of being able to genere only piecewise-constant magnetic dipole moment. In this work we present attitude stabilization laws using only magnetic actuators that take into account of the latter aspect. Both a state feedback and an output feedback are presented, and it is shown that the proposed design allows for a systematic selection of the sampling period.

Index Terms:
attitude control of spacecraft; magnetic actuators; control algorithms implementation; averaging; Lyapunov stability.

I Introduction

Spacecraft attitude control can be obtained by adopting several actuation mechanisms. Among them electromagnetic actuators are widely used for generation of attitude control torques on satellites flying low Earth orbits. They consist of planar current-driven coils rigidly placed on the spacecraft typically along three orthogonal axes, and they operate on the basis of the interaction between the magnetic moment generated by those coils and the Earth’s magnetic field; in fact, the interaction with the Earth’s field generates a torque that attempts to align the total magnetic moment in the direction of the field. Magnetic actuators, also known as magnetorquers, have the important limitation that control torque is constrained to belong to the plane orthogonal to the Earth’s magnetic field. As a result, sometimes a reaction wheel accompanies magnetorquers to provide full three-axis control (see [1, Section 7.4]); moreover, magnetorquers are often used for angular momentum dumping when reaction or momentum-bias wheels are employed for accurate attitude control (see [1, Section 7.5]). Lately, attitude stabilization using only magnetorquers has been considered as a feasible option especially for low-cost micro-satellites and for satellites with a failure in the main attitude control system. In such scenario many control laws have been designed, and a survey of various approaches adopted can be found in [2]; in particular, Lyapunov based design has been adopted in [3, 4, 5, 6, 7]. In those works feedback control laws that require measures of both attitude and attitude-rate (i.e. state feedback control laws) are proposed; moreover, in [5] and [7] feedback control algorithms which need measures of attitude only (i.e. output feedback control algorithms) are presented, too.

All control laws presented in the cited works are continuos-time; thus, in principle they require a continuous-time measurement of the geomagnetic field and a continuos-time generation of coils’s currents. However, in practical implementations the time in which Earth’s magnetic field is measured (measurement time) has to be separated from the time in which coils’ currents are generated (actuation time). The latter separation is necessary because currents flowing in the spacecraft’s magnetic coils generate a local magnetic field that impairs the measurement of the geomagnetic field; as a result, when the Earth magnetic field is being measured no currents must flow in the coils, and consequently no magnetic actuation is possible. As a result, in practical applications a periodic switch between measurement time and actuation time is implemented. Usually measurement time is set much shorter than actuation time, so that the spacecraft is left unactuated for a very short fraction of the period; thus, the measurement process can be modeled as instantaneous, and during each period the magnetic dipole moment is kept constant since only the measurement at the beginning of the period is available. Thus the separation illustrated before translates into the constraint of being able to generate only constant magnetic dipole moments during each period. Then, magnetic control laws compatible with the latter constraint could be obtained by simply discretizing continuos-time control algorithms (see e.g. [8]); however, here a different approach is proposed; it consists in taking into account of the latter constraint directly during the control design phase. It will be shown that the proposed approach leads to a systematic selection of the sampling interval; the latter aspect represents an advantage with respect to discretization of continuous-time control laws where the sampling interval is usually determined by trial an error. The proposed method is presented for both a state and an output feedback .

I-A Notations

For xnx\in\mathbb{R}^{n}, x\|x\| denotes the Eucledian norm of xx; for matrix AA, A\|A\| denotes the 2-norm of AA. Symbol II represents the identity matrix. For a3a\in\mathbb{R}^{3}, a×a^{\times} represents the skew symmetric matrix

a×=[0a3a2a30a1a2a10]a^{\times}=\left[\begin{array}[]{rcl}0&-a_{3}&a_{2}\\ a_{3}&0&-a_{1}\\ -a_{2}&a_{1}&0\end{array}\right] (1)

so that for b3b\in\mathbb{R}^{3}, multiplication a×ba^{\times}b is equal to the cross product a×ba\times b.

II Modeling and control algorithms

In order to describe the attitude dynamics of an Earth-orbiting rigid spacecraft, and in order to represent the geomagnetic field, it is useful to introduce the following reference frames.

  1. 1.

    Earth-centered inertial frame i\mathcal{F}_{i}. A commonly used inertial frame for Earth orbits is the Geocentric Equatorial Frame, whose origin is in the Earth’s center, its xix_{i} axis is the vernal equinox direction, its ziz_{i} axis coincides with the Earth’s axis of rotation and points northward, and its yiy_{i} axis completes an orthogonal right-handed frame (see [1, Section 2.6.1] ).

  2. 2.

    Spacecraft body frame b\mathcal{F}_{b}. The origin of this right-handed orthogonal frame attached to the spacecraft, coincides with the satellite’s center of mass; its axes are chosen so that the inertial pointing objective is having b\mathcal{F}_{b} aligned with i\mathcal{F}_{i}.

Since the inertial pointing objective consists in aligning b\mathcal{F}_{b} to i\mathcal{F}_{i}, the focus will be on the relative kinematics and dynamics of the satellite with respect to the inertial frame. Let q=[q1q2q3q4]T=[qvTq4]Tq=[q_{1}\ q_{2}\ q_{3}\ q_{4}]^{\textrm{T}}=[q_{v}^{\textrm{T}}\ q_{4}]^{\textrm{T}} with q=1\|q\|=1 be the unit quaternion representing rotation of b\mathcal{F}_{b} with respect to i\mathcal{F}_{i}; then, the corresponding attitude matrix is given by

C(q)=(q42qvTqv)I+2qvqvT2q4qv×C(q)=(q_{4}^{2}-q_{v}^{\textrm{T}}q_{v})I+2q_{v}q_{v}^{\textrm{T}}-2q_{4}q_{v}^{\times} (2)

(see [9, Section 5.4]).

Let

W(q)=12[q4I+qv×qvT]W(q)=\dfrac{1}{2}\left[\begin{array}[]{c}q_{4}I+q_{v}^{\times}\\ -q_{v}^{\textrm{T}}\end{array}\right] (3)

Then the relative attitude kinematics is given by

q˙=W(q)ω\dot{q}=W(q)\omega (4)

where ω3\omega\in\mathbb{R}^{3} is the angular rate of b\mathcal{F}_{b} with respect to i\mathcal{F}_{i} resolved in b\mathcal{F}_{b} (see [9, Section 5.5.3]).

The attitude dynamics in body frame can be expressed by

Jω˙=ω×Jω+TJ\dot{\omega}=-\omega^{\times}J\omega+T (5)

where J3×3J\in\mathbb{R}^{3\times 3} is the spacecraft inertia matrix, and Q3Q\in\mathbb{R}^{3} is the control torque expressed in b\mathcal{F}_{b} (see [9, Section 6.4]).

The spacecraft is equipped with three magnetic coils aligned with the b\mathcal{F}_{b} axes which generate the magnetic control torque

Q=mcoils×Bb=Bb×mcoilsQ=m_{coils}\times B^{b}=-B^{b\times}\ m_{coils} (6)

where mcoils3m_{coils}\in\mathbb{R}^{3} is the vector of magnetic dipole moments for the three coils, and BbB^{b} is the geomagnetic field at spacecraft expressed in body frame b\mathcal{F}_{b}.

Let BiB^{i} be the geomagnetic field at spacecraft expressed in inertial frame i\mathcal{F}_{i}. Note that BiB^{i} varies with time at least because of the spacecraft’s motion along the orbit. Then

Bb(q,t)=C(q)Bi(t)B^{b}(q,t)=C(q)B^{i}(t) (7)

which shows explicitly the dependence of BbB^{b} on both qq and tt.

Grouping together equations (4) (5) (6) the following nonlinear time-varying system is obtained

q˙=W(q)ωJω˙=ω×JωBb(q,t)×mcoils\begin{array}[]{rcl}\dot{q}&=&W(q)\omega\\ J\dot{\omega}&=&-\omega^{\times}J\omega-B^{b}(q,t)^{\times}\ m_{coils}\end{array} (8)

in which mcoilsm_{coils} is the control input.

In order to design control algorithms, it is important to characterize the time-dependence of Bb(q,t)B^{b}(q,t) which is the same as characterizing the time-dependence of Bi(t)B^{i}(t). Assume that the orbit is circular of radius RR; then, adopting the so called dipole model of the geomagnetic field (see [10, Appendix H]) we obtain

Bi(t)=μmR3[3((m^i)Tr^i(t))r^i(t)m^i]B^{i}(t)=\frac{\mu_{m}}{R^{3}}[3((\hat{m}^{i})^{\textrm{T}}\hat{r}^{i}(t))\hat{r}^{i}(t)-\hat{m}^{i}] (9)

In equation (9), μm=7.746 1015\mu_{m}=7.746\ 10^{15} Wb m is the total dipole strength (see [11]), ri(t)r^{i}(t) is the spacecraft’s position vector resolved in i\mathcal{F}_{i}, and r^i(t)\hat{r}^{i}(t) is the vector of the direction cosines of ri(t)r^{i}(t); finally m^i\hat{m}^{i} is the vector of direction cosines of the Earth’s magnetic dipole moment expressed in i\mathcal{F}_{i}. Here we set m^i=[0 01]T\hat{m}^{i}=[0\ 0\ -1]^{\textrm{T}} which corresponds to setting the dipole’s colelevation equal to 180180^{\circ}. Even if a more accurate value for that angle would be 170170^{\circ} (see [11]), here we approximate it to 180180^{\circ} since this will substantially simplify future symbolic computations.

Equation (9) shows that in order to characterize the time dependence of Bi(t)B^{i}(t) it is necessary to determine an expression for ri(t)r^{i}(t) which is the spacecraft’s position vector resolved in i\mathcal{F}_{i}. Define a coordinate system xpx_{p}, ypy_{p} in the orbital’s plane whose origin is at Earth’s center; then, the position of satellite’s center of mass is clearly given by

xp(t)=Rcos(nt+ϕ0)yp(t)=Rsin(nt+ϕ0)\begin{array}[]{rcl}x^{p}(t)&=&R\cos(nt+\phi_{0})\\ y^{p}(t)&=&R\sin(nt+\phi_{0})\end{array} (10)

where nn is the orbital rate, and ϕ0\phi_{0} an initial phase. Then, coordinates of the satellite in inertial frame i\mathcal{F}_{i} can be easily obtained from (10) using an appropriate rotation matrix which depends on the orbit’s inclination inclincl and on the right ascension of the ascending node Ω\Omega (see [1, Section 2.6.2]). Plugging into (9) the expression of the latter coordinates, an explicit expression for Bi(t)B^{i}(t) can be obtained; it can be easily checked that Bi(t)B^{i}(t) is periodic with period 2π/n2\pi/n. Consequently system (8) is a periodic nonlinear system with period 2π/n2\pi/n.

As stated before, the control objective is driving the spacecraft so that b\mathcal{F}_{b} is aligned with i\mathcal{F}_{i}. From (2) it follows that C(q)=IC(q)=I for q=[qvTq4]T=±q¯q=[q_{v}^{\textrm{T}}\ q_{4}]^{\textrm{T}}=\pm\bar{q} where q¯=[0 0 0 1]T\bar{q}=[0\ 0\ 0\ 1]^{\textrm{T}}. Thus, the objective is designing control strategies for mcoilsm_{coils} so that qv0q_{v}\rightarrow 0 and ω0\omega\rightarrow 0.

In [7] both a static state feedback and a dynamic output feedback are presented; both feedbacks were obtained as modifications of those in [5, 6].

The static state feedback control proposed in [7] is given by

mcoils(t)=(Bb(q(t),t)×)T(ϵ2k1qv(t)+ϵk2ω(t))m_{coils}(t)=(B^{b}(q(t),t)^{\times})^{\textrm{T}}(\epsilon^{2}k_{1}q_{v}(t)+\epsilon k_{2}\omega(t)) (11)

and it is shown that picking k1>0k_{1}>0, k2>0k_{2}>0, and choosing ϵ>0\epsilon>0 and small enough, local exponential stability of (q,ω)=(q¯,0)(q,\omega)=(\bar{q},0) is achieved.

The dynamic output feedback proposed in [7] is given by

δ˙(t)=α(q(t)ϵλδ(t))mcoils(t)=(Bb(q(t),t)×)Tϵ2(k1qv(t)+k2αλW(q(t))T(q(t)ϵλδ(t)))\begin{array}[]{rcl}\dot{\delta}(t)&=&\alpha(q(t)-\epsilon\lambda\delta(t))\\ m_{coils}(t)&=&(B^{b}(q(t),t)^{\times})^{\textrm{T}}\epsilon^{2}\left(k_{1}q_{v}(t)\right.\\ &&\left.+k_{2}\alpha\lambda W(q(t))^{\textrm{T}}(q(t)-\epsilon\lambda\delta(t))\right)\end{array} (12)

with δ4\delta\in\mathbb{R}^{4}. It is shown that selecting k1>0k_{1}>0, k2>0k_{2}>0, α>0\alpha>0, λ>0\lambda>0, and choosing ϵ>0\epsilon>0 small enough, local exponentially stability of equilibrium (q,ω,δ)=(q¯,0,1ϵλq¯)(q,\omega,\delta)=(\bar{q},0,\frac{1}{\epsilon\lambda}\bar{q}) is achieved.

Both control laws (11) and (12) seem implementable in practice since Bb(q(t),t)B^{b}(q(t),t) can be measured using magnetometers, qv(t)q_{v}(t) can be measured using attitude sensors, and ω(t)\omega(t) can be measured by attitude rate sensors. However, as explained in the introduction, the time in which BbB^{b} is measured should be separated from the time in which control action is applied; in fact, magnetic control torque is obtained by generating currents flowing through magnetic coils, and those currents create a local magnetic field which impairs the measurement of BbB^{b}. As a result, in order to take into account of the previous constraint, we should consider only feedback laws in which BbB^{b} is instantaneously measured at the beginning of some fixed length interval, mcoilsm_{coils} is held constant over that interval, and the latter operations are repeated periodically. In the sequel TT will denote the sampling interval, that is the length of each of those intervals.

A static state feedback law that fulfills the previous constraint can be designed by simply discretizing (11) through a sample-and-hold operation, thus obtaining the following control algorithm

mcoils(t)=(Bb(q(kT),kT)×)T(ϵ2k1qv(kT)+ϵk2ω(kT))k=0,1,2,kTt<(k+1)Tm_{coils}(t)=(B^{b}(q(kT),kT)^{\times})^{\textrm{T}}(\epsilon^{2}k_{1}q_{v}(kT)+\epsilon k_{2}\omega(kT))\\ k=0,1,2,\ldots\ \ \ kT\leq t<(k+1)T (13)

Similarly, a dynamic output feedback law compatible with the constraint of generating a piecewise-constant signal for mcoilsm_{coils} can be obtained by discretizing (12) using the forward differencing approximation (see [12]), thus obtaining the following control law

δ((k+1)T)=δ(kT)+Tα(q(kT)ϵλδ(kT))mcoils(t)=(Bb(q(kT),kT)×)Tϵ2(k1qv(kT)+k2αλW(q(kT))T(q(kT)ϵλδ(kT)))k=0,1,2,kTt<(k+1)T\begin{array}[]{rcl}\delta((k+1)T)&=&\delta(kT)+T\alpha(q(kT)-\epsilon\lambda\delta(kT))\\[2.84526pt] m_{coils}(t)&=&(B^{b}(q(kT),kT)^{\times})^{\textrm{T}}\epsilon^{2}\left(k_{1}q_{v}(kT)\right.\\[2.84526pt] &&\left.+k_{2}\alpha\lambda W(q(kT))^{\textrm{T}}(q(kT)-\epsilon\lambda\delta(kT))\right)\\[2.84526pt] &&k=0,1,2,\ldots\ \ \ kT\leq t<(k+1)T\end{array} (14)

with δ4\delta\in\mathbb{R}^{4}.

III State-feedback Design

In this section we will focus on state-feedback law (13) and show how to choose the parameters k1k_{1}, k2k_{2}, ϵ\epsilon, and the sampling interval TT so that equilibrium (q,ω)=(q¯,0)(q,\omega)=(\bar{q},0) is locally exponentially stable for closed-loop system (8) (13). In order to derive those design criteria, it suffices considering the restriction of closed-loop system (8) (13) to the open set 𝕊3+×3\mathbb{S}^{3+}\times\mathbb{R}^{3} where

𝕊3+={q4|q=1,q4>0}\mathbb{S}^{3+}=\{q\in\mathbb{R}^{4}\ |\ \|q\|=1,\ q_{4}>0\} (15)

Since on the latter set q4=(1qvTqv)1/2q_{4}=(1-q_{v}^{\textrm{T}}q_{v})^{1/2} then the considered restriction is given by the following nonlinear time-varying hybrid system

q˙v(t)=Wv(qv(t))ω(t)Jω˙(t)=ω(t)×Jω(t)[Rv(qv(t))Bi(t)]×mcoils(kT)kTt(k+1)Tmcoils(kT)=[Rv(qv(kT))Bi(kT)]×T(ϵ2k1qv(kT)+ϵk2ω(kT))k=0,1,2,\begin{array}[]{rcl}\dot{q}_{v}(t)&=&W_{v}(q_{v}(t))\omega(t)\\ J\dot{\omega}(t)&=&-\omega(t)^{\times}J\omega(t)-[R_{v}(q_{v}(t))B^{i}(t)]^{\times}m_{coils}(kT)\end{array}\\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ kT\leq t\leq(k+1)T\\[5.69054pt] m_{coils}(kT)=[R_{v}(q_{v}(kT))B^{i}(kT)]^{\times\textrm{T}}(\epsilon^{2}k_{1}q_{v}(kT)\\ +\epsilon k_{2}\omega(kT))\\ k=0,1,2,\ldots (16)

where

Wv(qv)=12[(1qvTqv)1/2I+qv×]W_{v}(q_{v})=\dfrac{1}{2}\left[\left(1-q_{v}^{\textrm{T}}q_{v}\right)^{1/2}I+q_{v}^{\times}\right] (17)

and

Rv(qv)=(12qvTqv)I+2qvqvT2(1qvTqv)1/2qv×R_{v}(q_{v})=\left(1-2q_{v}^{\textrm{T}}q_{v}\right)I+2q_{v}q_{v}^{\textrm{T}}-2\left(1-q_{v}^{\textrm{T}}q_{v}\right)^{1/2}q_{v}^{\times} (18)

and where (7) has been used. It is simple to show that if (qv,ω)=(0,0)(q_{v},\omega)=(0,0) is a locally exponentially stable equilibrium for (16), then (q,ω)=(q¯,0)(q,\omega)=(\bar{q},0) is a locally exponentially stable equilibrium for (8) (13).

Next, consider the linear approximation of (16) about the equilibrium (qv,ω)=(0,0)(q_{v},\omega)=(0,0) as defined in [13]. The latter approximation is given by

q˙v(t)=12ω(t)Jω˙(t)=Bi(t)×mcoils(kT)kTt(k+1)T\begin{array}[]{rcl}\dot{q}_{v}(t)&=&\frac{1}{2}\omega(t)\\ J\dot{\omega}(t)&=&-B^{i}(t)^{\times}m_{coils}(kT)\end{array}\\ \ \ \ \ \ kT\leq t\leq(k+1)T (19)
mcoils(kT)=Bi(kT)×T(ϵ2k1qv(kT)+ϵk2ω(kT))k=0,1,2,m_{coils}(kT)=B^{i}(kT)^{\times T}(\epsilon^{2}k_{1}q_{v}(kT)+\epsilon k_{2}\omega(kT))\\ k=0,1,2,\ldots (20)

Note that since BiB^{i} is bounded (see (9)), then Theorem II.1 in [13] applies to the nonlinear time-varying hybrid system (16); consequently, (qv,ω)=(0,0)(q_{v},\omega)=(0,0) is a locally exponentially stable equilibrium for (16) if and only if it is an exponentially stable equilibrium for (19) (20).

Next consider the continuous-time system (19) and sample its state [qv(t)Tω(t)T]T[q_{v}(t)^{\textrm{T}}\omega(t)^{\textrm{T}}]^{\textrm{T}} at t=(k+1)Tt=(k+1)T. The following discrete-time system is thus obtained

qv((k+1)T)=qv(kT)+T2ω(kT)J1G1(k,T)mcoils(kT)ω((k+1)T)=ω(kT)J1G2(k,T)mcoils(kT)k=0,1,2\begin{array}[]{rcl}q_{v}((k+1)T)&=&q_{v}(kT)+\frac{T}{2}\omega(kT)\\[5.69054pt] &&-J^{-1}G_{1}(k,T)m_{coils}(kT)\\[5.69054pt] \omega((k+1)T)&=&\omega(kT)-J^{-1}G_{2}(k,T)m_{coils}(kT)\\ \end{array}\\ k=0,1,2\ldots (21)

where

G1(k,T)=kT(k+1)T12((k+1)Tτ)Bi(τ)×𝑑τG_{1}(k,T)=\int_{kT}^{(k+1)T}\frac{1}{2}((k+1)T-\tau)B^{i}(\tau)^{\times}d\tau

and

G2(k,T)=kT(k+1)TBi(τ)×𝑑τG_{2}(k,T)=\int_{kT}^{(k+1)T}B^{i}(\tau)^{\times}d\tau

By [14, Proposition 7] it follows that if the linear time-varying discrete-time system (20) (21) is exponentially stable then the linear time-varying hybrid system (19) (20) is exponentially stable.

Based on the previous discussion, our objective has become studying stability of linear time-varying discrete-time system (20) (21). For that purpose it is useful to perform the following change of variables z1(k)=qv(kT)z_{1}(k)=q_{v}(kT), z2(k)=ω(kT)/ϵz_{2}(k)=\omega(kT)/\epsilon obtaining

z1(k+1)=z1(k)+ϵT2z2(k)ϵ2J1G1(k,T)Bi(kT)×T(k1z1(k)+k2z2(k))z2(k+1)=z2(k)ϵJ1G2(k,T)Bi(kT)×T(k1z1(k)+k2z2(k))\begin{array}[]{rcl}z_{1}(k+1)&=&z_{1}(k)+\epsilon\frac{T}{2}z_{2}(k)-\epsilon^{2}J^{-1}G_{1}(k,T)B^{i}(kT)^{\times T}\\[2.84526pt] &&(k_{1}z_{1}(k)+k_{2}z_{2}(k))\\[5.69054pt] z_{2}(k+1)&=&z_{2}(k)-\epsilon J^{-1}G_{2}(k,T)B^{i}(kT)^{\times T}\\[2.84526pt] &&(k_{1}z_{1}(k)+k_{2}z_{2}(k))\end{array} (22)

Note that since Gi(k,0)=0i=1,2G_{i}(k,0)=0\ \ i=1,2, then Gi(k,T)G_{i}(k,T) can be expressed as

Gi(k,T)=Hi(k,T)Ti=1,2G_{i}(k,T)=H_{i}(k,T)T\ \ i=1,2 (23)

where

Hi(k,T)=01GiT(k,sT)𝑑si=1,2H_{i}(k,T)=\int_{0}^{1}\frac{\partial G_{i}}{\partial T}(k,sT)ds\ \ i=1,2

Let L(k,T)=H2(k,T)Bi(kT)×TL(k,T)=H_{2}(k,T)B^{i}(kT)^{\times T}. Note that since Bi(t)B^{i}(t) is periodic, then the following average

Lav(T)=limN1Nk=s+1k=s+NL(k,T)L_{av}(T)=\lim_{N\rightarrow\infty}\frac{1}{N}\sum_{k=s+1}^{k=s+N}L(k,T)

is well defined and indipendent of integer ss. The expression of LavL_{av} has been computed symbolically using MathematicaTM, but here it is omitted to save space. It turns out that Lav0limT0Lav(T)L_{av}^{0}\triangleq\lim_{T\rightarrow 0}L_{av}(T) is symmetric, and that Lav0L_{av}^{0} is positive definite if and only if the orbit is not equatorial, that is if its inclination satisfies incl0incl\neq 0. Thus, we make the following assumption.

Assumption 1

The spacecraft’s orbit satisfies condition Lav0>0L_{av}^{0}>0.

At this point, consider the average system of (22) as defined in [15] which is given by

z1(k+1)=z1(k)+ϵT2z2(k)z2(k+1)=z2(k)ϵTJ1Lav(T)(k1z1(k)+k2z2(k))\begin{array}[]{rcl}z_{1}(k+1)&=&z_{1}(k)+\epsilon\frac{T}{2}z_{2}(k)\\[5.69054pt] z_{2}(k+1)&=&z_{2}(k)-\epsilon TJ^{-1}L_{av}(T)(k_{1}z_{1}(k)+k_{2}z_{2}(k))\end{array} (24)

It can be verified that all assumptions of [15, Theorem 2.2.2] are fulfilled by system (22). Thus, the following proposition holds true.

Proposition 1

If the average system (24) is exponentially stable for all 0<ϵϵ00<\epsilon\leq\epsilon_{0}, then there exists 0<ϵ1ϵ00<\epsilon_{1}\leq\epsilon_{0}, such that system (22) is exponentially stable for all 0<ϵϵ10<\epsilon\leq\epsilon_{1}.

For the average system (24) the following stability result holds.

Theorem 1

Assume that k1>0k_{1}>0, k2>0k_{2}>0 and Assumption 1 is satisfied. Then there exists T>0T^{*}>0, and for every 0<T<T0<T<T^{*}, there exists ϵ0>0\epsilon_{0}>0, such that fixed 0<T<T0<T<T^{*} system (24) is exponentially stable for all 0<ϵϵ00<\epsilon\leq\epsilon_{0}.

Proof:

Rewrite (24) in the following compact form

z(k+1)=z(k)+ϵTAs(T)z(k)z(k+1)=z(k)+\epsilon TA_{s}(T)z(k) (25)

with

As(T)=[012Ik1J1Lav(T)k2J1Lav(T)]A_{s}(T)=\left[\begin{array}[]{cc}0&\frac{1}{2}I\\[8.53581pt] -k_{1}J^{-1}L_{av}(T)&-k_{2}J^{-1}L_{av}(T)\end{array}\right] (26)

It will be shown now that As0limT0As(T)A_{s}^{0}\triangleq\lim_{T\rightarrow 0}A_{s}(T) is a Hurwitz matrix. For that purpose it is useful to introduce the continuous-time system w˙=As0w\dot{w}=A_{s}^{0}w which in expanded form reads as follows

w˙1=12w2Jw˙2=Lav0(k1w1+k2w2)\begin{array}[]{rcl}\dot{w}_{1}&=&\dfrac{1}{2}w_{2}\\ J\dot{w}_{2}&=&-L_{av}^{0}(k_{1}w_{1}+k_{2}w_{2})\end{array} (27)

Introduce the Lyapunov function for (27)

V1(w1,w2)=k1w1TLav0w1+12w2TJw2V_{1}(w_{1},w_{2})=k_{1}w_{1}^{\textrm{T}}L_{av}^{0}w_{1}+\frac{1}{2}w_{2}^{\textrm{T}}Jw_{2}

then

V˙1(w1,w2)=k2w2TLav0w2\dot{V}_{1}(w_{1},w_{2})=-k_{2}w_{2}^{\textrm{T}}L_{av}^{0}w_{2}

By La Salle’s invariance principle [16, Theorem 4.4], it follows that (27) is exponentially stable, and thus As0A_{s}^{0} is Hurwitz. Then, by continuity there exists T>0T^{*}>0 such that As(T)A_{s}(T) is Hurwitz for all 0<T<T0<T<T^{*}. Next, fix 0<T<T0<T<T^{*}, and consider symmetric matrix Ps>0P_{s}>0 such that

PsAs(T)+As(T)TPs=IP_{s}A_{s}(T)+A_{s}(T)^{\textrm{T}}P_{s}=-I

Let V2(z)=zTPszV_{2}(z)=z^{\textrm{T}}P_{s}z be a candidate Lyapunov function for system (25). Then, the following holds

ΔV2(z)(z+ϵTAs(T)z)TPs(z+ϵTAs(T)z)zTPszϵT(1+ϵTAs(T)TPsAs(T))z2\Delta V_{2}(z)\triangleq(z+\epsilon TA_{s}(T)z)^{\textrm{T}}P_{s}(z+\epsilon TA_{s}(T)z)-z^{\textrm{T}}P_{s}z\\ \leq\epsilon T(-1+\epsilon T\|A_{s}(T)^{\textrm{T}}P_{s}A_{s}(T)\|)\|z\|^{2}

As a result, setting

ϵ0=12TAs(T)TPsAs(T)\epsilon_{0}=\frac{1}{2T\|A_{s}(T)^{\textrm{T}}P_{s}A_{s}(T)\|} (28)

we obtain that system (25) is exponentially stable for all 0<ϵϵ00<\epsilon\leq\epsilon_{0}.

Based on the previous theorem, fix 0<T<T0<T<T^{*}, and consider the corresponding value of ϵ0\epsilon_{0} given by (28); from Proposition 2 it follows that there exists 0<ϵ1ϵ00<\epsilon_{1}\leq\epsilon_{0} such that system (22) is exponentially stable for all 0<ϵϵ10<\epsilon\leq\epsilon_{1}. In conclusion, from Theorem 1, Proposition 1, and the preceding discussion, the following main proposition is obtained.

Proposition 2

(State feedback). Consider the magnetically actuated spacecraft described by (8) and apply the piecewise-constant static state-feedback (13) with k1>0k_{1}>0 and k2>0k_{2}>0. Then, under Assumption 1, there exists T>0T^{*}>0, and for every 0<T<T0<T<T^{*}, there exists ϵ1ϵ0\epsilon_{1}\leq\epsilon_{0}, with ϵ0\epsilon_{0} given by (28), such that fixed 0<T<T0<T<T^{*}, for all 0<ϵϵ10<\epsilon\leq\epsilon_{1} equilibrium (q,ω)=(q¯,0)(q,\omega)=(\bar{q},0) is locally exponentially stable for (8) (13).

IV Output-feedback Design

In this section we will focus on output-feedback law (14) and show how to choose parameters k1k_{1}, k2k_{2}, α\alpha, λ\lambda, ϵ\epsilon, and sampling interval TT so that equilibrium (q,ω,δ)=(q¯,0,1ϵλq¯)(q,\omega,\delta)=(\bar{q},0,\frac{1}{\epsilon\lambda}\bar{q}) is locally exponentially stable for closed-loop system (8) (14).

Following the same approach as in state-feedback design, we determine the linear time-varying discrete-time system given by the interconnection of (21) with the following system

δv((k+1)T)=δv(kT)+Tα(qv(kT)ϵλδv(kT))δ~4((k+1)T)=δ~4(kT)Tαϵλδ~4(kT)mcoils(kT)=(Bi(q(kT),kT)×)Tϵ2[k1qv(kT)+12k2αλ(qv(kT)ϵλδv(kT))]\begin{array}[]{rcl}\delta_{v}((k+1)T)&=&\delta_{v}(kT)+T\alpha(q_{v}(kT)-\epsilon\lambda\delta_{v}(kT))\\ \tilde{\delta}_{4}((k+1)T)&=&\tilde{\delta}_{4}(kT)-T\alpha\epsilon\lambda\tilde{\delta}_{4}(kT)\\[5.69054pt] m_{coils}(kT)&=&(B^{i}(q(kT),kT)^{\times}){\textrm{T}}\epsilon^{2}\left[k_{1}q_{v}(kT)\right.\\[2.84526pt] &&\left.+\frac{1}{2}k_{2}\alpha\lambda(q_{v}(kT)-\epsilon\lambda\delta_{v}(kT))\right]\end{array} (29)

where δv=[δ1δ2δ3]T\delta_{v}=[\delta_{1}\ \delta_{2}\ \delta_{3}]^{\textrm{T}} and δ~4=δ41ϵδ\tilde{\delta}_{4}=\delta_{4}-\frac{1}{\epsilon\delta}. Similarly to the state feedback case, if system (29) is exponentially stable, then (q,ω,δ)=(q¯,0,1ϵλq¯)(q,\omega,\delta)=(\bar{q},0,\frac{1}{\epsilon\lambda}\bar{q}) is an exponentially stable equilibrium for (8) (14).

For system (29), perform the change of variables z1(k)=qv(kT)z_{1}(k)=q_{v}(kT), z2(k)=ω(kT)/ϵz_{2}(k)=\omega(kT)/\epsilon, z3(k)=qv(kT)ϵλδv(kT)z_{3}(k)=q_{v}(kT)-\epsilon\lambda\delta_{v}(kT), z4(k)=δ~4(kT)z_{4}(k)=\tilde{\delta}_{4}(kT) obtaining

z1(k+1)=z1(k)+ϵT2z2(k)ϵ2J1G1(k,T)(Bi(kT)×)T(k1z1(k)+12k2αλz3(k))z2(k+1)=z2(k)ϵJ1G2(k,T)(Bi(kT)×)T(k1z1(k)+12k2αλz3(k))z3(k+1)=z3(k)+ϵT(12z2(k)αλz3(k))ϵ2J1G1(k,T)(Bi(kT)×)T(k1z1(k)+12k2αλz3(k))z4(k+1)=z4(k)ϵTαλz4(k)\begin{array}[]{rcl}z_{1}(k+1)&=&z_{1}(k)+\epsilon\frac{T}{2}z_{2}(k)-\epsilon^{2}J^{-1}G_{1}(k,T)\\[2.84526pt] &&(B^{i}(kT)^{\times})^{\textrm{T}}\left(k_{1}z_{1}(k)+\frac{1}{2}k_{2}\alpha\lambda z_{3}(k)\right)\\[8.53581pt] z_{2}(k+1)&=&z_{2}(k)-\epsilon J^{-1}G_{2}(k,T)(B^{i}(kT)^{\times})^{\textrm{T}}\\[5.69054pt] &&\left(k_{1}z_{1}(k)+\frac{1}{2}k_{2}\alpha\lambda z_{3}(k)\right)\\[8.53581pt] z_{3}(k+1)&=&z_{3}(k)+\epsilon T\left(\frac{1}{2}z_{2}(k)-\alpha\lambda z_{3}(k)\right)\\[8.53581pt] &&-\epsilon^{2}J^{-1}G_{1}(k,T)(B^{i}(kT)^{\times})^{\textrm{T}}\\[5.69054pt] &&\left(k_{1}z_{1}(k)+\frac{1}{2}k_{2}\alpha\lambda z_{3}(k)\right)\\[8.53581pt] z_{4}(k+1)&=&z_{4}(k)-\epsilon T\alpha\lambda z_{4}(k)\end{array} (30)

The average system of (22) as defined in [15] is given by

z1(k+1)=z1(k)+ϵT2z2(k)z2(k+1)=z2(k)ϵTJ1Lav(T)(k1z1(k)+k2z2(k))z3(k+1)=z3(k)+ϵT(k1z1(k)+12k2αλz3(k))z4(k+1)=z4(k)ϵTαλz4(k)\begin{array}[]{rcl}z_{1}(k+1)&=&z_{1}(k)+\epsilon\frac{T}{2}z_{2}(k)\\[5.69054pt] z_{2}(k+1)&=&z_{2}(k)-\epsilon TJ^{-1}L_{av}(T)(k_{1}z_{1}(k)+k_{2}z_{2}(k))\\[5.69054pt] z_{3}(k+1)&=&z_{3}(k)+\epsilon T\left(k_{1}z_{1}(k)+\frac{1}{2}k_{2}\alpha\lambda z_{3}(k)\right)\\[11.38109pt] z_{4}(k+1)&=&z_{4}(k)-\epsilon T\alpha\lambda z_{4}(k)\end{array} (31)

Then, a proposition parallel to Proposition 1 holds true, and for the average system (31) the following stability result holds.

Theorem 2

Assume that k1>0k_{1}>0, k2>0k_{2}>0, α>0\alpha>0, λ>0\lambda>0 and Assumption 1 is satisfied. Then there exists T>0T^{*}>0, and for every 0<T<T0<T<T^{*}, there exists ϵ0>0\epsilon_{0}>0, such that fixed 0<T<T0<T<T^{*} system (31) is exponentially stable for all 0<ϵϵ00<\epsilon\leq\epsilon_{0}.

Proof:

Rewrite (31) in the following compact form

z(k+1)=z(k)+ϵTAo(T)z(k)z(k+1)=z(k)+\epsilon TA_{o}(T)z(k) (32)

with

Ao(T)=[012I00k1J1Lav(T)012k2αλJ1Lav(T)0012IαλI0000αλ]A_{o}(T)=\\ \left[\begin{array}[]{cccc}0&\frac{1}{2}I&0&0\\[8.53581pt] -k_{1}J^{-1}L_{av}(T)&0&-\frac{1}{2}k_{2}\alpha\lambda J^{-1}L_{av}(T)&0\\ 0&\frac{1}{2}I&-\alpha\lambda I&0\\[5.69054pt] 0&0&0&-\alpha\lambda\end{array}\right]

It will be shown now that Ao0limT0Ao(T)A_{o}^{0}\triangleq\lim_{T\rightarrow 0}A_{o}(T) is a Hurwitz matrix. For that purpose it is useful to introduce the continuous-time system w˙=Ao0w\dot{w}=A_{o}^{0}w which in expanded form reads as follows

w˙1=12w2Jw˙2=Lav0(k1w1+12k2αλw3)w˙3=12w2αλw3w˙4=αλw4\begin{array}[]{rcl}\dot{w}_{1}&=&\dfrac{1}{2}w_{2}\\ J\dot{w}_{2}&=&-L_{av}^{0}\left(k_{1}w_{1}+\frac{1}{2}k_{2}\alpha\lambda w_{3}\right)\\ \dot{w}_{3}&=&\frac{1}{2}w_{2}-\alpha\lambda w_{3}\\ \dot{w}_{4}&=&-\alpha\lambda w_{4}\end{array} (33)

Introduce the Lyapunov function for (33)

V3(w)=k1w1TLav0w1+12w2TJw2+12k2αλw3TLav0w3+12w42V_{3}(w)=k_{1}w_{1}^{\textrm{T}}L_{av}^{0}w_{1}+\frac{1}{2}w_{2}^{\textrm{T}}Jw_{2}+\frac{1}{2}k_{2}\alpha\lambda w_{3}^{\textrm{T}}L_{av}^{0}w_{3}+\frac{1}{2}w_{4}^{2}

then

V˙3(w)=k2α2λ2w3TLav0w3αλw42\dot{V}_{3}(w)=-k_{2}\alpha^{2}\lambda^{2}w_{3}^{\textrm{T}}L_{av}^{0}w_{3}-\alpha\lambda w_{4}^{2}

By La Salle’s invariance principle [16, Theorem 4.4], it follows that (33) is exponentially stable, and thus Ao0A_{o}^{0} is Hurwitz. Then, the proof can be completed as in the state feedback case. In particular, fixing TT small enough so that Ao(T)A_{o}(T) is Hurwitz, and letting Po>0P_{o}>0 such that

PoAo(T)+Ao(T)TPo=IP_{o}A_{o}(T)+A_{o}(T)^{\textrm{T}}P_{o}=-I

we have that system (32) is exponentially stable for all 0<ϵϵ00<\epsilon\leq\epsilon_{0} with

ϵ0=12TAo(T)TPoAo(T)\epsilon_{0}=\frac{1}{2T\|A_{o}(T)^{\textrm{T}}P_{o}A_{o}(T)\|} (34)

Thus, the following main proposition holds.

Proposition 3

(Output feedback). Consider the magnetically actuated spacecraft described by (8) and apply the piecewise-constant dynamic output-feedback (14) with k1>0k_{1}>0, k2>0k_{2}>0, α>0\alpha>0, and λ>0\lambda>0. Then, under Assumption 1, there exists T>0T^{*}>0, and for every 0<T<T0<T<T^{*}, there exists ϵ1ϵ0\epsilon_{1}\leq\epsilon_{0}, with ϵ0\epsilon_{0} given by (34), such that fixed 0<T<T0<T<T^{*} for all 0<ϵϵ10<\epsilon\leq\epsilon_{1} equilibrium (q,ω,δ)=(q¯,0,1ϵλq¯)(q,\omega,\delta)=(\bar{q},0,\frac{1}{\epsilon\lambda}\bar{q}) is locally exponentially stable for (8) (14).

V Case study

We consider the same case study presented in [7] in which the spacecraft’s inertia matrix is given by J=diag[27 17 25]kg m2J=\text{diag}[27\ 17\ 25]\ \text{kg m}^{2}; the inclination of the orbit is given by incl=87incl=87^{\circ}, and the orbit’s altitude is 450 km; the corresponding orbital period is about 5600 s. Without loss of generality the right ascension of the ascending node Ω\Omega is set equal to 0, whereas the initial phase ϕ0\phi_{0} (see (10)) has been randomly selected and set equal to ϕ0=0.94\phi_{0}=0.94 rad.

Consider an initial state characterized by attitude equal to to the target attitude q(0)=q¯q(0)=\bar{q}, and by the following high initial angular rate

ω(0)=[0.02 0.020.03]Trad/s\omega(0)=[0.02\ \ 0.02\ \ -0.03]^{\textrm{T}}\ \text{rad/s} (35)

due for example to an impact with an object.

In [7] the continuous-time feedback (11) has been designed setting k1=2 1011k_{1}=2\ 10^{11}, k2=3 1011k_{2}=3\ 10^{11}, and ϵ=103\epsilon=10^{-3}. Here, we keep k1=2 1011k_{1}=2\ 10^{11}, k2=3 1011k_{2}=3\ 10^{11} and parameters TT and ϵ\epsilon are chosen as follows. First, studying numerically the behavior of the eigenvalues of As(T)A_{s}(T) with TT (see (26)), we determine the value T=1490T^{*}=1490 s for which it occurs that As(T)A_{s}(T) is Hurwitz for all 0<T<T0<T<T^{*}. Then, the sampling time has been set equal to T=20T=20 to which there corresponds ϵ0=1.3 103\epsilon_{0}=1.3\ 10^{-3} (see (28)). By Proposition 2, it occurs that setting ϵ1.3 103\epsilon\leq 1.3\ 10^{-3} and small enough, equilibrium (q,ω)=(q¯,0)(q,\omega)=(\bar{q},0) is locally exponentially stable for (8) (13). Here, proceeding by trial and error, we fix ϵ=103\epsilon=10^{-3}. Simulations results reported in Fig. 1 show that actually acquisition of the desired attitude is achieved.

Refer to caption
Refer to caption
Refer to caption
Figure 1: Evolutions of (8) (13) with k1=2 1011k_{1}=2\ 10^{11}, k2=3 1011k_{2}=3\ 10^{11}, T=20T=20 s, and ϵ=103\epsilon=10^{-3}.

A similar approach has been followed to select parameters and sampling interval for output-feedback (14); the obtained results validate Proposition 3, but they are omitted for lack of space.

VI Conclusion

In this work two magnetic control laws for spacecraft attitude stabilizations have been presented. Both magnetic control laws possess the feature of generating piecewise-constant magnetic dipole moments; the latter aspect makes them easier to implement than continuos-time control laws; in fact, implementation of continuos-time laws requires a discretization process, in which the discretization interval is usually selected by trial and error; the latter trial and error process in not necessary using the approach here proposed since the sampling interval can be determined in a systematic way.

Acknowledgment

The author acknowledges Prof. J. L. Mancilla-Aguilar for his help and Prof. A. Nascetti for fruitful discussions.

References

  • [1] M. J. Sidi, Spacecraft dynamics and control. Cambridge University Press, 1997.
  • [2] E. Silani and M. Lovera, “Magnetic spacecraft attitude control: A survey and some new results,” Control Engineering Practice, vol. 13, no. 3, pp. 357–371, 2005.
  • [3] C. Arduini and P. Baiocco, “Active magnetic damping attitude control for gravity gradient stabilized spacecraft,” Journal of Guidance, Control, and Dynamics, vol. 20, no. 1, pp. 117–122, 1997.
  • [4] R. Wiśniewski and M. Blanke, “Fully magnetic attitude control for spacecraft subject to gravity gradient,” Automatica, vol. 35, no. 7, pp. 1201–1214, 1999.
  • [5] M. Lovera and A. Astolfi, “Spacecraft attitude control using magnetic actuators,” Automatica, vol. 40, no. 8, pp. 1405–1414, 2004.
  • [6] ——, “Global magnetic attitude control of inertially pointing spacecraft,” Journal of Guidance, Control, and Dynamics, vol. 28, no. 5, pp. 1065–1067, 2005.
  • [7] F. Celani, “Robust three-axis attitude stabilization for inertial pointing spacecraft using magnetorquers,” Acta Astronautica, vol. 107, pp. 87–96, 2015.
  • [8] T. Pulecchi, M. Lovera, and A. Varga, “Optimal discrete-time design of three-axis magnetic attitude control laws,” Control Systems Technology, IEEE Transactions on, vol. 18, no. 3, pp. 714–722, May 2010.
  • [9] B. Wie, Space vehicle dynamics and control. American institute of aeronautics and astronautics, 2008.
  • [10] J. R. Wertz, Ed., Spacecraft attitude determination and control. Kluwer Academic, 1978.
  • [11] A. L. Rodriguez-Vazquez, M. A. Martin-Prats, and F. Bernelli-Zazzera, “Full magnetic satellite attitude control using ASRE method,” in 1st IAA Conference on Dynamics and Control of Space Systems, 2012.
  • [12] M. S. Fadali and A. Visioli, Digital Control Engineering: Analysis and Design. Academic Press, 2012.
  • [13] J. L. Mancilla Aguilar and R. A. Garcia, “Stability analysis of a certain class of time-varying hybrid dynamical systems,” Latin American Applied Research, vol. 33, no. 4, pp. 463–468, 2003.
  • [14] P. A. Iglesias, “Input-output stability of sampled-data linear time-varying systems,” IEEE Transactions on Automatic Control, vol. 40, no. 9, pp. 1646–1650, 1995.
  • [15] E.-W. Bai, L.-C. Fu, and S. S. Sastry, “Averaging analysis for discrete time and sampled data adaptive systems.” IEEE Transactions on Circuits and Systems, vol. 35, no. 2, pp. 137–148, 1988.
  • [16] H. K. Khalil, Nonlinear systems. Prentice Hall, 2002.