AAS 09-123

RIGID BODY IN ER TIA ES TI MATION WITH AP PLICA TIONS TO THE CAPTURE OF A TUM BLING SATEL LITE

Dan iel Sheinfeld* and Ste phen Rock†

A frame work for rigid-body in er tia es ti ma tion is pre sented which is gen eral and may be used for any under go ing either -free or non- torque-free motion. It is applied here to the case of a tumbling satel lite. In- cluded are a geo met ric in ter pre ta tion of the es ti ma tion prob lem which pro vides an in tu itive un der stand ing of when to ex pect good es ti ma tion re sults and sim u- la tion re sults to dem on strate the vi a bil ity of the method.

INTRODUCTION A critical issue that must be addressed to enable on-orbit servicing of satellites is how to cap- ture and de-spin a satellite that may be tumbling. A satellite can lose attitude control and begin to tumble for any number of reasons: thruster failure, avionics failure, failed docking attempts, colli- sion with space debris, etc. In general, it cannot be assumed that the tumbling motion is benign. De-spinning is accomplished by applying forces to the tumbling satellite, and knowledge of the properties of the satellite is necessary to enable the calculation of efficient and/or op- timal control forces and moments to accomplish this task (the satellite is assumed to be rigid). However in general, these properties may not be well known or they may be entirely unknown a priori so a means of producing estimates of them is required. Further, the problem is com- pounded by the fact that a damaged satellite is likely to be uncooperative or unable to cooperate (meaning that the satellite cannot transmit any information about itself including inertia proper- ties, state information, etc.). This paper presents a two-part inertia estimation procedure which is motivated by a two-step de-spin strategy. In the first step, the servicing satellite tracks the target and positions itself with respect to the target (but does not make contact). For example, the servicing satellite may posi- tion itself along the angular momentum vector of the target. In the second step, the servicing sa- tellite applies forces and moments to the target (e.g. by making contact with a manipulator) to accomplish the de-spin. The tracking task requires only that the motion of the tumbling satellite be estimated, which in turn requires knowledge only of the ratios of the moments and products of inertia and the direction of the constant angular momentum vector (not their absolute values). Generating estimates of these quantities is the first part of the inertia estimation procedure. The manipulation task requires knowledge of the scale factors on the moments and products of inertia

* Ph.D. Can didate, De part ment of Aeronau tics and Astro nautics, Stanford Uni versity, Durand Build ing Room 250, 496 Lomita Mall, Stan ford, Cali for nia 94305, USA. †Pro fessor, De part ment of Aeronau tics and Astro nau tics, Stanford Uni versity, Durand Building Room 250, 496 Lomita Mall, Stanford, Cal i fornia 94305, USA. 343 and the total . Generating estimates of these scale factors is the second part of the procedure. Although it is applied to a tumbling satellite here, the procedure is generic and may be used to estimate the inertia properties of any rigid object undergoing either torque-free or non-torque-free motion. Note that the estimation of satellite inertia properties has been addressed by others in the lite- rature, however, the procedure presented here yields the results in a particularly convenient form for application to the two-step de-spin strategy.2,5 All of these techniques (including this one) are based on exploiting the conservation of (or change in) angular momentum. The remainder of the paper is organized as follows: The tracking step of the de-spin strategy is discussed in detail. The estimation procedure is then presented. Concise necessary conditions for a solution to exist are then provided. This is followed by a geometric interpretation of the inertia matrix estimation problem which provides an intuitive understanding of when good estimation results are expected. Simulation results are then presented to demonstrate the viability of the es- timation methods with a focus on the case of a tumbling satellite undergoing torque-free motion. Sensing Various sensor data are assumed to be available to the algorithms given below. Sensors which provide these data either exist or are under development. For part one of the procedure, sensors which can track features on the rigid body and provide the attitude rate and attitude of the rigid body are necessary. An example of this type of sensor is the system implemented by Zampato, et. al.6 This system tracks features on a rotating rigid body using a stereo camera pair and outputs attitude and attitude rate. Another example is the algorithm developed by Dubowsky and Lichter which produces a measurement of attitude from a 3D reconstruction of the body using range da- ta.1 If the second part of the procedure is used, measurements of all of the and forces be- ing applied to the object are also necessary. TRACKING In order to de-spin a tumbling satellite, forces and moments must be applied at a grapple point or some safe application point. However, torque-free motion can be quite complicated since the inertial orientation of a torque-free rigid body is not periodic in general.

Figure 1. Inertial Path of a Point on a Torque-Free Rigid Body.

344 Figure 2. Path of a Point on a Torque-Free Rigid Body as Viewed by a Spinning Observer.

Figure 1 shows an example of the path of a point on a torque-free rigid body as viewed by an inertial observer. Attempting to interact with the tumbling body while the point of interest is moving in a complicated manner is a difficult task. However, general torque-free motion has an element which is periodic, and this element can be exploited to simplify the motion of the tum- bling body relative to an observer. For example, Figure 2 shows the observed path of a point on the body in Figure 1 as viewed by an observer spinning about the angular momentum vector, h, at a particular constant rate (described below).

Figure 3. Poinsot Construction.

The periodic element can be understood using the standard Poinsot construction which is pre- sented in Figure 3.3 The tip of the vector, Ȧ, is the contact point between the invariable plane and the inertia ellipsoid. As the body tumbles, the contact point traces out the polhode on the inertia ellipsoid. The polhode is a closed curve, so each point on the polhode (which is on the inertia ellipsoid) contacts the invariable plane repeatedly as the body tumbles.

345 The period of these repeated contacts is called the polhode period, p, and is given in several clas- sic texts as:

** III 321 4 kKp ** 2  23  *** IE2MII 1

ʌ 2 du kK (1) ³ 22 0  * usink1

2 2  12 *** 3  MIE2II k 2  23  *** IE2MII 1 where I1, I2, I3 are the principal moments of inertia with I1 ” I2 ” I3, M is the magnitude of the an- gular momentum vector, E is the kinetic due to , and K(k) is the complete elliptic 2 2 integral of the first kind. Equation (1) holds if M >2*E*I2. If M <2*E*I2, then I1 and I3 are swapped in Equation (1).4 The periodic element is seen by observing the body at intervals of one polhode period. The first observation is at time t. At time t, a single point, q, on the inertia ellipsoid is in contact with the invariable plane. After time t, the body continues to tumble and q moves away from the inva- riable plane. One polhode period later at time t + p, q is again in contact with the invariable plane, and since the center of the inertia ellipsoid and the invariable plane are fixed in space, the inertia ellipsoid is in its original configuration with respect to inertial space plus a pure rotation about h. The above implies that the net motion of the body after one polhode period is a pure rotation about h as viewed by an inertial observer. This implies that the orientation of the inertia ellipsoid with respect to h is the same at times t and t + p. Therefore, the motion (in inertial space) during the polhode period after time t + p is identical to the motion during the previous polhode period but it starts with an initial rotation about h. This is the periodic element of general torque-free motion.

Figure 4. Invariable Plane.

346 The angle of rotation of the body after one polhode period, Į, is the angle swept out by the projection of Ȧ onto the invariable plane (this angle can be greater than 2ʌ in general). This is depicted in Figure 4 which shows the invariable plane at two times separated by one polhode pe- riod. At time t, the body is in a configuration such that point ct is the contact point between the inertia ellipsoid and the invariable plane and the vector Ȗt is the projection of Ȧ onto the invaria- ble plane. At time t + p, the body is in a new configuration with ct+p and Ȗt+p defined similarly as ct and Ȗt. The angle Į is the angle swept out by Ȗ from time t to t + p. The value of Į may be found by simulating the tumbling motion once the polhode period has been calculated using Equ- ation (1). Also, if 2ʌ/Į is a rational number (this is not the case in general), the tumbling motion is periodic in the inertial frame.

Figure 5. Tracking Maneuver.

There are many ways to exploit this periodic element to simplify the relative motion between the body and an observer. One method (depicted in Figure 5) is as follows. The of the observer is positioned such that it lies along h. The observer then spins with constant an- gular velocity which is aligned with h and has magnitude Į/p. At the beginning and end of each polhode period, the body is in the same configuration with respect to the observer. Further, since the observer repeats the same motion during each polhode period, the observed motion of the body is the same during each polhode period as well. This means that the observer sees all points on the body traveling along closed curves (as in Figure 2). There are other conceivable ways of simplifying the relative motion using the periodic ele- ment, and they are all based on the fact that motion of the body repeats each polhode period al- though with a different initial rotation about h. For instance, the observer could spin at a non- constant rate. As long as the net rotation of the observer after one polhode period is Į radians, the body always returns to its starting configuration with respect to the observer after each polhode period. Also, the center of mass of the observer does not need to be stationary, and the motion of the observer does not have to repeat during each polhode period (in this case, points on the body do not travel along closed curves in the observer frame).

347 INERTIA ESTIMATION ALGORITHM Knowledge of the inertia properties of the body is necessary in order to perform the tracking maneuvers described above. For instance, the maneuver in depicted in Figure 5 requires know- ledge of the location of the center of mass, the direction of h, and the polhode period (Equation (1)) which, in turn, requires knowledge of the ratios of the principal moments of inertia. Further, in order to apply forces and de-spin the satellite, the total mass and the absolute values of the in- ertias are necessary. The following algorithm provides estimates of these quantities. The algorithm presented here to compute the inertia properties of a tumbling satellite consists of two parts. In the first, estimates of the center of mass location within the body plus the ratios of the moments and products of inertia and the direction of the constant angular momentum vec- tor are calculated for the case of torque-free motion. In the second, the scale factors on the satel- lite’s mass and moments of inertia are determined. Each of these is described below. Location of the Center of Mass (Torque-Free Motion)

The center of mass can be located using the kinematic relation v = vcm + Ȧ x r, where v is the velocity of a feature on a rotating rigid body, vcm is the velocity of the center of mass, Ȧ is the angular velocity of the body, and r is the vector which locates the feature relative to the center of mass (all vectors are expressed in the inertial frame). Measurements of v, Ȧ, and knowledge of vcm at two times are required to recover r. The measurements of v and Ȧ are obtained from sen- sors. The center of mass velocity may be estimated if the body is in a known gravitational field. Alternatively, if vcm is unknown but constant (such as if the body is in free space), it can be recov- ered simultaneously with r (in this case, three measurements of v and Ȧ are required). Once r has been estimated, the center of mass may be tracked by tracking the feature over time. In practice there is noise, so a large number of measurements improves results. The kinematic relation above is written at n times:

v1 vcm  Ȧ1 u r1

v2 vcm  Ȧ2 u r2

v3 vcm  Ȧ3 u r3 (2) 

vn vcm  Ȧn u rn

In the inertial frame, r is changing, but it is constant in the body frame so Equation (2) is re- written in terms of the body r:

T v1 vcm  Ȧ1uT1 r T v2 vcm  Ȧ2 uT2 r T v3 vcm  Ȧ3 uT3 r (3)  T vn vcm  Ȧn uTn r where Tn is the 3x3 transformation matrix from the inertial frame to the body frame based on standard Euler angles (left-multiplying a vector in the inertial frame by Tn expresses that vector in the body frame) .

348 Equation (3) may now be manipulated into the form Ax = b where:

ªI Ȧˆ T T º « 3 1 1 » ˆ T «I 3 Ȧ2 T2 » A «I Ȧˆ T T » cm « 3 3 3 » «  » « ˆ T » ¬I 3 Ȧn Tn ¼

ªv º 1 (4) «v » « 2 »

bcm «v3 » « » «  » « » ¬vn ¼

ªvcm º xcm « » ¬ r ¼

I3 is the 3x3 identity matrix and Ȧˆ n is given by Equation (5):

ª 0  Z zn Z yn º ˆ « » Ȧn « Z zn 0  Z xn » (5) « » ¬ Z yn Z xn 0 ¼ where Ȧxn, Ȧyn, and Ȧzn, are the angular velocity components expressed in the inertial frame. If vcm is known, then it is subtracted from the v values in bcm and the identity matrices are removed from Acm. Since bcm  0, the pseudoinverse is used to solve for the unknowns. Determination of the Inertia Ratios (Torque-Free Motion) The basis of the method is the definition of angular momentum, h = IȦ, where h is the angular momentum of the body with respect to the origin of the body frame, I is the inertia matrix of the body with respect to the body frame, and Ȧ is the angular velocity of the body (h and Ȧ are ex- pressed in the body frame). The body frame is chosen to be body-fixed such that the inertia ma- trix is time-invariant. The origin is chosen to be at the center of mass which simplifies the go- verning equations. The choice of orientation of the body-fixed axes is arbitrary. Measurements of Ȧ at three times are required to recover the inertia ratios and the direction of the angular mo- mentum vector. Again, in practice there is noise, so a large number of measurements is taken and the defini- tion of angular momentum above is written at n times:

349 h1 IȦ1

h2 IȦ2

h3 IȦ3 (6) 

hn IȦn

In the body frame, h is changing, but it is constant in the inertial frame so Equation (6) is re- written in terms of the inertial h:

T1h IȦ1

T2 h IȦ2

T3h IȦ3 (7) 

Tn h IȦn where Tn is the transformation matrix from the inertial frame to the body frame based on standard Euler angles and h is the angular momentum expressed in inertial coordinates. Equation (7) may now be manipulated into the form Ax = b where:

ªȦ1 T1 º «Ȧ T » « 2 2 »

A «Ȧ3 T3 » « » «  » « » ¬Ȧn Tn ¼

ª0º « » (8) «0» b «0» « » «» ¬«0¼»

ªI º x « » ¬h¼

I is the six unique entries of I expressed as a vector and Ȧn is given by Equation (9):

ª pn qn rn 0 0 0 º Ȧ « 0 p 0 q r 0 » n « n n n » (9) ¬« 0 0 pn 0 qn rn ¼»

350 where pn, qn, and rn are the body-axis angular rates. Since b = 0, the singular value decomposi- tion is used to solve for the unknowns. Determination of the Scale Factors (Forced Motion) The inertia property information found in the first part of the estimation procedure has two as- sociated arbitrary scale factors since only the location of the center of mass, the ratios of the mo- ments and products of inertia, and the direction of the angular momentum are known (the angular momentum and the inertia ratios have the same scale factor). If known forces and torques may be applied to the object, then the scale factors may be disambiguated. The total mass scale factor may be found by applying known forces to the satellite and observing the motion of the center of mass. The inertia ratio and angular momentum scale factor may be found by applying known torques to the satellite and using knowledge of the inertia ratios found in the first part of the iner- tia estimation procedure. Alternatively, the inertia ratios and scale factor may be recovered si- multaneously by solving the system in Equation (8) with the modified b vector given in Equation (10):

ªT1* 0 º « » T * ǻh « 2 1,2 » b «T * ǻh  ǻh » (10) « 3 1,2 2,3 » « » « » ¬Tn* ǻh1,2  ǻh2,3  ǻhn1,n ¼ where Tn is the transformation matrix from the inertial frame to the body frame and ǻhn-1,n is the applied angular impulse from time n-1 to time n. Since b  0, the pseudoinverse is used to solve for the unknowns. Relationship to Other Methods Note that two previously proposed inertia matrix estimation methods may be expressed in terms of the framework presented above. One method subtracts pairs of equations at different times in Equation (8) in order to eliminate the unknown h value before solving for I.5 Another method is equivalent to solving the system in Equation (8) with the assumption that h is known or estimated before I is estimated.2 CONDITIONS FOR A SOLUTION Necessary Conditions Clearly, a necessary condition for a unique solution to the least-squares estimation problem posed in Equation (8) is that the matrix A be rank 8 if b = 0 or full rank if b  0. Further, it is straightforward to show that having three linearly independent measurements of Ȧ is necessary in order to meet the rank conditions. Write h = IȦ at three times in the form:

351 ªhx1 º ª rqp 111 000 º «hy » « 00 rqp 0 » « 1 » « 1 11 »ªIxxº «hz1 » « 1 000 rqp 11 »« » « » « » Ixy hx rqp 000 « » « 2 » « 222 »«Ixz» « » « » hy2 2 00 rqp 22 0 « » (11) « » « » Iyy hz 000 rqp « » « 2 » « 2 22 »« » « » « » Iyz hx3 rqp 333 000 « » « » « »¬«Izz¼» «hy3 » « 3 00 rqp 33 0 » « » « » ¬hz3 ¼ ¬ 3 000 rqp 33 ¼ where x, y,and z are the body-axes and p, q, and r are the body-axis angular rates. The pqr matrix in Equation (11) must be full rank in order to recover I and h uniquely. However, it can be shown that the upper 6x6 block of the pqr matrix in Equation (11) has a determinant of zero for any values of p1, q1, r1 and p2, q2, r2. Therefore, two Ȧ values are not sufficient for recovering I and h. The full 9x6 pqr matrix, however, is full rank if Ȧ1, Ȧ2, and Ȧ3 are linearly independent. Geometric Interpretation The above requirements are necessary for a unique solution to exist. However, the specific numerical properties of the solution depend on the details of the motion of the target satellite and on when the measurements are made. In particular, making measurements at times when the an- gular momentum vector is “widely spaced” (as viewed in the body frame) yields improved esti- mation accuracy. This can be shown through a geometric interpretation. The inertia matrix can be used to describe an ellipsoidal surface (centered on the origin), E, with the equation T ȦȦ *I KE2 , where KE the kinetic energy due to rotation, and a value of Ȧ which satisfies the equation is a point on the ellipsoidal surface.3 The gradient of the ellipsoid ’ E at any point Ȧ is given by I Ȧ h . This can be interpreted as follows. Values of Ȧ are 2 points on the surface of an ellipsoid in three dimensions and values of h are parallel to the gra- dient of the ellipsoid at each of those points. The problem is to recover the ellipsoid and the gra- dient values given measurements of Ȧ.

Figure 6. Ellipsoid With Three Gradient Values (Well-Conditioned).

352 An illustration of this problem is given in Figure 6. The gradient values are unknown since h is unknown at each time. However, the relationships between the gradient values are known be- cause the ǻh values are known between each time. The problem now is to find an ellipsoid which passes through specified points given the relationships between the gradient values at the points. A visualization for finding this solution is adjusting one of the gradient values and watch- ing the other gradients change direction until all of them are aligned such there is an ellipsoid which is orthogonal to the gradient values at the prescribed points. The ellipsoid interpretation helps to illustrate the conditions under which good estimation re- sults are expected. The measured values of Ȧ form the entries of the pqr matrix in Equation (11). If the Ȧ values are all very different, then the pqr matrix is well-conditioned and relatively good estimation results are expected. If the Ȧ values are all similar, then the pqr matrix is ill- conditioned and relatively bad estimation results are expected. Recall that the Ȧ values are also points on the surface of the inertia ellipsoid. This interpretation provides a visual representation of the condition number of the pqr matrix. For example, the three points on the surface of the ellipsoid in Figure 6 are spread out so the pqr matrix is well-conditioned. If there is noise on the measurements (the Ȧ values), the tangent planes at the three points still do a good job of bound- ing the ellipsoid so a good estimation result is obtained.

Figure 7. Ellipsoid With Three Gradient Values (Ill-Conditioned).

Another example is the ellipsoid in Figure 7. Here, the points are clustered together so the pqr matrix is ill-conditioned. If there is noise on the measurements, the tangent planes at the three points do a relatively poor job of bounding the ellipsoid so a relatively bad estimation result is obtained. Of course if there is no noise on the measurements, then the condition number of the pqr matrix is irrelevant as long as it is not infinite. SIMULATION RESULTS This section describes how to use the above methods to estimate the inertial properties of a tumbling satellite (or any rigid object) undergoing torque-free motion.

353 Figure 8. Torque-Free Motion Example.

Figure 9. Torque-Free Motion Example.

354 Figure 10. Torque-Free Motion Example.

Examples of torque-free of motion are given in Figures 8-10 which show the path in inertial space of one point on three tumbling rigid bodies. The motion can be quite complicated in gener- al. For a tumbling satellite, this point could be a grapple point or a safe location to apply forces to attempt to de-spin the satellite. For this example, the methods are applied to simulated data. The simulation consists of a rigid body with a random inertia matrix, initial angular velocity, and initial attitude. The velocity of the center of mass is unknown but constant. The simulation is run for n time steps and simulated sensor data (with added noise) are collected at each time step. The sensed quantities are as fol- lows. Angular position is given as a transformation matrix: T1, T2, …, Tn. Left-multiplying a vector expressed in inertial coordinates by Tn re-expresses the vector in the body frame at time n. Angular velocity of the rigid body is given as a vector in inertial coordinates: Ȧ1, Ȧ2, …, Ȧn. The inertial velocity of a feature on the rigid body is given as a vector in inertial coordinates v1, v2, …, vn. Least-squares is used to estimate the unknown quantities given the measurements. Equation (4) is used to estimate the location and (constant) velocity of the center of mass. In Equation (4), the unknowns are vcm and r and the knowns (the sensed quantities) are vn, Ȧˆ n , and Tn. Equation (8) is used to estimate the inertia ratios and initial angular momentum up to an arbitrary scale fac- tor. In Equation (8), the unknowns are I and h and the knowns are Ȧn and Tn.

355 Table 1. Simulation Results (1000 Trials)

vcm rhI Average % Error 1.72 7.41 8.44 8.71 Minimum % Error 0.0187 0.0851 0.00643 0.0635 Maximum % Error 385 95.7 196 99.9 The results from a set of 1000 trials are given in Table 1. The first row of Table 1 gives the average percentage error for each of the estimated quantities over the entire set. For h and I, error is based on the shape of the inertia ellipsoid and the direction of the angular momentum (this is due to the arbitrary scale factor). The second and third rows give the best and worst runs for each estimated quantity. These data show that good estimation results can be obtained with the proce- dure described here. However, these data also show that very bad estimation results can be ob- tained with this procedure. This variation in accuracy is expected and is explained by the geome- tric interpretation given above. When the Ȧ values are clustered together (as in Figure 7), de- graded estimation results are expected. CONCLUSION Presented above is a convenient framework for inertia estimation which can be used for the case of a tumbling satellite. The procedures presented are general and can be used to estimate the full inertial properties of any rigid object undergoing both torque-free and non-torque-free mo- tion.

ACKNOWLEDGMENTS Daniel Sheinfeld is supported by a Cleve Moler Stanford Graduate Fellowship and a National Defense Science and Engineering Graduate Fellowship. This research is also supported by the Institute for Dexterous Space Robotics under NASA grant number Z627401-A. REFERENCES 1 Dubowsky, S. and Lichter, M. D., “Estimation of state, shape, and inertial parameters of space objects from sequences of range images,” Proceedings of the SPIE Conference on Intelligent Robotics and Computer Vision XXI, Vol. 5267, Providence, RI, Oct. 2003. 2 Feldman, A., and Lee, A. Y., “In-Flight Estimations of Cassini Spacecraft Inertia Tensor and Thruster Magnitude,” Proceedings of the 16th AAS/AIAA Space Flight Mechanics Conference, Tampa, FL, January 2006. 3 Greenwood, D. T., Principles of Dynamics. 2nd ed. Upper Saddle River, NJ: Prentice-Hall, 1988. 4 Landau, L. D. and Lifshitz, E. M., Mechanics. Oxford: Pergamon Press Ltd., 1960. 5 Peck, M. A., “Estimation of Inertia Parameters for Gyrostats Subject to Gravity-Gradient Torques,” Proceedings of the AAS/AIAA Astrodynamics Specialist Conference, Quebec City, Canada, July 30 – August 2, 2001. 6 Zampato, M., et. al., "Visual Motion Estimation for Tumbling Satellite Capture," Proceedings of The British Machine Vision Conference 1996, Edinburgh, England, 1996.

356