Experimental Verification of a Simple Method for Accurate Center of Gravity Determination of Small Satellite Platforms

We propose a simple and relatively inexpensive method for determining the center of gravity (CoG) of a small spacecraft. This method, which can be ascribed to the class of suspension techniques, is based on dual-axis inclinometer readings. By performing two consecutive suspensions from two different points, the CoG is determined, ideally, as the intersection between two lines which are uniquely defined by the respective rotations. We performed an experimental campaign to verify the method and assess its accuracy. Thanks to a quantitative error budget, we obtained an error distribution with simulations, which we verified through experimental tests. The retrieved experimental error distribution agrees well with the results predicted through simulations, which in turn lead to a CoG error norm smaller than 2mm with 95% confidence level.


Introduction
The growing interest for the development of light, small, highly capable spacecraft (S/C) platforms for a wide range of missions demands for a boost in performance from the standards established by the multitude of low-cost micro/ nanosatellites.Often developed as part of university educational programs, they have been dominating this segment in the last two decades.In this respect, it is known that accurate attitude and orbit control systems rely on the precise knowledge of the spacecraft CoG.However, the development of such a class of S/C is highly cost-driven, whereas methods for measuring the CoG commonly employed for larger platforms [1], being highly accurate, require rather complex and expensive equipment.Thus, cost-effective and easy-toimplement alternatives shall be pursued.
Typically, the methods for measuring CoG of an S/C fall into two broad categories, that is, static methods and dynamic methods [2].Static methods are often based on the pivoting axis system: the payload under test (PUT) is mounted on an instrument featuring a pivoting axis.In principle, the offset of the CoG from the pivoting axis can be retrieved by measuring the force acting on a point at a certain distance from the axis itself, once the total mass of the payload is known.
Complete CoG localization is then obtained by repeating the measurement after rotating the PUT.The most accurate instruments exploiting the static balancing principle consist of rotary platforms featuring a closed loop self-balancing controller, to hold the platform to its neutral position [3].The torque required for rebalancing is the measured output from which the CoG location can be retrieved, leading to submillimeter accuracies.Another common static measurement method is the one of multipoint weighting, achieved by placing the PUT over a multipoint weight platform equipped with 3 (or 4) high accuracy force transducers.The forces measured by the transducers, whose locations are known, allow to compute the in-plane coordinates of the CoG.This concept is employed at NOVA test facility (Utah University), to measure the mass properties of nanosatellites, with a reported accuracy of 1 mm in localizing the CoG [4].
Dynamic methods are based on the principle of dynamic balancing: the PUT is placed on a spin balance which estimates the CoG location by measuring the centrifugal forces.High sensitivity, however, is achieved at high rotational speeds, which makes such method of limited applicability for space vehicles CoG measurements [1].
Despite various measurement instruments based on all methods listed above are commercially available, these are quite expensive: even when aiming at a relatively low total weight capacity and moderate accuracy, the cost reaches several thousands of Euros.The concept of suspending a body for measuring its CoG, which is pursued in this work, is certainly not new, rather one of the oldest.Suspension was employed for example in NASA X-38 project [5].In that case, the CoG localization was obtained combining weight distribution (as for a multipoint weight method) with inclination measurements.Recent examples involving the suspension concept are the trifilar torsional pendulum [6], and the photogrammetry technique [7], applied by NASA engineers to locate Orion capsule CoG.The trifilar pendulum is a quite simple mechanism, allowing the joint determination of the CoG and the inertia matrix.The reported accuracy in locating the CoG is 1.5 mm, but this was obtained after a careful calibration of the mechanism and the use of a tricoordinate measuring machine to determine the distance between some predefined points [6].In [7], the authors suspended a fullscale Orion crew module from an asymmetric bifilar lifting strap and retrieved the CoG position from triangulation of the plumb lines.These, in turn, were determined from a set of images, gathered by a multicamera system, and processed through a set of custom-designed data reduction functions.Authors' indications suggest for an accuracy in the order of few millimeters.
In this paper, we aim at the experimental verification of the method devised by the authors in [8], which relies upon two consecutive monofilar suspensions of the object under test to determine its CoG, using as measured quantities the angle output from a dual-axis inclinometer.To this end, we first generalize the method relaxing some of the constraints outlined in the original formulation.The experimental verification approach is that of applying the method to determine the barycenter of a known mass distribution, that is, a proof mass.To enforce experiment repeatability and smooth systematic errors, we perform measurements from several couple of suspension points.The error of the method is then quantified as the distance between the computed barycenter of the proof mass and the true one.
The main contribution of this work is twofold: (1) to investigate an extremely low-cost method for determining the CoG, with minimum hardware and calibration requirements, with an accuracy suitable for many practical applications, and (2) to provide a comprehensive error analysis which is validated through experiments.To this end, the paper is organized as follows: first, the double suspension method is outlined (Section 2).Then, an error budget is presented, first qualitatively to justify the experimental setup design (Section 3) and later quantitatively by introducing the test facility and the assumed statistical distributions of errors (Section 4).The verification method is then presented in Section 5, which combines Monte Carlo error analysis and experiments.Once the theory is set, results are presented in Section 6, and finally, our conclusions are drawn in Section 7.

The Double Suspension Method
In recalling and generalizing the method presented in [8], we first define the inclinometer frame of reference.Consider the inclinometer in Figure 1, with top face up; ẑi is perpendicular to the top face, with outward positive, ŷi is directed in the direction of the cable connection, and xi completes the right-handed frame.
The dual-axis inclinometer selected for the experiment (Posital Fraba ACS-060) provides as output the direction sines of the gravity vector (g) with respect to xi (call the angle X) and ŷi (call the angle Y), that is, We define body frame xb , ŷb , and ẑb the frame of reference fixed to the proof mass to be suspended.It results from a simple translation of the inclinometer reference frame.We reserve the definition of the location of its origin later in the manuscript, after the justification of the suspension mass shape.Lastly, we define the laboratory reference frame xl , ŷl , and ẑl as a pseudoinertial frame of reference with: ẑl is parallel and opposite to the local gravity vector, xl points northward, and ŷl completes the frame.
The CoG determination method can be summarized as follows: for a given suspension point, the body frame components of the upward local vertical can be computed starting from the inclinometer readings.Then, two suspensions determine two of such unit vectors which identify two lines ideally passing through the CoG of the assembly under test.These lines are not going to intersect exactly due to measurement errors; however, the midpoint of the segment of the closest approach can be taken as the estimated CoG.In what follows, a step-by-step procedure towards the computation of such an estimate is presented.
For solving the problem under discussion, we first need to express the direction of the upward local vertical, ẑl , in body frame components ûb as a function of X and Y, while the orientation of the body about this direction is not important.From (1), it follows:  International Journal of Aerospace Engineering where the last component of ûb is computed to enforce the unit norm, and its sign depends on the orientation of the inclinometer: it is + when the inclinometer is with top face up, − otherwise.
It shall be noticed that, in the form above, (2) may lead to unphysical results.In fact, it is possible to obtain angular measurements such that sin X 2 + sin Y 2 > 1 due to measurement errors.We can handle such occurrence by normalizing the sine of the sensor readings through the factor Taking two suspension points, P 1 and P 2 , on any of the face of the proof mass, we obtain two body frame representations of the upward vertical vector, û1 and û2 .If we call L 1 and L 2 the lines stemming from the suspension points and passing through the barycenter, their parametric equations are , we avoided the indication of the body frame of representation for P and û, which is from now on left implicit for ease of notation.The intersection occurs when L 1 t 1 = L 2 t 2 or [9] when Subtracting P 1 from both sides of (4) and crossing with û2 yields Equation ( 5) can be solved for the parameter t 1 by dotmultiplying by û1 × û2 and dividing by û1 × û2 2 to get And, operating symmetrically for t 2 yields A useful property of the above solution for the point of intersection is that, if the two lines are skew, as it would certainly happen with actual noisy measurements, t 2 * and t 1 * represent the parameters of the points of closest approach, that is, the extremal points of the minimum distance segment.This suggests a definition for the CoG estimation from the double suspension technique as the midpoint of the segment of closest approach between the two suspension lines: It is interesting to note that expressing the solution for the CoG location through (8) is not different from performing a triangulation, that is, a point localization from two angular measurements: this is a well-known concept in the field of angle-only navigation ( [10] and references therein, [11]).

Experiment Requirements
To assess the accuracy of the proposed double suspension method, it is fundamental to identify first the error sources and then to design the experiment such in a way to minimize their detrimental effect on the CoG estimate.
Based on the analysis performed in [8], the main error contributions are expected to be Having its own mass distribution and being integral to the proof mass, the measurement equipment (ME) induces a shift of the CoG location for the assembly under test resulting to be C tot .This differs from the CoG of the proof mass alone, according to where C tot is the estimated CoG location from the double suspension method, C me is the CoG of the measuring equipment alone, m is the proof mass mass, m me is the mass of the ME, and m tot = m + m me .Clearly, we can use (9) to compensate for the ME presence; however, the outcome of the experiment will be affected by how much accurate our knowledge of the ME mass and its CoG location (C me ) are.Since we expect an accuracy of the method in the order of 1 mm, we shall design the experiment so that the ME introduces an uncompensated perturbation on the measured C tot of one order of magnitude lower, that is, 0.1 mm, or less.Indeed, from (9) we derive the proof mass CoG coordinates as C me can be estimated from a CAD model; however, such an estimate is affected by a modelling error.For our purposes, we assume a conservative error window for C me and design the experiment as to make this uncertainty negligible on the CoG computation.Minimizing the sensitivity to the above uncertainties reduces to placing the ME as close as possible the CoG and building the proof mass as heavy as possible, that is, a bulk mass is the best choice.
Error source 2 is intrinsic to the measuring equipment and cannot be reduced by proper design once the ME is chosen.Concerning the error source 3, it is caused by both manufacturing precision and suspension mechanism.

International Journal of Aerospace Engineering
The manufacturing precision contribution can easily be minimized by measuring the effective dimensions after manufacturing.The suspension mechanism shall be designed to minimize the uncertainty in the suspension location and hinge moment.We examined different solutions such as universal joint, uniball, and wire suspension.A thin wire resulted as the best compromise between cost, ease of manufacture, and expected accuracy.Error source 4 is the easiest to control: in fact, one can take a homogenous material of known shape (say a parallelepiped of cast iron) and machine it to strict geometric tolerances.This ensures a negligible CoG shift from the geometric centroid, which can thus be assumed as the true barycenter.Considering all the above points, we finally opted for a bulk parallelepiped suspended by means of a wire as the experimental setup to verify the proposed method.A rough computation with pessimistic assumptions on C me error lead to a proof mass of about 10 kg with 80 × 80 mm base, needed to bound the uncompensated CoG perturbation due to the ME within 0.1 mm.A detailed quantification of all error sources is provided in the next section.

Experiment Design and Error Source Models
As outlined in Section 3, for the experimental verification, we employed a steel parallelepiped as proof mass.After the machining, the effective dimensions were 78 × 75 × 200 mm and the mass equal to 9.2 kg.We assumed the body frame origin lying on one of the vertexes with the positive x-axis along the longer edge, the positive y-axis along the shortest edge, and z-axis completing the right-handed frame.
The overall CoG measuring instrumentation can be regarded as the combination of a suspension mechanism plus the measurement equipment (i.e., the inclinometer and the acquisition hardware), see Figure 2.Each of those two parts introduces errors in the measurements, which are discussed, together with the respective implementation details, in the following subsections.
4.1.Measurement Equipment.The measurement equipment (ME) consisted of the inclinometer plus some acquisition hardware, namely, an Arduino Uno, a wireless transmitter and power supply.The boards were assembled together with the inclinometer using an Arduino Prototyping Board to form the complete ME.The Arduino reads the analogic inclinometer output, converts it to digital, and sends it through the transmitter to a computer.Wireless transmission was needed to avoid running cables, which would otherwise induce systematic errors in the measurements.The ME was placed onto the x and y plane of the proof mass with the inclinometer's top face up.The exact location, which in principle is free, shall nevertheless be selected accounting for the range of the inclinometer (+/− 60 °in our application) and the position of the suspension points, to guarantee that when the body is hanged, the inclination angles lie within the measurement range.
Errors introduced by the ME are of two kinds, namely, the one due to the imperfect knowledge of the location of its own CoG and the inclinometer measurement errors.A 3D CAD model of the ME was used to get an estimate of its CoG.Clearly, the CAD model is never an exact replica of the real ME so that we needed to assign an error to its CoG estimate.The measuring equipment is a stacked structure with nonuniformly distributed mass, as shown in Figure 3.
To justify the assumed error on the C me , we can think of the ME as built up of 4 volumes: Arduino Uno volume, WiFi transmitter volume, prototyping board plus inclinometer volume, and battery volume.In each of these volumes, we can conservatively assume that the real CoG of the pertinent mass lies wherever inside a cube of 10 mm edge around the CAD's CoG.This is equivalent to say that the error random variable of the CoG in each volume has a uniformly distributed probability density function (PDF) in a 10 mm edge cube.Due to the linearity of the CoG expression, the error in C me (i.e., ΔC me ) is the weighted sum of the 4 random variables: This means that the PDF of ΔC me is the convolution integral of the 4 weighted random variables ΔC v i .Performing a random simulation, we concluded that the total PDF resembles enough a normally distributed PDF with zero mean and standard deviation 1.66 mm (reasonable in force of central limit theorem).
As far as the measurement error is concerned, it is due to both the error affecting the (analog) inclinometer output and the discretization error.The inclinometer accuracy (maximum error) is rated at 0.1 °.Since we lack any  International Journal of Aerospace Engineering statistical information, we shall assume a uniform distribution for this source in between −0.1 °and + 0.1 °.The voltage signal from the inclinometer is then processed by the Arduino UNO 10-bit analog-to-digital converter.The resulting discretization step is Σ AD = 0 16 °, whose effect can be modelled as a uniformly distributed random variable between ± 0 08 °, that is, having zero mean and standard deviation equal to Σ AD / 12 ≈ 0 046 °.
The accuracy and discretization errors can be considered independent and additive so that the global PDF can be computed as the convolution of the single PDF's.The resulting PDF will resemble a triangular distribution with zero mean, since the uniform distributions have comparable widths.To smoothen the effect of random errors, we can average many measurements (say n = 20); in force of the central limit theorem, the PDF of the sample mean resembles a normal distribution with standard deviation reduced by a factor n.

Suspension Mechanism.
As anticipated in Section 3, a wire suspension was selected.To keep the suspension points as localized as possible, a 0.8 mm multiwire cable and a bolt with a pass-through 1 mm hole in the center were employed, as shown in Figure 4.
Although there is a small play between the wire and the hole (0.2 mm), we can think of the wire as being clamped onto the top of the bolt.This way, we can assume the wire as a clamped beam.The clamping reacts the vertical weight of the proof mass and a moment.The moment is originated from the flexural rigidity of the wire, which prevents the suspension point from aligning (exactly) to the barycenter.Rather, we can more accurately say that the barycenter aligns with the holding point of the wire.The net effect of the bending moment at clamp then would be a shift of the suspension point from the nominal location to a virtual point lying above it by a quantity δ (see Figure 5).This is the second major contribution to the error in locating the suspension point after the small play around the wire.
To have an educated guess of the maximum δ, we express the displacement Δ as a function of the beam parameters and face inclination with respect to vertical α 0 obtaining (see Appendix)  In (12), F is the proof mass weight and the product EJ between the elastic modulus (E) and the cross-section moment of inertia (J) is the bending stiffness of the beam.In principle, since we use a multiwire cable, EJ is dependent on the load F; however, in our experiment, the tension is constant so that we can assume a fixed F/EJ.Thus, the virtual suspension point is offset above the bolt surface by about Equation (13) shows that δ gets smaller as α 0 decreases (since EJ and F are constant); thus, we can have a worstcase estimate of δ considering a situation with large α 0 .Figure 3 depicts an experiment at high α 0 from which one can visually estimate Δ ≅ 0 8 mm being the cable thickness 0.8 mm.Then, we obtained that δ ≅ 1 mm is a conservative upper-bound of the offset.The observations above allow to define an uncertainty volume for the suspension point which can be assumed to have a square base of 1 mm edge on the plane of the bolt head (due to the play), centered in the measured suspension point, with a vertical height of 1 mm.We can assume an error around the theoretic suspension point, belonging to this volume and drawn from a uniform PDF in that volume.

Verification Process
The verification of the proposed method employs a combination of numerical simulations and experiments according to the following steps: (1) Take as input the assumed distributions of the error sources outlined in Section 4.
(2) Perform Monte Carlo simulations to estimate the PDF and the cumulative distribution function (CDF) of the CoG distance error ΔC .
(3) Verify experimentally the error budget: perform many experiments and check whether the results are compatible (in a sense to be soon specified) with the PDF found in simulation.
Such approach was preferred to a simpler direct error distribution estimation through multiple independent trials.In fact, we aim at experimentally verifying the method rather than characterizing the measuring equipment, for which a more extensive test campaign should be used.Furthermore, characterizing the measuring equipment in absolute would be complicated by (10), as the estimation accuracy depends also on the mass under proof.We considered 6 suspension points, which lead to 15 possible suspension couples, enough for our scope.The number was selected to limit also the perturbation induced by the drilled holes on the true CoG location: we estimated a worst-case shift in the order of 0.01 mm.
A workflow diagram of the entire validation process is given in Figure 6, while the suspension point coordinates are reported in Table 1.
5.1.Monte Carlo Simulations.The Monte Carlo simulation scenario was developed in MATLAB® environment, according to the following approach.We can regard the double suspension algorithm as a function taking as input a perturbed vector of parameters, p = p true + δp, and whose output is the CoG estimate.We denote by p true the vector collecting the true values of such parameters, namely, the suspension point coordinates, the inclinometer readings, and the CoG coordinates of the measuring equipment: p true = P 1 , P 2 , X 1 , Y 1 , X 2 , Y 2 , C me ; by δp, we denote the vector containing the error affecting each parameter (masses were not taken as error sources, as we know them accurately enough to safely neglect the impact of their uncertainties on the CoG computation).Within a simulation, the ideal inclinometer output obtained by hanging the proof mass from a given suspension point can be calculated from the reversed application of the algorithm in Section 2. Thus, for a given couple of suspension points, the true parameter vector can be computed and then perturbed with random errors drown from the corresponding PDF (Section 4).The estimated CoG location is retrieved from direct application of the solution algorithm to the perturbed parameters.
When running the Monte Carlo simulations according to the procedure above, we randomly distributed a large number (25) of suspension points on the surface of the proof mass, to avoid as much as possible any dependency of the outcome on the specific geometric configuration.In fact, as pointed out in [8], the accuracy of the double suspension method is also dependent on the mutual configuration of the suspension points, getting worse when the CoG and the suspension points become closely collinear.In such a case,  International Journal of Aerospace Engineering we would be attempting to intersect two lines which are almost parallel: the evaluation of the CoG through ( 6) and ( 7) would lead to an ill-conditioned operation (when û1 ∥û 2 , the denominators approach 0).For each couple of the 25 suspension points, we generated 1000 perturbed input vectors, which were supplied to the CoG estimation algorithm: the resulting estimate was then compared to the geometric center of the proof mass for computing the error ΔC.Due to the relatively large number of random error contributions, the components of the CoG location error ΔC can be regarded as normally distributed, in force of the central limit theorem.As a consequence, the norm of ΔC then approximately follows a Rayleigh distribution.Hence, we fitted a Rayleigh distribution to the results, obtaining as output the desired PDF of ΔC.

Experimental Verification Method.
The outcome of the Monte Carlo simulations was checked against a test campaign carried out using the experimental set up in Figure 2.For the subsequent analysis, we can regard the series of suspensions performed as a Bernoulli process.Assuming we performed n trial experiments whose outcome could be either success (S) or failure (F); in each trial, we had a 7 International Journal of Aerospace Engineering probability p to succeed and q = 1 − p to fail.For our experiments, we call success the event in which the error norm is lower than a given threshold w e and failure otherwise.Then, if we denote by f err w e the PDF of ΔC obtained from simulation, and F err the corresponding CDF, taking an error window w e , F err w e provides the probability p that the error belongs to the error window (i.e., success): p = F err w e .To validate the CDF obtained through simulations against the experiments, we check that for some w e is p exp w e ≈ p w e 14 In (14), p exp is the experimental probability of success given by the maximum likelihood estimator for the Bernoulli process parameter (p) [12], that is, s w e n 15 n being the number of trials (15) and s the number of successes given w e .
Note that, the larger the number of experiments n, the higher the confidence in the estimator, (15), for p exp w e .However, our number of trials is already constrained by the considerations made in the previous section.

Results
Considering all possible couples of 25 suspension points, the Monte Carlo simulation explored 300 suspensions for a total number of 3 ⋅ 10 5 trials.Figure 7 depicts the histogram of the resulting CoG error.
The best-fit Rayleigh distribution has a shape parameter B = 0 8 mm.If we assume the error being isotropic in space, B corresponds to the (common) standard deviation of the three scalar error components.
During the experimental campaign, the CoG was measured through all possible combinations of suspension point couples.The results are depicted in Figure 8 and summarized in Table 2, which compares the CDF obtained from the simulated best-fit Rayleigh distribution (p), to the ones from experiments (p exp ), according to the method outlined in Section 5.2.
The agreement is very good at central w e and poorer, but still reasonable, at extremal w e .This can be expected, since the "front" and "tail "of the Rayleigh distribution are low probability regions, that is, it is less likely to obtain results in these regions.We can conclude that both experimentally and in simulation the method works as expected, reaching accuracies in the order of 1 mm.
The error analysis performed so far is specific for the assumed ME and on the mass ratio of the proof mass and ME itself; strictly speaking, these conditions are necessary for the estimated error PDF to be valid.It is of interest to briefly assess up to which extent the results obtained can be extrapolated to a generic experiment for estimating the CoG of a small spacecraft.To this end, consider (10) reformulated in terms of error variables: where ΔC tot is the error caused by the method when estimating the CoG of the entire assembly (ME + PUT), and ΔC me is

Figure 1 :
Figure 1: Inclinometer adopted in the experiment.

( 1 )
True barycenter shift due to measurement equipment (2) Measurement errors (inclinometer error plus analogto-digital conversion) (3) Knowledge of the suspension point location (4) Small geometric errors of the proof mass

Figure 2 :
Figure 2: Experimental setup; two consecutive suspensions as the one shown are required to locate the CoG.

Figure 4 :
Figure 4: Detailed view of the suspension mechanism.

ΔFigure 5 :
Figure 5: Schematic representation of the virtual suspension point concept.

Figure 7 :
Figure 7: Histogram of the occurrences of the CoG estimation error.

Figure 8 :
Figure 8: Cumulative density function of the CoG measurement error: experimental (markers) versus numerical (full line).

Table 2 :
Bernoulli checks for different error windows.