Attitude and Interlock Angle Estimation Using Split ... - Springer Link

3 downloads 554 Views 599KB Size Report
Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker. 87 ..... We mention that since the true spacecraft rates in the star camera frame,.
The Journal of the Astronautical Sciences, Vol. 55, No 1, January–March 2007, pp. 85–105

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker1 Puneet Singla,2 D. Todd Griffith,3 Anup Katake,4 and John L. Junkins5

Abstract An efficient Kalman filter based algorithm has been proposed for the spacecraft attitude estimation problem using a novel split-field-of-view star camera and three-axis rate gyros. The conventional spacecraft attitude algorithm has been modified for on-orbit estimation of interlock angles between the two fields of view of star camera, gyro axis, and the spacecraft body frame. Real time estimation of the interlock angles makes the attitude estimates more robust to thermal and environmental effects than in-ground estimation, and makes the overall system more tolerant of off-nominal structural, mechanical, and optical assembly anomalies.

Introduction Spacecraft attitude determination is the process of estimating the orientation of a spacecraft from on-board observations of line-of-sight vectors to other reference points such as celestial bodies, the direction of the Earth’s magnetic field gradient, etc. [1]. Generally, a redundant set of these observations is used to generate more accurate estimates of the spacecraft attitude. If these observations are error-free, then the spacecraft attitude can be determined with small errors limited only by errors in the catalog directions of the reference vectors. But, in practical problems, these vector observations are not error-free, as some kind of sensor noise is always associated with these measurements. Typically star catalog position errors are a fraction of a micro-radian, whereas random measurement errors are one to two orders of magnitude larger. 1

Presented as paper AAS 04-120 at the 14th AAS/AIAA Space Flight Mechanics Meeting, Maui, Hawaii, February 9 – 13, 2004. 2 Assistant Professor, Department of Mechanical & Aerospace Engineering, University at Buffalo, NY 14260, Member AAS and AIAA. 3 Analytical Structural Dynamics Department, Sandia National Laboratories, Albuquerque, NM 87185. 4 StarVision Technologies sponsored Graduate Student, Ph.D. Candidate, Department of Aerospace Engineering, Texas A&M University, College Station, TX 77843. 5 Distinguished Professor, holder of George J. Eppright Chair, Department of Aerospace Engineering, Texas A&M University, College Station, TX 77843, Fellow AAS. 85

86

Singla, Griffith, Katake, and Junkins

Several attitude sensors are discussed in the literature, including three-axis magnetometers, Sun sensors, Earth-horizon sensors, global positioning sensors, rate integrating sensors and star cameras [1]. The accuracy of the attitude estimation depends on the quality of the attitude sensor used. For example, the attitude estimate accuracy that can be achieved with Sun sensors is approximately 0.015 degrees for two-axis attitude estimation (direction of the Sun in body and inertial frame) with the best available instruments; however, for a star camera this number for three-axis attitude can be estimated to within 0.0005 degrees. For higher accuracies, star measurements are used as the key inputs for the attitude estimation as their position with respect to the inertial frame is fixed and centroiding de-focused light from these small point sources enables high precision. The spacecraft attitude is determined by taking digital images of the stars by using Charge Coupled Device (CCD) or Complementary Metal Oxide Semiconductor (CMOS) sensor based star cameras. Pixel formats on the order of 512  512 or larger are commonly used to provide good resolution images wherein the stars can be identified using one of several robust algorithms which have been developed [2, 3]. Attitude estimation accuracies in the sub-arc second range are possible using star data and gyro data, but the drawbacks are cost of the star camera, computation complexity, and extensive software and calibration requirements. Two star cameras are usually required to reduce the star dropout probability and especially to improve the geometry that enables precise three-axis attitude estimation. Most of the expense is associated with the camera head (focal plane electronics, processor, temperature control and interfacing). A novel split-field-of-view star camera is being developed to reduce the overall cost of attitude estimation without compromising the attitude accuracy. This star tracker was adopted for the recently canceled EO-3 Geostationary Imaging Fourier Transform Spectrometer (GIFTS) mission. However, the split-field-of-view design has been licensed by Broadreach Engineering6 and various algorithms designed for the GIFTS mission (the star identification, camera calibration, and attitude estimation algorithms) have been licensed by StarVision Technologies7 to develop a commercial star tracker technology for future missions. The basic idea of splitfield-of-view star camera is shown in Fig. 1(i). The split-field-of-view star camera has the capability to simultaneously image two nominally orthogonal portions of the sky using a single camera head with only one CMOS detector. Since a single focal plane, electronic sub-system, power subsystem and processor are required, the split-field-of-view star camera design offers significant advantages in mass, power, and cost in comparison to using two conventional trackers to achieve comparable accuracy. However, doing so makes the attitude estimation problem more complicated as the accuracy of the attitude estimates implicitly depends on the knowledge of the interlock angle between two fields of view (FOVs) of the star camera. A significant penalty associated with the split-field-of-view optics, however, is the loss of about 50% of the light. This can be accommodated with an appropriate integration time. To further complicate attitude estimation, we may not know precisely the orientation of the gyro axis with respect to the star camera reference axis. In order to achieve high precision attitude determination, comparably precise estimates of these interlock angles are required. Generally, ground-based testing is 6

http://www.broad-reach.net. http://www.starvisiontech.com.

7

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

FIG. 1.

87

Dual Field of View (FOV) Camera Concept.

used to calibrate the space systems, but this process requires the systematic testing in expansive high precision laboratories. In addition, the environmental changes over the life of the mission may result in calibration changes that are difficult to predict. Therefore, the precise knowledge of these interlock angles are best-determined from on-orbit measurements in the actual operational environment. In addition, an on-orbit calibration approach has the advantage that the algorithms can be invoked at any time when a sensor health-monitoring algorithm determines that sensor calibration accuracy has been diminished to an unacceptable degree. In this paper, a new approach is presented that allows us to estimate all interlock angles on-orbit along with the spacecraft attitude. The structure of the paper is as follows. First, various reference frames required to solve the attitude estimation problem using a split-field-of-view star camera are introduced followed by a brief review of the star camera and gyro models. Next, a new algorithm is presented to compute the spacecraft attitude along with various interlock angles on-orbit. Finally, the proposed algorithm is validated by simulating various space mission scenarios.

Reference Frames Generally, at least two coordinate systems are defined for the attitude determination process: an inertial frame, and a body-fixed frame. For most problems, the inertial reference frame is a nonrotating frame fixed associated with an equatorial plane and equinox axis of a prescribed date (e.g. J2000). The projection of the orthogonal image frame axes onto the inertial frame axes is given by an orthogonal matrix, C, called the attitude matrix. Now, the attitude determination problem requires us to determine a set of attitude coordinates that uniquely parameterize the orthogonal attitude matrix, C. The various attitude sensors provide the measurement data in their own independent frame, generally known as the sensor frame. For academic purposes, the body frame of the spacecraft and the sensor frame are frequently assumed to be the same. Unfortunately this assumption is not generally true, and a precise knowledge of the interlock angle between body frame and sensor frame is necessary for a high precision attitude determination problem. This is due to the fact that the body frame is usually associated with an optical bench on which critical science instruments are mounted.

88

Singla, Griffith, Katake, and Junkins

To solve the attitude determination problem using a split-field-of-view star camera and a rate gyro, the following five reference frames are used: 1. The inertial frame fixed to the center of the Earth denoted by N. 2. A frame with z-axis parallel to the boresight axis of the front FOV denoted by BF . 3. A frame with z-axis parallel to the boresight axis of the side FOV denoted by BS . 4. The gyro axis frame (the frame in which gyro data is available) denoted by G. 5. The star camera reference frame denoted by BK (same as the spacecraft (body) frame) defined as follows: DEFINITION OF STAR CAMERA REFERENCE FRAME. If the i, j, k set denotes three directions of the star camera BK reference frame and bF and bS denote the boresight directions (unit vectors) for the front and side FOV respectively as shown in Fig. 1(ii), then 1. The x-direction of the BK frame is along the unit vector that bisects the bore(b  b ) sight unit vectors; i.e. i  bF  bS  . F S 2. The z-direction is along the unit vector normal to the plane of boresight vec(b  b ) tors; k  bF  bS  . F S 3. The y-direction is along the unit vector that completes the right hand set; i.e. j  k  i. We mention that the derived BK frame has been defined in such a way that the output attitude from BK is least affected by sensor noise, residual calibration errors in interlock, and errors in rotation about the front and side boresights. Given measurements in a single FOV, it should be noticed that the boresight rotations typically are one order of magnitude less precisely determined than the direction of the boresight vector. Thus, the BK frame is based upon the truth that the two boresight vectors, bF , bS  are the two best determined body-fixed vectors, and deriving the body frame from them seems logically well-justified. Of course, final interlock rotation to various other science sensor frames remains to be estimated. However, this must be addressed in a mission specific fashion.

Sensor Model Development of the mathematical models for the attitude sensor is an important task in determining the spacecraft attitude solution. Generally, these mathematical models are parameterized by some poorly known parameters, which are estimated by using the sensor measurements and an estimation algorithm. In this section, a brief review of the star camera and the gyro measurement models are presented which will be used later in the estimation algorithm. Star Tracker Model The spacecraft attitude is determined by processing the digital images of the stars by a star camera. Image plane coordinates of the stars are modeled by using a pinhole camera model for the star camera. Photograph image plane coordinates of the jth star are given by the ideal colinearity equations xj  f

C11rx j  C12ry j  C13rz j  x0 C13rx j  C32ry j  C33rz j

(1)

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

yj  f

C21rx j  C22ry j  C23rz j  y0 C13rx j  C32ry j  C33rz j

89

(2)

where f is the effective focal length of the star camera and x0 , y0 are the principal point offset, determined by the ground or on-orbit calibration [4]. C ij are the attitude matrix elements (orienting the sensor frame relative to the inertial axes), and the inertial star vector r j , as shown in Fig. 2(i), is given by

 



rx j cos  j cos  j rj  ry j  cos  j sin  j rz j sin  j

(3)

Further, choosing the z-axis of the image coordinate system towards the boresight of the star camera as shown in Fig. 2(ii), the measurement unit vector b j is given by



x j  x0 1 bj   yj  y0 x j2  yj2  f 2 f

(4)

The relationship between the measured star direction vector b j in image space and its projection rj on the inertial frame is given by bj  Crj   j

(5)

where C is the attitude matrix, which denotes the orthogonal projection between the image and the inertial frame, and  j is a zero mean Gaussian white noise process with covariance matrix R j . Small systematic departures from the ideal colinearity projection of equations (1 – 2) or (5) occur in practice; these systematic errors can be calibrated and corrected as discussed in reference [4]. The attitude determination problem reduces to the estimation of the elements of the attitude matrix C. The spacecraft attitude can be represented by many coordinate choices [5, 6], but the

FIG. 2.

Star Pairs in Inertial and Image Plane.

90

Singla, Griffith, Katake, and Junkins

quaternion representation is an ideal choice for the attitude estimation as it is free of geometrical singularities and has linear kinematic differential equations. In this paper, quaternions (denoted by q) are used to parameterize the attitude matrix, C, and various sensor interlock matrices which are defined as follows: DEFINITION OF INTERLOCK ANGLES. If quaternions q F and q S are used to represent the attitude of frames BF and BS with respect to an inertial frame, N, respectively, then the quaternion, q FS  q F  q1 S , represents the attitude of the frame B F with respect to the frame B S , i.e., the interlock angle between frames 1 B F and B S . Further, quaternions q FK  q F  q1 K and q SK  q S  qK represent the attitude of frames B F and B S with respect to the star camera reference frame, BK , respectively. Here, the operator “” denotes the quaternion composition as defined in reference [5] as q1  q1 2 



q2 4 I33  q˜ 2 13 q2 13 q1 qT2 13 q2 4

(6)

where q 2 13 and q 2 4 denote the vector and scalar part of a quaternion, q 2 and q˜ 2 13 represents the cross-product matrix for the vector q 2 13 . The cross-product matrix

a˜ for the general vector a is given by



0

a˜  a3 a2

a3 0 a1

a2 a1 0

(7)

Gyro Model The spacecraft attitude is normally estimated by a combination of the attitude sensor (e.g. star tracker) measurements along with a model of spacecraft dynamics. The use of densely available angular rate data can omit the need of the spacecraft dynamic model. Rate gyros are used to measure the angular rates of the spacecraft without regard to the attitude of spacecraft. While modern gyros have very small random errors, they do typically have unknown biases that must be calibrated to achieve high accuracy. The noise level of the gyro and bias (constant drift) are the two main non-ideal characteristics of the rate gyro measurements. Generally, rate gyro measurements are modeled by the expression [1, 7]

g  ˜ g  b   1

(8)

where g is the unknown true angular velocity of the spacecraft in the gyro frame, ˜ g is the gyro measured angular rate of the spacecraft in the gyro frame, and b is the gyro bias drift vector, which is further modeled by the first-order stochastic process b˙   2 (9) where  1 and  2 are assumed to be modeled by two independent Gaussian white noise processes with variance  u2 and  v2, respectively.

Attitude Kinematics The kinematic equations for the spacecraft motion using the quaternion as attitude parameters can be written as

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

q˙ 

1 1

q  q 2 2

where q and   are defined as

q 



q4 I33  q˜ 13 , qT13

  



 ˜  T 0

91

(10)

(11)

In general, equation (10) represents a linear time varying system and it is usually not possible to find a closed-form solution. If we assume that the angular velocity vector of the spacecraft is constant in the body frame, i.e., the image frame coordinate system, then the spacecraft kinematic equation (10) between two sampled data points can be rewritten as dq 1  n˜q d 2

(12)

  ˙ nˆ

(13)

where

Now, equation (12) represents a linear time-invariant system and the closed-form solution can be found by using the procedure listed in reference [9] as



1

qt  e 2 nˆq0  cos



  I44  sin nˆ q0 2 2

(14)

where

  ˙t  t0

(15)

The above written expression holds only if the angular velocity of the spacecraft is constant for the time period of interest. If the direction is constant but the angular speed t is variable, then a slightly more general version can be written with t  tt0f t dt, and the other equations (12) – (14) being the same. Generally, the angular velocity of a spacecraft is usually not constant for a large fraction of an orbit, but it is reasonable to assume that it is approximately constant between two adjacent sampling time intervals of the gyro data. Therefore, the discrete counter part of equation (14) can be written as



q k1  cos



k k I44  sin nˆ k  q k 2 2

(16)

where the rotation angle  k between time interval tk and tk1 is given by

 k   ntk1  tk 

(17)

 n   k    2k 1   2k 2   2k 3

(18)

and  n is defined as

Attitude Determination Process Mathematical models for attitude sensors are generally based upon the “usefulness” rather than the “truth” and do not provide all the information that one would like to know. So, an estimation algorithm is required to extract the useful information

92

Singla, Griffith, Katake, and Junkins

from the available sensor measurements, which are corrupted by sensor noise, biases, and sensor inaccuracies. In addition, the spacecraft attitude estimates must be calculated quickly and continuously during the entire operational life of the mission. On the other hand, to achieve ultimate accuracy, the measurement model together with the calibration and correlation must be capable of representing the measurements to within the random measurement noise levels. During normal operations, the estimation problem is solved recursively; i.e., the attitude filter makes new updates and predictions based on present and prior sensor information. Many recursive attitude estimation algorithms are presented in the literature but the Kalman filter [8] is one of the most widely used and powerful tools for real-time estimation problems. In references [4, 9], a Kalman filter algorithm is developed to estimate the spacecraft attitude along with gyro bias, based upon a body-fixed covariance approach [7] to maintain the unit norm constraint of quaternions. However, to use the split-field-of-view star camera as an attitude sensor, both the star data and gyro data are required to be projected in one common frame BK . Therefore, the knowledge of various interlock angles defined in the previous section is very important before using the Extended Kalman Filter (EKF) algorithm for the attitude and gyro bias estimation. So here, a novel attitude estimation scheme is presented which not only estimates the spacecraft attitude along with gyro bias but also estimates various required interlock angles. Figure 3 shows the basic architecture for the attitude determination algorithm using a split-field-of-view star camera and rate gyro as attitude senors. First, from the star image taken by the split-field-of-view star camera, the stars are assigned to front or side FOV depending upon the shape of the pixel response [10]. After completing the star identification process, the line-of-sight vectors are formed using equations (1), (2), (3), and (4). From these line-of-sight measurements, the geometric best attitude estimate corresponding to each field of view is computed using the quaternion based attitude estimation algorithm, ESOQ2 [11]. From the geometric attitude estimates, the corresponding estimates of the interlock quaternions q FS , q FK , and q SK are computed using the quaternion composition rule as discussed in the previous section. To determine the interlock rotation between the gyro axis and the star camera reference axis, the spacecraft angular rates are estimated in the BK frame using line-of-sight measurements projected to the BK frame. Once good estimates for all interlock quaternions are obtained, an EKF-based estimator is used to update the estimates of attitude in the star camera reference frame, BK , using the gyro rate data and the geometric attitude of the star camera reference frame. In this paper, all these algorithms are discussed briefly and more details about these algorithms can be found in references [4, 11, 18, 19]. Interlock Angle Estimation using Geometric Attitude The first step in the attitude determination process is to assign the measured stars to the front or side FOV. Here, we make use of the fact [12] that astigmatism is introduced in the optical train of each field of view to make star images elliptical rather than circular. The orientation of the major axis indicates which of the two fields of view the star belongs to. The shape of the pixel response distribution for each star can be easily determined during image processing. The standard deviations x and y of the pixel response distribution are computed for each star in the x and y directions. Then, depending upon the values of the standard deviation in the x and y directions, each star is assigned either to the front or side FOV. Now,

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

FIG. 3.

93

Software Architecture for the Attitude Determination Process.

the key problem is to identify the imaged stars corresponding to each FOV with reference to the on-board star catalog. The star catalog contains the spherical coordinate angles of the stars, ( is the right ascension and is the declination; see Fig. 2(i)), to a high accuracy. Many algorithms have been developed for star identification [1] and can be divided into three main categories: 1) Direct template match, 2) Angular separation match, and 3) Phase match. However, star identification

94

Singla, Griffith, Katake, and Junkins

algorithms based upon the angular separation approach are very popular. With reference to Fig. 2, the angle between two star vectors is invariant with respect to orthogonal rotational coordinate transformations. Therefore, the perfectly measured inter-star angle ij would match exactly the corresponding cataloged vectors interstar angle. Of course, the measured inter-star angles will be corrupted by measurement errors and this must be taken into account. Nonetheless, very robust star identification algorithms have been developed [2, 3] that utilize inter-star angles and are therefore independent of spacecraft orientation. The pyramid algorithm matches the imaged plane star pairs with cataloged star pairs by finding a unique triangle characterized by interstar angles. This approach can reliably solve the “lost in space” star identification problem in a fraction of second. After the star identification process, the line-of-sight measurement vectors are computed for each star in the image and catalog planes using equations (3) and (4). Now, the geometric attitude corresponding to each FOV is computed using equation (5). Many attitude estimation algorithms [7, 13 – 16] are discussed in the literature. These algorithms usually fully comply with Wahba’s optimality criterion [17] and thus are in principle equivalent in accuracy. However, they all differ from one another in terms of computational speed, which is an important factor to achieve attitude information at a higher frame rate. To our knowledge, ESOQ-2 [11] is the fastest attitude estimation algorithm and is used to compute the geometric attitude corresponding to each FOV, although several of the available algorithms are comparably efficient. ESOQ-2 uses the q-Method solution equation [16] to compute the optimal quaternion, q opt , using Kqopt  max qopt

(19)

Here, K is a 4  4 symmetric matrix given by K



B  BT  trBI33 zT

z trB

(20)

where B  ni1  i b i rTi is the attitude profile matrix and z  ni1 i bi  ri is a 3  1 vector. The main difference between ESOQ-2 and other q-methods is the way ESOQ-2 computes the optimal quaternion. ESOQ-2 provides an analytic solution for the optimal quaternion through the evaluation of the optimal principal axis, e, using

trB  maxS  zzT e  0

(21)

where S  B  BT  trB  max I33 . A closed-form solution for the optimal quaternion can be obtained for the case of just two vector observations; otherwise, a Newton-Raphson iteration process is applied to compute the optimal attitude. This algorithm usually converges in fewer than four iterations. Once the geometric attitude quaternion, denoted by qF and q S for front and side FOV respectively, is obtained, then equation (6) is used to compute the interlock quaternion estimate q FS  q F  q1 S between two fields of view. Further, the estimated boresight directions bF and bS are computed using bF  Cq Fe 3 bS  CqSe 3

(22)

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

95

where e 3  0, 0, 1 T denotes the boresight direction in the inertial frame. Now, the star camera frame BK is defined using the definition given in the second section and the interlock angle between the front and star camera frame is computed using q FK  q F  q1 K

(23)

After computing interlock angles qFS and qFK , the next step is to estimate the gyro interlock rotation so that gyro rate data can be used to propagate the attitude corresponding to the star camera reference frame between two sets of vector observations. To estimate the gyro interlock rotation, a reference rate vector estimated from star motion in the star camera frame is required, which corresponds physically to the measured gyro rate vector. In the next section, an angular rate estimation algorithm is presented which makes use of the projected star vectors in the BK frame to estimate the spacecraft rate vector in the BK frame. Spacecraft Angular Rate Estimation Algorithm Sufficient information about the body angular rates can be obtained from the attitude sensor measurements, if the attitude sensor data update frequency is high enough and of sufficiently high accuracy to capture the spacecraft motion. The best star cameras are very accurate 2 arc-second [12]) and, in view of recent active pixel sensor cameras, star camera frame rates are increasingly high (10 Hz for the GIFTS mission star camera); it is anticipated that higher frame rates will soon be feasible. This suggests the possibility of deriving angular velocity estimates from “star motion” on the focal plane. In references [9, 18, 19], two different sequential algorithms were presented for spacecraft body angular rates estimation in the absence of the gyro rate data for a star tracker mission: 1. In the first approach, body angular rates of spacecraft are estimated with the spacecraft attitude using the Kalman filter. This method uses a dynamical model in which external torques acting on spacecraft are modeled by a random process. The performance of this algorithm depends on the validity of the assumed dynamical model for the given case, together with the star update frequency. 2. The second approach makes direct use of the rapid update rate of the star camera to approximate the body angular velocity vector. Filtered time derivatives of star tracker body measurements are used to establish “measurement equations” to estimate the spacecraft angular rates. First-order and second-order finite difference approaches are used to approximate the time derivative of body measurements. A sequential Least Squares algorithm is used to filter these noisy measurements and estimate the spacecraft angular rates. This algorithm has the obvious drawback of amplifying the noise in measurements by taking the time derivative of line-of-sight measurements. For high precision star centroid measurements 20 radians), both the algorithms work well, if the sampling interval of star data is well within Nyquist’s limit for the actual motion of the spacecraft. The first approach is found to be more attractive because it does not use approximation of derivatives from noisy measurements. In this approach, the spacecraft body angular rates are estimated with spacecraft attitude using the Kalman filter. This algorithm has been derived from the attitude determination algorithm presented in reference [4]. The 6  1 state vector of the

96

Singla, Griffith, Katake, and Junkins

Kalman filter consists of three components of spacecraft angular rate and the vector part of the error quaternion x

  q13 

(24)

An error quaternion is defined as the composition of the true quaternion and the inverse estimated quaternion; i.e., an incremental rotation which must be composed with the estimated quaternion to get the true quaternion

 q  qK  qˆ K1 qˆK 4 I33  qˆ˜K 13 qˆK 13   qK qˆK 4 qˆKT13



(25)

(26)

The angular acceleration of the spacecraft is modeled by a first-order random process

  ˙   3

(27)

where  3 represents a Gaussian random variable with the known statistical properties E 3  0, E 3T3   w2 I

(28)

Equation (27) along with equation (16) constitute the assumed dynamic model for the propagation of the spacecraft attitude and angular velocity between two sets of star measurements. Therefore, the state differential equation is given by x˙  Fx  Gw

(29)

where w   1,  3  is a process noise vector and the matrices F and G are given by [9] F



 ˜ˆ t 21 I33 , G O33 O33



1 2 I33

O33

O33 I 33

(30)

Adopting the procedure described in references [4] and [9], the state propagation and update equations for the Kalman filter can be written as shown below. Propagation Equations



qˆ K k1  cos where



k k I44  sin nˆ k  qˆ K k 2 2



 n˜ˆ k nˆ k nˆ Tk 0

nˆ k  

and

nˆ k 

(31)

ˆ k n

k   ntk1  tk  and  n  ˆ k   ˆ k21  ˆ 2k 2  ˆ 2k 3 Pk1  k Pk k  GQk G with k 



1 k 2 k O33 I33

(32)

(33)

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

1 k  I33  2 k 

1 2



 

˜ˆ T

˜ˆ T 2 sin  k  1  cos k  n n

I33 t 

97

(34)

 ˜ˆ T 1  cos k ˜ˆ ˜ˆ k  sin k  2n 3n

Qk  E ww T

(35) (36)

Update Equations (to update best estimates given a new measurement) xˆ k  xˆ k  Kk y˜ k  Hk xˆ k 

(37)

Pk  I  Kk HPk  k

 k

(38) 1

Kk  P H Hk P H  R k  T k

T k

(39)

where y˜ k  b˜ k

(40)

Hk  L O33 L  2 b˜ˆ

(41) (42)

We mention that the rate estimation algorithm discussed in this section not only helps us to determine the gyro interlock matrix but also increases the domain of practical applicability of the attitude determination algorithm in case of sudden gyro failure. Gyro Interlock Estimation To use the gyro measurements to propagate the spacecraft attitude between two sets of vector observations, they must be projected from the gyro frame, BG, to the star camera reference frame, BK. In this section, a real time estimation algorithm is presented to estimate the gyro interlock matrix, Gg using the gyro rate measurements and spacecraft angular rate estimates in the BK frame. Let ˜ g represent the gyro measurements in the gyro frame, BG and  represent the rate vector in the BK frame; then the interlock matrix, Gg , rotates the rates in the BK frame to gyro measurements according to

g  bg  Gg 

(43)

where bg represents the unknown gyro bias. It should be noticed that gyro interlock estimation depends upon the knowledge of the unknown gyro bias vector, bg . So basically spacecraft attitude and gyro bias estimates depend upon the knowledge of gyro interlock and gyro interlock depends upon the knowledge of gyro bias. Further, it should be noticed that if spacecraft angular velocity is constant then any errors in the gyro interlock matrix, Gg , can be compensated by the bias estimation according to Gg   b  Gg 0  b 0

(44)

where Gg and b represent the true gyro interlock matrix and bias vector, respectively, whereas matrix Gg 0 and b 0 represent the erroneous gyro interlock matrix and bias vector, respectively. This means, the attitude accuracy of the KF is not affected by the gyro interlock errors if spacecraft rates are constant. However, when the

98

Singla, Griffith, Katake, and Junkins

spacecraft rates are not constant then gyro interlock calibration improves the attitude accuracy, particularly when star measurements are not available. The underlying assumption for the gyro interlock estimation algorithm presented in this paper is that the gyro bias is constant over a period of hours whereas the gyro interlock matrix, Gg , is constant for perhaps months and finally, the spacecraft angular velocity itself is varying with time constants in seconds or even shorter time intervals. Therefore, we can define the differential angular velocity vector, g tk, as the difference between the current time gyro data, g tk, and some reference time gyro data, g t0 

gtk   gtk   gt0

(45)

Substituting for g tk and g t0  from equation (43) in equation (45), we get

gtk   Gg  tk    t0  btk   bt0

(46)

Now, we can choose the reference time t0 sufficiently close to tk such that the bias has not significantly changed, e.g. btk   bt0 and therefore, equation (46) reduces to

gtk   Gg  tk    t0  Gg  tk 

(47)

Now, considering the g tk and  tk as two reference vectors, we can estimate the gyro interlock matrix recursively using the sequential least squares algorithm or a static Kalman filter. As our measurement model defined by equation (47) is nonlinear in nature, we use the static EKF for the estimation of the quaternion, q g, corresponding to the gyro interlock matrix, Gg . The update equation for the estimated state vector, xˆ g, is given by xˆ gk  xˆ g k1  K ky˜ k  Hgk xˆ gk1 

(48)

where xˆ gk is the estimated state vector consisting of the error quaternion defined as

 q g  q g  qˆ 1 g

(49)

Further, y˜ k  gtk  is a synthetic measurement vector for gyro interlock angle estimation algorithm, and Hgk denotes the sensitivity matrix, given by Hgk 

d Ggqg  tk xˆ g k1 dx

(50)

According to the definition of the error quaternion and quaternion multiplication Ggq g  Gg q gGgqˆ g 

(51)

Substitution of equation (51) in equation (50) gives the expression for H g as Hg 

d Gg qg  gtk q g d qg 

(52)

Now, the gyro interlock matrix, Gg , can be expressed in terms of the error quaternion as Gg qg   qg2   qgT  qg I33  2 qg  qgT  2 qG ˜ qg 4

13

 I33  2 ˜ qg13

13

13

13

4

13

(53)

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

99

Substitution of equation (53) in equation (52) yields the expression for Hgk as Hgk  2 ˜ gtk

(54)

We mention that since the true spacecraft rates in the star camera frame, BK , are unknown we use the estimated spacecraft angular rates (as described in the previous section) instead of true ones. Further, if e and  denote the estimation error for spacecraft angular rates and gyro noise vector, respectively then the measurement model for the gyro interlock estimation is given by

gtk   Gg  tk    tk

(55)

where  is the noise vector given by

gtk   Gg  tk    t0  btk   bt0

(56)

Now, assuming  and e to be independent Gaussian white noise processes with covariance matrices R  and R e , respectively, the expression for the measurement noise matrix, R  E T , can be derived as R  2R  Gg Re GgT 

(57)

Now, from equation (55), it is clear that interlock matrix, Gg , is not observable if spacecraft angular rates are constant; further, to get the initial estimates of gyro interlock, it is essential that  tk and g tk are at least an order of magnitude greater than the noise vector,  tk. This suggests that the spacecraft should undergo small angular maneuvers, early in its life, to make the motion sufficiently rich so that the interlock estimation can converge quickly. Finally, we mention that the procedure listed in this section can also be used to update the interlock angles between two FOVs or a FOV and the BK reference frame, as defined in the third section. The initial guesses for these interlock angles are obtained by using the “Geometric Attitude” approach for both FOVs. Spacecraft Attitude and Gyro Bias Estimation Algorithm In this section, an EKF algorithm is developed for the spacecraft attitude estimation in the star camera reference frame using the three axis gyro rate data projected in the BK frame and quaternion estimates, derived geometrically from line-of-sight vector measurements. The algorithm presented in this section is based upon body-fixed covariance approach [7] to maintain the unit norm constraint of quaternions. The state vector of this Kalman filter consists of three components of the gyro bias, b, and the vector part of the error quaternion,  qK13, xK 

  qK13 b

(58)

Using the gyro rate data projected to the star camera reference frame, BK , and well known kinematic model, we can propagate the spacecraft attitude estimates between two sets of star measurements. We mention that in this case, equation (16) along with equations (8) and (9) constitute the assumed dynamic model for the propagation of the spacecraft attitude between two sets of star measurements.

100

Singla, Griffith, Katake, and Junkins

Further, using the procedure listed in references [4, 7, 9] the state equations for the Kalman filter are given as x˙ K  FK xK  GK wK

(59)

where wK   1,  2  is a process noise vector and matrices FK and GK are given by [9] T

FK 



 ˜ t  12 I33 , O33 O33

GK 



 12 I33 O33 O33 I33

(60)

For the update part of the Kalman filter the quaternion estimates from the spacecraft angular rate estimation algorithm are used as quaternion measurements. If q˜ K denotes the quaternion estimates obtained from the spacecraft angular rate estimation algorithm and qK denotes the true quaternion corresponding to star camera reference frame then the measurement model is given by q˜ K  qK   qK

(61)

where  qK denotes the estimation error for quaternion obtained by the spacecraft rate estimation algorithm. Now, using the definition of error quaternion, we can find the expression for the sensitivity matrix, as H



qˆK 4 I33  qˆ˜ K13 qˆKT13

(62)

The summary of equations for this Kalman filter is presented in Table 1. TABLE 1.

Quaternion Based Extended Kalman Filter Summary



qˆ Kk1  cos



k k I44  sin nˆ k qˆ Kk 2 2

Pk1  k Pk k  GQk G where Propagation

k  1k  I33  2k  

1 2



  1k O33

˜ T

˜ T sin k  n n

I33 t 

2k I33 2

1  cos k,   ˜ g  bˆ



˜ T 1  cos k ˜ ˜ k  sin k  2n 3n

xˆ Kk  xˆ Kk  Kk  y˜ k  Hk xˆ Kk  Pk  I  Kk HPk Kk  PkHkTHk PkHkT  Rk1

Update where

Hk 



qˆ K4 I33  q˜ˆ K13 qˆ TK13

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

101

Simulation and Results In this section, we demonstrate the effectiveness of the attitude determination process, developed in this paper, by simulating star camera images. An 8  8 FOV star camera is simulated by using the pinhole camera model dictated by equations (1) and (2) with principal point offset of x0  0.75 mm and y0  0.25 mm. The effective focal length of the star camera is assumed to be 64.2964 mm for both FOVs. For simulation purposes, the spacecraft is assumed to be in a low Earth orbit tumbling with a “for example” angular velocity about the BK reference frame axis

   0 sin 0 t  0 cos 0 t  0 ,  0  103 radsec

(63)

Assuming the star camera update frequency to be 10 Hz, the star data is generated for 2.5 hr motion of the spacecraft. Further, the true line-of-sight vectors for both the FOV are corrupted by Gaussian white noise of standard deviation 17-rad [10]. This corresponds to the random centroiding error for each star. The gyro data are simulated by assuming gyro data frequency to be 100 Hz and projecting the true spacecraft angular rates in the BK reference frame to the gyro frame. The true gyro interlock matrix, G, is given by the following 3-2-1 Euler angle sequence

  1,  2,  3  T 



   , , 2 4 6



T

(64)

Further, the true gyro data are corrupted by gyro bias of 0.1 deghr and Gaussian white noise according to equations (8) and (9) with values for the noise properties of [10]

u  1.6  106 radsec12 v  1.55  1010 radsec32 First, according to Fig. 3, the estimates for interlock angle between two FOV and the BK reference frame are obtained using the geometric attitude for both FOV. Initially, it is assumed that we have no knowledge of these interlock angles. However, due to good accuracy of star data the interlock angles are obtained with an accuracy of 20-rad. Once we have good estimates of interlock angles q FK and q SK, the lineof-sight vectors obtained in frames BF and BS are projected to the star camera reference frame, BK , using these interlock values. Now, the projected line-of-sight vectors in BK frame are used to estimate the spacecraft angular rates along with quaternion, q K , using the procedure outlined in the fifth section. Figures 4(i) and 4(ii) show the plots of the angular rate estimation error and the attitude estimation error along with corresponding 3- bounds, respectively. From these figures, it is clear that we are able to estimate the spacecraft angular rates and attitude with good accuracy in the absence of gyro data. Further, these angular rates estimates are used to estimate the gyro interlock matrix, Gg , using the procedure listed in the fifth section. The initial guess for the gyro interlock angle is obtained by perturbing the true gyro interlock matrix by the “large” Gaussian white noise of standard deviation 2  102 rad. Figure 5(i) shows the plot of the convergence of gyro interlock error8 with time. From this figure, it 8

Gyro interlock error is defined as the Frobenius norm of the difference between true interlock matrix and estimated interlock matrix.

102

Singla, Griffith, Katake, and Junkins

FIG. 4.

Spacecraft Angular Rate Estimation Algorithm Results.

is clear that we are able to estimate the gyro interlock angle with very good accuracy but the convergence time is possibly an issue. To reduce the gyro interlock errors by two orders of magnitude (from 102 to 104  we need spacecraft angular rate data for at least half an hour. But we should mention that the gyro interlock error convergence time depends upon the kind of maneuver the spacecraft is doing. This is due to the fact that the gyro interlock angle is more observable if spacecraft angular rates are changing frequently with time. Just to show the effect of spacecraft motion on the convergence time of gyro interlock error, we assume a more aggresive motion for the spacecraft and repeat the whole process of gyro interlock estimation with

   0 sin 0 t 2   0 cos 0 t 2  0 sin2 0 t 2,  0  103 radsec (65) Figure 5(ii) shows the plot of the convergence of gyro interlock error for this case. From this figure, it is clear that, to reduce the gyro interlock errors by two orders of magnitude, we now need spacecraft rate data only for a few minutes. We mention that better convergence of gyro interlock error can be obtained by designing more aggressive calibration maneuvers at least in the initial stage of the spacecraft mission. Finally, we study the effect of gyro interlock errors on the spacecraft attitude and gyro bias estimation. The spacecraft attitude and gyro bias is estimated by using the quaternion estimates from the spacecraft angular rate estimation algorithm as measurements, and by projecting the gyro data to the star camera reference frame, using estimated gyro interlock angle. First, we use the initial guess for gyro interlock matrix to project the gyro data to the star camera reference frame. Figures 6(i) and 6(ii) show the plots of the estimated attitude error with corresponding 3- bounds and gyro bias estimates with time, respectively. As expected the error in gyro matrix does not affect the attitude accuracy much, but the gyro bias estimates do not converge to their true value 0.1 deghr, but rather to effective values that compensate for the bias as well as the effective bias due to interlock errors. Figures 7(i) and 7(ii) show the plots of the estimated attitude error and estimated gyro bias when the estimated gyro interlock matrix is used to project the angular rates from gyro frame to star camera reference frame. From these figures, it is clear that we are able to estimate the gyro bias and the spacecraft attitude with very good accuracy, if the gyro interlock matrix is also estimated along with the spacecraft attitude and gyro bias.

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

FIG. 5.

FIG. 6.

FIG. 7.

103

Gyro Interlock Estimation Algorithm Results.

Spacecraft Attitude and Gyro Bias Estimation Using Initial Guess of Gyro Interlock.

Spacecraft Attitude and Gyro Bias Estimation Using Estimated Value of Gyro Interlock.

Finally, we mention that the simulation results presented in this section do not cover the thorough studies necessary to qualify these algorithms for flight tests; however, they do form a basis for optimism.

Conclusions The important issue in this paper is to address the problem of estimation of the spacecraft attitude along with gyro bias and various sensor interlock angles in realtime. To address these issues, an efficient procedure is presented and tested by numerical simulation, to estimate the spacecraft attitude along with gyro bias and

104

Singla, Griffith, Katake, and Junkins

interlock angle between various sensor frames in real-time. The convergence of the various Kalman Filters depends jointly upon: 1) the accuracy of the dynamical model and process noise representation, 2) the frequency and accuracy of the attitude measurements, 3) the observability of the state vector. For the gyro interlock estimation algorithm approach, the KF requires some artistic tuning as the gyro interlock matrix is poorly observable. However, for the extreme case of uniform angular velocity, or near-zero angular velocity, estimating effective gyro bias will compensate for errors in the gyro interlock angles. The on-orbit estimation algorithm of various interlock angles not only helps in reducing the total cost of the mission but also makes the interlock angle estimates robust to thermal and environmental effects unlike on ground. Finally, although the algorithms presented in this paper were developed keeping in mind the specifications for the GIFTS mission, these results have practical applications for many future spacecraft missions.

References [1] [2]

[3]

[4]

[5] [6]

[7]

[8] [9] [10]

[11] [12] [13] [14] [15] [16] [17]

SIDI, J. M. Spacecraft Dynamics and Control, Cambridge University Press, Cambridge, UK, 1997. MORTARI, D., JUNKINS, J. L., and SAMAAN, M. “Lost-In-Space Pyramid Algorithm for Robust Star Pattern Recognition,” presented as paper AAS 01-004 at the Guidance and Control Conference, Breckenridge, Colorado, January 31 – February 4, 2001. SAMMAN, M., MORTARI, D., and JUNKINS, J. L. “Recursive Mode Star Identification Algorithms,” presented as paper AAS 01-149 at the AAS/AIAA Space Flight Mechanics Meeting, Santa Barbara, California, January 11–15, 2001. SINGLA, P., GRIFFITH, T. D., and JUNKINS, J. L. “Attitude Determination and On-Orbit Autonomous Calibration of Star Tracker For GIFTS Mission,” Advances in Aerospace Sciences, edited by K. T. Alfriend, B. Neta, K. Luu, and C. A. H. Walker, Vol. 112, 2002, pp. 19 – 38. SHUSTER, M. D. “A Survey of Attitude Representations,” The Journal of the Astronautical Sciences, Vol. 41, No. 4, October– December 1993, pp. 439 – 517. JUNKINS, J. L. and SINGLA, P. “How Nonlinear Is It? A Tutorial on Nonlinearity of Orbit and Attitude Dynamics,” The Journal of the Astronautical Sciences, Vol. 52, Nos. 1– 2, 2004, pp. 7–60, keynote paper. LEFFERTS, E. J., MARKLEY, F. L., and SHUSTER, M. D. “Kalman Filtering For Spacecraft Attitude Estimation,” Journal of Guidance, Control, and Dynamics, Vol. 5, No. 5, Sept.– Oct. 1982, pp. 417–492. KALMAN, R. E. “A New Approach to Linear Filtering and Prediction Problems,” Transactions of the ASME–Journal of Basic Engineering, Vol. 82, No. Series D, 1960, pp. 35– 45. SINGLA, P. “A New Attitude Determination Approach Using Split Field of View Star Camera,” Masters Thesis, Aerospace Engineering, Texas A&M University, College Station, TX, August 2002. SAMAAN, M., MORTARI, D., POLLOCK, T. C., and JUNKINS, J. L. “Predictive Centroiding for Single and Multiple FOVs Star Trackers,” Advances in the Astronautical Sciences Series, edited by K. T. Alfriend, B. Neta, K. Luu, and C. A. H. Walker, Vol. 112, 2002, pp. 59 –72. MORTARI, D. “Second Estimator of the Optimal Quaternion,” Journal of Guidance, Control, and Dynamics, Vol. 23, No. 5, September– October 2000, pp. 885 – 888. JUNKINS, J. L., POLLOCK, T. C., and MORTARI, D. “Multiple Field of View Optical Imaging System and Method,” U.S. Patent Pending No. 60/239-559, January 2001. FARREL, J. L. and STUELPNAGEL, J. C. “A Least Squares Estimate of Spacecraft Attitude,” SIAM Review, Vol. 8, No. 3, July 1966, pp. 384– 386. GERALD, L. M. “Three-Axis Attitude Determination,” in Spacecraft Attitude Determination and Control, edited by James R. Wertz, Dordrecht, Holland, D. Reidel, 1978. MORTARI, D. “ESOQ: A Closed-Form Solution to the Wahba Problem,” The Journal of the Astronautical Sciences, Vol. 45, No. 2, April–June 1997, pp. 817– 826, 195 – 204. SHUSTER, M. D. and OH, S. D. “Three Axis Attitude Determination from Vector Observations,” Journal of Guidance and Control, Vol. 4, No. 1, 1981, pp. 70– 77. WAHBA, G. “Problem 65-1: A Least Square Estimate of Spacecraft Attitude,” SIAM Review, Vol. 7, No. 3, July 1965, pp. 409.

Attitude and Interlock Angle Estimation Using Split-Field-of-View Star Tracker

[18]

[19]

105

SINGLA, P., CRASSIDIS, J. L., and JUNKINS, J. L. “Spacecraft Angular Rate Estimation Algorithms for Star Tracker-Based Attitude Determination,” Advances in the Astronautical Sciences Series, edited by D. J. Scheeres, M. E. Pittelkau, R. J. Proulx, and L. A. Cangahuala, Vol. 114, 2003, pp. 1303– 1316. CRASSIDIS, J. L. “Angular Velocity Determination Directly from Star Tracker Measurements,” Journal of Guidance, Control, and Dynamics, Vol. 25, No. 6, Nov.– Dec. 2002, pp. 1165–1168.

Suggest Documents