[american institute of aeronautics and astronautics aiaa guidance, navigation and control conference...

13
Attitude Determination of Rotating Spacecraft by Magnetometers and Rate Sensors Shoji Yoshikawa and Takehiro Nishiyama Mitsubishi Electric Corporation, Amagasaki, Hyogo, 661-8661, Japan This paper presents a new attitude determination algorithm for a spacecraft in low earth orbits using magnetometers and rate sensors, which is applicable to a rotating spacecraft and does not require additional attitude sensors such as sun sensors. First, an attitude determination algorithm using only magnetometers is introduced presuming that the atti- tude change during the measurement period is very small. Then the algorithm is extended to combine magnetometers with rate sensors, where both the three-axis attitude and rate sensor biases are estimated. The estimation error is statistically analyzed. Numerical examples are given to validate the proposed algorithm and its accuracy evaluation. I. Introduction Attitude determination of spacecraft in low earth orbits using magnetometers is attractive as a backup for attitude determination system using sun sensors, earth sensors or star sensors not only because mag- netometers are inexpensive, small and lightweight but also they are robust and complete in the sense that sun sensors and star sensors are vulnerable to occultation and sole earth sensors cannot provide three-axis information. 1 Furthermore, magnetometers are applicable to wide-range of body rate. They can provide rate information as a backup for gyros. For example, coarse rate information can be derived when the gyro output becomes saturated. 2 However, magnetometers measure magnetic eld in the spacecraft coordinates and do not provide three- axis information with a single measurement. Therefore, to determine a three-axis attitude, additional infor- mation is required. use an additional attitude sensor such as a sun sensor or an earth sensor take another measurement of the magnetic eld Figure 1 shows a conventional attitude sensor conguration where a spinning spacecraft is equipped with a three-axis magnetometer and a slit-type sun sensor. Because the spin axis is maintained in the inertial frame, an intermittent information from a sun sensor is sucient to construct a three-axis attitude determination. 3 Using an additional attitude sensor essentially means a simultaneous observation of at least two non-colinear vectors. On the other hand, in order to use another measurement of the magnetic eld, it is necessary to wait for a while so that the orbital motion of the spacecraft brings a well dierent position in the earth magnetic eld. Therefore, the attitude change information during the two measurements is required. Rate estimation using only magnetometer outputs is possible 4 and estimation of attitude and rate using only magnetometers has been proposed. 2, 5, 6 To derive rate estimation from magnetometer outputs only require time derivative of magnetometer outputs, tends to induce noisy results and needs a sophisticated ltering. Considering that rate sensors are lightweight and inexpensive and that attitude determination using magnetometers is in some cases considered as a back-up system in case primary attitude sensors are not available, it is practically reasonable to combine rate sensors with magnetometers. It is known that rate sensor biases are not negligible. Therefore, this paper proposes to use rate sensors to estimate the attitude change, whereas the rate sensor biases are simultaneously estimated using magnetometer outputs. This paper is organized as follows. In section II, an attitude determination algorithm using only magne- tometers is introduced presuming that the attitude change during the measurement period is very small. In Senior Researcher, Advanced Technology R&D Center, 8-1-1 Tsukaguchi-Honmachi, Amagasaki, Hyogo, Member AIAA. 1 of 13 American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit 18 - 21 August 2008, Honolulu, Hawaii AIAA 2008-6294 Copyright © 2008 by the American Institute of Aeronautics and Astronautics, Inc. All rights reserved.

Upload: takehiro

Post on 11-Dec-2016

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

Attitude Determination of Rotating Spacecraft by

Magnetometers and Rate Sensors

Shoji Yoshikawa∗ and Takehiro Nishiyama∗

Mitsubishi Electric Corporation, Amagasaki, Hyogo, 661-8661, Japan

This paper presents a new attitude determination algorithm for a spacecraft in low earthorbits using magnetometers and rate sensors, which is applicable to a rotating spacecraftand does not require additional attitude sensors such as sun sensors. First, an attitudedetermination algorithm using only magnetometers is introduced presuming that the atti-tude change during the measurement period is very small. Then the algorithm is extendedto combine magnetometers with rate sensors, where both the three-axis attitude and ratesensor biases are estimated. The estimation error is statistically analyzed. Numericalexamples are given to validate the proposed algorithm and its accuracy evaluation.

I. Introduction

Attitude determination of spacecraft in low earth orbits using magnetometers is attractive as a backupfor attitude determination system using sun sensors, earth sensors or star sensors not only because mag-netometers are inexpensive, small and lightweight but also they are robust and complete in the sense thatsun sensors and star sensors are vulnerable to occultation and sole earth sensors cannot provide three-axisinformation.1 Furthermore, magnetometers are applicable to wide-range of body rate. They can providerate information as a backup for gyros. For example, coarse rate information can be derived when the gyrooutput becomes saturated.2

However, magnetometers measure magnetic field in the spacecraft coordinates and do not provide three-axis information with a single measurement. Therefore, to determine a three-axis attitude, additional infor-mation is required.

• use an additional attitude sensor such as a sun sensor or an earth sensor• take another measurement of the magnetic field

Figure 1 shows a conventional attitude sensor configuration where a spinning spacecraft is equipped with athree-axis magnetometer and a slit-type sun sensor. Because the spin axis is maintained in the inertial frame,an intermittent information from a sun sensor is sufficient to construct a three-axis attitude determination.3

Using an additional attitude sensor essentially means a simultaneous observation of at least two non-colinearvectors. On the other hand, in order to use another measurement of the magnetic field, it is necessary to waitfor a while so that the orbital motion of the spacecraft brings a well different position in the earth magneticfield. Therefore, the attitude change information during the two measurements is required. Rate estimationusing only magnetometer outputs is possible4 and estimation of attitude and rate using only magnetometershas been proposed.2,5,6 To derive rate estimation from magnetometer outputs only require time derivativeof magnetometer outputs, tends to induce noisy results and needs a sophisticated filtering.

Considering that rate sensors are lightweight and inexpensive and that attitude determination usingmagnetometers is in some cases considered as a back-up system in case primary attitude sensors are notavailable, it is practically reasonable to combine rate sensors with magnetometers. It is known that ratesensor biases are not negligible. Therefore, this paper proposes to use rate sensors to estimate the attitudechange, whereas the rate sensor biases are simultaneously estimated using magnetometer outputs.

This paper is organized as follows. In section II, an attitude determination algorithm using only magne-tometers is introduced presuming that the attitude change during the measurement period is very small. In

∗Senior Researcher, Advanced Technology R&D Center, 8-1-1 Tsukaguchi-Honmachi, Amagasaki, Hyogo, Member AIAA.

1 of 13

American Institute of Aeronautics and Astronautics

AIAA Guidance, Navigation and Control Conference and Exhibit18 - 21 August 2008, Honolulu, Hawaii

AIAA 2008-6294

Copyright © 2008 by the American Institute of Aeronautics and Astronautics, Inc. All rights reserved.

Page 2: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

Figure 1. Conventional attitude sensor configuration (Magnetometer and sun sensor).

section III, the algorithm is extended to combine magnetometers with rate sensors, where both the three-axisattitude and rate sensor biases are estimated. Section IV gives numerical examples. Section V concludes thepaper.

II. Stationary Attitude Determination by Magnetometers

We discuss an attitude determination algorithm using only magnetometers presuming that the attitudechange during the measurement period is very small.

II.A. Measurement Model

Three-axis magnetometers measure the local geomagnetic field. After calibration of their scale factors andbiases, their outputs have a simple relationship with the magnetic field vector given by a geomagnetic fieldmodel such as the International Geomagnetic Field Model (IGRF) as

UB→IrB = rI (1)

where UB→I is a coordinate transformation matrix from the spacecraft body coordinates to the inertialcoordinates, rB is a measured magnetic field vector expressed in the body coordinates, and rI is a referencemagnetic field vector computed from the geomagnetic field model and expressed in the inertial coordinates.7,8

The direction of the vectors rB and rI is used for attitude estimation and their magnitude is not used.Therefore, rB and rI are regarded as normalized in the following discussion.

One measurement gives two degree-of-freedom (d.o.f.) information. To determine a three-axis attitude,it is necessary to take measurements at least two points that are enough separated from each other (Figure2). To average out the measurement errors and model errors contained in Eq. (1), we take N measurements.Then the attitude estimation problem is to find a coordinates transformation matrix UB→I that satisfies thefollowing relationship. The subscript i stands for i-th measurement.

UB→IrBi = rIi (i = 1, · · · , N) (2)

II.B. Attitude Determination Algorithm

Suppose that two measurements by magnetometers provide a magnetic unit vector in the body coordinatesat each orbit position. Suppose also that earth magnetic field model provides a magnetic unit vector in theearth fixed coordinates (which can be easily converted into the inertial coordinates) at each orbit position.Then a simple method called algebraic method is known that constitutes an orthogonal frame from two unitvectors in each coordinates and computes a coordinates transformation matrix (equivalently a three-axis

2 of 13

American Institute of Aeronautics and Astronautics

Page 3: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

Figure 2. Measurements at two points (Stationary case).

attitude) by combining the two orthogonal frames. First, three axes of the body coordinates xBM , yBM and

zBM are constructed from the first and second measured vectors rB1 and rB2 as

xBM =rB1 + r

B2

||rB1 + rB2 ||, yBM =

rB1 × rB2||rB1 × rB2 ||

, zBM = xBM × yBM (3)

Similarly, three axes of the inertial coordinates xIM , yIM and zIM are constructed from the first and second

reference vectors rI1 and rI2 as

xIM =rI1 + r

I2

||rI1 + rI2||, yIM =

rI1 × rI2||rI1 × rI2||

, zIM = xIM × yIM (4)

Then, the coordinates transformation matrix UB→I is determined as

UB→I =hxIM , yIM , zIM

i hxBM , yBM , zBM

iT(5)

where symbol · indicates an estimated value, and the notation ( )T indicates the transpose of the vectoror the matrix in question. Because the measurement errors of the magnetometers are comparatively large,just two measurements may not achieve sufficient accuracy in attitude determination. Therefore, we takeN -times measurements and solve for a coordinates transformation matrix that match N vectors from sensorsto N vectors from the model. We define a cost function J and find UB→I that minimizes J .

minUB→I

J(UB→I) =NXi=1

°°rIi −UB→IrBi °°2 (6)

We start with the three-axis attitude estimated by the algebraic method; UB→I and update the attitudeestimates based on the differences between the measured vectors and vectors that are transformed near tothe measured ones through the initial estimated coordinates transformation matrix.

J(δU) =

NXi=1

°°°UTB→IrIi − δUrBi

°°°2 (7)

UB→IδU→ (new)UB→I (8)

Noting that the attitude estimate update δU is small, we apply small angle approximations to δU.

δU ≈ I3 − [ε×] (9)

3 of 13

American Institute of Aeronautics and Astronautics

Page 4: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

where I3 is a 3× 3 identity matrix and the notation [ε×] indicates the 3× 3 cross-product-equivalent matrixassociated with the 3-dimensional vector ε, i.e.

[ε×] =

⎡⎢⎣ 0 −ε3 ε2

ε3 0 −ε1−ε2 ε1 0

⎤⎥⎦ (10)

By its definition, ε gives an estimate update in the body coordinates. Substituting Eq. (9) into Eq. (7), weobtain

J ≈NXi=1

°°∆rBi + [ε×] rBi °°2 (11)

where a residual vector ∆rBi is defined as

∆rBi = UT

B→IrIi − rBi (12)

From Eq. (11), we derive linearized equations in terms of attitude estimate update.

J ≈NXi=1

°°∆rBi −Biε°°2 (13)

where matrix Bi is defined asBi =

£rBi ×

¤(14)

The global minimum of the cost function J can be computed by solving for the first-order necessary conditionfor an optimum:

∂J

∂ε= 0 (15)

Then we obtain the attitude update ε as

ε =

ÃNXi=1

BTi Bi

!−1 NXi=1

BTi ∆r

Bi (16)

We can apply an iteration to improve estimation accuracy.

II.C. Evaluation of Estimation Accuracy

The measured magnetic field vector contains a measurement error. Because the magnetic field vector mea-surement is normalized, this error is modeled as a small angle rotation.

wi = [νi×] rBi (17)

The small angle rotation νi is supposed to be a Gaussian, zero-mean random vector.

E [νi] = 0, E£νiν

Tj

¤= σ2νδijI3 (18)

where E [·] represents an operation of taking an expectation, σν is the standard deviation of the small anglerotations, and δij is Kronecker’s delta. From Eqs. (16) and (17), estimation errors ε are computed as

ε = ε− ε =

ÃNXi=1

BTi Bi

!−1 NXi=1

BTi [νi×]rBi (19)

where symbol · indicates an estimation error.From Eqs. (18) and (19), statistical evaluation of attitude estimation errors is obtained as

E [ε] = 0, E£εεT

¤= σ2ν

ÃNXi=1

BTi Bi

!−1(20)

4 of 13

American Institute of Aeronautics and Astronautics

Page 5: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

Noting that the following identity holds for an arbitrary 3× 1 unit vector x,[x×] [x×]T = I3 − xxT (21)

we rewrite Eq. (20) into

E£εεT

¤= σ2ν

ÃNXi=1

I3 − rBi rBiT

!−1(22)

Recalling that the measured magnetic vector rBi does not change much in a short period, we can deduce twoconclusions from Eq. (22). Here the superscript B is intentionally deleted, because the attitude estimationerror is factorized into two components such that one is perpendicular to rBi and the other is parallel to r

Bi ,

whose expression does not actually depend on the coordinates used for ri.

• The attitude estimation error perpendicular to ri is approximately evaluated as σν/√N

• The attitude estimation error parallel to ri depends on the amount of changes in ri and can be fairlylarge.

In order to evaluate quantitatively how large the attitude estimation error parallel to ri is, we approximatethe changes in ri as a successive small angle rotation around a unit vector λ, which is defined as

λ =r× (dr/dt)||r× (dr/dt)|| (23)

where r is a representative (e.g. averaged values for ri) magnetic vector and (dr/dt) means a directionchange of r in a very short time. Therefore, (dr/dt) is perpendicular to r. The magnetic vector at i-thsampling ri is described as

ri = (cos θiI3 + sin θi [λ×]) r (24)

where θi is a rotation angle of ri from r. Here we assume that each successive small angle rotation δθi isidentical and given by

δθi =θ

N − 1 (25)

where θ is the total change in the direction of the magnetic vector. Then, θi is described as

θi =

µi− N + 1

2

¶δθ, i = 1, · · · , N (26)

Substituting Eq. (24) into Eq. (22) and considering that N is a large number, we obtain explicit expressionsfor statistical evaluation of attitude estimation errors as

E£εεT

¤=

σ2νN

µλλT +

12

θ2rrT +

1

1− θ2/12(dr/dt)(dr/dt)T

¶(27)

where dr/dt is defined as a unit vector dr/dt/||dr/dt||. From Eq. (27), it is concluded that

• On the right side of Eq. (27), the common factor, σ2ν/N shows statistical improvement of estimationaccuracy when the number of measurements increases, whereas terms in the parenthesis shows thebreakdown of the estimation error among the three components, namely, parallel to λ, parallel to r,and parallel to dr/dt.

• The attitude estimation error parallel to λ is the smallest component and is evaluated as σν/√N

• The attitude estimation error parallel to r is the largest component and is evaluated as 2√3σν/(√Nθ).

The error is in inverse proportion to the rotational angle (the amount of direction change) of themagnetic vector. This justifies the intuitive requirement that to estimate a three-axis attitude it isnecessary to wait for a while so that the orbital motion of the spacecraft brings a well different positionin the earth magnetic field.

• The attitude estimation error parallel to dr/dt is the middle component and is evaluated as σν/pN(1− θ2/12). Because θ is much smaller than 1, this error is just a little larger than the error

parallel to λ.

5 of 13

American Institute of Aeronautics and Astronautics

Page 6: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

III. Rotating Attitude Determination by Magnetometers and Rate Sensors

We extend the attitude determination algorithm developed in section II to combine magnetometers withrate sensors in order to determine a three-axis attitude of spacecraft that may change its attitude quickly.The basic idea is to apply body rate estimates to compensate for the rotational so that the problem ofattitude determination is reduced similar to a stationary one (Figure 3).

Figure 3. Measurement at two points (Rotating case).

III.A. Measurement Model

The rate sensors measure the body rates of the spacecraft. Their outputs contain a bias, which can beregarded as constant during a short time period

ωmesi = ωi + ωb (28)

where ωmesi , ωi and ωb are measured body rates, their true values and a measurement bias vector, respec-tively, and are expressed in the body coordinates. In combination with the measured body rates ωmesi , therelationships between the measured magnetic field vector and the reference vector become

rBi = UI→B(ti)rIi = UB(t1)→B(ti)UI→B(t1)r

Ii (29)

where matrix UB(t1)→B(ti) is a coordinates transformation matrix from the initial body coordinates to thebody coordinates at i-th sampling time.

UB(t1)→B(ti) = U(ωmesi−1 − ωb∆t)× · · · ×U(ωmes2 − ωb∆t)×U(ωmes1 − ωb∆t) (30)

When a rate sensor is allocated to each axis, the unknown variables are the three-axis attitude and threebiases, which means 6 unknowns in total. Therefore, it is necessary to take measurements at least threepoints that are enough separated from each other. To average out the measurement errors and model errorscontained in Eqs. (28) and (29), we take N measurements. Then the attitude estimation problem is to findan initial coordinates transformation matrix UB(t1)→I and a bias vector ωb that satisfy Eqs. (28) and (29)for i = 1, · · · , N . Then we can compute a coordinates transformation matrix at i-th sampling time as

UI→B(ti) = UB(t1)→B(ti)UI→B(t1) (31)

III.B. Attitude Determination Algorithm

Similar to subsection II.B, we define a cost function J and find UB(t1)→I and ωb that minimize J .

minUB(t1)→I ,ωb

J(UB(t1)→I ,ωb) =NXi=1

°°rIi −UB(ti)→IrBi °°2 (32)

6 of 13

American Institute of Aeronautics and Astronautics

Page 7: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

We first assume ωb is zero and compensate the rotational motion of the spacecraft by applying the followingcoordinates transformation.

rB2 → UTB(t1)→B(t2)rB2 (33)

With this rotation-compensated vector, we compute the initial estimate of UB(t1)→I using Eqs. (3), (4) and(5). Then we update the attitude estimates based on the differences between the measured vectors and vectorsthat are transformed near to the measured ones through the initial estimated coordinates transformationmatrix combined with measured body rates subtracted by the estimated bias vector.

UB(t1)→I = UB(t1)→IδU (34)

ωi = ωmesi − ωb − δωb (35)

δU ≈ I3 − [ε×] (36)

Similar to section II, we derive linearized equations in terms of attitude estimate update and a biasvector.

minUB(t1)→I ,ωb

J(ε, δωb) =NXi=1

°°∆rBi −Biε−Ciδωb∆t°°2 (37)

where a residual vector ∆rBi and matrices Bi and Ci are defined as

∆rBi = UT

B(t1)→IrIi −UTB(t1)→B(ti)rBi (38)

Bi =h³UTB(t1)→B(ti)r

Bi

´×i

(39)

Ci =h³UTB(t1)→B(ti)r

Bi

´×i+UTB(t1)→B(t2)

h³UTB(t2)→B(ti)r

Bi

´×i+ · · ·

+UTB(t1)→B(ti−1)h³UTB(ti−1)→B(ti)r

Bi

´×i

(40)

The global minimum of the cost function J can be computed by solving for the first-order necessary conditionfor an optimum:

∂J

∂ε= 0,

∂J

∂δωb= 0 (41)

Then we obtain the attitude update ε and a bias update δωb as"ε

δωb

#=

"D0 D1

D1 D2

#−1 "d0

d1

#(42)

D0 =NPi=1

BTi Bi, d0 =

NPi=1

BTi ∆r

Bi

D1 =NPi=1

CTi Bi, d1 =NPi=1

CTi ∆rBi

D2 =NPi=1

CTi Ci

(43)

We can apply an iteration to improve estimation accuracy.

III.C. Evaluation of Estimation Accuracy

Similarly to section II.C, statistical evaluation of attitude and bias estimation errors is obtained as

E

δωb

#=

"0

0

#, E

⎡⎣Ã ε

δωb

!Ãε

δωb

!T⎤⎦ = σ2ν

"D0 D1

D1 D2

#−1(44)

7 of 13

American Institute of Aeronautics and Astronautics

Page 8: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

IV. Numerical Examples

IV.A. Simulation Conditions

To evaluate the proposed algorithm and statistical analysis of estimation accuracy, Monte-Carlo simulationsare conducted. The simulation conditions for stationary spacecraft and rotating spacecraft are summarizedin Tables 1 and 2. In the tables, underlined items are chosen for parametric study and underlined values arethe default ones. Initial attitude (quaternion) and rate sensor bias are randomly chosen. Dipole model isused as a geomagnetic field model.

Table 1. Simulation condition for stationary spacecraft

Item Unit Value

Orbit height km 900

Eccentricity 0

Inclination deg 45

Magnetometer output error rad-sigma per axis 0.01, 0.025, 0.05, 0.10

Initial attitude (-0.784, 0.124, -0.557, -0.245)

Initial body rate deg/s (0, 0, 0)

Total measurement period s 120, 300, 600, 1200

Sampling period s 2, 5, 10, 20

Table 2. Simulation condition for rotating spacecraft

Item Unit Value

Orbit height km 900

Eccentricity 0

Inclination deg 45

Magnetometer output error rad-sigma per axis 0.01, 0.025, 0.05, 0.10

Rate sensor bias deg/s (0.1, 0.1, 0.1)

Initial attitude (-0.784, 0.124, -0.557, -0.245)

Initial body rate deg/s (2, 2, 2)

Total measurement period s 600

Sampling period s 2

IV.B. Simulation Results for Stationary Spacecraft

Here we apply the estimation algorithm described in section II, where the spacecraft is assumed stationary.Figures 4, 5, and 6 are the results of parametric study and they show attitude estimation error with respectto magnetometer output error, total measurement time, and number of measurements for a stationaryspacecraft. In the figures, the estimation errors are divided into three components, i.e. parallel to themagnetic field vector r, parallel to the time derivative of the magnetic field vector dr/dt, and parallel to thecross product of r and dr/dt. A dot (·) represents an each sample from simulations. Short lines show +/−1 sigma values computed from Eq. (20). From the figures, it is shown that

• Attitude estimation error is in proportion to magnetometer output error.• Estimation error parallel to r is in inverse proportion to the total measurement time.• Estimation error perpendicular to r is not affected by the total measurement time.• Because the total change in the magnetic vector direction is approximately in proportion to the totalsimulation time, the two findings above are both explained by the discussions about Eq. (27). Fur-thermore, with initial height 900 km, inclination angle 45 deg, and total simulation period 600 s, total

8 of 13

American Institute of Aeronautics and Astronautics

Page 9: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

angular change in the magnetic vector, θ, becomes 0.50 ' (1/2). Then, Eq. (27) tells that the errorparallel to r is

q12/θ2 ' 4√3 ∼ 7 times larger than the error perpendicular to r. Figure 4 supports

this expectation.

• All estimation errors are in inverse proportion to number of measurements. This is explained by thediscussions about Eq. (27).

• Sigma values match the simulation results.

Figure 4. Attitude estimation error with respect to magnetometer output error (stationary case). A dot (·) representsan each sample. Short lines show +/- 1 sigma values derived from analytical study. Symbol r|| shows the componentparallel to the magnetic field vector, (dr/dt)|| shows the component parallel to the time derivative of r, and cross(r, dr/dt)||shows the component parallel to the cross product of r and dr/dt.

9 of 13

American Institute of Aeronautics and Astronautics

Page 10: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

Figure 5. Attitude estimation error with respect to total measurement time (stationary case). A dot (·) represents aneach sample. Short lines show +/- 1 sigma values derived from analytical study. Symbol r|| shows the component parallelto the magnetic field vector, (dr/dt)|| shows the component parallel to the time derivative of r, and cross(r, dr/dt)|| showsthe component parallel to the cross product of r and dr/dt.

Figure 6. Attitude estimation error with respect to number of measurements (stationary case). A dot (·) represents aneach sample. Short lines show +/- 1 sigma values derived from analytical study. Symbol r|| shows the component parallelto the magnetic field vector, (dr/dt)|| shows the component parallel to the time derivative of r, and cross(r, dr/dt)|| showsthe component parallel to the cross product of r and dr/dt.

10 of 13

American Institute of Aeronautics and Astronautics

Page 11: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

IV.C. Simulation Results for Rotating Spacecraft

Here we apply the estimation algorithm described in section III, where both magnetometers and rate sensorsare used. Figure 7 is the result of parametric study and it shows attitude estimation error and body rateestimation error (which corresponeds to the rate sensor bias estimation error), with respect to magnetometeroutput error for a rotating spacecraft. The ordinates and symbols in the figure are similar to Figure.4 exceptthat the sigma values are computed from Eq. (44). Figure 8 is prepared for comparison, where spacecraftbody rate is set zero. From the figures, it is shown that

• Both attitude and body rate estimation errors are in proportion to magnetometer output error.• Body rate estimation errors are on the same order for each axis.• Attitude estimation error increases when rate bias is estimated, considering that the sampling periodis shortened from 10 to 2 seconds.

• When there is initial body rate, the body rate estimation error has a tendancy to improve comparedwith a stationary case. This is considered to be caused by improvement of overall observability due torotational motion of the spacecraft.

• Sigma values match the simulation results.

V. Conclusion

We proposed a new attitude determination algorithm for a spacecraft in low earth orbits using mag-netometers and rate sensors, which is applicable to a rotating spacecraft and does not require additionalattitude sensors. First, an attitude determination algorithm using only magnetometers was introduced pre-suming that the attitude change is very small. Then the algorithm was extended to combine magnetometerswith rate sensors, where both the three-axis attitude and rate sensor biases are estimated. The estimationerror was statistically analyzed. Numerical examples showed validity of the attitude determination algorithmand its accuracy evaluation.

References

1Merayo, J., Brauer, P., Joergensen, P., Risbo, T. and Cain, J., “The Spinning Astrid-2 Satellite Used for Modeling theEarth’s Main Magnetic Field,” IEEE Trans. Geoscience and Remote Sensing, Vol. 40, No. 4, 2002, pp. 898-909.

2Challa, M., Kotaru, S., and Natanson, G., “Magnetometer-Only Attitude and Rate Estimates during the Earth RadiationBudget Satellite 1987 Control Anomaly,” AIAA Paper 97-3615, 1997.

3Bar-Itzhack, I. and Harman, R., “Recursive Attitude and Rate Determination of Spinning Spacecraft,” AIAA Guidance,Navigation and Control Conference and Exhibit [CD-ROM], AIAA Paper 2007-6811, AIAA, Reston, VA, 2007.

4Oshman, Y. and Dellus, F., “Fast Estimation of Spacecraft Angular Velocity from Sequential Geomagnetic Field Obser-vations,” AIAA Paper 2000-4242, AIAA, Reston, VA, 2000.

5Challa, M., Natanson, G. and Wheeler, C., “Simultaneous Determination of Spacecraft Attitude and Rates Using Only aMagnetometer,” AIAA Paper 96-3630-CP, AIAA, Reston, VA, 1996.

6Challa, M., Natanson, G. and Ottenstein, N., “Magnetometer-Only Attitude and Rate Estimates for Spinning Spacecraft,”AIAA Paper 2000-4241, AIAA, Reston, VA, 1996.

7Wertz, J. (ed.), Spacecraft Attitude Determination and Control, pp. 249-254, D. Reidel Pub. Co., Boston, 1978.8Challa, M. and Harman, R., “A New Magnetometer Calibration Algorithm and Applications,” Proceedings of AIAA

Guidance, Navigation, and Control Conference, Boston, MA, 1998, pp. 697-707.

11 of 13

American Institute of Aeronautics and Astronautics

Page 12: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

a) Attitude estimation error

b) Body rate estimation error

Figure 7. Attitude and body rate estimation error (rotating case). A dot (·) represents an each sample. Short linesshow +/- 1 sigma values derived from analytical study. Symbol r|| shows the component parallel to the magnetic fieldvector, (dr/dt)|| shows the component parallel to the time derivative of r, and cross(r, dr/dt)|| shows the componentparallel to the cross product of r and dr/dt.

12 of 13

American Institute of Aeronautics and Astronautics

Page 13: [American Institute of Aeronautics and Astronautics AIAA Guidance, Navigation and Control Conference and Exhibit - Honolulu, Hawaii ()] AIAA Guidance, Navigation and Control Conference

a) Attitude estimation error

b) Body rate estimation error

Figure 8. Attitude and body rate estimation error (stationary case). A dot (·) represents an each sample. Short linesshow +/- 1 sigma values derived from analytical study. Symbol r|| shows the component parallel to the magnetic fieldvector, (dr/dt)|| shows the component parallel to the time derivative of r, and cross(r, dr/dt)|| shows the componentparallel to the cross product of r and dr/dt.

13 of 13

American Institute of Aeronautics and Astronautics